Выпуск #6/2005
А.Лохов, А.Рабоволюк, А.Филиппов.
Физический синтез FPGA. Система Precision Physical Synthesis
Физический синтез FPGA. Система Precision Physical Synthesis
Просмотры: 2724
Проектирование систем на программируемом кристалле требует не только средств верхнего, системного, уровня*, но и новых инструментов физического синтеза. Один из первых продуктов в этом сегменте рынка - система Precision Physical Synthesis компании Mentor Graphics, ориентированная на проектирование самых современных FPGA.
В традиционном маршруте проектирования интегральных схем на базе FPGA средства размещения/трассировки, предоставляемые компаниями-производителями, для разработчика выглядят как "черный ящик". На входе - описание логической схемы, на выходе - данные для программирования кристалла. И практически никакой возможности управлять процессом синтеза. Можно только изменить исходное описание схемы и заново повторить процедуру размещения/трассировки в надежде, что найдется приемлемое решение. Традиционные средства логического синтеза учитывают только задержки логических элементов, их нагрузку и некую усредненную длину связей. Однако в современных FPGA задержки на связях начинают превалировать над задержками логических элементов, поэтому результаты такого синтеза не только не обеспечивают достижение оптимальных характеристик проектируемого устройства, но порой не позволяют получить работоспособный вариант даже после многочисленных итераций "изменение описания - размещение/трассировка".
В отличие от традиционного подхода средства физического синтеза используют реальные значения задержек, длин соединений, нагрузок, рассчитанные после предварительных запусков программы размещения и трассировки. Специальные методы позволяют управлять процессом оптимизации проекта для достижения требуемого быстродействия таким образом, чтобы обеспечить сходимость итераций по изменению проекта и, по мере надобности, локальный характер модификаций. В маршруте проектирования FPGA компании Mentor Graphics** задачи физического синтеза решаются с помощью системы Precision Physical Synthesis. Структурная схема маршрута проектирования FPGA с использованием этой системы приведена на рис.1.
Для оптимизации проекта в системе Precision Physical Synthesis могут использоваться несколько методик, характеризующихся различной степенью вмешательства инженера. Самый простой вариант - запуск процесса автоматической оптимизации на основе данных о реальном размещении и задержках, полученных после первой итерации размещения/трассировки. (Информация о размещении и задержках извлекается из соответствующих файлов компаний-производителей FPGA, например файла NCD фирмы Xilinx, в процедуре обратной аннотации.) Автоматическая оптимизация обычно применяется в тех случаях, когда после первой итерации размещения/трассировки обнаруживается, что временные характеристики значительного числа цепей не удовлетворяют исходным ограничениям.
Система Precision Physical Synthesis имеет встроенные средства статического временного анализа, которые позволяют провести собственный анализ временных характеристик проекта и сравнить их с данными, полученными из файлов компаний-производителей. Если результаты внутреннего анализа соответствуют полученным данным, процедура оптимизации (физического синтеза) запускается в автоматическом режиме.
Данная процедура в целом сохраняет существующее размещение, локально оптимизируя только те части проекта, которые не удовлетворяют требуемым временным характеристикам. Используются такие технологии, как оптимизация расстановки регистров с целью минимизации максимальной задержки между регистрами (retiming), разгрузка критических путей за счет дублирования регистров (replication), реструктуризация логики с учетом результатов размещения/трассировки, а также локальное переразмещение элементов критических путей с учетом реальных задержек. После достижения требуемого быстродействия новый список цепей и полученный вариант размещения передаются в средства трассировки. По результатам трассировки формируется файл задержек и проводится заключительная проверка временных ограничений.
В тех случаях, когда число цепей с нарушениями временных характеристик невелико, применяется комбинированный метод, предусматривающий однократный запуск оптимизации в автоматическом режиме и последующее интерактивное редактирование размещения. Редактор интерактивного размещения (как и все средства физического синтеза системы Precision Physical Synthesis) поддерживает правила размещения компаний-производителей FPGA. Правильность интерактивных операций контролируется в режиме реального времени. Работу по модификации размещения существенно облегчает подсветка блоков с нарушением задержки (рис.2). Информация о нарушениях формируется на основе результатов временного анализа после автоматической оптимизации. В тех случаях, когда даже после интерактивного размещения остается несколько цепей с нарушениями, детальную информацию о каждой критической цепи можно проанализировать в среде интерактивного редактирования Precise View (рис.3). Используя операции парных перестановок логических вентилей, в редакторе Precise View можно устранить оставшиеся нарушения и достичь окончательного результата.
Использование физических макроблоков (Relatively Placed Macro - RPM) - один из самых перспективных механизмов, поддерживаемых в системе физического синтеза Precision Physical Synthesis. Этот механизм состоит в следующем. На этапе временного анализа выделяются блоки, содержащие цепи с нарушениями задержки. Такие блоки синтезируются отдельно от остального проекта, оптимизируются (размерность блоков обычно позволяет автоматическими и интерактивными средствами добиться более высокого уровня физической оптимизации) и затем с помощью специальной команды фиксируются в виде физических макроблоков. В последующем, в процедурах синтеза, макроблоки размещаются как единое целое, сохраняя внутреннюю структуру и, соответственно, достигнутый уровень быстродействия. Еще одно преимущество механизма макроблоков - возможность их повторного использования в последующих проектах.
Практика применения системы Precision Physical Synthesis компании Mentor Graphics показывает, что использование средств физического синтеза позволяет добиться правильного баланса временных характеристик проекта и увеличить быстродействие в среднем на 15-20%.
В отличие от традиционного подхода средства физического синтеза используют реальные значения задержек, длин соединений, нагрузок, рассчитанные после предварительных запусков программы размещения и трассировки. Специальные методы позволяют управлять процессом оптимизации проекта для достижения требуемого быстродействия таким образом, чтобы обеспечить сходимость итераций по изменению проекта и, по мере надобности, локальный характер модификаций. В маршруте проектирования FPGA компании Mentor Graphics** задачи физического синтеза решаются с помощью системы Precision Physical Synthesis. Структурная схема маршрута проектирования FPGA с использованием этой системы приведена на рис.1.
Для оптимизации проекта в системе Precision Physical Synthesis могут использоваться несколько методик, характеризующихся различной степенью вмешательства инженера. Самый простой вариант - запуск процесса автоматической оптимизации на основе данных о реальном размещении и задержках, полученных после первой итерации размещения/трассировки. (Информация о размещении и задержках извлекается из соответствующих файлов компаний-производителей FPGA, например файла NCD фирмы Xilinx, в процедуре обратной аннотации.) Автоматическая оптимизация обычно применяется в тех случаях, когда после первой итерации размещения/трассировки обнаруживается, что временные характеристики значительного числа цепей не удовлетворяют исходным ограничениям.
Система Precision Physical Synthesis имеет встроенные средства статического временного анализа, которые позволяют провести собственный анализ временных характеристик проекта и сравнить их с данными, полученными из файлов компаний-производителей. Если результаты внутреннего анализа соответствуют полученным данным, процедура оптимизации (физического синтеза) запускается в автоматическом режиме.
Данная процедура в целом сохраняет существующее размещение, локально оптимизируя только те части проекта, которые не удовлетворяют требуемым временным характеристикам. Используются такие технологии, как оптимизация расстановки регистров с целью минимизации максимальной задержки между регистрами (retiming), разгрузка критических путей за счет дублирования регистров (replication), реструктуризация логики с учетом результатов размещения/трассировки, а также локальное переразмещение элементов критических путей с учетом реальных задержек. После достижения требуемого быстродействия новый список цепей и полученный вариант размещения передаются в средства трассировки. По результатам трассировки формируется файл задержек и проводится заключительная проверка временных ограничений.
В тех случаях, когда число цепей с нарушениями временных характеристик невелико, применяется комбинированный метод, предусматривающий однократный запуск оптимизации в автоматическом режиме и последующее интерактивное редактирование размещения. Редактор интерактивного размещения (как и все средства физического синтеза системы Precision Physical Synthesis) поддерживает правила размещения компаний-производителей FPGA. Правильность интерактивных операций контролируется в режиме реального времени. Работу по модификации размещения существенно облегчает подсветка блоков с нарушением задержки (рис.2). Информация о нарушениях формируется на основе результатов временного анализа после автоматической оптимизации. В тех случаях, когда даже после интерактивного размещения остается несколько цепей с нарушениями, детальную информацию о каждой критической цепи можно проанализировать в среде интерактивного редактирования Precise View (рис.3). Используя операции парных перестановок логических вентилей, в редакторе Precise View можно устранить оставшиеся нарушения и достичь окончательного результата.
Использование физических макроблоков (Relatively Placed Macro - RPM) - один из самых перспективных механизмов, поддерживаемых в системе физического синтеза Precision Physical Synthesis. Этот механизм состоит в следующем. На этапе временного анализа выделяются блоки, содержащие цепи с нарушениями задержки. Такие блоки синтезируются отдельно от остального проекта, оптимизируются (размерность блоков обычно позволяет автоматическими и интерактивными средствами добиться более высокого уровня физической оптимизации) и затем с помощью специальной команды фиксируются в виде физических макроблоков. В последующем, в процедурах синтеза, макроблоки размещаются как единое целое, сохраняя внутреннюю структуру и, соответственно, достигнутый уровень быстродействия. Еще одно преимущество механизма макроблоков - возможность их повторного использования в последующих проектах.
Практика применения системы Precision Physical Synthesis компании Mentor Graphics показывает, что использование средств физического синтеза позволяет добиться правильного баланса временных характеристик проекта и увеличить быстродействие в среднем на 15-20%.
Отзывы читателей