Alchemy es una familia de microprocesadores integrados de consumo ultrabajo diseñados originalmente por Alchemy Semiconductor para dispositivos de comunicación y multimedia. Los procesadores Alchemy son SoC que integran un núcleo de CPU, un controlador de memoria y un conjunto variado de periféricos. Todos los miembros de la familia utilizan el núcleo de CPU Au1 que implementa el conjunto de instrucciones MIPS32 de MIPS Technologies .
Alchemy Semiconductor era una empresa de semiconductores sin fábrica con sede en Austin, Texas . Fundada en 1999 con una inversión inicial de Cadence Design Systems, obtuvo la licencia de la arquitectura MIPS de 32 bits para diseñar, desarrollar y comercializar SoC de alto rendimiento y consumo ultra bajo para el mercado de dispositivos de borde de Internet. Los periféricos se obtuvieron bajo licencia de terceros. El equipo fundador incluía a antiguos miembros del Centro de Diseño e Investigación de Austin de DEC que trabajaban en el proyecto StrongARM , disuelto después de que DEC vendiera su negocio de microprocesadores a Intel . En mayo de 2000, Alchemy Semiconductor se convirtió en una empresa independiente. [1]
Alchemy Semiconductor presentó el primer miembro de la familia, el procesador Au1000, en el Embedded Processor Forum en San José, California, el 13 de junio de 2000, [2] [3] con muestras limitadas para clientes en febrero de 2001 y disponibilidad en cantidades de producción en el segundo trimestre de ese año, seguido en 2001 y 2002 por el Au1500 y el Au1100.
En febrero de 2002 AMD adquirió Alchemy para competir con los procesadores XScale basados en ARM de Intel , sucesores de la línea StrongARM. Ampliaron la familia con el procesador de red de seguridad Au1550 y el procesador Au1200 optimizado para aplicaciones PMP , así como el chipset inalámbrico Am1772 compuesto por el transceptor Am1770 y los chips de banda base/MAC integrados Am1771. En verano de 2006 AMD vendió sus activos de Alchemy a Raza Microelectronics, posteriormente rebautizada como RMI Corporation . Esta empresa presentó los Au1210 y Au1250, basados en el Au1200 y compatibles en pines con él, y finalmente en 2009 la serie Au1300 integrando un procesador gráfico. RMI se fusionó con NetLogic Microsystems a finales de 2009, [4] esta última adquirida por Broadcom Corporation en febrero de 2012. [5] Broadcom continuó vendiendo procesadores Alchemy, aunque solo bajo obligaciones de disponibilidad a largo plazo, al menos hasta 2017.
El núcleo de CPU Au1 diseñado por Alchemy implementa la versión 1 de MIPS32 ISA y admite la interfaz MIPS EJTAG. No hay una unidad de punto flotante , las instrucciones de punto flotante generan una excepción y pueden ser emuladas por software. También se omitieron la compresión de código (MIPS16) y el modo supervisor opcional. La traducción de direcciones virtuales se basa en TLB y depende de un controlador de excepciones rápido en lugar de un rastreador de tablas de hardware. El núcleo admite ocho fuentes de interrupción con priorización por software. Tiene dos modos de bajo consumo en los que se detienen los relojes de todas las unidades centrales, un modo que exime la caché de datos para mantener la coherencia de la caché con el resto del sistema.
Au1 es una microarquitectura escalar en orden con un pipeline RISC clásico de cinco etapas mejorado con varias optimizaciones. Incluye una caché de instrucciones asociativas de 16 KiB y 4 vías, una caché de datos de 16 KiB y 4 vías, de escritura diferida y lectura-asignación, un archivo de registros, un búfer de escritura y una unidad de acumulación-multiplicación de 16/32 bits y un divisor de hardware de 1 bit/ciclo. La caché admite la precarga por software, el bloqueo de líneas de caché y un modo de transmisión. Todas las etapas del pipeline se completan en un ciclo cuando los datos están disponibles, y todos los peligros y dependencias del pipeline se aplican mediante interbloqueos de hardware. Algunas instrucciones requieren varios ciclos. [3] [6] [7]
El SoC Au1000 está diseñado para frecuencias de núcleo de hasta 500 MHz. A 400 MHz, funciona a 1,5 V y el chip no consume más de 500 mW, con un rendimiento de más de 900 Dhrystone-2,1 MIPS/vatio según Alchemy Semiconductor. Los procesadores Au1000 y Au1500 se fabricaron en un proceso TSMC 180 nm LV logic 1.5V/3.3V 1P6M, el Au1100 redujo aún más el consumo de energía con un proceso TSMC de 130 nm. [6] [8] No se revelaron los detalles de fabricación de los modelos posteriores.
El núcleo de la CPU, los controladores de memoria integrados y los periféricos están conectados mediante un bus de sistema interno de 32 bits (SBUS) que funciona a una frecuencia de hasta la mitad de la del núcleo de la CPU. Los periféricos más lentos que no son compatibles con bus master se conectan con un bus periférico auxiliar. La caché de datos del núcleo rastrea el SBUS para comprobar la coherencia con otros bus master, por ejemplo, un motor DMA. Los modelos Au12xx integran un bus lateral de 64 bits (RBUS) para los periféricos que requieren más ancho de banda del controlador de memoria. [9] Los modelos Au13xx tienen un RBUS por canal de memoria. [10]
Todos los procesadores Alchemy integran un controlador DRAM , un controlador de bus estático, un controlador DMA de 8 canales para transferencias de datos entre la memoria y los periféricos, controladores de interrupciones, temporizadores y una unidad de administración de energía. El controlador de bus estático admite SRAM , ROM , NAND/NOR Flash (Au1550), Flash/ROM en modo página, dispositivos PCMCIA / CompactFlash y periféricos de E/S como un controlador LCD externo, modo IDE PIO hasta ≈80 Mbit/s (Au12xx) o modo ATA-6/UDMA 5 (Au13xx). Los procesadores Au1550 y posteriores tienen un controlador DMA basado en descriptores de 16 canales más flexible. El Au1550 integra un SafeNet Security Engine que proporciona un generador de números aleatorios basado en entropía y acelera los algoritmos de cifrado DES , 3DES , AES y RC4 , y los algoritmos hash MD5 y SHA-1 .
Los procesadores Au1100 integran un controlador LCD que admite paneles de hasta 800 × 600 píxeles con una profundidad de color de 16 bits. El controlador LCD de los procesadores Au12xx admite una resolución de hasta 2K y hasta 24 bits por píxel, cuatro ventanas superpuestas, combinación alfa y corrección gamma. El módulo de interfaz de cámara conecta un bus de 8/9/10 bits compatible con ITU-R BT.656 que funciona a hasta 33 MHz y admite la conversión de formato UYVY ( YUV 4:2:2 ) y Bayer RGB a planar. El motor de aceleración de medios acelera la decodificación de video y admite los formatos MPEG-1/2/4 , DivX-3/4/5 , H.263 y WMV 9/VC-1 a resoluciones de hasta 720 × 576. Admite la conversión de espacio de color de hardware y el escalado de imágenes con un filtro de 4 toques, también para CIM. El periférico MAE2 de los procesadores Au13xx añade compatibilidad con los estándares H.264 y JPEG , decodificación de flujo de bits por hardware y resoluciones de hasta 720p. El motor de procesamiento gráfico disponible en algunos procesadores Au13xx es un ARM Mali-200 y acelera gráficos 2D y 3D compatibles con OpenVG 1.1 y OpenGL ES 1.1 y 2.0.
Cada miembro de la familia estaba disponible con diferentes frecuencias de núcleo y, por lo tanto, clasificaciones de potencia, rangos de temperatura comerciales e industriales, en un encapsulado sin plomo o estándar (modelos anteriores). Se utilizó un encapsulado de matriz de bolas de plástico de paso fino y perfil bajo (LF-PBGA) para todos los modelos, con recuentos de bolas de 324 (Au1000) a 537 (Au13xx), paso de 0,65 mm a 1,0 mm y tamaño de encapsulado de 17 mm × 17 mm × 1,7 mm a 23 mm × 23 mm × 1,5 mm.
Los procesadores Alchemy se comercializaron para puertas de enlace y puntos de acceso inalámbricos ; dispositivos VoIP , de navegación y NAS ; decodificadores , clientes ligeros, reproductores de TV y multimedia portátiles y para automóviles , y marcos de fotos digitales .
Algunos ejemplos son la familia de clientes ligeros Sun Ray 2 , varios dispositivos Cowon PMP , tarjetas de administración remota Dell DRAC5, AirPort Extreme Base Station, productos integrados para redes de Sun Microsystems ; 4G Systems MTX-1 AccessCube MeshCube