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

Низкоуровневое описание на VHDL.

Здравствуйте.

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

Но возможно ли задать на VHDL программу-модель для низкоуровнего синтеза?

Если да, то каким способом задать такую низкоуровневую программу-модель для синтеза?(путём подробного описания устройства и отношений мелких блоковдруг к другу или т.п.?)

 

С Уважением, Андрей.

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


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

1. VHDL - это многовункциональный язык, котрорый может обеспечить все стадии, от bechavorial до rtl, включая gtl.

2. Руками, ищи HCSA_ALU\alu_opencore.vhd.

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


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

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

Но возможно ли задать на VHDL программу-модель для низкоуровнего синтеза?

 

Запросто, собс-нно, существуют две парадигмы задействования VHDL (ой, не пинайте сильно, если у вас есть третья! :) ) - т.н. "поведенческая" и "структурная".

 

В первой вы пишете, какого поведения собственно хотите, например,

Z <= X * Y;

 

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

при желании т.н. Back-Annotation model. То есть результат синтеза и всего прочего в виде тех самых базовых ячеек, как оно и будет в кристалле.

 

Вообще, хороший пример структурного описалова можете найти в исходниках PicoBlaze и прочих прибамбасов от Кена Чапмэна, если вы, конечно, дружите с Xilinx.

 

Также по поводу низкоуровневых моделей рекомендую ознакомиться с материалами по ключевому слову Vital.

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


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

Есть и третья - dataflow (поток данных). Пинать не будем :) .

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


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

Смысл работы синтезатора (в моем понятии) в переводе высокоуровневой структуре в низкоуровневой согласно заложенным правилам и архитектурам имеющихся моделей оптимальными в данный момент (например умножитель). выходной файл синтезатора состоит из простейших вентилей И-НЕ ИЛИ-НЕ и тому подобное привязанных к определенной библиотеки с которой работают

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


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

выходной файл синтезатора состоит из простейших вентилей И-НЕ ИЛИ-НЕ и тому подобное привязанных к определенной библиотеки с которой работают

 

А вот это уже MAP делает (в ISE ксиля).

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


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

выходной файл синтезатора состоит из простейших вентилей И-НЕ ИЛИ-НЕ и тому подобное привязанных к определенной библиотеки с которой работают

 

Чуть поправлю, там уже упакованные ЛЭ.

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


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

Чуть поправлю, там уже упакованные ЛЭ.

 

а если синтез выполняется для физического устройства в котором нет упакованных ЛЭ? что-то типа custom или cell-based ASIC-a

 

хотя упакованный ЛЭ очень универсальное понятие :)

 

с методологической :) точки зрения работу синтезатора можно разбить на два этапа

1) синтез логики (собственно говоря синтез), при этом выходной нетлист получается в элементах библиотеки синтезатора (так называемый технолоджи индепендент) наприме RTL-view в synplify

2) смапированный для соответствующего кристалла (technology view)

 

ну и в любом случае - если выход одного синтезатора подать на вход другого - то тот изменит нетлист

то есть нетлист не является тем "низкоуровневым" описанием, о котором (как я понял) спрашивал автор темы

 

а про возможности низкоуровневого ввода в VHDL

нужно смотреть всяческие attribute, которые используются для того, чтобы запретить или явно указать синтезатору что нужно сделать

соответственно - так как речь идет об низкоуровневом вводе, то эти атрибуты разные для разных кристаллов

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


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

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

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

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

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

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

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

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

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

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