Выпуск #7/2021
Дж. Шульц, Е. Иванова
ИНСТРУМЕНТ RTL Architect: КАК СДЕЛАТЬ RTL-КОД ПРОСТО ЛУЧШЕ
ИНСТРУМЕНТ RTL Architect: КАК СДЕЛАТЬ RTL-КОД ПРОСТО ЛУЧШЕ
Просмотры: 1115
DOI: 10.22184/1992-4178.2021.208.7.168.173
Рассматриваются проблемы традиционного маршрута проектирования ИС и СнК в обеспечении высоких показателей по потребляемой мощности, производительности и площади кристалла на передовых технологических нормах. Приводится общая информация о преодолении этих проблем с помощью инструмента RTL Architect от компании Synopsys путем разработки RTL-кода с учетом физической реализации.
Рассматриваются проблемы традиционного маршрута проектирования ИС и СнК в обеспечении высоких показателей по потребляемой мощности, производительности и площади кристалла на передовых технологических нормах. Приводится общая информация о преодолении этих проблем с помощью инструмента RTL Architect от компании Synopsys путем разработки RTL-кода с учетом физической реализации.
Теги: cad dennard’s law ic design flow moore’s law physical implementation power consumption rtl design synopsys timing budget временной бюджет закон деннарда закон мура маршрут проектирования ис потребляемая мощность разработка rtl-кода сапр физическое проектирование кристалла
Инструмент RTL Architect: как сделать RTL-код просто лучше
Дж. Шульц, Е. Иванова
Электронные устройства играют ключевую роль в обществе. С их помощью мы общаемся друг с другом голосом и в чатах, обмениваемся видео. Они по-новому и всё более разнообразно развлекают и учат, защищают и лечат нас. Они изменили то, как мы живем, как работаем и отдыхаем. Кремниевые кристаллы – сердце этих устройств, совершающее два-три миллиарда ударов в секунду. На протяжении десятилетий рост функциональности данных кристаллов и устройств на их основе и усиление их влияния на жизнь общества напрямую определялись беспрестанным развитием полупроводниковых технологий.
Однако, чтобы воспользоваться преимуществом этого развития, когда речь идет о новейших технологических нормах, необходимо совершенствование инструментов и методов проектирования специализированных ИС (ASIC).
Результаты проектирования кристалла обычно оцениваются в терминах потребляемой мощности, производительности и площади (power, performance, area – PPA). Традиционно кристальные производства могли периодически уменьшать площадь на 50% (в соответствии с законом Мура), внедряя планарные процессы с новыми технологическими нормами – с меньшими размерами транзисторов и проводников. Это было важно, поскольку при этом плотность логических ячеек удваивалась, что позволяло реализовывать бóльшую функциональность на одном кристалле. Кроме того, уменьшение площади снижало величину задержек в схеме, увеличивая тем самым частоту переключения примерно на 40% и, как следствие, обеспечивая рост производительности в 1,4 раза. Наконец, благодаря меньшей площади затвора, для поддержания того же электрического поля, что и при предыдущих технологических нормах, требовалось меньшее напряжение (что нашло отражение в законе масштабирования Деннарда). Напряжение снижалось на 30%, а мощность – примерно на 50% при увеличении частоты в 1,4 раза.
Однако бесконечно достигать таких результатов, просто уменьшая технологические нормы планарных процессов, было невозможно (см. рис. 1). Сокращение размеров затвора транзистора в определенный момент привело к тому, что пришлось столкнуться с двумя принципиальными ограничениями. Во-первых, из-за короткоканального эффекта в КМОП-технологии на монолитной подложке увеличилось влияние тока утечки на общую потребляемую мощность (ранее незначительное). Во-вторых, напряжение питания достигло нижнего физического предела, что привело к увеличению удельной рассеиваемой мощности на малых затворах, вызывая перегрев чипа. Из-за этого максимальная рабочая частота оказалась ограничена примерно 4 ГГц. Чтобы и далее уменьшать размеры транзисторов, кристальные производства стали совместно с поставщиками средств проектирования работать над преодолением первой проблемы. При норме 130 нм производства ввели смещение подложки для управления пороговым напряжением транзистора (Vth), в результате чего они смогли предложить на выбор ячейки с низким, средним и высоким током утечки и, соответственно, высокой, средней и низкой скоростью переключения. Содействие со стороны инструментов проектирования заключалось в анализе времени распространения сигналов и определении, какую ячейку с каким пороговым напряжением следует использовать, находя баланс между низкой статической мощностью (ячейки с высоким Vth) и производительностью (ячейки с низким Vth).
Размеры транзисторов в КМОП-технологии на монолитной подложке продолжили сокращаться, но при норме около 28 нм смещение подложки потеряло свою эффективность. Сегодня улучшение PPA достигается за счет сочетания новых технологий и инноваций в инструментах проектирования. Для кардинального снижения тока утечки и, как следствие, статической мощности на норме 22 нм была применена непланарная технология FinFET с затвором, охватывающим канал. С другой стороны, планарный процесс FD-SOI (полностью обедненный кремний на изоляторе), внедренный на норме 28 нм, представляет собой более дешевый способ уменьшения тока утечки. Поскольку статическая мощность находится под контролем за счет технологических инноваций, инструменты проектирования сосредоточились на снижении преобладающей динамической мощности. Для ее ограничения используются такие приемы проектирования, как стробирование тактовых сигналов, динамическое масштабирование напряжения и частоты (DVFS) и удаление глитчей. Проблема повышения производительности сместилась влево по маршруту проектирования – на этап разработки логической архитектуры. Чтобы увеличить количество выполняемых в секунду операций, команды разработчиков логической архитектуры стали применять распараллеливание, распределяя выполнение задач между несколькими вычислительными ядрами, используя такие устройства, как многоядерные, графические процессоры и интегральные схемы для искусственного интеллекта. Для энергоэффективного объединения ядер используются сложные коммуникационные архитектуры, такие как сеть на кристалле (NoC), и в больших системах на кристалле обеспечивается хорошее масштабирование производительности.
Проблемы проектирования
Традиционные маршруты проектирования уже не позволяют идти в ногу с достижениями в технологических процессах и требованиями рынка в отношении потребляемой мощности, производительности и площади ИС (PPA). Становится всё труднее использовать весь потенциал этих дорогостоящих технологических норм только с помощью методов физической реализации.
Достижения в области технологий – это обоюдоострый меч. Для команды разработчиков выбор технологии изготовления и структуры металлических слоев может оказаться сложной задачей. Обычно для этого требуется синтезировать из некоторой репрезентативной RTL-модели список цепей на уровне эквивалентных вентилей и передать его команде разработчиков физического уровня для проведения раннего анализа характеристик PPA.
В традиционном маршруте проектирования разработчики RTL проектируют архитектуру схемы с заданной функциональностью, не обращая внимания на то, как это будет реализовано физически. Во многих случаях разработчики отдельных блоков проекта выполняют быстрый синтез для проверки на предмет синтаксических ошибок, а затем передают блоки интегратору, который обеспечивает консолидацию и окончательный синтез. Интегратор в первую очередь заботится о том, чтобы сигналы интерфейсов блоков были связаны с верхним уровнем и чтобы были соблюдены временны´е и мощностные ограничения. Синтезированный список цепей на уровне эквивалентных вентилей затем передается команде разработчиков физического уровня для планирования кристалла, размещения и трассировки. В большинстве случаев разработку RTL от физической реализации отделяет период около недели.
В этом процессе видится несколько проблем. Во-первых, ожидается, что маршрут физической реализации полностью раскроет потенциал данной технологической нормы в отношении характеристик PPA за счет методов оптимизации размещения и трассировки. Однако на передовых нормах предъявляется множество дополнительных требований к размещению ячеек и трассировке проводников, которые ограничивают степени свободы и, следовательно, эффективность оптимизации. Дополнительные правила также приводят к увеличению времени выполнения физического проектирования.
Вторая важная проблема – это несоответствие между задачами разработки RTL и физической реализации. Разработчик RTL обычно имеет очень слабое представление (если имеет его вообще) о том, как логика будет физически реализована в топологии. Его логический блок может соединяться с другим блоком, который физически размещается у другого края кристалла. В такой ситуации, чтобы обеспечить временны´е характеристики, при физическом проектировании может понадобиться добавить в RTL конвейерные регистры и сквозные цепи. Однако с момента передачи RTL на физическое проектирование до получения обратной связи может пройти несколько дней. В некоторых случаях новая версия RTL может появиться раньше, чем будет выполнен синтез и физическая реализация предыдущей. Кроме временны´х ограничений, полезно иметь представление о таких параметрах физической реализации, как мощность, населенность и площадь.
Третья и последняя проблема, которая будет рассмотрена в статье, – это интеграция IP-решений. В качестве IP-решений могут выступать блоки от внешних поставщиков – третьих лиц, или логические блоки, разрабатываемые внутри компании одной группой для других групп в качестве услуги. Как упоминалось ранее, поставщик IP предоставляет RTL-код интегратору, который отвечает за встраивание блока в проект. Сложность заключается в том, что интегратор незнаком с IP-решением в деталях и может только проверить, что IP-блок соответствует набору заранее заданных критериев работоспособности, таких как непротиворечивость логических часов, соблюдение временны´х ограничений и задание доменов питания.
Введение в инструмент RTL Architect
Решение RTL Architect™ (см. рис. 2) – первая в отрасли система проектирования RTL с учетом физической реализации, которая значительно сокращает цикл разработки и обеспечивает превосходное качество результата. Этот инструмент продолжает реализацию стратегии «смещения влево», начатую в платформе проектирования Fusion Design Platform, для решения проблем обеспечения PPA на более ранних этапах проектирования. Сложность технологий с передовыми нормами привела к тому, что стало трудно достигать целевых значений PPA только с помощью методов физической реализации, поэтому перед разработчиками RTL стоит задача кардинального улучшения PPA путем применения предметно-ориентированных архитектур. Инструмент RTL Architect предоставляет логическо-физическую рабочую среду, которая может точно предсказать влияние архитектурных изменений на PPA, не дожидаясь обратной связи от команды физического проектирования. В данном разделе приводятся базовые сведения о том, как основные технологии инструмента (механизм прогнозирования, иерархическое проектирование, анализ мощности на уровне RTL и управление ограничениями) помогают получить информацию и какие решения они предоставляют для преодоления проблем, связанных с традиционным маршрутом проектирования.
В основе RTL Architect лежит новый многомерный механизм прогнозирования (PE), построенный на платформе Fusion Design Platform. Он может точно прогнозировать и моделировать результаты синтеза, поскольку в нем используется та же технология, что и в ведущем инструменте синтеза, являющемся отраслевым стандартом. Многопоточные алгоритмы оптимизации обеспечивают получение результатов с высокой достоверностью в среднем втрое, а иногда и до пяти раз быстрее, чем при традиционном маршруте синтеза и физической реализации. Это позволяет разработчику RTL проводить несколько экспериментов в день, чтобы оценить влияние, которое его код окажет на физическую реализацию.
Инструмент RTL Architect построен на той же унифицированной модели данных, что и Fusion Compiler и IC Compiler II. Инфраструктура корпоративного класса может быть масштабирована для решения задач, связанных с самыми большими системами на кристалле. Решение RTL Architect создано таким образом, чтобы своевременно получать результаты для проектов с многими миллионами и подсистем с десятками миллионов экземпляров блоков. Он полностью построен по иерархическому принципу и поддерживает многоуровневую физическую иерархию (MPH) и повторное использование блоков (MIB). Кроме того, он соответствует требованиям к точности технологических процессов с передовыми нормами благодаря интеграции технологий этапа передачи в производство, имеющихся в PrimeTime, StarRC и PrimePower.
Ключевой особенностью решения RTL Architect является иерархическое планирование кристалла. Подобно традиционному планировщику, он размещает макро- и стандартные ячейки с использованием прогностических моделей вентилей. Для экспериментирования с различной топологией блоков можно использовать редактирование их формы. Глобальный трассировщик выполняет трассировку проекта и выдает информацию о населенности, которая может использоваться для выявления проблемных для трассировки мест. При назначении контактов в проектах с плотно прилегающими блоками или с узкими каналами отображается необходимость добавления в логический блок сквозных цепей, являющихся чисто физическими сущностями. Аналогичным образом, планирование конвейерных регистров может указать, какие блоки нуждаются в дополнительных регистрах для удовлетворения требований по временны´м характеристикам. В отличие от традиционных решений для планирования кристалла, RTL Architect позволяет находить исходный RTL-код по топологии. Например, как показано на рис. 3, можно проследить, в какой строке RTL-кода определена логика ячеек, расположенных в проблемном для трассировки месте. Это позволяет разработчику пробовать различные архитектуры, чтобы избежать перенаселенных мест, например путем замены мультиплексоров на комбинационную логику.
Поскольку разработчики RTL, работающие по традиционному маршруту, обычно не имеют опыта работы с представлениями топологии и схемы, по умолчанию в инструменте отображаются сводные отчеты. Эти отчеты представляют собой активные таблицы, которые можно сортировать, фильтровать и раскрашивать, чтобы отразить степень важности стандартных метрик, таких как временны´е характеристики, мощность, использование площади и населенность. Дополнительные, нестандартные метрики помогают определить, чем вызваны проблемы, такие как проблемное для трассировки место, – логическим уровнем или уровнем планирования кристалла. По умолчанию отчеты основаны на планировке кристалла, которая автоматически генерируется RTL Architect, так что для получения результатов разработчику RTL не требуется опыт физического проектирования.
В качестве альтернативы тополог может установить значения по умолчанию для проекта или предоставить DEF-файл с топологией, если таковой имеется.
Еще одна важная особенность инструмента RTL Architect – это возможность выполнять свипирование по различным параметрам проекта. Эта возможность называется параллельное исследование проекта. Пользователь может запустить базовый проход и выполнить несколько параллельных проходов для экспериментального определения оптимальной конфигурации проекта. Например, для выявления преимуществ использования одной проектной нормы в сравнении с другой можно выполнить свипирование с использованием различных технологических библиотек. Еще один пример – свипирование соотношения сторон блока и использования площади для определения их влияния на населенность (см. рис. 4). Инструмент анализирует различные проходы свипирования и создает сводный отчет для определения оптимальных результатов.
Требование к потребляемой мощности – одно из самых важных и сложных для выполнения в проектах на передовых проектных нормах. Выбор архитектуры, сделанный при разработке и синтезе RTL, имеет гораздо большее влияние на общее энергопотребление, чем оптимизация на физическом уровне, которая к тому же вносит бóльшую дезорганизацию в проект. Обеспечивая на ранних этапах получение оценок потребляемой мощности при разработке RTL с учетом физической реализации, инструмент RTL Architect позволяет разработчикам с уверенностью анализировать, исследовать и оптимизировать PPA своих RTL-проектов блоков, подсистем и систем на кристалле целиком, достигая правильного баланса производительности и энергоэффективности. Для того чтобы при этом получать результаты, близкие к показателям при передаче в производство, в RTL Architect непосредственно интегрирован механизм инструмента Synopsys PrimePower – золотого стандарта анализа мощности на этапе sign-off. Поддерживается анализ RTL на предмет средней, пиковой мощности, мощности глитчей, тактовой сети, динамической мощности и мощности, связанной с утечкой, а также мощности при использовании нескольких напряжений; с активностью, определяемой RTL-векторами, сгенерированными при симуляции или эмуляции, и даже в безвекторном виде. В инструменте реализована информационная панель анализа мощности RTL (см. рис. 5) для удобного просмотра показателей мощности и устранения проблем. Отчеты и графики служат ориентиром для повышения эффективности стробирования тактовых сигналов, оптимизации скорости доступа к памяти и мощности каналов передачи данных, с тем чтобы быстрее выполнить бюджеты средней и пиковой мощности.
Наконец, в RTL Architect имеется надежная система управления ограничениями. В процессе интеграции блоков система проверяет временны´е ограничения, чтобы обеспечить их согласованность. Ограничения могут быть перенесены по иерархии сверху вниз на блоки путем присвоения им более низкого уровня. Аналогично, ограничения блока можно перенести на верхний уровень. Это особенно важно при интеграции стороннего IP-блока.
Ограничения могут переноситься на другой уровень и использоваться для управления ограничениями для задач верхнего уровня, таких как синтез тактовых сигналов, анализ на заданные ситуации и др. Эта ключевая технология важна для функции изменения логической структуры проекта инструмента RTL Architect. Когда разработчик экспериментирует с логической иерархией, меняя, например, структуру подчинения, система управления ограничениями отслеживает и регистрирует то, как это сказывается на ограничениях, что обычно является рутинным и подверженным ошибкам процессом.
Заключение
Благодаря специализированным интегральным схемам с низкой потребляемой мощностью, высокой производительностью и массовым параллелизмом электронные устройства принесут новую волну пользы обществу – от беспроводной связи 5G до автоматизации на основе искусственного интеллекта. Инновационные архитектуры и инструменты проектирования – ключ к реализации преимуществ технологий с передовыми нормами. Платформа Fusion Design Platform от компании Synopsys (см. рис. 6) – это не набор инструментов для точечных задач, а интегрированное решение, созданное для реализации нового подхода «смещения влево» с тем, чтобы преодолеть проблемы обеспечения характеристик PPA при применении передовых технологических норм. Инструмент RTL Architect на ранних стадиях проектирования выявляет и устраняет проблемы, связанные с этапом физической реализации, чтобы достичь амбициозных целей по мощности, производительности и площади кристаллов на передовых технологических нормах, создавая лучший код RTL. ●
Дж. Шульц, Е. Иванова
Электронные устройства играют ключевую роль в обществе. С их помощью мы общаемся друг с другом голосом и в чатах, обмениваемся видео. Они по-новому и всё более разнообразно развлекают и учат, защищают и лечат нас. Они изменили то, как мы живем, как работаем и отдыхаем. Кремниевые кристаллы – сердце этих устройств, совершающее два-три миллиарда ударов в секунду. На протяжении десятилетий рост функциональности данных кристаллов и устройств на их основе и усиление их влияния на жизнь общества напрямую определялись беспрестанным развитием полупроводниковых технологий.
Однако, чтобы воспользоваться преимуществом этого развития, когда речь идет о новейших технологических нормах, необходимо совершенствование инструментов и методов проектирования специализированных ИС (ASIC).
Результаты проектирования кристалла обычно оцениваются в терминах потребляемой мощности, производительности и площади (power, performance, area – PPA). Традиционно кристальные производства могли периодически уменьшать площадь на 50% (в соответствии с законом Мура), внедряя планарные процессы с новыми технологическими нормами – с меньшими размерами транзисторов и проводников. Это было важно, поскольку при этом плотность логических ячеек удваивалась, что позволяло реализовывать бóльшую функциональность на одном кристалле. Кроме того, уменьшение площади снижало величину задержек в схеме, увеличивая тем самым частоту переключения примерно на 40% и, как следствие, обеспечивая рост производительности в 1,4 раза. Наконец, благодаря меньшей площади затвора, для поддержания того же электрического поля, что и при предыдущих технологических нормах, требовалось меньшее напряжение (что нашло отражение в законе масштабирования Деннарда). Напряжение снижалось на 30%, а мощность – примерно на 50% при увеличении частоты в 1,4 раза.
Однако бесконечно достигать таких результатов, просто уменьшая технологические нормы планарных процессов, было невозможно (см. рис. 1). Сокращение размеров затвора транзистора в определенный момент привело к тому, что пришлось столкнуться с двумя принципиальными ограничениями. Во-первых, из-за короткоканального эффекта в КМОП-технологии на монолитной подложке увеличилось влияние тока утечки на общую потребляемую мощность (ранее незначительное). Во-вторых, напряжение питания достигло нижнего физического предела, что привело к увеличению удельной рассеиваемой мощности на малых затворах, вызывая перегрев чипа. Из-за этого максимальная рабочая частота оказалась ограничена примерно 4 ГГц. Чтобы и далее уменьшать размеры транзисторов, кристальные производства стали совместно с поставщиками средств проектирования работать над преодолением первой проблемы. При норме 130 нм производства ввели смещение подложки для управления пороговым напряжением транзистора (Vth), в результате чего они смогли предложить на выбор ячейки с низким, средним и высоким током утечки и, соответственно, высокой, средней и низкой скоростью переключения. Содействие со стороны инструментов проектирования заключалось в анализе времени распространения сигналов и определении, какую ячейку с каким пороговым напряжением следует использовать, находя баланс между низкой статической мощностью (ячейки с высоким Vth) и производительностью (ячейки с низким Vth).
Размеры транзисторов в КМОП-технологии на монолитной подложке продолжили сокращаться, но при норме около 28 нм смещение подложки потеряло свою эффективность. Сегодня улучшение PPA достигается за счет сочетания новых технологий и инноваций в инструментах проектирования. Для кардинального снижения тока утечки и, как следствие, статической мощности на норме 22 нм была применена непланарная технология FinFET с затвором, охватывающим канал. С другой стороны, планарный процесс FD-SOI (полностью обедненный кремний на изоляторе), внедренный на норме 28 нм, представляет собой более дешевый способ уменьшения тока утечки. Поскольку статическая мощность находится под контролем за счет технологических инноваций, инструменты проектирования сосредоточились на снижении преобладающей динамической мощности. Для ее ограничения используются такие приемы проектирования, как стробирование тактовых сигналов, динамическое масштабирование напряжения и частоты (DVFS) и удаление глитчей. Проблема повышения производительности сместилась влево по маршруту проектирования – на этап разработки логической архитектуры. Чтобы увеличить количество выполняемых в секунду операций, команды разработчиков логической архитектуры стали применять распараллеливание, распределяя выполнение задач между несколькими вычислительными ядрами, используя такие устройства, как многоядерные, графические процессоры и интегральные схемы для искусственного интеллекта. Для энергоэффективного объединения ядер используются сложные коммуникационные архитектуры, такие как сеть на кристалле (NoC), и в больших системах на кристалле обеспечивается хорошее масштабирование производительности.
Проблемы проектирования
Традиционные маршруты проектирования уже не позволяют идти в ногу с достижениями в технологических процессах и требованиями рынка в отношении потребляемой мощности, производительности и площади ИС (PPA). Становится всё труднее использовать весь потенциал этих дорогостоящих технологических норм только с помощью методов физической реализации.
Достижения в области технологий – это обоюдоострый меч. Для команды разработчиков выбор технологии изготовления и структуры металлических слоев может оказаться сложной задачей. Обычно для этого требуется синтезировать из некоторой репрезентативной RTL-модели список цепей на уровне эквивалентных вентилей и передать его команде разработчиков физического уровня для проведения раннего анализа характеристик PPA.
В традиционном маршруте проектирования разработчики RTL проектируют архитектуру схемы с заданной функциональностью, не обращая внимания на то, как это будет реализовано физически. Во многих случаях разработчики отдельных блоков проекта выполняют быстрый синтез для проверки на предмет синтаксических ошибок, а затем передают блоки интегратору, который обеспечивает консолидацию и окончательный синтез. Интегратор в первую очередь заботится о том, чтобы сигналы интерфейсов блоков были связаны с верхним уровнем и чтобы были соблюдены временны´е и мощностные ограничения. Синтезированный список цепей на уровне эквивалентных вентилей затем передается команде разработчиков физического уровня для планирования кристалла, размещения и трассировки. В большинстве случаев разработку RTL от физической реализации отделяет период около недели.
В этом процессе видится несколько проблем. Во-первых, ожидается, что маршрут физической реализации полностью раскроет потенциал данной технологической нормы в отношении характеристик PPA за счет методов оптимизации размещения и трассировки. Однако на передовых нормах предъявляется множество дополнительных требований к размещению ячеек и трассировке проводников, которые ограничивают степени свободы и, следовательно, эффективность оптимизации. Дополнительные правила также приводят к увеличению времени выполнения физического проектирования.
Вторая важная проблема – это несоответствие между задачами разработки RTL и физической реализации. Разработчик RTL обычно имеет очень слабое представление (если имеет его вообще) о том, как логика будет физически реализована в топологии. Его логический блок может соединяться с другим блоком, который физически размещается у другого края кристалла. В такой ситуации, чтобы обеспечить временны´е характеристики, при физическом проектировании может понадобиться добавить в RTL конвейерные регистры и сквозные цепи. Однако с момента передачи RTL на физическое проектирование до получения обратной связи может пройти несколько дней. В некоторых случаях новая версия RTL может появиться раньше, чем будет выполнен синтез и физическая реализация предыдущей. Кроме временны´х ограничений, полезно иметь представление о таких параметрах физической реализации, как мощность, населенность и площадь.
Третья и последняя проблема, которая будет рассмотрена в статье, – это интеграция IP-решений. В качестве IP-решений могут выступать блоки от внешних поставщиков – третьих лиц, или логические блоки, разрабатываемые внутри компании одной группой для других групп в качестве услуги. Как упоминалось ранее, поставщик IP предоставляет RTL-код интегратору, который отвечает за встраивание блока в проект. Сложность заключается в том, что интегратор незнаком с IP-решением в деталях и может только проверить, что IP-блок соответствует набору заранее заданных критериев работоспособности, таких как непротиворечивость логических часов, соблюдение временны´х ограничений и задание доменов питания.
Введение в инструмент RTL Architect
Решение RTL Architect™ (см. рис. 2) – первая в отрасли система проектирования RTL с учетом физической реализации, которая значительно сокращает цикл разработки и обеспечивает превосходное качество результата. Этот инструмент продолжает реализацию стратегии «смещения влево», начатую в платформе проектирования Fusion Design Platform, для решения проблем обеспечения PPA на более ранних этапах проектирования. Сложность технологий с передовыми нормами привела к тому, что стало трудно достигать целевых значений PPA только с помощью методов физической реализации, поэтому перед разработчиками RTL стоит задача кардинального улучшения PPA путем применения предметно-ориентированных архитектур. Инструмент RTL Architect предоставляет логическо-физическую рабочую среду, которая может точно предсказать влияние архитектурных изменений на PPA, не дожидаясь обратной связи от команды физического проектирования. В данном разделе приводятся базовые сведения о том, как основные технологии инструмента (механизм прогнозирования, иерархическое проектирование, анализ мощности на уровне RTL и управление ограничениями) помогают получить информацию и какие решения они предоставляют для преодоления проблем, связанных с традиционным маршрутом проектирования.
В основе RTL Architect лежит новый многомерный механизм прогнозирования (PE), построенный на платформе Fusion Design Platform. Он может точно прогнозировать и моделировать результаты синтеза, поскольку в нем используется та же технология, что и в ведущем инструменте синтеза, являющемся отраслевым стандартом. Многопоточные алгоритмы оптимизации обеспечивают получение результатов с высокой достоверностью в среднем втрое, а иногда и до пяти раз быстрее, чем при традиционном маршруте синтеза и физической реализации. Это позволяет разработчику RTL проводить несколько экспериментов в день, чтобы оценить влияние, которое его код окажет на физическую реализацию.
Инструмент RTL Architect построен на той же унифицированной модели данных, что и Fusion Compiler и IC Compiler II. Инфраструктура корпоративного класса может быть масштабирована для решения задач, связанных с самыми большими системами на кристалле. Решение RTL Architect создано таким образом, чтобы своевременно получать результаты для проектов с многими миллионами и подсистем с десятками миллионов экземпляров блоков. Он полностью построен по иерархическому принципу и поддерживает многоуровневую физическую иерархию (MPH) и повторное использование блоков (MIB). Кроме того, он соответствует требованиям к точности технологических процессов с передовыми нормами благодаря интеграции технологий этапа передачи в производство, имеющихся в PrimeTime, StarRC и PrimePower.
Ключевой особенностью решения RTL Architect является иерархическое планирование кристалла. Подобно традиционному планировщику, он размещает макро- и стандартные ячейки с использованием прогностических моделей вентилей. Для экспериментирования с различной топологией блоков можно использовать редактирование их формы. Глобальный трассировщик выполняет трассировку проекта и выдает информацию о населенности, которая может использоваться для выявления проблемных для трассировки мест. При назначении контактов в проектах с плотно прилегающими блоками или с узкими каналами отображается необходимость добавления в логический блок сквозных цепей, являющихся чисто физическими сущностями. Аналогичным образом, планирование конвейерных регистров может указать, какие блоки нуждаются в дополнительных регистрах для удовлетворения требований по временны´м характеристикам. В отличие от традиционных решений для планирования кристалла, RTL Architect позволяет находить исходный RTL-код по топологии. Например, как показано на рис. 3, можно проследить, в какой строке RTL-кода определена логика ячеек, расположенных в проблемном для трассировки месте. Это позволяет разработчику пробовать различные архитектуры, чтобы избежать перенаселенных мест, например путем замены мультиплексоров на комбинационную логику.
Поскольку разработчики RTL, работающие по традиционному маршруту, обычно не имеют опыта работы с представлениями топологии и схемы, по умолчанию в инструменте отображаются сводные отчеты. Эти отчеты представляют собой активные таблицы, которые можно сортировать, фильтровать и раскрашивать, чтобы отразить степень важности стандартных метрик, таких как временны´е характеристики, мощность, использование площади и населенность. Дополнительные, нестандартные метрики помогают определить, чем вызваны проблемы, такие как проблемное для трассировки место, – логическим уровнем или уровнем планирования кристалла. По умолчанию отчеты основаны на планировке кристалла, которая автоматически генерируется RTL Architect, так что для получения результатов разработчику RTL не требуется опыт физического проектирования.
В качестве альтернативы тополог может установить значения по умолчанию для проекта или предоставить DEF-файл с топологией, если таковой имеется.
Еще одна важная особенность инструмента RTL Architect – это возможность выполнять свипирование по различным параметрам проекта. Эта возможность называется параллельное исследование проекта. Пользователь может запустить базовый проход и выполнить несколько параллельных проходов для экспериментального определения оптимальной конфигурации проекта. Например, для выявления преимуществ использования одной проектной нормы в сравнении с другой можно выполнить свипирование с использованием различных технологических библиотек. Еще один пример – свипирование соотношения сторон блока и использования площади для определения их влияния на населенность (см. рис. 4). Инструмент анализирует различные проходы свипирования и создает сводный отчет для определения оптимальных результатов.
Требование к потребляемой мощности – одно из самых важных и сложных для выполнения в проектах на передовых проектных нормах. Выбор архитектуры, сделанный при разработке и синтезе RTL, имеет гораздо большее влияние на общее энергопотребление, чем оптимизация на физическом уровне, которая к тому же вносит бóльшую дезорганизацию в проект. Обеспечивая на ранних этапах получение оценок потребляемой мощности при разработке RTL с учетом физической реализации, инструмент RTL Architect позволяет разработчикам с уверенностью анализировать, исследовать и оптимизировать PPA своих RTL-проектов блоков, подсистем и систем на кристалле целиком, достигая правильного баланса производительности и энергоэффективности. Для того чтобы при этом получать результаты, близкие к показателям при передаче в производство, в RTL Architect непосредственно интегрирован механизм инструмента Synopsys PrimePower – золотого стандарта анализа мощности на этапе sign-off. Поддерживается анализ RTL на предмет средней, пиковой мощности, мощности глитчей, тактовой сети, динамической мощности и мощности, связанной с утечкой, а также мощности при использовании нескольких напряжений; с активностью, определяемой RTL-векторами, сгенерированными при симуляции или эмуляции, и даже в безвекторном виде. В инструменте реализована информационная панель анализа мощности RTL (см. рис. 5) для удобного просмотра показателей мощности и устранения проблем. Отчеты и графики служат ориентиром для повышения эффективности стробирования тактовых сигналов, оптимизации скорости доступа к памяти и мощности каналов передачи данных, с тем чтобы быстрее выполнить бюджеты средней и пиковой мощности.
Наконец, в RTL Architect имеется надежная система управления ограничениями. В процессе интеграции блоков система проверяет временны´е ограничения, чтобы обеспечить их согласованность. Ограничения могут быть перенесены по иерархии сверху вниз на блоки путем присвоения им более низкого уровня. Аналогично, ограничения блока можно перенести на верхний уровень. Это особенно важно при интеграции стороннего IP-блока.
Ограничения могут переноситься на другой уровень и использоваться для управления ограничениями для задач верхнего уровня, таких как синтез тактовых сигналов, анализ на заданные ситуации и др. Эта ключевая технология важна для функции изменения логической структуры проекта инструмента RTL Architect. Когда разработчик экспериментирует с логической иерархией, меняя, например, структуру подчинения, система управления ограничениями отслеживает и регистрирует то, как это сказывается на ограничениях, что обычно является рутинным и подверженным ошибкам процессом.
Заключение
Благодаря специализированным интегральным схемам с низкой потребляемой мощностью, высокой производительностью и массовым параллелизмом электронные устройства принесут новую волну пользы обществу – от беспроводной связи 5G до автоматизации на основе искусственного интеллекта. Инновационные архитектуры и инструменты проектирования – ключ к реализации преимуществ технологий с передовыми нормами. Платформа Fusion Design Platform от компании Synopsys (см. рис. 6) – это не набор инструментов для точечных задач, а интегрированное решение, созданное для реализации нового подхода «смещения влево» с тем, чтобы преодолеть проблемы обеспечения характеристик PPA при применении передовых технологических норм. Инструмент RTL Architect на ранних стадиях проектирования выявляет и устраняет проблемы, связанные с этапом физической реализации, чтобы достичь амбициозных целей по мощности, производительности и площади кристаллов на передовых технологических нормах, создавая лучший код RTL. ●
Отзывы читателей