lab4 (774795), страница 5
Текст из файла (страница 5)
RTL Output : Yes
Hierarchy Separator : _
Bus Delimiter : <>
Case Specifier : maintain
---- Other Options
lso : shema.lso
verilog2001 : YES
wysiwyg : NO
=========================================================================
=========================================================================
* HDL Compilation *
=========================================================================
Compiling source file "shema.vf"
Module compiled
No errors in compilation
Analysis of file succeeded.
=========================================================================
* HDL Analysis *
=========================================================================
Analyzing top module .
Module is correct for synthesis.
Set user-defined property "INIT = 0" for instance
Set user-defined property "INIT = 0" for instance
Set user-defined property "INIT = 0" for instance
Set user-defined property "INIT = 0" for instance
Set user-defined property "INIT = 0" for instance
Analyzing module .
=========================================================================
* HDL Synthesis *
=========================================================================
Synthesizing Unit .
Related source file is shema.vf.
Unit synthesized.
=========================================================================
* Advanced HDL Synthesis *
=========================================================================
Advanced RAM inference ...
Advanced multiplier inference ...
Advanced Registered AddSub inference ...
Dynamic shift register inference ...
=========================================================================
HDL Synthesis Report
Found no macro
=========================================================================
=========================================================================
* Low Level Synthesis *
=========================================================================
Optimizing unit ...
implementation constraint: source_filename : tr_0
implementation constraint: source_linenb : tr_0
implementation constraint: INIT=0 : tr_0
implementation constraint: KEEP : tr_0
implementation constraint: source_filename : tr_1
implementation constraint: source_linenb : tr_1
implementation constraint: INIT=0 : tr_1
implementation constraint: KEEP : tr_1
implementation constraint: source_filename : tr_2
implementation constraint: source_linenb : tr_2
implementation constraint: INIT=0 : tr_2
implementation constraint: KEEP : tr_2
implementation constraint: source_filename : tr_3
implementation constraint: source_linenb : tr_3
implementation constraint: INIT=0 : tr_3
implementation constraint: KEEP : tr_3
implementation constraint: source_filename : tr_4
implementation constraint: source_linenb : tr_4
implementation constraint: INIT=0 : tr_4
implementation constraint: KEEP : tr_4
=========================================================================
* Final Report *
=========================================================================
Final Results
RTL Top Level Output File Name : shema.ngr
Top Level Output File Name : shema
Output Format : NGC
Optimization Goal : Speed
Keep Hierarchy : YES
Target Technology : xc9500
Macro Preserve : YES
XOR Preserve : YES
wysiwyg : NO
Design Statistics
# IOs : 16
Cell Usage :
# FlipFlops/Latches : 5
# FDCP : 5
# IO Buffers : 16
# IBUF : 11
# OBUF : 5
=========================================================================
CPU : 1.69 / 2.63 s | Elapsed : 1.00 / 2.00 s
-->
Total memory usage is 49148 kilobytes
В начале отчета приведено его содержание. Отчет содержит шесть основных разделов, выделенных двойной штриховой линией. В первом разделе указаны установленные значения параметров синтеза, рассмотренных выше, и некоторых общих параметров проекта (семейство и тип ПЛИС), а также форматы входных и выходных файлов.
Второй раздел содержит информацию о ходе компиляции объектов исходных описаний в соответствии с иерархией проекта. В третьем разделе представлены результаты HDL-анализа скомпилированных объектов исходных описаний. В четвертом разделе содержится информация о последовательности их синтеза. В отдельной секции этого раздела расположены данные об обнаруженных макросах. Пятый раздел отображает последовательность оптимизации, выполняемой в процессе низкоуровнего синтеза. В заключительной части отчета приведены данные об основных параметрах процесса синтеза и статистические данные полученных результатов: количество EDIF-элементов и блоков ввода/вывода.
Кроме текстового отчета средства пакета WebPACK ISE позволяют отобразить результаты синтеза на RTL-уровне в схемотехнической форме, если перед выполнением этого процесса для параметра Generate RTL Schematic было установлено значение YES или ONLY. Для просмотра этой формы результатов синтеза следует в окне процессов поместить курсор на строку View RTL Schematic и дважды щелкнуть левой кнопкой мыши. При этом открывается окно схемотехнического редактора, в котором отображается RTL-представление проекта.
Рис24.
На странице Design панели дополнительных параметров представлена информация об иерархической структуре и элементах проекта.
6. Моделирования цифровых устройств, разрабатываемых на основе кристаллов семейств CPLD
фирмы Xilinx.
В процессе проектирования средства пакета WebPACK ISE позволяют сформировать несколько видов моделей разрабатываемого устройства. После создания модулей исходного описания проекта генерируется поведенческая модель, которая позволяет выполнить их функциональную верификацию. На этой стадии проектирования отсутствует информация о значениях задержек распространения сигналов, поэтому при функциональном моделировании можно обнаружить только логические и синтаксические ошибки в описании разрабатываемого устройства. Таким образом, функциональное моделирование устройства позволяет выполнить предварительную верификацию проекта. На этом этапе фактически не учитываются временные характеристики и особенности архитектуры кристалла, на базе которого предполагается реализация проектируемой системы.
6.1 Генерация тестового модуля проекта в форме временных диаграмм.
Т
естовый модуль используется в функциональном моделировании. Он содержит набор тестов. Для автоматического формирования основы файла тестовой последовательности необходимо активизировать режим создания модуля исходного описания проекта, воспользовавшись кнопкой на оперативной панели или командой New Source из раздела Project основного меню Навигатора проекта. При этом в списке типов исходных модулей диалоговой панели, необходимо выбрать строку Test Bench Waveform. После создания в окне процессов появится соответствующая пиктограмма. При двойном нажатии на пиктограмму откроется окно редактора.
Рис25
От параметра Design Type зависит как будет задаваться синхросигнал.
Если поставить значение Single Clock, то в выпадающем списке выбирается тактирующий сигнал, который на диаграмме задается автоматически.
Если выбрать Combinatorial design, то тактирующий сигнал на диаграмме нужно будет задавать вручную.
Программа HDL Bencher автоматически определяет, чем тактируется устройство - фронтом (Rising edge), спадом (Falling edge) тактового сигнала или тем и другим (Dual edge), но разработчик может выбрать это вручную, используя соответствующие кнопки диалоговой панели. При создании тестов для комбинационных устройств нужно указать только значения временных интервалов между моментами подачи входных воздействий и контроля выходных сигналов Check outputs и Assign Inputs. Эти параметры позволяют исключить возможные конфликты в моменты изменения входных и выходных сигналов.
Процесс установки требуемых значений временных параметров завершается нажатием кнопки ОК, после чего в рабочей области окна программы HDL Bencher отображаются заготовки временных диаграмм.
Рис26
Синим цветом на диаграмме отмечены входные сигналы, а желтым – выходные.
Изменить значение сигнала в какой-либо момент времени можно несколькими способами. Чтобы переключить значение сигнала на противоположное (из состояния низкого логического уровня в высокое или наоборот), достаточно поместить курсор в требуемое место временной диаграммы и щелкнуть левой кнопкой мыши.
Для установки требуемого значения сигнала (например шины) следует нажать кнопку управления выпадающим списком возможных состояний, в котором выбрать затем соответствующую строку, после чего подтвердить выбор нажатием кнопки ОК.
Рис27.
Чтобы сформировать последовательность значений для выбранного сигнала, можно воспользоваться соответствующим "мастером" Pattern Wizard. Для его активизации необходимо поместить курсор мыши в исходную точку временной диаграммы и дважды щелкнуть левой кнопкой, после чего воспользоваться появившейся кнопкой Pattern. В диалоговой панели "мастера" Pattern Wizard, показанной на рис. 28, следует выбрать алгоритм переключений сигнала в поле Choose Pattern и указать: начальное значение в поле редактирования Initial Value, конечное значение в поле Terminal Value, указать значение инкремента или декремента и количество формируемых периодов сигнала в поле Do for. После нажатия кнопки ОК сформированный фрагмент временной диаграммы отображается в рабочей области. Команды меню Edit и контекстно-зависимого всплывающего меню позволяют копировать в буфер и затем вставлять в нужное место выбранные фрагменты временных диаграмм.
Рис28
На изображении временных диаграмм присутствует указатель конечной точки тестовой последовательности, положение которого устанавливается автоматически или "вручную". Выбор режима определения окончания тестового вектора осуществляется с помощью команды Configuration из всплывающего меню Options, в результате выполнения которой на экран выводится диалоговая панель, показанная на рис. 29. Параметр Automatically determine end of test bench управляет выбором режима, в котором выполняется установка маркера конечной точки тестового вектора. По умолчанию используется значение "включено", соответствующее автоматическому режиму, при котором указатель располагается в начале тактового интервала, следующего за моментом последнего изменения входных сигналов.
Рис29.
Завершив редактирование временных диаграмм тестовых сигналов, следует сохранить их, используя команду Save Waveform из меню File или кнопку
на оперативной панели окна HDL Bencher.
6.2 Установка значений параметров функционального моделирования
По окончании формирования тестового файла следует выделить строку с его названием в окне исходных модулей Навигатора проекта, поместив на нее курсор мыши и щелкнув левой кнопкой. В результате в окне процессов отображается интерактивный список этапов моделирования проектируемого устройства.
Рис30.
Перед запуском средств моделирования следует проконтролировать и при необходимости установить требуемые значения параметров инициализации программы ModelSim и соответствующей модели. Для этого нужно в окне процессов(рис 30) щелчком левой кнопки мыши выделить строку Simulate Behavioral Verilog Model, после чего нажать кнопку
, расположенную на оперативной панели Навигатора проекта.
Рис31.
















