AVR32

редактировать
AVR32
DesignerAtmel
Биты32-разрядные
ВерсияРед. 2
Дизайн RISC
Кодирование Переменная
Порядок байтов Большие
РасширенияВиртуальная машина Java
Регистры
15

AVR32- это 32-битная архитектура микроконтроллера RISC, созданная Atmel. Архитектура микроконтроллера была разработана группой людей, получивших образование в Норвежском университете науки и технологий, в том числе ведущим дизайнером Ойвиндом Стромом и архитектором ЦП Эриком Ренно из норвежского центра дизайна Atmel.

Большинство инструкций выполняется за один цикл. Блок умножение-накопление может выполнять арифметические операции размером 32 бита × 16 бит + 48 бит в двух циклах (задержка результата), выдаваемых один раз за цикл.

Он не похож на семейство 8-битных микроконтроллеров AVR, хотя оба они были разработаны в Atmel Norway, в Тронхейме. Некоторые инструменты отладки похожи.

Поддержка AVR32 исключена из Linux, начиная с ядра 4.12; Atmel перешла в основном на M-варианты архитектуры ARM.

Содержание
  • 1 Архитектура
  • 2 Реализации
  • 3 устройства
    • 3.1 Ядро AP7
    • 3.2 Ядро UC3
  • 4 платы
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Архитектура

AVR32 имеет как минимум две микроархитектуры: AVR32A и AVR32B. Они отличаются архитектурой набора команд, конфигурациями регистров и использованием кэшей для инструкций и данных.

Ядра ЦП AVR32Aпредназначены для недорогих приложений. Они не предоставляют выделенных аппаратных регистров для дублирования файла регистров, статуса и адреса возврата в прерываниях. Это экономит площадь чипа за счет более медленной обработки прерываний.

Ядра ЦП AVR32Bпредназначены для быстрых прерываний. У них есть специальные регистры для хранения этих значений для прерываний, исключений и вызовов супервизора. Ядра AVR32B также поддерживают аппаратную виртуальную машину Java.

Набор команд AVR32 содержит 16-битные (компактные) и 32-битные (расширенные) инструкции, похоже на например немного ARM, с несколькими специализированными инструкциями, которых нет в старых ARMv5, ARMv6 или MIPS32. На AVR32 ISA и платформу разработки зарегистрировано несколько патентов США.

Подобно архитектуре 8-битного микроконтроллера AVR, AVR32 был разработан для высокой плотности кода (упаковка большого количества функций в несколько инструкций) и быстрых инструкций с небольшим количеством часов. циклы. Компания Atmel использовала независимый консорциум эталонных тестов EEMBC для эталонного тестирования архитектуры с различными компиляторами и стабильно превосходила как 16-битный код ARMv5 (Thumb ), так и 32-битный код ARMv5 (ARM ) кода на 50% по размеру кода и в 3 раза по производительности.

Atmel заявляет, что AVR32 AT32UC3L "picoPower" потребляет менее 0,48 мВт / МГц в активном режиме, что, по ее утверждению, при время, потреблял меньше энергии, чем любой другой 32-битный CPU. Затем, в марте 2015 года, они заявляют о своих новых микроконтроллерах на базе Cortex-M0 +, использующих ARM Holdings 'архитектуру ARM, а не свой собственный набор инструкций, «на сегодняшний день преодолены все барьеры производительности сверхнизкого энергопотребления».

Реализации

Архитектура AVR32 использовалась только в собственных продуктах Atmel. В 2006 году Atmel выпустила AVR32A: ядро ​​AVR32 AP7, 7-ступенчатую платформу проектирования на основе конвейерного, кеша. Этот "AP7000" реализует архитектуру AVR32B и поддерживает инструкции SIMD (одна инструкция, несколько данных) DSP (обработка цифрового сигнала ) для RISC набор инструкций в дополнение к аппаратному ускорению Java. Он включает в себя блок управления памятью (MMU) и поддерживает такие операционные системы, как Linux. В начале 2009 года, по слухам, последующий процессор AP7200 был приостановлен, а ресурсы ушли на другие чипы.

В 2007 году Atmel выпустила второй AVR32: ядро ​​AVR32 UC3. Он разработан для микроконтроллеров, использующих встроенную флэш-память для хранения программ и работающих без MMU (блока управления памятью). Ядро AVR32 UC3 использует трехступенчатую конвейерную архитектуру Гарварда, специально разработанную для оптимизации выборки инструкций из встроенной флэш-памяти. Ядро AVR32 UC3 реализует архитектуру AVR32A. Он использует ту же архитектуру набора команд (ISA), что и его брат AP7, но отличается тем, что не включает в себя дополнительные инструкции SIMD или поддержку Java. Он разделяет более 220 инструкций с AVR32B. В ISA реализована атомарная битовая манипуляция для управления периферийными устройствами на кристалле и ввода-вывода общего назначения, а также арифметические операции с фиксированной точкой DSP.

Обе реализации могут быть объединены с совместимым набором периферийных контроллеров и шин, впервые представленных на платформах AT91SAM на базе ARM. Некоторые периферийные устройства, впервые представленные в AP7000, такие как высокоскоростной периферийный контроллер USB и автономный контроллер DMA, появились позже в обновленных платформах ARM9, а затем в продуктах на базе ARM Cortex-M3.

Оба ядра AVR32 включают в себя сборку инфраструктуры On-Chip Debug Nexus класса 2+ с JTAG.

ядром UC3, анонсированное на Electronica 2010 в Мюнхене, Германия, в ноябре. 10, 2010, это первый 32-битный микроконтроллер AVR с дополнительным модулем с плавающей запятой.

Устройства

Ядро AP7

10 апреля 2012 года Atmel объявила об окончании Срок службы устройств AP7 Core с 4 апреля 2013 года.

UC3 core

Если имя устройства заканчивается на * AU, это аудио версия, это позволяет выполнение IP-адресов аудиопрограмм под лицензией Atmel.

Если имя устройства заканчивается на * S, оно включает модуль шифрования AES.

Серия A0 / A1 - устройства обеспечивают 91 Dhrystone MIPS (DMIPS) на 66 МГц (1 мигающее состояние ожидания) и потребляют 40 мА при 66 МГц при 3,3 В.
Последняя правка сделана 2021-06-08 15:24:36
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте