Выпуск #7/2016
Е.Иванова, Д.Радченко
Сокращение времени разработки проекта за счет анализа RTL-КОДА на ранних стадиях с помощью DC EXPLORER
Сокращение времени разработки проекта за счет анализа RTL-КОДА на ранних стадиях с помощью DC EXPLORER
Просмотры: 2478
Инструмент DC Explorer от компании Synopsys позволяет проанализировать RTL-код и создать качественные исходные данные для инструмента логического синтеза на ранних стадиях разработки, сокращая время реализации проекта.
Теги: dc explorer rtl code rtl-код synopsys
DC Explorer позволяет анализировать RTL-код на ранних стадиях, что позволяет улучшить качество кода для процесса синтеза и сократить время реализации проекта (рис.1). Инструмент позволяет составить реалистичное представление по параметрам быстродействия и занимаемой площади при последующем синтезе топологии за более короткое время (в 5–10 раз быстрее, чем обычный инструмент синтеза) с учетом толерантности к незаконченному RTL-коду. Результат по быстродействию и площади коррелирует с результатами запуска в DC Ultra, отличаясь от них не более, чем на 10%.[1]
DC Explorer также позволяет разработчикам эффективно проводить анализ "что если?" для различных конфигураций проекта, чем существенно повышается "сходимость" маршрута проектирования. Инструмент также синтезирует список цепей (netlist), который может быть использован для начального топологического проектирования в инструменте IC Compiler, позволяя создавать и модифицировать планировку кристалла благодаря прямому доступу из среды Design Vision к функциям планировки кристалла инструмента IC Compiler по одному клику.
Как следствие, повышается продуктивность разработчиков и снижается риск непредвиденных задержек по маршруту проектирования. В процессе работы синтезируется список цепей и создаются отчеты по быстродействию в формате HTML, которые инженеры могут использовать для анализа и оптимизации ограничений, а также оценить, смогут ли они достичь требуемых параметров. Отчеты также содержат информацию о возможных нестыковках, которые можно устранить до передачи проекта на генерацию окончательного списка цепей.
АНАЛИЗ RTL-КОДА НА РАННИХ СТАДИЯХ РАЗРАБОТКИ ДЛЯ УСКОРЕНИЯ СХОДИМОСТИ ПРОЕКТА
Данные для разработки современных сложных СБИС зачастую приходят из разных источников, и на ранних стадиях проекта различные блоки и IP проекта находятся на разных стадиях согласованности и завершенности (рис.2). Решение данных проблем может занять существенное время, задерживая начало процесса логического синтеза RTL и последующего физического проектирования, увеличивая риск дополнительных итераций проекта.
ТОЛЕРАНТНОСТЬ К НЕПОЛНЫМ ДАННЫМ
DC Explorer позволяет решить эту проблему, предоставляя возможность синтеза неполного RTL-кода и использовать код, содержащий ошибки и несоответствия (см. таблицу). Один из таких примеров показан на рис.3 и демонстрирует описание RTL-модуля top с блоком foo, в интерфейсе которого используются входной порт wr и выходной порт ovf, не объявленные в самом блоке foo.
В процессе работы подобные ошибки идентифицируются и классифицируются, а затем создается детальный отчет по ним. Эти отчеты позволяют разработчикам RTL-кодов быстро находить и устранять ошибки, ускоряя получение "чистого" RTL-кода.
Несмотря на наличие такого рода ошибок, DC Explorer, в отличие от DC Ultra, не останавливает свою работу, а продолжает анализировать код и исполнять соответствующий скрипт или набор команд, оставляя на месте "висячие" порты и сигналы, а затем синтезирует список цепей, пригодный для начального (исследовательского) этапа физического проектирования. Таким образом у разработчиков физического проекта появляется список цепей задолго до того, как появится первая версия "чистого" и полного RTL-кода.
АНАЛИЗ ТРАССИРУЕМОСТИ БЛОКОВ ПРОЕКТА ДО И ПОСЛЕ СИНТЕЗА
Важна также возможность анализировать RTL-код на трассируемость и находить в нем фрагменты кода, потенциально сложные для будущей трассировки части исходного RTL-кода. Получая такую информацию на ранних этапах проектирования, разработчики могут принять меры к изменению кода и устранению проблемных его частей до начала полноценного этапа реализации проекта. DC Explorer также проводит анализ трассируемости после окончания синтеза, так как многие потенциально сложные для трассировки фрагменты кода могут быть успешно оптимизированы с использованием инновационных алгоритмов улучшения трассируемости, реализованных в DC Graphical.
АНАЛИЗ RTL-КОДОВ
И ПЕРЕКРЕСТНЫЙ АНАЛИЗ
На основе анализа RTL-кода создаются цветные гистограммы распределения быстродействия в различных модулях проекта. Эта диагностика основана на анализе RTL-кода, библиотек стандартных ячеек, макроблоков, файлов ограничений и позволяет получить информацию о том, насколько велика вероятность того, что имеющийся RTL-код после синтеза будет функционировать с требуемым быстродействием (рис.4). Подобный анализ позволяет идентифицировать логические модули (блоки), которые могут стать причиной пониженного быстродействия схемы. Анализируя эту информацию, разработчик может понять, какого рода изменения требуется внести в проект (изменения в исходном
RTL-коде, ограничениях и / или планировке кристалла) для достижения требуемой производительности разрабатываемой схемы.
Перекрестный анализ (cross-probing) между различными представлениями проекта (исходный RTL-код, синтезированный список цепей, диаграммы распределения задержек, окна результатов анализа трассируемости и др.) позволяют достоверно определять фрагменты исходных RTL-кодов, требующие изменений на ранних стадиях проектирования и, как результат, существенно повысить качество исходных RTL-кодов, а также существенно сократить время реализации проекта после "заморозки" RTL-кода (рис.5).
НАЧАЛЬНЫЙ (ИССЛЕДОВАТЕЛЬСКИЙ) ЭТАП ФИЗИЧЕСКОГО ПРОЕКТИРОВАНИЯ
Ввиду того что результатом работы инструмента DC Explorer является в том числе, список цепей в формате DDC (бинарный формат Synopsys для передачи проектов от этапа синтеза к этапу физического проектирования) или ASCII (Verilog, SDC), разработчики могут использовать его для начала работ по физическому проектированию в том числе для определения блоков физической иерархии, создания пробной планировки кристалла, пробного размещения блоков и предварительного анализа параметров быстродействия и трассируемости с целью определения "узких мест" и их устранения на ранних этапах проектирования. В DC Explorer есть возможность доступа к функциям физического проектирования инструмента IC Compiler, не покидая графический пользовательский интерфейс Design Vision. С помощью этого интерфейса разработчики могут создавать планировку кристалла, загружать файлы физических ограничений, модифицировать их, проводить повторный анализ полученных результатов, не покидая среды инструмента DC Explorer (рис.6 и 7).
ВЫСОКОЭФФЕКТИВНЫЙ АНАЛИЗ "ЧТО ЕСЛИ?"
Инструмент DC Exporer выполняет синтез с оптимизацией по параметрам быстродействия, площади, динамической и статической потребляемой мощности в среднем от 5 до 10 раз быстрее, чем обычные инструменты логического синтеза (рис.8 и 9). Высокая скорость синтеза сложных и крупных проектов позволяет проводить высокоэффективный анализ "что если?" как исходного RTL-кода, так и ограничений проекта с целью оценки влияния возможных изменений кодов и ограничений на достижение требуемых результатов проектирования.
РАННИЙ АНАЛИЗ ВОЗМОЖНЫХ РЕЗУЛЬТАТОВ
Ввиду того, что качество результатов, получаемых при использовании DC Explorer находится в пределах 5–10% от наилучшего возможного результата при использовании инструмента DC Ultra (Topographical), этот инструмент позволяет разработчикам получить оценку возможных параметров быстродействия, площади и потребляемой мощности проекта на ранних этапах проектирования (рис.10 и 11). Для анализа результатов, полученных при синтезе, инструмент DC Explorer создает развернутые отчеты в формате HTML (рис.12), позволяющие упростить анализ результатов и повысить продуктивность работы разработчиков. Так, например, отчеты по быстродействию могут быть отсортированы по времени наихудшего пути для того, чтобы "увидеть" наиболее критичные пути сигналов в проекте. Отчеты также могут быть отсортированы по группам путей (например, входные и выходные пути, ложные пути или мультитактовые пути). Все это делается по нажатию кнопки мыши в графической среде Design Vision или же в любом веб-браузере. Используя анализ результатов синтеза ранних версий RTL-кода, разработчики получают важную информацию о проекте, имеют возможность внесения необходимых изменений в проект на стадии разработки RTL-кода и существенно сокращают время реализации проекта в дальнейшем.
ПРОСТОТА ИСПОЛЬЗОВАНИЯ
Скрипты, написанные для инструмента DC Explorer, являются полностью совместимым с инструментом Design Compiler и могут быть использованы как на ранней (исследовательской), так и на основной стадии реализации проекта. Входные данные и ограничения, используемые инструментом DC Explorer, а также форматы результатов работы идентичны таковым для инструмента Design Compiler (рис.13). Это позволяет мгновенно встраивать инструмент DC Explorer в любой маршрут проектирования, использующий инструмент Design Compiler. Информация о физических библиотеках и планировке кристалла является опциональной.
Так же, как и Design Compiler, инструмент DC Explorer поддерживает многоядерную обработку данных. При использовании четырехъядерных процессоров можно достичь двукратного выигрыша во времени логического синтеза.
1 ООО "Синопсис", генеральный директор, +7 915 386-6565,
elena.ivanova@synopsys.com.
2 ООО "Синопсис", технический директор, +7 915 386-6464,
Dmitry.Radchenko@synopsys.com. УДК 004.942
ВАК 05.27.00
Ключевые преимущества DC Explorer:
• предоставляет возможность проведения анализа RTL-кода на ранней стадии для выявления и устранения его недостатков и создания качественной отправной точки для инструмента логического синтеза;
• толерантность к незавершенности и ошибкам в RTL-коде;
• анализ RTL-кода на трассируемость до и после синтеза для получения представления о качестве предварительного RTL-кода;
• возможность создания гистограмм, показывающих уровень быстродействия логики модуль за модулем для анализа и возможного улучшения параметров быстродействия;
• перекрестная диагностика RTL-кода, схемы, отчетов по быстродействию, параметров трассируемости и физических представлений проекта;
• время синтеза в 5–10 раз меньше времени полноценного RTL-синтеза для эффективного проведения анализа "что если?";
• результаты синтеза по параметрам быстродействия и площади отличаются от результатов синтеза с использованием инструмента DC Ultra в режиме Topographical не более, чем на 10%;
• опционально может считывать физические ограничения для большей корреляции с результатами запуска DC Ultra в режиме Topographical;
• прямой доступ из среды анализа RTL-кода к возможностям планировки кристалла инструмента IC Compiler;
• скрипты полностью совместимы с инструментом DC Ultra, что позволяет легко интегрировать инструмент DC Explorer в существующий маршрут;
• поддержка UPF для создания энергоэффективных проектов;
• поддержка многоядерной вычислительной платформы позволяет ускорить работу в два раза на четырех ядрах
[1] 1 ООО "Синопсис", генеральный директор, +7 915 386-6565,
elena.ivanova@synopsys.com.
2 ООО "Синопсис", технический директор, +7 915 386-6464,
Dmitry.Radchenko@synopsys.com.
DC Explorer также позволяет разработчикам эффективно проводить анализ "что если?" для различных конфигураций проекта, чем существенно повышается "сходимость" маршрута проектирования. Инструмент также синтезирует список цепей (netlist), который может быть использован для начального топологического проектирования в инструменте IC Compiler, позволяя создавать и модифицировать планировку кристалла благодаря прямому доступу из среды Design Vision к функциям планировки кристалла инструмента IC Compiler по одному клику.
Как следствие, повышается продуктивность разработчиков и снижается риск непредвиденных задержек по маршруту проектирования. В процессе работы синтезируется список цепей и создаются отчеты по быстродействию в формате HTML, которые инженеры могут использовать для анализа и оптимизации ограничений, а также оценить, смогут ли они достичь требуемых параметров. Отчеты также содержат информацию о возможных нестыковках, которые можно устранить до передачи проекта на генерацию окончательного списка цепей.
АНАЛИЗ RTL-КОДА НА РАННИХ СТАДИЯХ РАЗРАБОТКИ ДЛЯ УСКОРЕНИЯ СХОДИМОСТИ ПРОЕКТА
Данные для разработки современных сложных СБИС зачастую приходят из разных источников, и на ранних стадиях проекта различные блоки и IP проекта находятся на разных стадиях согласованности и завершенности (рис.2). Решение данных проблем может занять существенное время, задерживая начало процесса логического синтеза RTL и последующего физического проектирования, увеличивая риск дополнительных итераций проекта.
ТОЛЕРАНТНОСТЬ К НЕПОЛНЫМ ДАННЫМ
DC Explorer позволяет решить эту проблему, предоставляя возможность синтеза неполного RTL-кода и использовать код, содержащий ошибки и несоответствия (см. таблицу). Один из таких примеров показан на рис.3 и демонстрирует описание RTL-модуля top с блоком foo, в интерфейсе которого используются входной порт wr и выходной порт ovf, не объявленные в самом блоке foo.
В процессе работы подобные ошибки идентифицируются и классифицируются, а затем создается детальный отчет по ним. Эти отчеты позволяют разработчикам RTL-кодов быстро находить и устранять ошибки, ускоряя получение "чистого" RTL-кода.
Несмотря на наличие такого рода ошибок, DC Explorer, в отличие от DC Ultra, не останавливает свою работу, а продолжает анализировать код и исполнять соответствующий скрипт или набор команд, оставляя на месте "висячие" порты и сигналы, а затем синтезирует список цепей, пригодный для начального (исследовательского) этапа физического проектирования. Таким образом у разработчиков физического проекта появляется список цепей задолго до того, как появится первая версия "чистого" и полного RTL-кода.
АНАЛИЗ ТРАССИРУЕМОСТИ БЛОКОВ ПРОЕКТА ДО И ПОСЛЕ СИНТЕЗА
Важна также возможность анализировать RTL-код на трассируемость и находить в нем фрагменты кода, потенциально сложные для будущей трассировки части исходного RTL-кода. Получая такую информацию на ранних этапах проектирования, разработчики могут принять меры к изменению кода и устранению проблемных его частей до начала полноценного этапа реализации проекта. DC Explorer также проводит анализ трассируемости после окончания синтеза, так как многие потенциально сложные для трассировки фрагменты кода могут быть успешно оптимизированы с использованием инновационных алгоритмов улучшения трассируемости, реализованных в DC Graphical.
АНАЛИЗ RTL-КОДОВ
И ПЕРЕКРЕСТНЫЙ АНАЛИЗ
На основе анализа RTL-кода создаются цветные гистограммы распределения быстродействия в различных модулях проекта. Эта диагностика основана на анализе RTL-кода, библиотек стандартных ячеек, макроблоков, файлов ограничений и позволяет получить информацию о том, насколько велика вероятность того, что имеющийся RTL-код после синтеза будет функционировать с требуемым быстродействием (рис.4). Подобный анализ позволяет идентифицировать логические модули (блоки), которые могут стать причиной пониженного быстродействия схемы. Анализируя эту информацию, разработчик может понять, какого рода изменения требуется внести в проект (изменения в исходном
RTL-коде, ограничениях и / или планировке кристалла) для достижения требуемой производительности разрабатываемой схемы.
Перекрестный анализ (cross-probing) между различными представлениями проекта (исходный RTL-код, синтезированный список цепей, диаграммы распределения задержек, окна результатов анализа трассируемости и др.) позволяют достоверно определять фрагменты исходных RTL-кодов, требующие изменений на ранних стадиях проектирования и, как результат, существенно повысить качество исходных RTL-кодов, а также существенно сократить время реализации проекта после "заморозки" RTL-кода (рис.5).
НАЧАЛЬНЫЙ (ИССЛЕДОВАТЕЛЬСКИЙ) ЭТАП ФИЗИЧЕСКОГО ПРОЕКТИРОВАНИЯ
Ввиду того что результатом работы инструмента DC Explorer является в том числе, список цепей в формате DDC (бинарный формат Synopsys для передачи проектов от этапа синтеза к этапу физического проектирования) или ASCII (Verilog, SDC), разработчики могут использовать его для начала работ по физическому проектированию в том числе для определения блоков физической иерархии, создания пробной планировки кристалла, пробного размещения блоков и предварительного анализа параметров быстродействия и трассируемости с целью определения "узких мест" и их устранения на ранних этапах проектирования. В DC Explorer есть возможность доступа к функциям физического проектирования инструмента IC Compiler, не покидая графический пользовательский интерфейс Design Vision. С помощью этого интерфейса разработчики могут создавать планировку кристалла, загружать файлы физических ограничений, модифицировать их, проводить повторный анализ полученных результатов, не покидая среды инструмента DC Explorer (рис.6 и 7).
ВЫСОКОЭФФЕКТИВНЫЙ АНАЛИЗ "ЧТО ЕСЛИ?"
Инструмент DC Exporer выполняет синтез с оптимизацией по параметрам быстродействия, площади, динамической и статической потребляемой мощности в среднем от 5 до 10 раз быстрее, чем обычные инструменты логического синтеза (рис.8 и 9). Высокая скорость синтеза сложных и крупных проектов позволяет проводить высокоэффективный анализ "что если?" как исходного RTL-кода, так и ограничений проекта с целью оценки влияния возможных изменений кодов и ограничений на достижение требуемых результатов проектирования.
РАННИЙ АНАЛИЗ ВОЗМОЖНЫХ РЕЗУЛЬТАТОВ
Ввиду того, что качество результатов, получаемых при использовании DC Explorer находится в пределах 5–10% от наилучшего возможного результата при использовании инструмента DC Ultra (Topographical), этот инструмент позволяет разработчикам получить оценку возможных параметров быстродействия, площади и потребляемой мощности проекта на ранних этапах проектирования (рис.10 и 11). Для анализа результатов, полученных при синтезе, инструмент DC Explorer создает развернутые отчеты в формате HTML (рис.12), позволяющие упростить анализ результатов и повысить продуктивность работы разработчиков. Так, например, отчеты по быстродействию могут быть отсортированы по времени наихудшего пути для того, чтобы "увидеть" наиболее критичные пути сигналов в проекте. Отчеты также могут быть отсортированы по группам путей (например, входные и выходные пути, ложные пути или мультитактовые пути). Все это делается по нажатию кнопки мыши в графической среде Design Vision или же в любом веб-браузере. Используя анализ результатов синтеза ранних версий RTL-кода, разработчики получают важную информацию о проекте, имеют возможность внесения необходимых изменений в проект на стадии разработки RTL-кода и существенно сокращают время реализации проекта в дальнейшем.
ПРОСТОТА ИСПОЛЬЗОВАНИЯ
Скрипты, написанные для инструмента DC Explorer, являются полностью совместимым с инструментом Design Compiler и могут быть использованы как на ранней (исследовательской), так и на основной стадии реализации проекта. Входные данные и ограничения, используемые инструментом DC Explorer, а также форматы результатов работы идентичны таковым для инструмента Design Compiler (рис.13). Это позволяет мгновенно встраивать инструмент DC Explorer в любой маршрут проектирования, использующий инструмент Design Compiler. Информация о физических библиотеках и планировке кристалла является опциональной.
Так же, как и Design Compiler, инструмент DC Explorer поддерживает многоядерную обработку данных. При использовании четырехъядерных процессоров можно достичь двукратного выигрыша во времени логического синтеза.
1 ООО "Синопсис", генеральный директор, +7 915 386-6565,
elena.ivanova@synopsys.com.
2 ООО "Синопсис", технический директор, +7 915 386-6464,
Dmitry.Radchenko@synopsys.com. УДК 004.942
ВАК 05.27.00
Ключевые преимущества DC Explorer:
• предоставляет возможность проведения анализа RTL-кода на ранней стадии для выявления и устранения его недостатков и создания качественной отправной точки для инструмента логического синтеза;
• толерантность к незавершенности и ошибкам в RTL-коде;
• анализ RTL-кода на трассируемость до и после синтеза для получения представления о качестве предварительного RTL-кода;
• возможность создания гистограмм, показывающих уровень быстродействия логики модуль за модулем для анализа и возможного улучшения параметров быстродействия;
• перекрестная диагностика RTL-кода, схемы, отчетов по быстродействию, параметров трассируемости и физических представлений проекта;
• время синтеза в 5–10 раз меньше времени полноценного RTL-синтеза для эффективного проведения анализа "что если?";
• результаты синтеза по параметрам быстродействия и площади отличаются от результатов синтеза с использованием инструмента DC Ultra в режиме Topographical не более, чем на 10%;
• опционально может считывать физические ограничения для большей корреляции с результатами запуска DC Ultra в режиме Topographical;
• прямой доступ из среды анализа RTL-кода к возможностям планировки кристалла инструмента IC Compiler;
• скрипты полностью совместимы с инструментом DC Ultra, что позволяет легко интегрировать инструмент DC Explorer в существующий маршрут;
• поддержка UPF для создания энергоэффективных проектов;
• поддержка многоядерной вычислительной платформы позволяет ускорить работу в два раза на четырех ядрах
[1] 1 ООО "Синопсис", генеральный директор, +7 915 386-6565,
elena.ivanova@synopsys.com.
2 ООО "Синопсис", технический директор, +7 915 386-6464,
Dmitry.Radchenko@synopsys.com.
Отзывы читателей