Научная статья на тему 'ПРОЕКТИРОВАНИЕ ВСТРАИВАЕМЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА БАЗЕ РАСШИРЯЕМЫХ ПРОЦЕССОРНЫХ ПЛАТФОРМ СЕМЕЙСТВА ZYNQ‑7000 AP SOC В САПР XILINX ISE DESIGN SUITE'

ПРОЕКТИРОВАНИЕ ВСТРАИВАЕМЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА БАЗЕ РАСШИРЯЕМЫХ ПРОЦЕССОРНЫХ ПЛАТФОРМ СЕМЕЙСТВА ZYNQ‑7000 AP SOC В САПР XILINX ISE DESIGN SUITE Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
36
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «ПРОЕКТИРОВАНИЕ ВСТРАИВАЕМЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА БАЗЕ РАСШИРЯЕМЫХ ПРОЦЕССОРНЫХ ПЛАТФОРМ СЕМЕЙСТВА ZYNQ‑7000 AP SOC В САПР XILINX ISE DESIGN SUITE»

Продолжение. начало в № 4'2014

Валерий ЗОТОВ

[email protected]

Проектирование встраиваемых микропроцессорных систем

на базе расширяемых процессорных платформ семейства Zynq-7000 AP SoC в САПР Xilinx ISE Design Suite

Краткое описание параметров синтеза

Страница HDL options

На странице HDL Options диалоговой панели параметров синтеза, чей вид показан на рис. 44, представлены параметры, предназначенные для управления методом кодирования некоторых объектов HDL-описаний аппаратной части разрабатываемой микропроцессорной системы, реализуемой на базе ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC.

Параметр FsM Encoding Algorithm управляет выбором метода кодирования конечных автоматов (Finite State Machine, FSM). Выпадающий список возможных значений этого параметра содержит девять вариантов: Auto, One-Hot, Compact, Sequential, Gray, Johnson, Speedl, User и None. Значение Auto, установленное по умолчанию, позволяет средствам синтеза автоматически выбрать для каждого конечного автомата наилучший алгоритм кодирования. Метод One-Hot гарантирует, что каждый отдельный регистр предназначен для реализации одного состояния, то есть в любой момент времени активен только один триггер. Алгоритм Compact позволяет минимизировать количество триггеров при синтезе конечного автомата. При выборе варианта Sequential используется метод, заключающийся в идентификации длинных ветвей и применении последовательности двоичных кодов для представления состояний этих ветвей.

Рис. 44. Вид страницы HDL Options диалоговой панели параметров синтеза

Метод Gray, гарантирующий переключение только одной переменной между двумя последовательными состояниями, минимизирует риск возникновения паразитных импульсов. Алгоритм Johnson целесообразно применять при синтезе конечных автоматов, описания которых содержат длинные цепочки без ветвлений. Вариант Speed1 следует указывать, прежде всего, в том случае, когда в качестве критерия оптимизации, выполняемой в процессе синтеза, выбирается достижение максимального быстродействия аппаратной части проектируемой встраиваемой системы. Значение User предписывает средствам синтеза использовать алгоритм кодирования, представленный в файле исходного описания. При выборе варианта None запрещается автоматическое кодирование конечных автоматов.

Параметр safe Implementation предусматривает выбор безопасного метода реализации конечных автоматов FSM. При разрешающем значении (YES) этого параметра в состав конечных автоматов добавляется специальная логика, которая при обнаружении непредусмотренного (недопустимого) состояния возвращает разрабатываемую систему в исходное состояние, позволяющее вернуться к нормальному выполнению операций. По умолчанию для параметра safe Implementation используется вариант NO, при котором специальная логика в составе конечных автоматов не применяется.

С помощью параметра Case Implementation style определяется способ реализации операторов Case при синтезе Verilog-описаний. Выпадающий список значений этого параметра содержит четыре варианта: None, Full, Parallel и Full-Parallel. При синтезе описаний аппаратной части разрабатываемых встраиваемых систем, предназначенных для последующей реализации на базе ресурсов программируемой логики PL кристаллов расширяемых процессорных платформ семейства Zynq-7000 AP SoC, для параметра Case Implementation style по умолчанию установлено значение None.

Значение параметра FsM style определяет тип элементов, используемых для реализации конечных автоматов, входящих в состав описания аппаратной части проектируемой микропроцессорной системы. Конечные автоматы могут быть выполнены на базе таблиц преобразования Look-Up Table (LUT) или модулей блочной памяти Block RAM, представленных в составе программируемой логики PL кристаллов расширяемых процессорных платформ. По умолчанию для данного параметра предлагается вариант LUT, при котором для реализации конечных автоматов применяются ресурсы таблиц преобразования. Чтобы использовать для этих целей ресурсы блочной памяти кристалла, нужно в выпадающем списке возможных значений рассматриваемого параметра выбрать вариант Block RAM.

Параметр Ram extraction позволяет включить или выключить режим извлечения макросов ОЗУ (RAM) в процессе синтеза аппаратной части разрабатываемой микропроцессорной системы. По умолчанию индикатор состояния этого параметра установлен в положение

«Включено», при котором средствам синтеза Xilinx Synthesis Tool (XST) разрешается выделение макросов ОЗУ в исходном коде HDL-описания.

С помощью параметра RAM style указывается способ реализации макросов ОЗУ, выделяемых средствами синтеза XST. Выпадающий список возможных значений этого параметра содержит три варианта: Auto, Distributed, Block. По умолчанию используется значение Auto, при котором средства синтеза XST для каждого идентифицированного макроса ОЗУ автоматически устанавливают тип памяти, представленной в составе программируемой логики, обеспечивающий его оптимальную реализацию. При выборе значения Distributed все синтезированные макросы ОЗУ представляются на этапе реализации в виде распределенной памяти. Значение Block определяет последующую реализацию всех макросов ОЗУ на базе модулей блочной памяти (Block RAM) ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC.

Значение параметра RoM Extraction разрешает или запрещает средствам синтеза XST извлечение макросов ПЗУ (ROM). По умолчанию индикатор состояния этого параметра находится во включенном положении, разрешающем выделение макросов постоянных запоминающих устройств в исходных HDL-описаниях проекта аппаратной части разрабатываемой микропроцессорной системы. Обычно макросы ПЗУ могут создаваться (извлекаться) из операторов выбора (Case), в которых присваиваемые значения являются постоянными величинами.

Параметр RoM style предназначен для выбора способа реализации макросов ПЗУ, извлекаемых средствами синтеза XST. В выпадающем списке допустимых значений данного параметра представлено три варианта: Auto, Distributed, Block. По умолчанию установлено значение Auto, при котором для каждого идентифицированного макроса ПЗУ средства синтеза автоматически выбирают тип памяти кристалла, обеспечивающий оптимальную реализацию этого макроса. Если для рассматриваемого параметра указано значение Distributed, то все синтезированные макросы ПЗУ представляются в виде, соответствующем последующей реализации на основе распределенной памяти ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC. Выбор варианта Block обеспечивает последующую реализацию всех синтезированных макросов ПЗУ на основе модулей блочной памяти Block RAM.

С помощью параметра automatic BRAM Packing разработчик может установить режим синтеза элементов запоминающих устройств, реализуемых на базе ресурсов блочной памяти кристалла, при котором два элемента однопортовой памяти автоматически объединяются (упаковываются) в один примитив двухпортового запоминающего устройства. При этом следует учитывать, что объединяемые элементы блочной памяти должны соответствовать одному уровню иерархии проекта аппаратной части разрабатываемой встраиваемой системы. По умолчанию индикатор состояния параметра Automatic BRAM Packing находится в положении «Выключено», при котором упаковка элементов блочной памяти не производится.

Параметр shift Register extraction разрешает или запрещает извлечение макросов регистров сдвига в процессе синтеза. По умолчанию индикатор состояния этого параметра установлен в положение «Включено», разрешающее средствам синтеза XST выделение макросов сдвиговых регистров в исходном коде HDL-описания аппаратной части проектируемой микропроцессорной системы.

Значение параметра shift Register Minimum size определяет минимальную длину регистров сдвига, для реализации которых используются соответствующие ресурсы (SRL) программируемой логики PL кристаллов расширяемых процессорных платформ. По умолчанию для указанного параметра установлено значение, равное двум. Для его изменения следует активизировать соответствующее поле редактирования и воспользоваться клавиатурой.

Параметр Resource sharing разрешает или запрещает совместное использование ресурсов арифметическими операторами. По умолчанию для данного параметра предлагается разрешающее значение, отображаемое маркером на поле соответствующего индикатора состояния.

С помощью параметра use DsP Block определяется возможность применения аппаратных модулей цифровой обработки сигналов DSP48E1 для реализации соответствующих макросов в составе аппаратной части разрабатываемых микропроцессорных систем. Выпадающий список возможных значений этого параметра включает три варианта: Auto, Yes, No. По умолчанию данный параметр принимает значение Auto, при котором средства синтеза автоматически определяют наиболее эффективный вариант реализации соответствующих макросов. Если для параметра use DsP48 указано значение Yes, то в процессе синтеза аппаратной части проектируемой встраиваемой системы блоки цифровой обработки сигналов будут задействованы там, где это возможно. При выборе варианта No синтез аппаратной части разрабатываемой микропроцессорной системы осуществляется с учетом последующей реализации соответствующих макросов на базе стандартных ресурсов (конфигурируемых логических блоков) программируемой логики PL кристаллов семейства Zynq-7000 AP SoC.

Параметр Asynchronous to synchronous разрешает или запрещает в процессе синтеза аппаратной части проектируемой встраиваемой системы преобразование сигналов (цепей) асинхронного сброса и установки в сигналы синхронного сброса и установки. По умолчанию для этого параметра используется значение No, запрещающее преобразование указанных сигналов.

Страница Xilinx specific options

Страница Xilinx Specific Options диалоговой панели параметров синтеза, вид которой приведен на рис. 45, содержит параметры, учитывающие требования средств размещения и трассировки САПР серии Xilinx ISE Design Suite.

Параметр add I/o Buffers разрешает или запрещает автоматическое подключение входных и выходных буферных элементов к цепям модуля исходного описания верхнего уровня иерархии проекта, которые предназначены для соединения с выводами кристалла расширяемой процессорной платформы. По умолчанию установлено разрешающее значение этого параметра (соответствующий индикатор состояния находится в положении «Включено»). Если входные и выходные буферные элементы были добавлены в состав модуля исходного описания проекта аппаратной части встраиваемой системы на стадии его разработки, то следует изменить состояние индикатора параметра add I/o Buffers на противоположное («Выключено»), запрещающее автоматическое подключение этих элементов.

Значение параметра Max Fanout устанавливает максимально допустимое количество ветвлений цепей в процессе синтеза. Наличие цепей с большим количеством ветвлений создает проблемы в про-

цессе их последующей трассировки. Чтобы исключить возникновение таких проблем, с помощью параметра Max Fanout задается предельное значение, ограничивающее количество разветвлений результирующих цепей. Средства синтеза могут сократить количество разветвлений за счет дублирования соответствующих регистров и вентилей, а также за счет установки дополнительных буферных элементов. Значение, предлагаемое по умолчанию для рассматриваемого параметра, зависит от выбранного семейства кристаллов. При реализации проектируемой встраиваемой системы на базе кристаллов расширяемых процессорных платформ семейства Zynq-7000 AP SoC параметр Max Fanout по умолчанию принимает значение, равное 100 ООО.

С помощью параметра Number of Clock Buffers определяется максимальное количество глобальных буферных элементов, создаваемых средствами XST при синтезе аппаратной части разрабатываемой микропроцессорной системы. Задаваемое значение этого параметра должно соответствовать объему глобальных ресурсов, который указан в справочных данных для выбранного типа кристалла. Значение, предлагаемое по умолчанию для параметра Number of Clock Buffers, также определяется типом кристалла, используемого для реализации проектируемой встраиваемой системы. В частности, для кристалла XC7Z020, установленного на отладочной плате ZedBoard, используемой для реализации простейшей системы сбора и обработки данных, это значение равно 32.

Значение параметра Register Duplication разрешает или запрещает средствам синтеза дублирование регистров при временной оптимизации и сокращении количества разветвлений цепей. По умолчанию индикатор состояния этого параметра установлен в положение «Включено», разрешающее средствам синтеза дублирование регистров в процессе синтеза аппаратной части разрабатываемой микропроцессорной системы.

Параметр Equivalent Register Removal управляет оптимизацией триггеров в процессе синтеза. При разрешающем значении этого параметра, которое задано по умолчанию, средства синтеза исключают из состава описания аппаратной части проектируемой встраиваемой системы триггеры, выполняющие эквивалентные функции, а также триггеры, входные сигналы которых имеют постоянный уровень, не изменяющийся в процессе функционирования системы.

Параметр Register Balancing используется для повышения производительности аппаратной части разрабатываемой микропроцессорной системы за счет перемещения триггеров относительно логики. Выпадающий список возможных значений данного параметра содержит четыре варианта: Yes, No, Forward и Backward. По умолчанию установлено значение No, запрещающее перестановку триггеров. Вариант Yes разрешает перестановку триггеров как в прямом, так и в обратном направлении. При выборе значения Forward перемещение разрешается только в прямом направлении, то есть триггеры на входах таблицы преобразования LUT заменяются триггером на ее выходе. Вариант Backward допускает только обратное перемещение триггеров, при котором триггер на выходе LUT преобразуется в серию триггеров на ее входах.

С помощью параметра Move First Flip-Flop stage расширяются возможности применения опции Register Balancing. По умолчанию индикатор состояния рассматриваемого параметра находится в положении «Включено», при котором в процессе перестановки триггеров могут участвовать и триггеры, подключаемые к входным контактам кристалла. Установка этого индикатора в состояние «Выключено» позволяет исключить из процесса перемещения входные триггеры.

Параметр Move Last Flip-Flop stage оказывает аналогичное влияние на применение опции Register Balancing в процессе синтеза аппаратной части проектируемой микропроцессорной системы. По умолчанию индикатор состояния указанного параметра установлен в положение «Включено», разрешающее использование в процессе перестановки триггеров, подключаемых к выходным контактам кристалла. При переводе этого индикатора в выключенное состояние выходные триггеры исключаются из процесса перемещения. Следует обратить

внимание на то, что опции Move First Flip-Flop Stage и Move Last FlipFlop Stage доступны для использования только если для параметра Register Balancing выбрано значение, допускающее перестановку триггеров (Yes, Forward или Backward). Для параметров Move First Flip-Flop stage и Move Last Flip-Flop stage рекомендуется использовать значения, установленные по умолчанию.

С помощью параметра Pack I/O Registers into IOBs осуществляется управление компоновкой триггеров в блоки ввода/вывода на этапе синтеза. В выпадающем списке доступных значений этого параметра представлено три варианта: Auto, Yes и No. Значение Auto, установленное по умолчанию, предписывает средствам синтеза выполнять упаковку триггеров в блоки ввода/вывода при условии соблюдения требований временных спецификаций. При выборе варианта Yes средства синтеза используют триггеры, входящие в состав блоков ввода/вывода, везде, где это возможно. Значение No запрещает средствам синтеза поглощение входных и выходных триггеров.

Параметр LUT Combining предоставляет возможность объединения двух таблиц преобразования с общими входами в одну 6-входо-вую таблицу преобразования с двумя выходами, обеспечивая тем самым уменьшение объема используемых ресурсов программируемой логики кристалла расширяемой процессорной платформы. При этом следует учитывать, что такая оптимизация может привести к снижению быстродействия аппаратной части проектируемой встраиваемой системы, реализуемой на базе ресурсов программируемой логики. Выпадающий список возможных значений рассматриваемого параметра содержит три варианта: No, Auto и Area. Значение No запрещает объединение таблиц преобразования в процессе синтеза аппаратной части разрабатываемой микропроцессорной системы. Вариант Auto, предлагаемый по умолчанию, разрешает выполнять комбинирование таблиц преобразования с учетом достижения компромисса между сокращением объема используемых ресурсов программируемой логики и снижением быстродействия. В случае выбора варианта Area средства синтеза осуществляют объединение максимального числа пар таблиц преобразования, обеспечивая минимизацию области программируемой логики, занимаемой аппаратной частью проектируемой встраиваемой системы.

Значение параметра Reduce Control sets определяет возможность сокращения числа управляющих сигналов в процессе синтеза. Такая оптимизация, выполняемая в ходе данного процесса, позволяет уменьшить количество секций конфигурируемых логических блоков, используемых для реализации аппаратной части разрабатываемой микропроцессорной системы. В выпадающем списке возможных значений этого параметра представлено два варианта: No и Auto. Значение No запрещает средствам синтеза выполнять указанную дополнительную оптимизацию. Вариант Auto, предлагаемый по умолчанию для рассматриваемого параметра, позволяет автоматически при синтезе оптимизировать количество сигналов управления.

С помощью параметра Use Clock Enable указывается возможность использования входов сигналов разрешения синхронизации Clock Enable в триггерах синтезируемой аппаратной части проектируемой встраиваемой системы. Выпадающий список доступных значений этого параметра включает три варианта: Auto, Yes и No. При выборе значения Auto средства синтеза в каждом конкретном случае автоматически определяют необходимость использования входов сигналов разрешения синхронизации в триггерах. Значение Yes разрешает задействовать входы разрешения синхронизации в триггерах синтезируемой аппаратной части разрабатываемой микропроцессорной системы. Вариант No запрещает использование входов сигналов разрешения синхронизации. По умолчанию при синтезе аппаратной части проектируемых встраиваемых систем, реализуемой на базе программируемой логики PL кристаллов расширяемых процессорных платформ семейства Zynq-7000 AP SoC, для параметра Use Clock Enable установлено значение Auto.

Значение параметра Use synchronous set определяет возможность применения входов сигналов синхронной установки в триггерах синтезируемой аппаратной части разрабатываемой встраиваемой

системы. В выпадающем списке доступных значений этого параметра представлены те же варианты, что и для параметра use Clock Enable. Если для параметра use synchronous set указано значение Auto, то средства синтеза автоматически оценивают эффективность использования входов сигналов синхронной установки в триггерах для каждого конкретного случая и выбирают оптимальный вариант. При выборе значения Yes входы синхронной установки будут задействованы в триггерах синтезируемой аппаратной части проектируемой микропроцессорной системы. Выбор значения No устанавливает запрет на использование входов синхронной установки. Параметр use synchronous set по умолчанию принимает то же значение, что и параметр use Clock Enable.

С помощью параметра use synchronous Reset осуществляется управление использованием входов синхронного сброса в триггерах синтезируемой аппаратной части разрабатываемой встраиваемой системы. Выпадающий список возможных значений данного параметра предусматривает те же варианты, что и для параметра use synchronous set. Эти значения соответствуют аналогичным вариантам применения входов синхронного сброса в триггерах синтезируемого описания. По умолчанию при синтезе аппаратной части проектируемых встраиваемых систем, реализуемых на базе кристаллов семейства Zynq-7000 AP SoC, для параметра use synchronous reset предлагается вариант Auto.

Параметр optimize Instantiated Primitives позволяет выбрать режим оптимизации примитивов, используемых в составе синтезируемого описания. По умолчанию индикатор состояния этого параметра находится в положении «Выключено», которое запрещает оптимизацию примитивов в процессе синтеза аппаратной части разрабатываемой микропроцессорной системы. При установке указанного индикатора состояния в положение «Включено» средства синтеза дополнительно выполняют оптимизацию используемых примитивов.

После выбора необходимых значений параметров синтеза следует подтвердить их нажатием клавиши ОК в нижней части диалоговой панели, представленной на рис. 43-45. Затем можно перейти непосредственно к выполнению этапа синтеза аппаратной части проектируемой встраиваемой системы, конфигурируемой на базе ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC.

Синтез аппаратной части проектируемой системы, реализуемой на базе ресурсов программируемой логики PL кристаллов

Процесс синтеза аппаратной части разрабатываемой микропроцессорной системы, конфигурируемой на базе ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC, активизируется двойным щелчком левой кнопки мыши на строке Synthesize — XST во встроенной панели Processes Project Navigator (рис. 37). При этом в начале указанной строки появляется пиктограмма Í, которая информирует о том, что данный процесс находится в стадии выполнения. Сведения о ходе выполнения этапа синтеза последовательно выводятся на вкладке Console окна консольных сообщений. После окончания этого процесса в начале строки Synthesize — XST отображается пиктограмма, вид которой информирует о характере завершения данного этапа. Возможны следующие варианты завершения ироцессов, выполняемых в среде САПР серии Xilinx ISE Design Suite:

— текущий процесс выполнен успешно без каких-либо ошибок и предупреждений;

_L — процедура исполнена без ошибок, но имеются предупреждения; О — при выполнении процесса обнаружены ошибки; . — результаты выполнения процесса устарели (не соответствуют исходным данным).

Последовательность осуществления этапа синтеза аппаратной части проектируемой микропроцессорной системы, реализуемой на базе ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC, в наглядной форме представлена на рис. 46.

Рассматриваемый этап включает три фазы — HDL Parsing, HDL Synthesis и Low Level Optimization. На первой фазе процесса синтеза (HDL Parsing) производится проверка корректности HDL-кода, представленного в модулях исходного описания аппаратной части разрабатываемой встраиваемой системы. При обнаружении синтаксических ошибок формируются соответствующие сообщения, которые отображаются на вкладке Console консольной области Project Navigator и заносятся в детализированный отчет о выполнении процесса синтеза.

Фаза HDL Synthesis представляет собой собственно процедуру синтеза, в ходе которой делаются попытки выделения различных блоков описания и макросов, наиболее точно подходящих для последующей реализации на базе ресурсов программируемой логики (например, мультиплексоров, сумматоров, вычитающих устройств, ОЗУ). Средствами синтеза осуществляется также распознавание описаний конечных автоматов FSM с учетом выбранного метода кодирования. В процессе синтеза учитываются установленные значения параметров, рассмотренных в предыдущих разделах, и ограничения, содержащиеся в файле XST Constraint File (XCF).

На заключительной фазе процесса синтеза (Low Level Optimization) производится низкоуровневая оптимизация, в ходе выполнения которой выделенные макросы и связывающая логика преобразуются к виду, соответствующему архитектурно-технологическим особенностям программируемой логики используемого кристалла. При осуществлении этой оптимизации в синтезируемом списке соединений выделяются такие элементы, как:

• логика ускоренного переноса Carry logic (MUXCY, XORCY, MULT_ AND);

• оперативная память (блочные и распределенные ОЗУ);

• регистры сдвига, конфигурируемые на базе таблиц преобразования LUT (SRL16, SRL32);

• глобальные буферные элементы, предназначенные для распределения сигналов синхронизации Clock Buffers (IBUFG, BUFG, BUFGP, BUFR);

• мультиплексоры расширения (MUXF5, MUXF6, MUXF7, MUXF8);

• арифметические устройства, реализуемые на основе аппаратных секций цифровой обработки сигналов (DSP48E1).

Для того чтобы получить более подробную информацию о ходе и результатах выполнения этапа синтеза аппаратной части проектируемой встраиваемой системы, можно открыть детализированный отчет о выполнении процесса синтеза. Для этого нужно, прежде все-

HDL-описание аппаратной част проектируемой системы

Xilinx Synthesis Technology (XST)

Процесс синтеза

HDL Parsing

i

HDL Synthesis

V J

i

Low Level Optimization

V У

±

±

±

Список соединений на уровне RTL (файл NGR)

Синтезированный список соединений (файл NGC)

Отчет о результатах

синтеза (файл SYR)

—N

Рис. 46. Последовательность выполнения этапа синтеза аппаратной части разрабатываемой микропроцессорной системы

Рис. 47. Открытие отчета о результатах процесса синтеза аппаратной части разрабатываемой микропроцессорной системы

го, открыть вкладку Design Summary рабочей области основного окна Project Navigator, выполнив команду Design Summary/Reports из всплывающего меню Project. На указанной вкладке, вид которой представлен на рис. 47, следует развернуть раздел Detailed Reports, после чего необходимо поместить курсор на строку Synthesis Report и щелкнуть левой кнопкой мыши. При этом открывается новое окно встроенного HDL-редактора (в режиме только чтения), в котором отображается сформированный подробный отчет.

Структура детализированного отчета о выполнении и результатах процесса синтеза аппаратной части проектируемой встраиваемой системы

Детализированный отчет о выполнении процесса синтеза аппаратной части разрабатываемой микропроцессорной системы, конфигурируемой на базе ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC, содержит восемь основных разделов, выделенных двойными штриховыми линиями. Для большей наглядности структура этого отчета рассматривается ниже на примере простейшей системы сбора и обработки данных, проект аппаратной части которой был подготовлен в предыдущих разделах. В начале рассматриваемого документа приведена информация об используемой версии средств синтеза и о содержании сформированного отчета:

Release 14.7 - xst P.20131013 (nt64)

Copyright (c) 1995-2013 Xilinx, Inc. All rights reserved.

--> Parameter TMPDIR set to xst/projnav.tmp

Total REAL time to Xst completion: 0.00 sees Total CPU time to Xst completion: 0.11 sees

-- > Parameter xsthdpdir set to xst

Total REAL time to Xst completion: 0.00 secs Total CPU time to Xst completion: 0.11 secs

--> Reading design: PS_ARM_top.prj

TABLE OF CONTENTS

1) Synthesis Options Summary

2) HDL Parsing

3) HDL Elaboration

4) HDL Synthesis

4.1) HDL Synthesis Report

5) Advanced HDL Synthesis

5.1) Advanced HDL Synthesis Report

6) Low Level Synthesis

7) Partition Report

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

8) Design Summary

8.1) Primitive and Black Box Usage

8.2) Device utilization summary

8.3) Partition Resource Summary

8.4) Timing Report

8.4.1) Clock Information

8.4.2) Asynchronous Control Signals Information

8.4.3) Timing Summary

8.4.4) Timing Details

8.4.5) Cross Clock Domains Report

В первом разделе отчета — Synthesis Options Summary—указаны установленные значения параметров синтеза, рассмотренных выше, и некоторых общих параметров проекта (семейство и тип используемого кристалла расширяемой процессорной платформы), а также форматы входных и выходных файлов:

* Synthesis Options Summary *

— Source Parameters

Input File Name : "PS_ARM_top.prj" Ignore Synthesis Constraint File : NO

— Target Parameters

Output File Name : "PS_ARM_top"

Output Format : NGC

Target Device : xc7z020-1-clg484

— Source Options

Top Module Name : PS_ARM_top Automatic FSM Extraction : YES FSM Encoding Algorithm : Auto Safe Implementation : No FSM Style : LUT RAM Extraction : Yes RAM Style : Auto ROM Extraction : Yes Shift Register Extraction : YES ROM Style : Auto Resource Sharing : YES Asynchronous To Synchronous : NO Shift Register Minimum Size : 2 Use DSP Block : Auto Automatic Register Balancing : No

---- Target Options

LUT Combining : Auto Reduce Control Sets : Auto Add IO Buffers : YES Global Maximum Fanout : 100000 Add Generic Clock Buffer(BUFG) : 32 Register Duplication : YES Optimize Instantiated Primitives : NO Use Clock Enable : Auto Use Synchronous Set : Auto Use Synchronous Reset : Auto Pack IO Registers into IOBs : Auto Equivalent register Removal : YES

---- General Options

Optimization Goal : Speed Optimization Effort : 1 Power Reduction : NO Keep Hierarchy : No Netlist Hierarchy : As_Optimized RTL Output : Yes

Global Optimization : AllClockNets Read Cores : YES Write Timing Constraints : NO Cross Clock Analysis : NO

Hierarchy Separator : / Bus Delimiter : <> Case Specifier : Maintain Slice Utilization Ratio : 100 BRAM Utilization Ratio : 100 DSP48 Utilization Ratio : 100 Auto BRAM Packing : NO Slice Utilization Ratio Delta : 5

Второй раздел — HDL Parsing — содержит информацию о ходе синтаксического анализа объектов исходных описаний в соответствии с иерархией проекта аппаратной части разрабатываемой встраиваемой системы:

В третьем разделе отчета — HDL Elaboration — приведены сведения о последовательности обработки объектов исходных описаний, представленных в составе иерархической структуры сформированного описания аппаратной части проектируемой микропроцессорной системы:

В четвертом разделе — HDL Synthesis — содержится информация о последовательности синтеза обработанных объектов исходных описаний аппаратной части разрабатываемой встраиваемой системы. В отдельной секции этого раздела расположены данные об обнаруженных макросах:

В пятом разделе отчета — Advanced HDL Synthesis — приводятся сведения о последовательности выполнения и результатах очередной фазы синтеза, в процессе которой осуществляется чтение IP-ядер, применяемых в составе аппаратной части проектируемой микропроцессорной системы:

* Advanced HDL Synthesis *

Reading core <PS_ARM.ngc>.

Reading core <PS_ARM_processing_system7_0_wrapper.ngc>.

Reading core <PS_ARM_axi_interconnect_1_wrapper.ngc>.

Reading core <PS_ARM_axi_gpio_0_wrapper.ngc>.

Loading core <PS_ARM_processing_system7_0_wrapper> for timing

and area information for instance <processing_system7_0>.

Loading core <PS_ARM_axi_interconnect_1_wrapper> for timing and

area information for instance <axi_interconnect_1>.

Loading core <PS_ARM_axi_gpio_0_wrapper> for timing and area

information for instance <axi_gpio_0>.

Loading core <PS_ARM> for timing and area information for instance <PS_ARM_i>.

Advanced HDL Synthesis Report Found no macro

Шестой раздел отчета — Low Level Synthesis — отображает последовательность и результаты оптимизации, выполняемой в процессе низкоуровневого синтеза:

* Low Level Synthesis *

WARNING:Xst:528 - Multi-source in Unit <processing_system7_0> on signal <PS_SRSTB>; this signal is connected to multiple drivers. Drivers are:

Primary input port <processing_system7_0_PS_SRSTB_pin> Output port PS7:PSSRSTB of instance <PS_ARM_i/processing_ system7_0/processing_system7_0/PS7_i>

WARNING:Xst:528 - Multi-source in Unit <processing_system7_0> on signal <PS_CLK>; this signal is connected to multiple drivers. Drivers are:

Primary input port <processing_system7_0_PS_CLK_pin> Output port PS7:PSCLK of instance <PS_ARM_i/processing_ system7_0/processing_system7_0/PS7_i>

WARNING:Xst:528 - Multi-source in Unit <processing_system7_0> on signal <PS_PORB>; this signal is connected to multiple drivers. Drivers are:

Primary input port <processing_system7_0_PS_P0RB_pin> Output port PS7:PSPORB of instance <PS_ARM_i/processing_ system7_0/processing_system7_0/PS7_i>

Optimizing unit <PS_ARM_top> ...

Mapping all equations...

Building and optimizing final netlist ...

Found area constraint ratio of 100 (+ 5) on block PS_ARM_top, actual ratio is 0.

INFO:Xst:2260 - The FF/Latch <ax_interconnect_1/crossbar_samd/gen_

sasd.crossbar_sasd_0/m_atarget_enc_0> in Unit <axi_interconnect_1>

is equivalent to the following FF/Latch : <axi_interconnect_1/crossbar_

samd/gen_sasd.crossbar_sasd_0/m_atarget_enc_0_1>

INFO:Xst:2260 - The FF/Latch <axi_interconnect_1/crossbar_samd/

gen_sasd.crossbar_sasd_0/gen_crossbar.addr_arbiter_inst/grant_rnw>

in Unit <axi_interconnect_1> is equivalent to the following FF/Latch

: <axi_interconnect_1/crossbar_samd/gen_sasd.crossbar_sasd_0/

gen_crossbar.addr_arbiter_inst/grant_rnw_1>

INFO:Xst:2260 - The FF/Latch <aX_interconnect_1/crossbar_samd/gen_

sasd.crossbar_sasd_0/m_atarget_enc_0> in Unit <axi_interconnect_1>

is equivalent to the following FF/Latch : <axi_interconnect_1/crossbar_

samd/gen_sasd.crossbar_sasd_0/m_atarget_enc_0_1>

INFO:Xst:2260 - The FF/Latch <axi_interconnect_1/crossbar_samd/

gen_sasd.crossbar_sasd_0/gen_crossbar.addr_arbiter_inst/grant_rnw>

in Unit <axi_interconnect_1> is equivalent to the following FF/Latch

: <axi_interconnect_1/crossbar_samd/gen_sasd.crossbar_sasd_0/

gen_crossbar.addr_arbiter_inst/grant_rnw_1>

INFO:Xst:2260 - The FF/Latch <axi_interconnect_1/crossbar_samd/gen_

sasd.crossbar_sasd_0/m_atarget_enc_0> in Unit <axi_interconnect_1>

is equivalent to the following FF/Latch : <axi_interconnect_1/crossbar_

samd/gen_sasd.crossbar_sasd_0/m_atarget_enc_0_1>

INFO:Xst:2260 - The FF/Latch <axi_interconnect_1/crossbar_samd/

gen_sasd.crossbar_sasd_0/gen_crossbar.addr_arbiter_inst/grant_rnw>

in Unit <axi_interconnect_1> is equivalent to the following FF/Latch

: <axi_interconnect_1/crossbar_samd/gen_sasd.crossbar_sasd_0/

gen_crossbar.addr_arbiter_inst/grant_rnw_1>

Final Macro Processing ...

Final Register Report Found no macro

В седьмом разделе — Partition Report — содержатся сведения о разбиении разрабатываемого проекта на секции и детализированная информация об этих секциях:

* Partition Report *

Partition Implementation Status

No Partitions were found in this design.

Заключительный раздел отчета — Design Summary — содержит итоговые сведения о результатах синтеза аппаратной части проектируемой встраиваемой системы. Этот раздел включает четыре подраздела:

• Primitive and Black Box Usage;

• Device utilization summary;

• Partition Resource Summary;

• Timing Report.

В начале рассматриваемого раздела представлена информация о выходном файле, который является основным результатом процесса синтеза. Далее, в подразделе Primitive and Black Box Usage, приводятся сведения о количестве примитивов (базисных элементов) каждого типа, использованных в синтезированном описании аппаратной части разрабатываемой микропроцессорной системы. В соответствии с классификацией, осуществляемой средствами синтеза XST, существует восемь типов примитивов (базисных элементов):

• BELS — базовые элементы конфигурируемых логических блоков, к которым относятся таблицы преобразований (LUT), мультиплексоры расширения (MUXCY, MUXF5, MUXF6, MUXF7, MUXF8) и стандартные логические элементы (например, AND2, OR2);

• Flip-flops/Latches — триггеры с динамическим и потенциальным управлением (защелки) (например, элементы FDR, FDRE, LD);

• RAMS — элементы оперативных запоминающих устройств;

• SHIFTERS — регистры сдвига (например, элементы SRL16, SRL16_1, SRL16E, RL16E_1);

• Tri-States — элементы с тристабильными выходами (например, BUFT);

• Clock Buffers — глобальные буферные элементы, используемые в цепях синхронизации (например, элементы BUFG, BUFGP, BUFGDLL);

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

• IO Buffers — стандартные входные и выходные буферные элементы, подключаемые к выводам кристалла (например, элементы IBUF, OBUF, IOBUF, OBUFT, IBUF_GTL);

• OTHER — элементы, не включенные ни в одну из предыдущих групп, например ядро процессорной системы кристаллов семейства Zynq-7000 AP SoC.

Иногда стандартные логические элементы выделяются в отдельную группу — LOGICAL:

* HDL Parsing *

Parsing VHDL file "D:/Emb_PRJ/New_Sys/PS_ARM/hdl/PS_ARM. vhd" into library work Parsing entity <PS_ARM>.

Parsing architecture <STRUCTURE> of entity <ps_arm>. Parsing VHDL file "D:\Emb_PRJ\New_Sys\PS_ARM\PS_ARM_top. vhd" into library work Parsing entity <PS_ARM_top>.

Parsing architecture <STRUCTURE> of entity <ps_arm_top>.

* HDL Elaboration *

Elaborating entity <PS_ARM_top> (architecture <STRUCTURE>) from library <work>.

Elaborating entity <PS_ARM> (architecture <>) from library <work>.

* HDL Synthesis *

Synthesizing Unit <PS_ARM_top>. Related sourcefile is "D:\Emb_PRJ\New_Sys\PS_ARM\PS_ARM_top.vhd". Set property "BOX_TYPE = uer_black_box" for instance <PS_ARM_i>. Summary: no macro. Unit <PS_ARM_top> synthesized.

HDL Synthesis Report Found no macro

* Design Summary *

Top Level Output File Name : PS_ARM_top.ngc Primitive and Black Box Usage:

# BELS: 383

# GND : 4

# INV : 97

# LUT2 : 60

# LUT3 : 42

# LUT4 : 76

# LUT5 : 20

# LUT6 : 69

# MUXCY : 8

# MUXF7 : 1

# VCC : 2

# X0RCY : 4

# FlipFlops/Latches : 183

# FD : 35

# FDC : 6

# FDE : 69

# FDR : 32

# FDRE : 33

# FDSE : 8

# Shift Registers : 8

# SRLC16E : 8

# Clock Buffers : 1

# BUFG: 1

# IO Buffers : 11

# IBUF : 3

# IOBUF : 8

# Others : 1

# PS7: 1

Затем, в подразделе Device utilization summary, отображаются итоговые статистические характеристики полученных результатов синтеза аппаратной части разрабатываемой встраиваемой системы. Здесь представлены сведения об абсолютном и относительном количестве базисных элементов, применяемых в составе синтезированного описания аппаратной части проектируемой микропроцессорной системы:

В подразделе Partition Resource Summary содержится итоговая информация о разбиении разрабатываемого проекта на секции:

Последняя часть заключительного раздела отчета (TIMING REPORT) содержит информацию о временных параметрах синтезированного проекта. Все временные характеристики, приведенные в этом разделе, носят предварительный (оценочный) характер. Более достоверная информация может быть получена только после выполнения этапа размещения и трассировки проекта аппаратной части разрабатываемой встраиваемой системы в кристалле расширяемой процессорной платформы.

Подраздел временных характеристик (TIMING REPORT) включает пять секций: Clock Information, Asynchronous Control Signals Information, Timing Summary, Timing Detail и Cross Clock Domains Report. В секции Clock Information перечисляются сигналы синхронизации и типы буферных элементов, использованных для их формирования:

Timing Report

NOTE: THESE TIMING NUMBERSARE ONLYA SYNTHESIS ESTIMATE. FOR ACCURATE TIMING INFORMATION PLEASE REFER

TO THE TRACE REPORT

GENERATED AFTER PLACE-and-ROUTE.

Clock Information:

-------------+----------+-------+

Clock Signal | Clock buffer(FF name) | Load |

-------------+-----------------------+------+

PS_ARM_i/processing_system7_0/processing_system7_0/FCLK_CLK_

unbuffered<0>| BUFG | 191|

-------------+----------+-------+

Вторая секция (Asynchronous Control Signals Information) содержит сведения об асинхронных сигналах управления, если такие имеются, и типах буферных элементов, применяемых для их формирования:

Asynchronous Control Signals Information:

No asynchronous control signals found in this design

Секция Timing Summary представляет предельные значения основных временных характеристик: максимальное значение тактовой частоты, минимальное время установления входных сигналов по отношению к сигналу синхронизации, максимальная задержка выходных сигналов по отношению к сигналу синхронизации, максимальная задержка распространения сигнала со входа до выхода через комбинационную логику.

Timing Summary:

Speed Grade: -1

Minimum period: 3.868ns (Maximum Frequency: 258.532MHz)

Minimum input arrival time before clock: 2.172ns

Maximum output required time after clock: 2.465ns

Maximum combinational path delay: 0.000ns

В секции Timing Detail дается детальное описание временных характеристик критических путей распространения сигналов в структуре аппаратной части разрабатываемой микропроцессорной системы:

Partition Resource Summary:

No Partitions were found in this design.

Device utilization summary:

Selected Device : 7z020clg484-1

Slice Logic Utilization: Number of Slice Registers: 183 out of 106400 0% Number of Slice LUTs: 372 out of 53200 0% Number used as Logic: 364 out of 53200 0% Number used as Memory: 8 out of 17400 0% Number used as SRL: 8

Slice Logic Distribution: Number of LUT Flip Flop pairs used: 425 Number with an unused Flip Flop: 242 out of 425 56% Number with an unused LUT: 53 out of 425 12% Number of fully used LUT-FF pairs: 130 out of 425 30% Number of unique control sets: 18

IO Utilization: Number of IOs: 138

Number of bonded IOBs: 11 out of 200 5%

Specific Feature Utilization: Number of BUFG/BUFGCTRLs: 1 out of 32 3%

Timing Details:

All values displayed in nanoseconds (ns)

Timing constraint: Default period analysis for Clock 'PS_ARM_i/ processing_system7_0/processing_system7_0/FCLK_CLK_unbuffered<0>' Clock period: 3.868ns (frequency: 258.532MHz) Total number of paths / destination ports: 2196 / 351

Delay: 3.868ns (Levels of Logic = 8) Source: PS_ARM_i/axi_gpio_0/axi_gpio_0/ip2bus_wrack_i_D1 (FF) Destination: PS_ARM_i/axi_interconnect_1/axi_interconnect_1/ crossbar_samd/gen_sasd.crossbar_sasd_0/gen_crossbar.addr_arbiter_ inst/m_grant_hot_i_0 (FF)

Source Clock: PS_ARM_i/processing_system7_0/processing_ system7_0/FCLK_CLK_unbuffered<0> rising

Destination Clock: PS_ARM_i/processing_system7_0/processing_ system7_0/FCLK_CLK_unbuffered<0> rising

Data Path: PS_ARM_i/axi_gpio_0/axi_gpio_0/ip2bus_wrack_i_D1 to PS_ARM_i/axi_interconnect_1/axi_interconnect_1/crossbar_samd/ gen_sasd.crossbar_sasd_0/gen_crossbar.addr_arbiter_inst/m_grant_ hot_i_0

Cell:in->out fanout Gate Delay Net Delay Logical Name (Net Name)

FD:C->Q 4 0.282 0.505 axi_gpio_0/ip2bus_wrack_i_D1 (axi_gpio_0/ ip2bus_wrack_i_D1)

LUT2:I0->0 5 0.053 0.662 axi_gpio_0/AXI_LITE_IPIF_I/I_ SLAVE_ATTACHMENT/wr_done1 (S_AXI_WREADY) end scope: 'PS_ARM_i/axi_gpio_0:S_AXI_AWREADY' begin scope: 'PS_ARM_i/axi_interconnect_1:M_AXI_ AWREADY<0>'

LUT5:I1->0 1 0.053 0.602 axi_interconnect_1/mi_protocol_ conv_bank/gen_protocol_slot[0].gen_prot_conv.conv_inst/gen_ axilite.gen_axilite_conv.axilite_conv_inst/_n011611_SW1_F (N31)

LUT3:I0->0 2 0.053 0.419 axi_interconnect_1/mi_protocol_ conv_bank/gen_protocol_slot[0].gen_prot_conv.conv_inst/gen_ axilite.gen_axilite_conv.axilite_conv_inst/_n011611_SW11 (N15)

LUT6:I5->0 1 0.053 0.000 axi_interconnect_1/crossbar_samd/ gen_sasd.crossbar_sasd_0/gen_crossbar.mi_awready_mux_inst/01_G (N40)

MUXF7:I1->0 4 0.217 0.433 axi_interconnect_1/crossbar_samd/ gen_sasd.crossbar_sasd_0/gen_crossbar.mi_awready_mux_inst/01 (axi_interconnect_1/crossbar_samd/gen_sasd.crossbar_sasd_0/mi_ awready_mux)

LUT6:I5->0 2 0.053 0.419 axi_interconnect_1/crossbar_samd/ gen_sasd.crossbar_sasd_0/gen_crossbar.splitter_aw/out1 (axi_ interconnect_1/crossbar_samd/gen_sasd.crossbar_sasd_0/aa_awready) LUT6:I5->0 1 0.053 0.000 axi_interconnect_1/crossbar_samd/gen_ sasd.crossbar_sasd_0/gen_crossbar.addr_arbiter_inst/m_grant_hot_i_0_ glue_set (axi_interconnect_1/crossbar_samd/gen_sasd.crossbar_sasd_0/ gen_crossbar.addr_arbiter_inst/m_grant_hot_i_0_glue_set)

FDR:D 0.011 axi_interconnect_1/crossbar_samd/gen_sasd. crossbar_sasd_0/gen_crossbar.addr_arbiter_inst/m_grant_hot_i_0

Total 3.868ns (0.828ns logic, 3.040ns route) (21.4% logic, 78.6% route)

Timing constraint: Default OFFSET IN BEFORE for Clock 'PS_ ARM_i/processing_system7_0/processing_system7_0/FCLK_CLK_ unbuffered<0>'

Total number of paths / destination ports: 280 / 113

Offset: 2.172ns (Levels of Logic = 5)

Source: PS_ARM_i/processing_system7_0/processing_system7_0/ PS7_i:MAXIGP0WVALID (PAD)

Destination: PS_ARM_i/axi_gpio_0/axi_gpio_0/AXI_LITE_ IPIF_I/I_SLAVE_ATTACHMENT/state_FSM_FFd1 (FF)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Destination Clock: PS_ARM_i/processing_system7_0/processing_ system7_0/FCLK_CLK_unbuffered<0> rising

Data Path: PS_ARM_i/processing_system7_0/processing_ system7_0/PS7_i:MAXIGP0WVALID to PS_ARM_i/axi_gpio_0/axi_ gpio_0/AXI_LITE_IPIF_I/I_SLAVE_ATTACHMENT/state_FSM_FFd1 Cell:in->out fanout Gate Delay Net Delay Logical Name (Net Name)

PS7:MAXIGP0WVALID 4 0.000 0.000 processing_system7_0/ PS7_i (M_AXI_GP0_WVALID)

end scope: 'PS_ARM_i/processing_system7_0:M_AXI_GP0_ WVALID'

begin scope: 'PS_ARM_i/axi_interconnect_1:S_AXI_WVALID<0>' LUT5:I1->O 2 0.053 0.608 axi_interconnect_1/mi_protocol_ conv_bank/gen_protocol_slot[0].gen_prot_conv.conv_inst/ gen_axilite.gen_axilite_conv.axilite_conv_inst/M_AXI_WVALID1 (DEBUG_MP_MR_WDATACONTROL<0>)

end scope: 'PS_ARM_i/axi_interconnect_1:M_AXI_ WVALID<0>'

begin scope: 'PS_ARM_i/axi_gpio_0:S_AXI_WVALID' LUT3:I0->O 1 0.053 0.739 axi_gpio_0/AXI_LITE_IPIF_I/I_ SLAVE_ATTACHMENT/state_FSM_FFd1-In1 (axi_gpio_0/AXI_ LITEJPIFJ/LSLAVE_ATTACHMENT/state_FSM_FFd1Tn1)

LUT6:I0->O 1 0.053 0.000 axi_gpio_0/AXI_LITE_IPIF_I/I_ SLAVE_ATTACHMENT/state_FSM_FFd1 -In3 (axi_gpio_0/AXI_ LITEJPIFJ/LSLAVE_ATTACHMENT/state_FSM_FFd1Tn)

FDR:D 0.011 axi_gpio_0/AXLLITEJPIFJ/LSLAVE. ATTACHMENT/state_FSM_FFd1

Total 2.172ns (0.825ns logic, 1.347ns route) (38.0% logic, 62.0% route)

Timing constraint: Default OFFSET OUT AFTER for Clock 'PS_ ARM_i/processing_system7_0/processing_system7_0/FCLK_CLK_ unbuffered<0>'

Total number of paths / destination ports: 116 / 74

Offset: 2.465ns (Levels of Logic = 5) Source: PS_ARM_i/axi_gpio_0/axi_gpio_0/ip2bus_wrack_i_D1 (FF) Destination: PS_ARM_i/processing_system7_0/processing_ system7_0/PS7_i:MAXIGP0WREADY (PAD)

Source Clock: PS_ARM_i/processing_system7_0/processing_ system7_0/FCLK_CLK_unbuffered<0> rising

Data Path: PS_ARM_i/axi_gpio_0/axi_gpio_0/ip2bus_wrack_i_ D1 to PS_ARM_i/processing_system7_0/processing_system7_0/ PS7_i:MAXIGP0WREADY

Cell:in->out fanout Gate Delay Net Delay Logical Name (Net Name)

FD:C->Q 4 0.282 0.505 axi_gpio_0/ip2bus_wrack_i_D1 (axi_ gpio_0/ip2bus_wrack_i_D1)

LUT2:I0->O 5 0.053 0.629 axi_gpio_0/AXI_LITEJPIFJ/L SLAVE_ATTACHMENT/wr_done1 (S_AXI_WREADY) end scope: 'PS_ARM_i/axi_gpio_0:S_AXI_WREADY' begin scope: 'PS_ARM_i/axi_interconnect_1:M_AXI_ WREADY<0>'

LUT3:I0->0 2 0.053 0.491 axi_interconnect_1/mi_protocol_ conv_bank/gen_protocol_slot[0].gen_prot_conv.conv_inst/ gen_axilite. gen_axilite_conv.axilite_conv_inst/S_AXI_WREADY 1 (DEBUG_MC_MP_WDATACONTROL<1>)

LUT5:I3->O 1 0.053 0.399 axi_interconnect_1/crossbar_ samd/gen_sasd.crossbar_sasd_0/si_wready11 (DEBUG_SF_CB_ WDATACONTROL<1>)

end scope: 'PS_ARM_i/ax_interconnect_1:S_AXI_WREADY<0>' begin scope: 'PS_ARM_i/processing_system7_0:M_AXI_GP0_ WREADY'

PS7:MAXIGP0WREADY 0.000 processing_system7_0/PS7_i

Total 2.465ns (0.441ns logic, 2.024ns route) (17.9% logic, 82.1% route)

Секция Cross Clock Domains Report содержит сведения о параметрах сигналов синхронизации, используемых для тактирования различных блоков аппаратной части разрабатываемой системы.

Завершают рассматриваемый раздел отчета итоговые сведения о времени выполнения процесса синтеза и объеме используемой памяти, а также о количестве обнаруженных ошибок, предупреждений и информационных сообщений.

При наличии ошибок (errors) нужно внести необходимые исправления в соответствующие модули исходного описания аппаратной части разрабатываемой микропроцессорной системы, после чего повторно активизировать процесс синтеза. Кроме текстового отчета о выполнении этапа синтеза, средства пакета САПР серии Xilinx ISE Design Suite позволяют отобразить список соединений (netlist) аппаратной части проектируемой встраиваемой системы на RTL-уровне в схемотехнической форме.

Отображение синтезированного списка соединений на RTL-уровне в схемотехнической форме

