Логотип Intel1

Содержание скрывать
1 Руководство пользователя GPIO Intel® FPGA IP

Руководство пользователя GPIO Intel® FPGA IP


Устройства Intel® Arria® 10 и Intel® Cyclone® 10 GX

Обновлено для Intel® Quartus® Prime Design Suite: 21.2
IP-версия: 20.0.0

GPIO Intel FPGA IP — обратная связь Онлайн версия                                                               ИДЕНТИФИКАТОР: 683136
GPIO Intel FPGA IP — по всему миру Отправить отзыв             уг-altera_gpio            Версия: 2021.07.15


GPIO IP-ядро Intel® FPGA поддерживает функции и компоненты ввода-вывода общего назначения (GPIO). Вы можете использовать GPIO в общих приложениях, которые не относятся к трансиверам, интерфейсам памяти или LVDS.

IP-ядро GPIO доступно только для устройств Intel Arria® 10 и Intel Cyclone® 10 GX. При переносе проектов с устройств Stratix® V, Arria V или Cyclone V необходимо перенести IP-ядра ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR или ALTIOBUF.

Сопутствующая информация

Информация о выпуске для GPIO Intel FPGA IP

Версии Intel FPGA IP соответствуют версиям программного обеспечения Intel Quartus® Prime Design Suite до версии 19.1. Начиная с версии программного обеспечения Intel Quartus Prime Design Suite 19.2, Intel FPGA IP имеет новую схему управления версиями.


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

Сертификат ISO 9001: 2015

Номер IP-версии Intel FPGA (XYZ) может меняться с каждой версией программного обеспечения Intel Quartus Prime. Изменение в:

  • X указывает на основную версию IP. Если вы обновляете программное обеспечение Intel Quartus Prime, вы должны заново сгенерировать IP.
  • Y указывает, что IP включает новые функции. Восстановите свой IP-адрес, чтобы включить эти новые функции.
  • Z указывает на то, что IP содержит незначительные изменения. Восстановите свой IP-адрес, чтобы включить эти изменения.

Табл. 1. Информация о текущем выпуске IP-ядра Intel FPGA GPIO

Элемент

Описание

IP-версия 20.0.0
Версия Intel Quartus Prime 21.2
Дата выпуска 2021.06.23
GPIO IP-функции Intel FPGA

IP-ядро GPIO включает в себя функции для поддержки блоков ввода-вывода устройства. Вы можете использовать редактор параметров Intel Quartus Prime для настройки IP-ядра GPIO.

IP-ядро GPIO предоставляет следующие компоненты:

  • Ввод/вывод с удвоенной скоростью передачи данных (DDIO) — цифровой компонент, который удваивает или уменьшает вдвое скорость передачи данных в канале связи.
  • Цепочки задержек — настройте цепочки задержек для выполнения определенной задержки и помощи в замыкании времени ввода-вывода.
  • Буферы ввода-вывода — подключение контактных площадок к ПЛИС.
Пути IP-данных GPIO Intel FPGA

Рисунок 1. Высокий уровень View одностороннего GPIO

GPIO Intel FPGA IP — рис. 1

Таблица 2. Режимы пути передачи данных IP ядра GPIO

Путь к данным

Режим регистрации
Обход Простая регистрация

Ввод/вывод DDR

Полная ставка

Половина ставки

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

Если вы используете асинхронные сигналы сброса и предустановки, все DDIO используют одни и те же сигналы.

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

Сопутствующая информация
Старшие и младшие биты входной и выходной шины на стр. 12

Входной путь

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

Рисунок 2. Упрощенный View одностороннего входного пути GPIO

GPIO Intel FPGA IP — рис. 2

  1. Пэд получает данные.
  2. DDIO IN (1) захватывает данные о нарастающих и спадающих фронтах сигнала ck_fr и отправляет данные, сигналы (A) и (B) в следующем рисунке формы сигнала с одной скоростью передачи данных.
  3. DDIO IN (2) и DDIO IN (3) вдвое уменьшают скорость передачи данных.
  4. dout[3:0] представляет данные как шину с половинной скоростью.

Рис. 3. Форма сигнала входного тракта в режиме DDIO с преобразованием половинной скорости

На этом рисунке данные переходят от тактовой частоты полной скорости с удвоенной скоростью к тактовой частоте половинной скорости с одинарной скоростью передачи данных. Скорость передачи данных делится на четыре, а размер шины увеличивается в том же отношении. Общая пропускная способность через IP-ядро GPIO остается неизменной.

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

GPIO Intel FPGA IP — рис. 3

Примечание. IP-ядро GPIO не поддерживает динамическую калибровку двунаправленных контактов. Для приложений, требующих динамической калибровки двунаправленных контактов, см. соответствующую информацию.

Сопутствующая информация

Пути вывода и включения вывода

Элемент задержки вывода отправляет данные на пэд через выходной буфер.

