Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

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

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

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

Архитектура [ править ]

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

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

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

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

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

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

Реализации [ править ]

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

В 2007 году Atmel выпустила второй AVR32: ядро ​​AVR32 UC3. Он разработан для микроконтроллеров, использующих встроенную флэш-память для хранения программ и работающих без MMU (блока управления памятью). Ядро AVR32 UC3 использует трехступенчатую конвейерную архитектуру Гарварда, специально разработанную для оптимизации выборки инструкций из встроенной флэш-памяти . [6] Ядро 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 с дополнительным блоком с плавающей запятой . [7]

Устройства [ править ]

Ядро AP7 [ править ]

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

  • AT32AP7000
  • AT32AP7001
  • AT32AP7002

Ядро UC3 [ править ]

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

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

Серия A0 / A1 - устройства обеспечивают 91 Dhrystone MIPS (DMIPS) на частоте 66 МГц (1 мигающее состояние ожидания) и потребляют 40 мА при 66 МГц при 3,3 В.
  • AT32UC3A0128
  • AT32UC3A0128AU
  • AT32UC3A0256
  • AT32UC3A0256AU
  • AT32UC3A0512
  • AT32UC3A0512AU
  • AT32UC3A1128
  • AT32UC3A1256AU
  • AT32UC3A1512
  • AT32UC3A1512AU
Серия A3 / A4 - устройства обеспечивают 91 Dhrystone MIPS (DMIPS) на частоте 66 МГц и потребляют 40 мА при 66 МГц при 3,3 В.
  • AT32UC3A364
  • AT32UC3A364S
  • AT32UC3A3128
  • AT32UC3A3128S
  • AT32UC3A3256
  • AT32UC3A3256AU
  • AT32UC3A3256S
  • AT32UC3A464
  • AT32UC3A464S
  • AT32UC3A4128
  • AT32UC3A4128S
  • AT32UCA4256
  • AT32UC3A4256S
Серия B - обеспечивает 72 Dhrystone MIPS (DMIPS) при 60 МГц и потребляет 23 мА при 66 МГц при 3,3 В.
  • AT32UC3B064
  • AT32UC3B0128
  • AT32UC3B0128AU
  • AT32UC3B0256
  • AT32UC3B0512
  • AT32UC3B0512AU
  • AT32UC3B164
  • AT32UC3B1128
  • AT32UC3B1256
  • AT32UC3B1512
Серия C - устройства обеспечивают 91 Dhrystone MIPS (DMIPS) на частоте 66 МГц и потребляют 40 мА при 66 МГц при 3,3 В.
  • AT32UC3C064C
  • AT32UC3C0128C
  • AT32UC3C0256C
  • AT32UC3C0512C
  • AT32UC3C0512CAU
  • AT32UC3C164C
  • AT32UC3C1128C
  • AT32UC3C1256C
  • AT32UC3C1512C
  • AT32UC3C264C
  • AT32UC3C2128C
  • AT32UC3C2256C
  • AT32UC3C2512C

Серия D - UC3D с низким энергопотреблением включает технологию SleepWalking, которая позволяет периферийным устройствам выводить устройство из спящего режима.

  • ATUC64D3
  • ATUC128D3
  • ATUC64D4
  • ATUC128D4
Серия L - обеспечивает 64 Dhrystone MIPS (DMIPS) при 50 МГц и потребляет 15 мА при 50 МГц при 1,8 В.
  • AT32UC3L016
  • AT32UC3L032
  • AT32UC3L064
  • AT32UC3L0128
  • AT32UC3L0256
  • ATUC64L3U
  • ATUC128L3U
  • ATUC256L3U
  • ATUC64L4U
  • ATUC128L4U
  • ATUC256L4U

