pub:psoc_pl

Lógica programable en el PSOC

La lógica programable es una tecnología utilizada para la obtención de circuitos digitales reconfigurables. De este modo, es posible obtener circuitos cuya operación no está definida en el instante de fabricación o diseño, facilitando el test de circuitos electrónicos o la producción de tiradas cortas de circuitos digitales (cuya fabricación en forma de ASIC sería inviable por el coste de producción de las máscaras utilizadas en el proceso de litografía).

El PSOC integra la lógica programable en forma de bloques UDB (Universal Digital Blocks), dotados con la siguiente estructura.

Cada bloque UDB se compone de dos dispositivos lógicos programables (PLD) con las siguientes características:

  • 12 entradas.
  • 4 salidas.
  • Las salidas pueden ser directas o registradas.

Un ejemplo de implementación de una función lógica utilizando uno de los PLD's puede ser el que se muestra en la siguiente imagen.

El PLD tiene una matriz de conexiones a 8 puertas AND de 12 posibles entradas. Las salidas de estas puertas AND forman las entradas de la siguiente matriz de interconexión de 4 puertas OR de 8 posibles entradas cada una.

Cada matriz dispone de inversores para cada una de las posibles entradas, de forma que es posible negar la entrada deseada, tal y como se muestra en la figura en el caso de la entrada C para la función lógica X.

Reprogramando ambas matrices de interconexión es posible sintetizar las funciones lógicas deseadas. Vemos que se dispone de 4 Macroceldas (MC0 a MC3) por bloque PLD. Estas se encargan de registrar las señales de salida (si se configuran para ello) y proporcionar circuitos adicionales para la síntesis de circuitos comunes (como sumadores) reduciendo el uso de la lógica programable. A continuación se muestra la arquitectura de una macrocelda:

  • pub/psoc_pl.txt
  • Última modificación: 2020/09/28 11:44
  • (editor externo)