Вано
Участник-
Постов
22 -
Зарегистрирован
-
Посещение
Репутация
0 ОбычныйИнформация о Вано
-
Звание
Участник
Контакты
-
ICQ
Array
-
"Bitonic sort"= "Batcher's algorithm" help
Вано опубликовал тема в Языки проектирования на ПЛИС (FPGA)
Уважаемые, если кто-нибудь встречал реализацию этого алгоритма на verilog, ну или на vhdl, поделитель ссылочкой, пожалуйста. Знаю что реализация есть, но пака не могу найти, спасибо. -
Вопрос по архитектуре кодирования ?
Вано опубликовал тема в Языки проектирования на ПЛИС (FPGA)
Путем изучения алгоритмов сжатия без потерь(Хаффмана и Арифметического) и проектов, где они рельно применяются. Я пришел к выводу что RGB поток данных сначала подвергаеется DCT ( Discrete Cosine Transform) и квантизации , а потом уже кодируется кодеками Хаффманом или Арифметическим. Правильно ли я думаю, что это связано с трудностью быстрого построения частотных таблиц, а так же ограничивает входной алфавит для кодирования Хаффманом. Т.е DCT делается перед применением кодера, т.к. упорядочивает поток данных? Если же просто кодировать поток данных , например, который поступает в буфер на 256 мест, затем надо строить таблицу частот, тогда вопрос как быстро отсортировать этот буфер, чтобы построить бинарное дерево? Ведь потребуется как минимум 128 циклов пересылок? -
Нашел уже 3 варианта имплементации huffman алгоритма. Неужели ни у кого нет Арифметического? Народ, поделитесь. Можем обменяться на очень интересные реализации.
-
рефернсного нет, а свой есть, в нескольких реализациях можете попробывать попросить у атеме либу для симуляции :) Не совсем понял про "либу для симуляции", а у Вас можно попросить какую-нибудь verilog реализацию? у атеме можно получить скомпилированную либу для моделирования. думаю что код вы не найдете нигде, мы свои реализации тоже не рассылаем. Custom Development возможен, но он стоит денег :)) Пасибо за ответ, думаю найти можно все же, хаффман же есть, почему бы арифметике не быть , а если не льзя то придется писать значит с нуля, что тоже приемлимо.
-
рефернсного нет, а свой есть, в нескольких реализациях можете попробывать попросить у атеме либу для симуляции :) Не совсем понял про "либу для симуляции", а у Вас можно попросить какую-нибудь verilog реализацию?
-
Arithmetic encoder & decoder in verilog
Вано опубликовал тема в Языки проектирования на ПЛИС (FPGA)
Может у кого-нибудь есть референсы на имплементацию "Арифметического алгоритма" компрессии? Реализацию алгоритма Хаффмана я нашел, может кто-нибудь встречал реализацию еще и арифметического алгоритма? -
На половину длительности тактового импульса? Или на половину периода тактового импульса? Под длительностью имею в виду периода.
-
Это схоже с проблемой деления на логике тактовой НЕ на степень 2-ки (например 3) А самый очевидный вариант синтезируемой задержки - использовать 2-ух кратную тактовую (на PLL) :) К сожалению pll трогать нельзя, необходимо программно сделать без использования настроек генератора. Черт побери, сигнал возникает на пол таката раньше , чем нужно, может быть есть еще мнения?
-
Подскажите, как в verilog -е сделать задержку сигнала на половину длительности тактового импульса?
-
assign ууу = xxx; И всё!!!!! По-моему, вы ошибаетесь. always @( fas_ff_fe or fas_db ) if(fas_ff_fe) begin assign yyy=xxx; end Это работать будет наобхорот , если xxx=yyy, а обратно не будет, в этом и проблема что переменной wire не присвоишь assign переменную типа reg, наоборот можно.
-
Вопрос по методам инициализации?
Вано опубликовал тема в Языки проектирования на ПЛИС (FPGA)
Собственно вопрос в следующем: Как можно присвоить переменной типа wire значение переменной типа reg т.е. reg[15:0] xxx; wire[15:0] yyy; reg g; как ууу = xxx ? 1) я использую метод с применением bufif0.т.е. в блоке объявления переменных bufif0( yyy, xxx, g); Затем в task -ах я просто присваививаю значения переменной xxx и автоматический у меня инициализируется переменная типа wire , т.е ууу . 2) провести это присвоение в рамках процесса always , используя assign, а еще как? -
Вопрос по verilog?
Вано ответил Вано тема в Языки проектирования на ПЛИС (FPGA)
К сожалению на wire заменить reg нельзя, т.к. у меня еще кроме этого куча функций создана, которые нужно будет переписывать, они работают с переменными как с регистром. -
Вопрос по verilog?
Вано ответил Вано тема в Языки проектирования на ПЛИС (FPGA)
Действительно в глазах рябит, поэтому и ищу способ заменить эти все bufif0 для каждого разряда на какие-нибудь циклы. С компиляцией verilog кода проблем нет, (код компилирую в modelsimSE 6.0с), затем создаю временную диаграмму и при нажатии на старт симуляции modelsim жостко вылетает, т.е. симуляция не запускается, а с компилятором все в порядке. Собственно мне нужно упростить вот это: bufif0 ( ide0_data [ 0 ], ide0_datar [ 0 ], ide0_e ) ; bufif0 ( ide0_data [ 1 ], ide0_datar [ 1 ], ide0_e ) ; bufif0 ( ide0_data [ 2 ], ide0_datar [ 2 ], ide0_e ) ; bufif0 ( ide0_data [ 3 ], ide0_datar [ 3 ], ide0_e ) ; bufif0 ( ide0_data [ 4 ], ide0_datar [ 4 ], ide0_e ) ; bufif0 ( ide0_data [ 5 ], ide0_datar [ 5 ], ide0_e ) ; bufif0 ( ide0_data [ 6 ], ide0_datar [ 6 ], ide0_e ) ; bufif0 ( ide0_data [ 7 ], ide0_datar [ 7 ], ide0_e ) ; bufif0 ( ide0_data [ 8 ], ide0_datar [ 8 ], ide0_e ) ; bufif0 ( ide0_data [ 9 ], ide0_datar [ 9 ], ide0_e ) ; bufif0 ( ide0_data [ 10 ], ide0_datar [ 10 ], ide0_e ) ; bufif0 ( ide0_data [ 11 ], ide0_datar [ 11 ], ide0_e ) ; bufif0 ( ide0_data [ 12 ], ide0_datar [ 12 ], ide0_e ) ; bufif0 ( ide0_data [ 13 ], ide0_datar [ 13 ], ide0_e ) ; bufif0 ( ide0_data [ 14 ], ide0_datar [ 14 ], ide0_e ) ; bufif0 ( ide0_data [ 15 ], ide0_datar [ 15 ], ide0_e ) ; Простым циклом нельзя, т.к. это блок объявления примитивов , связей,переменных вместо этого создал это: generate for (bi=0; bi<16; bi=bi+1) begin:bit bufif0 ( ide0_data[ bi ] , ide0_datar[ bi ] , ide0_e ) ; end endgenerate НО этот код, не симулируется. Код компилируется и симулируется в quartus 6.0c -
Вопрос по verilog?
Вано опубликовал тема в Языки проектирования на ПЛИС (FPGA)
Собственно задача состоит в том чтобы упростить следующий код: module SWSIM () ; ----///------------- //--------------------------------------------------------------------- // Define buffered versions of INOUT signals //--------------------------------------------------------------------- integer regAdr ; integer regAdr2; integer i; //--------------------------------- reg [ 15 : 0 ] adr ; reg ade ; reg enb ; genvar bi; bufif0 ( ad [ 0 ], adr [ 0 ], ade ) ; bufif0 ( ad [ 1 ], adr [ 1 ], ade ) ; bufif0 ( ad [ 2 ], adr [ 2 ], ade ) ; bufif0 ( ad [ 3 ], adr [ 3 ], ade ) ; bufif0 ( ad [ 4 ], adr [ 4 ], ade ) ; bufif0 ( ad [ 5 ], adr [ 5 ], ade ) ; bufif0 ( ad [ 6 ], adr [ 6 ], ade ) ; bufif0 ( ad [ 7 ], adr [ 7 ], ade ) ; bufif0 ( ad [ 8 ], adr [ 8 ], ade ) ; bufif0 ( ad [ 9 ], adr [ 9 ], ade ) ; bufif0 ( ad [ 10 ], adr [ 10 ], ade ) ; bufif0 ( ad [ 11 ], adr [ 11 ], ade ) ; bufif0 ( ad [ 12 ], adr [ 12 ], ade ) ; bufif0 ( ad [ 13 ], adr [ 13 ], ade ) ; bufif0 ( ad [ 14 ], adr [ 14 ], ade ) ; bufif0 ( ad [ 15 ], adr [ 15 ], ade ) ; reg [ 15 : 0 ] fas_dbr ; reg fas_dbe ; bufif0 ( fas_db [ 0 ], fas_dbr [ 0 ], fas_ndboe ) ; bufif0 ( fas_db [ 1 ], fas_dbr [ 1 ], fas_ndboe ) ; bufif0 ( fas_db [ 2 ], fas_dbr [ 2 ], fas_ndboe ) ; bufif0 ( fas_db [ 3 ], fas_dbr [ 3 ], fas_ndboe ) ; bufif0 ( fas_db [ 4 ], fas_dbr [ 4 ], fas_ndboe ) ; bufif0 ( fas_db [ 5 ], fas_dbr [ 5 ], fas_ndboe ) ; bufif0 ( fas_db [ 6 ], fas_dbr [ 6 ], fas_ndboe ) ; bufif0 ( fas_db [ 7 ], fas_dbr [ 7 ], fas_ndboe ) ; bufif0 ( fas_db [ 8 ], fas_dbr [ 8 ], fas_ndboe ) ; bufif0 ( fas_db [ 9 ], fas_dbr [ 9 ], fas_ndboe ) ; bufif0 ( fas_db [ 10 ], fas_dbr [ 10 ], fas_ndboe ) ; bufif0 ( fas_db [ 11 ], fas_dbr [ 11 ], fas_ndboe ) ; bufif0 ( fas_db [ 12 ], fas_dbr [ 12 ], fas_ndboe ) ; bufif0 ( fas_db [ 13 ], fas_dbr [ 13 ], fas_ndboe ) ; bufif0 ( fas_db [ 14 ], fas_dbr [ 14 ], fas_ndboe ) ; bufif0 ( fas_db [ 15 ], fas_dbr [ 15 ], fas_ndboe ) ; reg [ 15 : 0 ] ide0_datar, ide1_datar, ide2_datar ; reg [ 15 : 0 ] ide3_datar, ide4_datar, ide5_datar ; reg [ 15 : 0 ] ide6_datar, ide7_datar, ide8_datar ; reg [ 15 : 0 ] ide9_datar; reg ide0_e, ide1_e, ide2_e, ide3_e, ide4_e, ide5_e ; reg ide6_e, ide7_e, ide8_e, ide9_e ; bufif0 ( ide0_data [ 0 ], ide0_datar [ 0 ], ide0_e ) ; bufif0 ( ide0_data [ 1 ], ide0_datar [ 1 ], ide0_e ) ; bufif0 ( ide0_data [ 2 ], ide0_datar [ 2 ], ide0_e ) ; bufif0 ( ide0_data [ 3 ], ide0_datar [ 3 ], ide0_e ) ; bufif0 ( ide0_data [ 4 ], ide0_datar [ 4 ], ide0_e ) ; bufif0 ( ide0_data [ 5 ], ide0_datar [ 5 ], ide0_e ) ; bufif0 ( ide0_data [ 6 ], ide0_datar [ 6 ], ide0_e ) ; bufif0 ( ide0_data [ 7 ], ide0_datar [ 7 ], ide0_e ) ; bufif0 ( ide0_data [ 8 ], ide0_datar [ 8 ], ide0_e ) ; bufif0 ( ide0_data [ 9 ], ide0_datar [ 9 ], ide0_e ) ; bufif0 ( ide0_data [ 10 ], ide0_datar [ 10 ], ide0_e ) ; bufif0 ( ide0_data [ 11 ], ide0_datar [ 11 ], ide0_e ) ; bufif0 ( ide0_data [ 12 ], ide0_datar [ 12 ], ide0_e ) ; bufif0 ( ide0_data [ 13 ], ide0_datar [ 13 ], ide0_e ) ; bufif0 ( ide0_data [ 14 ], ide0_datar [ 14 ], ide0_e ) ; bufif0 ( ide0_data [ 15 ], ide0_datar [ 15 ], ide0_e ) ; bufif0 ( ide1_data [ 0 ], ide1_datar [ 0 ], ide1_e ) ; bufif0 ( ide1_data [ 1 ], ide1_datar [ 1 ], ide1_e ) ; bufif0 ( ide1_data [ 2 ], ide1_datar [ 2 ], ide1_e ) ; bufif0 ( ide1_data [ 3 ], ide1_datar [ 3 ], ide1_e ) ; bufif0 ( ide1_data [ 4 ], ide1_datar [ 4 ], ide1_e ) ; bufif0 ( ide1_data [ 5 ], ide1_datar [ 5 ], ide1_e ) ; bufif0 ( ide1_data [ 6 ], ide1_datar [ 6 ], ide1_e ) ; bufif0 ( ide1_data [ 7 ], ide1_datar [ 7 ], ide1_e ) ; bufif0 ( ide1_data [ 8 ], ide1_datar [ 8 ], ide1_e ) ; bufif0 ( ide1_data [ 9 ], ide1_datar [ 9 ], ide1_e ) ; bufif0 ( ide1_data [ 10 ], ide1_datar [ 10 ], ide1_e ) ; bufif0 ( ide1_data [ 11 ], ide1_datar [ 11 ], ide1_e ) ; bufif0 ( ide1_data [ 12 ], ide1_datar [ 12 ], ide1_e ) ; bufif0 ( ide1_data [ 13 ], ide1_datar [ 13 ], ide1_e ) ; bufif0 ( ide1_data [ 14 ], ide1_datar [ 14 ], ide1_e ) ; bufif0 ( ide1_data [ 15 ], ide1_datar [ 15 ], ide1_e ) ; bufif0 ( ide2_data [ 0 ], ide2_datar [ 0 ], ide2_e ) ; bufif0 ( ide2_data [ 1 ], ide2_datar [ 1 ], ide2_e ) ; bufif0 ( ide2_data [ 2 ], ide2_datar [ 2 ], ide2_e ) ; bufif0 ( ide2_data [ 3 ], ide2_datar [ 3 ], ide2_e ) ; bufif0 ( ide2_data [ 4 ], ide2_datar [ 4 ], ide2_e ) ; bufif0 ( ide2_data [ 5 ], ide2_datar [ 5 ], ide2_e ) ; bufif0 ( ide2_data [ 6 ], ide2_datar [ 6 ], ide2_e ) ; bufif0 ( ide2_data [ 7 ], ide2_datar [ 7 ], ide2_e ) ; bufif0 ( ide2_data [ 8 ], ide2_datar [ 8 ], ide2_e ) ; bufif0 ( ide2_data [ 9 ], ide2_datar [ 9 ], ide2_e ) ; bufif0 ( ide2_data [ 10 ], ide2_datar [ 10 ], ide2_e ) ; bufif0 ( ide2_data [ 11 ], ide2_datar [ 11 ], ide2_e ) ; bufif0 ( ide2_data [ 12 ], ide2_datar [ 12 ], ide2_e ) ; bufif0 ( ide2_data [ 13 ], ide2_datar [ 13 ], ide2_e ) ; bufif0 ( ide2_data [ 14 ], ide2_datar [ 14 ], ide2_e ) ; bufif0 ( ide2_data [ 15 ], ide2_datar [ 15 ], ide2_e ) ; bufif0 ( ide3_data [ 0 ], ide3_datar [ 0 ], ide3_e ) ; bufif0 ( ide3_data [ 1 ], ide3_datar [ 1 ], ide3_e ) ; bufif0 ( ide3_data [ 2 ], ide3_datar [ 2 ], ide3_e ) ; bufif0 ( ide3_data [ 3 ], ide3_datar [ 3 ], ide3_e ) ; bufif0 ( ide3_data [ 4 ], ide3_datar [ 4 ], ide3_e ) ; bufif0 ( ide3_data [ 5 ], ide3_datar [ 5 ], ide3_e ) ; bufif0 ( ide3_data [ 6 ], ide3_datar [ 6 ], ide3_e ) ; bufif0 ( ide3_data [ 7 ], ide3_datar [ 7 ], ide3_e ) ; bufif0 ( ide3_data [ 8 ], ide3_datar [ 8 ], ide3_e ) ; bufif0 ( ide3_data [ 9 ], ide3_datar [ 9 ], ide3_e ) ; bufif0 ( ide3_data [ 10 ], ide3_datar [ 10 ], ide3_e ) ; bufif0 ( ide3_data [ 11 ], ide3_datar [ 11 ], ide3_e ) ; bufif0 ( ide3_data [ 12 ], ide3_datar [ 12 ], ide3_e ) ; bufif0 ( ide3_data [ 13 ], ide3_datar [ 13 ], ide3_e ) ; bufif0 ( ide3_data [ 14 ], ide3_datar [ 14 ], ide3_e ) ; bufif0 ( ide3_data [ 15 ], ide3_datar [ 15 ], ide3_e ) ; bufif0 ( ide4_data [ 0 ], ide4_datar [ 0 ], ide4_e ) ; bufif0 ( ide4_data [ 1 ], ide4_datar [ 1 ], ide4_e ) ; bufif0 ( ide4_data [ 2 ], ide4_datar [ 2 ], ide4_e ) ; bufif0 ( ide4_data [ 3 ], ide4_datar [ 3 ], ide4_e ) ; bufif0 ( ide4_data [ 4 ], ide4_datar [ 4 ], ide4_e ) ; bufif0 ( ide4_data [ 5 ], ide4_datar [ 5 ], ide4_e ) ; bufif0 ( ide4_data [ 6 ], ide4_datar [ 6 ], ide4_e ) ; bufif0 ( ide4_data [ 7 ], ide4_datar [ 7 ], ide4_e ) ; bufif0 ( ide4_data [ 8 ], ide4_datar [ 8 ], ide4_e ) ; bufif0 ( ide4_data [ 9 ], ide4_datar [ 9 ], ide4_e ) ; bufif0 ( ide4_data [ 10 ], ide4_datar [ 10 ], ide4_e ) ; bufif0 ( ide4_data [ 11 ], ide4_datar [ 11 ], ide4_e ) ; bufif0 ( ide4_data [ 12 ], ide4_datar [ 12 ], ide4_e ) ; bufif0 ( ide4_data [ 13 ], ide4_datar [ 13 ], ide4_e ) ; bufif0 ( ide4_data [ 14 ], ide4_datar [ 14 ], ide4_e ) ; bufif0 ( ide4_data [ 15 ], ide4_datar [ 15 ], ide4_e ) ; bufif0 ( ide5_data [ 0 ], ide5_datar [ 0 ], ide5_e ) ; bufif0 ( ide5_data [ 1 ], ide5_datar [ 1 ], ide5_e ) ; bufif0 ( ide5_data [ 2 ], ide5_datar [ 2 ], ide5_e ) ; bufif0 ( ide5_data [ 3 ], ide5_datar [ 3 ], ide5_e ) ; bufif0 ( ide5_data [ 4 ], ide5_datar [ 4 ], ide5_e ) ; bufif0 ( ide5_data [ 5 ], ide5_datar [ 5 ], ide5_e ) ; bufif0 ( ide5_data [ 6 ], ide5_datar [ 6 ], ide5_e ) ; bufif0 ( ide5_data [ 7 ], ide5_datar [ 7 ], ide5_e ) ; bufif0 ( ide5_data [ 8 ], ide5_datar [ 8 ], ide5_e ) ; bufif0 ( ide5_data [ 9 ], ide5_datar [ 9 ], ide5_e ) ; bufif0 ( ide5_data [ 10 ], ide5_datar [ 10 ], ide5_e ) ; bufif0 ( ide5_data [ 11 ], ide5_datar [ 11 ], ide5_e ) ; bufif0 ( ide5_data [ 12 ], ide5_datar [ 12 ], ide5_e ) ; bufif0 ( ide5_data [ 13 ], ide5_datar [ 13 ], ide5_e ) ; bufif0 ( ide5_data [ 14 ], ide5_datar [ 14 ], ide5_e ) ; bufif0 ( ide5_data [ 15 ], ide5_datar [ 15 ], ide5_e ) ; bufif0 ( ide6_data [ 0 ], ide6_datar [ 0 ], ide6_e ) ; bufif0 ( ide6_data [ 1 ], ide6_datar [ 1 ], ide6_e ) ; bufif0 ( ide6_data [ 2 ], ide6_datar [ 2 ], ide6_e ) ; bufif0 ( ide6_data [ 3 ], ide6_datar [ 3 ], ide6_e ) ; bufif0 ( ide6_data [ 4 ], ide6_datar [ 4 ], ide6_e ) ; bufif0 ( ide6_data [ 5 ], ide6_datar [ 5 ], ide6_e ) ; bufif0 ( ide6_data [ 6 ], ide6_datar [ 6 ], ide6_e ) ; bufif0 ( ide6_data [ 7 ], ide6_datar [ 7 ], ide6_e ) ; bufif0 ( ide6_data [ 8 ], ide6_datar [ 8 ], ide6_e ) ; bufif0 ( ide6_data [ 9 ], ide6_datar [ 9 ], ide6_e ) ; bufif0 ( ide6_data [ 10 ], ide6_datar [ 10 ], ide6_e ) ; bufif0 ( ide6_data [ 11 ], ide6_datar [ 11 ], ide6_e ) ; bufif0 ( ide6_data [ 12 ], ide6_datar [ 12 ], ide6_e ) ; bufif0 ( ide6_data [ 13 ], ide6_datar [ 13 ], ide6_e ) ; bufif0 ( ide6_data [ 14 ], ide6_datar [ 14 ], ide6_e ) ; bufif0 ( ide6_data [ 15 ], ide6_datar [ 15 ], ide6_e ) ; bufif0 ( ide7_data [ 0 ], ide7_datar [ 0 ], ide7_e ) ; bufif0 ( ide7_data [ 1 ], ide7_datar [ 1 ], ide7_e ) ; bufif0 ( ide7_data [ 2 ], ide7_datar [ 2 ], ide7_e ) ; bufif0 ( ide7_data [ 3 ], ide7_datar [ 3 ], ide7_e ) ; bufif0 ( ide7_data [ 4 ], ide7_datar [ 4 ], ide7_e ) ; bufif0 ( ide7_data [ 5 ], ide7_datar [ 5 ], ide7_e ) ; bufif0 ( ide7_data [ 6 ], ide7_datar [ 6 ], ide7_e ) ; bufif0 ( ide7_data [ 7 ], ide7_datar [ 7 ], ide7_e ) ; bufif0 ( ide7_data [ 8 ], ide7_datar [ 8 ], ide7_e ) ; bufif0 ( ide7_data [ 9 ], ide7_datar [ 9 ], ide7_e ) ; bufif0 ( ide7_data [ 10 ], ide7_datar [ 10 ], ide7_e ) ; bufif0 ( ide7_data [ 11 ], ide7_datar [ 11 ], ide7_e ) ; bufif0 ( ide7_data [ 12 ], ide7_datar [ 12 ], ide7_e ) ; bufif0 ( ide7_data [ 13 ], ide7_datar [ 13 ], ide7_e ) ; bufif0 ( ide7_data [ 14 ], ide7_datar [ 14 ], ide7_e ) ; bufif0 ( ide7_data [ 15 ], ide7_datar [ 15 ], ide7_e ) ; bufif0 ( ide8_data [ 0 ], ide8_datar [ 0 ], ide8_e ) ; bufif0 ( ide8_data [ 1 ], ide8_datar [ 1 ], ide8_e ) ; bufif0 ( ide8_data [ 2 ], ide8_datar [ 2 ], ide8_e ) ; bufif0 ( ide8_data [ 3 ], ide8_datar [ 3 ], ide8_e ) ; bufif0 ( ide8_data [ 4 ], ide8_datar [ 4 ], ide8_e ) ; bufif0 ( ide8_data [ 5 ], ide8_datar [ 5 ], ide8_e ) ; bufif0 ( ide8_data [ 6 ], ide8_datar [ 6 ], ide8_e ) ; bufif0 ( ide8_data [ 7 ], ide8_datar [ 7 ], ide8_e ) ; bufif0 ( ide8_data [ 8 ], ide8_datar [ 8 ], ide8_e ) ; bufif0 ( ide8_data [ 9 ], ide8_datar [ 9 ], ide8_e ) ; bufif0 ( ide8_data [ 10 ], ide8_datar [ 10 ], ide8_e ) ; bufif0 ( ide8_data [ 11 ], ide8_datar [ 11 ], ide8_e ) ; bufif0 ( ide8_data [ 12 ], ide8_datar [ 12 ], ide8_e ) ; bufif0 ( ide8_data [ 13 ], ide8_datar [ 13 ], ide8_e ) ; bufif0 ( ide8_data [ 14 ], ide8_datar [ 14 ], ide8_e ) ; bufif0 ( ide8_data [ 15 ], ide8_datar [ 15 ], ide8_e ) ; bufif0 ( ide9_data [ 0 ], ide9_datar [ 0 ], ide9_e ) ; bufif0 ( ide9_data [ 1 ], ide9_datar [ 1 ], ide9_e ) ; bufif0 ( ide9_data [ 2 ], ide9_datar [ 2 ], ide9_e ) ; bufif0 ( ide9_data [ 3 ], ide9_datar [ 3 ], ide9_e ) ; bufif0 ( ide9_data [ 4 ], ide9_datar [ 4 ], ide9_e ) ; bufif0 ( ide9_data [ 5 ], ide9_datar [ 5 ], ide9_e ) ; bufif0 ( ide9_data [ 6 ], ide9_datar [ 6 ], ide9_e ) ; bufif0 ( ide9_data [ 7 ], ide9_datar [ 7 ], ide9_e ) ; bufif0 ( ide9_data [ 8 ], ide9_datar [ 8 ], ide9_e ) ; bufif0 ( ide9_data [ 9 ], ide9_datar [ 9 ], ide9_e ) ; bufif0 ( ide9_data [ 10 ], ide9_datar [ 10 ], ide9_e ) ; bufif0 ( ide9_data [ 11 ], ide9_datar [ 11 ], ide9_e ) ; bufif0 ( ide9_data [ 12 ], ide9_datar [ 12 ], ide9_e ) ; bufif0 ( ide9_data [ 13 ], ide9_datar [ 13 ], ide9_e ) ; bufif0 ( ide9_data [ 14 ], ide9_datar [ 14 ], ide9_e ) ; bufif0 ( ide9_data [ 15 ], ide9_datar [ 15 ], ide9_e ) ; Cобственно вместо кода выше написал следующий код: generate for (bi=0; bi<16; bi=bi+1) begin:bit bufif0 ( ad[ bi ] , adr [ bi ] , ade ) ; bufif0 ( fas_db[ bi ] , fas_dbr[ bi ] , fas_ndboe ) ; bufif0 ( ide0_data[ bi ] , ide0_datar[ bi ] , ide0_e ) ; bufif0 ( ide1_data[ bi ] , ide1_datar[ bi ] , ide1_e ) ; bufif0 ( ide2_data[ bi ] , ide2_datar[ bi ] , ide2_e ) ; bufif0 ( ide3_data[ bi ] , ide3_datar[ bi ] , ide3_e ) ; bufif0 ( ide4_data[ bi ] , ide4_datar[ bi ] , ide4_e ) ; bufif0 ( ide5_data[ bi ] , ide5_datar[ bi ] , ide5_e ) ; bufif0 ( ide6_data[ bi ] , ide6_datar[ bi ] , ide6_e ) ; bufif0 ( ide7_data[ bi ] , ide7_datar[ bi ] , ide7_e ) ; bufif0 ( ide8_data[ bi ] , ide8_datar[ bi ] , ide8_e ) ; bufif0 ( ide9_data[ bi ] , ide9_datar[ bi ] , ide9_e ) ; end endgenerate Verilog его понимает , а MOdelsim жестко вылетает. Как можно еще избавиться от этих bufif0, как сократить код? //--------------------------------------------------------------------- // INITIAL block //--------------------------------------------------------------------- initial begin -
Спасибо за ответ, сейчас пороюсь в helpe/.