реклама на сайте
подробности

 
 
> требования к документации
Maverick
сообщение Jun 4 2008, 12:10
Сообщение #1


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



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

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

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

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

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

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


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Trainee
сообщение Jun 27 2008, 09:55
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 25-03-05
Пользователь №: 3 668



Цитата(Maverick @ Jun 4 2008, 15:10) *
Задача такая есть заказчик (в данном случае допустим я) и есть исполнитель (в лице другого предприятия). Исполнителю было поручено разработать цифровой блок на VHDL (исходные коды предоставил), но для более быстрого понимания работы написанного кода хотелось бы:

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

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

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

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

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


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

С заказчиком вроде договорились
1 Принципиальная схема (того что внутри ПЛИС) оформленная по ГОСТу на принципиальные схемы
2 Файл прошивки ПЛИС
3 Инструкция по настройке.

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

Когда работали с Микроном они попросили просто описание на VHDL
Go to the top of the page
 
+Quote Post
sazh
сообщение Jun 27 2008, 10:16
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Trainee @ Jun 27 2008, 13:55) *
1 Принципиальная схема (того что внутри ПЛИС) оформленная по ГОСТу на принципиальные схемы
Когда работали с Микроном они попросили просто описание на VHDL


Это как. RTL распечатаете, или два функционально подобных проекта делаете:
В графическом редакторе и текстовом редакторе?
Go to the top of the page
 
+Quote Post
Trainee
сообщение Jul 1 2008, 06:31
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 25-03-05
Пользователь №: 3 668



Цитата(sazh @ Jun 27 2008, 13:16) *
Это как. RTL распечатаете, или два функционально подобных проекта делаете:
В графическом редакторе и текстовом редакторе?

НЕЕ два функциональных не делаю. Именно для заказчика только схему. Для Микрона VHDL. Но сейчас думаю как уити от этого, типа ПЛИС составная часть изделия ну и не надо ее разрисовывать, типа все структуры внутри ПЛИС конструктив, короче большая микросхема. А файл прошивки для производства. Все равно если чето не так ко мне побегут, а им отвечу типа все по ГОСТУ.
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jul 8 2008, 10:33
Сообщение #5


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



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

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


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
sazh
сообщение Jul 8 2008, 11:21
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Maverick @ Jul 8 2008, 14:33) *
P.S. Хотелось бы услышать как замечания так и предложения smile.gif


Да мнений может быть сколько угодно. Например у описанию активного сигнала.
Активный низкий clr_n, высокий просто clr.
Про приоритетное мультиплексирование на два вложения тоже спорно,
А если это многофункциональный счетчик? как тут без приоритетного мультиплексирования.
Главное чтоб по времени уложилось.
Это все надо сертифицированному например vhdl дизайнеру показывать.
У Полякова в книге все классно рассписано.
Вот еще по-русски.
Прикрепленные файлы
Прикрепленный файл  WinZip.zip ( 256.53 килобайт ) Кол-во скачиваний: 93
 
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jul 8 2008, 11:45
Сообщение #7


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(sazh @ Jul 8 2008, 14:21) *
Да мнений может быть сколько угодно. Например у описанию активного сигнала.
Активный низкий clr_n, высокий просто clr.
Про приоритетное мультиплексирование на два вложения тоже спорно,
А если это многофункциональный счетчик? как тут без приоритетного мультиплексирования.
Главное чтоб по времени уложилось.
Это все надо сертифицированному например vhdl дизайнеру показывать.
У Полякова в книге все классно рассписано.
Вот еще по-русски.


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

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


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jul 9 2008, 08:19
Сообщение #8


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



я чего-то не могу понять то что я переводил и разбирался пишут, что использование комбинационной обратной связи крайне не желательно, а пункт 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

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


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
des00
сообщение Jul 9 2008, 08:43
Сообщение #9


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Maverick @ Jul 9 2008, 03:19) *
чего-то не допонимаю, объясните пожайлуста!


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

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

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

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

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

Удачи!


--------------------
Go to the top of the page
 
+Quote Post
sazh
сообщение Jul 9 2008, 13:53
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(des00 @ Jul 9 2008, 12:43) *
И кратко поясняется что если регистра нет и выход комбинационный, то внешняя логика, при невнимательной разработке может создать комбинационную обратную связь. Что может привести к неработоспособности. Но это незначит что так делать нельзя wink.gif


Скорее всего комбиционный выход + внешняя логика подвигнет синтезатор на минимизацию такой конструкции, что у неопытного пользователя может привести к другой схеме относительно задуманной.
Но отнюдь к не работоспособности.
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jul 9 2008, 17:32
Сообщение #11


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



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


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jul 11 2008, 16:49
Сообщение #12


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(Maverick @ Jul 9 2008, 20:32) *
Извините, поспешил! обнаружил некоторые некоректности, выложу документ позже.


