SoC: System on Chip
Последние 70 лет развития электроники показали нам изумительную картину - ламповый радиоприёмник (люксовые версии содержали механический вернер для постройки частоты) превратился в крохотную микросхему, которая может дополнительно узнавать ситуацию на дорогах и проигрывать видео с флеш-карты. Тем не менее, путь был длинным и тернистым.
Изобретение интегральной микросхемы позволило плотно разместить логику и собирать простые компьютеры практически на коленке. Дальнейшая интеграция и выпуск микросхем с миллиардами транзиторов позволил иметь мощнейшие компьютеры минимального размера. И, наконец, тенденция делать системы в виде System on Chip предлагает иметь всю вычислительную систему в одном чипе.
Наиболее сложным делом в рамках выпуска SoC является интеграция разнородных компонентов - например, цифровой логики вычислительных устройств графического конвейера, миллиардов ячеек динамической памяти и аналоговых цепей и усилителей радиотракта.
Поскольку о многом уже говорилось в предыдущих разделах, а аналоговая техника выходит за рамки курса - ознакомимся с наиболее интересными представителями SoC.
И не только интересными, но и современными.
Xbox One MegaSoc
В рамках проекта Xbox One фирма Microsoft объединила свои усилия с AMD и плодом усилий стал "мега" SoC, содержащий 8 ядер Jaguar и Graphics Core Next графический сопроцессор от AMD. Площадь чипа 363 кв.мм, выпускается TMSC по 28нм техпроцессу. Чип работает совместно с "южным" мостом от Toshiba, вся система не является совместимой с PC.
Чип содержит дополнительно 15 (!) процессоров, выделенных для решения специальных задач, и неизвестное количество процессоров "спрятано" от пользователя. Южный мост поддерживает интерфейсы к дискам, USB, интерфейс сети и карт памяти. Изначально требование к чипу содержало возможность запуска как Xbox OS так и Windows, что повлияло на состав SoC и выбор производителя.
Рабочая частота чипа составит 1.75ГГц (процессор) и 853 Мгц для графического ядра. Максимальный теплопакет составляет 80 Ватт, в неактивном состоянии потребление чипа составляет 2.5%.
Структура основного SoC показана на рисунке.
Основной SoC Xbox должен позволять играть с приемлемым качеством в современные игры и работать с мультимедиа контентом. Для этого в него интегрированы 8 контроллеров памяти и 2 канала 64-битовой DDR памяти с пиковой пропускной способностью в 68Гбайт/с. Дополнительно на чипе расположено 32Мбайт статической памяти для размещения критичных данных (например, текстур), пропускная способность статической памяти достигает 200 Гбайт/сек.
Центральный процессор содержит 2 кластера по 4 ядра Jaguar, каждый кластер имеет 2Мбайт кеш-памяти.
Графическое ядро основано на архитектуре CGN, имеет 768 шейдерных устройств с пиковой производительностью в 1.3Терафлоп. Может обрабатываться 1.7 млрд. графических примитивов в секунду и 41 миллиард текселов в секунду. Мощность пиксельной обработки - 13.6 миллиардов пикселей в секунду. Поддерживается стандарт DirectX 11.2.
Поддерживается использование двух дисплеев или одного дисплея и исполнения одной вычислительной задачи на графическом процессоре.
Дополнительно имеется видеодекодер Н.264, с возможностью апгрейда кодека. Имеются дополнительные процессоры для преобразования потоков данных (зелёные квадраты на рисунке).
Аудиопроцессор имеет пиковую мощность в 15.4ГФлоп. Процессор обслуживает массив микрофонов для контроля положения пользователя и эхоподавления.
FPGA: Stratix 10. FPGA c 64-битным процессором ARM.
Altera предлагает пользователям новый FPGA, содержащий в себе 4 64-битных ядра ARMv8. Для выпуска используется 14нм техпроцесс Intel. Целевые рынки: процессинг больших объёмов данных, обработка сетевого обмена, радары. Каждое ядро Cortex-ARM53 имеет встроенную обработку плавающей запятой, SIMD инструкции Neon, тактовую частоту до 2 ГГц. Все четыре ядра разделяют кеш-память от 512Кбайт до 2 Мбайт, поддерживается ЕСС коррекция.
Пиковая производительность ПЦОС(DSP)-обработки составляет 10ТФлоп, FPGA работает на частоте до 1ГГц.
Процессоры предназначены для задач управления (и определённых вычислительных задач), основная вычислительная нагрузка ложится на FPGA и DSP блоки. Для сокращения затрат на создание программ SDK для SoC поддерживает OpenCL, вплоть до программирвоания структуры FPGA используя OpenCL.
Предполагается основное использование SoC как сопроцессора.
Tegra K1
Tegra K1 является первым мобильным процессором, в который встроено графическое ядро Kepler. Версии Tegra выпускается в двух версиях - с четырьми ядрами Cortex-A15 или двумя 64-битными ядрами ARMv8. Одним из важных нововведений является фактическое объединение мобильных и десктопных архитектур в единую расширяемую линейку GeForce. Текущие версии чипа производятся по техроцессу TSMC 28 нм. Рабочая частота чипа составляет 2.3 ГГц.
Графический процессор содержит мультипроцессор потоков Kepler, 4 процессора растровых операций и 128 Кбайт кеш-памяти второго уровня.
Мультипроцессор потоков содержит 192 Cuda-ядра с 32-битной плавающей запятой. Максимальный теплопакет - 1.0 - 1.3 Вт. Поддерживается OpenGL 4.4 MS Directx 11, OpenGL ES 3.0, также API CUDA версии 6.0.
Отдельным модулем предлагается сопроцессор для вычислительной фотографии - Chimera, который одновременно может обрабатывать изображение от двух камер. Мощность обработки - 20 Мпикселей при частоте 30 кадров в секунду.
Поддерживаются разрешения камер до 100 Мпикселей с глубиной цвета до 14 бит на пиксель.
Дополнительной особенностью SoC является новое ядро процессора ARM, в котором есть дополнительное число уровней оптимизации питания, что позволяет в ряде случаев значительно понищить энергопотребление.
BeagleBone Black
Beagle Bone Black - один из современных одноплатных компьютеров с низкой стоимостью ($45), имеющий значительное количество цифровых и аналоговых интерфейсов и большое количество линий ввода-вывода.
Beagle Bone Black построен на процессоре Texas Instruments AM335x (Sitara), который выпускается в шести исполнениях (совместимых друг с другом даже электрически).
Структурная схема процессора AM335x на базе ARM Coretex-A8 показана ниже.
Большое количество внешних интерфейсов, шина памяти, поддержка видеоинтерфейса делают этот процессор прекрасным компонентом встраиваемой системы.
Поддержка операционной системы Linux, 7мВт потребления в режиме сна, тактовая частота до 1ГГц, 3D акселератор, 64Кбайт кеш памяти первого уровня и 256Кбайт кеш памяти второго уровня является дополнительными плюсами для конструктора встраиваемых систем.
Этими примерами список выпускаемых SoC не ограничивается. Тем не менее в случае необходимости ознакомления с SoC рекомендуется начинать с знакомства с широкораспространёнными одноплатными компьютерами типа BeagleBone Black или Rapsberry Phi. Есть большое количество ознакомительный статей по этим компьютерам в популярной литературе и специализированных изданиях.
Спасибо за внимание!