ENGLISH
|
ESPAÑOL
::: Kinetis – La próxima generación de MCUs ARM de Freescale :::
 



ARM Cortex-M4 construidos con la nueva tecnología Thin Film Storage de 90nm de Freescale; tienen algunas características nuevas como la FlexMemory, los periféricos analógicos de alta performance, y todos los periféricos digitales que podemos pedir de un MCU de propósitos generales y muy bajo consumo. Todo el combo acompañado de las herramientas conocidas para productos ARM, CodeWarrior con Processor Expert y MQX RTOS para facilitar el proceso de aprendizaje y diseño.

En febrero pasado hicimos una nota breve sobre la nueva familia Kinetis de Freescale. Ahora pretendemos hacer una nota un poco más extensa debido a que estos productos ya están a punto de entrar en producción masiva y se han lanzado novedades como la familia para aplicaciones médicas K50. Para retomar el tema y verlo con un poco más de profundidad comenzamos con una introducción.

La familia Kinetis es la oferta de microcontroladores Cortex-M4 más escalable de la industria; compuesta por múltiples sub familias de hardware y software compatibles con excelentes prestaciones de bajo consumo, analógicas y escalabilidad de memoria que incluye FlexMemory/EEPROM.

El rango de sus prestaciones permiten aplicarlos desde aplicaciones sencillas hasta otras complejas que requieran interfaces hombre máquina (HMI) variadas, conectividad y periféricos para seguridad.

A las características integradas en los microcontroladores Kinetis hay que agregar sus herramientas que van desde las estándar de Freescale hasta toda la comunidad de herramientas para productos ARM que son bien conocidas en el mercado.


Tecnología ARM Cortex-M4

El core ARM Cortex-M4 está construido sobre el Cortex-M3 agregando prestaciones de DSP. Sumado a esto, está la tecnología de Freescale para acelerar el ancho de banda de BUS y la velocidad de ejecución desde Flash permitiendo frecuencias de CPU de hasta 150MHz. La arquitectura del core Cortex-M4 es la ARMv7METM, que cuenta con las características detalladas debajo:

 Tecnología Thumb-2
 Extensiones DSP y SIMD
 MAC de un ciclo (Hasta 32x32 + 64 → 64)
 Unidad de punto flotante de precisión simple opcional
 Controlador de interrupciones anidadas configurable  Compatible con Cortex-M3

Como comentamos más arriba, a estas prestaciones resultantes de la tecnología ARM, Freescale ha agregado tecnología propia para aportar características únicas para esta implementación como lo son: Cache interno para instrucciones y datos Cross bar switch para accesos simultáneos al BUS multi master/ multi esclavo. Unidad de Wake Up de bajo consumo que agrega flexibilidad para trabajar en modos de ahorro de energía.




Comparación entro Cortex-M4 y Cortex-M3


Las capacidades de DSP del Cortex-M4 lo habilitan para entregar más performance y menor consumo que el Cortex-M3 para algunas tareas, especialmente las que requieren cálculos intensivos. Procesamiento de Audio: para ejecutar loops puede trabajar 4 a 8 veces más rápido, usando menos registros y con un código más compacto. Las optimizaciones permiten mejorar hasta dos veces la performance total respecto al Cortex-M3.

Control de Motores: las nuevas instrucciones de DSP permiten implementar nuevas rutinas más complejas para control de motores sin sensores, además se puede trabajar con lazos de control más rápidos que respondan mejor a los cambios de velocidad y carga.

Bajo Consumo: el Cortex-M4 puede funcionar con un clock de la mitad de frecuencia o menos para hacer la misma tarea lo que permite aumentar la vida de la batería y la eficiencia en el uso de la energía.

En la tabla debajo se puede ver una comparación entre ambos core al ejecutar algoritmos específicos.




Librería de matemática y DSP para Cortex-M4

La familia Kinetis tiene el soporte de las librerías de matemática y DSP de ARM para Cortex-M4 que está disponible en Freescale, ARM y terceros que proveen herramientas para estos productos. Estas librerías son un conjunto de funciones en C, independientes de cualquier sistema operativo, optimizadas para el core ARM Cortex-M4 que utilizan instrucciones de DSP y SIMD del core. Hay funciones separadas para trabajar con valores enteros de 8, 16 y 32 bits y con valores de punto flotante de 32 bits.

Dentro de las funciones matemáticas que soportan esta librería podemos citar: suma y resta de vectores, seno y coseno, interpolación lineal y bilineal, conjugado y magnitud de números complejos y cálculos estadísticos.

Las funciones de DSP incluidas en las librerías son: filtros FIR e IIR, FFT, aritmética de matrices y algoritmos de control como PIDs.

Sub Familias Kinetis

La primera fase de la oferta Kinetis comprendió 5 familias compatibles con periféricos de propósitos generales. Las familias son K10, K20, K30, K40 y K60. Son todos productos de propósitos generales.

Luego, más temprano este año, fué lanzada la familia de productos K50 para aplicaciones médicas y a fin de 2011 será lanzada la familia K70 que es el superset de Kinetis. K70 incluye USB High Speed y controlador de LCD gráfico.

Kinetis es una oferta completa de productos con el core que puede correr desde 50 a 150MHz, opciones de memoria Flash desde 32kB a 1MB y una alta relación Flash a RAM a través de todo el portfolio. Todas las familias incluyen FlexMemory que le otorga capacidad de EEPROM para datos o capacidad adicional de Flash o RAM. Periféricos, mapas de memoria y encapsulados comunes permiten una migración fácil entre todos los dispositivos de las distintas familias. Los encapsulados van desde 32 pines QFN, pasando por distintas versiones de QFP y BGA hasta 256 pines. Se pueden ver debajo las distintas familias con los periféricos particulares de cada una de ellas a la izquierda y los comunes a la derecha.



Nueva tecnología de Memoria Flash TFS (Thin Film Storage) de 90nm

Los Kinetis están construidos en la nueva tecnología de 90nm de memoria Flash de Freescale llamada TFS. Esta nueva tecnología ofrece mayor confiabilidad y operación hasta 1,71V para programación y borrado y para los periféricos analógicos integrados en ella. Se emplean en esta implementación varios mecanismos para acelerar el acceso a flash, entre ellos el controlador de flash puede hacer PRE búsquedas especulativas, tiene un buffer de página, cache local, soporte full de arquitectura Harvard y un esquema de BUS especial llamado Crossbar que permite accesos simultáneos al BUS entre múltiples masters y múltiples esclavos del BUS.

Con las herramientas descriptas, los Kinetis pueden correr a máxima velocidad sin wait states dependiendo del código fuente. Hay rutinas que pueden estar almacenadas completamente en los buffers del controlador de Flash, permitiendo así correr sin accesos a Flash.




Periféricos Analógicos

Los microcontroladores Kinetis tienen un conjunto muy rico de periféricos analógicos que son comunes a toda la familia. Todos tienen ADCs de 16 bits, DACs de 12 bits, comparadores rápidos, amplificadores de ganancia programable y referencias internas de tensión. La familia K50 además integra un bloque de amplificadores compuesto por 2 amplificadores operacionales y 2 amplificadores de transimpedancia para acondicionamiento de señal.





Bajo Consumo

Kinetis tiene muy buenas prestaciones de bajo consumo para un procesador de 32 bits. Lo ayudan para lograrlo la tecnología de integración de 90nm y múltiples características especiales que optimizan el comportamiento en los modos de bajo consumo.

Kinetis cuenta con 10 modos de bajo consumo, de los cuales los 4 modos de menor consumo han sido agregados por Freescale al diseño de ARM mediante una nueva unidad conocida como Low Leakage Wake Up Unit.

A estos modos se agregan periféricos que ayudan a optimizar el uso de energía como: RTC de bajo consumo, timer de bajo consumo, gating de clock y alimentación, tiempos de wake up de 4µs y operación de Flash y periféricos analógicos hasta 1,71V.

