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

xHDL. Хрестоматия для начинающих :)

2moderators

 

В виду того, что много людей часто задают вопросы по синтаксису и семантике VHDL, предлагаю повесить в шапке, как это сделано в соседнем разделе, ссылку на хороший источник по этому вопросу. Предлагаю материал, который я думаю можно назавать христоматийным, так как он содержит наиболее полную информацию о VHDL для новичка. Я даже видел книжку по этим материалам сделали, советую начинающим купить, у нас в Днепре стоит всего 10 гривен (не больше 2-х у.е.).

 

Вот собственно сама ссылка: http://www.kvantn.com.ua/resourse/All/VHDL/VHDL_context.html.

 

Так же напишите плз ссылки на хорошие источники по другим HDL, которые бы подошли для начинающих.

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


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

Так дайте тут ссылки на PDF :) Пусть люди читают

 

Вот кстати интересная ссылка на Verilog HDL: http://www.asic-world.com/verilog/veritut.html

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


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

Добавлю в копилку :)

 

http://esd.cs.ucr.edu/labs/tutorial/ - VHDL Tutorial: Learn by Example by Weijun Zhang

 

http://members.aol.com/SGalaxyPub/useful_links_vhdl.htm -Набор ссылок на разные ресурсы

 

и для развлечения :)

http://www.fpga4fun.com/index.html -Looking for an FPGA tutorial, project or board?

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


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

Довольно неплохое описание. Кратко и с примерами.

Читать здесь - http://mikro.e-technik.uni-ulm.de/vhdl/anl...vhdl-all-e.html

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


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

Краткий тьюториал по синтаксису Verilog.

 

http://www.eg.bucknell.edu/~cs320/1995-fal...log-manual.html

 

Html и pdf версии.

Изменено пользователем maior

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


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

страно что никто не добавил первоисточник http://www.vhdl.org/

и ещё

VHDL - обучающий портал

там же ссылки

http://www.bsuir.unibel.by/vhdl/index.php?section=links

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


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

Вот еще интересные вещи:

 

ASICs... the website

http://www-ee.eng.hawaii.edu/~msmith/ASICs/HTML/ASICs.htm

 

Соответственно по Verilog:

IEEE Verilog HDL Language Reference Manual Project

http://www-ee.eng.hawaii.edu/~msmith/ASICs...log/Verilog.htm

 

Опять же известная ссылка (каталог на доки и free tools):

http://www.verilog.net/docs.html

 

VHDL Tutorial:

http://www.vhdl-online.de/

 

Книжечка интерактивная "RTL VHDL Application On Synthesis":

http://www.exsultation.com/index.php?s=38

 

Опять же много где встречал, но повторюсь:

http://www.aldec.com/products/tutorials/

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


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

Очень приятный справочник здесь:

 

http://www.hardi.com/haps/literature/VHDL-Handbook.pdf

 

Все красиво и понятно нарисовано, но есть ошибка, о чем я им сообщил, ответа пока не получил

 

> a mistake on page 54 is says:

>

> S’DELAYED[(T)]

> Creates a copy of the signal S delayed the time T. T may

> be omitted and its default value is 0 ns, i.e. exactly S.

>

> But, in fact if it's 0 ns or omitted, then it's 1 delta delay, not

> "exactly S".

> and next line says S' should be S'EVENT

 

Тем не менее книжечка - ОТЛИЧНАЯ - я бы ее в бумажном виде купил не задумываясь. Призываю людей понимающих посмотреть нет-ли там еще ошибок и могу организовать ее печать в Москве. Всем нашедшим ошибки вышлю по 3 копии :-) Реально - я более полезного справочника не встречал пока.

Изменено пользователем vleo

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


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

Призываю людей понимающих посмотреть нет-ли там еще ошибок и могу организовать ее печать в Москве. Всем нашедшим ошибки вышлю по 3 копии :-) Реально - я более полезного справочника не встречал пока.

 

Ну например. IEEE 1076-2002 содержит следующую фразу "The base type of the subtype indication of a shared variable declaration must be a protected type." В этой книжечке же на станице 17 приводится пример определения shared variable типа integer. Integer очевидно не есть protected type. Многие тулзы воспринимают упомянутое такое нестандартное расширение, но оно все же нестандартно, по крайней мере, в последней версии стандарта, и наверняка когда-нибудь окажется с чем-нибудь несовметимым.

 

P.S. В действительности, VHDL-93, очевидно, позволял создавать shared variables произвольного типа. В VHDL-2000 появились protected types, и для shared variables было добавлено требование, что они должны быть только protected типа. Так как этот справочник описывает только VHDL'93, могут быть и другие несовместимости с более новыми версиями VHDL.

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


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