Доски [ править ]

  • Среда разработки AT32AP7000 (STK1000)
  • Комплект сетевого шлюза AT32AP7000 (NGW100)
  • Плата AT32AP7000 с FPGA, видеодекодером и Power over Ethernet (Hammerhead)
  • Встраиваемая плата Linux AT32AP7000 Indefia с поддержкой ZigBee
  • Все универсальные оценочные платформы серии AT32UC3 (STK600)
  • Оценочный комплект серии AT32UC3A0 / 1 (EVK1100)
  • Оценочный комплект аудио для серии AT32UC3A0 / 1 (EVK1105)
  • Оценочный комплект серии AT32UC3A3 (EVK1104)
  • Оценочный комплект серии AT32UC3B (EVK1101)
  • AT32UC3B Макетный модуль (медь)
  • AT32UC3A1 Breakout / Малая плата разработки (Aery32)

См. Также [ править ]

  • Атмель
  • Atmel AVR
  • Ардуино

Ссылки [ править ]

  1. ^ "avr32: удалить поддержку архитектуры AVR32" . Проверено 21 сентября 2017 .
  2. ^ "Документ архитектуры AVR32" (PDF) . Атмель . Проверено 15 июня 2008 .
  3. ^ a b «Техническое справочное руководство AVR32 AP» (PDF) . Атмель . Архивировано 3 декабря 2008 года (PDF) . Проверено 12 декабря 2008 .
  4. ^ «Проверенные инновационные технологии микроконтроллеров с низким энергопотреблением и высокой производительностью» (пресс-релиз). Atmel представляет микроконтроллер AVR32, который снижает лучшее в отрасли энергопотребление на 63%; Микроконтроллер picoPower AVR32 AT32UC3L обеспечивает менее 0,48 мВт / МГц в активном режиме и менее 100 нА в спящем режиме
  5. ^ «Семейство SAM L теперь самое низкое в мире решение на базе ARM Cortex-M» . 30 марта 2015. Архивировано из оригинала 27 апреля 2015 года . Проверено 27 апреля 2015 года . Эти микроконтроллеры на базе Cortex-M0 + могут поддерживать функциональность системы, потребляя при этом лишь одну треть мощности сопоставимых продуктов, представленных сегодня на рынке. Это устройство обеспечивает сверхнизкое энергопотребление до 35 мкА / МГц в активном режиме, потребляя менее 900 нА при сохранении всех 32 КБ ОЗУ. [..]
    «В прошлогоднем объявлении Atmel для семейства SAM L21 компании я указал на удивительно низкие рейтинги потребления тока как для активного, так и для спящего режима работы этого семейства продуктов - теперь я могу подтвердить это мнение конкретными данными, полученными из EEMBC ULPBench ", - пояснил Маркус Леви, президент и основатель EEMBC. «Благодаря своей запатентованной технологии picoPower со сверхнизким энергопотреблением компания Atmel достигла самого низкого энергопотребления среди всех процессоров и микроконтроллеров на базе Cortex-M. Эти результаты ULPBench замечательны, демонстрируя опыт компании в области малого энергопотребления в использовании преобразования постоянного тока в постоянный для мониторинга напряжения. , а также другие инновационные методы ".
    При запуске EEMBC ULPBench SAM L21 получает ошеломляющую оценку 185, самую высокую публично зарегистрированную оценку для любого процессора или MCU на базе Cortex-M в мире - и значительно выше, чем оценки 167 и 123, заявленные другими поставщиками. Семейство SAM L21 потребляет менее 940 нА с полным сохранением 40 кбайт SRAM, часами реального времени и календарем и 200 нА в самом глубоком спящем режиме.
  6. ^ "Техническое справочное руководство AVR32UC" (PDF) . Атмель . Архивировано из оригинального (PDF) 05 февраля 2009 года . Проверено 15 июня 2008 .
  7. ^ «Atmel представляет первый 32-битный микроконтроллер AVR с блоком с плавающей запятой» . Атмель . Проверено 26 марта 2011 .
  8. ^ http://www.atmel.com/About/Quality/obsolescence/obsolete_items.aspx?searchText=ap7

Внешние ссылки [ править ]

  • Atmel AVR32 * "Проект Linux AVR32" . Архивировано из оригинала 2 сентября 2011 года . Проверено 9 мая 2013 года .(теперь мертвый) содержал последние исправления ядра Linux, GCC / binutils и так далее.