ПЦУСБ/Практическая работа 4 — различия между версиями
Материал из Wiki
< ПЦУСБ
ANA (обсуждение | вклад) м (→Группа заданий А (маршрут ASIC)) |
ANA (обсуждение | вклад) м |
||
| Строка 20: | Строка 20: | ||
#* Название портов out - '''D_O'''. | #* Название портов out - '''D_O'''. | ||
#* Типы портов - std_logic[_vector]. | #* Типы портов - std_logic[_vector]. | ||
| − | #* Внутренние сигналы называть так, чтобы было интуитивно понятно | + | #* Внутренние сигналы называть так, чтобы было интуитивно понятно их названия. |
#* Должна быть обеспечена возможность стыковки блоков кодирования и декодирования (по выводам) для совместной верификации (при выполнении работы в паре). | #* Должна быть обеспечена возможность стыковки блоков кодирования и декодирования (по выводам) для совместной верификации (при выполнении работы в паре). | ||
# Разработать тестовое окружение для запуска моделирования на языке VHDL. | # Разработать тестовое окружение для запуска моделирования на языке VHDL. | ||
| − | #* Использовать структуру тестбенча (ТБ), описанную в [ПЦУСБ/Лекция_6|лекции 6]. ТБ включает блок кодирования, блок декодирования (при работе в паре), блок model, блок TestCtrl. | + | #* Использовать структуру тестбенча (ТБ), описанную в [[ПЦУСБ/Лекция_6|лекции 6]]. ТБ включает блок кодирования, блок декодирования (при работе в паре), блок model, блок TestCtrl. |
#* Название entity - '''tb'''. | #* Название entity - '''tb'''. | ||
#* Название architecture - '''beh'''. | #* Название architecture - '''beh'''. | ||
| Строка 32: | Строка 32: | ||
#** библиотеку [[alib.syn]] логических элементов | #** библиотеку [[alib.syn]] логических элементов | ||
#** скрипт для проведения синтеза [[syn.tcl]] | #** скрипт для проведения синтеза [[syn.tcl]] | ||
| + | #* сохранить синтезированное (структурное) описание схемы | ||
#* Подготовить лог синтеза, в котором отображаются число элементов или площадь, и максимальное быстродействие схемы. | #* Подготовить лог синтеза, в котором отображаются число элементов или площадь, и максимальное быстродействие схемы. | ||
# Провести моделирование синтезированной схемы совместно с исходным описанием. | # Провести моделирование синтезированной схемы совместно с исходным описанием. | ||
| Строка 37: | Строка 38: | ||
#* Для моделирования синтезированной схемы использовать VHDL-описание библиотеки логических элементов [[alib.vhd]]. | #* Для моделирования синтезированной схемы использовать VHDL-описание библиотеки логических элементов [[alib.vhd]]. | ||
#* Привести отчет о покрытии кода (по всем видам). Покрытие исходного VHDL описания блоков кодирования/декодирования должно быть 100%. | #* Привести отчет о покрытии кода (по всем видам). Покрытие исходного VHDL описания блоков кодирования/декодирования должно быть 100%. | ||
| − | # Использовать структуру папок проекта, описанную в [ПЦУСБ/Лекция_6|лекции 6]. Компиляция и запуск моделирования (до и после синтеза) должны быть автоматизированы с помощью соответствующих TCL-скриптов и BAT файлов. | + | # Использовать структуру папок проекта, описанную в [[ПЦУСБ/Лекция_6|лекции 6]]. Компиляция и запуск моделирования (до и после синтеза) должны быть автоматизированы с помощью соответствующих TCL-скриптов и BAT файлов. |
== Группа заданий Б (маршрут FPGA) == | == Группа заданий Б (маршрут FPGA) == | ||
| − | [[Файл:S3BOARD-top-400.gif|frame| | + | [[Файл:S3BOARD-top-400.gif|frame|right|[http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,799&Prod=S3BOARD Spartan-3 Starter Kit] ]] |
| − | [[Файл:S3BOARD-block-400.gif|frame| | + | [[Файл:S3BOARD-block-400.gif|frame|right|[http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,799&Prod=S3BOARD Spartan-3 Starter Kit] ]] |
<!-- [[Файл:ML401 Virtex4 board view.jpg|thumb|center|800px|ML401 Virtex-4 board]]--> | <!-- [[Файл:ML401 Virtex4 board view.jpg|thumb|center|800px|ML401 Virtex-4 board]]--> | ||
| + | |||
| + | Общие требования к работе: | ||
| + | # Разработать ''синтезируемое'' VHDL-описание блока. | ||
| + | #* имена портов должны соответствовать именам ресурсов ПЛИС. | ||
| + | #* Типы портов - std_logic[_vector]. | ||
| + | #* Внутренние сигналы называть так, чтобы было интуитивно понятно их названия. | ||
| + | # Разработать тестовое окружение для запуска моделирования на языке VHDL. | ||
| + | #* Использовать структуру тестбенча (ТБ), описанную в [[ПЦУСБ/Лекция_6|лекции 6]]. ТБ включает блок кодирования, блок декодирования (при работе в паре), блок model, блок TestCtrl. | ||
| + | #* Название entity - '''tb'''. | ||
| + | #* Название architecture - '''beh'''. | ||
| + | #* Входные тесты (входные данные) должны читаться из файла, а выходные данные должны записываться в файл. | ||
| + | #** Функции чтения/записи из файла могут быть описаны по примеру из книги {{книга| автор = Бибило П.Н.| название = VHDL. Эффективное использование при проектировании цифровых систем| место = М.| издательство = СОЛОН-ПРЕСС| allpages = 344| isbn = 5-98003-293-2| год = 2006}}. | ||
| + | # Синтезировать полученную схему в [[ISE]] для ПЛИС Spartan-3 (xc3s1000-4ft256). | ||
| + | #* Подготовить лог синтеза, в котором отображаются число элементов или площадь, и максимальное быстродействие схемы. | ||
| + | #* сохранить синтезированное (структурное) описание схемы | ||
| + | # Провести моделирование синтезированной схемы совместно с исходным описанием. | ||
| + | #* Модифицировать ТБ так, чтобы провести моделирование блоков по исходным и синтезированным моделям одновременно. Сравнить эквивалентность функционирования двух VHDL-описаний блоков. | ||
| + | #* Для моделирования синтезированной схемы использовать VHDL-описание библиотеки логических элементов ПЛИС Spartan-3. | ||
| + | #* Привести отчет о покрытии кода (по всем видам). Покрытие исходного VHDL описания блоков кодирования/декодирования должно быть 100%. | ||
| + | # Использовать структуру папок проекта, описанную в [[ПЦУСБ/Лекция_6|лекции 6]]. Компиляция и запуск моделирования (до и после синтеза) должны быть автоматизированы с помощью соответствующих TCL-скриптов и BAT файлов. | ||
| + | |||
| + | |||
| + | === Варианты заданий === | ||
Версия 14:14, 26 ноября 2013
Лекции ПЦУСБ
Лекции
Практические
- Практическая работа 1
- Практическая работа 2
- Практическая работа 3
- Практическая работа 4
Тесты
Лабораторные
Доп. материалы
Группа заданий А (маршрут ASIC)
Варианты заданий приведены на данной странице.
При выполнении заданий следует учитывать следующие общие требования:
- Разработать синтезируемое VHDL-описание блока.
- Название entity - coder, decoder.
- Название architecture - beh.
- Название портов in - D_I, clk, rst.
- Название портов out - D_O.
- Типы портов - std_logic[_vector].
- Внутренние сигналы называть так, чтобы было интуитивно понятно их названия.
- Должна быть обеспечена возможность стыковки блоков кодирования и декодирования (по выводам) для совместной верификации (при выполнении работы в паре).
- Разработать тестовое окружение для запуска моделирования на языке VHDL.
- Использовать структуру тестбенча (ТБ), описанную в лекции 6. ТБ включает блок кодирования, блок декодирования (при работе в паре), блок model, блок TestCtrl.
- Название entity - tb.
- Название architecture - beh.
- Входные тесты (входные данные) должны читаться из файла, а выходные данные должны записываться в файл.
- Функции чтения/записи из файла могут быть описаны по примеру из книги Бибило П.Н. VHDL. Эффективное использование при проектировании цифровых систем — М.: СОЛОН-ПРЕСС, 2006. — 344 p. — ISBN 5-98003-293-2..
- Синтезировать полученную схему в LeonardoSpectrum.
- Провести моделирование синтезированной схемы совместно с исходным описанием.
- Модифицировать ТБ так, чтобы провести моделирование блоков кодирования/декодирования по исходным и синтезированным моделям одновременно. Сравнить эквивалентность функционирования двух VHDL-описаний блоков.
- Для моделирования синтезированной схемы использовать VHDL-описание библиотеки логических элементов alib.vhd.
- Привести отчет о покрытии кода (по всем видам). Покрытие исходного VHDL описания блоков кодирования/декодирования должно быть 100%.
- Использовать структуру папок проекта, описанную в лекции 6. Компиляция и запуск моделирования (до и после синтеза) должны быть автоматизированы с помощью соответствующих TCL-скриптов и BAT файлов.
Группа заданий Б (маршрут FPGA)
Общие требования к работе:
- Разработать синтезируемое VHDL-описание блока.
- имена портов должны соответствовать именам ресурсов ПЛИС.
- Типы портов - std_logic[_vector].
- Внутренние сигналы называть так, чтобы было интуитивно понятно их названия.
- Разработать тестовое окружение для запуска моделирования на языке VHDL.
- Использовать структуру тестбенча (ТБ), описанную в лекции 6. ТБ включает блок кодирования, блок декодирования (при работе в паре), блок model, блок TestCtrl.
- Название entity - tb.
- Название architecture - beh.
- Входные тесты (входные данные) должны читаться из файла, а выходные данные должны записываться в файл.
- Функции чтения/записи из файла могут быть описаны по примеру из книги Бибило П.Н. VHDL. Эффективное использование при проектировании цифровых систем — М.: СОЛОН-ПРЕСС, 2006. — 344 p. — ISBN 5-98003-293-2..
- Синтезировать полученную схему в ISE для ПЛИС Spartan-3 (xc3s1000-4ft256).
- Подготовить лог синтеза, в котором отображаются число элементов или площадь, и максимальное быстродействие схемы.
- сохранить синтезированное (структурное) описание схемы
- Провести моделирование синтезированной схемы совместно с исходным описанием.
- Модифицировать ТБ так, чтобы провести моделирование блоков по исходным и синтезированным моделям одновременно. Сравнить эквивалентность функционирования двух VHDL-описаний блоков.
- Для моделирования синтезированной схемы использовать VHDL-описание библиотеки логических элементов ПЛИС Spartan-3.
- Привести отчет о покрытии кода (по всем видам). Покрытие исходного VHDL описания блоков кодирования/декодирования должно быть 100%.
- Использовать структуру папок проекта, описанную в лекции 6. Компиляция и запуск моделирования (до и после синтеза) должны быть автоматизированы с помощью соответствующих TCL-скриптов и BAT файлов.

