Перейти к содержанию
    

требования к документации

Задача такая есть заказчик (в данном случае допустим я) и есть исполнитель (в лице другого предприятия). Исполнителю было поручено разработать цифровой блок на VHDL (исходные коды предоставил), но для более быстрого понимания работы написанного кода хотелось бы:

 

P.S. Это как я попытался сформулировать:

 

Требования к написанию программ и документации для ПЛИС

 

• Файл/документ, содержащий описание всех констант, переменных, сигналов.

• TEST BENCH файл/документ с описанием для возможности моделирования работы.

• Описание работы функциональной модели (схема, конечный автомат состояний (диаграмма состояний конечного автомата), и временная диаграмма работы (скриншоты с ModelSim).

• В исходном коде программы должны присутствовать комментарии, облегчающие понимание программы.

• Подробное описание всех входных и выходных сигналов с предъявляемыми к ним требованиями (например потенциальная или импульсная команда(ее длительность)).

• По возможности большую программу/схему разбивать на подпрограммы/подсхемы.

• На начальном уровне соединение всех функциональных блоков производить в Schematic Editor (например, Синхрогенератор <=> Модуль связи УПСОС-ПК) (может заменить функциональную/структурную схему).

• При использовании ядер из CoreGenerator описать процесс создания.

• При написании исходного кода программы максимально использовать механизм настраиваемых параметров Generic (например, для разрядности данных, адресов и т. д.).

 

Но мое начальство говорит, что лучше руководствоваться ГОСТами. Соответственно вопрос есть ли какой то ГОСТ на оформление документации (для программ для ПЛИС).

 

P.S. Прошу прощения, что может не в тему. Просто здесь чаще бывают люди которые с этим непосредственно связаны

 

Сам мучаюсь с документацией оформленной по ГОСТ, на устройства с ПЛИС.

 

С заказчиком вроде договорились

1 Принципиальная схема (того что внутри ПЛИС) оформленная по ГОСТу на принципиальные схемы

2 Файл прошивки ПЛИС

3 Инструкция по настройке.

 

ГОСТов по оформлению документации действительно на ПЛИС нет. Может быть с переходом на стандарт ISO2000 что -нибудь изменится.

 

Когда работали с Микроном они попросили просто описание на VHDL

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Принципиальная схема (того что внутри ПЛИС) оформленная по ГОСТу на принципиальные схемы
Вы не повеситесь, всё это разрисовывая? Хотя, конечно, от объема зависит...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 Принципиальная схема (того что внутри ПЛИС) оформленная по ГОСТу на принципиальные схемы

Когда работали с Микроном они попросили просто описание на VHDL

 

Это как. RTL распечатаете, или два функционально подобных проекта делаете:

В графическом редакторе и текстовом редакторе?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это как. RTL распечатаете, или два функционально подобных проекта делаете:

В графическом редакторе и текстовом редакторе?

НЕЕ два функциональных не делаю. Именно для заказчика только схему. Для Микрона VHDL. Но сейчас думаю как уити от этого, типа ПЛИС составная часть изделия ну и не надо ее разрисовывать, типа все структуры внутри ПЛИС конструктив, короче большая микросхема. А файл прошивки для производства. Все равно если чето не так ко мне побегут, а им отвечу типа все по ГОСТУ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Руководствуясь книгой (System-On-Chip - Design and Test) указанной Dokа я попытался (по требованию моего начальства) соорудить некий переводной документ в котором привожу требования (положения) по написанию "качественных и понятных" программ HDL языке. Во вложенном архиве "1" оригинальный текст (страницы из книг) и распознанный текст в Word. Во вложенном архиве "2" это то что я так сказать "состряпал"(красным выделено то что у меня не получилось коректно перевести). Как ранее говорил про это des00 "ИМХО нужно в обязательном порядке оговорить соглашение об именах, правилах и принципах проектирования !!!"

 

P.S. Хотелось бы услышать как замечания так и предложения :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

кхм. могли бы и по форуму порыть

 

когда то я поднимал тему от 2006 года %)

 

http://electronix.ru/forum/index.php?showt...18207&st=45

 

 

