Мы поможем в написании ваших работ!
ЗНАЕТЕ ЛИ ВЫ?
|
Типичная последовательность действий пользователя в сапр плис XIlinx ISE при проектировании на плис типа FPGA
Действия пользователя
| Примечания
| | 1. Запуск управляющей оболочки ISE─ Навигатора проекта
| --- Дважды щелкнуть левой кнопкой мыши на пиктограмме XILINX ISE.
или
--- После нажатия кнопки Start последовательно выбрать Programs => XILINX ISE => Project Navigator.
Откроется окно Навигатора проекта
| Откроется окно Навигатора проекта, состоящее из следующих окон:
1) каталоги и исходные модули (Sources in Project);
2) процессы (Processes for Source) ─
3) консоль (Transcript Console) ─ это окно расположено внизу экрана;
4) тексты, отчеты САПР ─ это окно расположено справа на экране.
| | | | | Продолжение табл. А.2
Действия пользователя Примечания
| Примечания
| | 2. Этап создания нового проекта─Design entry
|
| Задать режим- Simulation
Выбрать в основном меню Навигатора проектаFile => New Project.
Задание параметров проекта:
Задать:
1) имя проекта;
2) его расположение в каталогах;
3) тип описания модуля высшего уровня иерархии в проекте - HDL.
Нажать Next.
Задать параметры ПЛИС проекта:
1) Family – FPGA SPARTAN 3;
2) Device – XC 3S200;
3) Package – FT256;
4) Speed – -4.
Проверить и задать параметры настройки САПР:
1) Top-Level Source Type – HDL;
2) Synthesis Tool – XST (VHDL/VERILOG);
3) Simulator – ISim;
4) Preferred Language - VHDL.
Нажать Next.
Нажать Finish.
Создание текстового описания модуля проекта на языке VHDL:
В меню Навигатора проекта выбрать
Project => New Sourсe => VHDL Module.
Задать имя файла.
Не меняя каталога и проверив, что опция Add включена, нажать Next.
Далее задание интерфейса модуля проекта:
Нажать Next или заполнить таблицу портов.
Нажать Finish.
Ввести текст в заготовку описания архитектуры модуля проекта.
Сохранить файл, выбрав в основном меню
Навигатора проектаFile => Save.
Провести проверку синтаксиса HDL-модуля
Если в навигаторе был установлен режим simulation,то выделите VHDL файл и щелкните в окне процессов check syntax
| В именах проекта и всех директорий не должно быть знаков пробела. Русский алфавит использовать нельзя.
Под проектомсистемы в САПР XILINX ISE понимается совокупность модулей (файлов), которые содержат информацию, необходимую для выполнения разработки данной системы на базе ПЛИС фирмы XILINX.
В примере проект реализуется на отладочной плате, в составе которой имеется ПЛИС Spartan-3 XC3S200-FT256 эквивалентной логической емкостью 200 000 вентилей.
Помимо текстовой формы –на VHDL модуль высшего уровня можно описать графически ─ в схемном редактореи др. способами.
Система дает сводную таблицу параметров проекта (summary report)для контроля правильности ввода параметров проекта.
Если все данные указаны корректно => Finish.
Под модулем проекта понимается независимо компилируемый фрагмент его описания, например, модуль описания схемы, модуль описания теста и т. п.
Next ─ если будем задавать порты в текстовом редакторе, а не с помощью мастера ввода HDL-описаний интерфейса модуля проекта..
Текст описания архитектуры можно ввести с помощью клавиатуры или шаблонов встроенного HDL-редактора.
View:Simulation → Isim Simulator → Behavioral Check Syntax
|
| | | | | | Продолжение табл. А.2
Действия пользователя Примечания
| 3. Этап функциональной верификации проекта─ Вehavioral simulation
Создание тестирующей программы (Test Bench)
| В меню Навигатора проекта выбрать Project => New Source=> VHDL Test Bench.
Задать имя файла тестирования.
Не меняя каталога, проверив, что опция Add включена, нажать Next.
Выбрать модуль проекта, для которого создается тест.
Нажать Next. Нажать Finish.
Ввести Ваш собственный текст HDL-опи-сания теста в заготовку тестовой программы после слов Insert stimulus here.
Сохранить файл, выбрав в основном меню Навигатора проектаFile => Save.
Закрыть окно редактора File => Close.
Выбрать в окнеSources =>Behavioral Simulation, => выбрать тестовый файл (созданный Test Bench).
Щелкнуть левой кнопкой на знаке «+» в строке ISIM(или ModelSim Simulator) в окне процессов Навигатора проекта.
Щелкнуть ПРАВОЙкнопкой мыши на Simulate Behavioral Model.
Пункт задания параметров моделирования необязателен- Properties. Нажать ОК.
Запуск функционального моделирования:
Дважды щелкните на Simulate Behavioral Model в окне процессов Навигатора проекта.
Исправление ошибок в HDL-файлах:
1) выбрать в меню ISIM(ModelSim) File=> Open => исходный файл ;
2) исправить в тексте нужную строку;
3) сохранить файл, выбрав File=>Save;
4) выбрать в меню ISIM(ModelSim) Compile;
5) в появившемся списке выбрать нужный файл;
6) если все верно, закрыть окно, иначе ─ повторить исправления.
| Иллюстрируется первый способ автома-тического создания заготовки описания тестирующей программы ─ Test Bench. Также возможен более развитый способ (см. [1]) создания тестирующей программы, инициируемый выбором в меню пункта Test BenchWaveform.
Если все данные в сводке указаны корректно => Finish
В текстовом формате тест вводится с помощью клавиатуры в синтаксическом редакторе, выделяющем цветом ключевые слова HDL.
В состав бесплатной версии САПР входит XILINX ISE Simulator- ISIM .
Задание параметров моделирования: нужно только при нестандартных параметрах-обычно это время моделирования Run timeи его точность Resolution.
ОК, если убедитесь, чтопо умолчанию заданы нужные параметры.
Откроется основное окно ISIM (ModelSim),обычно включающее три окна (панели).
Слева ─ Окно браузера рабочего пространства (workspace), где видны файлы модели.
Внизу ─ Окно консоли (transcript), где видны сообщения системы модели-рования и текстовые сообщения модели.
Справа ─ окно текстового редактора или временные диаграммы.
Расположение и состав окон можно менять через пункт основного окна view
(см. приложение Б или литературу в приложении В[11-13]).
| Продолжение табл. А.2
После завершения моделирования выбрать Simulate => End Simulation и закрыть основное окно программы ISIM(ModelSim)
| Если время моделирования недостаточно и надо например еще 1000 нс, наберите на консоли команду
RUN 1000 ns и нажмите клавишу enter
|
| 4. Этап Логического синтеза─ Synthesize
|
| Установить режим→I mplementation, → выбрать исходный файл, содержащий описание проектируемого обьекта.(при правильной работе системы появляется описание обьекта, а не его теста!)
Начинаем с синтеза
Измение опций синтезатора XST (необязательный пункт):
В окне процессов щелкнуть ПРАВОЙ кнопкой мыши на Synthesize – XST и затем выбрать Properties.
Запуск синтезатора XST:
Дважды щелкнуть левой кнопкой мыши на Synthesize – XST в окне процессов Навигатора проекта.
Просмотра отчета синтезатора Log File:
Выбрать Design Summary/Reports → Detailed Reports → Synthesis Report.
В отчете будут показаны задействованные параметры синтезатора,отчет о выполнении этапов синтеза. Ресурсные и временные характеристики полученной схемы
Кроме того можно видеть функциональную и принципиальную схемы проекта
Synthesize-> view RTL Schematics
Synthesize->view Technological schematics
| Не забудьте, что нельзя синтезировать файл теста!
В окне процессов появляется список synthesis,implement и т.д.
Опциями можно изменить глубину оптимизации схемы проекта или способ кодирования состояний автомата и т.п.
В процессе работы синтезатора на консоли появляются его сообщения.
Красный цвет ─ сообщение об ошибках.
Если синтез не проходит, отключите в свойствах подсистемы ISE опцию Incremental Сompilation
В отчете обратите внимание на временные и ресурсные параметры полученной схемы, например сколько в ней LUT и какие задержки выходов. Для проекта Д-триггера имеем затраты ресурсов ПЛИС
Selected Device: 3s200ft256-5
Number of Slices: 0 out of 1920 0%
Number of IOs: 4
Number of bonded IOBs: 4 out of 173 2%
IOB Flip Flops: 2
И такие временные характеристики,как
Min input arrival time before clock: 2.352ns
Max output req time after clock: 6.216ns
|
| 5. Этап конструкторского проектирования─размещение и трассировка
Implementation
|
| Предварительно надо задать пользовательские ограничения(user constraints).
Для задания соответствия номеров контактов микросхемы ПЛИС именам спортов проекта в окне процессов найдите пункт user constraints и там строку I/O pin planning.
Способ 1- Создание файла конструкторских ограничений с помощью программы Plan Ahead:Для этого просто два раза щелкнуть мышкой на этой строке.Через некоторое время появится окно программы Plan Ahead:.
Второй способ вызова Plan Ahead:
Выбрать в меню Tools → PlanAhead → I/O Pin Planning (PlanAhead) — Post-Synthesis
| Временные и топологические ограничения записываются в файл UCF (User Constraints File).
Пример файла dtrig.ucf для проекта Д-триггера с двумя выходами
NET "C" LOC = T9;
NET "D" LOC = F12;
NET "Q" LOC = P14;
NET "NQ" LOC = K12;
Если все данные указаны корректно нажмите Finish
|
|
В окне I/O Ports щелкнуть на знаке «+» у Scalar ports, либо у названия Вашего сигнала, если он векторный.
Выделить необходимый порт проекта, щелкнув по нему левой кнопкой мыши.
В окне I/O Port Propeties в поле Site вписать выбранный вами контакт ПЛИС и затем нажать кнопку Apply.
Аналогично установить перечень соответствия всех портов проекта контактам ПЛИС
Способ 2-
В основном меню Навигатора проекта выбрать Project => New Source =>Implementation Constraints File.
Задать имя файла, оставив директорию по умолчанию.
Нажать Next.
Нажать Finish.Появится окно в котором задацте соответствие.
Способ 3.
Создание файла конструкторских ограничений вручную в редакторе wordpad как текстового файла:
Образец текста см.в примере в правой колонке NET "C" LOC = T9;и т.д.
Временные ограничения
Кроме конструкторских ограничений для расчета мощности следует задать временные ограничения(timing constraints).
user constraints-> create timing constraints -> Установить требуемый период и скважность тактового сигнала,
Сохранить файл
Измение параметров реализации проекта(необязательный пункт):
Щелкнуть ПРАВОЙ кнопкой мыши на Implement Design в окне процессов Навигатора проекта и затем выбрать Properties.
Реализация проекта в ПЛИС (Implementation )
В меню View =>Implementation, => выбрать исходный файл проекта.
Дважды щелкнуть левой кнопкой мыши на Implement Design в окне процессов Навигатора проекта.
Оценка результатов реализации:
Щелкнуть левой кнопкой мыши на знаке «+» у Implement Design.
Оценить результаты по полученным отчетам:
1) синтеза и трансляции Translate report;
2) покрытия логическим базисом Map;
3) трассировки Place and Route.
4) Мощности detailed report->Power report
Установив в навигаторе режим моделированичя выбрать посттрассировочное моделирование Post Route Simulation, выбрать тестовый файл (созданный ранее Test Bench). Не забудьте закрыть окно ранее проведенного поведенческого моделирования
|
Назначение контактов ПЛИС.
Из описания отладочной платы следует, что, например, переключатель SW0 связан с контактом F12 ПЛИС; индикатор Ld0 связан с контактом K12 ПЛИС; тактовый генератор связан с контактом T9 ПЛИС.
Соответствующие контакты можно связывать с сигналами вашего проекта схемы.
Например, заполненная пользователем таблица файла ограничений для проекта D-триггера c одним выходом может выглядеть так:
Имя сигнала
(Name)
| Контакт
ПЛИС
(Loc)
| Пояснения
| d
| F12
| кнопка
| q
| K12
| светодиод
| clk
| T9
| Тактовый генератор
|
Напоминаем еще раз соответствие узлов отладочной платы и контактов микросхемы
Узел
платы
| Контакт
ПЛИС
| Пояснения
| SW0
| F12
| кнопка
| LD0
| K12
| светодиод
| CLK
| T9
| генератор
|
Пример файла dtrig.ucf для триггера с двумя выходами
NET "C" LOC = T9;
NET "D" LOC = F12;
NET "Q" LOC = P14;
NET "NQ" LOC = K12;
Из примера видно, что такой файл просто можно создать или править текстовым редактором wordpad
Временные задержки можно посмотреть в файле Text-based Post Place Timing Report
Например для проекта Д-триггера
-при периоде такта 10 ns
On-Chip Power Summary
Static Power | 40.99 mw
Total | 42.82 mw
| | | | | Продолжение табл. А.2
Задать если надо другие параметры временного моделирования Обычно это:
1) время моделирования;
2) точность воспроизведения времени.
Нажать ОК.
Дважды щелкнуть на процессе Simulate Post-Place&Route Model.
Проверьте правильность временных диаграмм и сообщений на консоли.
После завершения моделирования выбрать Simulate => End Simulation и закрыть основное окно программы ISIM(ModelSim)
| Например 1000 ns
Например 1 ns
Если все данные указаны корректно .
Запустить процесс моделирования
Появится временная диаграмма
Проверьте, не нарушены ли временные соотношения в модели, нет ли отрезков диаграммы, помеченных красным цветом
| 7. Этап создания файла программирования ПЛИС
Программирование (конфигурирование) ПЛИС через кабель JTAG из ПЭВМ─ Configuration
| Создание файла настройки (конфигурирования) ПЛИС:
Выбрать в панели View => Implementation,выбрать файл верхнего уровня.
Щелкнуть ПРАВОЙ кнопкой мыши на Generate Programming File в окне процессов Навигатора проекта.
Выбрать Properties.
Открыть страницу Configuration Options.
Изменить состояние незадействованных контактов микросхемы Unused IOB Pins на Float.
Открыть страницу Startup Options.
Установить FPGA Start up Clock в JTAG Clock. (Если тактовый сигнал не используется ─ по умолчанию CCLK.)
Нажать клавишу ОК.
Дважды щелкнуть левой кнопкой мыши на Generate Programming File в окне процессов Навигатора проекта.
|
Чтобы тактовый сигнал ПЛИС при ее загрузке подавался через кабель JTAG.
Проверить все остальные установки.
OK, если все данные указаны корректно.
| Подготовка отладочной платы к программированию ПЛИС:
Подсоединить кабель загрузки JTAG к параллельному порту ПЭВМ.(Внимание!!!)
Соединить кабель загрузки JTAG с разъемом отладочной платы.
Соединить кабель источника питания с разъемом отладочной платы.
Включить блок источника питания в сеть.
Убедиться по состоянию индикаторов платы, что питание подано.
ВАРИАНТ 1-Установив в панели View => Implementation,,выбрать исходный файл проекта.Дважды щелкнуть левой кнопкой мыши на Configure Target Device.
В открывшейся диалоговой панели мастера настройки выбрать Finish.
ВАРИАНТ 2 Программирование (загрузка, конфигури-рование) ПЛИС. С явной настройкой программы iMPACT
Программа iMPACT выполняет процедуру обнаружения загрузочного кабеля.
Далее выполняется автоматический поиск и инициализация цепочки периферийного сканирования Boundary Scan ПЛИС, подключенной к JTAG-порту.
В открывшемся окне выбрать файл, содержащий конфигурационные данные ─ файл с расширением bit, нажать Open.
В следующем окне выбрать Bypass.
Щелкнуть ПРАВОЙ кнопкой мыши на изображении xc3s200 и выбрать Program.Нажать OKдляProgram the device.
Состояние процесса конфигурирования ПЛИС отображается в окне индикации.Завершение процесса сопровождается информацией в окне программы iMPACT.
Закрыть iMPACT без сохранения.
|
!!! Обратить внимание на ориентацию разъема питания!!! TMS присоединить к TMS и т.д.
После включения питания плата обычно самотестируется ─ на семисегментных индикаторах платы бежит надпись Spartan-3. Если не так-то горят все светодиоды краснам и питания-зеленым цветом
Если при инициализации были оставлены значения по умолчанию, то откроется окно мастера настройки этих параметров в интерактивном режиме.
-----------------------------------
Если автоматический поиск не произошел то нажимаем Boundary Scan
В этом варианте появляется надпись:Right click/-щелкаем мышкой правой /выбираем
Initialize chain/ появляется два квадрата(первый зеленый)-находим в своем каталоге проекта файл программирования.bit./выделяем его/ открываем его/выделим зеленым второй квадрат/bypass/потом на кнопки apply и okay/переводим курсор на 1 квадрат(он становится зеленым)/program/начинает заполняться окно загрузки/Successful- все нормально загрузилось
Цепочка периферийного сканирования JTAG представляет собой последовательное соединение всех выводов микросхемы ПЛИС и используется как при программировании микросхемы, так и при контроле ее работы
| | | | Продолжение табл. А.2Окончание табл. А.2
8. Этап проверки работоспособности проекта на плате
| После программирования ПЛИС можно, подавая на ее входы тест (манипулируя переключателями на отладочной плате), проверить соответствие полученной на индикаторах информации ожидаемой.
| Более полная проверка требует либо использования вспомогательного оборудования, либо встраивания в ПЛИС средств наблюдения с помощью подсистемы CHIPSCOPE
| Некоторые типичные действия пользователя САПР
| Раскрыть иерархию процессов
| Щелкнуть левой кнопкой мыши на знаке «+» перед именем процесса.
| Редактирование файла (edit)
| Дважды щелкнуть левой кнопкой мыши на имени файла.
| Изменение свойств процесса (properties)
| Щелкнуть ПРАВОЙ кнопкой мыши на имени процесса и продолжить диалог
| Изменение группы доступных процессов и исходников в меню Sources
| Переместить мышкой бегунок вверху группы исходников. Например, перейти от behavior Simulation. к implementation
| Исправление ошибок в тексте HDL-описания
| Щелкнуть ПРАВОЙ кнопкой мыши на тексте сообщения об ошибке(текст на консоли). Выбрать Goto source. Появится исходный текст описания модуля проекта в окне текстового редактора.
В окне текстового редактора, щелкнуть левой кнопкой мыши на тексте ошибки.
Выбрать в меню Goto solution record.
Получить доступ к веб-страничке фирмы XILINX с рекомендациями по ее толкованию и исправлению.
| Проверка синтаксиса HDL-описания синтезатором
| Выбрать в меню Sources =>/Implementation, => выбрать исходный файл.
Щелкнуть левой кнопкой мыши на знаке «+» около Synthesize_XST в окне процессов Навигатора проекта.
Дважды щелкнуть левой кнопкой мыши на Check Synthesize.
|
Приложение Б
Фрагменты представлений результатов проектирования на примере проекта D-триггера
|