160 likes | 371 Views
Перепроектирование ПЛИС на основе трансформации моделей. Д.И. Черемисинов Объединенный институт проблем информатики НАН Беларуси , Минск cher@newman.bas-net.by. Перепроектирование в цикле проектирования заказной СБИС. Возможна итерация. Проектирование и верификация. Готовая СБИС.
E N D
Перепроектирование ПЛИС на основе трансформации моделей Д.И. Черемисинов Объединенный институт проблем информатики НАН Беларуси, Минск cher@newman.bas-net.by
Перепроектирование в цикле проектирования заказной СБИС Возможна итерация Проектирование и верификация Готовая СБИС Кремневый прототип Интеграция в устройство Выпуск ПЛИС 2 года Перепро-ектирование FPGA FPGA Декомпиляция ПЛИС Уменьшаются невосполнимые затраты (NRE) FPGA 9 месяцев Спецификация "Замораживание проектирования" - это пункт планирования процессе проектирования, после которого изменения в проекте приведут к задержке вхождения в производственную фазу.
Синтез VHDL Декомпиляция FPGA Другое структурноеописание ЗаказнаяСБИС Декомпиляция FPGA Файл программированияпроизводственный секрет Xilinx NCD Файл XDL Текстовый формат – официального описания нет Структурноеописание
Проектирование заказной СБИСперепроектированием FPGA Xilinx tools XDL + Simprim Simulation Netgen VHDL XDL Synthesis XDLUnpac VHDL
Проектирование, управляемое моделями Знания Модель Aна языке LA Модель Bна языке LB Документ XA Документ XB ТрансформерСистема переписывания графов OMG
Декомпиляция программирования FPGA Результат декомпиляции на языке VHDL Исходное описание в формате XDL Система переписывания графов
Подстановка графов в процессе перепроектирования Исходное описание в формате XDL Анализ XDL Структура в памяти Распаковка Примитивы изXDLRC EDIF Оценивание VHDL
Модель описанияSpartan 3на XDL Правило переписывания графов User-design netlist FPGA fabric netlist
Подстановка p: L→R состоит из шаблонного графа L(левой части правила), замещающего графа R(правой части правила) и частичного графового гомоморфизма→ между L и R. Подстановка графов Правило применения подстановки - семантика Левая часть Правая часть
Семантика приклеивания Приклеиваемые вершины закрашены
Распаковка XDL Подстановка Результат
Построение правила переписывания по FPGA fabric netlist
Результат распаковки Распаковка макроячейки – формирование правой части правила Подстановка LUT Фрагмент исходного файла XDL inst "circ3/Q" "SLICEL",placed R1C19 SLICE_X37Y95 , cfg " BXINV::BX BYINV::#OFF CEINV::#OFF CLKINV::CLK COUTUSED::#OFF CY0F::#OFF CY0G::#OFF CYINIT::#OFF CYSELF::#OFF CYSELG::#OFF DXMUX::1 DYMUX::#OFF F:circ0/circ1/d31:#LUT:D=(A1*(A4*(~A3+~A2))) F5USED::#OFF FFX:circ3/Q:#FF FFX_INIT_ATTR::INIT0 FFX_SR_ATTR::SRLOW FFY::#OFF FFY_INIT_ATTR::#OFF FFY_SR_ATTR::#OFF FXMUX::F5 FXUSED::#OFF G:circ0/circ1/d32:#LUT:D=((~A3*(A4*A1))+(A3*((~A2*(A4*A1))+(A2*(A4+A1))))) GYMUX::#OFF REVUSED::#OFF SRINV::#OFF SYNC_ATTR::ASYNC XBUSED::#OFF XUSED::#OFF YBUSED::#OFF YUSED::#OFF F5MUX:circ0/circ1/d3_f5: " ; ФункцияLUT