Проектирование встраиваемых микропроцессорных систем на базе расширяемых процессорных платформ семейства Zynq 7000 AP SoC в САПР Xilinx ISE Design Suite. Часть 5
Краткое описание параметров управления процессом трансляции проекта аппаратной части разрабатываемой встраиваемой системы
Доступ к параметрам, предназначенным для управления процессом трансляции проекта аппаратной части разрабатываемой встраиваемой системы, реализуемой на базе программируемой логики PL кристаллов расширяемых процессорных платформ, открывает страница Translate Properties, вид которой показан на рис. 53 (КиТ № 7, 2014, стр. 117).
Параметр Use LOC Constraints позволяет исключить в процессе трансляции топологические ограничения, устанавливаемые с помощью выражений LOC = …, которые располагаются в модулях исходного описания аппаратной части проектируемой микропроцессорной системы и файлах UCF. Блокировка ограничений на размещение объектов и цепей аппаратной части разрабатываемой встраиваемой системы необходима в случае изменения архитектуры, семейства или корпуса кристалла, используемого для ее реализации. По умолчанию индикатор состояния этого параметра установлен в положение «включено», при котором трансляция проекта осуществляется с учетом заданных топологических ограничений размещения LOC.
С помощью параметра Netlist Translation Type устанавливается режим обновления промежуточных файлов (NGO) в процессе повторной трансляции проекта. Если в состав проекта аппаратной части разрабатываемой микропроцессорной системы входят модули, содержащие списки цепей (netlist), представленные в формате EDIF, то непосредственно перед трансляцией они автоматически преобразуются в промежуточные файлы двоичного формата. При повторной трансляции (когда соответствующие файлы NGO уже существуют) эта операция может исключаться, в зависимости от значения параметра Netlist Translation Type. Выпадающий список возможных значений этого параметра содержит три варианта: Timestamp, On и Off. При использовании варианта Timestamp, установленного по умолчанию, повторное автоматическое преобразование выполняется только для тех списков цепей (файлов *.EDIF), которые имеют более поздние дату и время создания, чем соответствующий промежуточный файл *.NGO. Значение On предписывает всегда перед трансляцией выполнять автоматическое обновление промежуточных файлов (*.NGO) для всех списков цепей, представленных в формате *.EDIF. При выборе варианта Off повторное автоматическое преобразование файлов *.EDIF не производится (используются существующие версии промежуточных файлов *.NGO).
Параметр Macro Search Path позволяет указать полное название каталога, в котором производится дополнительный поиск описаний макросов, компонентов схем, определяемых с помощью атрибутов FILE, промежуточных файлов *.NGO, а также файлов *.NGC и *.EDIF. Название требуемой папки может быть введено непосредственно с помощью клавиатуры после того, как поле редактирования значения этого параметра активизировано или выбрано при помощи стандартной диалоговой панели поиска каталога, которая открывается при нажатии кнопки с пиктограммой в виде многоточия («…»). В строке значения параметра Macro Search Path можно указать названия нескольких каталогов, отделяя их друг от друга символом “|”.
Значение параметра Create I/O Pads from Ports разрешает или запрещает автоматическое формирование контактов (PAD) для всех интерфейсных цепей (Ports) описания верхнего уровня иерархии проекта аппаратной части разрабатываемой встраиваемой системы. Этот параметр следует использовать при наличии списков цепей, приведенных в формате *.EDIF, в которых символы выводов представляются в виде сигналов интерфейса. По умолчанию индикатор состояния этого параметра находится в положении «выключено», запрещающем автоматическое создание контактов для интерфейсных цепей модуля верхнего уровня иерархии проекта.
С помощью параметра Allow Unexpanded Blocks осуществляется управление процессом создания результирующего файла *.NGD при обнаружении нетранслируемых блоков. В процессе трансляции выполняется преобразование блоков в списках цепей к уровню NGD-примитивов. Если встречается блок, который не может быть представлен на уровне соответствующих примитивов, то при этом в нормальном режиме выдается сообщение об ошибке и файл *.NGD не создается. При установке индикатора состояния параметра Allow Unexpanded Blocks в положение «включено» в случае обнаружения нераскрываемых блоков средства трансляции формируют выходной файл *.NGD, в который также помещаются нетранслируемые элементы и соответствующее предупреждение. Таким образом, можно выполнить процессы размещения, трассировки, временного анализа и моделирования для незаконченных проектов. По умолчанию индикатор состояния рассматриваемого параметра находится в положении «выключено», при котором процесс трансляции останавливается, если обнаружены нераскрываемые блоки.
Значение параметра User Rules File for Netlister Launcher определяет название файла, содержащего набор инструкций, которые используются для управления процессами трансляции. В этом файле разработчик может указать допустимые файлы списков цепей и параметры процесса их чтения. Установка значения параметра User Rules File for Netlister Launcher выполняется теми же способами, что были рассмотрены выше для определения названия каталога, содержащего описания макросов Macro Search Path. Название файла инструкций, определяемого разработчиком, должно иметь расширение *.urf. Если в поле редактирования параметра User Rules File for Netlister Launcher указано название файла без расширения, то средства трансляции автоматически присвоят этому файлу расширение *.urf. При вводе идентификатора файла с иным расширением на экран выводится сообщение об ошибке.
Параметр Allow Unmatched LOC Constraints позволяет исключить из рассмотрения топологические ограничения, устанавливаемые с помощью выражений LOC = …, которые относятся к объектам (цепям, элементам, контактам), отсутствующим (не найденным) в модулях исходного описания аппаратной части проектируемой микропроцессорной системы. Если в файлах ограничений *.UCF или *.NCF встречается выражение LOC = …, в котором указано название объекта, не соответствующее описанию и параметрам проекта, то при этом в обычном режиме, принятом по умолчанию (когда индикатор состояния параметра Allow Unmatched LOC Constraints находится в положении «выключено»), выдается сообщение об ошибке и файл *.NGD не создается. При установке индикатора состояния параметра Allow Unmatched LOC Constraints в положение «включено» в случае обнаружения несогласованных выражений ограничений средства трансляции формируют выходной файл *.NGD и соответствующее предупреждение вместо сообщения об ошибке. Применение данного параметра актуально при трансляции незавершенных проектов.
Значение параметра Allow Unmatched Timing Group Constraints устанавливает режим обработки временных групповых ограничений, которые содержатся в файле *.UCF, но не идентифицируются в списке соединений. По умолчанию индикатор состояния этого параметра находится в положении «выключено», при котором в случае обнаружения ограничений, относящихся к временным группам, отсутствующим в синтезированном списке соединений, формируется сообщение об ошибке. Если индикатор состояния параметра Allow Unmatched Timing Group Constraints устанавливается во включенное положение, то средства трансляции игнорируют указанные временные ограничения и не генерируют сообщения об ошибке.
Параметр Other Ngdbuild Command Line Options позволяет задать дополнительные команды для программы Ngdbuild, используемой при трансляции синтезированного описания аппаратной части разрабатываемой встраиваемой системы. Требуемые команды нужно указать в поле редактирования значения данного параметра, отделяя друг от друга пробелами.
Параметры, предназначенные для управления процедурой отображения логического описания аппаратной части разрабатываемой системы на физические ресурсы кристалла
Параметры, предоставляющие возможность управления процедурой отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы используемого кристалла расширяемой вычислительной платформы, сосредоточены на странице MAP Properties, вид которой представлен на рис. 54.
С помощью параметра Placer Effort Level задается уровень оптимизации, выполняемой в процессе отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла расширяемой процессорной платформы. Выпадающий список возможных значений этого параметра содержит два варианта: Standard и High. При выборе значения Standard достигается минимальный уровень оптимизации при максимальной скорости выполнения данной фазы этапа реализации. В случае выбора варианта High, который предлагается по умолчанию для проектов микропроцессорных систем, реализуемых на базе кристаллов семейства Zynq‑7000 AP SoC, достигается наивысший уровень оптимизации за счет применения более сложных алгоритмов, что приводит к значительному увеличению времени выполнения этой процедуры.
Параметр Placer Extra Effort предназначен для управления выделением дополнительного времени, которое используется для оптимизации, выполняемой в процессе отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла расширяемой процессорной платформы. Данный параметр доступен только в том случае, если выбран максимальный уровень оптимизации (для параметра Placer Effort Level указано значение High). В выпадающем списке возможных значений параметра Placer Extra Effort представлено три варианта: None, Normal и Continue on Impossible. При использовании значения None, предлагаемого по умолчанию, дополнительное время для указанной оптимизации не выделяется. Когда выбран вариант Normal, процесс оптимизации осуществляется до тех пор, пока выполняются указанные разработчиком временные ограничения, и завершается при обнаружении невозможности удовлетворения заданных условий. Если для рассматриваемого параметра используется вариант Continue on Impossible, то процесс оптимизации будет выполняться до того момента, пока не прекратится повышение эффективности достигаемых результатов, при этом возможность удовлетворения заданных временных ограничений не учитывается.
Значение параметра Starting Placer Cost Table (1-100) задает начальный индекс таблицы весовых коэффициентов, который применяется при первой попытке отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы программируемой логики используемого кристалла. Установленное число (в диапазоне от 1 до 100) является базовым при вычислении этого значения в последующих итерациях выполнения этой процедуры. По умолчанию для данного параметра предусмотрено значение 1 — оно может быть изменено с помощью клавиатуры после активизации соответствующего поля редактирования.
Параметр Extra Cost Tables предоставляет возможность применения дополнительной таблицы весовых коэффициентов в процессе отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла расширяемой процессорной платформы. Этот параметр может использоваться совместно с предыдущим. По умолчанию параметр Extra Cost Tables принимает нулевое значение.
С помощью параметра Combinatorial Logic Optimization можно задать режим оптимизации комбинационной логики, используемой в составе аппаратной части проектируемой микропроцессорной системы. По умолчанию индикатор состояния этого параметра установлен в положение «выключено», при котором указанная оптимизация не выполняется.
Значение параметра Register Duplication разрешает или запрещает дублирование регистров (триггеров) при временной оптимизации и сокращении количества разветвлений цепей. Вариант Off, предлагаемый по умолчанию для этого параметра, запрещает дублирование регистров в процессе отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы используемого кристалла. Для разрешения дублирования регистров следует в выпадающем списке поля выбора рассматриваемого параметра указать вариант On.
Значение параметра Register Ordering позволяет установить режим упорядочивания групп триггеров (способ распределения триггеров аппаратной части проектируемой микропроцессорной системы в секции SLICE конфигурируемых логических блоков CLB). Список возможных значений этого параметра включает три варианта: Off, 4 и 8. По умолчанию установлено значение 4, при котором выполняется распределение из расчета четыре триггера на одну секцию SLICE. При выборе варианта Off упорядочивание групп триггеров не производится. Значение 8 соответствует режиму распределения из расчета восемь триггеров на одну секцию конфигурируемого логического блока.
Параметр Ignore User Timing Constraints определяет, будут ли средствами отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики используемого кристалла приниматься во внимание установленные временные ограничения проекта. По умолчанию индикатор состояния этого параметра находится в выключенном положении, при котором рассматриваемая фаза процесса реализации, а также размещение проекта в кристалле выполняются с учетом всех временных ограничений, указанных в модулях исходных описаний аппаратной части микропроцессорной системы и файлах ограничений UCF. При установке этого индикатора в состояние «включено» средства отображения логического описания аппаратной части проектируемой встраиваемой системы на физические ресурсы кристалла игнорируют всю информацию о временных ограничениях.
Опция Timing Mode доступна только при включенном состоянии параметра Ignore User Timing Constraints. Выпадающий список возможных значений параметра Timing Mode содержит два варианта — Non Timing Driven и Performance Evaluation. В случае выбора варианта Non Timing Driven размещение проекта аппаратной части разрабатываемой встраиваемой системы в кристалле выполняется без учета всех временных ограничений, указанных в модулях *.UCF, что позволяет ускорить выполнение данного процесса. По умолчанию для параметра Timing Mode предлагается вариант Performance Evaluation, соответствующий режиму оценки реальной производительности аппаратной части проектируемой микропроцессорной системы. В указанном режиме вся информация о временных ограничениях, приведенная в файлах *.UCF, также игнорируется. Вместо этого временные ограничения для всех внутренних тактовых сигналов генерируются автоматически и динамически подстраиваются в процессе отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики используемого кристалла с целью достижения максимальной производительности.
Параметр Trim Unconnected Signals предоставляет возможность удаления неподключенных компонентов и цепей аппаратной части проектируемой микропроцессорной системы перед выполнением рассматриваемой фазы процесса реализации (MAP). Для предварительной оценки требуемых физических ресурсов кристалла и временных характеристик незавершенного проекта рекомендуется установить индикатор состояния этого параметра в положение «выключено». Причем незаконченные фрагменты проекта не будут исключаться из рассмотрения. По умолчанию индикатор состояния параметра Trim Unconnected Signals находится в положении «включено», предписывающем удаление всех неподключенных компонентов и цепей.
Значение параметра Allow Logic Optimi-zation Across Hierarchy определяет режим оптимизации, выполняемой в процессе отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла. При установке индикатора состояния этого параметра в положение «включено» оптимизация выполняется без сохранения иерархической структуры проекта. По умолчанию указанный индикатор находится в состоянии «выключено», при котором в ходе оптимизации учитывается иерархическое представление проекта.
Параметр Generate Detailed MAP Report позволяет изменить уровень детализации отчета о выполнении процедуры отображения логического описания проекта аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла расширяемой процессорной платформы. При установке индикатора состояния этого параметра в положение «включено» в отчет включается дополнительная информация об удаленных избыточных блоках, преобразованных сигналах, перекрестных ссылках сигналов и символов. По умолчанию указанный индикатор состояния находится в выключенном положении, запрещающем добавление в отчет подробной информации.
Значение параметра Use RLOC Constraints разрешает или запрещает учитывать топологические ограничения, устанавливаемые с помощью выражений RLOC, которые задают относительное расположение используемых конфигурируемых логических блоков (по отношению к другим CLB). Выпадающий список возможных значений этого параметра включает три варианта: Yes, No и For Packing Only. По умолчанию предлагается вариант Yes, при котором в процессе отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы кристалла учитываются все ограничения относительного расположения RLOC, включая выражения, содержащие некорректную информацию, приводящую к появлению ошибок в процессе размещения и трассировки. Если для параметра Use RLOC Constraints указывается значение No, то при выполнении фазы MAP игнорируются все топологические ограничения, определяемые с помощью выражений RLOC. При выборе варианта For Packing Only ограничения относительного расположения RLOC учитываются только при выполнении процедуры упаковки.
Параметр Pack I/O Registers/Latches into IOBs предназначен для управления упаковкой триггеров и защелок в ячейки ввода/вывода. Выпадающий список возможных значений этого параметра содержит четыре варианта: Off, For Inputs Only, For Outputs Only, For Inputs and Outputs. Значение Off, предлагаемое по умолчанию для этого параметра, соответствует нормальному режиму распределения ресурсов кристалла, при котором триггеры и защелки упаковываются в ячейки ввода/вывода только при наличии соответствующих указаний в модулях исходного описания проекта аппаратной части разрабатываемой встраиваемой системы. При выборе варианта For Inputs Only для упаковки триггеров и защелок используются только соответствующие входные элементы блоков ввода/вывода, а при варианте For Outputs Only — выходные. Значение For Inputs and Outputs разрешает выполнять упаковку триггеров и защелок, используя соответствующие входные и выходные элементы ячеек ввода/вывода.
С помощью параметра Maximum Compres-sion можно включить режим достижения максимальной плотности упаковки при выполнении процедуры отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы программируемой логики кристаллов семейства Zynq‑7000 AP SoC. По умолчанию индикатор состояния данного параметра находится в положении «выключено», при котором указанный режим не используется.
Значение параметра LUT Combining определяет возможность объединения двух таблиц преобразования с общими входами в одну шестивходовую таблицу преобразования с двумя выходами при осуществлении процесса отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы кристалла расширяемой процессорной платформы. Объединение таблиц преобразования позволяет сократить объем ресурсов программируемой логики кристалла, используемых для реализации аппаратной части проектируемой микропроцессорной системы, но может привести к снижению ее производительности. В выпадающем списке возможных значений параметра LUT Combining представлено три варианта: Off, Auto и Area. Вариант Off, предлагаемый по умолчанию, запрещает объединение таблиц преобразования при осуществлении фазы MAP процесса реализации. При выборе значения Auto допускается комбинирование таблиц преобразования с учетом достижения компромисса между сокращением объема используемых ресурсов программируемой логики кристалла и снижением быстродействия аппаратной части разрабатываемой системы. Вариант Area предписывает средствам отображения логического описания проекта на физические ресурсы кристалла объединение максимального числа пар таблиц преобразования, обеспечивая тем самым минимизацию области программируемой логики, занимаемой аппаратной частью реализуемой системы.
Параметр Map Slice Logic into Unused Block RAMs разрешает или запрещает привлекать ресурсы неиспользуемой блочной памяти для размещения элементов аппаратной части проектируемой микропроцессорной системы. По умолчанию индикатор состояния этого параметра установлен в положение «выключено», запрещающее применять блочную память для отображения иных элементов.
Значение параметра Power Reduction определяет возможность проведения дополнительной оптимизации в процессе отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы кристалла расширяемой процессорной платформы с целью минимизации потребляемой мощности. Список возможных значений этого параметра содержит четыре варианта: Off, On, High и Extra Effort. По умолчанию для данного параметра установлено значение Off, запрещающее выполнение указанной оптимизации. Вариант On разрешает осуществление оптимизации энергопотребления с помощью алгоритмов, направленных на уменьшение емкостной нагрузки цепей сигналов синхронизации и данных. Тем самым достигается снижение динамической составляющей потребляемой мощности. При выборе значения High оптимизация энерго-
потребления выполняется с применением алгоритмов, основанных на использовании технологии Intelligent Clock Gating. В этом случае достигается более высокий уровень оптимизации потребляемой мощности по сравнению с предыдущим вариантом, однако может снижаться производительность аппаратной части разрабатываемой системы, а также увеличиваться объем используемых логических ресурсов кристалла. Кроме того, время выполнения оптимизации при выборе значения High больше, чем при использовании варианта On. Значение Extra Effort предоставляет возможность проведения оптимизации потребляемой мощности с совместным применением алгоритмов, используемых при вариантах On и High. Совмещение указанных алгоритмов оптимизации позволяет добиться сокращения потребляемой мощности в динамическом режиме, но приводит к существенному увеличению времени и снижению быстродействия.
С помощью параметра Power Activity File можно указать идентификатор файла, сформированного при моделировании аппаратной части проектируемой микропроцессорной системы, который будет использоваться при выполнении оптимизации энергопотребления. В процессе моделирования создаются файлы с расширением *.vcd или *.saif, содержащие информацию о значениях частоты внутренних сигналов аппаратной части разрабатываемой встраиваемой системы. Учет этой информации при осуществлении оптимизации энергопотребления позволяет добиться более высоких результатов за счет минимизации потребляемой мощности в динамическом режиме. Идентификатор файла результатов моделирования в формате *.vcd или *.saif указывается непосредственно с помощью клавиатуры после активизации поля редактирования значения параметра Power Activity File или выбирается при использовании стандартной диалоговой панели открытия файла, которая отображается при нажатии кнопки с пиктограммой в виде многоточия «…».
Параметр Enable Multi-Threading позволяет задействовать несколько процессорных ядер компьютера при осуществлении процесса отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы программируемой логики кристалла расширяемой вычислительной платформы. Выпадающий список доступных значений этого параметра включает два варианта: Off и 2. По умолчанию предлагается вариант Off, соответствующий однопроцессорному режиму функционирования средств размещения проекта в кристалле. При установке значения 2 все процедуры фазы отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы кристалла выполняются в двухпроцессорном режиме.
С помощью параметра Other Map Command Line Options предоставляется возможность выполнения дополнительных команд при осуществлении процедуры отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы программируемой логики кристалла расширяемой вычислительной платформы. Требуемые команды указываются с помощью клавиатуры в поле редактирования значения этого параметра через пробел.
Параметры, предназначенные для управления процедурами размещения и трассировки аппаратной части проектируемой системы в кристалле
Для установки требуемого режима работы средств размещения и трассировки аппаратной части проектируемой микропроцессорной системы в кристалле расширяемой вычислительной платформы необходимо открыть страницу Place and Route Properties диалоговой панели параметров этапа реализации, вид которой демонстрирует рис. 55.
Значение параметра Place and Route Mode определяет режим выполнения процесса размещения и трассировки аппаратной части разрабатываемой встраиваемой системы в кристалле расширяемой процессорной платформы. Выпадающий список допустимых значений этого параметра содержит два варианта: Route Only и Reentrant Route. Значение Route Only, установленное по умолчанию, соответствует нормальному режиму трассировки, при котором выполняются все процедуры с учетом параметров, указанных разработчиком или установленных по умолчанию. При выборе значения Reentrant Route осуществляется многократное повторение процедур трассировки с целью оптимизации результатов. Последний режим можно устанавливать только если хотя бы один раз полностью пройдена фаза трассировки.
С помощью параметра Place and Route Effort Level (Overall) устанавливается уровень эффективности процедур размещения и трассировки аппаратной части проектируемой микропроцессорной системы в кристалле. Этот параметр позволяет за счет выбора более совершенных алгоритмов размещения и трассировки (соответственно за счет увеличения времени выполнения рассматриваемого этапа) достичь более высоких результатов. И наоборот, выбирая менее сложные алгоритмы, можно сократить время выполнения процесса размещения и трассировки, но получить результаты, далекие от оптимальных. Для сложных проектов снижение времени, необходимого для выполнения процесса размещения и трассировки в кристалле, может привести к появлению неразведенных цепей и увеличению задержек распространения сигналов. В выпадающем списке возможных значений данного параметра представлено два варианта: Standard и High. Выбор значения Standard позволяет минимизировать время размещения и трассировки аппаратной части разрабатываемой встраиваемой системы в кристалле за счет низкого уровня оптимизации этих процессов. Вариант High, предлагаемый по умолчанию, обеспечивает достижение наилучших результатов, но требует максимального времени для выполнения всех процедур рассматриваемой фазы этапа реализации.
Параметр Extra Effort (Highest PAR level only) предоставляет возможность выделения дополнительного времени для выполнения процедур размещения и трассировки, необходимого для удовлетворения наиболее сложных временных ограничений проекта аппаратной части создаваемой микропроцессорной системы. Этот параметр используется только том в случае, если параметр Place and Route Effort Level (Overall) принимает значение High. Выпадающий список возможных значений параметра Extra Effort (Highest PAR level only) содержит три варианта: None, Normal, Continue on Impossible. По умолчанию для этого параметра предлагается значение None, которое запрещает выделение дополнительного времени для выполнения этапа реализации с учетом наиболее сложных временных ограничений. При выборе варианта Normal процесс размещения и трассировки аппаратной части разрабатываемой встраиваемой системы в кристалле осуществляется до тех пор, пока выполняются заданные разработчиком временные ограничения, и прекращается в случае невозможности удовлетворения указанных условий. Вариант Continue on Impossible устанавливает режим выполнения процедур размещения и трассировки до того момента, пока не прекратится повышение эффективности достигаемых результатов, не учитывая при этом возможность удовлетворения заданных временных ограничений.
Значение параметра Ignore UserTiming Constraints определяет необходимость учета средствами размещения и трассировки временных ограничений аппаратной части проектируемой микропроцессорной системы, которые указаны в файле физических ограничений проекта Physical Constraints File (PCF). По умолчанию индикатор состояния этого параметра установлен в положение «выключено», при котором процесс размещения и трассировки проекта аппаратной части разрабатываемой встраиваемой системы в кристалле производится с учетом всех временных ограничений, содержащихся файле *.PCF. При переключении этого индикатора в противоположное состояние («включено») фаза размещения и трассировки выполняется без учета указанных временных ограничений.
Параметр Timing Mode применяется только в том случае, когда индикатор состояния параметра Ignore User Timing Constraints установлен в положение «включено». В выпадающем списке возможных значений параметра Timing Mode представлено два варианта: Non Timing Driven и Performance Evaluation. При выборе варианта Non Timing Driven размещение и трассировка аппаратной части проектируемой микропроцессорной системы в кристалле осуществляется без учета всех временных ограничений, представленных в файле *.PCF, что позволяет существенно сократить длительность выполнения данного процесса. По умолчанию для параметра Timing Mode установлен вариант Performance Evaluation, который предоставляет возможность оценки предельной реальной производительности аппаратной части разрабатываемой встраиваемой системы. В этом случае вся информация о временных ограничениях, содержащаяся в файле *.PCF, также игнорируется средствами размещения и трассировки. Вместо этой информации временные ограничения для всех внутренних тактовых сигналов генерируются автоматически и динамически подстраиваются в процессе осуществления процесса размещения и трассировки аппаратной части проектируемой микропроцессорной системы в кристалле для достижения максимальной производительности.
Значение параметра Generate Asynchronous Delay Report разрешает или запрещает генерацию отчета об асинхронных задержках сигналов в процессе размещения и трассировки проекта аппаратной части разрабатываемой встраиваемой системы в кристалле расширяемой процессорной платформы. По умолчанию индикатор состояния этого параметра находится в положении «выключено», которое блокирует формирование указанного отчета.
Параметр Generate Clock Region Report предназначен для управления процессом генерации отчета, содержащего сведения об используемых ресурсах для каждого локального тактового сигнала и возможных конфликтах между локальными и глобальными сигналами синхронизации. По умолчанию индикатор состояния данного параметра установлен в положение «выключено», запрещающее формирование указанного отчета при выполнении процесса размещения и трассировки аппаратной части проектируемой микропроцессорной системы в кристалле.
С помощью параметра Generate Post-Place & Route Simulation Model осуществляется управление процессом автоматического формирования полной временной модели аппаратной части разрабатываемой встраиваемой системы. По умолчанию индикатор состояния этого параметра находится в положении «выключено», запрещающем автоматическое создание полной временной модели после выполнения процедур размещения и трассировки аппаратной части проектируемой микропроцессорной системы в кристалле.
Значение параметра Generate Post-Place & Route Power Report определяет необходимость формирования отчета, в котором приводятся сведения об энергопотреблении аппаратной части разрабатываемой встраиваемой системы после размещения и трассировки ее в кристалле расширяемой процессорной системы. По умолчанию индикатор состояния данного параметра установлен в положение «выключено», запрещающее генерацию отчета о потребляемой мощности.
Параметр Power Reduction предоставляет возможность проведения дополнительной оптимизации в процессе трассировки аппаратной части проектируемой микропроцессорной системы в кристалле с целью минимизации потребляемой мощности. По умолчанию индикатор состояния этого параметра находится в положении «выключено», которое запрещает выполнение указанной оптимизации.
Параметр Power Activity File позволяет указать идентификатор файла с расширением *.vcd или *.saif, содержащего сведения о значениях частоты внутренних сигналов аппаратной части разрабатываемой встраиваемой системы, который генерируется средствами моделирования. Использование этой информации в процессе оптимизации энергопотребления, выполняемой на фазе размещения и трассировки в кристалле, помогает добиться более высоких результатов за счет минимизации потребляемой мощности в динамическом режиме. Для указания наименования требуемого файла результатов моделирования в формате *.vcd или *.saif можно воспользоваться клавиатурой после активизации поля редактирования значения параметра Power Activity File или стандартной диалоговой панелью открытия файла, которая отображается при нажатии кнопки с пиктограммой в виде многоточия «…».
Параметр Enable Multi-Threading предоставляет возможность использования нескольких процессорных ядер компьютера при осуществлении процесса трассировки аппаратной части проектируемой встраиваемой системы в кристалле расширяемой процессорной платформы. Выпадающий список доступных значений этого параметра содержит четыре варианта: Off, 2, 3 и 4. По умолчанию для данного параметра предлагается вариант Off, соответствующий однопроцессорному режиму функционирования средств трассировки. При выборе значения 2, 3 или 4 для выполнения фазы трассировки задействуется соответствующее количество процессорных ядер компьютера.
Параметр Other Place & Route Command Line Options позволяет указать дополнительные опции командной строки, предназначенные для выполнения в процессе размещения и трассировки проекта аппаратной части разрабатываемой встраиваемой системы в кристалле расширяемой процессорной платформы. Необходимые команды вводят с помощью клавиатуры после активизации поля редактирования значения этого параметра, отделяя их друг от друга пробелом.
Параметры отчета о выполнении анализа временных характеристик, проводимого после отображения логического описания аппаратной части проектируемой системы на физические ресурсы кристалла
Доступ к параметрам отчета о выполнении и результатах статического анализа временных характеристик, проводимого после отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы программируемой логики используемого кристалла, предоставляет страница Post-Map Static Timing Report Properties, вид которой показан на рис. 56.
Параметр Report Type определяет уровень детализации отчета, формируемого по результатам проведенного статического анализа временных характеристик аппаратной части разрабатываемой встраиваемой системы. Выпадающий список возможных значений этого параметра содержит два варианта: Error Report и Verbose Report. При выборе варианта Error Report рассматриваемый отчет содержит только сообщения об ошибках и данные задержек сигналов для соответствующих цепей. Вариант Verbose Report, предлагаемый по умолчанию, предписывает включать в состав отчета подробную информацию о задержках всех цепей аппаратной части проектируемой микропроцессорной системы, для которых установлены временные ограничения.
Значение параметра Number of Paths in Error/Verbose Report указывает максимальное количество путей распространения сигналов, представленных в отчете о результатах статического анализа временных характеристик, выполняемого после отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла расширяемой процессорной платформы. Это значение может выбираться в диапазоне от 0 до 2 000 000 000. По умолчанию параметр Number of Paths in Error/Verbose Report принимает значение, равное 3. Для его изменения следует после активизации соответствующего поля редактирования воспользоваться клавиатурой или кнопками, расположенными в правой части этого поля.
Параметр Perform Advanced Analysis предоставляет возможность проведения углубленного анализа выполнения всех временных ограничений, указанных в проекте аппаратной части разрабатываемой встраиваемой системы. По умолчанию индикатор состояния этого параметра находится в положении «выключено», запрещающем проведение углубленного анализа.
Параметр Change Device Speed To рекомендуется для исследования временных характеристик критических цепей аппаратной части проектируемой микропроцессорной системы при изменении быстродействия кристалла, используемого для ее реализации. Варьируя значение этого параметра, можно определить быстродействие кристалла расширяемой процессорной платформы, необходимое для удовлетворения всех временных ограничений проекта аппаратной части разрабатываемой встраиваемой системы. Выпадающий список возможных значений параметра Change Device Speed To включает выпускаемый ряд градаций по быстродействию для выбранного типа кристалла расширяемой процессорной платформы, а также вариант Absolute Min, который соответствует минимальным значениям временных характеристик. По умолчанию для рассматриваемого параметра предлагается вариант быстродействия кристалла, указанный при создании проекта аппаратной части разрабатываемой микропроцессорной системы в качестве значения параметра Speed (рис. 4, КиТ № 4, 2014, стр. 109).
Значение параметра Report Uncovered Paths указывает количество сообщений о задержках распространения сигналов по цепям, которые не подвергались влиянию временных ограничений. По умолчанию информация о задержках указанных цепей не включается в состав формируемого отчета о результатах статического временного анализа, выполняемого после отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы кристалла.
Параметр Report Paths by Endpoint позволяет определить число путей распространения сигналов, соответствующих наихудшему варианту, для конечных точек цепей с временными ограничениями, информация о которых будет включена в отчет о выполнении статического временного анализа, осуществляемого после отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы кристалла. По умолчанию сведения об указанных путях распространения сигналов не заносятся в рассматриваемый отчет.
С помощью параметра Report Fastest Path(s) in Each Constraint можно добавить в отчет информацию о наиболее быстрых путях распространения сигналов, которая относится к заданным временным ограничениям, устанавливаемым выражениями OFFSET OUT и FROM: TO. Эта информация позволяет оценить имеющиеся ресурсы для выполнения указанных временных ограничений. По умолчанию индикатор состояния данного параметра установлен в положение «включено», при котором сведения о наиболее быстрых путях распространения сигналов добавляются в состав отчета о выполнении процедуры статического анализа временных характеристик, проводимого после отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы кристалла.
Параметр Generate Datasheet Section предоставляет возможность добавления секции справочных данных в состав отчета о результатах статического временного анализа, выполняемого после отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла расширяемой процессорной платформы. В этой секции приводится информация о внешних временных характеристиках аппаратной части проектируемой микропроцессорной системы. По умолчанию индикатор состояния этого параметра находится в положении «включено», разрешающем создание в структуре отчета дополнительной секции, содержащей указанные справочные данные.
Значение параметра Generate Timegroups Section разрешает или запрещает формирование раздела, в котором находится информация о временных группах, в составе отчета о выполнении статического временного анализа, осуществляемого после отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы кристалла. По умолчанию индикатор состояния этого параметра установлен в выключенное положение, блокирующее создание указанного раздела в рассматриваемом отчете.
Параметр Generate Constraints Interaction Report определяет необходимость генерации дополнительного отчета о взаимодействии временных ограничений, установленных для аппаратной части проектируемой микропроцессорной системы, при отображении ее логического описания на физические ресурсы используемого кристалла. Если индикатор состояния этого параметра установлен в положение «включено», то совместно с отчетом о результатах статического временного анализа, осуществляемого после отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы кристалла, формируется файл с расширением *.TSI (Timing Specification Interaction), где приводится информация о способе разрешения взаимоисключающих временных ограничений. По умолчанию индикатор состояния этого параметра находится в выключенном положении, при котором файл дополнительного отчета не создается.
Параметры отчета о выполнении процедуры анализа временных характеристик, проводимого после размещения и трассировки аппаратной части проектируемой системы в кристалле
Для определения содержания отчета о выполнении и результатах статического анализа временных характеристик, проводимого после размещения и трассировки аппаратной части проектируемой микропроцессорной системы в кристалле, необходимо открыть страницу Post-Place & Route Static Timing Report Properties диалоговой панели параметров процесса реализации, вид которой приведен на рис. 57.
Параметры Report Type, Number of Paths in Error/Verbose Report, Perform Advanced Analysis, Change Device Speed To, Report Uncovered Paths, Report Paths by Endpoint, Report Fastest Path(s) in Each Constraint, Generate Datasheet Section, Generate Timegroups Section и Generate Constraints Interaction Report, представленные на этой странице, выполняют те же функции, что и одноименные опции на странице Post-Map Static Timing Report Properties, рассмотренные выше, но относятся к отчету о результатах анализа временных характеристик, который осуществляется после выполнения размещения и трассировки проекта аппаратной части разрабатываемой встраиваемой системы в кристалле.
С помощью параметра Stamp Timing Model Filename можно указать названия файлов (stampfile.mod и stampfile.data), описывающих временную модель проекта и применяющихся в процессе статического анализа результатов размещения и трассировки.
Для того чтобы изменить значение этого параметра, нужно активизировать соответствующее поле редактирования, затем воспользоваться клавиатурой или стандартной панелью выбора файла, доступ к которой открывает кнопка с пиктограммой «…», появляющаяся в правой части поля редактирования.
Параметры, предназначенные для управления формированием моделей аппаратной части проектируемой системы
В процессе выполнения этапа реализации может быть сформировано несколько видов моделей аппаратной части проектируемой микропроцессорной системы. После трансляции синтезированного описания генерируется функциональная модель аппаратной части разрабатываемой встраиваемой системы на уровне вентилей (Post-Translate Simulation Model). На этой стадии проектирования отсутствует информация о реальных значениях задержек компонентов и линий распространения сигналов, поэтому в сгенерированной функциональной модели используются единичные значения задержек. Функциональная модель на уровне вентилей позволяет проверить корректность результатов синтеза и последующей трансляции сформированного описания аппаратной части проектируемой микропроцессорной системы. Значения внутренних и выходных сигналов этой модели могут отличаться от результатов поведенческого моделирования аналогичных сигналов при использовании одного и того же набора тестовых воздействий из-за особенностей функционирования средств синтеза. Информация об ограничениях средств синтеза XST (Xilinx Synthesis Technology), входящих в состав САПР ISE Design Suite, представлена в [17, 18].
При успешном завершении фазы отображения логического описания аппаратной части разрабатываемой встраиваемой системы на физические ресурсы программируемой логики кристалла расширяемой процессорной платформы формируется частичная временная модель (Post-Map Simulation Model). Она включает информацию о задержках отдельных блоков проекта, но не содержит значений задержек, вносимых трассировочными ресурсами кристалла. При создании частичной и полной временной модели применяется библиотека SimPrim Library, которая содержит описание элементов на уровне ресурсов кристалла и позволяет учитывать информацию о задержках распространения сигналов, находящуюся в соответствующих файлах, имеющих стандартный формат *.SDF.
Полная временная модель аппаратной части проектируемой микропроцессорной системы, включающая значения всех задержек распространения сигналов, вносимых различными ресурсами кристалла расширяемой процессорной платформы, генерируется только после успешного окончания фазы размещения и трассировки проекта в кристалле (Post-Place & Route Simulation Model). Использование этой модели позволяет получить наиболее точные результаты верификации аппаратной части разрабатываемой встраиваемой системы.
Для управления процессами формирования функциональной, частичной и полной временной модели аппаратной части проектируемой микропроцессорной системы следует открыть страницу Simulation Model Properties диалоговой панели параметров процесса реализации, вид которой изображен на рис. 58.
В структуре таблицы параметров генерируемой модели, представленной на этой странице, можно выделить три части. В первой части таблицы расположены общие параметры функциональной, частичной и полной временной модели аппаратной части разрабатываемой встраиваемой системы, не зависящие от выбранного для ее описания языка HDL. Вторая часть таблицы содержит дополнительные параметры формируемой модели при использовании языка VHDL для ее описания. Третья часть объединяет дополнительные параметры функциональной, частичной и полной временной модели, генерируемой на языке Verilog.
Значение параметра Simulation Model Target определяет язык HDL, применяемый для представления описания формируемой модели. Выпадающий список возможных значений этого параметра зависит от выбранных средств синтеза и системы моделирования. При использовании средств синтеза XST VHDL/Verilog выпадающий список допустимых значений параметра Simulation Model Target содержит два варианта: VHDL и Verilog. По умолчанию предлагается вариант, соответствующий языку HDL, который был указан при создании проекта аппаратной части разрабатываемой встраиваемой системы в качестве значения параметра Preferred Language, определяющего основной язык описания исходных модулей этого проекта (рис. 4).
Параметр Device Speed Grade/Select ABS Minimum позволяет при формировании частичной и полной временной модели аппаратной части проектируемой микропроцессорной системы изменить быстродействие кристалла, выбранного для ее реализации. Содержание выпадающего списка возможных значений данного параметра зависит от семейства и типа кристалла, указанного при создании проекта. Генерация частичной и полной временной модели аппаратной части разрабатываемой встраиваемой системы для различных вариантов быстродействия расширяемой процессорной платформы, определяемых значением параметра Device Speed Grade/Select ABS Minimum, открывает возможность выбора оптимального класса быстродействия кристалла.
Значение параметра Retain Hierarchy определяет способ представления объектов HDL-описаний, образующих иерархическую структуру проекта, в генерируемой функциональной, частичной и полной временной модели. Если индикатор состояния этого параметра установлен в положение «включено», то указанные объекты представляются в формируемой модели аппаратной части проектируемой микропроцессорной системы в виде отдельных иерархических модулей, соответствующих исходному описанию проекта. При переводе указанного индикатора состояния в положение «выключено» иерархическая структура объектов, определенная в исходном описании аппаратной части разрабатываемой встраиваемой системы, в генерируемой модели не сохраняется. По умолчанию индикатор состояния параметра Retain Hierarchy установлен в положение «включено», при котором сохраняется иерархия объектов в создаваемой функциональной, частичной и полной временной модели аппаратной части проектируемой микропроцессорной системы.
Значение параметра Generate Multiple Hierarchical Netlist Files определяет необходимость генерации файлов списков соединений (netlist) и описаний задержек (SDF) для каждого уровня иерархии проекта аппаратной части разрабатываемой встраиваемой системы. Эта опция доступна только в том случае, если индикатор состояния параметра Retain Hierarchy находится в положении «включено». По умолчанию индикатор состояния параметра Generate Multiple Hierarchical Netlist Files установлен в положение «выключено», запрещающее формирование указанных файлов при создании функциональной, частичной и полной временной модели аппаратной части проектируемой микропроцессорной системы.
С помощью параметра Bring Out Global Tristate Net as a Port предоставляется возможность включения глобальной цепи управления тристабильными выходами кристалла в состав описания интерфейса моделируемого объекта. Если индикатор состояния данного параметра находится в положении «включено», то глобальный сигнал GTS, предназначенный для перевода всех выходов кристалла в состояние высокого импеданса, преобразуется в формат порта объекта, который представлен в описании верхнего уровня иерархии проекта аппаратной части разрабатываемой встраиваемой системы. Выключенное состояние указанного индикатора, установленное по умолчанию, соответствует обычному представлению глобальной цепи управления тристабильными выходами кристалла расширяемой процессорной платформы. При этом соответствующий порт не включается в состав интерфейса объекта верхнего уровня иерархии проекта.
Значение параметра Global Tristate Port Name позволяет указать идентификатор порта, соответствующего глобальной цепи управления тристабильными выходами кристалла. По умолчанию предлагается название данного порта, состоящее из идентификатора этой цепи и ключевого слова, представляющего порт VHDL-описания, — GTS_PORT. Новое значение указанного параметра вводится при необходимости с помощью клавиатуры после активизации соответствующего поля редактирования. Эта опция доступна только в том случае, если индикатор состояния параметра Bring Out Global Tristate Net as a Port установлен в положение «включено».
Параметр Bring Out Global Set/Reset Net as a Port используется для включения глобальной цепи сброса/установки программируемой логики кристалла расширяемой процессорной платформы в состав описания интерфейса моделируемого объекта. Если индикатор состояния данного параметра находится в положении «включено», то глобальный сигнал сброса/установки триггерных ресурсов кристалла GSR преобразуется в формат порта объекта, который представлен в описании верхнего уровня иерархии проекта аппаратной части разрабатываемой микропроцессорной системы. По умолчанию указанный индикатор состояния находится в положении «выключено», которое соответствует обычному представлению глобальной цепи сброса/установки программируемой логики кристалла расширяемой процессорной платформы. При этом соответствующий порт не включается в состав интерфейса объекта верхнего уровня иерархии проекта.
Значение параметра Global Set/Reset Port Name позволяет указать название порта, соответствующего глобальной цепи сброса/установки триггерных ресурсов программируемой логики кристалла. По умолчанию предлагается обозначение данного порта, состоящее из идентификатора данной цепи и ключевого слова, представляющего порт VHDL-описания, — GSR_PORT. Новое значение этого параметра вводится при необходимости с помощью клавиатуры после активизации соответствующего поля редактирования. Эта опция доступна только в том случае, если индикатор состояния параметра Bring Out Global Set/Reset Net as a Port установлен в положение «включено».
Параметр Generate Testbench File управляет процессом автоматической генерации шаблона тестового файла. Создаваемый файл имеет расширение *.tvhd при использовании для описания модели языка VHDL или *.tv, если для этой цели применяется язык Verilog. Название автоматически генерируемого файла состоит из идентификатора объекта описания и имени модели (<entity_name>_ <sim_model_name> для языка VHDL или <module_name>_<sim_model_name>
для языка Verilog). По умолчанию индикатор состояния данного параметра установлен в положение «выключено», которое запрещает автоматическое формирование шаблона тестового файла.
Параметр Rename Design Instance in Testbench File to позволяет переименовать объект описания верхнего уровня иерархии в шаблоне тестового модуля проекта. По умолчанию в качестве названия объекта, описывающего испытательный стенд, используется идентификатор UUT. Изменить значение данного параметра можно только в том случае, если индикатор состояния параметра Generate Testbench File находится в положении «включено».
Значение параметра Insert Buffers to Prevent Pulse Swallowing разрешает или запрещает включение буферных элементов, предотвращающих поглощение коротких импульсов, в состав формируемой полной временной модели аппаратной части разрабатываемой встраиваемой системы. Поглощение коротких импульсов обусловлено инерционностью компонентов, на входы которых они поступают, и наблюдается в тех случаях, когда длительность импульсов меньше значения входной задержки этих компонентов. По умолчанию индикатор состояния параметра Insert Buffers to Prevent Pulse Swallowing находится в положении «включено», при котором в состав генерируемой модели добавляются буферные элементы для предотвращения исчезновения коротких импульсов.
С помощью параметра Other NETGEN Command Line Options можно указать дополнительные опции командной строки для программы NETGEN. Необходимые опции перечисляются через пробел в поле редактирования значения этого параметра после его активизации.
При выборе языка VHDL для описания генерируемой функциональной, частичной и полной временной модели становятся доступными параметры, представленные во второй части таблицы. Параметр Rename Top Level Entity to предоставляет возможность изменения названия для объекта верхнего уровня иерархии создаваемого VHDL-описания модели. По умолчанию, если значение этого параметра не определено, имя объекта верхнего уровня иерархии наследуется из модуля исходного описания проекта аппаратной части разрабатываемой встраиваемой системы. Чтобы указать другой идентификатор, нужно активизировать поле редактирования значения рассматриваемого параметра и воспользоваться клавиатурой.
Параметр Rename Top Level Architecture To позволяет изменить название архитектурного тела объекта, соответствующего верхнему уровню иерархии создаваемого VHDL-описания модели. По умолчанию в качестве имени архитектуры объекта верхнего уровня иерархии предлагается идентификатор STRUCTURE. Для изменения этого названия следует активизировать поле редактирования и воспользоваться клавиатурой.
Значение параметра Tristate On Configu-ration Pulse Width определяет длительность импульса, необходимого для моделирования компонентов, осуществляющих инициализацию глобальных цепей управления состоянием тристабильных выходов кристалла в начальный момент времени (Tristate on Configuration, TOC). Эта опция доступна только в том случае, если глобальная цепь управления тристабильными выходами кристалла не используется в качестве порта объекта, который представлен в описании верхнего уровня иерархии проекта аппаратной части разрабатываемой микропроцессорной системы (когда индикатор состояния параметра Bring Out Global Tristate Net as a Port установлен в положение «выключено»). Длительность указанного импульса задается в наносекундах в поле редактирования значения параметра Tristate On Configuration Pulse Width с помощью клавиатуры или кнопок, расположенных справа от этого поля редактирования. По умолчанию для данного параметра предлагается нулевое значение.
Значение параметра Reset On Configuration Pulse Width устанавливает длительность импульса, необходимого для моделирования компонентов, управляющих инициализацией глобальных цепей сброса/установки в начальный момент времени (Reset-On-Configuration, ROC). Эта опция применяется только в том случае, когда глобальная цепь сброса/установки программируемой логики кристалла не включается в качестве порта в описание интерфейса моделируемого объекта, представленного в описании верхнего уровня иерархии проекта (когда индикатор состояния параметра Bring Out Global Set/Reset Net as a Port находится в положении «выключено»). Длительность импульса, используемого при моделировании компонентов, управляющих инициализацией глобальных цепей сброса/установки в начальный момент времени, указывается в наносекундах в поле редактирования значения параметра Reset On Configuration Pulse Width теми же способами, что и значение параметра Tristate On Configuration Pulse Width. По умолчанию для параметра Reset On Configuration Pulse Width предлагается значение, равное 100 нс.
С помощью параметра Generate Architec-ture Only (No Entry Declaration) указывается состав формируемого описания функциональной, частичной и полной временной модели аппаратной части проектируемой микропроцессорной системы. Если индикатор состояния данного параметра установлен в положение «включено», то в составе генерируемого описания будет присутствовать только блок определения архитектуры соответствующего объекта. Причем блок декларации этого объекта и его интерфейса не включается в формируемое описание. По умолчанию индикатор состояния параметра Generate Architecture Only (No Entry Declaration) находится в положении «выключено», при котором генерируется полное описание соответствующего объекта.
Параметр Output Extended Identifiers используется для определения формы представления в выходном VHDL-файле идентификаторов, которые заданы в исходных файлах в расширенном формате. При установке индикатора состояния этого параметра во включенное положение указанные идентификаторы будут представлены в выходном файле также в расширенном формате. По умолчанию индикатор состояния параметра Output Extended Identifiers находится в положении «выключено».
Если для параметра Simulation Model Target, определяющего язык описания формируемой модели, указано значение Verilog, то в доступное состояние переключаются опции, расположенные в третьей части таблицы параметров. Параметр Rename Top Level Module To позволяет изменить название модуля верхнего уровня иерархии в описании модели, формируемом на языке Verilog. По умолчанию, если значение этого параметра не определено, то имя объекта верхнего уровня иерархии совпадает с идентификатором модуля верхнего уровня иерархии из файла исходного описания аппаратной части проектируемой микропроцессорной системы.
Значение параметра Include ‘uselib Directive in Verilog File разрешает или запрещает включение директивы uselib в состав каждого из формируемых файлов. Для большинства поддерживаемых средств моделирования рекомендуется использовать для данного параметра запрещающее значение, предлагаемое по умолчанию, когда соответствующий индикатор состояния находится в положении «выключено».
С помощью параметра Include $sdf_annotate task in Verilog File определяется необходимость включения конструкции $sdf_annotate в каждый формируемый файл списка соединений при генерации частичной или полной временной модели аппаратной части разрабатываемой встраиваемой системы. Если в качестве средств моделирования выбрана программа ISE Simulator, то по умолчанию индикатор состояния этого параметра установлен в положение «выключено», запрещающее добавление конструкции $sdf_annotate в каждый генерируемый файл списка соединений. Для всех других систем моделирования по умолчанию индикатор состояния параметра Include $sdf_annotate task in Verilog File находится в положении «включено».
Параметр Path Used in $sdf_annotate task позволяет разработчику указать раздел, в котором содержатся требуемые файлы *.SDF. Этот параметр применяется только при формировании частичной или полной временной модели в тех случаях, когда необходимые файлы *.SDF расположены вне рабочего каталога проекта. По умолчанию файлы *.SDF находятся в рабочем каталоге проекта аппаратной части разрабатываемой встраиваемой системы.
Значение параметра Do Not Escape Signal and Instance Names in Netlist определяет способ обработки идентификаторов сигналов и компонентов описания аппаратной части проектируемой микропроцессорной системы, в состав которых входят недопустимые символы. При установке индикатора состояния этого параметра в положение «включено» производится автоматическое исправление названий сигналов и компонентов, содержащих некорректные символы. В этом случае каждый недопустимый символ в названии автоматически заменяется символом подчеркивания. Если индикатор состояния параметра Do Not Escape Signal and Instance Names in Netlist находится в положении «выключено», предлагаемом по умолчанию, то некорректные идентификаторы сигналов и компонентов исключаются средствами генерации функциональной, частичной и полной временной модели аппаратной части разрабатываемой встраиваемой системы.
Параметр Include SIMPRIM Models in Verilog File применяется для управления включением модулей из унифицированной библиотеки SIMPRIM в каждый файл списка соединений, формируемый при моделировании, которое выполняется на различных фазах этапа реализации аппаратной части проектируемой микропроцессорной системы. Если индикатор состояния этого параметра установлен в положение «включено», можно не указывать пути доступа к библиотечным модулям SIMPRIM, но в этом случае возрастает размер формируемых файлов и длительность процесса компиляции. По умолчанию индикатор состояния параметра Include SIMPRIM Models in Verilog File находится в положении «выключено», которое запрещает внедрение библиотечных модулей SIMPRIM в создаваемые файлы.
С помощью параметра Automatically Insert glbl Module in the Netlist предоставляется возможность автоматического включения модуля glbl.v в состав списка соединений формируемой модели. По умолчанию индикатор состояния этого параметра установлен в положение «включено», разрешающее включение указанного модуля в состав списка соединений генерируемой модели.
Этап реализации аппаратной части проектируемой микропроцессорной системы в кристалле расширяемой вычислительной платформы
После установки требуемых значений параметров для всех процедур этапа реализации проекта аппаратной части разрабатываемой встраиваемой системы необходимо подтвердить их нажатием клавиши ОК, расположенной в нижней части диалоговой панели, представленной на рис. 53–58. Далее следует активизировать процесс реализации (Implementation) или поочередно каждую его фазу. Для активизации этого процесса в полном объеме нужно поместить курсор на строку Implement Design во встроенной панели Processes управляющей оболочки Project Navigator и дважды щелкнуть левой кнопкой мыши. Информация о ходе этапа реализации аппаратной части проектируемой микропроцессорной системы в кристалле расширяемой вычислительной платформы отображается на вкладке Console окна консольных сообщений и заносится в соответствующие отчеты. Завершение выполнения каждой фазы этого процесса отмечается соответствующей пиктограммой в строке с ее названием и сопровождается формированием отчета о полученных результатах. При обнаружении ошибок в процессе реализации аппаратной части разрабатываемой встраиваемой системы выполнение рассматриваемого этапа завершается на той фазе, при осуществлении которой возникла критическая ситуация. В случае появления различных предупреждений о возможных некорректных операциях, выполняемых в ходе данного процесса и не носящих критического характера, аварийного завершения этапа реализации не происходит.
Если проект аппаратной части встраиваемой микропроцессорной системы имеет достаточно большой объем, то рекомендуется поочередно активизировать каждую фазу процесса реализации и после ее завершения сразу же оценить полученные результаты. При получении результатов, далеких от оптимальных, последующие фазы процесса реализации выполнять нецелесообразно. В этом случае нужно скорректировать значения параметров для выполняемой фазы и/или внести соответствующие изменения в модуль временных и топологических ограничений, затем повторно активизировать эту фазу. Таким образом существенно сокращается суммарное время выполнения этапа реализации аппаратной части разрабатываемой встраиваемой системы.
Для поочередного запуска каждой фазы процесса реализации необходимо, прежде всего, во встроенной панели Processes развернуть рассматриваемый этап, поместив курсор на знак «+» в строке Implement Design и щелкнув левой кнопкой мыши. В результате встроенная панель Processes преобразуется к виду, показанному на рис. 59.
Активизация фазы трансляции проекта аппаратной части разрабатываемой встраиваемой системы, конфигурируемой на базе программируемой логики кристалла расширяемой процессорной платформы, осуществляется двойным щелчком левой кнопки мыши на строке Translate (рис. 59). Для запуска процедуры отображения логического описания аппаратной части проектируемой микропроцессорной системы на физические ресурсы программируемой логики используемого кристалла нужно аналогичным образом применить строку Map. Фаза размещения и трассировки проекта аппаратной части разрабатываемой встраиваемой системы в кристалле активизируется двойным щелчком левой кнопки мыши на строке Place & Route.
Для того чтобы оценить результаты выполнения каждой фазы этапа реализации, рекомендуется поочередно изучить соответствующие сформированные отчеты. Содержание всех информационных файлов, генерируемых в процессе выполнения этапа реализации, для наглядности представлено далее на примере отчетов о результатах трансляции, отображения логического описания проекта на физические ресурсы кристалла, размещения и трассировки проекта аппаратной части системы сбора и обработки данных, процесс синтеза которой был рассмотрен в предыдущей части статьи.
Отчет о выполнении процесса трансляции синтезированного описания аппаратной части проектируемой микропроцессорной системы
Для просмотра отчета о выполнении и результатах трансляции синтезированного описания аппаратной части разрабатываемой встраиваемой системы следует щелкнуть левой кнопкой мыши на строке Translation Report, которая расположена в разделе Detailed Reports вкладки Design Summary рабочей области основного окна Project Navigator. При этом содержание данного отчета отображается в новом рабочем окне встроенного HDL-редактора управляющей оболочки средств проектирования Xilinx ISE Design Suite.
Ниже представлен вариант отчета о трансляции синтезированного описания аппаратной части системы сбора и обработки данных, в котором содержатся сведения о каждом шаге этого процесса, а также об ошибках и предупреждениях. В начале отчета отображена информация о версии программы трансляции и командной строке, используемой для ее активизации:
Release 14.7 ngdbuild P.20131013 (nt64) Copyright (c) 1995-2013 Xilinx, Inc. All rights reserved. Command Line: C:\Xilinx\14.7\ISE_DS\ISE\bin\nt64\unwrapped\ngdbuild.exe -intstyle ise -dd _ngo -nt timestamp -uc PS_ARM_top.ucf -bm edkBmmFile.bmm -p xc7z020-clg484-1 PS_ARM_top.ngc PS_ARM_top.ngd
Затем приводятся сведения о чтении исходных файлов, содержащих синтезированные описания модулей проекта, а также файлов временных и топологических ограничений для этих модулей:
Reading NGO file “D:/Emb_PRJ/New_Sys/PS_ARM_top.ngc” … Loading design module “D:\Emb_PRJ\New_Sys/PS_ARM.ngc”… Loading design module “D:\Emb_PRJ\New_Sys/PS_ARM_processing_system7_0_wrapper.ngc”… Loading design module “D:\Emb_PRJ\New_Sys/PS_ARM_axi_interconnect_1_wrapper.ngc”… Loading design module “D:\Emb_PRJ\New_Sys/PS_ARM_axi_gpio_0_wrapper.ngc”… Applying constraints in “D:\Emb_PRJ\New_Sys/PS_ARM_processing_system7_0_wrapper.ncf” to module “PS_ARM_i/processing_system7_0”… Checking Constraint Associations… Applying constraints in “D:\Emb_PRJ\New_Sys/PS_ARM_axi_interconnect_1_wrapper.ncf” to module “PS_ARM_i/axi_interconnect_1”… Checking Constraint Associations… Gathering constraint information from source properties... Done…
Далее следует информация об удалении избыточных компонентов, включенных в состав аппаратной части проектируемой микропроцессорной системы, но не используемых для осуществления каких-либо функций:
INFO:NgdBuild:649 - Removing redundant ‘IBUF’ symbol ‘processing_system7_0_PS_PORB_pin_IBUF’. All constraints associated with this symbol will be ignored. INFO:NgdBuild:649 - Removing redundant ‘IBUF’ symbol ‘processing_system7_0_PS_CLK_pin_IBUF’. All constraints associated with this symbol will be ignored. INFO:NgdBuild:649 - Removing redundant ‘IBUF’ symbol ‘processing_system7_0_PS_SRSTB_pin_IBUF’. All constraints associated with this symbol will be ignored.
Следующий раздел отчета информирует о результатах анализа временных ограничений. Этот раздел содержит также предупреждения о несоответствии некоторых установленных ограничений:
Annotating constraints to design from ucf file “PS_ARM_top.ucf” … Resolving constraint associations… Checking Constraint Associations… WARNING:ConstraintSystem:135 - Constraint <INST /PS_ARM_top/EXPANDED/PS_ARM_top/PS_ARM_i/axi_interconnect_1/axi_interconnect_ 1\/si_converter_bank\/gen_conv_slot[0].clock_conv_inst\/interconnect_aresetn_ resync<2>_inv1_INV_0 TNM = FFS:axi_int…>: No instances of type FFS were found under block “PS_ARM_i/axi_interconnect_1/axi_interconnect_1/si_converter_bank/gen_conv_sl ot[0].clock_conv_inst/interconnect_aresetn_resync<2>_inv1_INV_0” (type=INV). WARNING:ConstraintSystem:58 - Constraint <TIMEGRP axi_interconnect_1_reset_source = FFS PADS CPUS;>: CPUS “*” does not match any design objects. WARNING:ConstraintSystem:194 - The TNM ‘axi_interconnect_1_reset_resync’, does not directly or indirectly drive any flip-flops, latches and/or RAMs and is not actively used by any referencing constraint. Done…
После этого приводятся сведения о чтении файлов, определяющих содержимое элементов блочной памяти. В рассматриваемом проекте такие файлы не используются, о чем информирует соответствующее предупреждение:
Processing BMM file “edkBmmFile.bmm” … WARNING::53 - File ‘edkBmmFile.bmm’ is empty or has no BMM content.
Далее представлены результаты верификации развернутой логической структуры проекта. Этот раздел содержит предупреждения об отсутствии источника сигнала для указанных цепей аппаратной части разрабатываемой встраиваемой системы.
Checking expanded design … WARNING:NgdBuild:452 - logical net ‘N138’ has no driver WARNING:NgdBuild:452 - logical net ‘N139’ has no driver WARNING:NgdBuild:452 - logical net ‘N140’ has no driver … WARNING:NgdBuild:452 - logical net ‘N269’ has no driver WARNING:NgdBuild:452 - logical net ‘N270’ has no driver WARNING:NgdBuild:452 - logical net ‘N271’ has no driver
В следующей части отчета представлена информация о разбиении проекта на разделы. В рассматриваемом проекте такое разбиение отсутствует:
Partition Implementation Status ------------------------------------ No Partitions were found in this design. ------------------------------------
Предпоследний раздел отчета предоставляет сведения о суммарном количестве ошибок и предупреждений, сгенерированных в процессе трансляции проекта, а также об используемом объеме оперативной памяти:
NGDBUILD Design Results Summary: Number of errors: 0 Number of warnings: 137 Total memory usage is 232500 kilobytes
Завершает рассматриваемый отчет информация о формировании файла в формате Xilinx *.NGD, который содержит основные результаты процесса трансляции, времени выполнения этого процесса и записи отчета в текстовый файл *.BLD:
Writing NGD file “PS_ARM_top.ngd” … Total REAL time to NGDBUILD completion: 12 sec Total CPU time to NGDBUILD completion: 12 sec Writing NGDBUILD log file “PS_ARM_top.bld”…
Продолжение следует.
- XST User Guide for Virtex‑6, Spartan‑6, and 7 Series Devices. — Xilinx, 2012.
- Synthesis and Simulation Design Guide. — Xilinx, 2012.