Каждый выходной путь содержит два stages DDIO, которые являются половинными и полными скоростями.

Рисунок 4. Упрощенный View одностороннего выходного пути GPIO

GPIO Intel FPGA IP — рис. 4

Рис. 5. Форма сигнала выходного тракта в режиме DDIO с преобразованием половинной скорости

GPIO Intel FPGA IP — рис. 5

Рисунок 6. Упрощенный View выходного пути включения

GPIO Intel FPGA IP — рис. 6

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

Путь OE работает в следующих трех основных режимах:

  • Bypass — ядро ​​отправляет данные напрямую в элемент задержки, минуя все DDIO.
  • Packed Register — обходит DDIO с половинной скоростью.
  • Вывод SDR с половинной скоростью — DDIO с половинной скоростью преобразуют данные с полной скорости в половинную.

Примечание. IP-ядро GPIO не поддерживает динамическую калибровку двунаправленных контактов. Для приложений, требующих динамической калибровки двунаправленных контактов, см. соответствующую информацию.

Сопутствующая информация

GPIO Сигналы IP-интерфейса Intel FPGA

В зависимости от заданных вами настроек параметров для IP-ядра GPIO доступны разные интерфейсные сигналы.

Рис. 7. Интерфейсы IP-ядра GPIO

GPIO Intel FPGA IP — рис. 7

Рисунок 8. Сигналы интерфейса GPIO

GPIO Intel FPGA IP — рис. 8

Таблица 3. Сигналы интерфейса пэда

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

Имя сигнала

Направление

Описание

pad_in[РАЗМЕР-1:0]

Вход

Входной сигнал с пэда.
pad_in_b[РАЗМЕР-1:0]

Вход

Отрицательный узел дифференциального входного сигнала с пэда. Этот порт доступен, если вы включите Использовать дифференциальный буфер вариант. 
pad_out[РАЗМЕР-1:0]

Выход

Выходной сигнал на пэд.
pad_out_b[РАЗМЕР-1:0]

Выход

Отрицательный узел дифференциального выходного сигнала на площадку. Этот порт доступен, если вы включите Использовать дифференциальный буфер вариант.
pad_io[РАЗМЕР-1:0]

двунаправленная

Двунаправленное сигнальное соединение с пэдом.
pad_io_b[РАЗМЕР-1:0]

двунаправленная

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

Таблица 4. Сигналы интерфейса данных

Интерфейс данных — это интерфейс ввода или вывода от IP-ядра GPIO к ядру FPGA. В этой таблице SIZE — это ширина данных, указанная в редакторе основных параметров IP.

Имя сигнала

Направление

Описание

дин[DATA_SIZE-1:0]

Вход

Ввод данных из ядра ПЛИС в выходном или двунаправленном режиме.
DATA_SIZE зависит от режима регистра:
  • Обходной или простой регистр — DATA_SIZE = SIZE
  • DDIO без логики половинной скорости — DATA_SIZE = 2 × SIZE
  • DDIO с логикой половинной скорости — DATA_SIZE = 4 × SIZE
нет[DATA_SIZE-1:0]

Выход

Вывод данных на ядро ​​ПЛИС во входном или двунаправленном режиме,
DATA_SIZE зависит от режима регистра:
  • Обходной или простой регистр — DATA_SIZE = SIZE
  • DDIO без логики половинной скорости — DATA_SIZE = 2 × SIZE
  • DDIO с логикой половинной скорости — DATA_SIZE = 4 × SIZE
ое[OE_SIZE-1:0]

Вход

ввод ОЭ от ядра ПЛИС в режиме вывода с Включить порт включения вывода включен или двунаправленный режим. OE имеет активный высокий уровень.
При передаче данных установите этот сигнал в 1. При приеме данных установите этот сигнал в 0. OE_SIZE зависит от режима регистра:
  • Обходной или простой регистр — DATA_SIZE = SIZE
  • DDIO без логики половинной скорости — DATA_SIZE = SIZE
  • DDIO с логикой половинной скорости — DATA_SIZE = 2 × SIZE

Таблица 5. Сигналы интерфейса часов

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

Имя сигнала

Направление

Описание

ck

Вход

Во входных и выходных путях эти часы подают упакованный регистр или DDIO, если вы отключите Логика половинной скорости параметр.
В двунаправленном режиме эти часы являются уникальными часами для путей ввода и вывода, если вы отключите Отдельные входные/выходные часы параметр.
ck_fr

Вход

Во входных и выходных путях эти часы питают DDIO с полной и половинной скоростью, если вы включите Логика половинной скорости параметр.
В двунаправленном режиме пути ввода и вывода используют эти часы, если вы отключите Отдельные входные/выходные часы параметр.

ck_hr

ck_in

Вход

В двунаправленном режиме эти часы передают упакованный регистр или DDIO по пути ввода и вывода, если вы укажете обе эти настройки:
  • Выключи Логика половинной скорости параметр.
  • Включи Отдельные входные/выходные часы параметр.
