stringtranslate.com

Катапульта С

Catapult C Synthesis, коммерческий продукт автоматизации электронного проектирования от Mentor Graphics , представляет собой инструмент синтеза высокого уровня , иногда называемый алгоритмическим синтезом или ESL-синтезом. Catapult C принимает входные данные ANSI C / C++ и SystemC [1] и генерирует код уровня передачи регистров (RTL), предназначенный для ПЛИС и ASIC . [2]

История

В 2004 году Mentor Graphics официально анонсировала свой продукт для синтеза высокого уровня Catapult C, предлагающий иерархическую поддержку проектирования для синтеза конвейерных многоблочных подсистем из несинхронизированных описаний ANSI C/C++. Основной функциональностью Catapult C была генерация RTL ( VHDL и Verilog ), ориентированных на ASIC и FPGA. Пользователи указывали ограничения по времени и площади, а также предоставляли период тактовой частоты и технологию назначения. Mentor также анонсировала Catapult C Library Builder для разработчиков ASIC для сбора подробных данных о характеристиках. [3]

В 2005 году Mentor анонсировал расширения Catapult C для автоматического создания моделей и оболочек уровня транзакций SystemC для моделирования проекта в средах проверки, поддерживающих SystemC. Mentor также представил синтез интерфейса для сопоставления передачи данных, подразумеваемой передачей аргументов функций C++, с аппаратными интерфейсами, такими как провода, регистры, регистры квитирования, память, шины или более сложные определяемые пользователем интерфейсы. [4]

В 2006 году Mentor анонсировала Catapult SL (System Level) для автоматического создания подсистем обработки сигналов. Catapult SL может координировать разбиение последовательных операций C на несколько блоков внутри подсистемы, включая разбиение на несколько доменов синхронизации. Catapult SL автоматически вставляет соответствующие межблочные каналы и буферы памяти для сборки подсистемы. [5]

В январе 2009 года Mentor объявила об интеграции Catapult C и среды проектирования и моделирования Vista SystemC для автоматического создания моделей уровня транзакций (TLM). В этом процессе несинхронизированный ввод ANSI C++ в Catapult инкапсулируется в оболочку TLM; информация о синхронизации извлекается из результатов синтеза и аннотируется в результирующей модели. Поток совместим со стандартом TLM-2.0 из Open SystemC Initiative (OSCI). [6]

В июне 2009 года Mentor объявила, что она улучшила Catapult C, добавив возможность синтезировать логику управления, создавать оптимизированные по мощности списки соединений RTL, с автоматическим многоуровневым тактовым стробированием и автоматизированным потоком проверки, позволяющим отлаживать RTL по исходному входу C++. [7]

В январе 2010 года Mentor объявила о возможности Catapult C принимать прямые входные данные SystemC, включая поддержку как на основе циклов, так и на уровне транзакций (TLM). [8]

В мае 2011 года Mentor объявил, что Catapult C поддерживает синтез TLM. Абстрактные модели TLM преобразуются в точные по контактам, протоколозависимые модели SystemC, а оттуда синтезируются в код RTL. Существующие синтезируемые описания могут быть преобразованы в TLM. [9]

В августе 2011 года Catapult C была приобретена Calypto Design Systems. [10]

В сентябре 2015 года компания Mentor Graphics приобрела Calypto Design Systems [11] , таким образом повторно приобретя Catapult C.

Функции

CatapultC синтезирует ANSI C/C++ без фирменных расширений. Поддержка языка C/C++ включает указатели, классы, шаблоны, специализацию шаблонов и перегрузку операторов, что облегчает методологию повторного использования дизайна по коду RTL. [12]

Catapult C поддерживает как алгоритмический, так и логический синтез управления. [13]

Проектировщики выполняют итерации с CatC, чтобы выбрать предпочтительную микроархитектуру для заданных ограничений производительности и площади. [14] Catapult имеет графический пользовательский интерфейс с визуальным представлением аппаратной схемы, которую он планирует, а также тактовую ссылку между кодом C и кодом Verilog RTL. Catapult C имеет 3 типа моделирования с использованием оригинального тестового стенда C/C++: на основе цикла, на основе RTL и на основе уровня вентиля. [15]

Catapult C поддерживает генерацию модели SystemC, предназначенной для виртуальных платформ, а также тестовую среду SystemC для проверки сгенерированной RTL на основе исходного C++ с использованием исходного тестового стенда C++.

Catapult C поддерживает синтез моделей уровня транзакций (TLM), включая стандартные готовые интерфейсы шин и пользовательские протоколы. [16]

Конкурирующие продукты HLS

Ссылки

  1. ^ Проектирование чипа, объединяющего ESL и высокоуровневый синтез
  2. ^ Университет Оулу. Быстрое планирование эффективных архитектур СБИС для беспроводной системы HSDPA следующего поколения с использованием синтеза на языке C.
  3. ^ EETimes: Высокоуровневые синтезы позволяют использовать ESL
  4. ^ SOCCentral Mentor Graphics расширяет продукт Catapult C Synthesis Архивировано 2006-02-05 на Wayback Machine
  5. ^ SOCCentral Mentor представляет высокоуровневый синтез для создания высокопроизводительных подсистем на основе чистого ANSI C++. Архивировано 13 сентября 2012 г. на archive.today .
  6. ^ EETimes Mentor TLM 2.0 проектный процесс
  7. ^ SCDsource Mentor Catapult C синтезирует управление и управление питанием Архивировано 2011-10-09 на Wayback Machine
  8. ^ Проектирование чипа, объединяющего ESL и высокоуровневый синтез
  9. ^ TLM Synthesis от EETimes Mentor связывает виртуальное прототипирование и аппаратную реализацию
  10. ^ EETimes Calypto приобретает Catapult C компании Mentor
  11. ^ PR Newswire Mentor Graphics приобретает Calypto Design Systems
  12. ^ Университет Оулу. Быстрое планирование эффективных архитектур СБИС для беспроводной системы HSDPA следующего поколения с использованием синтеза на языке C.
  13. ^ SCDsource Mentor Catapult C синтезирует управление и управление питанием Архивировано 2011-10-09 на Wayback Machine
  14. ^ Архитектурное проектирование и реализация ICASSP алгоритма детектора сфер с увеличивающимся радиусом
  15. ^ Проектирование микросхем Deepchip C/C++ с использованием высокоуровневого синтеза
  16. ^ TLM Synthesis от EETimes Mentor связывает виртуальное прототипирование и аппаратную реализацию

Внешние ссылки