СОВРЕМЕННАЯ ЭЛЕКТРОНИКА №7/2012

анализа, входящие в состав синтезато ра, позволяют получить точные вре менные оценки, которые необходи мы для компенсации негативных эф фектов (задержек на проводниках и вентилях). Таким уровнем абстракции является представление в виде сопо ставленной, скомпонованной и раз мещённой таблицы соединений кон фигурируемых логических блоков (см. рис. 3) (КЛБ) и таблиц соответ ствия (netlist) [2]. На последующих этапах (физичес кой реализации) эта информация используется в качестве отправной точки при выполнении процедуры локальной (точной) оптимизации размещения, после чего производит ся детальная разводка элементов уст ройства. Синтез производится в автоматичес ком режиме, необходимо только ука зать название проектируемой ПЛИС фирмы Xilinx и файл верхнего уровня синтезируемого проекта. На этапе кон фигурации этот продукт, используя таблицу соединений КЛБ и таблиц со ответствия (netlist), создаёт конфигу рационныйфайл – битовый поток, ко торый загружается в кристалл через интерфейс JTAG. PlanAhead (этап № 5) Этот продукт представляет собой ре дактор размещения отдельных цифро вых узлов на кристалле ПЛИС. С по мощью PlanAhead можно поделить проект на иерархические блоки и вы полнять их размещение на кристалле на любом уровне иерархии, как вруч ную в редакторе (см. рис. 4), так и в ав томатическом режиме. В среднем этот пакет увеличивает производитель ность проекта на 30%. В предложенном способе проекти рования ПЛИС используется лишь часть функций PlanAhead, а именно, оптимизация таблицы соединений КЛБ и таблиц соответствия (netlist), созданных синтезатором, с помощью методов трассировки и размещения логических блоков применительно к данному кристаллу. Для корректной работы трассировщика необходимо подготовить файл UCF, который со держит необходимую информацию в виде описания соответствий символь ных идентификаторов портов ПЛИС физическим контактам кристалла (pins): ############################## # System Clocks and Control Sig nals ############################## #System Clocks #NET "clka" LOC = AF12; #NET "clkb" LOC = A16; #NET "clkc" LOC = AF11; #Control and setup #NET "fpga_done" LOC = Y1; #NET "config_done" LOC = AC1; #NET "resetl" LOC = H3; #NET "slot_id0" LOC = H5; #NET "slot_id1" LOC = H4; #User Status LEDs #NET "led1_green" LOC = D3; #NET "led1_red" LOC = F3; #NET "led0_green" LOC = E26; #NET "led0_red" LOC = D26; #Temp. Sensor device #NET "alertl" LOC = H6; Фирма – разработчик кристаллов Xilinx предлагает универсальныйфайл UCF для каждойПЛИС, где описаны все порты. От разработчика устройства требуется грамотная оптимизация это го файла применительно к проекту. Все идентификаторымогут быть изме нены произвольно, с необходимым учётом на этапе разработки № 3 (соз дание описания устройства на VHDL). Размещение логических блоков про изводится в условиях экономного ис пользования узлов кристалла. На вы ходе получается всё та же таблица (netlist), но уже полностью оптимизи рованная под выбранную ПЛИС. ChipScope (этап № 6) Конфигурация кристалла реализует ся с помощьюинструмента ChipScope. Продукт, оперируя битовым потоком, созданным WebPack, загружает его в ПЛИС с помощьюпрограммирующего кабеля. Средство ChipScope также отвечает за внутрисхемную отладку сконфигу рированного кристалла. Такой метод отладки называется сквозным проек тированием и осуществляется с по мощью дополнительных программ ных модулей, которые добавляются в код проекта на этапе проектирования №3. Метод основан на управлении до ПРОЕКТИРОВАНИЕ И МОДЕЛИРОВАНИЕ 46 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 7 2012 3 входовая таблица соответствия (LUT) Мультиплексор Триггер y a b c d q Тактовый сигнал Рис. 3. Простой конфигурируемый логический блок Рис. 4. Графическое изображение логических блоков ПЛИС в среде PlanAhead ' СТА - ПРЕСС

RkJQdWJsaXNoZXIy MTQ4NjUy