ck_out
ck_fr_in

Вход

В двунаправленном режиме эти часы подают DDIOS с полной и половинной скоростью во входные и выходные пути, если вы укажете обе эти настройки.
  • Включи Логика половинной скорости параметр.
  • Включи Отдельные входные/выходные часы параметр.

Напримерample, ck_fr_out передает полноскоростной DDIO в выходной путь.

ck_fr_out
ck_hr_in
ck_hr_out
CKE

Вход

Часы включить.

Таблица 6. Сигналы интерфейса завершения

Терминальный интерфейс соединяет IP-ядро GPIO с буферами ввода-вывода.

Имя сигнала

Направление

Описание

управление завершением серии

Вход

Вход из блока управления завершением (OCT) в буферы. Он устанавливает значение импеданса серии буферов.
параллельное управление завершением

Вход

Вход из блока управления завершением (OCT) в буферы. Он устанавливает значение параллельного импеданса буфера.

Таблица 7. Сигналы интерфейса сброса

Интерфейс сброса соединяет IP-ядро GPIO с DDIO.

Имя сигнала

Направление

Описание

склер

Вход

Синхронный чистый ввод. Недоступно, если вы включите sset.
аклр

Вход

Асинхронный чистый ввод. Активный высокий. Недоступно, если активировать актив.
асет

Вход

Асинхронный ввод набора. Активный высокий. Недоступно, если вы включили aclr.
SSET

Вход

Синхронный ввод набора. Недоступно, если вы включите sclr.

Сопутствующая информация
Старшие и младшие биты входной и выходной шины на стр. 12

Общие сигналы
  • Входные, выходные и OE-тракты используют одни и те же чистые и предустановленные сигналы.
  • Выходной и OE-тракт используют одни и те же тактовые сигналы.
Порядок битов данных для интерфейса данных

Рисунок 9. Соглашение о порядке следования битов данных

На этом рисунке показан порядок битов для сигналов данных din, dout и oe.

GPIO Intel FPGA IP — рис. 9

  • Если значение размера шины данных равно SIZE, младший бит находится в крайнем правом положении.
  • Если значение размера шины данных равно 2 × SIZE, шина состоит из двух слов SIZE.
  • Если размер шины данных равен 4 × SIZE, шина состоит из четырех слов SIZE.
  • LSB находится в самой правой позиции каждого слова.
  • Самое правое слово определяет первое слово, выходящее для выходных шин, и первое слово, входящее для входных шин.

Сопутствующая информация
Входной путь на стр. 5

Старшие и младшие биты шины ввода и вывода

Старшие и младшие биты входных и выходных сигналов включаются в шины ввода и вывода din и dout.

Входная шина

Для шины din, если datain_h и datain_l являются старшими и младшими битами, причем каждая ширина равна datain_width:

  • datain_h = din[(2 × datain_width – 1): datain_width]
  • datain_l = din[(datain_width – 1):0]

Напримерample, для din[7:0] = 8'b11001010:

  • datain_h = 4'b1100
  • datain_l = 4'b1010

Выходная шина

Для шины dout, если dataout_h и dataout_l являются старшими и младшими битами, причем каждая ширина равна dataout_width:

  • dataout_h = dout[(2 × dataout_width – 1): dataout_width]
  • dataout_l = dout[(dataout_width – 1):0]

Напримерample, для dout[7:0] = 8'b11001010:

  • dataout_h = 4'b1100
  • dataout_l = 4'b1010
Сигналы интерфейса данных и соответствующие часы

Таблица 8. Сигналы интерфейса данных и соответствующие часы

Имя сигнала 

Конфигурация параметров Часы
Режим регистрации Половина ставки

Отдельные часы

гам
  • Простая регистрация
  • ДДИО

Выключенный

Выключенный

ck
ДДИО

On

Выключенный

ck_hr
  • Простая регистрация
  • ДДИО

Выключенный

On

ck_in
ДДИО

On

On

ck_hr_in
  • доут
  • oe
  • Простая регистрация
  • ДДИО

Выключенный

Выключенный

ck
ДДИО

On

Выключенный

ck_hr
  • Простая регистрация
  • ДДИО

Выключенный

On

ck_out
ДДИО

On

On

ck_hr_out
  • склер
  • SSET
  • Все сигналы пэда
  • Простая регистрация
  • ДДИО

Выключенный

Выключенный

ck
ДДИО

On

Выключенный

ck_fr
  • Простая регистрация
  • ДДИО

Выключенный

On

  • Входной путь: ck_in
  • Выходной путь: ck_out
ДДИО

On

On

  • Входной путь: ck_fr_in
  • Выходной путь: ck_fr_out
Проверка использования ресурсов и производительности проекта

