SoC серии МУЛЬТИКОР — первый шаг и положительная динамика развития
Новая отечественная открытая платформа проектирования систем на кристалле (SoC) «МУЛЬТИКОР» разработана в ГУП НПЦ «ЭЛВИС» и предназначена для проектирования широкого спектра сверхбольших интегральных микросхем (СБИС) как систем на кристалле для коммерческих, военных и космических применений, различающихся по вычислительной мощности, стоимости и функциональным возможностям. Шестимесячный маршрут проектирования платформы «МУЛЬТИКОР» и библиотеки процессорных ядер собственной разработки позволят только в 2003 году спроектировать и изготовить до четырёх новых отечественных однокристальных двухпроцессорных чипов мирового уровня, объединяющих на одном кристалле кремния стандартный MIPS-совместимый контроллёр и процессор цифровой обработки сигналов с фиксированной или плавающей точкой. В статье анализируются основные принципы, положенные в основу создания конкурентной отечественной платформы проектирования СБИС и её перспективы.
Государственное унитарное предприятие научнопроизводственный центр «Электронные вычислительно-информационные системы» (ГУП НПЦ «ЭЛВИС») создано в марте 1991 года на базе структурного подразделения НПО «ЭЛАС» (Зеленоград), проводившего в 1960 –80 годах передовые разработки в области космической электронной техники.
«Ничего импортного в космосе, только собственные отечественные разработки» — это был основной девиз всех проводимых в космическом НПО, возглавляемом академиком Геннадием Яковлевичем Гуськовым, электронных и космических разработок того времени.
Среди разработок, в которых принимали участие специалисты «ЭЛВИС», — система правительственной связи «Сургут», системы космического мониторинга Земли, управляющие системы для множества спутников, в том числе и для станции «Мир».
Мало кто знает, что первый в СССР КМОП-микропроцессор — итог сверхсекретных разработок того времени, был создан в 1974 году при участии специалистов, работающих в «ЭЛВИС» и по сей день.
Успешно выполненные тогда сотрудниками ГУП НПЦ «ЭЛВИС» проекты охватывали целый спектр направлений: от разработки собственных САПР до полностью законченных аппаратно-программных бортовых систем управления и обработки информации космического базирования серий «Салют», в частности функционировавших на борту станции «Мир ».
За разработки в области космической электроники (до 200 успешно реализованных проектов уникальных и первых в СССР КМОП СБИС, а также аппаратно-программные бортовые системы управления и обработки информации на их основе) трое специалистов «ЭЛВИС » удостоены звания «Заслуженный конструктор РФ », семь человек имеют правительственные награды.
Почему-то в последнее время не очень принято говорить о корнях тех достижений, которыми может гордиться тот или иной отечественный центр микроэлектронного проектирования. Но тогда и трудно понять основы той или иной научной или технической концепции, на базе которой формируются многие современные отечественные направления развития микроэлектронной техники. Оценить, являются ли эти направления результатом переосмысления зарубежных микропроцессорных архитектур или базируются на собственном многолетнем опыте с учетом современных тенденций. Важно это понимать с позиции преимуществ или концептуальных недостатков тех или иных немногочисленных отечественных подходов к разработке современных СБИС, особенно для сложных наукоемких решений, таких, как системы на кристалле.
Архитектурные исследования и чиповые реализации в области стековых машин, разработанные методы построения отказоустойчивых и высоконадежных космических комплексов на их основе, которые должны были безотказно работать на космическом борту десятилетиями, — вот основной фундамент созданной в течение десятилетий в «ЭЛВИС » микропроцессорной школы, вершиной которой сегодня являются маршруты проектирования и архитектурные решения интегральных микросхем серии «МУЛЬТИКОР ».
Многолетний творческий альянс специалистов «ЭЛВИС » с ведущими учеными ИРЭ РАН из бывшей лаборатории академика Владимира Александровича Котельникова позволил создать современную уникальную IP-ядерную (IP — Intellectual Property reused cores) отечественную платформу проектирования систем на кристалле «МУЛЬТИКОР » как сплав достижений двух научных школ: микропроцессорной школы «ЭЛВИС » и школы цифровой обработки сигналов ИРЭ РАН.
Российские ученые из ИРЭ РАН, среди которых лауреаты Ленинской и Государственной премии СССР, смогли поднять в 1981 –1983 годах отечественную школу цифровой обработки сигналов на небывалую вершину, выполнив на 10 лет раньше США локацию северного полушария Венеры с помощью космических станций «Венера-15» и «Венера-16», а также последующий синтез ее карты на базе собственных методов обработки сигналов и изображений.
В настоящее время накопленный научнопроизводственный потенциал реализуется, в следующих основных направлениях работы фирмы:
- технологии разработки чипов на базе собственной платформы проектирования SoC «МУЛЬТИКОР» и новых микроминиатюрных систем обработки информации,где «ЭЛВИС» выступает как современный дизайн-центр проектирования СБИС;
- современные технологии безопасности.
Новая открытая отечественная платформа проектирования SoC «IOEUOEEI.»
Подобными технологиями в мире обладает лишь несколько крупнейших электронных компаний: Texas Instruments, ADI, Motorola, Philips и т.д. Технологии обычно не продаются и не распространяются на микроэлектронном рынке. Это просто не выгодно. Продаются интегральные микросхемы, разработанные с помощью технологии, а еще лучше — конечное устройство на основе такой микросхемы. К примеру, телефон нового поколения, телевизор с новыми качествами, практически любые микросистемы обработки информации как для оборонных, так и для гражданских применений. Страны, владеющие такими технологиями, определяют будущую мировую информационную систему.
Основная цель разработки отечественной платформы для SoC — это создание открытой отечественной технологии проектирования СБИС мирового класса не только по уровню достигаемых технических характеристик, но и обладающей возможностью сопряжения через стандартные интерфейсы, внутренние шины и форматы данных с другими такими же платформами или их компонентами от лучших мировых производителей.
«МУЛЬТИКОР» — это возможность при минимальных финансовых затратах и в кратчайшие сроки, за 1 –2 года, обеспечить отечественных проектировщиков аппаратуры конкурентоспособной и импортозамещающей элементной базой в области микроконтроллеров и процессоров обработки сигналов, оптимально решающей их собственную уникальную задачу.
Основные принципы, положенные в основу платформы: программируемость, масштабируемость архитектуры, удобство программирования с помощью системы инструментального ПО MCStudio, стандартные шины, форматы данных и интерфейсы, параметры производительности мирового уровня.
Ключевые черты платформы «МУЛЬТИКОР»:
- постоянно пополняемые и наращиваемые современные цифровые, цифро-аналоговые макробиблиотеки и библиотеки IP-ядер, ориентированные на изготовление ИМС на отечественных и лучших зарубежных фабриках;
- маршрут проектирования ИМС как SoC на базе платформы от архитектуры до топологии составляет 6 –9 месяцев;
- поэтапная SW/HW (Software/Hardware — программно-аппаратная) верификация процесса проектирования для всех проектируемых ядер и в целом SoC с широким использованием плат эмуляторов на базе XILINX FPGA;
- несколько серий (мини-, миди-и максиконфигураций) однокристальных двухъядерных программируемых ИМС сигнальных контроллеров (DSC — Digital Signal Controllers) на базе MIPS-совместимых RISC-ядер, оригинальных масштабируемых DSP-ядер с фиксированной и плавающей точкой и стандартных интерфейсов (PCI, USB, UART, SHARC-байтные порты и т.д.);
- возможность модификации заказчиком уже существующих ядер и SoC либо проектирование новых ИМС с использованием архитектурных спецификаций и ядер заказчиков, сквозной цикл системной верификации;
- возможности построения систем на базе ИМС «МУЛЬТИКОР »: от маломощных встраиваемых систем до наращиваемых открытых параллельных систем реального времени многомиллиардной производительности, поддерживающих принципы резервирования и реконфигурации;
- свободно распространяемое и открытое инструментальное программное обеспечение (ПО), соответствующее лучшим зарубежным аналогам;
- отладочный порт JTAG,накристальные средства отладки в проектируемых ИМС и аппаратно-программные отладчики;
- серии микромодулей «Салют »на базе ИМС платформы, FPGA, аналого-цифровых схем и ИМС памяти,«Унимодули »в стандарте PC-104PLUS на базе микромодулей «Салют ».
«МУЛЬТИКОР» включает библиотеки для отечественных и зарубежных фабрик, а также набор более чем из 30 стандартных цифровых и оригинальных IP-ядер (в виде «Soft Cores », «Hard Cores » и «FPGA-дизайнов»), объединяемых в SoC на основе стандартной системы внутренних шин AMBA, наиболее популярной в мире для SoC.
Библиотеки платформы постоянно пополняются за счет ядер, разрабатываемых потенциальными пользователями ИМС серий «МУЛЬТИКОР » и партнерами фирмы. Макробиблиотеки и библиотеки ядер разрабатываются таким образом, что они технологически совместимы с лучшими зарубежными электронными фабриками. Это допускает изготовление первых образцов ИМС за рубежом с последующим изготовлением в России.
Стандартный подход к построению SoC на базе шин АМВА позволяет разработчикам ИМС на базе платформы эффективно использовать, наряду с собственными библиотеками, также и ядра, предоставляемые для лицензирования ведущими зарубежными центрами проектирования.
Основополагающим подходом в такой стратегии проектирования является использование ранее разработанных и верифицированных функционально законченных блоков, которые извлекаются из базы системы проектирования и повторно используются для разработки ИМС. Такие повторно используемые блоки называются IP-ядрами. Платформа «МУЛЬТИКОР » полностью реализует именно IP-ядерную технологию проектирования.
Инструментальное программное обеспечение (ПО)(MultiCoreStudio — MCStudio) для ИМС, спроектированных на базе платформы, включая аппаратно-программные средства разработки, отладки и верификации программ: С-комплиляторы, ассемблерные средства программирования, программные симуляторы ядер и ИМС платформы, JTAG-отладчики, отладочные модули с FPGA-прототипами ядер, проектируемых SoC и т.д.
«МУЛЬТИКОР» — это несколько проектируемых серий ИМС мини-, миди-и максиконфигурации (МС_11/12/13/01/02 и др.) c фиксированной и плавающей точкой, принадлежащих к новому классу приборов, — цифровых сигнальных контроллеров (DSC), которые объединяют в одном кристалле RISC-ядро и цифровой процессор обработки сигналов (DSP-ядро).
Серии ИМС «МУЛЬТИКОР » с плавающей и фиксированной точкой:
- Мини-конфигурации: МС_11xx /MC_12xx / MC_13xx /MC_14xx;
- Миди-конфигурации: 2SIMD: МС_21xx / MC_22xx /MC_23xx /MC_24xx; 4SIMD: МС_01xx /MC_02xx /MC_03xx /MC_04xx;
- Макси-конфигурации: n (RISCores)&m (DSP-Cores)&k (Special Cores).
Каждая из ИМС вышеуказанных серий содержит стандартное RISC-ядро (RISCorE_xx) из библиотеки ядер платформы, MIPS-совместимое по базовому набору операций, а также оригинальное ядро процессора цифровой обработки сигналов с фиксированной (нечетные серии) или с плавающей (четные серии ИМС) точкой.
RISC-ядро выполняет подготовленную на языке Си с использованием средств инструментального ПО MCStudio основную заданную программу. Для этого ему приходится выполнять функции топ-менеджера в сложной системе на кристалле:
- запускать и останавливать подчиненные ему другие ядра (к примеру, DSP или DMA), реагировать на все внутренние и внешние события;
- участвовать в диагностике подчиненных ему ресурсов;
- служить базой для установленного на нем ядра операционной системы (ОС)LINUXт2.4 или ОС для параллельных систем реального времени и т.д.
В составе платформы «МУЛЬТИКОР » имеется 4 RISC-ядра, отличающихся своей функциональностью, три из которых архитектурно совместимы с ядром MIPS32 фирмы MIPS.
RISC-ядро осуществляет управление и контроль над потоками вводимой, выводимой и обрабатываемой в чипе информации, взаимодействует с внешними по отношению к ИМС устройствами и управляет ими посредством специальных системных блоков и интерфейсов.
Ядро DSP-акселератора — оригинальное масштабируемое по потокам и форматам данных DSP-ядро с фиксированной или плавающей точкой, которое выполняет в ИМС высокоскоростную обработку информации (сигналов, изображений, управляющей информации и т.д.).
Краткое описание DSP — ядер ELcore_11/12/13/14xx платформы «МУЛЬТИКОР » представлено в таблице.
Следует отметить, что разделение по классам DSP-ядер на ядра с фиксированной или плавающей точкой носит условный характер. Так ядро ELcore_11xx успешно выполняет обработку данных в плавающих форматах 16E16 и 32E16, а ядро ELcore_12xx успешно справляется и с обработкой данных в плавающих форматах (24E8, стандарт IEEE754 или 32E16), и с 16/32-разрядными данными в фиксированном формате.
В состав, к примеру, ИМС МС_12xx — минимальной конфигурации процессоров с плавающей точкой — включена минимальная конфигурация DSP-ядра с плавающей точкой ELcore_12xx , имеющая 32-разрядную гарвардскую архитектуру SISD (S ingle I nstructions S ingle D ata — один поток команд и один поток данных). Архитектура поддерживает выполнение в одном цикле синхронизации трех команд с плавающей точкой (Single, IEEE754): умножения и сложения-вычитания.
Заметим также, что архитектура DSP-ядер серии «МУЛЬТИКОР» (ELcore_11/12/13/14xx) масштабируется в 4 раза от варианта «мини » (SISD) до «миди » (2 или 4SIMD —S ingle I nstructions M ultiple D ata — один поток команд и множественный поток данных).
В сигнальных контроллерах с плавающей точкой серий МС_02xx используется 4SIMD — распараллеленная конфигурация потоков данных с плавающей точкой, которая может быть реконфигурирована как MIMD (Multiple Instructions Multiple Data) для двух ядер по 2SIMD ELcore_12xx.
При этом ИМС поддерживает выполнение в одном цикле синхронизации до 12 команд с плавающей точкой (Single, IEEE754) типа умножения и сложения-вычитания, либо 4 одновременно выполняемых MAC-процедуры в одном такте синхронизации.
Кроме того, SoC серии «МУЛЬТИКОР » (к примеру,в конфигурациях «макси») допускают использование нескольких DSP-ядер в составе СБИС, c двух-или четырехкратным SIMD-расширением каждое, что обеспечивает еще более мощную и гибкую уже MIMD-архитектуру, дополненную специализированными ядрами.
В качестве примера аналогичного использования MIMD-архитектуры можно привести использование конфигурации по формуле «RISC +DSP1 +DSP2 +special DSP » в ряде зарубежных коммуникационных ИМС для 3-го поколения связи 3G.
В составе ИМС ядра развивают пиковую производительность до 20 миллиардов байтных операций в cекунду для данных, представленных в формате с фиксированной точкой (четырехядерная макси-конфигурация на базе ядра ELcore_13 ), и равную нескольким миллиардам операций с плавающей точкой (миди-и макси-конфигурации на базе ядра ELcore_12 ).
Возможности платформы «МУЛЬТИКОР» обеспечиваются:
- масштабируемостью архитектуры DSP-ядер в составе ИМС «МУЛЬТИКОР», что позволяет сохранять преемственность программного обеспечения при разработке новых модификаций на ее основе с улучшенными функциональными возможностями;
- доступностью использования свободно распространяемого ПО для программирования RISCore_xx как стандартных RISC-ядер в составе любых ИМС серии «МУЛЬТИКОР»;
- принципиальным использованием в ИМС серии «МУЛЬТИКОР» максимально возможного количества стандартных решений (интерфейсов,внутренних шин, форматов данных, диагностических средств);*
- развитым инструментальным ПО для ИМС платформы MCS (MultiCore Studio), имеющим в составе программные и аппаратные отладчики (на базе аппаратных модулей с МС-прототипами на базе VIRTEX FPGA) и т.д.
ИМС серии «МУЛЬТИКОР» — это однокристальные двухпроцессорные цифровые сигнальные контроллеры. Эта их особенность позволяет при значительно меньших проектных затратах строить максимально эффективные системы, обрабатывающие не только потоки сигналов и изображений, но и осуществляющие дополнительно функции управления информационными потоками.
В следующих номерах журнала будет дана краткая информация обо всех сериях ИМС «МУЛЬТИКОР », для которых в этом году планируется запуск в изготовление тестовых кристаллов.
*К примеру, в ИМС серии «МУЛЬТИКОР » используются стандартные внешние интерфейсы: стандартный системный порт PCI (Local Bus Specification rev.2.0), порт UART, SHARC-совместимые линки и последовательные порты (фирмы ADI), стандартная внутренняя шина для построения системы на кристалле (SoC) типа AMBA (Advanced Microcontroller Bus Architecture Specification, rev 2.0), диагностический и отладочный порт JTAG (стандарт IEEE 1149.1-1990), стандарт представления данных в формате с плавающей точкой (IEEE754) и т.д.
Тип DSP ядра | Краткое описание используемого в ИМС DSP ядра |
ELcore_11xx | Программируемое масштабируемое DSP ядро сопроцессора акселератораc фиксированной точкой минимальной вычислительной мощности и SISD – архитектурой |
ELcore_11_2x | 2SIMD – расширение ядра ELcore__11xx |
ELcore_11_4x | 4SIMD – расширение ядра ELcore__11xx |
ELcore_12xx | Программируемое масштабируемое DSP ядро сопроцессора акселератора c плавающей точкой минимальной вычислительной мощности и SISD – архитектурой |
ELcore_12_2x | 2SIMD – расширение ядра ELcore__12xx |
ELcore_12_4x | 4SIMD – расширение ядра ELcore__12xx |
ELcore_13xx | Программируемое масштабируемое DSP ядро сопроцессора акселератора c фиксированной точкой, усиленное по MAC операциям и с SISD – архитектурой |
ELcore_13_2x | 2SIMD – расширение ядра ELcore__13xx |
ELcore_13_4x | 4SIMD – расширение ядра ELcore__13xx |
ELcore_14xx | Программируемое масштабируемое DSP ядро сопроцессора акселератора c плавающей точкой высокой вычислительной мощности и SISD – архитектурой |
ELcore_14_2x | 2SIMD – расширение ядра ELcore__14xx |
ELcore_14_4x | 4SIMD – расширение ядра ELcore__14xx |
- *Символы «XX » в типе ядра или ИМС соответствуют выбранной технологии изготовления и обозначаются буквами. К примеру, «A, T» соответствует реализациям на 0,5 мкм или использует ранние архитектурные спецификации ядер, «B, S» условно соответствует реализации 0,25 мкм, а «С» — 0,35 мкм.