Выкладываю документ, все что дали пригодилось и изучил и как по мне взял самое важное (или то что понимаю smile.gif), кроме правил форматирования документа (оно для меня не принципиально, но можно и написать). Писал, к сожалению, для VHDL, так как Verilog не знаю.

Спасибо за помощь des00 и sazh a14.gif

Про метастабильность стоит здесь упоминать или нет, если да то как это красиво сформулировать (материал на русском языке есть во вложении)?

P.S. Только, пожалуйста, сообщайте об не точностях, свои замечания и пожелания. smile.gif

Цитата(sazh @ Jul 9 2008, 20:59) *
5. При объявлении многоразрядных переменных (сигналов), используйте последовательный порядок битов, либо высокий к низкому или низкий к высокому - то есть 7 до 0 для VHDL
///////////////////////////////////////////
По мне нужно указать конкретно
reg [7:0] shift_rg ------- только так 7 старший, 0 младший - как на входе модуля так и на выходе.
[0:7] (старший ноль, 7 младший у нас не прижилось)


Согласен, исправил
Прикрепленные файлы
Прикрепленный файл  metastability.pdf ( 191.53 килобайт ) Кол-во скачиваний: 510
 


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jul 16 2008, 15:23
Сообщение #13


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Извините, за мою настойчивость, но может как-то доведем до разумного конца вопрос с документацией. Ранее это уже конечно обсуждалось , поднимал это des00. Мое предложение написать все это на русском языке и кстати на ветке ранее вопрос перевода поднимался.

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

Я начал это делать и хотел бы это закончить help.gif help.gif help.gif


P.S. Жду Ваших сообщений об не точностях, замечаний и пожеланий. smile.gif

С Уважением Maverick


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
des00
сообщение Jul 17 2008, 03:34
Сообщение #14


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Maverick @ Jul 16 2008, 10:23) *
Я начал это делать и хотел бы это закончить help.gif help.gif help.gif


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