Вы можете обратиться к отчетам о компиляции Intel Quartus Prime, чтобы получить подробную информацию об использовании ресурсов и производительности вашего проекта.

  1. В меню щелкните Обработка ➤ Начать компиляцию для запуска полной компиляции.
  2. После компиляции дизайна нажмите Обработка ➤ Отчет о компиляции.
  3. Используя Оглавление, перейдите к Монтажник ➤ Раздел ресурсов.
    а. К view информацию об использовании ресурсов, выберите Сводка по использованию ресурсов.
    б. Чтобы view информацию об использовании ресурсов, выберите Использование ресурсов организацией.
Настройки IP-параметров GPIO Intel FPGA

Вы можете установить параметры для IP-ядра GPIO в программном обеспечении Intel Quartus Prime. Есть три группы опций: Общий, Буфер, и Регистры.

Табл. 9. Параметры IP-ядра GPIO — общие

Параметр

Состояние Допустимые значения

Описание

Направление данных

  • Вход
  • Выход 
  • Бидир
Определяет направление данных для GPIO.
Ширина данных

1-128 Определяет ширину данных.
Используйте устаревшие имена портов верхнего уровня

  • On
  • Выключенный
Используйте те же имена портов, что и в устройствах Stratix V, Arria V и Cyclone V.
Напримерample, dout становится dataout_h и dataout_l, а din становится datain_h и datain_l.
Примечание. Эти порты работают иначе, чем в устройствах Stratix V, Arria V и Cyclone V. Рекомендации по миграции см. в соответствующей информации.

Табл. 10. Параметры IP-ядра GPIO — буфер

Параметр

Состояние Допустимые значения

Описание

Использовать дифференциальный буфер

  • On 
  • Выключенный
Если включено, включает дифференциальные буферы ввода/вывода.
Использовать псевдодифференциальный буфер
  • Направление данных = вывод
  • Использовать дифференциальный буфер = Вкл. 
  • On 
  • Выключенный
Если включено в режиме вывода, включает псевдодифференциальные буферы вывода.
Этот параметр автоматически включается для двунаправленного режима, если вы включаете Использовать дифференциальный буфер.
Используйте схему удержания шины
  • Направление данных = ввод или бидир
  • Использовать дифференциальный буфер = Выкл.
  • On 
  • Выключенный
Если эта функция включена, схема удержания шины может слабо удерживать сигнал на контакте ввода-вывода в его последнем управляемом состоянии, когда состояние выходного буфера будет равно 1 или 0, но не будет иметь высокого импеданса.
Используйте выход с открытым стоком
  • Направление данных = Выход или Бидир
  • Использовать дифференциальный буфер = Выкл.
  • On 
  • Выключенный
Выход с открытым стоком, если он включен, позволяет устройству подавать управляющие сигналы системного уровня, такие как сигналы прерывания и разрешения записи, которые могут быть установлены несколькими устройствами в вашей системе.
Включить порт включения вывода Направление данных = вывод
  • On 
  • Выключенный
Если этот параметр включен, пользователь может вводить данные через порт OE. Эта опция автоматически включается для двунаправленного режима.
Включить порты последовательного/параллельного завершения

  • On 
  • Выключенный
Если включено, включает порты управления последовательным и параллельным завершением выходного буфера.

Табл. 11. Параметры IP-ядра GPIO — регистры

Параметр Состояние Допустимые значения Описание
Режим регистрации

  • Никто 
  • Простой регистр 
  • ДДИО
Указывает режим регистрации для IP-ядра GPIO:
  • Никто— задает простое проводное соединение от/к буферу.
  • Простой регистр— указывает, что DDIO используется как простой регистр в режиме одинарной скорости передачи данных (SDR). Установщик может упаковать этот регистр в ввод-вывод.
  • ДДИО— указывает, что ядро ​​IP использует DDIO.
Включить синхронный чистый/предустановленный порт
  • Режим регистрации = DDIO
  • Никто 
  • Прозрачный 
  • Предустановленный
Указывает, как реализовать порт синхронного сброса.
  • Никто— Отключает порт синхронного сброса.
  • Прозрачный— включает порт SCLR для синхронной очистки.
  • Предустановленный— включает порт SSET для синхронной предустановки.
Включить асинхронный чистый/предустановленный порт
  • Режим регистрации = DDIO
  • Никто 
  • Прозрачный 
  • Предустановленный
Указывает, как реализовать порт асинхронного сброса.
  • Никто— Отключает порт асинхронного сброса.
  • Прозрачный— включает порт ACLR для асинхронной очистки.
  • Предустановленный— включает порт ASET для асинхронной предустановки.

Сигналы ACLR и ASET имеют активный высокий уровень.

Включить часы включения портов Режим регистрации = DDIO
  • On 
  • Выключенный
  • On— предоставляет порт включения синхронизации (CKE), чтобы вы могли контролировать, когда данные синхронизируются. Этот сигнал предотвращает передачу данных без вашего контроля.
  • Выключенный— порт включения часов не выставляется напоказ и данные всегда проходят через регистр автоматически.
Логика половинной скорости Режим регистрации = DDIO
  • On 
  • Выключенный
Если включено, включает DDIO с половинной скоростью.
Отдельный вход/выход Часы
  • Направление данных = Bidir 
  • Режим регистрации = простой регистр или DDIO
  • On 
  • Выключенный
Если включено, включает отдельные часы (CK_IN и CK_OUT) для путей ввода и вывода в двунаправленном режиме.

Сопутствующая информация

  • Старшие и младшие биты входной и выходной шины на стр. 12
  • Рекомендация: Поменяйте местами порты datain_h и datain_l в перенесенном IP-адресе на стр. 23
Регистрация Упаковка

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

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

Таблица 12. Назначения QSF для упаковки регистров

Путь

Назначение КСФ

Упаковка входного регистра Назначение QSF set_instance_assignment -name FAST_INPUT_REGISTER ON -to
Упаковка выходного регистра set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to
Вывод разрешает упаковку регистров set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to

Примечание. Эти назначения не гарантируют упаковку регистров. Однако эти задания позволяют установщику найти легальное место работы. В противном случае установщик держит флип-флоп в ядре.

GPIO Intel FPGA IP-синхронизация

Производительность IP-ядра GPIO зависит от ограничений ввода-вывода и тактовых фаз. Чтобы проверить синхронизацию для вашей конфигурации GPIO, Intel рекомендует использовать анализатор синхронизации.

Сопутствующая информация
Анализатор времени Intel Quartus Prime

Сроки Компоненты

Компоненты синхронизации ядра IP GPIO состоят из трех путей.

  • Пути интерфейсов ввода-вывода — от ПЛИС к внешним приемным устройствам и от внешних передающих устройств к ПЛИС.
  • Пути данных и часов интерфейса ядра — от ввода-вывода к ядру и от ядра к вводу-выводу.
  • Пути передачи — от DDIO с половинной скоростью к DDIO с полной скоростью и от DDIO с полной скоростью к DDIO с половинной скоростью.

Примечание. Анализатор времени обрабатывает путь внутри блоков DDIO_IN и DDIO_OUT как черные ящики.

Рисунок 10. Компоненты синхронизации входного пути

GPIO Intel FPGA IP — рис. 10

Рисунок 11. Компоненты синхронизации выходного пути

GPIO Intel FPGA IP — рис. 11

Рис. 12. Компоненты синхронизации пути включения вывода

GPIO Intel FPGA IP — рис. 12

Элементы задержки

Программное обеспечение Intel Quartus Prime не устанавливает автоматически элементы задержки, чтобы максимизировать резерв времени при анализе синхронизации ввода-вывода. Чтобы закрыть тайминг или максимизировать слабину, задайте элементы задержки вручную в настройках Intel Quartus Prime. file (.qsf).

Таблица 13. Назначения элементов задержки .qsf

Укажите эти назначения в .qsf для доступа к элементам задержки.

Элемент задержки .qsf Назначение
Входной элемент задержки set_instance_assignment для -имя INPUT_DELAY_CHAIN ​​<0..63>
Выходной элемент задержки set_instance_assignment для -name OUTPUT_DELAY_CHAIN ​​<0..15>
Элемент задержки включения выхода set_instance_assignment для -name OE_DELAY_CHAIN ​​<0..15>
Анализ времени

Программное обеспечение Intel Quartus Prime не создает автоматически временные ограничения SDC для IP-ядра GPIO. Вы должны вручную ввести временные ограничения.

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

  • Чтобы выполнить надлежащий анализ синхронизации для путей интерфейса ввода-вывода, укажите ограничения уровня системы для выводов данных относительно вывода системных часов в файле .sdc. file.
  • Чтобы выполнить правильный анализ синхронизации для основных путей интерфейса, определите эти настройки часов в файле .sdc. file:
    — Часы для основных регистров
    — Часы для регистров ввода-вывода для простых регистров и режимов DDIO

Сопутствующая информация
AN 433: Ограничение и анализ исходно-синхронных интерфейсов
Описывает методы ограничения и анализа исходно-синхронных интерфейсов.

Входной регистр с одной скоростью передачи данных

Рис. 13. Регистр ввода с одной скоростью передачи данных

GPIO Intel FPGA IP — рис. 13

Табл. 14. Регистр ввода с одной скоростью передачи данных .sdc Command Exampле

Команда Команда Example Описание
создать_часы create_clock -имя sdr_in_clk -период
«100 МГц» sdr_in_clk
Создает настройку часов для входных часов.
set_input_delay set_input_delay -часы sdr_in_clk
0.15 sdr_in_data
Дает указание анализатору синхронизации анализировать синхронизацию входного ввода-вывода с задержкой ввода 0.15 нс.
Входной регистр DDIO с полной или половинной скоростью

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

Рисунок 14. Входной регистр DDIO с полной или половинной скоростью

GPIO Intel FPGA IP — рис. 14

Таблица 15. Входной регистр DDIO с полной или половинной скоростью .sdc Команда Примерampле

Команда Команда Example Описание
создать_часы create_clock -имя виртуальные_часы
-период «200 МГц»
create_clock -имя ddio_in_clk
-период «200 МГц» ddio_in_clk
Создайте настройку часов для виртуальных часов и часов DDIO.
set_input_delay set_input_delay -часы виртуальные_часы
0.25 ddio_in_data
set_input_delay -добавить_задержку
-clock_fall -часы виртуальные_часы 0.25
ddio_in_data
Поручите анализатору времени проанализировать положительный и отрицательный фронт тактового сигнала передачи. Обратите внимание на -add_delay во второй команде set_input_delay.
set_false_path set_false_path -fall_from
виртуальные_часы -rise_to ddio_in_clk
set_false_path-rise_from
virtual_lock -fall_to ddio_in_clk
Инструктирует анализатор времени игнорировать положительный фронт тактового сигнала в регистре, запускаемом отрицательным фронтом, и отрицательный фронт тактового сигнала в регистре, запускаемом положительным фронтом.

Примечание. Частота ck_hr должна составлять половину частоты ck_fr. Если PLL ввода-вывода управляет тактовыми импульсами, вы можете рассмотреть возможность использования командыderive_pll_clocks .sdc.

Выходной регистр с одной скоростью передачи данных

Рис. 15. Регистр вывода с одной скоростью передачи данных

GPIO Intel FPGA IP — рис. 15

Таблица 16. Выходной регистр с одинарной скоростью передачи данных .sdc Command Exampле

Команда Команда Example Описание
create_clock и create_generated_clock create_clock -имя sdr_out_clk
-период «100 МГц» sdr_out_clk
create_generated_clock - источник
sdr_out_clk -имя sdr_out_outclk
sdr_out_outclk
Сгенерируйте исходные часы и выходные часы для передачи.
set_output_delay set_output_delay -часы sdr_out_clk
0.45 sdr_out_data
Дает указание анализатору времени анализировать выходные данные для передачи в соответствии с выходными тактовыми импульсами для передачи.
Выходной регистр DDIO с полной или половинной скоростью

Выходная сторона выходных регистров DDIO с полной и половинной скоростью одинакова.

Таблица 17. Выходной регистр DDIO .sdc Команда Примерampле

Команда Команда Example Описание
create_clock и create_generated_clock create_clock -имя ddio_out_fr_clk
-период «200 МГц» ddio_out_fr_clk
create_generated_clock - источник
ddio_out_fr_clk -имя
ddio_out_fr_outclk
ddio_out_fr_outclk
Сгенерируйте часы для DDIO и часы для передачи.
set_output_delay set_output_delay-часы
ddio_out_fr_outclk 0.55
ddio_out_fr_data
set_output_delay -добавить_задержку
-clock_fall -часы
ddio_out_fr_outclk 0.55
ddio_out_fr_data
Поручите анализатору времени проанализировать положительные и отрицательные данные относительно выходного тактового сигнала.
set_false_path set_false_path-rise_from
ddio_out_fr_clk -fall_to
ddio_out_fr_outclk
set_false_path -fall_from
ddio_out_fr_clk -rise_to
ddio_out_fr_outclk
Дайте временному анализатору команду игнорировать нарастающий фронт исходного тактового сигнала по сравнению с задним фронтом выходного тактового сигнала и задний фронт исходного тактового сигнала по нарастающему фронту выходного тактового сигнала.
Рекомендации по срокам закрытия

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

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

Однако, если PLL ввода-вывода управляет тактовыми импульсами входных регистров GPIO (режим простого регистра или DDIO), вы можете установить режим компенсации на синхронный режим источника. Установщик попытается сконфигурировать PLL ввода-вывода для лучшей настройки и оставить резерв для анализа синхронизации ввода-вывода.

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

  • Если вы наблюдаете нарушение времени настройки, вы можете увеличить настройку цепочки задержки выходного тактового сигнала.
  • Если вы наблюдаете нарушение времени удержания, вы можете увеличить настройку цепочки задержки выходных данных.
GPIO Intel FPGA IP Design Exampле

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

Вы можете сгенерировать дизайн exampфайлы из редактора параметров ядра IP GPIO. Установив нужные параметры, нажмите Сгенерировать примерampЛе Дизайн. Ядро IP генерирует дизайн exampисточник files в указанном вами каталоге.

Рисунок 16. Источник Files в сгенерированном проекте Exampкаталог

GPIO Intel FPGA IP — рис. 16

Примечание. .qsys files предназначены для внутреннего использования во время проектирования exampтолько поколение. Вы не можете редактировать эти .qsys files.

Синтезируемое IP-ядро GPIO Intel Quartus Prime Design Example

Синтезируемый дизайн example представляет собой готовую к компиляции систему Platform Designer, которую можно включить в проект Intel Quartus Prime.

Генерация и использование Design Example

Для создания синтезируемого дизайна Intel Quartus Prime exampле из источника files, выполните следующую команду в дизайне exampкаталог файлов:

quartus_sh -t make_qii_design.tcl

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

quartus_sh -t make_qii_design.tcl [имя_устройства]

Сценарий TCL создает каталог qii, содержащий проект ed_synth.qpf. file. Вы можете открыть и скомпилировать этот проект в программном обеспечении Intel Quartus Prime.

Моделирование IP-ядра GPIO Example

Дизайн моделирования exampФайл использует настройки параметров ядра IP GPIO для создания экземпляра IP, подключенного к драйверу моделирования. Драйвер генерирует случайный трафик и внутренне проверяет легальность исходящих данных.

Использование конструкции example, вы можете запустить симуляцию с помощью одной команды, в зависимости от используемого вами симулятора. Моделирование демонстрирует, как можно использовать IP-ядро GPIO.

Генерация и использование Design Example

Чтобы сгенерировать модель моделирования exampле из источника files для симулятора Verilog выполните следующую команду в дизайне exampкаталог файлов:

quartus_sh -t make_sim_design.tcl

Чтобы сгенерировать модель моделирования exampле из источника files для симулятора VHDL выполните следующую команду в проекте exampкаталог файлов:

quartus_sh -t make_sim_design.tcl VHDL

Сценарий TCL создает каталог sim, который содержит подкаталоги — по одному для каждого поддерживаемого инструмента моделирования. Вы можете найти сценарии для каждого инструмента моделирования в соответствующих каталогах.

Процедура миграции IP-адресов для устройств Arria V, Cyclone V и Stratix V

Процесс миграции IP позволяет перенести IP-ядра ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR и ALTIOBUF устройств Arria V, Cyclone V и Stratix V на IP-ядро GPIO устройств Intel Arria 10 и Intel Cyclone 10 GX.

Этот поток IP-миграции настраивает IP-ядро GPIO в соответствии с настройками IP-ядер ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR и ALTIOBUF, что позволяет регенерировать IP-ядро.

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

Миграция IP-ядер ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR и ALTIOBUF

Чтобы перенести IP-ядра ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR и ALTIOBUF на IP-ядро GPIO Intel FPGA, выполните следующие действия.

  1. Откройте IP-ядро ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR или ALTIOBUF в редакторе IP-параметров.
  2. В Текущее выбранное семейство устройств, выбирать Интел Аррия 10 or Intel Cyclone 10 GX.
  3. Нажмите Заканчивать чтобы открыть Редактор IP-параметров GPIO.
    Редактор параметров IP настраивает параметры ядра IP GPIO, аналогичные параметрам ядра ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR или ALTIOBUF.
  4. Если между ними есть какие-либо несовместимые настройки, выберите новые поддерживаемые настройки.
  5. Нажмите Заканчивать для регенерации ядра IP.
  6. Замените экземпляр IP-ядра ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR или ALTIOBUF в RTL на IP-ядро GPIO.

Примечание. Имена портов ядра IP GPIO могут не совпадать с именами портов ядра IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR или ALTIOBUF. Поэтому простого изменения имени IP-ядра при создании экземпляра может быть недостаточно.

Сопутствующая информация
Старшие и младшие биты входной и выходной шины на стр. 12

Руководство: поменяйте местами порты datain_h и datain_l в перенесенном IP-адресе

Когда вы переносите свой IP-адрес GPIO с предыдущих устройств на IP-ядро GPIO, вы можете включить Используйте устаревшие имена портов верхнего уровня в редакторе параметров ядра IP GPIO. Однако поведение этих портов в IP-ядре GPIO отличается от IP-ядер, используемых для устройств Stratix V, Arria V и Cyclone V.

IP-ядро GPIO направляет эти порты в выходные регистры на следующих фронтах тактовых импульсов:

  • datain_h — по переднему фронту аутклокинга
  • datain_l — на падающем фронте аутклокинга

Если вы перенесли свой IP-адрес GPIO с устройств Stratix V, Arria V и Cyclone V, поменяйте местами порты datain_h и datain_l при создании экземпляра IP-адреса, сгенерированного IP-ядром GPIO.

Сопутствующая информация
Старшие и младшие биты входной и выходной шины на стр. 12

GPIO Архив руководства пользователя Intel FPGA IP

Версии IP совпадают с версиями программного обеспечения Intel Quartus Prime Design Suite до версии 19.1. Начиная с версии программного обеспечения Intel Quartus Prime Design Suite 19.2 или более поздней версии, IP-ядра имеют новую схему управления версиями IP.

Если версия ядра IP отсутствует в списке, применяется руководство пользователя для предыдущей версии ядра IP.

Версия IP-ядра

Руководство пользователя

