AVR32 es una arquitectura de microcontrolador RISC de 32 bits producida por Atmel , que fue adquirida por Microchip Technology en 2016. [ 1 ] La arquitectura del microcontrolador fue diseñada por un pequeño grupo de personas formadas en la Universidad Noruega de Ciencia y Tecnología , incluido el diseñador principal Øyvind Strøm y el arquitecto de CPU Erik Renno en el centro de diseño noruego de Atmel.
La mayoría de las instrucciones se ejecutan en un solo ciclo. La unidad de multiplicación y acumulación puede realizar una operación aritmética de 32 bits × 16 bits + 48 bits en dos ciclos (latencia del resultado), que se emite una vez por ciclo.
No se parece a la familia de microcontroladores AVR de 8 bits , aunque ambos fueron diseñados en Atmel Noruega, en Trondheim . Algunas de las herramientas de depuración son similares.
El soporte para AVR32 se eliminó de Linux a partir del kernel 4.12; [ 2 ] Atmel ha cambiado principalmente a las variantes M de la arquitectura ARM .
Arquitectura
El AVR32 tiene al menos dos microarquitecturas, la AVR32A y la AVR32B. Estas difieren en la arquitectura del conjunto de instrucciones, las configuraciones de registros y el uso de cachés para instrucciones y datos. [ 3 ]
Los núcleos de CPU AVR32A están diseñados para aplicaciones económicas. No cuentan con registros de hardware dedicados para almacenar el archivo de registros, el estado y la dirección de retorno en las interrupciones . Esto ahorra espacio en el chip, pero a costa de una gestión de interrupciones más lenta.
Los núcleos de CPU AVR32B están diseñados para interrupciones rápidas. Cuentan con registros dedicados para almacenar estos valores para interrupciones, excepciones y llamadas al supervisor. Los núcleos AVR32B también admiten una máquina virtual Java en hardware. [ 4 ]
El conjunto de instrucciones AVR32 cuenta con instrucciones de 16 bits (compactas) y de 32 bits (extendidas), similares a las de algunos procesadores ARM, con varias instrucciones especializadas que no se encuentran en las arquitecturas más antiguas ARMv5, ARMv6 o MIPS32 . Se han presentado varias patentes en Estados Unidos para la arquitectura y la plataforma de diseño AVR32.
Al igual que la arquitectura del microcontrolador AVR de 8 bits , el AVR32 fue diseñado para una alta densidad de código (que concentra muchas funciones en pocas instrucciones) e instrucciones rápidas con pocos ciclos de reloj. Atmel utilizó el consorcio independiente de evaluación comparativa EEMBC para evaluar la arquitectura con varios compiladores y superó sistemáticamente tanto al código ARMv5 de 16 bits ( Thumb ) como al código ARMv5 de 32 bits ( ARM ) hasta en un 50 % en tamaño de código y tres veces en rendimiento.
Atmel afirma que el AVR32 AT32UC3L "picoPower" consume menos de 0,48 mW/MHz en modo activo, lo que, según afirmó en su momento, consumía menos energía que cualquier otra CPU de 32 bits . [ 5 ] Luego, en marzo de 2015, Amtel afirmó que sus nuevos microcontroladores basados en Cortex-M0+ que utilizan la arquitectura ARM de ARM Holdings , no su propio conjunto de instrucciones , "han roto todas las barreras de rendimiento de ultrabajo consumo hasta la fecha" al requerir solo 35 μA/MHz. [ 6 ]
Implementaciones
La arquitectura AVR32 se utilizó únicamente en los productos de Atmel. En 2006, Atmel lanzó el AVR32A: el núcleo AVR32 AP7, una plataforma de diseño basada en caché y segmentada de 7 etapas. [ 4 ] Este "AP7000" implementa la arquitectura AVR32B y admite una FPU de hardware , instrucciones SIMD (instrucción única, datos múltiples) DSP ( procesamiento de señal digital ) para el conjunto de instrucciones RISC , además de aceleración de hardware Java. Incluye una Unidad de Gestión de Memoria (MMU) y admite sistemas operativos como Linux . A principios de 2009, el rumoreado procesador sucesor AP7200 se retrasó, destinando recursos a otros chips.
En 2007, Atmel lanzó el segundo AVR32: el núcleo AVR32 UC3. Este está diseñado para microcontroladores, utilizando memoria flash en el chip para el almacenamiento de programas y funcionando sin una MMU (unidad de gestión de memoria). El núcleo AVR32 UC3 utiliza una arquitectura Harvard segmentada de tres etapas especialmente diseñada para optimizar la obtención de instrucciones desde la memoria flash en el chip . [ 7 ] El núcleo AVR32 UC3 implementa la arquitectura AVR32A. Comparte la misma arquitectura de conjunto de instrucciones (ISA) que su hermano AP7, pero se diferencia por no incluir las instrucciones SIMD opcionales ni la compatibilidad con Java. El conjunto de instrucciones FPU es opcional y no se implementó en las familias iniciales de microcontroladores UC3. Comparte más de 220 instrucciones con el AVR32B. La ISA presenta manipulación atómica de bits para controlar periféricos en el chip y E/S de propósito general y aritmética DSP de punto fijo .
Ambas implementaciones se pueden combinar con un conjunto compatible de controladores periféricos y buses que aparecieron por primera vez en las plataformas AT91SAM basadas en ARM. Algunos periféricos que se vieron por primera vez en el AP7000, como el controlador periférico USB de alta velocidad y el controlador DMA independiente, aparecieron más tarde en las plataformas ARM9 actualizadas y luego en los productos basados en ARM Cortex-M3.
Both AVR32 cores include a Nexus class 2+ based On-Chip Debug framework build with JTAG.
The UC3 C core, announced at the Electronica 2010 in Munich Germany on November 10, 2010, was the first member of the UC3 family to implement FPU support.[8]
Devices
AP7 core
On April 10, 2012 Atmel announced the End of Life of AP7 Core devices from April 4, 2013.[9]
- AT32AP7000
- AT32AP7001
- AT32AP7002
UC3 core
If the devicename ends in *AU this is an Audio version, these allow the execution of Atmel licensed Audio firmware IPs.
If the devicename ends in *S it includes an AES Crypto Module.
- A0/A1 Series –devices deliver 91 Dhrystone MIPS (DMIPS) at 66 MHz (1 flash wait-state) and consume 40 mA @66 MHz at 3.3 V.
- AT32UC3A0128
- AT32UC3A0128AU
- AT32UC3A0256
- AT32UC3A0256AU
- AT32UC3A0512
- AT32UC3A0512AU
- AT32UC3A1128
- AT32UC3A1256AU
- AT32UC3A1512
- AT32UC3A1512AU
- A3/A4 Series –devices deliver 91 Dhrystone MIPS (DMIPS) at 66 MHz and consume 40 mA @66 MHz at 3.3 V.
- AT32UC3A364
- AT32UC3A364S
- AT32UC3A3128
- AT32UC3A3128S
- AT32UC3A3256
- AT32UC3A3256AU
- AT32UC3A3256S
- AT32UC3A464
- AT32UC3A464S
- AT32UC3A4128
- AT32UC3A4128S
- AT32UCA4256
- AT32UC3A4256S
- B Series –deliver 72 Dhrystone MIPS (DMIPS) at 60 MHz and consume 23 mA @66 MHz at 3.3V.
- AT32UC3B064
- AT32UC3B0128
- AT32UC3B0128AU
- AT32UC3B0256
- AT32UC3B0512
- AT32UC3B0512AU
- AT32UC3B164
- AT32UC3B1128
- AT32UC3B1256
- AT32UC3B1512
- C Series –devices deliver 91 Dhrystone MIPS (DMIPS) at 66 MHz and consume 40 mA @66 MHz at 3.3 V.
- AT32UC3C064C
- AT32UC3C0128C
- AT32UC3C0256C
- AT32UC3C0512C
- AT32UC3C0512CAU
- AT32UC3C164C
- AT32UC3C1128C
- AT32UC3C1256C
- AT32UC3C1512C
- AT32UC3C264C
- AT32UC3C2128C
- AT32UC3C2256C
- AT32UC3C2512C
D Series –The low-power UC3D embeds SleepWalking technology that allows a peripheral to wake the device from sleep mode.
- ATUC64D3
- ATUC128D3
- ATUC64D4
- ATUC128D4
- L Series –deliver 64 Dhrystone MIPS (DMIPS) at 50 MHz and consume 15 mA @50 MHz at 1.8 V.
- AT32UC3L016
- AT32UC3L032
- AT32UC3L064
- AT32UC3L0128
- AT32UC3L0256
- ATUC64L3U
- ATUC128L3U
- ATUC256L3U
- ATUC64L4U
- ATUC128L4U
- ATUC256L4U
Boards

- AT32AP7000 development environment (STK1000)
- AT32AP7000 Network Gateway Kit (NGW100)
- AT32AP7000 board with FPGA, video decoder and Power over Ethernet (Hammerhead)
- AT32AP7000 Indefia Embedded Linux Board with ZigBee support
- All AT32UC3 Series Generic Evaluation platform (STK600)
- AT32UC3A0/1 Series Evaluation Kit (EVK1100)
- AT32UC3A0/1 Series Audio Evaluation Kit (EVK1105)
- AT32UC3A3 Series Evaluation Kit (EVK1104)
- Kit de evaluación de la serie AT32UC3B (EVK1101)
- Módulo de protoboard AT32UC3B (Cobre)
- Placa de desarrollo pequeña/de expansión AT32UC3A1 (Aery32)
Véase también
Referencias
- ↑ "Microchip Technology adquirirá Atmel" . Microchip Technology Incorporated . 19 de enero de 2016. Consultado el 11 de diciembre de 2025 .
- ↑ "avr32: eliminar el soporte para la arquitectura AVR32" . GitHub . Consultado el 21 de septiembre de 2017 .
- ↑ "Documento de arquitectura AVR32" (PDF) . Atmel . Archivado del original (PDF) el 24 de marzo de 2012. Consultado el 15 de junio de 2008 .
- 1 2 "Manual de referencia técnica del AVR32 AP" (PDF) . Atmel . Archivado (PDF) del original el 3 de diciembre de 2008. Recuperado el 12 de diciembre de 2008 .
- ↑ "Tecnologías de microcontroladores innovadoras y de eficacia probada con bajo consumo y alto rendimiento" (Comunicado de prensa).
Atmel presenta el microcontrolador AVR32, que reduce el consumo energético más bajo del sector en un 63 %; el microcontrolador picoPower AVR32 AT32UC3L ofrece un consumo inferior a 0,48
mW/MHz en modo activo y por debajo de 100 nA en modo de suspensión.
- ↑ "La familia SAM L es ahora la solución basada en ARM Cortex-M de menor consumo energético del mundo" . 30 de marzo de 2015. Consultado el 27 de abril de 2015.
Estos microcontroladores basados en Cortex-M0+ pueden mantener la funcionalidad del sistema, consumiendo tan solo un tercio de la energía de productos comparables en el mercado actual. Este dispositivo ofrece un consumo ultrabajo de energía, llegando a 35 μA/MHz en modo activo, consumiendo menos de 900 nA con
retención completa de 32
kB
de RAM. [...] "En el anuncio de Atmel el año pasado sobre la familia SAM L21 de la compañía, señalé los sorprendentemente bajos índices de consumo de corriente tanto para el funcionamiento en modo activo como en modo de suspensión de esta familia de productos
; ahora puedo confirmar esta opinión con datos concretos derivados del EEMBC ULPBench", explicó Markus Levy, presidente y fundador de EEMBC. "Atmel logró el menor consumo de energía de cualquier procesador y MCU basado en Cortex-M en el mundo gracias a su tecnología patentada de ultrabajo consumo picoPower. Estos resultados de ULPBench son extraordinarios, demostrando la experiencia de la compañía en bajo consumo de energía mediante la conversión CC-CC para la monitorización de voltaje, así como otras técnicas innovadoras."
Al ejecutar EEMBC ULPBench, el SAM L21 logra una puntuación asombrosa de 185, la puntuación más alta registrada públicamente para cualquier procesador o MCU basado en Cortex-M en el mundo
, y significativamente superior a las puntuaciones de 167 y 123 anunciadas por otros proveedores. La familia SAM L21 consume menos de 940 nA con retención completa de 40
kB
de SRAM, reloj y calendario en tiempo real, y 200 nA en el modo de suspensión más profundo.
{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace ) - ↑ "Manual de referencia técnica del AVR32UC" (PDF) . Atmel . Archivado del original (PDF) el 5 de febrero de 2009. Consultado el 15 de junio de 2008 .
- ↑ "Atmel presenta el primer microcontrolador AVR de 32 bits con unidad de punto flotante" . Atmel . Archivado del original el 22/11/2010 . Consultado el 26/03/2011 .
- ↑ "Inteligente | Conectado | Seguro | Tecnología de microchips" .
Enlaces externos
- Microcontroladores Atmel
- Arquitecturas de conjuntos de instrucciones