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

xHDL.... А зачем оно надо? Растолкуйте, плз.

Случилось на работе заняться Альтерой.

 

В схемном редакторе Макс-плюса нарисовал схему: шинный интерфейс (девайс отображается на пространство памяти контроллера), модули обработки ШИМов, сигналов обратных связей от драйверов.

Симульнул, залил (FLEX 10K30), отладил - работает!!! Клок = 60МГц.

 

Зачем тогда нужет xHDL, если и без него можно успешно решать задачи. Не бейте сильно, просто новичек в данной теме, ... не понимаю :)

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


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

Случилось на работе заняться Альтерой.

 

В схемном редакторе Макс-плюса нарисовал схему: шинный интерфейс (девайс отображается на пространство памяти контроллера), модули обработки ШИМов, сигналов обратных связей от драйверов.

Симульнул, залил (FLEX 10K30), отладил - работает!!! Клок = 60МГц.

 

Зачем тогда нужет xHDL, если и без него можно успешно решать задачи. Не бейте сильно, просто новичек в данной теме, ... не понимаю :)

 

Это вы поймете когда нарисуете и отладите например PCI.

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


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

IMHO:

1) обеспечивается хоть какая-то переносимость исходных кодов между различными платформами (Xilinx, Altera, ...)

2) модно это нынче (писать на языках).

Подавляющее большинство как "фирменных" примеров реализации различных устройств (даже простых), так и писанных энтузиастами OpenCores, делается на xHDL.

Так что разбираться с xHDL все-равно придется.

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


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

Это вы поймете когда нарисуете и отладите например PCI.

 

Может быть поясните, на чем будет "затык" при вводе и отладке схемы PCI в графическом редакторе. Что бы мне ее не рисовать впустую.

С каким траблом я столкнусь, и чем мне поможет xHDL?

Я догадываюсь, что может быть в xHDL проще реализуется поддержка больших проектов? Какие еще плюсы? ...

 

Наверное тема уже обсуждалась здесь много лет назад... Поиск у меня не работает :( - политика безопасности организации по доступу в и-нет.

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


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

Может быть поясните, на чем будет "затык" при вводе и отладке схемы PCI в графическом редакторе. Что бы мне ее не рисовать впустую.

 

Формата A0 может не хватить мелким шрифтом :) А на HDL сотня строк.

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


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

IMHO:

1) обеспечивается хоть какая-то переносимость исходных кодов между различными платформами (Xilinx, Altera, ...)

...

Подавляющее большинство ... так и писанных энтузиастами OpenCores, делается на xHDL.

Так что разбираться с xHDL все-равно придется.

 

А если не предполагается переносимость проекта? Например, в организации традиционно используют Альтеру... попытка применить Ксайлинкс будет сразу же пресечена :(

 

При использовании xHDL "мы держим в голове" схему устройства, описывая ее текстом, или же там иная философия?

 

Что такое OpenCores?

 

Извините, что вопросы совсем уж чайницкие :)

 

Формата A0 может не хватить мелким шрифтом :) А на HDL сотня строк.

 

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

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


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

Что такое OpenCores?

Место, где энтузиасты FPGA выкладывают в свободный доступ свое проекты.

список проектов смотрите здесь: http://www.opencores.org/browse.cgi/by_category

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


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

При использовании xHDL "мы держим в голове" схему устройства, описывая ее текстом, или же там иная философия?

 

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

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


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

1. А если не предполагается переносимость проекта? Например, в организации традиционно используют Альтеру... попытка применить Ксайлинкс будет сразу же пресечена :(

 

2. При использовании xHDL "мы держим в голове" схему устройства, описывая ее текстом, или же там иная философия?

 

3. Что такое OpenCores?

 

1. Но в будущем, может быть, Вы будете работать в другой организации :)....

 

2. Вы писали когда нибудь прграммы, т.е. Вы программист? xHDL приvерно тоже самое, что высокоуровневое программирование...

 

3. http://www.opencores.org

 

В любом случае, с любым из языков xHDL Вы сильно облегчите себе жизнь :) и будет намного проще устроиться на другую работу. Опыт никогда не бывает лишним!

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


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

IMHO:

1) обеспечивается хоть какая-то переносимость исходных кодов между различными платформами (Xilinx, Altera, ...)

...

Подавляющее большинство ... так и писанных энтузиастами OpenCores, делается на xHDL.

Так что разбираться с xHDL все-равно придется.

 