20.0.0 GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX
19.3.0 GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX
19.3.0 GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX
18.1 GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX
18.0 GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX
17.1 Руководство пользователя IP-ядра Intel FPGA GPIO
17.0 Руководство пользователя Altera GPIO IP Core
16.1 Руководство пользователя Altera GPIO IP Core
16.0 Руководство пользователя Altera GPIO IP Core
14.1 Руководство пользователя мегафункции Altera GPIO
13.1 Руководство пользователя мегафункции Altera GPIO
История изменений документа для GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX

Версия документа

Версия Intel Quartus Prime IP-версия

Изменения

2021.07.15

21.2

20.0.0

Обновлена ​​диаграмма, показывающая упрощенный view одностороннего входного пути GPIO, чтобы обновить dout[0] до dout[3] и dout[3] до dout[0].

2021.03.29

21.1

20.0.0

Обновлен номер версии IP GPIO до 20.0.0.

2021.03.12

20.4

19.3.0

Обновлено руководство по миграции IP, чтобы указать, что IP-адрес GPIO управляет datain_h по переднему фронту и datain_l по заднему фронту.

2019.10.01

19.3

19.3.0

Исправлена ​​опечатка в кодах присвоения .qsf в теме про элементы задержки.

2019.03.04

18.1

18.1

В темах о входном пути, а также выходных и выходных разрешающих путях:
  • Исправлены примечания в темах, чтобы указать, что GPIO Intel FPGA IP не поддерживает динамическую калибровку двунаправленных контактов.
  • Добавлены ссылки на руководство пользователя PHY Lite для параллельных интерфейсов Intel FPGA IP Core: устройства Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX для получения дополнительной информации о приложениях, требующих динамической калибровки для двунаправленных контактов.

2018.08.28

18.0

18.0

  • Документ переименован из Руководства пользователя Intel FPGA GPIO IP Core в GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX.
  • Добавлена ​​ссылка на руководство пользователя Intel Stratix 10 GPIO IP. 
  • IP-адрес переименован с «Intel FPGA GPIO» на «GPIO Intel FPGA IP». 
  • Исправлены экземпляры «clk_fr» и «clk_hr» на «ck_fr» и «ck_hr». 
  • Обновлены диаграммы входных и выходных путей IP GPIO, чтобы показать фактические имена основных сигналов IP.
Дата Версия Изменения
Ноябрь 2017 г. 2017.11.06
  • Добавлена ​​поддержка устройств Intel Cyclone 10 GX.
  • Обновлены имена сигналов на рисунках, чтобы они соответствовали именам сигналов в IP-ядре GPIO.
  • Добавлен выходной сигнал пути.
  • «IP-ядро Altera GPIO» переименовано в «IP-ядро Intel FPGA GPIO».
  • «IP-ядро Altera IOPLL» переименовано в «IP-ядро Intel FPGA IOPLL».
  • «TimeQuest Timing Analyzer» переименован в «Timing Analyzer».
  • «Qsys» переименован в «Конструктор платформ».
  • Выяснено, что сигналы ASET и ACLR имеют активный высокий уровень.
Май 2017 г. 2017.05.08
  • Обновлена ​​таблица со списком параметров буфера GPIO, чтобы указать условия для Используйте схему удержания шины вариант параметра.
  • Переименован в Intel.
Октябрь 2016 г. 2016.10.31
  • Обновлена ​​форма волны входного пути.
  • Добавлена ​​тема с описанием старших и младших битов в шинах din и dout.
Август 2016 г. 2016.08.05
  • Добавлены примечания о поддержке динамического OCT в IP-ядре GPIO.
  • Обновлен раздел о настройках параметров для повышения точности и ясности.
  • Обновлен раздел о создании проекта exampле.
  • Добавлен раздел рекомендаций о поведении устаревших портов при переходе на IP-ядро GPIO с устройств Stratix V, Arria V и Cyclone V.
  • Переписали и реструктурировали документ, чтобы сделать его более ясным и удобным для использования.
  • Экземпляры Quartus II заменены на Quartus Prime.
Август 2014 г. 2014.08.18
  • Добавлена ​​информация о времени.
  • Добавлена ​​информация об упаковке регистра.
  • Добавлен Используйте устаревшие имена портов верхнего уровня параметр. Это новый параметр.
  • Добавлена ​​информация об упаковке регистра.
  • Термин «мегафункция» заменен на IP-ядро.
Ноябрь 2013 г. 2013.11.29 Первоначальный выпуск.

GPIO Intel FPGA IP — обратная связь Отправить отзыв

GPIO Руководство пользователя Intel FPGA IP: устройства Intel Arria 10 и Intel Cyclone 10 GX

Документы/Ресурсы

Intel GPIO Intel FPGA IP [pdf] Руководство пользователя
GPIO Intel FPGA IP, GPIO, Intel FPGA IP, FPGA IP

Ссылки

Оставьте комментарий

Ваш адрес электронной почты не будет опубликован. Обязательные поля отмечены *