PSoC ( sistema programable en un chip ) es una familia de circuitos integrados de microcontroladores de Cypress Semiconductor . Estos chips incluyen un núcleo de CPU y matrices de señales mixtas de periféricos analógicos y digitales integrados configurables.
Historia
En 2002, Cypress comenzó a enviar cantidades comerciales de PSoC 1. [1] Para promover el PSoC, Cypress patrocinó un "Desafío de diseño de PSoC" en la revista Circuit Cellar en 2002 y 2004. [2]
En abril de 2013, Cypress lanzó la cuarta generación, PSoC 4. El PSoC 4 cuenta con una CPU ARM Cortex-M0 de 32 bits , con bloques analógicos programables ( amplificadores operacionales y comparadores), bloques digitales programables (UDB basados en PLD), enrutamiento programable y GPIO flexible (enruta cualquier función a cualquier pin), un bloque de comunicación en serie (para SPI, UART, I²C ), un bloque de temporizador / contador / PWM y más. [3]
PSoC se utiliza en dispositivos tan simples como los cepillos de dientes Sonicare y las zapatillas Adidas, y tan complejos como el decodificador de TiVo . Un PSoC, usando CapSense , controla la rueda de desplazamiento sensible al tacto en la rueda de clic del iPod de Apple .
En 2014, Cypress amplió la familia PSoC 4 al integrar una radio Bluetooth Low Energy junto con un SoC basado en PSoC 4 Cortex-M0 en un solo troquel monolítico.
En 2016, Cypress lanzó PSoC 4 S-Series, con CPU ARM Cortex-M0 + . [4]
Descripción general
Un circuito integrado PSoC está compuesto por un núcleo, bloques analógicos y digitales configurables y enrutamiento e interconexión programables. Los bloques configurables en un PSoC son la mayor diferencia con otros microcontroladores.
PSoC tiene tres espacios de memoria separados: SRAM paginado para datos, memoria Flash para instrucciones y datos fijos, y registros de E / S para controlar y acceder a los bloques lógicos y funciones configurables. El dispositivo se crea utilizando tecnología SONOS .
PSoC se asemeja a un ASIC : a los bloques se les puede asignar una amplia gama de funciones e interconectarse en el chip. A diferencia de un ASIC, no se requiere un proceso de fabricación especial para crear la configuración personalizada, solo el código de inicio creado por PSoC Designer de Cypress (para PSoC 1) o PSoC Creator (para PSoC 3/4/5) IDE .
PSoC se asemeja a un FPGA en que al encenderlo debe configurarse, pero esta configuración ocurre cargando instrucciones desde la memoria Flash incorporada.
PSoC se parece más a un microcontrolador combinado con un PLD y un analógico programable. El código se ejecuta para interactuar con las funciones periféricas especificadas por el usuario (llamadas "Componentes"), utilizando API generadas automáticamente y rutinas de interrupción. PSoC Designer o PSoC Creator generan el código de configuración de inicio. Ambos integran API que inicializan los componentes seleccionados por el usuario según las necesidades de los usuarios en una GUI similar a Visual-Studio .
Bloques analógicos y digitales configurables
Utilizando bloques analógicos y digitales configurables, los diseñadores pueden crear y cambiar aplicaciones integradas de señal mixta. Los bloques digitales son máquinas de estado que se configuran mediante los registros de bloques. Hay dos tipos de bloques digitales, bloques de construcción digitales (DBBxx) y bloques de comunicación digital (DCBxx). Solo los bloques de comunicación pueden contener módulos de usuario de E / S en serie, como SPI, UART, etc.
Cada bloque digital se considera un recurso de 8 bits que los diseñadores pueden configurar utilizando funciones digitales predefinidas o módulos de usuario (UM) o, al combinar bloques, convertirlos en recursos de 16, 24 o 32 bits. La concatenación de UM es la forma en que se crean los PWM y los temporizadores de 16 bits.
Hay dos tipos de bloques analógicos. Los bloques de tiempo continuo (CT) se componen de un circuito de amplificador operacional y se designan como ACBxx donde xx es 00–03. El otro tipo son los bloques de tapa de interruptor (SC), que permiten flujos de señales analógicas complejas y están designados por ASCxy, donde x es la fila e y es la columna del bloque analógico. Los diseñadores pueden modificar y personalizar cada módulo a cualquier diseño.
Enrutamiento e interconexión programables
El enrutamiento flexible de las matrices de señales mixtas de PSoC permite a los diseñadores enrutar señales hacia y desde pines de E / S con mayor libertad que con muchos microcontroladores de la competencia. Los buses globales permiten la multiplexación de señales y la realización de operaciones lógicas. Cypress sugiere que esto permite a los diseñadores configurar un diseño y realizar mejoras de manera más fácil y rápida y con menos rediseños de PCB que un enfoque de puerta lógica digital o microcontroladores de la competencia con más pines de función fija.
Serie
Hay cinco familias diferentes de dispositivos, cada una basada en un núcleo de microcontrolador diferente:
- PSoC 1 - Serie CY8C2xxxx - Núcleo M8C.
- PSoC 3 - Serie CY8C3xxxx - núcleo 8051 .
- PSoC 4 - Serie CY8C4xxxx - Núcleo ARM Cortex-M0 . [5]
- PSoC 5 / 5LP - Serie CY8C5xxxx - Núcleo ARM Cortex-M3 .
- PSoC 6 - Serie CY8C6xxxx - Núcleo ARM Cortex-M4 con un núcleo ARM Cortex-M0 + agregado (en algunos modelos). [6]
- Bluetooth de baja energía
A partir de 2014, Cypress comenzó a ofrecer dispositivos PSoC 4 BLE con Bluetooth Low Energy integrado (Bluetooth Smart). Esto se puede utilizar para crear productos conectados aprovechando los bloques analógicos y digitales. [7] Los usuarios pueden agregar y configurar el módulo BLE directamente en el creador de PSoC. Cypress también proporciona una pila completa de Bluetooth de baja energía con licencia de Mindtree con funcionalidad periférica y central. [8] La serie PSoC 6 incluye versiones con BLE que incluyen funciones de Bluetooth 5 que incluyen rango extendido o mayor velocidad.
Resumen
PSoC 1 | PSoC 3 | PSoC 4 | PSoC 5 / 5LP | PSoC 6 |
---|---|---|---|---|
Núcleo M8C de 8 bits hasta 24 MHz, 4 MIPS | Núcleo 8051 de 8 bits (ciclo único) hasta 67 MHz, 33 MIPS | ARM Cortex-M0 de 32 bits hasta 48 MHz,? MIPS | ARM Cortex-M3 de 32 bits hasta 80 MHz, 84 MIPS | ARM Cortex-M4 de 32 bits (hasta 150 MHz) ARM Cortex-M0 + de 32 bits (opcional hasta 100 MHz) |
Flash: 4 KB a 32 KB SRAM: 256 bytes a 2 KB | Flash: 8 KB a 64 KB SRAM: 3 KB a 8 KB | Flash: de 16 KB a 256 KB SRAM: de 2 KB a 32 KB | Flash: 32 KB a 256 KB SRAM: 8 KB a 64 KB | Flash: 512 KB a 2048 KB SRAM: 128 KB a 512 KB ampliable mediante quad SPI |
I²C, SPI, UART, FS USB 2.0 | I²C, SPI, UART, LIN, FS USB 2.0, I²S, CAN | I²C, SPI, UART, CAN . | I²C, SPI, UART, LIN, CAN, FS USB 2.0, I²S | I²C, SPI, UART, LIN, BLE (opc.), FS USB 2.0 (opc. Host y dispositivo) |
16 bloques PSoC digitales | 16 a 24 UDB (bloques digitales universales) | 4 a 8 UDB | 20 a 24 UDB | 0 a 12 UDB |
1 ADC Delta-Sigma (de 6 a 14 bits) 131 ksps a 8 bits; 1 Sigma-Delta ADC (para detección capacitiva) Hasta dos DAC (de 6 a 8 bits) | 1 ADC Delta-Sigma (de 8 a 20 bits) 192 ksps a 12 bits; Hasta cuatro DAC (8 bits) | 1 SAR ADC (12 bits) 1 Msps a 12 bits; Hasta dos DAC (de 7 a 8 bits) | 1 ADC Delta-Sigma (de 8 a 20 bits) 192 ksps a 12 bits; 2 SAR ADC (12 bits) 1 Msps a 12 bits; Hasta cuatro DAC (8 bits) | 1 SAR ADC (12 bits) 1 MSPS 1 DAC de modo de voltaje de 12 bits |
Hasta 64 E / S | Hasta 72 E / S | Hasta 98 E / S | Hasta 72 E / S | Hasta 104 E / S |
Funcionamiento: 1,7 V a 5,25 V Activo: 2 mA, Suspensión: 3 μA Hibernación:? | Funcionamiento: 0,5 V a 5,5 V Activo: 1,2 mA, Suspensión: 1 μA, Hibernación: 200 nA | Funcionamiento: 1,71 V a 5,5 V Activo: 1,6 mA, Suspensión: 1,3 μA, Hibernación: 150 nA | Funcionamiento: 2,7 V a 5,5 V Activo: 2 mA, Suspensión: 2 μA, Hibernación: 300 nA | |
Requiere ICE Cube y FlexPods | SWD en chip, depuración | JTAG en chip, SWD, SWV, depuración, seguimiento | ||
Kit de desarrollo CY8CKIT-001 | CY8CKIT-001 Kit de desarrollo CY8CKIT-030 Kit de desarrollo | CY8CKIT-040 4000 Kit Pioneer CY8CKIT-042 4200 Kit Pioneer CY8CKIT-043 4200M Kit de creación de prototipos CY8CKIT-044 4200M Kit pionero CY8CKIT-046 4200L Kit Pioneer | CY8CKIT-001 Kit de desarrollo CY8CKIT-050 Kit de desarrollo CY8CKIT-059 Kit de prototipo | CY8CKIT-062-BLE Kit pionero |
Herramientas de desarrollo
Diseñador de PSoC
Este es el software IDE de primera generación para diseñar, depurar y programar los dispositivos PSoC 1. Introdujo características únicas que incluyen una biblioteca de periféricos analógicos y digitales caracterizados previamente en un entorno de diseño de arrastrar y soltar que luego se puede personalizar para necesidades de diseño específicas aprovechando las bibliotecas de código API generadas dinámicamente.
Creador de PSoC
PSoC Creator es el software IDE de segunda generación para diseñar, depurar y programar los dispositivos PSoC 3/4/5. El IDE de desarrollo se combina con un editor de diseño gráfico fácil de usar para formar un poderoso entorno de co-diseño de hardware / software. PSoC Creator consta de dos bloques de construcción básicos. El programa que permite al usuario seleccionar, configurar y conectar los circuitos existentes en el chip y los componentes que son equivalentes a los periféricos de las MCU. Lo que hace que PSoC sea intrigante es la posibilidad de crear periféricos específicos para aplicaciones propias en hardware. Cypress publica paquetes de componentes varias veces al año. Los usuarios de PSoC obtienen nuevos periféricos para su hardware existente sin que se les cobre ni tengan que comprar hardware nuevo. PSoC Creator también permite mucha libertad en la asignación de periféricos a los pines de E / S.
Corteza-M
Herramientas de desarrollo ARM genéricas para PSoC 4 y PSoC 5.
Documentación
- PSoC 4/5
La cantidad de documentación para todos los chips ARM es abrumadora, especialmente para los recién llegados. La documentación para microcontroladores de décadas pasadas fácilmente se incluiría en un solo documento, pero a medida que los chips han evolucionado, también ha crecido la documentación. La documentación total es especialmente difícil de comprender para todos los chips ARM, ya que consta de documentos del fabricante de circuitos integrados ( Cypress Semiconductor ) y documentos del proveedor del núcleo de la CPU ( ARM Holdings ).
Un árbol de documentación de arriba hacia abajo típico es: sitio web del fabricante, diapositivas de marketing del fabricante, hoja de datos del fabricante para el chip físico exacto, manual de referencia detallado del fabricante que describe los periféricos comunes y los aspectos de una familia de chips físicos, guía de usuario genérica del núcleo ARM, referencia técnica del núcleo ARM manual, manual de referencia de arquitectura ARM que describe el (los) conjunto (s) de instrucciones.
- Árbol de documentación de PSoC 4/5 (de arriba a abajo)
- Sitio web de PSoC.
- Diapositivas de marketing de PSoC.
- Hoja de datos de PSoC.
- Manuales de referencia de PSoC.
- Sitio web principal de ARM.
- Guía de usuario genérica de ARM core.
- Manual de referencia técnica básica de ARM.
- Manual de referencia de arquitectura ARM.
Cypress Semiconductor tiene documentos adicionales, como: manuales de usuario de la placa de evaluación, notas de aplicación, guías de introducción, documentos de la biblioteca de software, erratas y más. Consulte la sección Enlaces externos para obtener enlaces a documentos oficiales de PSoC y ARM.
Ver también
- Arquitectura ARM , Lista de núcleos de microprocesador ARM , ARM Cortex-M
- Microcontrolador , ( Lista de microcontroladores comunes )
- Sistemas embebidos
- Microcontrolador de placa única
- Interrupción , controlador de interrupciones , comparación de sistemas operativos en tiempo real
- Grupo de Acción de Prueba Conjunta
- Depuración de cables en serie
- Matriz analógica programable en campo
- Computación reconfigurable
Referencias
- ^ Reuters: "Cypress alcanza la marca de medio billón en envíos de sistema programable PSoC en dispositivos con chip" 2009
- ^ Circuit Cellar: "PSoC Design Challenge 2002" [ enlace muerto ]
- ^ "Ya está disponible el silicio de producción totalmente calificado para las dos primeras familias de productos PSoC® 4 de Cypress" . yahoo.com . Consultado el 12 de abril de 2018 .
- ^ Corp., Cypress Semiconductor. "Cypress ofrece una cartera completa de soluciones flexibles PSoC ARM Cortex-M0 y Cortex-M0 + para reemplazar las plataformas heredadas de 8 y 16 bits" . www.prnewswire.com . Consultado el 4 de marzo de 2016 .
- ^ "Periféricos personalizados Surround Cortex-M0 Platform" .
- ^ "PSoC 6 CY8CKIT-062 Pioneer Kit - Cypress - DigiKey" . www.digikey.com . Consultado el 12 de abril de 2018 .
- ^ "PSoC® 4 BLE (Bluetooth Smart)" . Consultado el 12 de febrero de 2015 .
- ^ "Cypress ofrece chipset BLE, esto es lo que necesita saber" . Consultado el 12 de febrero de 2015 .
Otras lecturas
enlaces externos
- Documentos oficiales del PSoC
- Sitio web oficial de PSoC
- Software PSoC Designer para la familia PSoC 1
- Software PSoC Creator para familias PSoC 3/4 / 5LP
- Software PSoC Programmer para familias PSoC 1/3/4 / 5LP
- Documentos oficiales ARM para PSoC 4/5
- Otro
- Desarrollador PSoC
- Tutoriales de IoT Expert PSoC
- Psoc-chile El primer sitio web en Español sobre Microcontroladore Psoc