Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 25
Предлагаемые отладочные средства не требуют дополнительной контрольно-измерительной аппаратуры для осуществления процесса тестирования разрабатываемых устройств. Для управления этим процессом и доступа к контрольным точкам отлаживаемого решения достаточно стандартного загрузочного кабеля, предназначенного для конфигурирования ПЛИС или расширяемых вычислительных платформ. В ходе внутрикристальной аппаратной отладки, выполняемой с помощью рассматриваемого комплекта инструментов, не задействуются дополнительные пользовательские входы/выходы кристалла программируемой логики или расширяемой процессорной платформы, применяемого для реализации проектируемого устройства. Управление этим процессом и передача значений контролируемых сигналов выполняются через порт JTAG-интерфейса.
Краткая характеристика IP-ядер САПР серии Xilinx Vivado HLx Design Suite
Рассматриваемая версия САПР серии Xilinx Vivado HLx Design Suite предоставляет разработчикам следующие IP-ядра, предназначенные для формирования компонентов внутрикристальной аппаратной отладки проектируемых устройств:
- ядро встроенного конфигурируемого логического анализатора Integrated Logic Analyzer (ILA);
- ядро виртуальных входов/выходов Virtual Input/Output (VIO);
- ядро интерфейсного моста JTAG-to-AXI Master.
В процессе аппаратной отладки разрабатываемых устройств наиболее часто востребованными компонентами являются встроенные логические анализаторы и виртуальные входы/выходы. Поэтому из перечисленных выше IP-ядер основное внимание уделяется параметризированным модулям Integrated Logic Analyzer и Virtual Input/Output.
IP-ядро Integrated Logic Analyzer предназначено для формирования описания встроенного логического анализатора, позволяющего осуществлять захват и фиксацию различных внутренних сигналов проектируемого устройства. В составе рассматриваемой версии САПР серии Xilinx Vivado HLx Design Suite используется модификация ILA (Integrated Logic Analyzer) 6.1 указанного параметризированного модуля, которая обладает следующими функциональными возможностями:
- поддержка выбора количества входных портов, предназначенных для подключения контролируемых цепей и сигналов, задаваемая комбинация состояний которых определяет условия запуска логического анализатора, в диапазоне 1–1024;
- возможность индивидуального выбора разрядности для каждого входного порта в диапазоне 1–4096 бит;
- использование портов сигналов, определяющих условия запуска логического анализатора в качестве входов регистрируемых данных, по выбору разработчика;
- возможность изменения информационной емкости внутреннего буферного запоминающего устройства, предназначенного для записи значений контролируемых сигналов, в диапазоне 1024–131 072 слова;
- наличие опции разрешения или запрета использования признаков (квалификаторов), задаваемых разработчиком, для управления записью захватываемых данных во внутреннее запоминающее устройство;
- включение в состав интерфейса генерируемого логического анализатора (по выбору разработчика) входов и выходов сигналов, предназначенных для управления дополнительным внешним тестовым оборудованием, используемым в процессе отладки проектируемого устройства;
- возможность определения условий запуска логического анализатора и захвата контролируемых данных в виде последовательности комбинаций состояний сигналов, количество которых задается разработчиком.
На основе IP-ядра Virtual Input/Output генерируются виртуальные входы и выходы, обеспечивающие доступ к любому внутреннему сигналу разрабатываемого устройства. Виртуальные контакты ввода/вывода, сформированные с помощью параметризированного модуля VIO, позволяют не только контролировать поведение соответствующих сигналов, но и принудительно изменять их состояние в режиме реального времени. В состав рассматриваемой версии средств проектирования серии Xilinx Vivado HLx Design Suite входит модификация VIO (Virtual Input/Output) 3.0 указанного параметризированного модуля, которая характеризуется следующими функциональными возможностями:
поддержка формирования 1–256 виртуальных входов и выходов;
возможность индивидуального выбора разрядности создаваемых виртуальных входов/выходов в диапазоне 1–256 бит.
Методы формирования и включения в состав проектов компонентов внутрикристальной аппаратной отладки разрабатываемых устройств
Интегрированная среда разработки Vivado Integrated Design Environment (IDE) предоставляет разработчикам три способа формирования и включения в состав описания проектируемого устройства встроенных логических анализаторов, генерируемых на основе IP-ядра Integrated Logic Analyzer. Для создания других компонентов внутрикристальной отладки, формируемых на базе IP-ядер Virtual Input/Output и JTAG-to-AXI Master, может использоваться только следующий из рассматриваемых способов.
Первый способ предполагает подключение отладочных компонентов, создаваемых на базе всех параметризированных модулей, представленных в предыдущем разделе, к соответствующим цепям разрабатываемого устройства на этапе подготовки модулей исходного описания проекта. Для этого сразу после создания исходного HDL-описания проектируемого устройства генерируются все необходимые отладочные компоненты на основе параметризированных модулей ILA, VIO и JTAG-to-AXI Master, которые содержатся в центральном депозитарии IP-ядер САПР серии Xilinx Vivado HLx Design Suite. Доступ к центральному депозитарию обеспечивает команда IP Catalog, которая представлена в разделе Project Manager панели управления основными процессами Flow Navigator, а также во всплывающем меню Window главного окна интегрированной среды разработки Vivado IDE. При активизации этой команды в рабочей области основного окна управляющей оболочки САПР серии Xilinx Vivado HLx Design Suite открывается вкладка IP Catalog, как показано на рис. 1. На открывшейся вкладке приведена информация обо всех IP-ядрах, которые могут использоваться в составе текущего проекта. Эта информация представлена в таблице, состоящей из пяти колонок. В колонке Name перечислены названия доступных IP-ядер. Большинство ядер, представленных в депозитарии IP Catalog, сгруппировано в отдельные папки в соответствии с их функциональным назначением. Названия этих папок также приводятся в колонке Name. В колонке AXI4 отображаются сведения о поддерживаемых вариантах одноименного интерфейса. Колонка Status информирует о статусе предоставляемых IP-ядер. Колонка License содержит информацию о наличии лицензии на применение соответствующих ядер. Колонка VLNV предоставляет сведения о веб-странице производителя и версиях предлагаемых IP-ядер. При выделении в рассмотренной таблице строки с названием требуемого IP-ядра во встроенной панели Details отображаются краткие сведения о выбранном параметризированном модуле. Для получения информации о семействах кристаллов программируемой логики и расширяемых процессорных платформ, поддерживаемых выбранным IP-ядром, следует воспользоваться кнопкой , расположенной на панели инструментов вкладки IP Catalog.
В представленной таблице необходимо открыть папку Debug & Verification, которая предоставляет доступ к IP-ядрам, предназначенным для формирования компонентов внутрикристальной аппаратной отладки разрабатываемых устройств. В этой папке нужно развернуть раздел Debug и поочередно выбрать параметризированные модули для генерации требуемых отладочных компонентов, как показано на рис. 1.
Выбор конфигурации формируемых компонентов производится в диалоговом режиме с помощью мастера настройки параметров соответствующего ядра. Активизация мастера выполняется двойным щелчком левой кнопки мыши при расположении курсора в строке, содержащей название используемого IP-ядра. Параметры, задаваемые при генерации ядер логического анализатора и виртуальных входов/выходов, должны соответствовать структуре разрабатываемого устройства и совокупности сигналов и событий, контролируемых в процессе аппаратной отладки. Затем в исходном HDL-описании проектируемого устройства создаются экземпляры этих отладочных компонентов, чьи входы и выходы подключаются к соответствующим внутренним цепям устройства. Все последующие этапы синтеза, размещения и трассировки проекта в кристалле, формирования конфигурационной последовательности выполняются в обычном порядке, рассмотренном в [26–30, 32, 36–42]. После успешного завершения этих этапов нужно активизировать средства конфигурирования кристаллов программируемой логики и расширяемых процессорных платформ, входящие в состав САПР серии Xilinx Vivado HLx Design Suite, и приступить непосредственно к аппаратной отладке разрабатываемого устройства.
Второй способ формирования IP-компонентов и включения их в состав описания проектируемого устройства применим только для создания встроенных логических анализаторов на базе ядра Integrated Logic Analyzer. Этот способ основан на использовании мастера конфигурирования отладочных IP-компонентов и включения их в синтезированный список соединений проектируемого устройства Set Up Debug Wizard. В данном случае вначале создаются исходные модули HDL-описания разрабатываемого устройства без отладочных компонентов, и выполняется этап логического синтеза. Затем открывается база данных синтезированного проекта и производится запуск мастера, как было представлено в [30]. С помощью диалоговых панелей мастера Set Up Debug Wizard выбирают контролируемые цепи списка соединений проектируемого устройства, а также основные параметры формируемого логического анализатора. После этого в состав синтезированного списка цепей проектируемого устройства добавляют все необходимые отладочные компоненты. Дальнейшие этапы проектирования выполняются в той же последовательности, что и при первом способе.
Третий способ подготовки и подключения встроенных логических анализаторов предоставляет вкладка Debug консольной области основного окна управляющей оболочки САПР серии Xilinx Vivado HLx Design Suite. Панель инструментов и контекстно зависимое всплывающее меню указанной вкладки позволяют быстро сформировать и добавить в состав отлаживаемого проекта логический анализатор с соответствующими входными портами.
Подготовка описаний встроенных конфигурируемых логических анализаторов на основе IP-ядра Integrated Logic Analyzer (ILA)
Для определения конфигурации формируемого логического анализатора в большинстве случаев целесообразно использовать мастер настройки параметров ядра Integrated Logic Analyzer. При его активизации на экране появляется диалоговая панель с заголовком ILA (Integrated Logic Analyzer, 6.1), как демонстрирует рис. 2.
Открывшаяся диалоговая панель содержит две вкладки, на которых представлены соответствующие группы параметров конфигурации создаваемого логического анализатора. При первом запуске мастера настройки параметров ядра Integrated Logic Analyzer открывается вкладка General Options, чей вид приведен на рис. 2. На этой вкладке прежде всего нужно указать название формируемого логического анализатора в поле редактирования значения параметра Component Name. Первоначально при выводе диалоговой панели ILA (Integrated Logic Analyzer, 6.1) в поле редактирования значения указанного параметра отображается идентификатор, предлагаемый по умолчанию, ila_n (где n — порядковый номер формируемого логического анализатора). Для редактирования данного названия или ввода нового идентификатора следует воспользоваться клавиатурой.
Далее с помощью группы кнопок с зависимой фиксацией Monitor Type следует выбрать тип отладочного интерфейса создаваемого логического анализатора. По умолчанию в нажатом состоянии зафиксирована кнопка Native, которая соответствует обычной конфигурации отладочного интерфейса. Для создания логического анализатора с поддержкой интерфейса AXI следует переключить в нажатое положение одноименную кнопку.
Затем нужно указать количество входных портов анализируемых данных и сигналов, комбинация состояний которых используется для определения условий запуска формируемого логического анализатора. Число входных портов создаваемого логического анализатора задается в поле редактирования значения параметра Number of Probes. При использовании рассматриваемого мастера настройки параметров ядра Integrated Logic Analyzer максимальное количество входных портов достигает 64. Если необходимо сформировать логический анализатор с числом входных портов, превосходящим указанное значение, нужно использовать соответствующие команды языка TCL. По умолчанию в поле редактирования значения параметра Number of Probes предлагается единичное значение.
Далее требуется выбрать максимальное количество значений сигналов, записываемых в буферную память, которое определяет информационную емкость внутреннего запоминающего устройства в формируемом логическом анализаторе. Нужный вариант размера фиксируемой выборки анализируемых данных задается с помощью поля выбора значения параметра Sample Data Depth. Выпадающий список возможных значений этого параметра включает восемь вариантов: 1024, 2048, 4096, 8192, 16 384, 32 768, 65 536, 131 072. По умолчанию информационная емкость внутреннего буфера данных полагается равной 1024 словам.
Следующий шаг в процессе конфигурирования встроенного логического анализатора — определение количества схем сравнения (компараторов), подключаемых к соответствующим входным портам. С помощью компараторов отслеживаются события (комбинации уровней сигналов) в процессе аппаратной отладки проектируемого устройства, которые интересуют разработчика. Увеличение количества компараторов, подключаемых к каждому входному порту формируемого логического анализатора, повышает его гибкость, предоставляя больше возможностей для контроля всех необходимых комбинаций значений сигналов в процессе функционирования отлаживаемого устройства. Но при этом соответственно возрастает объем физических ресурсов кристалла программируемой логики или расширяемой процессорной платформы, необходимых для реализации генерируемого логического анализатора. Поэтому не следует без необходимости выбирать большое количество схем сравнения, сопряженных с каждым входным портом. Если в формируемом логическом анализаторе предполагается использование одинакового количества компараторов для всех входных портов, то нужно установить индикатор состояния параметра Number of Comparators for All Probe Ports в положение «Включено». После этого в поле выбора значения параметра Number of Comparators надо указать число компараторов, устанавливаемых на каждом входном порте создаваемого логического анализатора. Выпадающий список возможных значений параметра Number of Comparators содержит 16 вариантов, представляющих собой целые числа в диапазоне 1–16. По умолчанию к каждому порту генерируемого логического анализатора подключается один компаратор.
В конфигурируемых логических анализаторах, создаваемых на основе IP-ядра Integrated Logic Analyzer, предусмотрена возможность использования входа сигнала Trigger In и выхода сигнала Trigger Out. Сигнал, формируемый на выходе Trigger Out при выполнении заданных условий запуска логического анализатора или при изменении состояния сигнала на входе Trigger In, может использоваться для управления внешними аппаратными средствами контроля и диагностики, применяемыми в процессе отладки разрабатываемого устройства. Кроме того, данный сигнал можно задействовать в качестве управляющего или сигнала прерывания в составе отлаживаемого устройства или системы. Чтобы добавить в состав интерфейса создаваемого логического анализатора выходной порт указанного сигнала, нужно установить во включенное положение индикатор состояния параметра Trigger Out Port. Для использования входного порта сигнала Trigger In в формируемом логическом анализаторе следует перевести индикатор состояния параметра Trigger In Port в положение «Включено». По умолчанию индикаторы состояния параметров Trigger In Port и Trigger Out Port находятся в сброшенном положении, запрещающем включение соответствующих входных и выходных портов в состав интерфейса генерируемого логического анализатора.
Рассматриваемое IP-ядро предоставляет также возможность установки на входных портах формируемого логического анализатора дополнительных конвейерных регистров. Количество устанавливаемых регистров указывают с помощью поля выбора значения параметра Input Pipe Stages. Выпадающий список возможных значений этого параметра включает в себя семь вариантов, каждый из которых представляет собой целое число в диапазоне 0–6. По умолчанию в качестве значения параметра Input Pipe Stages предлагается нулевой вариант, при котором конвейерные регистры на входах генерируемого логического анализатора не устанавливаются. Выбор варианта, отличного от нулевого значения, приводит к увеличению объема физических ресурсов ПЛИС или программируемой системы на кристалле, необходимых для реализации формируемого логического анализатора.
Для минимизации необходимой емкости внутреннего запоминающего устройства в создаваемых логических анализаторах IP-ядро Integrated Logic Analyzer предоставляет возможность использования схемы формирования признаков (квалификаторов) записи значений контролируемых сигналов. Таким образом, во внутреннюю память будут загружаться только те значения сигналов, которые соответствуют признакам, определяемым разработчиком. Разрешение или запрет использования признаков (квалификаторов) записи значений анализируемых сигналов во внутреннее запоминающее устройство осуществляется с помощью индикатора состояния параметра Capture Control, представленного в разделе Trigger And Storage Settings вкладки General Options диалоговой панели мастера настройки параметров ядра конфигурируемого логического анализатора Integrated Logic Analyzer (рис. 2). По умолчанию данный индикатор состояния находится в положении «Выключено», запрещающем использование схемы формирования признаков (квалификаторов) записи значений контролируемых сигналов во внутреннюю память формируемого логического анализатора. При установке индикатора состояния параметра Capture Control в положение «Включено» в составе создаваемого логического анализатора может быть задействовано до 15 дополнительных компараторов.
Раздел Trigger And Storage Settings содержит также индикатор состояния параметра Advanced Trigger, который позволяет использовать расширенный режим управления запуском логического анализатора (Advanced Trigger Mode) при осуществлении внутрикристальной аппаратной отладки разрабатываемого устройства. Этот режим предоставляет возможность определения условий запуска логического анализатора в виде последовательности комбинаций состояний сигналов, количество которых задается разработчиком. По умолчанию индикатор состояния параметра Advanced Trigger находится в выключенном положении, соответствующем стандартному режиму функционирования формируемого логического анализатора.
После установки значений основных параметров создаваемого логического анализатора необходимо указать организацию его входных портов, предназначенных для подключения регистрируемых данных и сигналов, комбинация состояний которых определяет условия запуска. Для этого нужно открыть вторую вкладку диалоговой панели мастера настройки параметров ядра Integrated Logic Analyzer. Название и содержание этой вкладки зависит от типа отладочного интерфейса формируемого логического анализатора, выбранного с помощью группы кнопок с зависимой фиксацией Monitor Type. При нажатой кнопке Native вторая вкладка имеет название Probe Ports и вид, изображенный на рис. 3.
На этой вкладке представлена таблица с четырьмя колонками, называющимися Probe Port, Probe Width, Number of Comparators и Probe Trigger or Data. Количество строк в таблице определяется числом входных портов создаваемого логического анализатора, которое было указано в поле редактирования значения параметра Number of Probes на вкладке General Options (рис. 2). В колонке Probe Port отображаются условные обозначения входных портов формируемого логического анализатора, которые имеют формат PROBEn, где n — порядковый номер порта. Каждая ячейка столбца Probe Width содержит поле редактирования значения одноименного параметра, определяющего разрядность соответствующего входного порта. В этих ячейках могут быть указаны целочисленные значения в диапазоне 1–4096. Ячейки колонки Number of Comparators включают поле выбора значения параметра, устанавливающего количество компараторов в составе соответствующего входного порта. Выпадающий список этого поля выбора содержит целочисленные значения в диапазоне 1–16. Ячейки столбца Probe Trigger or Data представляют собой поле выбора типа соответствующих входных портов. Параметризированный модуль Integrated Logic Analyzer позволяет разработчикам использовать один из трех вариантов организации входных портов создаваемого логического анализатора, условные обозначения которых представлены в выпадающем списке возможных значений параметра Probe Trigger or Data. Первый вариант (DATA AND TRIGGER) заключается в использовании портов сигналов, определяющих условия запуска логического анализатора, в качестве входов захватываемых и фиксируемых данных. Второй вариант (DATA) предусматривает формирование входных портов, предназначенных только для регистрации уровней контролируемых сигналов в процессе аппаратной отладки проектируемого устройства. Третий вариант (TRIGGER) соответствует портам сигналов, определяющих условия запуска логического анализатора. В рассмотренной таблице необходимо определить разрядность, количество компараторов и тип каждого входного порта, после чего можно перейти к процессу генерирования встроенного логического анализатора.
Если на вкладке General Options в нажатом состоянии была зафиксирована кнопка AXI, то вторая вкладка диалоговой панели мастера настройки параметров ядра конфигурируемого логического анализатора Integrated Logic Analyzer предназначена для определения параметров одноименного интерфейса. Вид этой вкладки, имеющей название Monitor Interface0, представлен на рис. 4.
Вкладка Monitor Interface0 содержит таблицу основных параметров интерфейса AXI формируемого внутрикристального логического анализатора, в состав которой входят пять колонок с названиями AXI SLOT, AXI PROTOCOL, AXI ID WIDTH, AXI DATA WIDTH и AXI ADDR WIDTH. В колонке AXI SLOT перечислены условные обозначения используемых слотов интерфейса AXI. Ячейки столбца AXI PROTOCOL включают поле выбора значения одноименного параметра, определяющего тип применяемого протокола интерфейса AXI. Каждая ячейка колонок AXI ID WIDTH, AXI DATA WIDTH и AXI ADDR WIDTH представляет собой поле выбора разрядности соответствующих шин интерфейса AXI.
Установив требуемые значения параметров конфигурации создаваемого внутрикристального логического анализатора, необходимо подтвердить их нажатием клавиши OK, расположенной в нижней части диалоговой панели мастера настройки параметров IP-ядра Integrated Logic Analyzer (рис. 2–4). После этого на экране появляется информационная панель с заголовком Customize IP, содержащая краткие сведения о ходе процесса конфигурирования указанного ядра. Вслед за этой панелью открывается диалоговая панель с заголовком Generate Output Product, как показано на рис. 5.
В разделе Preview открывшейся диалоговой панели перечислены группы модулей, которые автоматически создаются в процессе генерации внутрикристального логического анализатора. Группа кнопок с зависимой фиксацией Synthesis Options предоставляет возможность выбора варианта последующего синтеза формируемого логического анализатора. Если в нажатом положении зафиксирована кнопка Global, то сгенерированное описание логического анализатора будет синтезироваться совместно с исходным HDL-описанием проектируемого устройства. При установке в нажатое состояние кнопки Out of context per IP сформированный логический анализатор синтезируется независимо от описания разрабатываемого устройства. Поле выбора значения параметра Number of jobs, представленное в разделе Run Settings рассматриваемой диалоговой панели, позволяет указать количество процессорных ядер используемого ПК, которое будет задействовано в процессе синтеза генерируемого логического анализатора. После установки требуемых значений перечисленных параметров нужно запустить процесс генерации модулей описания встраиваемого логического анализатора, нажав клавишу Generate, расположенную в нижней части диалоговой панели Generate Output Product. Краткие сведения о ходе выполнения этого процесса отображаются в информационных панелях Managing Output Product и Generate Output Product, чей вид приведен на рис. 5.
При успешном завершении генерации модулей описания встраиваемого логического анализатора нужно, используя встроенный HDL-редактор САПР серии Xilinx Vivado HLx Design Suite, включить в состав описания проектируемого устройства один или несколько экземпляров сформированного отладочного компонента. Для этого рекомендуется воспользоваться шаблонами выражений декларации и создания экземпляра логического анализатора, которые представлены в соответствующем файле, сформированном в процессе его генерации. Файл шаблонов имеет название, совпадающее с идентификатором логического анализатора, указанным в поле редактирования значения параметра Component Name (рис. 2), и расширение vho. Доступ к этому файлу предоставляет вкладка IP Sources встроенного окна исходных модулей проекта Sources. При расположении курсора в указанном окне в строке с названием файла шаблонов и двойном щелчке левой кнопкой мыши его содержимое отображается на новой вкладке рабочей области основного окна интегрированной среды разработки Vivado IDE, как демонстрирует рис. 6.
В представленном HDL-коде следует скопировать шаблоны выражений декларации и создания экземпляра сформированного логического анализатора, а затем вставить их в соответствующие разделы исходного описания проектируемого устройства. Далее необходимо подключить соответствующие входные порты каждого экземпляра логического анализатора к требуемым цепям отлаживаемого устройства. После этого нужно последовательно выполнить этапы синтеза и реализации в кристалле проектируемого устройства.
Изменение параметров конфигурации сгенерированного логического анализатора с помощью мастера Set Up Debug Wizard
Последовательность выполнения операций, необходимых для конфигурирования встраиваемого логического анализатора и включения его в состав синтезированного проекта с помощью мастера Set Up Debug Wizard, была подробно представлена в [30]. Поэтому в настоящем разделе рассматривается использование мастера только для изменения параметров конфигурации логического анализатора, сгенерированного ранее.
При повторных запусках мастера Set Up Debug Wizard после стартовой панели на экран выводится вторая диалоговая панель с заголовком Existing Debug Nets, как показано на рис. 7.
Открывшаяся диалоговая панель содержит группу кнопок с зависимой фиксацией, которые предназначены для выбора варианта использования мастера конфигурирования отладочных IP-компо-нентов и включения их в синтезированный список соединений проектируемого устройства. По умолчанию в нажатом состоянии зафиксирована кнопка Continue debugging NN nets connected to existing debug core, которая позволяет в процессе последующей отладки контролировать сигналы указанных ранее цепей. При переходе к следующей диалоговой панели мастера, имеющей заголовок Nets to Debug, чей вид изображен на рис. 8, информация об этих цепях автоматически появляется в таблице анализируемых сигналов.
К указанным ранее цепям можно добавить дополнительные цепи проектируемого устройства, состояние сигналов которых необходимо анализировать в процессе его последующей аппаратной отладки. Для этого нужно воспользоваться одним из способов, рассмотренных в [30].
Для того чтобы продолжить процесс внутрикристальной аппаратной отладки с мониторингом сигналов только новых цепей, необходимо переключить в нажатое положение кнопку Only debug new nets. Дальнейшая работа мастера Set Up Debug Wizard при нажатой кнопке Continue debugging NN nets connected to existing debug core или Only debug new nets осуществляется в той же последовательности отображения диалоговых панелей, которая была представлена в [30].
Для удаления всех отладочных компонентов из базы данных синтезированного проекта следует зафиксировать в нажатом состоянии кнопку Disconnect all nets and remove debug cores. В этом случае следующим шагом в работе мастера Set Up Debug Wizard будет вывод заключительной диалоговой панели с заголовком Set Up Debug Summary, информирующей о количестве удаляемых отладочных компонентов, чей вид представлен на рис. 9. При нажатии клавиши Finish, расположенной в нижней части заключительной диалоговой панели Set Up Debug Summary, производится удаление всех отладочных компонентов, добавленных в состав проектируемого устройства.
Формирование встроенного логического анализатора и включение его в состав синтезированного проекта с помощью инструментов вкладки Debug
Вкладка Debug консольной области основного окна управляющей оболочки САПР серии Xilinx Vivado HLx Design Suite становится доступной при выборе варианта конфигурации интегрированной среды разработки Vivado IDE, предназначенного для отладки разрабатываемого устройства. Выбор указанного варианта осуществляется с помощью команды Debug, представленной во всплывающем меню Layout и выпадающем списке поля выбора конфигурации основного окна управляющей оболочки САПР серии Xilinx Vivado HLx Design Suite (рис. 10).
Для того чтобы сформировать встроенный логический анализатор и добавить его в состав синтезированного описания отлаживаемого проекта, следует воспользоваться кнопкой , размещенной на панели инструментов вкладки Debug, или командой Create Debug Core контекстно зависимого всплывающего меню, которое вызывается щелчком правой кнопки мыши при расположении курсора на рассматриваемой вкладке. При нажатии кнопки или выборе указанной команды на экране появляется диалоговая панель с заголовком Create Debug Core, как демонстрирует рис. 10.
В открывшейся диалоговой панели рекомендуется прежде всего уточнить идентификатор добавляемого внутрикристального логического анализатора в поле редактирования значения параметра Name. Затем нужно в разделе Options указать требуемые значения параметров конфигурации создаваемого отладочного компонента, назначение которых было представлено выше. После нажатия клавиши OK, расположенной в нижней части диалоговой панели Create Debug Core, в таблице отладочных компонентов, представленной на вкладке Debug, появляется новая строка с идентификатором созданного внутрикристального логического анализатора (рис. 11).
Далее необходимо добавить в состав сформированного отладочного компонента входные порты, предназначенные для подключения регистрируемых данных и сигналов, совокупность значений которых определяет условия запуска логического анализатора. Для создания нового входного порта внутрикристального логического анализатора рекомендуется предварительно щелчком левой кнопки мыши выделить в таблице, отображаемой на вкладке Debug, строку с его идентификатором. Затем нужно нажать кнопку , находящуюся на панели инструментов указанной вкладки, или выбрать команду Create Debug Port в контекстно зависимом всплывающем меню. При этом открывается одноименная диалоговая панель, как показано на рис. 11.
В диалоговой панели Create Debug Port следует в поле редактирования значения параметра Debug Core указать идентификатор логического анализатора, для которого создается входной порт. По умолчанию в этом поле редактирования отображается идентификатор, выделенный в таблице отладочных компонентов, расположенной на вкладке Debug. Для выбора другого логического анализатора рекомендуется воспользоваться клавишей с пиктограммой в виде многоточия, которая находится справа от поля редактирования значения параметра Debug Core. При нажатии этой клавиши появляется диалоговая панель с заголовком Select Debug Core, содержащая список идентификаторов доступных отладочных компонентов. В представленном списке следует выделить строку, содержащую идентификатор требуемого логического анализатора, и нажать клавишу OK в нижней части диалоговой панели Select Debug Core.
Разрядность формируемого входного порта указывается в поле редактирования значения параметра Port width, а его тип — в поле выбора значения параметра PROBE_TYPE. Процедура формирования входного порта завершается нажатием клавиши OK, представленной в нижней области диалоговой панели Create Debug Port. После этого в таблице отладочных компонентов в разделе выбранного логического анализатора появляется новая строка с условным обозначением этого порта.
Далее необходимо подключить созданный входной порт внутрикристального логического анализатора к контролируемой цепи проектируемого устройства. Для этого нужно вначале выделить идентификатор интересующей цепи во встроенном окне синтезированного списка соединений Netlist. Затем следует щелчком правой кнопки мыши вызвать контекстно зависимое всплывающее меню, в котором выбрать команду Assign to Debug Port, или нажать кнопку , расположенную на панели инструментов вкладки Debug. После этого открывается диалоговая панель с заголовком Assign to Debug Port, как демонстрирует рис. 12.
Открывшаяся диалоговая панель предоставляет в табличной форме информацию обо всех входных портах логических анализаторов, включенных в состав отлаживаемого проекта. Чтобы подключить выбранную цепь проектируемого устройства к свободному входному порту, необходимо в диалоговой панели Assign to Debug Port выделить строку таблицы, в которой отображается его условное обозначение. После нажатия клавиши OK в этой диалоговой панели информация о подключении интересующей цепи к указанному порту внутрикристального логического анализатора отобразится на вкладке Debug (рис. 13).
Если какая-либо из контролируемых цепей больше не представляет интерес в процессе выполняемой аппаратной отладки проектируемого устройства, то ее целесообразно отключить от входного порта логического анализатора. Для этого нужно в таблице отладочных компонентов, расположенной на вкладке Debug, выделить щелчком левой кнопкой мыши строку с условным обозначением соответствующего подключенного порта. Затем следует щелчком правой кнопки мыши вызвать контекстно зависимое всплывающее меню, чей вид приведен на рис. 13. В открывшемся меню необходимо выбрать команду Disconnect Debug Port, после выполнения которой выбранный порт переводится в неподключенное состояние и может использоваться для мониторинга сигналов других цепей.
Логические анализаторы, добавленные в состав синтезированного проекта, и их входные порты, которые больше не востребованы в процессе аппаратной отладки разрабатываемого устройства, могут быть удалены из проекта. Для удаления неиспользуемых отладочных компонентов или их портов следует выделить соответствующие строки таблицы, представленной на вкладке Debug, а затем воспользоваться командой Delete контекстно зависимого всплывающего меню, открываемого щелчком правой кнопки мыши. При выборе указанной команды на экране появляется диалоговая панель с заголовком Confirm Delete, как показано на рис. 14. Эта диалоговая панель содержит запрос подтверждения удаления выбранных отладочных компонентов. После утвердительного ответа на представленный запрос (нажатия клавиши OK) выделенные логические анализаторы или их входные порты будут удалены из состава синтезированного проекта.
Окончание следует
- Зотов В. Проектирование цифровых устройств на основе ПЛИС фирмы Xilinx в САПР WebPackISE. М.: Горячая линия — Телеком, 2003.
- Зотов В. Проектирование встраиваемых микропроцессорных систем на основе ПЛИС фирмы Xilinx. М.: Горячая линия — Телеком, 2006.
- Зотов В. Проектирование встраиваемых микропроцессорных систем на базе расширяемых процессорных платформ семейства Zynq-7000 AP SoC в САПР XilinxISEDesignSuite// Компоненты и технологии. 2014. № 4–12. № 1.
- Зотов В. Моделирование цифровых устройств, проектируемых на основе ПЛИС фирмы Xilinx, средствами ISIM в САПР ISE Design Suite// Компоненты и технологии. 2013. № 2–3.
- Зотов В. Средства автоматизированного проектирования и этапы разработки встраиваемых микропроцессорных систем на базе расширяемых процессорных платформ семейства Zynq-7000 AP SoC // Компоненты и технологии. 2013. № 2–3.
- Зотов В. Особенности архитектуры нового поколения ПЛИС с архитектурой FPGA фирмы Xilinx // Компоненты и технологии. № 12.
- Зотов В. Расширение семейства программируемых систем на кристалле Zynq-7000 AP SoC // Компоненты и технологии. № 12. 2014. № 1.
- Vivado Design Suite User Guide. Release Notes, Installation and Licensing. Xilinx, 2016.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 1 // Компоненты и технологии. 2016. № 7.
- Зотов В. Конвертирование проектов цифровых устройств, разрабатываемых на основе ПЛИС и полностью программируемых систем на кристалле фирмы Xilinx в среде ISEDesignSuite, в формат САПР VivadoDesignSuite// Компоненты и технологии. 2013. № 8–10.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 2 // Компоненты и технологии. 2016. № 8.
- Зотов В. Разработка VHDL-описаний цифровых устройств, проектируемых на основе ПЛИС фирмы Xilinx, с использованием шаблонов САПР ISEDesignSuite // Компоненты и технологии. 2010. № 2–12. 2011. № 1–12. 2012. № 1–12.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 3 // Компоненты и технологии. 2016. № 9.
- Vivado Design Suite User Guide. Using Constraints. Xilinx, 2016.
- Vivado Design Suite Properties Reference Guide. Xilinx, 2016.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 4 // Компоненты и технологии. 2016. № 10.
- Зотов В. Проектирование узлов синхронизации цифровых устройств и встраиваемых микропроцессорных систем, реализуемых на базе ПЛИС фирмы Xilinx серий Artix-7, Kintex-7 и Virtex-7. Часть 1 // Компоненты и технологии. 2016. № 3.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 5 // Компоненты и технологии. 2016. № 11.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 6 // Компоненты и технологии. 2016. № 12.
- Зотов В. ModelSim — система HDL-моделирования цифровых устройств. // Компоненты и технологии. 2002. № 6.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 7 // Компоненты и технологии. 2017. № 1.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 8 // Компоненты и технологии, № 2. 2017.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 9 // Компоненты и технологии. 2017. № 3.
- UltraFast Design Methodology Quick Reference Guide. Xilinx, 2016.
- UltraFast Design Methodology Guide for the Vivado Design Suite. Xilinx, 2016.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 10 // Компоненты и технологии. 2017. № 4.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 11 // Компоненты и технологии. 2017. № 5.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 12 // Компоненты и технологии. 2017. № 6.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 13 // Компоненты и технологии. 2017. № 7.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 14 // Компоненты и технологии. 2017. № 8.
- Vivado Design Suite User Guide: Synthesis. Xilinx, 2016.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 15 // Компонентыитехнологии. 2017. № 9.
- Large FPGA Methodology Guide Including Stacked Silicon Interconnect (SSI) Technology. Xilinx, 2012.
- Santarini M. Stacked & Loaded: Xilinx SSI, 28-Gbps I/O Yield Amazing FPGAs // Xcell Journal. 2011. № 74.
- Santarini M. Xilinx Ships World’s Highest-Capacity FPGA Using SSI Technology // Xcell Journal. 2011. № 77.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinxв САПР серии VivadoHLxDesignSuite. Часть 16 // Компоненты и технологии. 2017. № 10.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии VivadoHLxDesignSuite. Часть 17 // Компоненты и технологии. 2017. № 12.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 18 // Компоненты и технологии. 2018. № 1.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 19 // Компоненты и технологии. 2018. № 2.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 20 // Компоненты и технологии. 2018. № 3.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 21 // Компоненты и технологии. 2018. № 4.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 22 // Компоненты и технологии. 2018. № 5.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 23 // Компоненты и технологии. 2018. № 6.
- Зотов В. Проектирование цифровых устройств на базе ПЛИС фирмы Xilinx в САПР серии Vivado HLx Design Suite. Часть 24 // Компоненты и технологии. 2018. № 7.