УДК 621.3
ПРОГРАММИРУЕМАЯ КОММУТАЦИЯ МЕЖСОЕДИНЕНИЙ В ПЛИС ТИПА ПРОГРАММИРУЕМЫЕ ПОЛЬЗОВАТЕЛЕМ ВЕНТИЛЬНЫЕ МАТРИЦЫ А.В. Строгонов, С.И. Давыдов, М.С. Мотылев, А.В. Быстрицкий
Рассматриваются две технологии соединений single-driver и multi-driver для реализации программируемой коммутации межсоединений в ПЛИС типа ППВМ
Ключевые слова: трассировочные ресурсы, коммутатор-маршрутизатор, соединительные блоки
В академических ПЛИС для обеспечения программируемой коммутации существует две технологии соединений: multi-driver и single-driver, которые распространяются как на соединительные блоки, так и на коммутаторы-маршрутизаторы (S-блоки). Маршрутизатор с использованием двунаправленных межсоединений и
двунаправленных ключей реализованных на буферах с третьим состоянием получил название multi-driver, при этом также возможно использование n-МОП ключей, а с
использованием однонаправленных
межсоединений и мультиплексорных структур -single-driver switch block. Технология соединений single-driver, известная как DirectDrive™ широко используется в современных сериях ПЛИС серий Stratix фирмы Altera.
При этом под термином “драйвер” подразумевается устройство, с помощью которого осуществляется программируемая коммутация межсоединений: n-МОП ключ, однонаправленный и двунаправленный ключ на буферах с третьим состоянием, мультиплексорная структура.
Основные функциональные блоки ПЛИС типа ППВМ с одноуровневой структурой межсоединений: логический блок (ЛБ),
соединительные блоки (входные и выходные), коммутатор-маршрутизатор, кластер из ЛБ. Входные соединительные блоки представляют собой программируемые коммутаторы на мультиплексорных структурах, позволяющие подключать любое межсоединение из горизонтального или вертикального
трассировочных каналов на один из входов логического блока. Для коммутации выходов ЛБ в выходном соединительном блоке, как правило, используются демультиплексоры типа track to pin (один n-МОП ключ на каждое соединение) на n-МОП ключах (рис.1).
Строгонов Андрей Владимирович - ВГТУ, д-р техн. наук, профессор, тел. (473) 243-76-95, e-mail:
Давыдов Сергей Игоревич - ВГТУ, аспирант, тел. (473) 243-76-95, e-mail: [email protected] Мотылев Максим Сергеевич - ВГТУ, аспирант, тел. (473) 243-76-95, e-mail: [email protected]
Быстрицкий Алексей Викторович - ОАО
"Конструкторско-технологический центр «Электроника" (г. Воронеж), гл. конструктор, e-mail:
Соединительный SR - ячейка памяти
Шеститранзисторный Входной мультиплексор
КЛЮЧ
Рис. 1. ПЛИС типа ППВМ с одноуровневой структурой межсоединений и основные функциональные блоки с использованием технологии соединений multi-driver
При проектировании маршрутизатора могут быть использованы однонаправленные и двунаправленные программируемые
межсоединения с применением в качестве ключа n-МОП транзистора и буфера с третьим состоянием (рис.2). n-МОП ключ по своей сути является двунаправленным, а двунаправленный ключ на буферах с третьим состоянием может быть получен их параллельным соединением. При проектировании ПЛИС с одноуровневой структурой могут быть использованы следующие параметры. Для коммутатора-маршрутизатора задается: коэффициент разветвления по выходу
FS = 3 ; для соединительного блока: коэффициент
объединения по входу логического блока
FCm = W, коэффициент разветвления по выходу
FC out = W , где W — ширина трассировочного канала.
На рис.2, а показана функциональная модель n-МОП шеститранзисторного ключа на логическом уровне, используемого в маршрутизаторах ПЛИС Xilinx серии XC4000 типа disjoint. Для реализации модели
шеститранзисторного ключа с использованием двунаправленных межсоединений применяются буферы для восстановления уровня сигнала, буферы с третьим состоянием и мультиплексоры (рис.2, а). На рис.2, б показан коммутатор-маршрутизатор типа Wilton с коэффициентом разветвления FS = 3, который обладает лучшей
разводимостью и позволяет организовать длинные межсоединения.
Двунаправленные межсоединения в трассировочном канале
Однонаправленные межсоединения в трассировочном канале
ІГ
-0- - 1
Г
а) б)
Рис. 2. Коммутатор-маршрутизатор типа disjoint (S-блок) и функциональная модель шеститранзисторного ключа на логическом уровне c использованием двунаправленных программируемых соединений (а); коммутатор-маршрутизатор типа Wilton с использованием однонаправленных соединений
Две схемы взаимоэквивалентны, однако, второй вариант позволяет отказаться от использования буферов с третьим состоянием (рис.2, б), но приводит к увеличению числа межсоединений в трассировочном канале, что приводит к увеличению разрядности мультиплексорных структур в соединительных блоках. В случае однонаправленных соединений, при движении сигнала в направлении стрелки, коммутация сигнала на противоположные направления осуществляется на соседние соноправленные межсоединения, что приводит к появлению характерных “косичек” в
трассировочных каналах.
В настоящее время считается, что использование однонаправленных межсоединений в совокупности с мультиплексорными структурами в маршрутизаторах наиболее перспективно, т.к. позволяет получать существенный выигрыш по сравнению с технологией multi-driver по быстродействию (задержка распространения сигнала в трассировочных ресурсах ПЛИС уменьшается на 9 %) и по площади кристалла (экономия площади кристалла до 25 %).
Технология single-driver также
распространяется и на соединительные блоки (рис.3, а). Горизонтальный и вертикальный трассировочный канал состоит из 26 однонаправленных межсоединений, т.е. ширина канала W=26 (рис.3, б). Канал разделяет
коммутатор-маршрутизатор типа Wilton с коэффициентом разветвления FS = 3 . Например, через левый маршрутизатор с каждой стороны
проходят 6 пар непрерывных разнонаправленных несегментированных и 7 пар разнонаправленных сегментированных межсоединений. В места сегментации пары разнонаправленных
межсоединений по периферии маршрутизатора осуществляется подключение выходов соседних кластеров и выходов гетерогенных блоков (перемножителей). В трассировочных каналах ядра ПЛИС, межсоединения непрерывно проходят через 2 кластера (L = 2).
Цифрами на рис.3, б обозначена разрядность мультиплексоров в местах сегментации пары разнонаправленных межсоединений. Например, цифра 12, это мультиплексор 12 в 1. Один из возможных вариантов построения крупного коммутатора-маршрутизатора из двух более мелких с длиной межсоединения L=3 типа singledriver показан на рис.4. Особенностью данного решения является наличие по одному мультиплексору в каждом из 4 направлений. В каждый мультиплексор поочередно “заплетаются” межсоединения в рассматриваемом направлении.
Рис.5 показывает идею использования двунаправленных межсоединений и
двунаправленных ключей на буферах с третьим состоянием в коммутаторах-маршрутизаторах. Выходы логических блоков, объединенных в кластеры, с помощью демультиплексоров (реализованные на буферах с третьим состоянием) соединительных блоков могут быть подключены к трассировочным каналам.
На рис.6, а, показана ситуация когда входные мультиплексоры соединительных блоков построенные по древовидной схеме могут быть заменены на n-МОП-ключи, которые подключены к выходам буферов мультиплексоров S-блоков. n-МОП-ключи в совокупности образуют
мультиплексорную структуру типа track to pin (один ключ на каждое соединение). На рис.6, б показано непосредственное подключение выходов логических блоков в мультиплексоры ближайших коммутаторов-маршрутизаторов, что позволяет отказаться от использования выходных демультиплексоров в соединительных блоках.
Выводы
Для коммерческих ПЛИС типа ППВМ характерные следующие архитектурные
особенности: наличие одноуровневой или
многоуровневой структуры межсоединений; объединение логических блоков в кластеры; широкое использование коммутаторов-
маршрутизаторов; смещение схемотехники в сторону использования технологии соединений single-driver; сегментированные межсоединения в трассировочных каналах различной длины.
Рис.3. Распространение технологии соединений single-driver на соединительные блоки и непосредственное подключение выходов логических блоков к мультиплексорам коммутаторов-маршрутизаторов: а) - идея метода; б) - реализация метода с использованием программных инструментов VPR 5.0
ЛБ ЛБ
і
і і
-Л- ■ ■ 4-а
і Г
- - -j:
і r Zj V
j 1
1.
M 1 f
i \ * \Jf\
?0f ■ —f - 1
ЛБ —Ï -H и
и 4 ЛБ
Рис. 4. Крупный коммутатор-маршрутизатор типа single-driver состоящий из двух более мелких маршрутизаторов с длиной межсоединения L=3
Рис. 6. Распространение технологии соединений single-driver на соединительные блоки: а) -подключение однонаправленных соединений горизонтального трассировочного канала ко входам LUT-таблиц логических блоков с использованием мультиплексоров маршрутизаторов к выходам которых подключены буферы с третьим состоянием (dir-tri); б) -непосредственное подключение выходов логических блоков к мультиплексорам маршрутизаторов
Рис. 5. Использование буферов с третьим состоянием в маршрутизаторах типа multi-driver и в выходном демультиплексоре соединительного блока (подключение выхода кластера к горизонтальному трассировочному каналу из двунаправленных межсоединений)
Литература
1. J. Luu, I. Kuon, P. Jamieson, T. Campbell, A. Ye, W.M. Fang, J. Rose. VPR 5.0: FPGA CAD and architecture exploration tools with single-driver routing, heterogeneity and process scaling // FPGA, 2009, February 22-24, 2008, Monterey, California, USA, pp.133-142.
2. S. Brown, R. Francis, J. Rose, and Z. Vranesic, Field-Programmable Gate Arrays, Kluwer Academic Publishers, 1992.
3. S. Wilton, “Architectures and Algorithms for Field-Programmable Gate Arrays with Embedded Memories,” Ph.D. Dissertation, University of Toronto, 1997.(http://www.ece.ubc.ca/~stevew/publications.html).
4. Y.W. Chang, D.F. Wong, and C.K. Wong, “Universal Switch Modules for FPGA Design,” ACM Trans. on Design Automation of Electronic Systems, Jan. 1996, pp. 80 - 101.
5. G. Lemieux, E. Lee, M. Tom, and A. Yu, “Direction and Single-Driver Wires in FPGA Interconnect,” International Conference on Field-Programmable Technology, 2004, pp. 41-48.
Воронежский государственный технический университет
ОАО "Конструкторско-технологический центр «Электроника" (г. Воронеж)
PROGRAMMABLE SWITCHING IN FPGA INTERCONNECT A.V. Strogonov, S.I. Davydov, M.S. Motylev, А-V. Bystritsky
In article consider of multi-driver and single-driver switch block FPGA Interconnect Key words: routing, switch box, connection block