vvu 0 14 декабря, 2004 Опубликовано 14 декабря, 2004 · Жалоба Это вообще возможно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
maegg 0 14 декабря, 2004 Опубликовано 14 декабря, 2004 · Жалоба Если я правильно понял вопрос, то в VHDL-е есть возможность выбора реализации enyity через описание в разных архитектурах, а затем определить использование того или другого архитектурного тела через конфигурацию. configuration xxx of zzz is --xxx имя конфигурации for yyy --имя архитектурного тела for vvv:nnn use entity work.nnn(архитектура); end for; Извините, писал по памяти Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vvu 0 14 декабря, 2004 Опубликовано 14 декабря, 2004 · Жалоба Если я правильно понял вопрос, то в VHDL-е есть возможность выбора реализации enyity через описание в разных архитектурах, а затем определить использование того или другого архитектурного тела через конфигурацию. configuration xxx of zzz is --xxx имя конфигурации for yyy --имя архитектурного тела for vvv:nnn use entity work.nnn(архитектура); end for; Извините, писал по памяти <{POST_SNAPBACK}> Это получается, что если у меня в 3-х местах есть по 2 варианта, то надо делать 8 entity? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vetal 0 14 декабря, 2004 Опубликовано 14 декабря, 2004 · Жалоба Это получается, что если у меня в 3-х местах есть по 2 варианта, то надо делать 8 entity? 1 entity 2 architecture 3 три раза деклирировать по приведенному образцу. Так же можно использовать generic и строить исключающую логику. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vvu 0 15 декабря, 2004 Опубликовано 15 декабря, 2004 · Жалоба Это получается, что если у меня в 3-х местах есть по 2 варианта, то надо делать 8 entity? 1 entity 2 architecture 3 три раза деклирировать по приведенному образцу. Так же можно использовать generic и строить исключающую логику. <{POST_SNAPBACK}> Спасибо. я глюкнул малость и в голове entity c architecture спутал.:-) Но тем не менее. Если мне надо внести изменение в дизайн в той части что повторяется во всех architecture, то надо править все architecture? Я правильно понял? Оно понятно, что надо дробить дизайн до мелких кусков чтоб этого не делать, но все же лень... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oldring 0 11 января, 2005 Опубликовано 11 января, 2005 · Жалоба В стиле C препроцессора - generate statement с if схемой наиболее близок. Правда, он только параллельная конструкция, в процесс не вставишь. Но в процессе можно if false написать... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitus 0 4 февраля, 2005 Опубликовано 4 февраля, 2005 · Жалоба entity test is generic(switch : boolean); end test; architecture....is if switch generate q: adder1 port map(); else d: adder2 port map(); end if; end; (переписано из небезизвестного FAQ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitus 0 4 февраля, 2005 Опубликовано 4 февраля, 2005 · Жалоба Тот же FAQ рекомендует еще одну неплохую идею: использовать директивы препроцессора обычного компилятора С(#ifdef #endif) с остановкой оного после препроцессора. Можно написать командный файл который будет обрабатывать исходник перед VHDL-компиляцией (пропускать через препроцессор С) результат чего поступает на VHDL-компиляцию. от себя добавлю что VHDL-исходник содержащий оные директивы не будет соответствовать требованиям VHDL :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k_george 0 4 февраля, 2005 Опубликовано 4 февраля, 2005 · Жалоба А ещё можно управлять синтезатором: -- synopsys synthesis_off "синтезить не надо" -- synopsys synthesis_on Именно так - как комментарий Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться