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

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

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зотов Валерий

Продолжаем цикл статей по вопросам практического использования кристаллов расширяемых процессорных платформ Extensible Processing Platform (EPP) семейства Zynq‑7000 AP SoC [1-9], выпускаемых фирмой Xilinx. В предыдущей публикации [10] были представлены основные этапы и средства автоматизированного проектирования встраиваемых микропроцессорных систем, реализуемых на базе указанных кристаллов. В настоящей статье рассматривается поэтапное выполнение процесса разработки встраиваемых систем на основе расширяемых вычислительных платформ семейства Zynq‑7000 AP SoC с помощью САПР серии Xilinx ISE Design Suite.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Зотов Валерий

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

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

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

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

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

[email protected]

Продолжаем цикл статей по вопросам практического использования кристаллов расширяемых процессорных платформ Extensible Processing Platform (EPP) семейства Zynq-7000 AP SoC [1—9], выпускаемых фирмой Xilinx. В предыдущей публикации [10] были представлены основные этапы и средства автоматизированного проектирования встраиваемых микропроцессорных систем, реализуемых на базе указанных кристаллов. В настоящей статье рассматривается поэтапное выполнение процесса разработки встраиваемых систем на основе расширяемых вычислительных платформ семейства Zynq-7000 AP SoC с помощью САПР серии Xilinx ISE Design Suite.

Этапы проектирования встраиваемых систем на базе расширяемых процессорных платформ

Основными этапами процесса разработки встраиваемых микропроцессорных систем, реализуемых на основе кристаллов расширяемых вычислительных платформ семейства Zynq-7000 AP SoC, в среде САПР Xilinx ISE Design Suite в общем случае (рис. 1) являются:

• создание нового проекта аппаратной части разрабатываемой встраиваемой микропроцессорной системы;

• формирование спецификации аппаратной платформы проектируемой системы;

• разработка HDL-описаний отдельных функциональных блоков аппаратной части встраиваемой системы;

• подготовка файла временный и топологических ограничений для аппаратной части;

• создание тестовых модулей для верификации аппаратной части разрабатываемой системы;

• установка параметров синтеза, размещения и трассировки в кристалле, а также генерации конфигурационной последовательности аппаратной части, реализуемой на базе ресурсов программируемой логики PL;

• синтез описания аппаратной части встраиваемой системы, конфигурируемой на основе ресурсов программируемой логики PL;

• функциональное моделирование аппаратной части проектируемой системы, реализуемой на базе ресурсов программируемой логики PL;

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

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

• генерация конфигурационной последовательности аппаратной части проектируемой системы, реализуемой на основе ресурсов программируемой логики PL;

• создание нового проекта программной части разрабатываемой встраиваемой микропроцессорной системы;

• формирование пакета поддержки платы Board Support Packages (BSP);

• генерация начального загрузчика First Stage Boot Loader (FSBL);

• разработка исходного кода прикладного программного обеспечения;

• компиляция исходного кода прикладного ПО;

• генерация исполняемого кода прикладного ПО;

• отладка прикладного ПО;

• генерация загрузочного образа;

• загрузка сгенерированного образа в кристалл расширяемой вычислительной плат-

формы семейства Zynq-7000 AP SoC, установленный на плате инструментального модуля;

• запись сгенерированного образа в энергонезависимую память, используемую для загрузки разработанной системы. Не все из перечисленных этапов являются обязательными. Например, этап разработки HDL-описаний отдельных функциональных блоков встраиваемой системы отсутствует, если для представления аппаратной части этой системы достаточно готовых IP-компонентов, предоставляемых депозитарием применяемых средств проектирования или подготовленных ранее. Кроме того, к необязательным относятся этапы, связанные с моделированием аппаратной части встраиваемых систем. Подготовка тестовых модулей для верификации разрабатываемых систем в среде САПР Xilinx ISE Design Suite, а также выполнение процессов функционального и временного моделирования подробно представлены в [11], поэтому указанные этапы не рассматриваются в данной статье.

Создание нового проекта аппаратной платформы разрабатываемой встраиваемой микропроцессорной системы в САПР

Процесс разработки встраиваемой системы на базе кристалла расширяемой вычислитель-

Навигатор проекта (Project Navigator) или

PlanAhead Design and Analysis Tool

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

Включение процессорного блока PS в состав созданного проекта

Разработка и включение в состав проекта НР1_-описаний отдельных функциональных блоков аппаратной платформы встраиваемой системы

Формирование файла временных и топологических ограничений для конфигурируемой аппаратной части проектируемой встраиваемой системы

Подготовка тестовых модулей для конфигурируемой аппаратной части проектируемой встраиваемой системы

Установка параметров синтеза, размещение и трассировка в кристалле,

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

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

Функциональное моделирование аппаратной части встраиваемой системы, конфигурируемой на базе программируемой логики Р1_

Размещение и трассировка аппаратной части встраиваемой системы,

конфигурируемой на базе программируемой логики Р1_

Полное временное моделирование

аппаратной части встраиваемой системы, конфигурируемой на базе программируемой логики Р1_

Генерация конфигурационной последовательности аппаратной части встраиваемой системы, реализуемой на базе программируемой логики Р1_

Xilinx Platform Studio (XPS)

Настройка конфигурации процессорного блока PS кристаллов семейства Zynq-7000 АР SoC

Включение в состав аппаратной платформы 1Р-ядер периферийных устройств, конфигурируемых на базе ресурсов программируемой логики

Xilinx Software Development Kit (SDK)

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

Формирование пакета поддержки платы Board Support Packages (BSP)

Создание начального загрузчика First Stage Boot Loader (FSBL)

Формирование исходного кода прикладного программного обеспечения

Компиляция исходного кода прикладного программного обеспечения

Генерация исполняемого кода прикладного программного обеспечения

Отладка прикладного программного обеспечения

Генерация загрузочного образа

Загрузка сгенерированного образа в кристалл расширяемой процессорной системы семейств гупд-7000 АР БоС

Запись сгенерированного загрузочного образа в энергонезависимую память

Кристалл семейства Zynq-7000 АР SoC

Flash-память

Инструментальный модуль

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

ной платформы семейства Zynq-7000 AP SoC в САПР серии Xilinx ISE Design Suite начинается с открытия управляющей оболочки — Project Navigator. Для этого можно воспользоваться ярлыком расположенным на «Рабочем столе» компьютера, или соответствующей строкой в разделе Xilinx Design Tools списка программ, открываемого кнопкой «Пуск» операционной системы Windows XP/2000/7. Чтобы создать новый проект аппаратной части разрабатываемой встраиваемой микропроцессорной системы в САПР серии Xilinx ISE Design Suite, необходимо выполнить команду File основного меню Project Navigator, а затем во всплывающем меню выбрать строку New Project, как показано на рис. 2.

В результате указанных действий запускается «мастер» формирования нового проекта New Project Wizard. Работа этого «мастера» начинается с вывода на экран диалоговой панели, имеющей подзаголовок Create New Project, вид которой приведен на рис. 3.

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

• название проекта;

• имя диска и каталога, в котором должен располагаться формируемый проект;

• полное имя и место расположения на диске рабочего каталога проекта;

• тип (способ описания) модуля верхнего уровня иерархии проекта. В первую очередь рекомендуется определить раздел (папку), в котором будет располагаться создаваемый проект. Целесообразно хранить все проекты встраиваемых микропроцессорных систем в специально созданном для этих целей каталоге, например C:\Project_Embedded_System. Каталог, в котором находятся все разрабатываемые проекты пользователя, должен располагаться вне раздела, содержащего средства проектирования серии Xilinx ISE Design Suite, чтобы при обновлении версии пакета САПР он не был случайно удален. Место расположения проекта на диске указывается в поле Location,

Рис. 2. Создание нового проекта аппаратной части разрабатываемой встраиваемой микропроцессорной системы в САПР

а рабочего каталога этого проекта — в поле Working Directory. По умолчанию в указанных полях редактирования предлагаются имена диска и каталога, которые использовались в предыдущем проекте. Изменить место расположения создаваемого проекта можно двумя способами: используя клавиатуру или стандартную панель навигации по дискам компьютера. В первом случае следует активизировать поле Location, поместив на него курсор и щелкнув левой кнопкой мыши, после чего ввести с клавиатуры имя диска и каталога. Если указываемый каталог отсутствует на диске, то он создается автоматически. Для выбора каталога, который уже существует, удобнее

Crate Nch Ptoyect

- — — —-1. "-F-^l

* тф.

t™ 1С

IM^Dm Mr-.

aniiH

М И hn^BHanb hi srrsn

f CsULsstJ

Рис. 3. Определение названия и места расположения создаваемого проекта разрабатываемой встраиваемой микропроцессорной системы

воспользоваться вторым способом, нажав кнопку с пиктограммой «...», расположенную справа от поля Location. В открывшейся диалоговой панели навигации следует с помощью мыши выбрать требуемый диск и каталог, а затем подтвердить выбор нажатием клавиши OK. Чтобы создать новый каталог, можно воспользоваться кнопкой «Создать папку» в нижней части диалоговой панели навигации. После закрытия последней выбранные параметры автоматически отображаются в полях Location и Working Directory. По умолчанию для записи создаваемого проекта и его рабочего каталога предлагается одна и та же папка.

Чтобы задать имя создаваемого проекта аппаратной части встраиваемой микропроцессорной системы, необходимо активизировать поле Name, после чего ввести с клавиатуры соответствующее название, используя для этого только заглавные и строчные буквы латинского алфавита (A-Z, a-z), цифры (0-9) и символ подчеркивания (_). Рекомендуется задавать мнемонические имена проектов, отражающие назначение разрабатываемых систем, чтобы впоследствии было удобнее ориентироваться при поиске требуемого проекта. Введенное название проекта автоматически добавляется в полях Location и Working Directory.

Тип (способ описания) модуля верхнего уровня иерархии проекта определяется с помощью поля выбора значения параметра Top-level source type. Выпадающий список, который открывается нажатием кнопки в правой части этого поля выбора, содержит четыре варианта: HDL, Schematic, EDIF и NGC/NGO. Для описания модуля, соответствующего верхнему уровню иерархии проекта аппаратной части встраиваемой микропроцессорной системы, используется один из языков высокого уровня — VHDL или Verilog, поэтому в качестве значения параметра Top-level source type нужно указать вариант HDL.

Кроме перечисленных обязательных параметров создаваемого проекта аппаратной части, в поле Description диалоговой панели Create New Project можно также привести краткое описание разрабатываемой системы. Установка значений всех исходных параметров создаваемого

проекта завершается нажатием кнопки Next, которая находится в нижней части стартовой диалоговой панели «мастера» New Project Wizard. Следует обратить внимание, что эта клавиша становится доступной только после определения значений всех указанных выше обязательных параметров, в противном случае она остается в неактивном состоянии (ее название отображается серым цветом).

После нажатия клавиши Next в панели Create New Project на экран выводится очередная диалоговая панель «мастера» — New Project Wizard с подзаголовком Project Settings, вид которой представлен на рис. 4.

С помощью этой диалоговой панели нужно определить следующие параметры нового проекта аппаратной части разрабатываемой микропроцессорной системы:

• тип инструментального модуля, применяемого для аппаратной отладки и реализации разрабатываемой встраиваемой микропроцессорной системы;

• категорию, к которой относится выбираемое семейство кристаллов расширяемых процессорных платформ;

• семейство кристаллов, на базе которого разрабатывается проектируемая встраиваемая микропроцессорная система;

• тип кристалла, выбираемого для реализации разрабатываемой встраиваемой системы;

• тип корпуса выбранного кристалла расширяемой процессорной платформы;

• категория быстродействия используемого кристалла;

• применяемые средства синтеза и моделирования аппаратной части проектируемой встраиваемой системы.

Все перечисленные параметры представлены в форме таблицы: в первом столбце — Property Name — отображаются названия параметров, а во втором — Value — значения этих характеристик. Каждая ячейка столбца Value представляет собой поле выбора значения соответствующего параметра. Чтобы установить требуемое значение какого-либо параметра в этой таблице, следует воспользоваться кнопкой управления выпадающим списком соответствующего поля выбора. При нажатии на нее отображается список всех возможных значений выбранного параметра. Установка требуемого значения осуществляется щелчком левой кнопки мыши на строке выпадающего списка, содержащей необходимый вариант. После этого представленное в данной строке значение автоматически отображается в поле выбора соответствующего параметра.

Тип используемого отладочного модуля указывается в поле выбора значения параметра Evaluation Development Board. В выпадающем списке этого поля перечислены все инструментальные модули, поддерживаемые Project Navigator. Если название требуемой отладочной платы представлено в этом списке, то после его выбора значения всех параметров используемого кристалла расширяемой процессорной платформы будут установлены автоматически. При отсутствии требуемого инструментального модуля в списке поддерживаемых отладочных плат в поле выбора Evaluation Development Board следует указать вариант None Specified, после чего поочередно определить категорию, семейство, тип, корпусное исполнение и быстродействие кристалла, применяемого для реализации разрабатываемой встраиваемой системы.

Выбор конкретной категории кристаллов позволяет существенно ограничить список возможных вариантов при определении требуемого семейства ПЛИС или расширяемых процессорных платформ. Фирма Xilinx классифицирует все выпускаемые семейства кристаллов в соответствии с областью их применения по следующим категориям:

• General Purpose — семейства кристаллов общего назначения;

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

• Automotive — семейства кристаллов, ориентированные на применение в автомобильной электронике;

• Military/Hi-Reliability — семейства кристаллов повышенной надежности, предназначенные для использования в военной технике;

• Radiation Hardened — семейства кристаллов, выпускаемые в ради-ационно-стойком исполнении.

Чтобы указать категорию ПЛИС или расширяемой вычислительной платформы, к которой относится кристалл, выбираемый для реа-

Рис. 4. Выбор кристалла, средств синтеза и моделирования для создаваемого проекта разрабатываемой встраиваемой микропроцессорной системы

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

Для определения семейства кристаллов, на базе которого проектируется встраиваемая микропроцессорная система, следует воспользоваться полем выбора значения параметра Family. При нажатии на кнопку управления выпадающим списком, находящуюся в правой части этого поля, на экране отображается список семейств кристаллов, которые относятся к выбранной ранее категории. Если для параметра Product Category было установлено значение All, то в этом списке будут содержаться названия всех семейств ПЛИС и расширяемых процессорных платформ, поддерживаемых используемой версией средств проектирования серии Xilinx ISE Design Suite.

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

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

Для определения категории быстродействия выбранного кристалла предназначено поле выбора значения параметра Speed. Выпадающий список этого поля отображает выпускаемый ряд градации по быстродействию для выбранного типа расширяемых процессорных платформ. Вид диалоговой панели Project Settings, приведенный на рис. 4, демонстрирует совокупность параметров кристалла, который установлен на отладочной плате ZedBoard [12].

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

Рис. 5. Вид информационной панели Project Summary «мастера» New Project Wizard

лагаются встроенные средства синтеза САПР серии Xilinx ISE Design Suite — Xilinx Synthesis Technology (XST), которые можно использовать в большинстве проектов, выполняемых на базе кристаллов расширяемых процессорных платформ семейства Zynq-7000 AP SoC.

Для указания средств моделирования аппаратной части проектируемой встраиваемой микропроцессорной системы нужно воспользоваться полем выбора значения параметра Simulator. Все конфигурации системы проектирования серии Xilinx ISE Design Suite обладают собственными средствами моделирования ISE Simulator, а также поддерживают систему HDL-моделирования ModelSim [13]. В большинстве случаев рекомендуется использовать один из этих инструментов моделирования, выбрав одноименную строку в выпадающем списке значений параметра Simulator.

После определения варианта применяемых средств моделирования следует в поле выбора значения параметра Preferred Language указать язык HDL, используемый для формирования фалов описаний промежуточных результатов и моделей аппаратной части разрабатываемой встраиваемой системы. В дальнейшем рассматривается проектирование систем, описание аппаратной части которых представлено на языке VHDL. При этом необходимо с помощью поля выбора значения параметра VHDL Source Analysis Standard определить вариант стандарта языка, в соответствии с которым будут формироваться модули исходного описания проектируемых встраиваемых систем. Выпадающий список возможных значений этого поля содержит два варианта: VHDL-93 и VHDL-200X. Значение первого соответствует варианту стандарта IEEE VHDL Std 1076-1993, а второго — варианту IEEE VHDL Std 1076-2000.

Далее, воспользовавшись полем выбора Property Specification in Project File, следует определить состав параметров, сохраняемых в составе файла проекта аппаратной части разрабатываемой системы. При выборе варианта Store non-default values only в файл проекта записываются только значения параметров, которые отличаются от предлагаемых по умолчанию. В случае использования варианта Store all values в файле проекта сохраняются значения всех параметров.

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

Для разрешения фильтрации сообщений, генерируемых программными средствами САПР серии Xilinx ISE Design Suite при выполнении всех этапов проектирования, следует установить индикатор состояния параметра Enable Message Filtering во включенное положение. После определения значений всех параметров в диалоговой панели Project Settings следует нажать кнопку Next в нижней части этой панели. В результате на экран выводится заключительная информационная панель «мастера» создания нового проекта New Project Wizard, имеющая подзаголовок Project Summary. В этой панели (ее вид представлен на рис. 5) отображаются установленные значения основных параметров создаваемого проекта аппаратной части встраиваемой микропроцессорной системы.

Еслн необходимо изменить значение какого-либо параметра, то кнопка О , расположенная в верхней части информационной панели, позволяет вернуться к предыдущей диалоговой панели. Для завершения процесса формирования нового проекта аппаратной части встраиваемой системы следует нажать кнопку Finish в нижней части информационной панели Project Summary. После этого созданный проект автоматически открывается в рабочей области Project Navigator. При этом в области расположения рабочих окон отображается подробная информация о новом проекте.

Далее необходимо сформировать спецификацию аппаратной платформы проектируемой микропроцессорной системы MHS (Microprocessor Hardware Specification). Для этого следует включить в состав созданного проекта микропроцессорный блок кристалла расширяемой вычислительной платформы семейства Zynq-7000 AP SoC и требуемые IP-компоненты периферийных устройств, после чего выполнить их настройку и соединение. Прежде чем приступить непосредственно к осуществлению этого этапа проектирования, рассмотрим синтаксис спецификации аппаратной платформы MHS (Microprocessor Hardware Specification) встраиваемых микропроцессорных систем, разрабатываемых на базе кристаллов семейства Zynq-7000 AP SoC.

Синтаксис спецификации аппаратной платформы разрабатываемой микропроцессорной системы

Спецификация аппаратной платформы встраиваемой микропроцессорной системы MHS представляет собой файл с одноименным расширением, в котором в текстовом формате описываются конфигурация и параметры аппаратных средств проектируемой системы. Язык описания спецификации аппаратной платформы имеет много общего с языками описания аппаратуры HDL высокого уровня VHDL и Verilog. В частности, интерфейсные цепи разрабатываемой системы и ее компонентов описываются в виде портов. Как и в языках HDL высокого уровня, понятие сигнала соответствует физической цепи, которая соединяет компоненты микропроцессорной системы.

Каждый компонент, включаемый в состав спецификации аппаратной платформы, описывается с помощью следующей конструкции (квадратными скобками выделены параметры команд, наличие которых зависит от типа команды и не является обязательным):

BEGIN <идентификатор_компонента>

Команда1 <параметр1_команды1> = <значение_ параметра1> [,<параметр2_команды1> = <значение_ параметра2>, ..., <параметрM_команды> = <значение_параметраM>]

КомандаN <параметр1_командь^> = <значение_ параметра1> [,<параметр2_командь^> = <значе-

ние_ параметра2>, ..., <параметрК_команды№> = <значение_ параметраК>]

END

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

условливается в первую очередь типом применяемого компонента. Количество параметров, указываемых в каждой команде, определяется типом этой команды. В дальнейшем параметры команд будем называть ключами, чтобы не путать с параметрами компонентов, включаемых в состав разрабатываемой системы. Блок описания компонента проектируемой системы завершается ключевым словом END.

В текущей версии спецификации аппаратной платформы используются три команды: PARAMETER, PORT и BUSJNTERFACE. С помощью PARAMETER определяются значения различных параметров спецификации и применяемых компонентов. Кроме того, данная команда используется для указания диапазона адресного пространства, используемого компонентами разрабатываемой микропроцессорной системы. Все параметры, определяемые командой PARAMETER, можно разделить на две группы: глобальные и локальные. Глобальные относятся ко всей спецификации аппаратной платформы. Команды, которые определяют значения глобальных параметров, располагаются вне блоков описания компонентов BEGIN-END. Примером глобального параметра является VERSION, который указывает номер версии спецификации аппаратной платформы встраиваемой микропроцессорной системы. Значение этого параметра обычно задается в начале файла MHS. Формат команды, определяющей номер версии спецификации аппаратной платформы, выглядит следующим образом:

указан номер версии спецификации MHS, принятый в САПР Xilinx ISE Design Suite 14.7.

Локальные параметры относятся только к соответствующим компонентам проектируемой системы. Команды, определяющие значения локальных параметров, располагаются внутри блоков описания компонентов BEGIN-END. Значение параметра HW_VER указывает номер версии используемого IP-компонента. Команда, с помощью которой определяется значение этого параметра, имеет следующий формат:

Номера версий соответствующего 1Р-компонента указаны в файле документации для этого компонента. В качестве примера можно привести команду:

которая указывает на то, что в соответствующем блоке BEGIN-END описывается экземпляр компонента версии 1.00.a.

С помощью параметра INSTANCE задается позиционное обозначение (идентификатор) описываемого экземпляра используемого IP-компонента. Для определения значения этого параметра следует включить в состав соответствующего блока описания BEGIN-END командную строку, формат которой имеет следующий вид:

PARAMETER INSTANCE = <идентификатор_экземпляра_1Р-

компонента>

Например, командная строка:

PARAMETER INSTANCE = uartnl

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

Диапазон адресного пространства памяти, используемый описываемым экземпляром некоторого IP-компонента проектируемой системы, задается в виде базового и максимального значений адреса. Размер адресного пространства, выделяемого для компонента микропроцессорной системы, должен быть равен 2 в степени N. При этом последние N бит в значении базового адреса должны быть равны нулю. Значение базового адреса определяется с помощью параметра C_BASEADDR. Формат команды, определяющей значение этого параметра, выглядит следующим образом:

PARAMETER C_BASEADDR = <значение_базового_адреса>

Значения адреса, как правило, задаются в шестнадцатеричном представлении. Например, командная строка:

PARAMETER C_BASEADDR= 0xFFFF0000

выделяет для описываемого экземпляра компонента диапазон адресного пространства, начинающийся с адреса FFFF0000.

Верхняя граница адресного пространства памяти, используемого компонентом, указывается в виде значения параметра C_ HIGHADDR. Команда, предназначенная для определения значения этого параметра, имеет следующий формат:

PARAMETER C_HIGHADDR = <значение_верхней_границы_вы-деляемого_адресного_пространства>

Примером использования команды, определяющей верхнюю границу адресного пространства памяти, выделяемого для экземпляра некоторого компонента, является строка:

PARAMETER C_HIGHADDR= 0xFFFF00FF

Команда PORT предназначена для описания взаимосвязей между компонентами проектируемой системы, а также внешнего интерфейса системы. Эта команда может быть как глобальной, так и локальной. Глобальная команда PORT используется для описания внешних портов микропроцессорной системы, а также для определения значений постоянных сигналов. Глобальные команды PORT располагаются вне блоков описания компонентов BEGN-END. Для описания интерфейсных (внешних) портов разрабатываемой микропроцессорной системы наиболее часто используется следующий формат команды PORT:

PORT <идентификатор_порта> = <идентификатор_цепи_ (сигнала)>, DIR = <тип_порта_(сигнала)>, VEC=[n:m], SIGIS=<категория_ порта(сигнала)>

С помощью ключа DIR указывается тип порта (сигнала), соответствующий направлению передачи данных. Для обозначения входного порта используется одно из следующих значений ключа DIR: INPUT, IN, I. В командах, описывающих выходные порты, ключ DIR должен принимать одно из трех значений: OUTPUT, OUT, O. При описании двунаправленного интерфейсного порта указывается одно из двух возможных значений ключа DIR: INOUT или IO. Необязательный ключ VEC позволяет описывать с помощью команды PORT многоразрядные порты, которые представляются в виде векторов (массивов). При использовании ключа VEC значения n и m задают начальный и конечный индексы вектора, которые определяют разрядность порта. Применение команды PORT для описания интерфейсных портов проектируемой системы иллюстрируют следующие примеры:

• командная строка

PORT Sys_reset = sys_rst, DIR=IN

описывает входной порт Sys_reset, с которым ассоциируется сигнал sys_rst;

• командная строка

PORT Gp_io = gpio_io, DIR=INOUT, VEC=[0:31]

определяет 32-разрядный двунаправленный порт Gp_io, с которым ассоциируется сигнал векторного типа gpio_io. Ключ SIGIS применяется для указания категории, к которой относится сигнал, ассоциируемый с описываемым портом. В текущей версии спецификации MHS предопределены три категории сигналов и соответствующие им значения ключа SIGIS:

• CLK соответствует группе сигналов синхронизации;

PARAMETER HW_VER = 1.00.a,

PARAMETER VERSION = <номер_версии_MHS>

Например, в командной строке:

PARAMETER VERSION = 2.1.0

PARAMETER HW_VER = <номер_версии_IP- компонента>

• INTERRUPT соответствует группе сигналов прерывания;

• RST соответствует группе сигналов сброса. Например, командная строка:

PORT Sys_clock = sys_clk, DIR=IN, SIGIS=CLK

описывает входной порт Sys_clock, с которым ассоциируется тактовый сигнал sys_clk.

Для определения значений постоянных сигналов применяется формат команды PORT, который имеет следующий вид:

PORT <идентификатор_постоянного_сигнала> = <значение_сиг-нала>, DIR=<тип_порта_(сигнала)>

Значение сигнала может задаваться в двоичном или шестнадцатеричном представлении. Например, в командной строке:

PORT constl = 0b1010, DIR=OUTPUT, VEC=[0:3]

значение постоянного сигнала constl указывается в двоичном формате, а в команде:

PORT const2 = 0xC, DIR=OUTPUT, VEC=[0:3]

в шестнадцатеричном.

С помощью локальных команд PORT описывается подключение портов компонентов микропроцессорной системы. Эти команды не имеют параметров (ключей), определяющих тип и размерность сигналов. Локальные команды PORT располагаются внутри блоков описания компонентов BEGIN-END. Формат локальных команд PORT выглядит следующим образом:

PORT <идентификатор_порта_IP- компонента> = <идентификатор _цепи(сигнала)>

Если какой-либо порт IP-компонента должен оставаться неподключенным, то в соответствующей команде PORT вместо идентификатора цепи указывается пара двойных апострофов (""). Для обозначения цепей питания и земли зарезервированы идентификаторы net_vcc и net_gnd соответственно. Для многоразрядных портов, описываемых с помощью векторов, идентификаторы net_ vcc и net_gnd автоматически расширяются в соответствии с требуемой разрядностью. Использование локальной команды PORT демонстрируют приведенные ниже примеры:

• Команда PORT Clk = sys_clk описывает подключение порта Clk некоторого IP-компонента к цепи sys_clk.

• Команда PORT In_reset = net_gnd описывает подключение порта In_reset некоторого IP-компонента к цепи «земля».

• Команда PORT Out_en = "" описывает порт Out_en, который находится в неподключенном состоянии.

Команда BUS_INTERFACE используется для описания взаимосвязей компонентов, осуществляемых на основе шинной архитектуры. Для подключения к шинам различные компоненты микропроцессорной системы используют одни и те же группы цепей (сигналов). При использовании команды PORT для их описания потребовалось бы достаточно большое количество командных строк, которые повторялись бы для каждого компонента, что привело бы к существенному увеличению времени подготовки и объема файла спецификации аппаратной платформы. Избежать этого позволяет применение команды BUS_ INTERFACE для описания подключения компонентов к шинам проектируемой микропроцессорной системы. Формат команды BUS_ INTERFACE выглядит следующим образом:

BUS_INTERFACE <тип_шинного_интерфейса> = <идентифи-катор_шины>

Тип шинного интерфейса в команде BUS_INTERFACE указывается в виде соответствующего условного обозначения. Для различных вариантов (режимов) подключения компонентов посредством интерфейса AXI (Advanced extensible Interface), применяемого во встраиваемых микропроцессорных системах, реализуемых на базе кристаллов семейства Zynq-7000 AP SoC, зарезервированы следующие условные обозначения:

• M_AXI соответствует варианту подключения компонента посредством интерфейса AXI в ведущем (Master) режиме;

• S_AXI соответствует варианту подключения компонента посредством интерфейса AXI в подчиненном (Slave) режиме. Например, командная строка:

BUS_INTERFACE S_AXI = axi_interconnect_1

описывает подключение компонента в подчиненном режиме к шине axi_interconnect_1, которая соответствует интерфейсу AXI.

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

# --Assign constant signals -PARAMETER C_HAS_IPR = 1 # Interrupt Pending Register present

Типовая структура спецификации аппаратной платформы проектируемой микропроцессорной системы, как правило, содержит следующие разделы:

• команда, указывающая номер версии спецификации MHS;

• описание внешнего интерфейса (глобальных портов) разрабатываемой встраиваемой системы;

• определение портов, подключаемых к цепям питания и земле;

• декларация и определение значений постоянных сигналов;

• блоки описания микропроцессорного ядра и IP-компонентов, включаемых в состав разрабатываемой системы.

Процесс формирования спецификации аппаратной платформы встраиваемой микропроцессорной системы начинается с включения в состав нового проекта микропроцессорного блока кристалла семейства Zynq-7000 AP SoC.

Включение в состав

нового проекта блока кристалла

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

семейства Zynq-7000 AP SoC

Чтобы включить в состав формируемого проекта аппаратной части встраиваемой системы микропроцессорный блок кристалла семейства Zynq-7000 AP SoC, необходимо выполнить процедуру создания нового модуля исходного описания. Для этого следует воспользоваться командой New Source из раздела Project основного меню Project Navigator или контекстно-зависимого всплывающего меню, вызываемого щелчком правой кнопки мыши, или кнопкой. , расположенной на оперативной панели управления. В результате выполненных действий активизируется «мастер» создания основы нового модуля исходного описания проекта New Source Wizard, стартовая диалоговая панель Select Source Type которого показана на рис. 6.

В этой диалоговой панели нужно прежде всего в качестве типа создаваемого исходного модуля указать вариант Embedded Processor. Для этого следует в предложенном списке диалоговой панели Select Source Type выделить соответствующую строку, щелкнув по ней левой кнопкой мыши, как показано на рис. 7. Затем активизировать поле File Name и с помощью клавиатуры ввести текст имени файла, соблюдая те же правила, что и при определении названия проекта. Название создаваемого модуля должно начинаться с буквы. Расширение имени файла (.xmp) устанавливается автоматически в соответствии с выбранным типом модуля. Место расположения создаваемого модуля на диске указывается в поле Location диалоговой панели Select Source Type. По умолчанию предлагается рабочий каталог формируемого проекта аппаратной части встраиваемой микропроцессорной системы. Для всех

Рис. 6. Вид диалоговой панели Select Source Type «мастера» создания основы нового модуля исходного описания проекта New Source Wizard

Рис. 7. Вид заключительной информационной панели Summary «мастера» создания основы нового модуля исходного описания проекта New Source Wizard

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

Установка значений всех необходимых параметров основы создаваемого модуля процессорного блока завершается нажатием клавиши Next, которая находится в нижней части диалоговой панели Select Source Type. После этого открывается заключительная информационная панель Summary «мастера» New Source Wizard, вид которой представлен на рис. 7.

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

В результате выполненных действий производится автоматический запуск средств разработки аппаратной платформы встраиваемых микропроцессорных систем Xilinx Platform Studio (XPS) с одновременным созданием соответствующего проекта в среде XPS. В рамках этого проекта осуществляется собственно формирование спецификации аппаратной платформы MHS разрабатываемой системы, в ходе которого производится

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

Включение в спецификацию аппаратной платформы MHS процессорного блока PS и настройка его конфигурации

Поскольку спецификация MHS представляет собой текстовый файл, для его подготовки и модификации можно использовать текстовый редактор, который входит в состав средств Xilinx Platform Studio. Но создавать новую спецификацию аппаратной платформы с чистого листа в текстовом режиме сложно и трудоемко. При наборе текста команд файла MHS велика вероятность различных ошибок. Текстовый режим целесообразно использовать в основном для редактирования значений отдельных параметров или в тех случаях, когда новая спецификация аппаратной платформы формируется на основе уже существующего файла MHS.

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

Формирование новой спецификации MHS начинается с вывода на экран диалоговой панели, содержащей запрос разрешения включения ядра процессорной системы processing_system7 в состав вновь созданного проекта в среде XPS, вид которой приведен на рис. 8.

©Il» ЬНФРЫ* : ПС И-JKj faTHBWd IP NU U'JLHI

ifiwd «Utk I, «■>'

* ■■ fr ;

Рис. 8. Вид диалоговой панели запроса разрешения на включение ядра процессорной системы в состав вновь созданного проекта XPS

При утвердительном ответе на указанный запрос (нажатии клавиши Yes) на экране появляется основное окно среды разработки аппаратной платформы встраиваемых микропроцессорных систем XPS с открытой вкладкой Zynq, вид которого представлен на рис. 9.

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

Используя интерактивную структурную схему, изображенную на рис. 9, рекомендуется прежде всего сконфигурировать периферию процессорного блока PS в соответствии с архитектурой разрабатываемой встраиваемой системы и выбрать тип загрузочной памяти. Для этого следует расположить указатель мыши на изображении структурного блока I/O Peripherals и щелкнуть левой кнопкой. После этого на экран выводится диалоговая панель Zynq PS MIO Configuration, вид которой показан на рис. 10.

Указанная диалоговая панель содержит две интерактивные таблицы с заголовками Zynq

Рис. 9. Вид основного окна среды XPS после включения ядра процессорной системы в состав созданного проекта

Рис. 10. Настройка периферии процессорной системы PS кристалла семейства Zynq-7000 AP SoC

PS Configuration и MIO Configuration. В таблице Zynq PS Configuration отображается информация о периферийных устройствах процессорного блока PS, задействованных в составе разрабатываемой системы. Эта таблица в свою очередь содержит три колонки с заголовками Enable, Peripheral и IO. Каждая ячейка колонки Enable содержит индикатор, информирующий о текущем состоянии соответствующего периферийного устройства процессорного блока PS. Чтобы задейство-

вать в составе разрабатываемой системы контроллер требуемого периферийного интерфейса, следует установить соответствующий индикатор во включенное состояние, отмеченное маркером. Условные обозначения всех периферийных устройств процессорного блока PS представлены в колонке Peripheral. Информация о подключении выбранной периферии к мультиплексируемым выводам кристалла расширяемой процессорной платформы семейства Zynq-7000 AP

SoC содержится в колонке IO. Каждая ячейка этой колонки представляет собой поле выбора, выпадающий список которого содержит условные обозначения допустимых вариантов мультиплексируемых выводов кристалла. Для ознакомления со всеми допустимыми вариантами сопряжения периферии процессорного блока PS с мультиплексируемыми блоками ввода/вывода рекомендуется нажать кнопку Show MIO Table в нижней части диалоговой панели Zynq PS MIO Configuration: на экране появляется информационная панель с заголовком MIO Table, вид которой демонстрирует рис. 11. Здесь в наглядной форме показаны все возможные варианты подключения сигналов периферийных устройств процессорной системы к мультиплексируемым выводам кристалла расширяемой вычислительной платформы.

Таблица MIO Configuration предоставляет подробные сведения о параметрах и подключении мультиплексируемых выводов используемого кристалла расширяемой процессорной платформы. Эта таблица включает в себя семь колонок с заголовками IO, Peripheral, Signal, IO Type, Speed, Pullup и Direction. Колонка IO содержит условные обозначения всех мультиплексируемых выводов кристалла семейства Zynq-7000 AP SoC. В колонке Peripheral отображаются условные обозначения периферийных устройств процессорного блока PS, с которыми сопряжены соответствующие выводы кристалла. В ячейках, составляющих колонку Signal, приведены условные обозначения сигналов периферий-

Рис. 11. Таблица возможных вариантов подключения периферии процессорного блока PS к мультиплексируемым блокам ввода/вывода

ных интерфейсов, которые подключены к соответствующим выводам кристалла. Каждая ячейка колонки IO Type представляет собой поле выбора, позволяющее указать тип сигнального стандарта, в соответствии с которым конфигурируется соответствующий вход или выход кристалла. Колонка Speed содержит поля выбора, предоставляющие возможность установки требуемого варианта скорости переключения сигналов на выводах кристалла. Ячейки колонки Pullup позволяют разрешить или запретить подключение подтягивающего резистора к соответствующему мультиплексируемому выводу. В колонке Direction отображаются условные обозначения типов выводов в соответствии с направлением передачи сигнала (вход, выход или двунаправленный вход/выход). Для некоторых периферийных устройств ячейки этой колонки предоставляют возможность выбора требуемого типа для соответствующего мультиплексируемого вывода.

Установка требуемых вариантов напряжений питания, используемых в выходных каскадах мультиплексируемых блоков ввода/вывода, осуществляется с помощью полей выбора значений параметров Bank 0 IO Voltage и Bank 1 IO Voltage, которые расположены в верхней части диалоговой панели Zynq PS MIO Configuration. Выпадающие списки этих полей выбора содержат допустимые значения напряжений питания для нулевого и первого банков ввода и вывода (Bank 0 и Bank 1) соответственно.

Далее целесообразно проконтролировать и при необходимости установить требуемые параметры тактовых сигналов, формируе-

мых блоком синхронизации процессорной системы PS. Для этого следует поместить курсор на изображение блока Clock Generation (рис. 9) и щелкнуть левой кнопкой мыши, в результате на экране появляется диалоговая панель Clock Wizard, вид которой изображен на рис. 12.

В открывшейся диалоговой панели нужно в первую очередь уточнить значение ча-

стоты внешнего тактового сигнала, используемого для синхронизации процессорного блока PS кристалла семейства Zynq-7000 AP SoC. Это значение отображается в поле редактирования Input Frequency (MHz), справа от которого указан допустимый диапазон частот входного сигнала синхронизации. Информация обо всех внутренних тактовых сигналах, формируемых блоком синхронизации, представлена в форме таблицы, содержащей пять ячеек: Component, Clock Source, Requested Frequency (MHz), Actual Frequency (MHz) и Range (MHz). В колонке Component отображаются условные обозначения компонентов процессорной системы PS и программируемой логики PL, для которых формируются тактовые сигналы. Ячейки, образующие колонку Clock Source, содержат поля выбора источника формирования тактового сигнала для соответствующего компонента. Требуемые значения частоты таковых (в мегагерцах) указываются в полях редактирования, расположенных в ячейках колонки Requested Frequency (MHz). Реальные значения частоты формируемых тактовых сигналов отображаются в колонке Actual Frequency (MHz). Информация о допустимом диапазоне частот для каждого генерируемого сигнала синхронизации приводится в ячейках, составляющих колонку Range (MHz). После установки всех требуемых значений частот формируемых тактовых сигналов следует нажать кнопку Validate Clocks, расположенную в нижней части диалоговой панели Clock Wizard, и убедиться, что реальные значения частот соответствуют заявленным величинам. Установленные значения частот вырабатываемых сигналов син-

Рис. 12. Установка параметров тактовых сигналов процессорной системы PS

W 4P 001

солл »хал чгч

«п U * il NJ ■■

Д— m DQl il <1N Ofif пи M

UK «Я« 1ÉÈ

CD ■Л

ев 1 «м M

ПН 1 или IB

КГ» » 41 (ГЦ )# АЖ

НС > П1" ■И Ш

Ми > HP Iffl

□ци 1Ж1Е' но ■un

опт H ULm lill

Рис. 13. Активизация и установка параметров настройки контроллера внешней оперативной памяти

хронизации вступают в силу только после нажатия кнопки OK, находящейся в нижней части этой диалоговой панели.

Следующим шагом установки необходимой конфигурации процессорной системы PS является активизация и настройка контроллера внешней оперативной памяти, для выполнения которой следует расположить курсор на изображении блока DDR2/3, LPDDR2 Controller (рис. 9) и щелкнуть левой кнопкой мыши. При

этом открывается диалоговая панель с заголовком PS7 DDR Configuration, вид которой представлен на рис. 13.

Чтобы активизировать контроллер внешней оперативной DDR-памяти, нужно в этой диалоговой панели установить индикатор состояния параметра Enable DDR Controller в положение «включено». Затем в поле выбора значения параметра Memory Type указать тип используемой оперативной

памяти: DDR2, DDR 3 или LPDDR2. После этого в поле выбора значения параметра MemoryPart необходимо определить тип применяемых микросхем оперативной памяти. Далее, воспользовавшись полем выбора значения параметра Effective DRAM Bus Width, задать эффективную разрядность шины DDR-интерфейса. Если применяемые микросхемы оперативной памяти поддерживают контроль четности, то с помощью поля выбора значения параметра ECC нужно указать, будет ли он использоваться. Значение тактовой частоты для DDR-памяти, установленное при настройке блока синхронизации процессорной системы, отображается в поле Operating Frequency (MHz).

При формировании необходимой конфигурации процессорной системы PS можно также проверить и при необходимости изменить параметры настройки портов интерфейса AXI. Для этого следует поместить курсор на изображение применяемого порта AXI-интерфейса и щелкнуть левой кнопкой мыши: на экран выводится диалоговая панель XPS Core Config-processing_system7_0, вид которой приведен на рис. 14.

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

Каждый раз при создании новой спецификации аппаратной платформы MHS формировать конфигурацию процессорного блока PS с чистого листа достаточно трудоемко. Более эффективный способ — использование шаблонов конфигурации процессорной системы, которые предоставляются средствами проектирования Xilinx Platform Studio или заранее создаются разработчиком. Чтобы импортировать готовый вариант конфигурации процессорного блока PS, следует воспользоваться кнопкой с пиктограммой которая находится в верхней части вкладки Zynq (рис. 9). В результате на экране появляется диалоговая панель Import Zynq Processing System Configurations, вид которой показан на рис. 15.

В верхней части этой диалоговой панели в поле System Template (Configurations available in the installed area) отображается список шаблонов конфигурации процессорной системы, предоставляемых средствами Xilinx Platform Studio. Этот список содержит шаблоны конфигурации для поддерживаемых отладочных плат [12, 14]. В средней части диалоговой панели Import Zynq Processing System Configurations расположено поле UserTemplate (Configurations created by User), в котором представлен список вариантов конфигурации, сформированных разработчиком. Чтобы добавить подготовленный ранее шаблон в этот список, следует нажать кнопку L±_!

¡==31 ■ssJt-ïi: I

Рис. 14. Установка параметров настройки портов интерфейса AXI

Рис. 15. Импортирование конфигурации процессорной системы

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

Для импортирования требуемого шаблона конфигурации процессорного блока PS необ-

ходимо выделить в соответствующем списке строку с его названием, в результате чего в поле Summary of selected Configuration, представленном в нижней части диалоговой панели Import Zynq Processing System Configurations, появится табличное описа-

ние выбранного варианта. В качестве примера на рис. 15 выбран шаблон конфигурации процессорной системы ZedBoard Development Board Template, предоставляемый средствами Xilinx Platform Studio для отладочной платы ZedBoard [12]. В этом варианте конфигурации задействованы контроллеры интерфейсов Ethernet (EnetO), Quad-SPI (QSPI), SD/SDIO (SDO), UART (UART1), USB (USBO), GPIO и таймер/счетчик TTCO. Сделанный выбор необходимо подтвердить нажатием кнопки OK в нижней части рассматриваемой диалоговой панели. После этого на экран выводится запрос на импортирование указанного шаблона конфигурации процессорного блока PS и внесения соответствующих изменений в спецификацию аппаратной платформы MHS разрабатываемой системы, вид которого демонстрирует рис. 16.

При утвердительном ответе на этот запрос произойдет автоматическое обновление интерактивной структурной схемы, изображенной на вкладке Zynq. Все структурные блоки процессорной системы, задействованные в выбранном варианте конфигурации, будут выделены соответствующими цветами. На рис. 17 в качестве примера представ-

Д гр* ^MH^^dH Си^лйд »y^'j ы ■р^ЬЛНлиС.

V wtviH 'JH miwwiiii» F л il mim I — i» .'nA-jiÄi

Ljrt^f jtOTi iHÜHr H Ituv&ijf.

Рис. 16. Запрос на импортирование выбранного варианта конфигурации процессорного блока PS

BankO MIO

(15:0)

I/O MUX (MIO)

Bankl MIO (53:16)

Input Clock &Freq

I/O Peripherals

SPIO

SPI 1

I2C0

I2C1

CANO

CAN 1

UARTO

UART 1

GPIO

SDO

SD 1

USBO

USB 1

EnetO

Enet 1

FLASH Memory

Interfaces

SRAM/NOR

NAND

Quad SPI

SMC Timing

Calculation

Processing System (PS)

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

General Settings

AMBA Connection Legend

Arrow direction shows control, Data flows both directions Configurable AXI3 32 bit/64 bit

bit / AXI3 32 bit / AHB 32 bit / APB

Programmable Logic (PL)

PCIe Gen2

Рис. 17. Вариант конфигурации процессорной системы, записанный в шаблоне ZedBoard Development Board Template

ПЛИС

лен вид структурной схемы процессорной системы после импортирования шаблона конфигурации ZedBoard Development Board Template.

После настройки конфигурации процессорного блока PS нужно добавить в состав формируемой спецификации аппаратной платформы MHS периферийные устройства и аппаратные ускорители, реализуемые на базе ресурсов программируемой логики PL. ■

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

1. Зотов В. Расширение семейства программируемых систем на кристалле Zynq-7000 AP SoC // Компоненты и технологии. 2013. № 12. 2014. № 1.

2. Zynq-7000 All Programmable SoC Overview. Advance Product Specification. Xilinx, 2013.

3. Zynq-7000 All Programmable SoC (XC7Z010, XC7Z015, and XC7Z020): DC and AC Switching Characteristics. Xilinx, 2013.

4. Zynq-7000 All Programmable SoC (XC7Z030, XC7Z045, and XC7Z100): DC and AC Switching Characteristics. Xilinx, 2013.

5. Zynq-7000 All Programmable SoC Technical Reference Manual. Xilinx, 2013.

6. Zynq-7000 All Programmable SoC: Concepts, Tools, and Techniques (CTT) A Hands-On Guide to Effective Embedded System Design. Xilinx, 2013.

7. Zynq-7000 All Programmable SoC Software Developers Guide. Xilinx, 2013.

8. Zynq-7000 All Programmable SoC PCB Design and Pin Planning Guide. Xilinx, 2013.

9. 7 Series FPGAs and Zynq-7000 All Programmable SoC XADC Dual 12-Bit 1 MSPS Analog-to-Digital Converter User Guide. Xilinx, 2012.

10. Зотов В. Средства автоматизированного проектирования и этапы разработки встраиваемых микропроцессорных систем на базе расширяемых процессорных платформ семейства Zynq-7000 AP SoC // Компоненты и технологии. 2014. № 2-3.

11. Зотов В. Моделирование цифровых устройств, проектируемых на основе ПЛИС фирмы Xilinx, средствами ISIM в САПР ISE Design Suite // Компоненты и технологии. 2013. № 2-3.

12. Зотов В. ZedBoard — эффективный инструмент разработки и отладки встраиваемых микропроцессорных систем, проектируемых на основе расширяемых вычислительных платформ фирмы Xilinx семейства Zynq-7000 AP SoC // Компоненты и технологии. 2013. № 6.

13. Зотов В. ModelSim — система HDL-моделирования цифровых устройств // Компоненты и технологии. 2002. № 6. 2003. № 9.

14. Зотов В. Аппаратные средства разработки и отладки встраиваемых микропроцессорных систем, проектируемых на основе расширяемых вычислительных платформ фирмы Xilinx семейства Zynq-7000 AP SoC // Компоненты и технологии. 2013. № 1.

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