там и с книг многое было взято, по хорошему нужно было все осознать и перевести на русский, но времени как то не хватило :(

 

теперь спустя 2 года, появились еще идеи, кое что нужно переработать. В принципе обсуждаемо :))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

кхм. могли бы и по форуму порыть

 

когда то я поднимал тему от 2006 года %)

 

http://electronix.ru/forum/index.php?showt...18207&st=45

там и с книг многое было взято, по хорошему нужно было все осознать и перевести на русский, но времени как то не хватило :(

 

теперь спустя 2 года, появились еще идеи, кое что нужно переработать. В принципе обсуждаемо :))

 

извини как то про поиск и не вспомнил :( Почитал, конечно у меня, уступает в информативности документ. Что я действительно забыл так про описание модулей памяти, так как оно разное в разных САПР. Я не написал про заголовок файла (в котором в виде коментария можно поместить краткие сведения о версии HDL кода и информацию о функционированию блока, и т.д.) и про тест-бенчи ничего не написал

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

P.S. Хотелось бы услышать как замечания так и предложения :)

 

Да мнений может быть сколько угодно. Например у описанию активного сигнала.

Активный низкий clr_n, высокий просто clr.

Про приоритетное мультиплексирование на два вложения тоже спорно,

А если это многофункциональный счетчик? как тут без приоритетного мультиплексирования.

Главное чтоб по времени уложилось.

Это все надо сертифицированному например vhdl дизайнеру показывать.

У Полякова в книге все классно рассписано.

Вот еще по-русски.

WinZip.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да мнений может быть сколько угодно. Например у описанию активного сигнала.

Активный низкий clr_n, высокий просто clr.

Про приоритетное мультиплексирование на два вложения тоже спорно,

А если это многофункциональный счетчик? как тут без приоритетного мультиплексирования.

Главное чтоб по времени уложилось.

Это все надо сертифицированному например vhdl дизайнеру показывать.

У Полякова в книге все классно рассписано.

Вот еще по-русски.

 

Докуметы, мне понравились будем читать и разбираться. Спасибо!!!

 

По поводу "Да мнений может быть сколько угодно. Например у описанию активного сигнала.

Активный низкий clr_n, высокий просто clr." тут я с Вами согласен, но можно и так и это - как я пишу об этом просто договариваются в начальной фазе проектирования

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я чего-то не могу понять то что я переводил и разбирался пишут, что использование комбинационной обратной связи крайне не желательно, а пункт 4.44 документа des00 рассматриваемого по ветке http://electronix.ru/forum/index.php?showt...18207&st=45 говорит обратное а также это говорит пункт 4.31 в документе des00.

 

Ссылка на документ des00 http://electronix.ru/forum/index.php?act=A...ost&id=6137

 

Я кажется чего-то не допонимаю, объясните пожайлуста!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

чего-то не допонимаю, объясните пожайлуста!

 

4.44. RTL: All the Entity's outputs should be registered. Combinational outputs can also create combinational feedbacks through the hierarchy.

 

Хмм может я что то не понял, но тут говорится о том, что крайне желательно что бы выходу модуля были пропущены через регистры.

 

И кратко поясняется что если регистра нет и выход комбинационный, то внешняя логика, при невнимательной разработке может создать комбинационную обратную связь. Что может привести к неработоспособности. Но это незначит что так делать нельзя ;)

 

Вот пример : мастер шины, у которого сигнал request формируется комбинационной логикой с сигналом acknowledge. (тогда как более разумно пропустить его через триггер).

 

Это всего лишь рекомендации, а в жизни бывают исключения.

 

Удачи!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И кратко поясняется что если регистра нет и выход комбинационный, то внешняя логика, при невнимательной разработке может создать комбинационную обратную связь. Что может привести к неработоспособности.

 

Спасибо я этого не знал

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И кратко поясняется что если регистра нет и выход комбинационный, то внешняя логика, при невнимательной разработке может создать комбинационную обратную связь. Что может привести к неработоспособности. Но это незначит что так делать нельзя ;)

 

Скорее всего комбиционный выход + внешняя логика подвигнет синтезатор на минимизацию такой конструкции, что у неопытного пользователя может привести к другой схеме относительно задуманной.

Но отнюдь к не работоспособности.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извините, поспешил! обнаружил некоторые некоректности, выложу документ позже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...