А если не предполагается переносимость проекта? Например, в организации традиционно используют Альтеру... попытка применить Ксайлинкс будет сразу же пресечена :(

 

При использовании xHDL "мы держим в голове" схему устройства, описывая ее текстом, или же там иная философия?

 

Что такое OpenCores?

 

Извините, что вопросы совсем уж чайницкие :)

 

Формата A0 может не хватить мелким шрифтом :) А на HDL сотня строк.

 

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

 

 

А если не предполагается переносимость проекта? Например, в организации традиционно используют Альтеру... попытка применить Ксайлинкс будет сразу же пресечена :(

 

А Вы собираетесь всю жизнь на одну организацию работать?

А вдруг Altera(Xilinx,Actel, ...) разорится?

 

А если серьезно то все солидные конторы при приеме на работу требуют знания Verilog/VHDL (лучше оба). А иногда еще и SystemC.

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


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

...

2. Вы писали когда нибудь прграммы, т.е. Вы программист? xHDL приvерно тоже самое, что высокоуровневое программирование...

...

 

Пишу проги на С/С++, сейчас вызвался позаниматься программируемой логикой.

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

Или я что-то не понимаю?

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


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

Пишу проги на С/С++, сейчас вызвался позаниматься программируемой логикой.

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

Или я что-то не понимаю?

 

Элементарный пример: Чтобы сделать сумматор схемотехнически, нужно описать его как "пачку" XOR'ов, AND'ов, ORов. Чтобы сделать сдвигатель M-разрядного числа на N нужно MxN мультиплексоров 2:1. А на HDL первый опишется как a=b+c; а второй - как a = b << c;

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


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

Элементарный пример: Чтобы сделать сумматор схемотехнически, нужно описать его как "пачку" XOR'ов, AND'ов, ORов. Чтобы сделать сдвигатель M-разрядного числа на N нужно MxN мультиплексоров 2:1. А на HDL первый опишется как a=b+c; а второй - как a = b << c;

 

Понял.

Однако, из приведенного Вами примера, я делаю вывод, что для успешной реализации проектов с использованием xHDL совсем не надо быть гуру в области цифровой схемотехники?

 

А компилятор, работая с HDL-исходником вообще пытается сгенерить цифровую схему, хотябы для репорта? Или же это не надо ни компилеру, ни HDL-программисту?

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


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

Элементарный пример: Чтобы сделать сумматор схемотехнически, нужно описать его как "пачку" XOR'ов, AND'ов, ORов. Чтобы сделать сдвигатель M-разрядного числа на N нужно MxN мультиплексоров 2:1. А на HDL первый опишется как a=b+c; а второй - как a = b << c;

 

Понял.

Однако, из приведенного Вами примера, я делаю вывод, что для успешной реализации проектов с использованием xHDL совсем не надо быть гуру в области цифровой схемотехники?

 

А компилятор, работая с HDL-исходником вообще пытается сгенерить цифровую схему, хотябы для репорта? Или же это не надо ни компилеру, ни HDL-программисту?

 

Цифровую схемотехнику по любому надо знать хорошо. Иначе ничего путного не выйдет. xHDL только лишь средство описания. Лучше сразу прочитать пару-тройку книг по Verilog/VHDL. Там найдутся ответы на большинство Ваших вопросов.

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


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

Понял.

Однако, из приведенного Вами примера, я делаю вывод, что для успешной реализации проектов с использованием xHDL совсем не надо быть гуру в области цифровой схемотехники?

 

А компилятор, работая с HDL-исходником вообще пытается сгенерить цифровую схему, хотябы для репорта? Или же это не надо ни компилеру, ни HDL-программисту?

 

В общем, с учетом сегодняшнего состояния дел с синтезаторами, не надо быть "гуру в области цифровой схемотехники". Но, с другой стороны, очень хорошо бы себе представлять, во что выльется та или иная конструкция языка. Где получатся защелки, где триггеры, где какая логика. Так что все таки знать цифровую схемотехнику надо, чтобы понимать, что где оптимальнее.

 

А схема обязательно генерируется, и именуется "нетлист". Где Ваше описание разложено на низкоуровевые примитивы той технологии, под которую синтезировали. Если FPGA - то LUT'ы, если ASIC - то примитивы из технологической библиотеки. И есть просмотрщики этого хозяйства в графическом виде. Однако если это что-то большое типа ядра процессора, то там черт ногу сломит.

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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