--------------------
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Maverick   требования к документации   Jun 4 2008, 12:10
- - Maverick   Нашел ГОСТ, но он больше относится к программистам...   Jun 5 2008, 10:33
- - sazh   Цитата(Maverick @ Jun 4 2008, 16:10) Зада...   Jun 5 2008, 10:52
|- - Maverick   Цитата(sazh @ Jun 5 2008, 13:52) Врядли т...   Jun 5 2008, 13:24
|- - sazh   Цитата(Maverick @ Jun 5 2008, 17:24) Но а...   Jun 5 2008, 13:38
- - yes   Цитата(Maverick @ Jun 4 2008, 16:10) Зада...   Jun 5 2008, 11:22
- - des00   если не против, добавлю свои 5 капель Цитата(Mav...   Jun 6 2008, 05:08
|- - Maverick   Цитата(des00 @ Jun 6 2008, 08:08) ИМХО ну...   Jun 6 2008, 05:16
- - Doka   Maverick дабы не придумывать велосипед и экономить...   Jun 6 2008, 05:37
|- - Maverick   Цитата(Doka @ Jun 6 2008, 08:37) Maverick...   Jun 6 2008, 06:19
|- - des00   Цитата(Maverick @ Jun 6 2008, 01:19) Soft...   Jun 6 2008, 10:28
|- - Maverick   Всем спасибо за очень хорошие ответы   Jun 6 2008, 12:03
|- - Maverick   Цитата(des00 @ Jun 6 2008, 13:28) так наз...   Jun 14 2008, 14:36
- - WEST128   Все правильно. Разработчики не любят предоставлять...   Jun 6 2008, 09:40
- - lex_84   Soft Macro Deliverables RMM: RTL Coding Guidelines...   Jun 24 2008, 20:43
|- - Doka   Цитата(lex_84 @ Jun 25 2008, 00:43) RMM: ...   Jun 25 2008, 03:29
|- - andrew_b   Цитата(Trainee @ Jun 27 2008, 12:55) Прин...   Jun 27 2008, 10:12
|- - Maverick   Цитата(des00 @ Jul 9 2008, 11:43) И кратк...   Jul 9 2008, 08:55
|- - Maverick   Цитата(des00 @ Jul 17 2008, 06:34) К сожа...   Jul 17 2008, 15:40
- - des00   кхм. могли бы и по форуму порыть когда то я подн...   Jul 8 2008, 11:01
|- - Maverick   Цитата(des00 @ Jul 8 2008, 14:01) кхм. мо...   Jul 8 2008, 11:20
- - sazh   5. При объявлении многоразрядных переменных (сигна...   Jul 9 2008, 17:59
- - des00   как и обещал высказываю свое ИМХО %) текст и вык...   Jul 21 2008, 03:21
|- - Maverick   Спасибо des00!   Jul 21 2008, 15:56
|- - клещ   Цитата(Maverick @ Jul 21 2008, 19:56) Спа...   Aug 5 2010, 12:19
|- - vitan   Вы не можете брать децимальный номер на микросхему...   Aug 5 2010, 12:33
|- - Maverick   Цитата(клещ @ Aug 5 2010, 15:19) Maverick...   Aug 5 2010, 13:26
|- - клещ   Цитата(vitan @ Aug 5 2010, 16:33) Вы не м...   Aug 5 2010, 14:43
|- - Maverick   Цитата(клещ @ Aug 5 2010, 17:43) Это отче...   Aug 5 2010, 14:55
||- - клещ   Цитата(Maverick @ Aug 5 2010, 18:55) для ...   Aug 5 2010, 15:07
|- - sazh   Цитата(клещ @ Aug 5 2010, 17:43) Использу...   Aug 5 2010, 15:25
||- - клещ   Цитата(sazh @ Aug 5 2010, 19:25) Тогда уж...   Aug 5 2010, 16:32
||- - sazh   Цитата(клещ @ Aug 5 2010, 19:32) Другое д...   Aug 5 2010, 18:29
|- - des00   Цитата(клещ @ Aug 5 2010, 08:43) Собствен...   Aug 5 2010, 16:30
|- - vitan   Цитата(клещ @ Aug 5 2010, 18:43) Это отче...   Aug 8 2010, 07:40
|- - tema-electric   Цитата(vitan @ Aug 8 2010, 14:40) Очевидн...   Aug 9 2010, 18:20
- - DW0   Если в спецификацию включить прошивку и ПЛИСину, т...   Aug 9 2010, 15:50
|- - vitan   Цитата(DW0 @ Aug 9 2010, 19:50) Если в сп...   Aug 9 2010, 19:52
|- - DW0   Цитата(vitan @ Aug 9 2010, 22:52) Нельзя ...   Aug 10 2010, 08:14
|- - Maverick   Цитата(DW0 @ Aug 10 2010, 11:14) Получает...   Aug 10 2010, 09:58
|- - клещ   Цитата(DW0 @ Aug 10 2010, 12:14) Например...   Aug 10 2010, 13:39
|- - DW0   Цитата(клещ @ Aug 10 2010, 16:39) Простит...   Aug 10 2010, 14:27
|- - клещ   Цитата(DW0 @ Aug 10 2010, 18:27) поз. обо...   Aug 10 2010, 15:24
|- - DW0   Цитата(клещ @ Aug 10 2010, 18:24) Я так п...   Aug 10 2010, 15:52
- - DW0   если мы говорим о АЭС, то органы которые занимаютс...   Aug 10 2010, 13:03
|- - Maverick   Цитата(DW0 @ Aug 10 2010, 16:03) но в жиз...   Aug 10 2010, 14:18
- - vetal   ЦитатаПростите, не могли бы Вы поподробнее объясни...   Aug 10 2010, 13:47
- - @Ark   Цитата... жизненном цикле есть еще и снятие с эксп...   Aug 10 2010, 15:09
|- - DW0   Цитата(@Ark @ Aug 10 2010, 18:09) Интерес...   Aug 10 2010, 15:19
- - @Ark   Цитатаа сопровождение будет всю жизнь доводить до ...   Aug 10 2010, 15:32
- - @Ark   ЦитатаСопровождение этого оборудования очень ответ...   Aug 10 2010, 16:10
|- - DW0   Цитата(@Ark @ Aug 10 2010, 19:10) Если у ...   Aug 10 2010, 16:25
- - @Ark   ЦитатаДокументация должна быть сделана таким образ...   Aug 10 2010, 17:56
|- - DW0   Цитата(@Ark @ Aug 10 2010, 20:56) Для тек...   Aug 10 2010, 18:46
|- - клещ   Цитата(DW0 @ Aug 10 2010, 22:46) если на ...   Aug 11 2010, 16:51
- - @Ark   ЦитатаТут я с Вами не согласен, так как проектные ...   Aug 10 2010, 19:50
|- - DW0   Цитата(@Ark @ Aug 10 2010, 22:50) Вся эта...   Aug 11 2010, 18:14
- - @Ark   Цитатадля того чтобы написать качественное ТЗ необ...   Aug 11 2010, 19:54
- - DW0   @Ark я именно и хочу сказать что немного о разных ...   Aug 12 2010, 08:54


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 01:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01575 секунд с 7
ELECTRONIX ©2004-2016