Для формирования списка соединений аппаратной части проектируемой микропроцессорной системы на RTL-уровне в схемотехнической форме необходимо перед выполнением процесса синтеза для параметра Generate RTL schematic установить значение YES или ONLY. При этом средствами синтеза XST дополнительно формируется файл с расширением NGR (рис. 46). В качестве компонентов принципиальной схемы, отражающей RTL-представление синтезируемого описания, применяются обобщенные элементы, состав и вид которых не зависит от архитектурных особенностей программируемой логики кристаллов, используемых для последующей реализации разрабатываемой системы. Для просмотра принципиальной схемы, отражающей список соединений аппаратной части проектируемой микропроцессорной системы на уровне RTL (Register Transfer Level), следует, прежде всего, во встроенной панели процессов Processes Project Navigator развернуть этап синтеза, поместив курсор на знак «+» в строке Synthesize — XST и щелкнув левой кнопкой мыши. Затем нужно расположить курсор на строке View RTL Schematic и дважды щелкнуть левой кнопкой мыши. При этом на экране появляется диалоговая панель Set RTL/TechViewer Startup Mode, предназначенная для выбора режима запуска программы RTL Viewer, вид которой приведен на рис. 48.

Указанная диалоговая панель содержит две кнопки с зависимой фиксацией — Start with the Explorer Wizard и Start with a schematic of the top-level block. Если в нажатом состоянии находится кнопка Start with a schematic of the top-level block, то после нажатия клавиши ОК, расположенной в нижней части диалоговой панели Set RTL/TechViewer Startup Mode, открывается рабочее окно программы RTL Viewer, содержащее схемотехническое RTL-представление верхнего уровня иерархии проекта аппаратной части разрабатываемой системы. Когда в нажатом состоянии зафиксирована кнопка Start with the Explorer Wizard, то при активизации программы RTL Viewer в области расположения рабочих окон Project Navigator открывается окно «ма-

^ЬШ^'ГнгЕиаШ Ф-Jrm

