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 перешла от архитектуры фон Неймана (принстонская архитектура) к (модифицированной; то есть с разделенным кешем) гарвардской архитектуре с отдельными шинами инструкций и данных (и кешами), что значительно увеличило ее потенциальную скорость. [2] Большинство кремниевых чипов, объединяющих эти ядра, будут упаковываться как чипы с модифицированной гарвардской архитектурой , объединяющие две адресные шины с другой стороны разделенных кэшей ЦП и тесно связанной памяти.
Существует два подсемейства, реализующие разные версии архитектуры ARM.
Ключевые улучшения по сравнению с ядрами ARM7 , достигнутые за счет увеличения количества транзисторов, включают: [3]
Кроме того, некоторые ядра ARM9 включают инструкции «Enhanced DSP», такие как умножение-накопление, для поддержки более эффективных реализаций алгоритмов цифровой обработки сигналов .
Переход от архитектуры фон Неймана повлек за собой использование неунифицированного кеша, чтобы выборка инструкций не удаляла данные (и наоборот). Ядра ARM9 имеют отдельные сигналы шины данных и адреса, которые разработчики микросхем используют по-разному. В большинстве случаев они подключают по крайней мере часть адресного пространства в стиле фон Неймана, используемого как для инструкций, так и для данных, обычно к межсоединению AHB , соединяющемуся с интерфейсом DRAM и интерфейсом внешней шины, используемым с флэш-памятью NOR . Такие гибриды уже не являются процессорами чистой гарвардской архитектуры.
ARM Holdings не производит и не продает процессорные устройства на основе собственных разработок, а лицензирует архитектуру процессоров заинтересованным сторонам. ARM предлагает различные условия лицензирования, различающиеся по стоимости и результатам. Всем лицензиатам ARM предоставляет интегрируемое аппаратное описание ядра ARM, а также полный набор инструментов для разработки программного обеспечения и право продавать готовые микросхемы , содержащие процессор ARM.
Производители интегрированных устройств (IDM) получают IP-адрес процессора ARM как синтезируемый RTL (записанный на Verilog ). В этой форме они имеют возможность выполнять оптимизацию и расширения на архитектурном уровне. Это позволяет производителю достигать индивидуальных целей проектирования, таких как более высокая тактовая частота, очень низкое энергопотребление, расширение набора команд, оптимизация размера, поддержка отладки и т. д. Чтобы определить, какие компоненты были включены в конкретную микросхему ЦП ARM, обратитесь к документации паспорт производителя и сопутствующая документация.
Семейство многоядерных процессоров ARM MPCore поддерживает программное обеспечение, написанное с использованием парадигм асимметричного ( AMP ) или симметричного ( SMP ) многопроцессорного программирования . При разработке AMP каждый центральный процессор в MPCore можно рассматривать как независимый процессор и, как таковой, может следовать традиционным стратегиям разработки одного процессора. [4]
ARM9TDMI является преемником популярного ядра ARM7TDMI и также основан на архитектуре ARMv4T . Ядра на его основе поддерживают как 32-битный набор инструкций ARM, так и 16-битный Thumb, и включают в себя:
ARM9E и его брат ARM9EJ реализуют базовый конвейер ARM9TDMI , но добавляют поддержку архитектуры ARMv5TE, которая включает в себя некоторые расширения набора команд в стиле DSP. Кроме того, ширина блока умножения была увеличена вдвое, что вдвое сократило время, необходимое для большинства операций умножения. Они поддерживают 32-битные, 16-битные, а иногда и 8-битные наборы команд.
Графические калькуляторы TI -Nspire CX (2011) и CX II (2019) используют процессор ARM926EJ-S с тактовой частотой 132 и 396 МГц соответственно. [5]
Объем документации для всех чипов ARM устрашает, особенно для новичков. Документацию по микроконтроллерам прошлых десятилетий легко можно было бы объединить в одном документе, но по мере развития микросхем объем документации рос. Полную документацию особенно сложно понять для всех чипов ARM, поскольку она состоит из документов от производителя микросхемы и документов от поставщика ядра процессора ( ARM Holdings ).
Типичное дерево документации сверху вниз: общие маркетинговые слайды, техническое описание конкретного физического чипа, подробное справочное руководство, описывающее общие периферийные устройства и другие аспекты физических чипов одной серии, справочное руководство для конкретного базового процессора ARM внутри. чип, справочное руководство по архитектуре ядра ARM, включающее подробное описание всех наборов инструкций.
У производителя микросхемы имеются дополнительные документы, в том числе: руководства пользователя оценочной платы, рекомендации по применению, руководство по началу работы с программным обеспечением для разработки, документы библиотеки программного обеспечения, сведения об ошибках и многое другое.