Con estas características los resultados que pueden obtenerse son corrientes de Stop menores que 500nA, y corrientes de Run de 200µA/MHz.


FlexMemory: EEPROM integrada de gran duración.

La memoria llamada FlexMemory, permite tener prestaciones de EEPROM y/o memoria adicional de datos o programas. Usada como EEPROM la FlexMemory puede ser escrita y borrada de a byte. La memoria puede ser escrita hasta en 100µs permitiendo mayor seguridad ante un evento de brown out.

La organización de esta memoria es configurable. Se puede modificar el tamaño del array de EEPROM, su duración, tamaño de escritura y la cantidad de memoria adicional para datos y programas de acuerdo con las necesidades de la aplicación. Con la FlexMemory es posible lograr una duración mayor a 10M de ciclos de borrado y escritura.

Comparada con una EEPROM tradicional, la FlexMemory puede tener mayor duración, es más rápida, consume menos y es más flexible.



Periféricos de propósito general

Como se puede ver el esquema que describe las sub familias de Kinetis, estos microcontroladores cuentan con una muy generosa dotación de periféricos para distintas aplicaciones como interfaz hombre máquina (HMI), conectividad, seguridad, temporización y control.

Dentro de los periféricos para HMI podemos destacar la interfaz de touch sensing por hardware que puede despertar al MCU de los modos de bajo consumo y el controlador de LCD segmentos de bajo consumo con detección de fallas.

En lo que hace a la conectividad, se destacan; USB2.0 OTG con detector de cargador, Interfaz Ethernet con IEEE 1588 y una multitud de interfaces de comunicación serie. Respecto a los periféricos de seguridad podemos citar: encriptación por hardware y detector de temperatura

Los Kinetis tienen además interfaces para conectar dispositivos externos como SD, SDIO, MMC, memorias DRAM y NAND Flash. Para entender esta variedad tal vez resulte más informativo ver el esquema debajo que muestra los periféricos para la sub familia K60.



Herramientas

La familia Kinetis está soportada por una gran comunidad de herramientas de Software y Hardware. Dentro de las primeras podemos citar; CodeWarrior 10.1, IAR, Keil, CodeSourcery y otros proveedores de herramientas para productos ARM. También estos microcontroladores están soportados por el RTOS MQX de Freescale y por RTOS de otros proveedores.

Dentro de las herramientas de hardware la familia cuenta con los kits Tower de Freescale y con el nuevo Kwistick que es una herramienta muy accesible para trabajar con la familia K40 y que permite programar y debuggear el MCU que tiene instalado y MCU del proyecto del cliente. Sumada a esta herramienta, se encuentran las herramientas de terceros como IAR. Además, es posible usar el OSJTAG que está disponible en los foros de Freescale y puede ser armado por el cliente.



Conclusión


Esta nueva familia de microcontroladores de Freescale parece estar diseñada a pedido de nuestro mercado porque tiene toda la dotación de periféricos que podemos pedir para cualquier aplicación y está encapsulada de manera amigable y soldable con las tecnologías de montaje que maneja nuestra industria. Su performance es muy prometedora tanto desde el punto de vista de la potencia de cálculo como desde el consumo. Sus herramientas son muy buenas y hay opciones para todos los gustos y bolsillos.

Creemos que su uso en nuestro mercado se va a extender y nos preparamos para dar soporte a las aplicaciones con Kinetis de la mejor forma.


Para acceder a la información completa de la familia es útil ir a la página de los productos en el sitio web de Freescale: www.freescale.com/kinetis

Para solicitar asesoramiento, puede contar con el departamento de ingeniería de Electrocomponentes cuyos contactos dejamos debajo.





Electrocomponentes S.A

División Ingenieria
 
Solicite mayor información a: ingenieria@electrocomponentes.com
 
Solís 225 / 227 / 229 (1079) - Buenos Aires, Argentina. - Tel: (54 11) 4375-3366 Fax: (54 11) 4325-8076
© Electrocomponentes S.A. - Todos los derechos reservados