МЛ Ibe *П Hm»Ым ■ и ш/Ыь h Ы ЫЫг^Ч»! Ьпрмй * Ifcjií мьтвдшп л/иыЧ » £м med» ЕщШт иг* ■ Aw шМ ptmn. 'ПЛят узд и M 4*1 Ф* ДОФ41 F« W* fa >М ДО мШ m pd-лтшч stia fcqHMi tasa 1) r*L4 №», tM Fiperm 'fremrii 1 mrtd ш Мж СМЧИ Л Ü4-WK И* 1rtf [Miw-Wiw. frfptetA м- hr LH чдч. цмпорЫЬк! А» V*» Ix ОМ ГЦ-ЖП] frt-ÍT. гн [Yf-U-.M Stan г»1 ife* ач mtfr ЬуиИ'к'Ч Шт НР1ЛтйЧтг V та яшвд 1 П* J

Рис. 48. Вид диалоговой панели

Set RTL/TechViewer Startup Mode

стера» Explorer Wizard, вид которого показан на рис. 49.

Этот «мастер» предоставляет возможность выбора необходимых элементов синтезированного HDL-описания, которые будут отображаться на принципиальной схеме, демонстрирующей список соединений аппаратной части разрабатываемой встраиваемой системы на уровне RTL. Рабочее окно «мастера» Explorer Wizard, имеющее подзаголовок Create RTL Schematic, включает две встроенные панели — Available Elements и Selected Elements. Встроенная панель Available Elements содержит список различных элементов, входящих в состав сформированного RTL-описания (блоки, примитивы, сигналы и порты). Для отображения в этом списке только элементов с определенными идентификаторами (например, начинающимися с некоторой последовательности алфавитных символов) целесообразно использовать фильтр, который устанавливается с помощью поля редактирования/выбора и клавиши Filter, расположенных под указанной встроенной панелью. Требуемую последовательность алфавитных символов нужно указать в поле редактирования, после чего нажать клавишу Filter.

В списке, отображаемом во встроенной панели Available Elements, прежде всего, следует нажатием левой кнопки мыши выделить тот элемент, который должен быть представлен на отображаемой принципиальной схеме. Для выделения нескольких элементов необходимо при этом удерживать в нажатом состоянии клавишу CTRL или Shift на клавиатуре. Затем нужно воспользоваться клавишей Add->, расположенной в окне «мастера» Explorer Wizard между встроенными панелями Available Elements и Selected Elements (рис. 49). В результате выполненных действий выбранные элементы HDL-описания появятся в списке, находящемся во встроенной панели Selected Elements. Для исключения какого-либо элемента из этого списка необходимо выделить соответствующую строку в указанной встроенной панели и на-

Total REAL time to Xst completion: 12.00 secs

Total CPU time to Xst completion: 12.28 secs

->

Total memory usage is 485996 kilobytes

Number of errors : 0 (0 filtered) Number of warnings : 3 (0 filtered) Number of infos : 6 (0 filtered)

Cross Clock Domains Report:

Clock to Setup on destination clock PS_ARM_i/processing_system7_0/

processing_system7_0/FCLK_CLK_unbuffered<0>

----+---------+---------+---------+------+

I Src:RiseI Src:FallI Src:RiseI Src:FallI Source Clock

IDest:RiseIDest:RiseIDest:FallIDest:FallI

----+---------+---------+---------+------+

PS_ARM_i/processing_system7_0/processing_system7_0/FCLK_CLK_

unbuffered<0>| 3.868I

----+---------+---------+---------+------+

Рис. 49. Выбор элементов, отображаемых на схеме RTL-представления синтезированного HDL-описания, с помощью «мастера» Explorer Wizard

жать клавишу <-Remove, размещенную между панелями Available Elements и Selected Elements. Чтобы полностью удалить список выбранных элементов, нужно использовать клавишу <-Remove All.

После завершения формирования списка отображаемых элементов (добавления всех необходимых элементов в этот список) надо воспользоваться кнопкой Create Schematic, которая находится под встроенной панелью

Selected Elements. При нажатии на указанную кнопку в области расположения рабочих окон Project Navigator добавляется окно программы RTL Viewer, чей вид подобен изображению окна схемотехнического редактора

. ■-L.H1 РЛПЯП Иг* Wm fcr** 1мм П#НпЛЛ

Рис. 50. Отображение списка соединений аппаратной части разрабатываемой системы на RTL-уровне в схемотехнической форме в окне программы RTL Viewer

Рис. 51. Выбор элементов схемотехнического представления результатов синтеза на технологическом уровне с помощью «мастера» Explorer Wizard

(рис. 50). В открывшемся окне отображается условный графический образ (УГО), представляющий модуль верхнего уровня иерархии проекта и выбранные входные и выходные порты аппаратной части разрабатываемой микропроцессорной системы.

Кроме того, в окне консольных сообщений Project Navigator появляется новая вкладка View by Category, на которой приводится информация об иерархической структуре, элементах синтезированного проекта и их параметрах. Эта вкладка разделена на две области — Design Objects и Properties. В области Design Objects представлены три встроенные панели, предоставляющие доступ к соответствующим объектам описания проекта — экземплярам компонентов, выводам и сигналам. При выборе требуемого объекта его изображение выделяется на принципиальной схеме, а параметры этого объекта отображаются во встроенной панели Properties. Выбор какого-либо объекта может осуществляться также непосредственно на схемотехническом представлении щелчком левой кнопки мыши. Информация о параметрах выбранного объекта показана в виде таблицы, включающей две колонки с заголовками Name и Value. В колонке Name перечисляются идентификаторы параметров выделенного объекта, а в столбце Value приводятся их значения.

Для отображения содержимого какого-либо блока с иерархической структурой (перехода к следующему иерархическому уровню принципиальной схемы, соответствующей списку соединений аппаратной части про-

ектируемой встраиваемой системы на RTL-уровне) следует поместить курсор мыши на изображение УГО и воспользоваться командой Show Block Contents из контекстно-зависимого всплывающего меню, открываемого щелчком правой кнопки мыши. Тот же результат достигается при нажатии кнопки быстрого доступа ^, расположенной на панели инструментов рабочего окна программы RTL Viewer, после выделения изображения УГО требуемого иерархического блока.

Отображение синтезированного списка соединений на технологическом уровне в схемотехнической форме

В составе САПР серии Xilinx ISE Design Suite также предусмотрены средства отображения результатов синтеза аппаратной части разрабатываемых микропроцессорных систем на технологическом уровне в форме принципиальных схем. В качестве исходного файла для построения этих схем используется основной файл результатов процесса синтеза с расширением NGC. Состав компонентов принципиальной схемы, отражающей представление синтезированного устройства на технологическом уровне, зависит от архитектурных особенностей применяемого семейства кристаллов. Чтобы сформировать представление результатов синтеза проектируемого устройства на технологическом уровне, нужно во встроенной панели процессов Processes управляющей

оболочки Project Navigator поместить курсор на строку View Technology Schematic и дважды щелкнуть левой кнопкой мыши. После этого на экран выводится диалоговая панель Set RTL/TechViewer Startup Mode, предоставляющая возможность выбора режима активизации программы Technology Viewer (рис. 48). В указанной диалоговой панели рекомендуется зафиксировать в нажатом состоянии кнопку Start with the Explorer Wizard. При этом запуск программы Technology Viewer начинается с открытия окна «мастера» Explorer Wizard, который позволяет указать элементы, отображаемые на принципиальной схеме. В этом случае рабочее окно «мастера» Explorer Wizard имеет подзаголовок Create Technology Schematic (рис. 51).

Указанное окно имеет ту же структуру, что и для программы RTL Viewer (рис. 49), но содержание встроенной панели Available Elements существенно отличается по сравнению с RTL-представлением результатов синтеза. В списке доступных элементов, представленном в этой встроенной панели для программы Technology Viewer, добавились компоненты, соответствующие архитектуре программируемой логики семейства кристаллов, которое применяется для реализации разрабатываемой микропроцессорной системы. Выбор элементов, которые должны отображаться в составе схемотехнического представления результатов синтеза аппаратной части проектируемой встраиваемой системы на технологическом уровне, осуществляется тем же способом, что и для

Рис. 52. Отображение результатов синтеза аппаратной части разрабатываемой системы на технологическом уровне в схемотехнической форме

программы RTL Viewer. После формирования списка требуемых элементов и нажатия кнопки Create Schematic (рис. 51) в области расположения рабочих окон Project Navigator открывается окно утилиты Technology Viewer, чей вид показан на рис. 52.

Просмотр результатов синтеза аппаратной части разрабатываемой микропроцессорной системы на технологическом уровне в окне программы Technology Viewer осуществляется тем же способом, что и в программе RTL Viewer. Чтобы продемонстрировать отличия двух рассмотренных форм представления синтезированного списка соединений, на рис. 52 показана принципиальная схема верхнего иерархического уровня, отражающая результаты синтеза на технологическом уровне аппаратной части простейшей системы сбора и обработки данных.

Если полученные результаты процесса синтеза не соответствуют каким-либо исходным требованиям проекта (например, значения временных характеристик не удовлетворяют установленным ограничениям), следует повторить этот этап, изменив значения его параметров. При достижении успешных результатов синтеза следует перейти к этапу реализации аппаратной части проектируемой микропроцессорной системы.

Структура этапа реализации аппаратной части разрабатываемых встраиваемых систем

Этап реализации аппаратной части проектируемых микропроцессорных систем, конфигурируемой на базе ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC, включает три фазы:

• трансляции — Translate;

• отображения логического описания проекта на физические ресурсы кристалла — MAP;

• размещения и трассировки — Place and Route.

В процессе трансляции производится объединение всех списков соединений, входящих в состав проекта, и информации обо всех ограничениях, которая содержится в файлах UCF и NCF. В результате

выполнения фазы трансляции формируется логическое описание аппаратной части разрабатываемой встраиваемой системы в терминах примитивов Xilinx низкого уровня с учетом временных и топологических ограничений, представленное в формате NGD. На второй стадии рассматриваемого этапа логическое описание проекта, полученное на предыдущем шаге, проецируется на физические ресурсы программируемой логики PL кристаллов семейства Zynq-7000 AP SoC. При этом выполняется оптимизация проекта в соответствии с выбранным критерием и заданными ограничениями. В процессе размещения и трассировки выбирается наилучшее расположение конфигурируемых логических блоков (Configurable Logic Block, CLB), реализующих соответствующие функции аппаратной части разрабатываемой встраиваемой системы, и выполняются необходимые соединения с учетом временных и топологических ограничений.

Основной результат выполнения рассматриваемого этапа — создание двоичного файла, который описывает использование физических ресурсов кристалла расширяемой процессорной платформы для реализации элементов (функций) аппаратной части проектируемой микропроцессорной системы и выполнения необходимых соединений между ними. Этот файл затем используется в качестве исходного для генерации конфигурационной последовательности кристаллов семейства Zynq-7000 AP SoC.

Установка параметров процесса реализации аппаратной части проектируемых микропроцессорных систем, конфигурируемой на базе ресурсов программируемой логики

Для управления процедурами этапа реализации аппаратной части разрабатываемых микропроцессорных систем, конфигурируемой на базе ресурсов программируемой логики PL кристаллов семейства Zynq-7000 AP SoC, которые выполняются в автоматическом режиме, используются соответствующие параметры. Их значения могут быть заданы двумя способами: поочередно для каждой фазы в отдельности, например перед ее активизацией, или сразу для всего процесса

реализации (Implementation) в целом. В первом случае, чтобы открыть диалоговую панель, предназначенную для определения значений соответствующих параметров, нужно, прежде всего, во встроенной панели процессов Processes развернуть этап реализации, поместив курсор на знак «+» в строке Implement Design и щелкнув левой кнопкой мыши. Далее необходимо выделить название соответствующей фазы этого этапа (Translate, MAP, Place and Route). После этого следует нажать кнопку расположенную на оперативной панели Project Navigator, или воспользоваться командой Properties контекстно-зависимого всплывающего меню, которое выводится при щелчке правой кнопки мыши. Затем в появившейся диалоговой панели нужно установить требуемые значения параметров. При втором способе во встроенной панели процессов выделяется строка с названием этапа Implement Design и далее выполняется та же последовательность действий, что и в первом случае.

При использовании второго способа диалоговая панель параметров содержит шесть страниц — Translate Properties, MAP Properties, Place and Route Properties, Post-Map Static Timing Report Properties, Post-Place & Route Static Timing Report Properties, Simulation Model Properties, доступ к которым предоставляет интерактивный список Category, отображаемый в левой части этой панели (рис. 53).

На каждой из этих страниц расположена соответствующая группа (категория) параметров, представленных в виде таблицы, структура которой была подробно рассмотрена ранее для параметров синтеза. Для того чтобы активизировать требуемую страницу этой диалоговой панели, достаточно щелчком левой кнопки мыши выделить в списке Category строку с ее названием. Установка значений параметров производится теми же методами, что и в диалоговой панели параметров синтеза.

Страница Translate Properties содержит таблицу параметров, используемых для управления процедурой трансляции проекта. На странице MAP Properties расположены параметры выполнения процедуры отображения логического описания аппаратной части проектируемой встраиваемой системы на физические ресурсы программируемой логики используемого кристалла. Страница Place and Route Properties объединяет параметры управления процедурами размещения и трассировки проекта аппаратной части разрабатываемой системы в кристалле. Страницы Post-Map Static Timing

Report Properties и Post-Place & Route Static Timing Report Properties содержат параметры отчетов о выполнении процедуры анализа временных характеристик, который может быть проведен после отображения логического описания проекта на физические ресурсы программируемой логики и после размещения и трассировки аппаратной части разрабатываемой микропроцессорной системы в кристалле. На странице Simulation Model Properties представлены параметры полной временной модели, генерируемой на основе результатов процесса размещения и трассировки аппаратной части проектируемой встраиваемой системы в кристалле. Краткое описание параметров для каждой фазы процесса реализации будет приведено в последующих разделах. ■

Продолжение следует

новости

источники питания

Новый модуль преобразователя DCM,

базирующийся на технологии Chip

Корпорация Vicor анонсировала новую платформу DC/DC-преобра-зователей с гальванической развязкой и регулируемым выходным напряжением. Платформа базируется на технологии Converter housed in Package (Chip), разработанной в Vicor для создания силовых модулей, и обеспечивает двукратное увеличение удельной мощности по сравнению с традиционными DC/DC-преобразователями. Модуль Chip DCM не только позволяет проектировщику сберечь место на печатной плате, но и применяется для широкого круга приложений, где требуется высокая удельная мощность и предъявляются повышенные требования к системе охлаждения.

На основе платформы Chip DCM можно построить DC/DC-преобразователи на различные входные (от 12 до 420 В) и выходные (от 12 до 55 В) напряжения. Совместно с регуляторами FPATM и ZVS новинка поддерживает масштабируемую систему первичного электропитания с высокими значениями КПД и удельной мощности.

Модуль представлен в двух конфигурациях. Первая из них в корпусе типоразмера 4623 (46x23 мм), мощностью 600 Вт с номинальным входным напряжением 290 В и выходным напряжением 13,8 В предназначена для применения в 12-В системах гибридных автомобилей с литий-ионными аккумуляторами. Вторая, с форм-фактором 3623 (36x23 мм), мощностью

320 Вт, с диапазоном входных напряжений 16-50 В и номинальным выходным напряжением 28 В, оптимизирована для систем, отвечающих стандартам MIL-COTS. Модуль Chip DCM обеспечивает удельную мощность до 75,9 Вт/см3 и КПД до 93%. При этом возможно параллельно подключать до 8 модулей.

www.vicorpower.com

i Надоели баннеры? Вы всегда можете отключить рекламу.