-
Content Count
2067 -
Joined
Content Type
Profiles
Forums
Calendar
Everything posted by vetal
-
ПЛИС 5576ХС1Т применение...
vetal replied to IceCreamMan's topic in Работаем с ПЛИС, области применения, выбор
По моему - это лень :) Ничего сложного там нет. Контроллер флэш памяти - обычное периферийное устройство, причем простейшее. По мере наличия времени изучайте основы построения SOC - все уляжется и систематизируется в голове. На той же ХС1 вполне реально поднять небольшой Application Specific процессор и избавиться от лишней головной боли. В общем случае это означает, что на вход вы можете подавать 5в ttl уровни, а 5в кмоп уровни требуют либо делителя либо ограничителя напряжения. По выходу это означает, что вы модете сигнал заводить напрямую на 5В TTL логику, а на 5В КМОП либо через внешний подтягивающий резистор(выход open-drain), если это позволяет выбранная микросхема, либо через преобразователь уровня. Все эти вопросы д.б. описаны в документации на ИМС. Можете использовать документацию с сайта Altera. Для Flex10KA при питании 3,3В, входном напряжении 5,3В входной док д.б в пределах 10мкА. -
ПЛИС 5576ХС1Т применение...
vetal replied to IceCreamMan's topic in Работаем с ПЛИС, области применения, выбор
самое маленькое, что есть. Поставляют любую частоту. http://www.phonon.msk.ru/Index.files/Page822.htm -
ПЛИС 5576ХС1Т применение...
vetal replied to IceCreamMan's topic in Работаем с ПЛИС, области применения, выбор
С 5В надо поосторожнее обращаться (5-3,3В)/150Ом=11,5мА + фронты. -
Ошибка при синтезе из ActiveHDL.
vetal replied to khlenar's topic in Работаем с ПЛИС, области применения, выбор
Возможно, что при запуске Active-HDL меняются настройки окружения. Проверьте лицензию Quartus после запуска из Active-HDL. -
помогите с АЦП
vetal replied to wen113's topic in Вопросы аналоговой техники
Для периодических сигналов читайте по принципам работы стробоскопических осциллографов -
Дырка в UART NIOS
vetal replied to Saray's topic in Системы на ПЛИС - System on a Programmable Chip (SoPC)
Можно поставить на верхнем уровне доп синхронизатор + фильтр помех. Сгенерированные файлы лучше не редактировать. -
Visual C++, gcc и т.д. - в полном объеме. Queatasim, Active-HDL, Riviera, Vista,SystemVision,Saber Designer и многие другие - в объеме описанном в их документации. А в общем systemc - это всего навсего библиотека(набор классов, шаблонов, типов, элементов синхронизации...) для компилятора, возможности которой определяются её пользователем.
-
Буквенное обозначение пайки на Э3
vetal replied to Kattani's topic in Документация
Нет: X1, X2, X3. Разъемы буквой X у нас на схеме не обозначаются(XS,XP...). -
Буквенное обозначение пайки на Э3
vetal replied to Kattani's topic in Документация
Обозначать и маркировать либо цифрой, либо как розъемы X1,X2 ... у нас и так и так проходит -
Какую файловую систему выбрать?
vetal replied to Меджикивис's topic in Программирование
Надо просто было позвать администратора. У нас на работе уже лет 5 как флоппики даже не ставят в системный блок :) -
Какую файловую систему выбрать?
vetal replied to Меджикивис's topic in Программирование
NTFS. Хотя-бы потому что нет ограничений на размер файлов и путей к ним(уровень вложенных папок). -
Он для того и создавался - чтобы удовлетворить по максимуму потребности. Переваривать ТЗ в таком виде сложновато будет для сложной системы. Использовать получится когда в голове будет полная картина - для перепроверки. Для программиста кубическая интерполяция - просто одна строчка в коде, а на уровне RTL - уже 4х ступенчатый конвейер будет выходить. И хорошо если обратных связей мало, да шаг фиксированный.
-
SC_MODULE(DFF) { sc_in<sc_logic> CLK,CLR,CE,D; sc_inout<sc_logic> Q; void Register(); SC_CTOR(DFF) { SC_METHOD(Register) sensitive << CLK << CLR; } }; void DFF::Register() { if(sc_logic(CLR) == '0') { #ifdef DEBUG printf("CLK rising edge for DFF\n"); #endif if(sc_logic(CE) == '1') { #ifdef DEBUG printf("CE active\n"); #endif Q = D; } else { #ifdef DEBUG printf("CE inactive\n"); #endif } } else { #ifdef DEBUG printf("CLR active - reseting\n"); #endif Q = sc_logic('0'); } } Писать на таком уровне смысла нет - проще сразу на hdl будет. Можно попробовать чуть выше - на уровне транзакций, но без понимания общей концепции хорошего мало получится. На уровне разработчика RTL лучше всего воспринимается DataPath с описанием характеристик функциональных узлов, подробнейшее описание интерфейсов и пр.
-
Инициализация RAM для симуляции проекта.
vetal replied to spooki's topic in Среды разработки - обсуждаем САПРы
Как вариант - в начале теста заполнить весь блок 0, а потом перейти к основному тесту. 'X' для OTP плисок можно рассматривать как любую случайную величину, либо как неопределенное состояние(для ram необходимо отдельно узнавать, для триггеров - однозначное значение только после инициализации). В этом случае лучше заложить в ваш проект автоматическую инициализацию блока памяти по сбросу в значение 0. PS: поведение правильного исходного кода не должно отличаться от поведения синтезированной/разведенной схемы. отличие д.б. только в задержках. -
Опыт работы с 5576ХС2Т
vetal replied to proton17's topic in Работаем с ПЛИС, области применения, выбор
Параллельного интерфейса у нее нет. Только оследовательный(PS)! -
FPGA/kit
vetal replied to Frattello's topic in Работаем с ПЛИС, области применения, выбор
Базовые элементы FPGA - это LUT(который конфигурируется в xor/nor/nand/and/or...) и DFF . Их параметры приводятся в Datasheet. Классы быстроты согласно системе СИ выражаются в герцах. Это опорный параметр для оценки и выбора реализации. В лоб на FPGA не напрыгнешь. Надо принимать правила игры или есть кактусы. -
1. Реализуйте нужную задачу для одной кнопки. 2. Размножте реализацию на нужное количество книпок. 3. Вынесите общие элементы за скобку.
-
Чтение и запись Avalon Master Burst
vetal replied to torik's topic in Системы на ПЛИС - System on a Programmable Chip (SoPC)
Это вылезает в project navigator после компиляции :) burst adapter если мне память не изменяет. -
Чтение и запись Avalon Master Burst
vetal replied to torik's topic in Системы на ПЛИС - System on a Programmable Chip (SoPC)
Он ее и решает в соответствии с заданными условиями. Следует иметь ввиду, что если к периферии обращается несколько мастеров, то все burst транзакции будут разбиты по минимальному burst count (32+32+1=1,128+256+128=128). -
Чтение и запись Avalon Master Burst
vetal replied to torik's topic in Системы на ПЛИС - System on a Programmable Chip (SoPC)
1. см п1. и п2. http://quartushelp.altera.com/9.1/mergedPr..._conn_comps.htm (вместо точек соединений появится количество непрерываемых транзакций от мастера к периферии) 2. Использовать сигнал arbiter lock (дает шину периферийному устройству в исключительное пользование). Я на эту тему где-то тут уже писал. В большинстве случаев стандартный альтеровский контроллер обеспечивает скорость записи по схеме : несколько тактов на доступ к памяти + 1 такт на 1 транзакцию к памяти. -
Чтение и запись Avalon Master Burst
vetal replied to torik's topic in Системы на ПЛИС - System on a Programmable Chip (SoPC)
Попробуйде установить в настройках арбитража нужный burst count. В противном случае транзакция может быть прервана. Я для "критичной" периферии вместо burst использую захват(вывод на тфт, ввод данных с ацп). -
Поток данных 16бит -> Ethernet
vetal replied to Serg_Sm's topic in Fast Ethernet/Gigabit Ethernet/FibreChannel
Проверяйте также приемную часть задачи. Когда я наткнулся на "артефакты" проблема была именно в программе на ПК : ПО на C# не успевало переварить трафик(сделан прокси на c + winsock2), операционная система может "приостановить" обмен на неопределенный срок (решается буферизацией на передающей стороне). Передавать информацию необходимо блоками данных оптимального размера(как в udp). Тут МК не поможет, т.к. в ПЛИС эту задачу торе решает МК(как правило) -
Поток данных 16бит -> Ethernet
vetal replied to Serg_Sm's topic in Fast Ethernet/Gigabit Ethernet/FibreChannel
В наше время - это не показатель. Подобный проект поднимается из готовых примеров за неделю при отсутствии опыта(с учетом специфики работы в нашей стране :) ). Больше всего времени уйдет на компиляцию проекта ПЛИС. Если требуется гарантия доставки данных необходимо предусмотреть буфер на >0.5 секунды (экспериментально подобрано для windows) -
VGA адаптер для микропроцессорного устройства
vetal replied to Lexy_one's topic in В помощь начинающему
В конвейере это делается за 1 такт. Для разрешения 800*600 потребуется ~480000 тыс. точек * 2(двойная буферизация для устранения мерцания) ~=1-3 Мегабайта ОЗУ(в зависимости от требуемой разрядности цвета) Решение : любая FPGA(с небольшим кол-вом встроенного озу) подходящая по цене + загрузочное ПЗУ(если требуется) + внешнее озу подходящее по цене и быстродействию(fast sram, sdram) -
Вопрос по Quartus
vetal replied to lexa12's topic in В помощь начинающему
Извините за задержку. 70-80 МГц. Реально на сколько я помню ~60-80 МГц было, но уже не помню по какой причине. Делал для EPM7256SRI, APA300 и EPF8282. Частота задается количеством последовательно включенных LCELL или разделительных буферов(задает кол-во макроячеек или LUT), определяется экспериментально по осциллографу/частотомеру и контролируется при производстве. 383.pdf MergePDFs.pdf