Рассмотрен новый процессор цифровой обработки сигналов (ЦОС) 1967ВН058, разработанный в АО “ПКК Миландр”. Отмечено, что в нем сделана ставка на повышение эффективности обработки информации за счет увеличения частоты функционирования вычислительного ядра, большего количества вычислительных ядер, а также использования набора разнообразных периферийных устройств.
УДК 004.31
ВАК 05.27.00
DOI: 10.22184/1992-4178.2017.165.5.44.48
УДК 004.31
ВАК 05.27.00
DOI: 10.22184/1992-4178.2017.165.5.44.48
Теги: digital signal processing peripherals processor периферия процессор цифровая обработка сигналов
Компания "Миландр" предлагает 32-разрядные процессоры цифровой обработки сигналов 1967ВН028, 1967ВН034 и микросборки на их основе. Оба устройства имеют одну и ту же систему команд Lynx (набор инструкций процессора ADSP TS201S плюс дополнительный набор команд), одну и ту же архитектуру ядра. Принципиальное различие изделий заключается в том, что процессор 1967ВН028 нацелен на работу в составе многопроцессорного вычислительного кластера, а 1967ВН034, скорее, подходит на роль микроконтроллера с мощным вычислительным ядром и более богатым набором периферии. При этом 1967ВН028 в одиночном исполнении может служить самодостаточным узлом обработки данных, равно как и 1967ВН034 можно интегрировать в состав большой вычислительной системы. Гибкость в способах построения систем обработки данных на базе 1967ВН028 и 1967ВН034 достигается благодаря наличию в обоих процессорах высокоскоростных каналов обмена данными – LINK-портов, работающих по стандарту LVDS. Пример использования процессоров представлен на рис.1. Устройства показаны в составе микросборок (МСБ) "Осведомленность" и "Флип-Чип", выпускаемых компанией "Миландр".
Продолжением линейки процессоров ЦОС, основанных на системе команд Lynx, является микросхема 1967ВН058 (рис.2, 3). В ней сделана ставка на повышение эффективности обработки информации за счет увеличения частоты функционирования вычислительного ядра, большего количества вычислительных ядер, а также использования набора разнообразных периферийных устройств.
ПРОЦЕССОРНОЕ ЯДРО
Принципиальное отличие разрабатываемого процессора от его предшественников заключается в реализации подсистемы внутрикристальной памяти. Для достижения высокой частоты ядра используется многоуровневая система, состоящая из памяти первого уровня L1 объемом 96 Кбайт, памяти второго уровня L2 объемом 512 Кбайт и статической памяти третьего уровня L3 объемом 3 Мбайт. Каждое ядро имеет собственную память L1 и L2. Память третьего уровня общая для всех ядер. L1 работает на частоте ядра, L2 и L3 – на вдвое меньшей частоте.
Память L1 организована как раздельная память для данных (32 Кбайт) и для программ (64 Кбайт). Все 32 Кбайт памяти программ и старшие 32 Кбайт памяти данных могут быть сконфигурированы как кеш/ОЗУ в соотношении (в Кбайт) 32/0, 24/8, 16/16, 8/24, 4/28 либо 0/32. Младшие 32 Кбайт L1 данных всегда функционируют как статическое ОЗУ с однотактным доступом. При работе старшего банка L1 данных в режиме кеша наличие младших 32 Кбайт L1 данных позволяет исключить конфликт доступа к данным в ряде алгоритмов, требующих высокого быстродействия. Память L1 программ дополнительно снабжена аппаратной поддержкой контроля ошибок – каждое 32-битное слово формирует и хранит дополнительный бит четности.
Память второго уровня L2 является унифицированной, то есть предназначена для хранения команд и данных. Аналогично L1 память L2 может работать как в режиме кеша, так и в режиме ОЗУ. Размер кеша может быть 512, 256 или 128 Кбайт. В памяти L2 предусмотрена поддержка коррекции одиночных ошибок и обнаружения двойных (SEC/DED).
Процессор имеет аппаратные и программные возможности для поддержки когерентности кешей и оперативной памяти.
Процессорное ядро оснащено устройством управления памятью (MMU), выполняющим функции преобразования виртуальных адресов в физические, разделения памяти на страницы с различными атрибутами доступа и защиты.
Каждое процессорное ядро имеет набор локальных периферийных устройств: контроллер прерываний (INTC), контроллер прямого доступа (IDMA), два 64-разрядных счетчика-таймера. Контроллер прерываний позволяет обслуживать до 124 запросов прерываний, поступающих от внешних источников, а также от внутренних подсистем ядра. Контроллер IDMA, имеющий один канал, предназначен для выполнения пересылок между памятью первого и второго уровней, а также между внутриядерной памятью и внутрисистемной общей памятью.
Базовая система команд Lynx дополнена новыми командами для более эффективной реализации компиляторов Си и С++. Особо стоит отметить, что процессор 1967ВН058 по двоичному коду совместим с процессорами 1967ВН028, 1967ВН034. Программа, скомпилированная для этих устройств, может выполняться на процессоре 1967ВН058 без перекомпиляции. MMU позволяет отобразить адресное пространство памяти процессоров 1967ВН028 и 1967ВН034 на имеющиеся ресурсы 1967ВН058. Для этого в таблицу MMU прописываются дескрипторы для преобразования старых (виртуальных) адресов на новое (физическое) адресное пространство.
Стоит обратить внимание, что конструкция микросхемы предусматривает увеличение количества процессорных ядер до 16.
ПЕРИФЕРИЯ
В табл.1 приведено краткое описание контроллеров периферийных устройств, реализованных в 1967ВН058. Базовый набор периферийных устройств процессора 1967ВН058 аналогичен 1967ВН034. Вместе с тем он расширен рядом высокоскоростных интерфейсов. Будет реализован контроллер DDR3 800 МГц с поддержкой адресации памяти объемом до 8 Гбайт. Аналогично 1967ВН028 для создания многопроцессорных систем будет сохранена поддержка межпроцессорного интерфейса (MПИ).
Пример реализации многоканальной системы обработки данных на процессорах 1967ВН058 показан на рис.4. Одна из микросхем (в данном случае в модуле N) может служить связующим звеном с "внешним миром", общение с которым выполняется по одному из интерфейсов. Связь с остальными обрабатывающими модулями осуществляется посредством МПИ. При необходимости через свободные LINK-каналы связи к системе могут быть подключены микросхемы 1967ВН028, 1967ВН034.
Для контроля температуры в микросхеме предусмотрен встроенный термодиод.
СРЕДА РАЗРАБОТКИ
В настоящее время программное обеспечение для 1967ВН028, 1967ВН034 разрабатывается в интегрированной среде разработки CM-Lynx с использованием JTAG-эмулятора для подключения к отладочным комплектам. Параллельно с созданием микросхемы будут дорабатываться CM-Lynx, компилятор и встроенный программный симулятор для того, чтобы к моменту выхода образцов 1967ВН058 пользователям были доступны и средства разработки.
ПАРАМЕТРЫ
МИКРОСХЕМЫ
Микросхему планируется выпускать с приемкой "5" в 841-выводном металлокерамическом корпусе BGA размером 30 × 30 мм. Основные электрические параметры микросхемы приведены в табл.2. В настоящий момент микросхема находится в стадии разработки. Получение экспериментальных образцов запланировано на четвертый квартал 2018 года.
ЛИТЕРАТУРА
Мякочин Ю. 32-разрядный суперскалярный DSP-процессор с плавающей точкой // Компоненты и технологии. 2013. № 7. С. 98.
Мякочин Ю. Высокопроизводительный DSP-процессор для коммуникационных систем // Компоненты и технологии. 2014. № 10. С. 82.
Мякочин Ю., Ошарин А., Чешков В., Руднев А. Технологические особенности сборки высокопроизводительного DSP-процессора в 576-выводном металлокерамическом корпусе с применением технологии Flip-Chip // Компоненты и технологии. 2014. № 7. С. 152.
Любицин В. Высокоскоростной многокластерный интегрированный модуль обработки данных // ЭЛЕКТРОНИКА: Наука, Технология, Бизнес. 2015. № 6. С. 78.
Продолжением линейки процессоров ЦОС, основанных на системе команд Lynx, является микросхема 1967ВН058 (рис.2, 3). В ней сделана ставка на повышение эффективности обработки информации за счет увеличения частоты функционирования вычислительного ядра, большего количества вычислительных ядер, а также использования набора разнообразных периферийных устройств.
ПРОЦЕССОРНОЕ ЯДРО
Принципиальное отличие разрабатываемого процессора от его предшественников заключается в реализации подсистемы внутрикристальной памяти. Для достижения высокой частоты ядра используется многоуровневая система, состоящая из памяти первого уровня L1 объемом 96 Кбайт, памяти второго уровня L2 объемом 512 Кбайт и статической памяти третьего уровня L3 объемом 3 Мбайт. Каждое ядро имеет собственную память L1 и L2. Память третьего уровня общая для всех ядер. L1 работает на частоте ядра, L2 и L3 – на вдвое меньшей частоте.
Память L1 организована как раздельная память для данных (32 Кбайт) и для программ (64 Кбайт). Все 32 Кбайт памяти программ и старшие 32 Кбайт памяти данных могут быть сконфигурированы как кеш/ОЗУ в соотношении (в Кбайт) 32/0, 24/8, 16/16, 8/24, 4/28 либо 0/32. Младшие 32 Кбайт L1 данных всегда функционируют как статическое ОЗУ с однотактным доступом. При работе старшего банка L1 данных в режиме кеша наличие младших 32 Кбайт L1 данных позволяет исключить конфликт доступа к данным в ряде алгоритмов, требующих высокого быстродействия. Память L1 программ дополнительно снабжена аппаратной поддержкой контроля ошибок – каждое 32-битное слово формирует и хранит дополнительный бит четности.
Память второго уровня L2 является унифицированной, то есть предназначена для хранения команд и данных. Аналогично L1 память L2 может работать как в режиме кеша, так и в режиме ОЗУ. Размер кеша может быть 512, 256 или 128 Кбайт. В памяти L2 предусмотрена поддержка коррекции одиночных ошибок и обнаружения двойных (SEC/DED).
Процессор имеет аппаратные и программные возможности для поддержки когерентности кешей и оперативной памяти.
Процессорное ядро оснащено устройством управления памятью (MMU), выполняющим функции преобразования виртуальных адресов в физические, разделения памяти на страницы с различными атрибутами доступа и защиты.
Каждое процессорное ядро имеет набор локальных периферийных устройств: контроллер прерываний (INTC), контроллер прямого доступа (IDMA), два 64-разрядных счетчика-таймера. Контроллер прерываний позволяет обслуживать до 124 запросов прерываний, поступающих от внешних источников, а также от внутренних подсистем ядра. Контроллер IDMA, имеющий один канал, предназначен для выполнения пересылок между памятью первого и второго уровней, а также между внутриядерной памятью и внутрисистемной общей памятью.
Базовая система команд Lynx дополнена новыми командами для более эффективной реализации компиляторов Си и С++. Особо стоит отметить, что процессор 1967ВН058 по двоичному коду совместим с процессорами 1967ВН028, 1967ВН034. Программа, скомпилированная для этих устройств, может выполняться на процессоре 1967ВН058 без перекомпиляции. MMU позволяет отобразить адресное пространство памяти процессоров 1967ВН028 и 1967ВН034 на имеющиеся ресурсы 1967ВН058. Для этого в таблицу MMU прописываются дескрипторы для преобразования старых (виртуальных) адресов на новое (физическое) адресное пространство.
Стоит обратить внимание, что конструкция микросхемы предусматривает увеличение количества процессорных ядер до 16.
ПЕРИФЕРИЯ
В табл.1 приведено краткое описание контроллеров периферийных устройств, реализованных в 1967ВН058. Базовый набор периферийных устройств процессора 1967ВН058 аналогичен 1967ВН034. Вместе с тем он расширен рядом высокоскоростных интерфейсов. Будет реализован контроллер DDR3 800 МГц с поддержкой адресации памяти объемом до 8 Гбайт. Аналогично 1967ВН028 для создания многопроцессорных систем будет сохранена поддержка межпроцессорного интерфейса (MПИ).
Пример реализации многоканальной системы обработки данных на процессорах 1967ВН058 показан на рис.4. Одна из микросхем (в данном случае в модуле N) может служить связующим звеном с "внешним миром", общение с которым выполняется по одному из интерфейсов. Связь с остальными обрабатывающими модулями осуществляется посредством МПИ. При необходимости через свободные LINK-каналы связи к системе могут быть подключены микросхемы 1967ВН028, 1967ВН034.
Для контроля температуры в микросхеме предусмотрен встроенный термодиод.
СРЕДА РАЗРАБОТКИ
В настоящее время программное обеспечение для 1967ВН028, 1967ВН034 разрабатывается в интегрированной среде разработки CM-Lynx с использованием JTAG-эмулятора для подключения к отладочным комплектам. Параллельно с созданием микросхемы будут дорабатываться CM-Lynx, компилятор и встроенный программный симулятор для того, чтобы к моменту выхода образцов 1967ВН058 пользователям были доступны и средства разработки.
ПАРАМЕТРЫ
МИКРОСХЕМЫ
Микросхему планируется выпускать с приемкой "5" в 841-выводном металлокерамическом корпусе BGA размером 30 × 30 мм. Основные электрические параметры микросхемы приведены в табл.2. В настоящий момент микросхема находится в стадии разработки. Получение экспериментальных образцов запланировано на четвертый квартал 2018 года.
ЛИТЕРАТУРА
Мякочин Ю. 32-разрядный суперскалярный DSP-процессор с плавающей точкой // Компоненты и технологии. 2013. № 7. С. 98.
Мякочин Ю. Высокопроизводительный DSP-процессор для коммуникационных систем // Компоненты и технологии. 2014. № 10. С. 82.
Мякочин Ю., Ошарин А., Чешков В., Руднев А. Технологические особенности сборки высокопроизводительного DSP-процессора в 576-выводном металлокерамическом корпусе с применением технологии Flip-Chip // Компоненты и технологии. 2014. № 7. С. 152.
Любицин В. Высокоскоростной многокластерный интегрированный модуль обработки данных // ЭЛЕКТРОНИКА: Наука, Технология, Бизнес. 2015. № 6. С. 78.
Отзывы читателей