Я сам, как начинающий изучать VHDL, порекомендовал бы следующую книжк: Суворова Е.А. Шейнин Ю.Е. Проектирование цифровых систем на VHDL. Во-первых, она на русском языке (ведь не каждый хорошо владеет английским языком, в том числе и я). Во-вторых, там освещенно довольно таки много вопросов и ее можно использовать как своеобразное пособие для знакомства с VHDL. Есть конечно и недостатки: книжка довольно таки сложная для начинающего с вообще с нуля, т.е. надо читать ее очень внимательно, но все же лучше других подобных книг. Весит она около 7 Мб в формате djvu. Вот ссылка на эту книгу: Суворова Е.А. Шейнин Ю.Е. Проектирование цифровых систем на VHDL

 

P.S. Рекомендую начинать со 2 главы, а то от 1-ой может все желание отбить=))

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


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

Выложите пожалуйста

пдфник IEEE Verilog HDL Language Reference Manual Project

и IEEE Standard VHDL Language Reference Manual

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

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


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

Выложите пожалуйста

пдфник IEEE Verilog HDL Language Reference Manual Project

и IEEE Standard VHDL Language Reference Manual

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

 

 

Прикреплено книга IEEE Standard VHDL Language Reference Manual (IEEE Std 1076, 2000 Edition), не знаю вам нужно книга 2000 года.

VHDLref.pdf

 

Еще вы можете скачать книгу по английскому языку "IEEE_Press_RTL_Hardware_Design_Using_VHDL" отсюда

http://rapidshare.com/files/12118535/IEEE_..._Using_VHDL.zip

 

Пароль зипа : ebookspyder.net

 

Удачи!

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


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

Начинаю потихоньку изучать ПЛИС и, конечно, возникает вопрос литературы. В данной ветке было упомянуто огромное количество различных книг и ссылок, за что всем огромное спасибо!!! Но, ксожалению, чем больше литературы, тем дольше ее придется изучать, а "творить" хочется начать поскорее :) Поэтому для таких же страждущих привожу свои мнения о просмотренных книгах.

 

1) Выбрал пару книг из рекомендованных в данной ветке и мужественно их читал. Ими оказались книги Полякова (языки VHDL и Verilog 2003г) и Суворовой/Шейнина (Проектирование цифровых систем на VHDL, 2003г): не вштырили совершенно. Мое мнение - они не для новичка. Поляков хорош как справочник, Суворова тяжело написана, но самый главный минус ИМХО: они грузят читателя ПОЛНЫМ языком сразу. Читаешь, читаешь, а потом в середине книги оказывается, что все что тут было написано применимо только к моделированию и синтезировать это НИЗЯ!!! Покажите мне новичка, который сразу сядет моделировать что-то?! Да, тестбенчи это очень хорошо и правильно, но это далеко не низшая ступень эволюции плисовода! Ведь начинающему хочется светодиодиком поморгать на ножке, а какой пример ни возьми - не синтезируется... А дочитав до серидины понимаешь, что надо все прочитанное забыть, и на своих ошибках научиться пользоваться малым подмножеством конструкций языка, которые можно синтезировать.

Пытаясь это осознать, натыкался на кучу граблей, которые как раз в книгах и не описаны или упоминаются вскользь, например, управление сигналом по обоим фронтам клока, или последствия неполного оператора case... Книга ведь, в первую очередь, описывает ЯЗЫК, а язык такое вытворить позволяет.

Мой вывод: упомянутые книги описывают "иструмент", но дают очень мало информации о том, как этим "инструментом" правильно пользоваться. Типичные справочники.

 

2) Воспользовавшись рекомендацией, прочитал Уейкерли: проектирование цифровых устройств. На одном дыхании... Вот эта книга вправила мозги капитально. Многое понял из внутреннего мира ПЛИС. Рекомендую всем. Если кому нужно, есть русская в djvu - могу выложить куда-нть если понадобится. Пришло понимание о том, как устроена ПЛИС, чего она не может, и как следствие, к чему надо стремиться при разработке модулей.

 

Но для меня осталась незкрытая брешь в осознании проектирования: Я знаю (или думаю, что знаю :rolleyes:) как это должно выглядеть в RTL. Я знаю синтаксис языка VHDL. Но я не знаю, какие конструкции языка во что синтезируются, да и синтезируются ли вообще, что можно выносить в разные процессы, а что делать только в одном, когда можно делать асинхронное изменение сигналов, чтобы компилятор не ругался на "коллизии" и т.п. Конечно, можно взять кучу примеров и изучить что во что синтезировалось, но такой подход не нравится, т.к. хочется узнать не только то, как нужно делать, но и то почему нельзя (или иногда можно) делать по-другому.

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

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


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

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

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

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

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

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

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

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

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

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