[an error occurred while processing this directive]
|
то описание любой из необходимых мне систем на AHDL потребовало меньше всего писанины (по количеству нажатых кнопок :). Для себя по-этому и выбрал его как самый удобный язык. Но! Только в части синтезируемых конструкций. Так как несинтезируемых в нем просто нет. Отсюда у меня получается следующая технология. Пишу на AHDL собственно модули, которые будут синтезироваться. При необходимости симуляции в чем-то более серьезном, чем симулятор максплюса-квартуса пишу тест-бенч на верилоге, и подключаю к нему либо синтезированный нетлист, либо конвертированный при помощи xport.exe в Verilog исходник.
Далее. Не все синтезаторы умеют синтезировать с AHDL. Скажем так - редкие, только квартус и максплюс. Однако же и с verilog есть проблема с разнобоем в поддержке различных конструкций языка. При написании RTL на AHDL и последуюей конвертации AHDL->Verilog получается исходник, который синтезируется ВСЕМИ проверенными мной синтезаторами без ошибок (это были Synopsys DC, Leonardo и Synplify). Написанный-же проект непосредственно на верилоге у наших ребят синтезируется без дополнительного геморроя только Leonardo. Так что в этом случае надо знать и помнить, что и где можно применять, а что нельзя. Мне это кажется неудобным.
P.S.
Многим это скорее всего покажется извращением, но по такой технологии очень удобно все делалось не только под альтеру, но и под ASIC. Единственное, что плохо - это то, что конвертер стирает все альтеро-специфические вещи типа LCELL. В результате в конвертированный исходник приходится добавлять в те места примитивы из технологической библиотеки.
E-mail: info@telesys.ru