ARM9 - это группа более старых 32-разрядных процессорных ядер RISC ARM , лицензированных ARM Holdings для использования в микроконтроллерах . [1] Семейство ядер ARM9 состоит из ARM9TDMI, ARM940T, ARM9E-S, ARM966E-S, ARM920T, ARM922T, ARM946E-S, ARM9EJ-S, ARM926EJ-S, ARM968E-S, ARM996HS. Поскольку ядра ARM9 были выпущены с 1998 по 2006 год , они больше не рекомендуются для новых конструкций ИС, вместо этого предпочтительны ядра ARM Cortex-A , ARM Cortex-M , ARM Cortex-R . [1]
Основная информация | |
---|---|
Разработано | ARM Holdings |
Архитектура и классификация | |
Микроархитектура | ARMv4T |
Набор инструкций | ARM (32-бит) , Thumb (16-бит) |
Архитектура и классификация | |
---|---|
Микроархитектура | ARMv5TE |
Набор инструкций | ARM (32-бит) , Thumb (16-бит) |
Архитектура и классификация | |
---|---|
Микроархитектура | ARMv5TEJ |
Набор инструкций | ARM (32-бит) , Thumb (16-бит) , Jazelle (8-бит) |
Обзор
С этим поколением дизайна ARM перешла от архитектуры фон Неймана ( архитектура Принстона) к (модифицированной; означает разделенный кеш) гарвардской архитектуре с отдельными шинами инструкций и данных (и кешами), что значительно увеличило ее потенциальную скорость. [2] Большинство кремниевых чипов, объединяющих эти ядра, будут упаковывать их как чипы с модифицированной архитектурой Гарварда , объединяя две адресные шины на другой стороне отдельных кешей ЦП и тесно связанной памяти.
Есть два подсемейства, реализующих разные версии архитектуры ARM.
Отличия от ядер ARM7
Ключевые улучшения по сравнению с ядрами ARM7 , которые стали возможны за счет увеличения количества транзисторов, включают: [3]
- Сниженное тепловыделение и меньший риск перегрева.
- Улучшения тактовой частоты. Переход от трехступенчатого конвейера к пятиступенчатому позволяет увеличить тактовую частоту примерно вдвое при том же процессе изготовления кремния.
- Улучшения в подсчете циклов. Многие немодифицированные двоичные файлы ARM7 выполняются на ядрах ARM9 примерно на 30% меньше циклов. Ключевые улучшения включают:
- Более быстрые загрузки и магазины; многие инструкции теперь стоят всего один цикл. Этому способствует как измененная архитектура Гарварда (уменьшающая конкуренцию между шиной и кешем), так и новые этапы конвейера.
- Выявление блокировок конвейера, позволяющее оптимизировать компилятор для уменьшения блокировки между этапами.
Кроме того, некоторые ядра ARM9 включают инструкции «Enhanced DSP», такие как умножение-накопление, для поддержки более эффективных реализаций алгоритмов цифровой обработки сигналов .
Переход с архитектуры фон Неймана повлек за собой использование неунифицированного кеша, так что выборка инструкций не вытесняет данные (и наоборот). Ядра ARM9 имеют отдельные сигналы шины данных и адреса, которые разработчики микросхем используют по-разному. В большинстве случаев они подключают по крайней мере часть адресного пространства в стиле фон Неймана, используемого как для инструкций, так и для данных, обычно к межсоединению AHB, соединяющемуся с интерфейсом DRAM и интерфейсом внешней шины, используемым с флэш- памятью NOR . Такие гибриды больше не являются процессорами с чисто гарвардской архитектурой.
Лицензия ARM
ARM Holdings не производит и не продает устройства ЦП на основе собственных разработок, а скорее лицензирует архитектуру процессора заинтересованным сторонам. ARM предлагает различные условия лицензирования, различающиеся по стоимости и результатам. Всем лицензиатам ARM предоставляет интегрируемое описание аппаратного обеспечения ядра ARM, а также полный набор инструментов для разработки программного обеспечения и право продавать изготовленные микросхемы, содержащие ЦП ARM.
Силиконовая настройка
Производители интегрированных устройств (IDM) получают IP-адрес процессора ARM как синтезируемый RTL (написанный на Verilog ). В этой форме они могут выполнять оптимизацию и расширения архитектурного уровня. Это позволяет производителю достичь индивидуальных целей проектирования, таких как более высокая тактовая частота, очень низкое энергопотребление, расширение набора инструкций, оптимизация размера, поддержка отладки и т. Д. Чтобы определить, какие компоненты были включены в конкретную микросхему ЦП ARM, обратитесь к техническое описание производителя и сопутствующая документация.
Ядра
Год | Ядра ARM9 |
---|---|
1998 г. | ARM9TDMI |
1998 г. | ARM940T |
1999 г. | ARM9E-S |
1999 г. | ARM966E-S |
2000 г. | ARM920T |
2000 г. | ARM922T |
2000 г. | ARM946E-S |
2001 г. | ARM9EJ-S |
2001 г. | ARM926EJ-S |
2004 г. | ARM968E-S |
2006 г. | ARM996HS |
Семейство многоядерных процессоров ARM MPCore поддерживает программное обеспечение, написанное с использованием парадигм асимметричного ( AMP ) или симметричного ( SMP ) многопроцессорного программирования . Для разработки AMP каждый центральный процессор в MPCore может рассматриваться как независимый процессор и, как таковой, может следовать традиционным стратегиям разработки с одним процессором. [4]
ARM9TDMI
ARM9TDMI является преемником популярного ядра ARM7TDMI , а также основан на архитектуре ARMv4T . Ядра на его основе поддерживают как 32-битные наборы инструкций ARM, так и 16-битные Thumb и включают в себя:
- ARM920T с 16 КБ кеш-памяти ввода-вывода и MMU
- ARM922T с 8 КБ кеш-памяти ввода-вывода и MMU
- ARM940T с кешем и блоком защиты памяти (MPU)
ARM9E-S и ARM9EJ-S
ARM9E и его брат ARM9EJ реализуют базовый конвейер ARM9TDMI , но добавляют поддержку архитектуры ARMv5TE , которая включает некоторые расширения набора инструкций в стиле DSP. Кроме того, ширина умножителя была увеличена вдвое, что вдвое сократило время, необходимое для большинства операций умножения. Они поддерживают 32-битные, 16-битные и иногда 8-битные наборы инструкций.
- ARM926EJ-S с технологией ARM Jazelle , которая обеспечивает прямое выполнение 8-битного байт-кода Java на оборудовании, и MMU
- ARM946
- ARM966
- ARM968
Чипсы
- ARM920T
- Samsung S3C2440
- Atmel AT91RM9200 [5]
- ARM926EJ-S
- Cypress Semiconductor EZ-USB FX3
- Microchip Technology (ранее Atmel ) AT91SAM9260, [5] AT91SAM9G, [6] AT91SAM9M, [7] AT91SAM9N / CN, [8] AT91SAM9R / RL, [9] AT91SAM9X, [10] AT91SAM9XE [11] (см. AT91SAM9 )
- Nintendo Starlet ( сопроцессор Wii ) [12]
- NXP (бывший Freescale Semiconductor ) i.MX2 Series, [13] (см i.MX ), LPC3100 и LPC3200 серии [14]
- Texas Instruments OMAP 850, 750, 733, 730, L137, L138, 5912 (также 5948, которая является версией для конкретного клиента, сделанной для Bosch)
- Контроллер управления материнской платой HP iLO 4 [15]
- 5V Технологии 5VT1310 / 1312/1314
- STMicroelectronics SPEAr300 / 600 [16]
- ARM940T
- Conexant CX22490 STB SoC
- ARM966E-S
- STMicroelectronics STR9 [17]
- Ядро ARM9 без ссылки
- АСПИД AST2400
- Atmel AT91CAP9
- CSR Quatro 4300
- Атлас центральности III
- ЦП Cirrus Logic EP9315 ARM9, 200 МГц
- Digi NS9215, NS9210 [18]
- HiSilicon Кирин K3V1
- Infineon Technologies S-GOLDlite PMB 8875
- LeapFrog LF-1000
- Nintendo NTR-CPU ( Nintendo DS CPU), TWL-CPU ( Nintendo DSi CPU; такой же, как DS, но с тактовой частотой 133 МГц вместо 67 МГц)
- NXP Semiconductors LPC2900 , LH7A (ранее Freescale Semiconductor ) i.MX1x
- Nuvoton NUC900
- Марвелл Кирквуд
- MediaTek MT1000, MT6235-39, MT6268, MT6516
- PRAGMATEC RABBITV3 (ARM920T rev 0 (v4l)), используемый в Karotz )
- Qualcomm MSM6xxx
- Qualcomm Atheros AR6400
- Samsung S3C24xx
- STMicroelectronics Nomadik
- Техасские инструменты OMAP 1
- Техасские инструменты Ситара AM1x
- Техасские инструменты TMS320DM365 / TMS320DM368 ARM9EJ-S
- ЧЕРЕЗ WonderMedia 8505 и 8650
- Zilog Encore! 32
Документация
Объем документации для всех чипов ARM огромен, особенно для новичков. Документацию для микроконтроллеров прошлых десятилетий можно было бы легко включить в один документ, но по мере развития микросхем документация росла. Полная документация особенно трудна для понимания для всех микросхем ARM, поскольку она состоит из документов от производителя IC и документов от поставщика ядра процессора ( ARM Holdings ).
Типичное нисходящее дерево документации: маркетинговые слайды высокого уровня, таблица данных для конкретного физического чипа, подробное справочное руководство, в котором описываются общие периферийные устройства и другие аспекты физических чипов в той же серии, справочное руководство для конкретного процессора ядра ARM в пределах чип, справочное руководство по архитектуре ядра ARM, которое включает подробное описание всех наборов команд.
- Дерево документации (сверху вниз)
- Маркетинговые слайды производителя ИС.
- Паспорта производителей микросхем.
- Справочные руководства производителя ИС.
- Справочные руководства по ядрам ARM.
- Справочные руководства по архитектуре ARM.
У производителя микросхем есть дополнительные документы, в том числе: руководства пользователя оценочной платы, примечания по применению, начало работы с программным обеспечением для разработки, документы библиотеки программного обеспечения, исправления и многое другое.
Смотрите также
- ARM архитектура
- Список архитектур и ядер ARM
- JTAG
- Прерывание , обработчик прерывания
- Операционная система реального времени , Сравнение операционных систем реального времени
Рекомендации
- ^ a b Семейная веб-страница ARM9; ARM Holdings.
- ^ Фербер, Steve (2000). Архитектура системы на кристалле ARM . п. 344 . ISBN 0201675196.
- ^ «Производительность ядер ARM9TDMI и ARM9E-S по сравнению с ядром ARM7TDMI», выпуск 1.0 от 9 февраля 2000 г., ARM Ltd.
- ^ «Образец кода MPCore» . Архивировано из оригинала 11 апреля 2015 года.
- ^ a b Устаревшие решения Atmel на базе ARM; Атмель.
- ^ SAM9G ARM9 Микроконтроллеры; Атмель.
- ^ SAM9M ARM9 Микроконтроллеры; Микрочип.
- ^ SAM9N / CN ARM9 микроконтроллеры; Атмель.
- ^ SAM9R / RL ARM9 микроконтроллеры; Атмель.
- ^ SAM9X ARM9 микроконтроллеры; Атмель.
- ^ SAM9XE ARM9 Микроконтроллеры; Атмель.
- ^ «Железо / Старлетка» . Wiibrew . Архивировано 16 мая 2020 года . Проверено 14 июня 2020 .
- ^ Процессоры приложений i.MX28; NXP.
- ^ «Серия LPC3100 / 200: микроконтроллеры на базе Arm9 | NXP» . www.nxp.com . Проверено 27 июля 2018 .
- ^ https://csrc.nist.gov/csrc/media/projects/cryptographic-module-validation-program/documents/security-policies/140sp2574.pdf
- ^ https://www.st.com/en/microcontrollers-microprocessors/spear-arm-926-microprocessors.html
- ^ STR9 ARM9 Микроконтроллеры; STMicroelectronics.
- ^ «Семейство 32-битных процессоров NET + ARM NS9210 / NS9215» (PDF) . Digi International .
Внешние ссылки
- Официальные документы ARM9
- Официальный сайт ARM9
- Справочное руководство по архитектуре: ARMv4 / 5/6
- Основные справочные руководства: ARM9E-S , ARM9EJ-S , ARM9TDMI , ARM920T , ARM922T , ARM926EJ-S , ARM940T , ARM946E-S , ARM966E-S , ARM968E-S
- Справочные руководства сопроцессоров: VFP9-S (с плавающей запятой) , MOVE (MPEG4)
- Карточки с краткими справками
- Инструкции: большой палец ( 1 ), рука и большой палец-2 ( 2 ), вектор с плавающей запятой ( 3 )
- Коды операций: Thumb ( 1 , 2 ), ARM ( 3 , 4 ), Директивы GNU Assembler 5 .