Подписка на новости

Опрос

Нужны ли комментарии к статьям? Комментировали бы вы?

Реклама

 

2007 №12

Новые возможности построения кристаллических систем на базе FPGA Xilinx

Тарасов Илья


Объем новостей о ПЛИС Xilinx за прошедший год несколько меньше, чем в прошлом году. С появлением платформ семейства Virtex-5 открывается перспектива для создания разновидностей ПЛИС, подсемейств, добавления аппаратных узлов. В сфере дешевых ПЛИС семейства Spartan-3 кардинальных изменений не наблюдалось, однако появившиеся продукты, с незначительными на первый взгляд изменениями, в действительности представляют существенный интерес для практической разработки цифровых систем.

Новые FPGA

В течение 2007 года появились платформа Virtex-5 SXT, ориентированная на цифровую обработку сигналов (возможности которой уже были рассмотрены в КиТ № 5/2007), и семейство Spartan-3AN — разновидность Spartan-3A — с встроенной в корпус микросхемы конфигурационной памятью, делающей возможными одночиповые решения на базе архитектуры FPGA, что ранее было доступно только для устройств с энергонезависимой памятью фирмы Actel.

Дополнительно в начале декабря выпущена ПЛИС Virtex-5LX155, которая стала промежуточным звеном в ряду LX110 — LX220. Характеристики нового устройства (и двух смежных) приведены в таблице 1.

Таблица 1. Характеристики ПЛИС Virtex-5LX155
Характеристики ПЛИС Virtex-5LX155

Новая ПЛИС имеет аналог с последовательными приемопередатчиками — XC5VLX155T. Факт добавления новой микросхемы к семейству Virtex-5 демонстрирует преимущества архитектуры ASMBL (Advanced Silicon Modular Blocks): при необходимости получения нового устройства оно было «набрано» из стандартных модулей. Из документации можно увидеть, что устройство LX110 содержит 54 колонки по 160 секций, а новая ПЛИС LX155 — 76 колонок такого же размера, т. е. LX155 можно рассматривать как LX110 с добавленными колонками блоков. Таким образом, новый подход Xilinx к построению высокопроизводительных FPGA позволил выпустить новую микросхему «на ходу», при уже запущенном процессе производства. Предполагается, что в состав семейства Virtex-5 и далее будут добавляться новые устройства в ответ на потребности разработчиков.

Возможности семейства Spartan-3AN

В последнее время Xilinx не показывает явного стремления форсировать технологическую гонку в области FPGA низкой стоимости, продолжая выпускать разновидности семейства Spartan-3, выполняемого по 90-нм технологическому процессу. В настоящий момент кроме базового Spartan-3 имеются Spartan-3L, Spartan-3E, Spartan-3A, Spartan-3A DSP и новейшая Spartan-3AN. Для удобства перечислим их основные особенности в таблице 2.

Таблица 2. Основные особенности семейства Spartan-3
Основные особенности семейства Spartan-3

Последняя из перечисленных разновидностей весьма интересна в плане технологии производства электронной аппаратуры. Практически впервые в истории развития архитектуры FPGA конфигурационная флэш-память выполнена внутри корпуса ПЛИС. Она аналогична микросхемам AT45DB и размещена в ПЛИС по принципу микросборки (т. е. с выполнением на отдельной кремниевой подложке). Таким образом, речь идет не о кардинально ином принципе построения логической ячейки, а о технологическом объединении в одном корпусе двух кремниевых кристаллов— FPGA и соответствующей ей по объему конфигурационной флэш-ПЗУ. Как минимум, такое решение упрощает печатную плату, экономит ее площадь и уменьшает стоимость (цена Spartan-3AN оказывается ниже, чем цена «комплекта» из Spartan-3A и флэш-ПЗУ семейства XCF). Дополнительно из номенклатуры приобретаемых компонентов исключается микросхема флэш-памяти.

