flammmable 4 28 июня, 2018 Опубликовано 28 июня, 2018 · Жалоба Есть ли какое-то подобие MISRA-C, но только для Verilog? Пока нашел стандарт разработки от Freescale. Вообще, есть ли у вас корпоративные/личные правила разработки? Какие вы ставите префиксы у названий переменных регистров и цепей? Предпочитаете camelCase или under_score? Как размещаете состояния FSM внутри always? Предпочитаете FSM с одним или с двумя always? И т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nieve 0 28 июня, 2018 Опубликовано 28 июня, 2018 · Жалоба Довольно сложно, я бы даже сказал невыполнимо взять и договориться всем разработчикам. Если говорить о входны сигналах, то часто ставят префикс "i" или "in", соответственно "o" или "out" у выходных. А вообще у Иосифа Григорьевича в "Краткий курс HDL. Часть 3. О написании кода <вообще> ..." есть примеры и рекомендации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x736C 0 28 июня, 2018 Опубликовано 28 июня, 2018 · Жалоба Обсуждалось на форуме. Выкладывались разные стандарты. Поищите. Пока нашел стандарт разработки от Freescale.Взял его за основу, добавив что-то из других. Вообще, есть ли у вас корпоративные/личные правила разработки?Полагаю, что у любого разработчика или команды такое есть или к этому стремятся. Какие вы ставите префиксы у названий переменных регистров и цепей?Возьмите из стандартов. _b или _n, например, используется для обозначения цепи, несущей отрицательный логический сигнал. _ff — триггер. _in, _out или _i, _o, _reg, _ctr, _en, _rx, _tx, _rdy, _tmp и другие сообразно вашей фантазии. Предпочитаете camelCase или under_score?Когда-то пытался писать в стиле camelCase, но быстро отказался от этого. Читаемость, имхо, намного хуже при сомнительно экономии (экономии чего, даже непонятно). Как размещаете состояния FSM внутри always? Предпочитаете FSM с одним или с двумя always? И т.д. Отдельным блоком сигналы с префиксом start_ или подобным по смыслу. И отдельным блоком always сам АКС. В сети существует много стандартов и рекомендаций от Freescale, Cisco, Altera, Xilinx, Opencores и так далее. Был даже стандарт от нашего разработчика на местном wiki что ли. Что-то такое помнится. От них стоит отталкиваться, на мой взгляд. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 28 июня, 2018 Опубликовано 28 июня, 2018 · Жалоба Вообще, есть ли у вас корпоративные/личные правила разработки? Какие вы ставите префиксы у названий переменных регистров и цепей? Предпочитаете camelCase или under_score? Как размещаете состояния FSM внутри always? Предпочитаете FSM с одним или с двумя always? И т.д. 1) либо без, либо w_ и r_ 2) under_score 3) FSM 1 always Дело в том, что такие вещи в DO-254 не стандартизуются, хотя это можно назвать отдаленно "MISRA для Verilog". Просто говорится, что такой стандарт на код должен быть. Но это еще не всё. Есть большой список рекомендаций, какие конструкции допустимы, а какие запрещены. Наверное, их сформировали для DO-254, исходя из типичных распространенных или даже очень редких ошибок. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Doka 4 29 июня, 2018 Опубликовано 29 июня, 2018 · Жалоба Есть ли какое-то подобие MISRA-C, но только для Verilog? всёже MISRA-C - это больше "подмножество (под)стандарта" Си обложенный рулами safety и reliability, а обсуждение как-то в стайл-гайд быстро скатилось... (либо сравнение с MISRA-C было не очень справедливо использовано) как пример: https://wiki.sei.cmu.edu/confluence/display...+numeric+values т.е. для верилога это будет звучать как: при использовании знаковой арифметики всегда объявляйте переменную с квалификатором signed Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 29 июня, 2018 Опубликовано 29 июня, 2018 · Жалоба 1) либо без, либо w_ и r_ 2) under_score 3) FSM 1 always Дело в том, что такие вещи в DO-254 не стандартизуются, хотя это можно назвать отдаленно "MISRA для Verilog". Просто говорится, что такой стандарт на код должен быть. Но это еще не всё. Есть большой список рекомендаций, какие конструкции допустимы, а какие запрещены. Наверное, их сформировали для DO-254, исходя из типичных распространенных или даже очень редких ошибок. Можно увидеть do 254? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x736C 0 30 июня, 2018 Опубликовано 30 июня, 2018 · Жалоба Можно увидеть do 254? Ссылка провисит недолго. DO-254, его перевод и КТ-254 (фактически перевод, гармонизированный DO-254). DO-178 до кучи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться