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

Убийство времени - понятие относительное. Если просто посчитать кол-во символов в исходнике (при одинаковых идентификаторах) то VHDL/verilog 1.5...2/1 - и времени на написание ровно во столько же больше. А время на продумывание архитектуры одинаково. Вот и голимое убийство. Плюс раздражение и нервы от этих лишних преобразований.
Интересная точка зрения :) Похоже, уважаемый SM, скорость вашей мысли значительно обгоняет скорость набора ваших пальцев на клавиатуре ;) А если серьезно, то время на продумывание сколь нибудь сложной схемы никак не соизмеримо со временем на ее написание. Поскольку реализация модуля по моему опыту занимает два часа, а продумывание идеи и структуры - пару дней :( К тому же, всегда приятно знать, что твоя схема четко соответствует тому, что ты написал, а строгая типизация и отсутствие неоднозначности в трактовке конструкций компилятором - ключ к этому.

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


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

Я очень хорошо знаком, например, с Си. И Си++ тоже.
Но и не надо мух с котлетами путать. А именно языки программирования и языки описания аппаратуры. Две большие разницы :). Одними описывается последовательность действий вычислителя, другими - схема соединения вычислителей (и прочих блоков/устройств).

И что? Значит, арифметический блок можно описать абы как, лишь бы работал?

Зачем "абы как"? На любом языке описания аппаратуры можно хорошо описать схему, а можно плохо. Но на одном это "хорошо" будет растянуто и монстроидально, а на другом кратко и лаконично.

 

 

Поскольку реализация модуля по моему опыту занимает два часа, а продумывание идеи и структуры - пару дней :( К тому же, всегда приятно знать, что твоя схема четко соответствует тому, что ты написал, а строгая типизация и отсутствие неоднозначности в трактовке конструкций компилятором - ключ к этому.

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

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


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

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

 

 

Схема состоит из проводов логики и регистров. Строгая типизация проводов, логики, регистров.

По моим наблюдения на этом форуме именно вопрошающие на vhdl не видят за оисанием ни проводов, ни логики, ни регистров.

А вопрошающие на vhdl ответов по своим вопросам не получают.

Не вижу я активности со стороны VHDLщиков. Одни пространные рассуждения. А любой язык, он ведь пропаганду любит. Нагляности для убеждения.

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


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

Одни пространные рассуждения.

Ясное дело. Это же язык для академиков и профессоров :) А пространные рассуждения это их конек!

 

Вот, кстати, и свежий яркий пример клинического проявления геморроя :) :) http://electronix.ru/forum/index.php?showt...mp;#entry564202

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


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

Как то странно слышать высказывания по поводу краткости описания схожих блоков в некоторых языках. Я разрабатывал блоки на VHDL и AHDL, с чистым Verilog знаком косвенно. На AHDL описание некоторых блоков укладывается в строчку, а на VHDL то же самое занимает 4-6 строк кода. И что? AHDL теперь лучше в 4-6 раз чтоли?

Давайте согласимся, что писать ситнезируемый код на SV, это значит использовать подмножество Verilog. Написание тестбенчей - вот конёк именно SV. Постепенно в моей компании пришли к тому, чтобы писать rtl описания на VHDL, а верификацию проводить средствами SV по методологиям OVM или VMM.

А на счёт разработки блоков за 2 дня - В среднем разработка прошивки у меня занимает 1-2 месяца(включая предварительную отладку средствами VHDL ). Отладка средствами OVM - пару недель. И эти пару недель сокращают отладку в железе на месяц! Если написание RTL модели и верификационной модели выполняют разные люди - полная работа над проектом вплоть до отладки в железе сокращается многократно.

Вот я и говорю, что SV хорош для отладки. Для сравнения VHDL и Verilog тут была когда-то отдельная ветка.

Изменено пользователем warrior-2001

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


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

Давайте согласимся, что писать ситнезируемый код на SV, это значит использовать подмножество Verilog.

 

либо вы слишком мало работали с V/SV, либо те люди которые вам об этом сказали ничего не понимают в SV. Неоднократно выкладывал на этот форум модули написанные именно на SV, на верилоге тоже самое описывается через Ж.

 

Постепенно в моей компании пришли к тому, чтобы писать rtl описания на VHDL, а верификацию проводить средствами SV по методологиям OVM или VMM.

 

ИМХО костыли, надеюсь вам не понадобится залезть внуть ртлного модуля при отладке по иерархическим именам.

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


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

либо вы слишком мало работали с V/SV, либо те люди которые вам об этом сказали ничего не понимают в SV. Неоднократно выкладывал на этот форум модули написанные именно на SV, на верилоге тоже самое описывается через Ж.

Ну модулей RTL уровня на SV я видел не много. В большинстве случаев бил именно Verilog. Это пока скорее исключение, чем правило. Тем более при разводке ПЛИС в том же

Quartus степень поддержки SV заранее не известна. Так зачем же рисковать?

 

ИМХО костыли, надеюсь вам не понадобится залезть внуть ртлного модуля при отладке по иерархическим именам.

В редких случаях достать пару тройку сигналов не проблема. В идеале тестируемый блок должен быть чёрным ящиком. Наличие референсной модели в этом случае обязательно.

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


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

Ну модулей RTL уровня на SV я видел не много. В большинстве случаев бил именно Verilog. Это пока скорее исключение, чем правило. Тем более при разводке ПЛИС в том же

Quartus степень поддержки SV заранее не известна. Так зачем же рисковать?

 

а мужики то не знают (с),

 

ничего себе не известна, работаю 2 года исключительно на SV в квартусе начиная с 6.1, за это время сделал порядка 8ми проектов, один в публичном доступе

 

вы на квартус документацию не пробывали читать ? степень поддержки SV в нем описана.

 

В редких случаях достать пару тройку сигналов не проблема. В идеале тестируемый блок должен быть чёрным ящиком. Наличие референсной модели в этом случае обязательно.

 

видов тестирования есть много, например кому то удобнее моделировать ситуацию ошибки снаружи (хотя это нужно только для глобального тестирования), а кто то простым

 

force uut.receiver.some_module.error = 1;

 

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

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


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

Вот, кстати, и свежий яркий пример клинического проявления геморроя :) :)

я плакалЪ :lol:

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


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

На AHDL описание некоторых блоков укладывается в строчку, а на VHDL то же самое занимает 4-6 строк кода. И что? AHDL теперь лучше в 4-6 раз чтоли?

Ну не знаю, лучше или хуже, но AHDL значительно приятнее, чем VHDL, для написания на нем кода. Но к сожалению это проприетарный язык, не пошедший вперед. Я на AHDL когда-то даже микропроцессор сделал, который был успешно изготовлен в кремнии на пол-микронной технологии. Однако что только стоит такая возможность, что типом переменной или массива может быть любой модуль. Это просто мечта! Такое бы как-то в верилог добавить к его wire/reg...

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


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

Хотя это в общем и есть те самые академики с шилом в заднице. Наверное от SV эти прибыли вниз пошли, вот и решили VHDL подновить, так как на дальнейшее серьезное усовершенствование SV соображалки пока не хватает. Да и зачем работать, если можно не работать - ведь тут - работы раз-два, и типа как целый прорыв совершен.

ну я знаком более или менее только с составом SV-BC (basic commity) там уж точно не академики рулят. в основном дяди из компаний, что САПРы пишут и профессиональные вериложники из компаний зарабатывающих на обучении (типа doulas). к стати некоторые даже не магистры, не то что доктора. прибыли вниз может и не пошли, но рост ажиотажа явно остановился, поэтому решили отпустить ВХДЛ. а на усовершенствование потенциал у них есть - в прошлый стандарт BlueSpec достаточно внёс, и с тех пор у BlueSpec технология очень сильно продвинулась (включая ту самую темплетизацию), и они в коммитете вс так же сидят, а прорывные идеи почему-то в новый стандарт не включают, самое "прорывное" что собираются вводить в следующем стандарте это слайсинг выражений ( (a+b )[5:3] ) и "обоюдоострую" импликацию (a <-> b ), что на самом деле просто смешно.

 

типом переменной или массива может быть любой модуль. Это просто мечта! Такое бы как-то в верилог добавить

такое в планах есть

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


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

Вы это серьезно??? В верилоге??? Или в VHDL? Откуда инфа?

инфа из переписки коммитета. "в планах" имею ввиду, что данный вопрос (массив модулей) стоял на повестке дня.

ЗЫ: сейчас попытался найти эту ветку, но поиск по mail-reflector отсутствует, а в заголовках писем этого не нашёл (если удастся найти, отпишусь)

PPS: ну вот кое-что http://www.eda-stds.org/sv/sv-champions/Re...5_06_01/445.pdf

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


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

что данный вопрос (массив модулей)

 

Да хотя бы просто модуль, без массива... Что нить типа того:

 

mymodule mod_inst;

 

...

always @(posedge clk)

mod_inst.ina <= dataa;

 

always @*

mod_inst.inb <= datab+datac;

 

always @(posedge clk)

if (mod_inst.req) intr <= 1'b1; else

if (intack) intr <= 1'b0;

...

 

Интересно, кто первый такое сделает - VHDL или verilog? При том, что AHDL с рождения это имеет?

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


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

always @(posedge clk)

mod_inst.ina <= dataa;

вообще-то такое запрещено для синтеза принципиально

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


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

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

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

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

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

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

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

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

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

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