Рассматривая варианты исполнения кристаллических систем на базе ПЛИС без флэш-памяти, можно оценить общий объем блочной памяти как 32–64 кб (для FPGA Spartan-3 малого и среднего объема). Этот объем необходимо пропорционально поделить между памятью команд и данных, и становится очевидным, что большинство микроконтроллеров, присутствующих на рынке, способны обеспечить сопоставимый, а в большинстве случаев превосходящий, суммарный объем памяти. Действительно, можно найти МК с 64–256 кб накристальной флэш-памяти программ и 4–16 кб памяти данных. Тот факт, что в FPGA в качестве памяти программ используется блочная статическая память, малосущественен. Она инициализируется из конфигурационного потока, так что после загрузки FPGA сразу получает процессор с программой, однако возможности блочной памяти используются несколько ограниченно — по сути как разновидности ПЗУ.

С появлением в корпусе FPGA загрузочной флэш-памяти ситуация кардинально меняется. Ее объем, как уже было сказано, определяется возможностью хранить два несжатых конфигурационных потока (чтобы FPGA можно было загружать в режиме Multiboot, выбирая один из двух). Даже в этом случае пользователю остается некоторый объем для хранения данных. А если рассмотреть, к примеру, старшее устройство XC3S1400AN, то для него требуется около 5 Мбит для хранения конфигурации и, соответственно, минимум 10 Мбит для хранения двух копий. При выборе объема флэш-ПЗУ минимально подходящим является устройство объемом 16 Мбит — следовательно, 6 Мбит остаются свободными. Отказавшись от режима Multiboot (далеко не всегда он жизненно необходим), можно поднять эту планку до 11 Мбит, что составляет уже почти полтора мегабайта! В итоге рассматриваемое устройство предоставляет разработчику ~1,4 Мбайт флэш-памяти для хранения программы и 72 кбайт статической блочной памяти для хранения данных. Это объемы, позволяющие подойти к проектированию системы на принципиально ином уровне. Для самого младшего устройства в семействе объем памяти, разумеется, существенно меньше и составляет около 75 кбайт свободной флэш-памяти и чуть меньше 8 кбайт статического ОЗУ.

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

  • Память в FPGA не требует тщательной трассировки печатной платы, поскольку соединения выполняются средствами САПР. Это существеннейшим образом повышает надежность системы, так как целостность сигналов перестает зависеть от конструктора печатной платы или качества монтажа. В то же время для достижения тех высоких характеристик производительности, которые приводятся в справочных сведениях на микросхемы памяти, необходимо выполнить все условия и ограничения по взаимному размещению компонентов и трассировке печатных проводников.
  • Память может быть запрограммирована унифицированным образом штатными средствами САПР через интерфейс JTAG. Для внешней флэш-памяти потребуется специальный программатор, выполняемый в виде отдельного модуля в FPGA, и обеспечение связи для передачи данных.
  • Производительность накристальной блочной памяти существенно выше, чем внешней памяти. Повышение достигается как за счет достаточно высокой тактовой частоты (около 300 МГц для всех семейств Spartan-3, 550 — для Virtex-5), так и благодаря наличию на кристалле нескольких независимых блоков, работающих параллельно. Флэш-память представлена в ПЛИС блоком с интерфейсом SPI и максимальной тактовой частотой 66 МГц.
  • Размещение конфигурационной памяти внутри ПЛИС существенно затрудняет клонирование устройства путем перехвата конфигурационного потока. Если для прочих FPGA имеется возможность подключения к печатным проводникам и захват конфигурационной последовательности, то для копирования конфигурации устройства на базе Spartan-3AN требуется вскрыть корпус микросхемы. Однако копия может оказаться совершенно бесполезной, так как каждый экземпляр FPGA Spartan-3AN имеет уникальный 57-битный номер (Device DNA), который может быть использован разработчиком для создания системы защиты от копирования. С учетом того, что восстановление структуры проекта по конфигурационному файлу практически нереально, несанкционированное клонирование устройств с проектами, защищенными на базе Device DNA, становится сложной технической задачей. Аппаратный Device DNA есть не только в Spartan-3AN, но и в схожих семействах Spartan-3A и Spartan-3A DSP.

Новые возможности систем автоматизированного проектирования для ПЛИС Xilinx

В области САПР изменения за текущий год являются скорее эволюционными. Новая версия САПР появляется в начале календарного года, с последующими обновлениями и сервис-паками. В настоящий момент активной является версия ISE 9.2 с обновлением SP4. При установке обновления библиотеки IP-ядер (IP update) в списке ядер появляется Memory Interface Generator (MIG), который раньше представлял собой отдельную утилиту. Однако важность выполняемой им функции достаточно интересна для целого ряда задач. Речь идет об автоматической генерации интерфейсов внешней памяти — DDR, DDR II. В последние версии ISE входит ядро MIG 2.0.

Создание интерфейсов внешней памяти в действительности является довольно ответственной задачей, которая не сводится только к обеспечению правильного порядка формирования сигналов для модулей динамической памяти. Для устройств, работающих на высокой частоте, необходимо учитывать задержки, вносимые внешними печатными проводниками, температурные дрейфы и технологический разброс параметров ПЛИС и микросхем памяти, скорость нарастания тактового сигнала, джиттер и тому подобные факторы. В конечном итоге промежуток времени, в течение которого данные являются достоверными и могут быть прочитаны, весьма мал (рис. 1). Поэтому стандартное средство создания интерфейсов избавляет разработчика от кропотливой работы по запуску контроллера, в которой основную сложность представляет не операционное описание, а введение проектных ограничений, обеспечение компенсации задержек распространения сигналов и калибровки контроллера. Последний пункт выполняется контроллерами на устройствах Virtex-4/5 автоматически, с использованием встроенных в каждый блок ввода/вывода динамически реконфигурируемых линий задержки. Такие линии позволяют производить тонкую подстройку задержек в разных разрядах шины, что в конечном итоге позволяет FPGA Virtex-5 работать с памятью стандарта DDR2-800.

Временные диаграммы при работе с высокоскоростной памятью DDR2
Рис. 1. Временные диаграммы при работе с высокоскоростной памятью DDR2

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

Окно мастера (один из этапов) создания контроллера внешней памяти
Рис. 2. Окно мастера (один из этапов) создания контроллера внешней памяти

С учетом произошедших изменений к наиболее характерным примерам систем на базе современных FPGA Xilinx можно отнести одночиповые — удобные для встраиваемых применений, интеллектуальных датчиков и других малогабаритных устройств. Дополнительным плюсом является то, что для семейства Spartan-3AN достаточно двух источников питания — для ядра и для периферийных устройств (вспомогательное питание 2,5 В более не требуется).

Напротив, на базе семейства Virtex-5 можно развернуть полнофункциональную систему цифровой обработки, использующую многие современные технологии: скоростные приемопередатчики, внешнюю память DDR или DDR2, встроенные процессорные ядра, загрузку конфигурации с карт Compact Flash (и использование этих карт в качестве твердотельного накопителя с интерфейсом IDE — эти функции обеспечиваются микросхемой System ACE).

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

В наступающем году наиболее ожидаемым продуктом Xilinx должны стать микросхемы семейства Virtex-5FXT (Full-featured with Transcievers). Улучшенные приемопередатчики, способные реализовать такие интерфейсы, как Gigabit Ethernet, Serial ATA, в сочетании с аппаратным ядром процессора PowerPC позволят создавать системы обработки данных и телекоммуникации. Кроме того, в пакете продуктов Xilinx пока отсутствуют дешевые FPGA, выполненные с соблюдением 65-нм технологических норм, и можно предполагать, что одним из следующих шагов станет выпуск устройств такого типа.

Скачать статью в формате PDF  Скачать статью Компоненты и технологии PDF

 


Другие статьи по данной теме:

Сообщить об ошибке