38
1 Introducción Introducción El incremento de uso de los Dispositivos El incremento de uso de los Dispositivos Lógicos Programables es parecido al de los Lógicos Programables es parecido al de los Microprocesadores hace unos años. Microprocesadores hace unos años. La realidad de diseño lógico actual es: La realidad de diseño lógico actual es: Tiempo de desarrollo cortos Tiempo de desarrollo cortos Complejidad creciente Complejidad creciente Búsquedas de costos cada vez menores Búsquedas de costos cada vez menores Las exigencias que se plantean: Las exigencias que se plantean: Confiabilidad Confiabilidad Testeabilidad Testeabilidad Ing. RAUL HINOJOSA SANCHEZ Sistemas Digitales Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Los PLDS

Embed Size (px)

Citation preview

Page 1: Los PLDS

11

IntroducciónIntroducción El incremento de uso de los Dispositivos Lógicos El incremento de uso de los Dispositivos Lógicos

Programables es parecido al de los Programables es parecido al de los Microprocesadores hace unos años.Microprocesadores hace unos años.

La realidad de diseño lógico actual es:La realidad de diseño lógico actual es: Tiempo de desarrollo cortosTiempo de desarrollo cortos Complejidad crecienteComplejidad creciente Búsquedas de costos cada vez menoresBúsquedas de costos cada vez menores

Las exigencias que se plantean:Las exigencias que se plantean: ConfiabilidadConfiabilidad TesteabilidadTesteabilidad

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 2: Los PLDS

22

Las exigencias del DiseñoLas exigencias del Diseño Tiempos de desarrollo cada vez más cortos.Tiempos de desarrollo cada vez más cortos.

Especificaciones variables o aun indefinidas en el Especificaciones variables o aun indefinidas en el momento de desarrollo.momento de desarrollo.

Necesidad de adaptabilidad a nuevas exigencias Necesidad de adaptabilidad a nuevas exigencias o especificaciones.o especificaciones.

Circuitos cada vez mas baratos y más complejos.Circuitos cada vez mas baratos y más complejos.

““““““

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 3: Los PLDS

33

Beneficios del uso de los PLDsBeneficios del uso de los PLDs

Fácil adaptabilidad a cambios de diseño.Fácil adaptabilidad a cambios de diseño.• Aumento de la vida comercial útil del productoAumento de la vida comercial útil del producto

Mayor performance.Mayor performance.• Más rápido, más pequeño, más confiable, más Más rápido, más pequeño, más confiable, más

fácil de armar.fácil de armar.

Mejora en cuanto al aprovechamiento de los Mejora en cuanto al aprovechamiento de los recursos de ingenieríarecursos de ingeniería• Menor costo de desarrolloMenor costo de desarrollo

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 4: Los PLDS

44

Beneficios del uso de los PLDsBeneficios del uso de los PLDs

Los PLDs al tener fusibles de seguridad impiden la Los PLDs al tener fusibles de seguridad impiden la lectura de los programas, protegiendo los diseños lectura de los programas, protegiendo los diseños frente a las copias de los piratas tecnológicos.frente a las copias de los piratas tecnológicos.

La lógica programable se acomoda especialmente La lógica programable se acomoda especialmente a los países en desarrollo como el nuestro, pora los países en desarrollo como el nuestro, por• La baja inversión inicial del prototipoLa baja inversión inicial del prototipo• La posibilidad de fabricar series reducidasLa posibilidad de fabricar series reducidas• La reducción de la diversidad de componentes La reducción de la diversidad de componentes

en Stock.en Stock.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 5: Los PLDS

55

DISPOITIVOS LOGICOS DISPOITIVOS LOGICOS PROGRAMABLESPROGRAMABLES

Definición: Definición:

Los PLDs, son pequeños ASICSLos PLDs, son pequeños ASICS

(Circuitos integrados de Aplicación Especifica), (Circuitos integrados de Aplicación Especifica), configurables por el usuario.configurables por el usuario.

Son capaces de realizar una determinada función Son capaces de realizar una determinada función de tipo combinacional o secuencial.de tipo combinacional o secuencial.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 6: Los PLDS

66

Clasificación de los PLDsClasificación de los PLDs

DISPOSITIVOS LOGICOS PROGRAMABLES

PLDs

PLA(Fusibles)

PAL(Fusibles)

FPGASCPLDs

GAL, CMOS, PAL(Borrable eléctricamente)

EPLDs(Borrable eléctricamente)

LCA(FPGA-Tablas)

FPGA(de antifusibles)

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 7: Los PLDS

77

Esquema Esquema simplificado simplificado de un PLDde un PLD

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 8: Los PLDS

88

CARACTERISTICAS GENERALES DE LOS CARACTERISTICAS GENERALES DE LOS PLDsPLDs

En la fabricación de PLDs se utiliza tecnología bipolar En la fabricación de PLDs se utiliza tecnología bipolar TTL o ECL y tecnología CMOS.TTL o ECL y tecnología CMOS.

Los dispositivos bipolares son más rápidos y Los dispositivos bipolares son más rápidos y consumen más que los dispositivos CMOS. consumen más que los dispositivos CMOS.

Actualmente los PLDs bipolares presentan retardos de Actualmente los PLDs bipolares presentan retardos de propagación inferiores a 7 nsg y los consumos típicos propagación inferiores a 7 nsg y los consumos típicos rondan los 100-200 mA para un chip con 20-24 rondan los 100-200 mA para un chip con 20-24 patillas. patillas.

Mientras los PLDs bipolares sólo pueden programarse Mientras los PLDs bipolares sólo pueden programarse una vez, la mayoría de los PLDs CMOS son una vez, la mayoría de los PLDs CMOS son reprogramables y permiten una fácil verificación por reprogramables y permiten una fácil verificación por parte del usuario.parte del usuario.

A los PLDs CMOS borrables por radiación ultravioleta A los PLDs CMOS borrables por radiación ultravioleta se les denomina EPLD y a los borrables eléctricamente se les denomina EPLD y a los borrables eléctricamente se los conoce por EEPLD. se los conoce por EEPLD.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 9: Los PLDS

99

CARACTERISTICAS GENERALES DE LOS CARACTERISTICAS GENERALES DE LOS PLDsPLDs

Si consultamos las hojas de datos de una PALCE16V8H-20, Si consultamos las hojas de datos de una PALCE16V8H-20, encontramos claves que permiten extraer valiosa encontramos claves que permiten extraer valiosa información del nombre del dispositivo. información del nombre del dispositivo.

PALPAL Programamble Array LogicProgramamble Array LogicCECE C-MOS Electrically ErasableC-MOS Electrically Erasable16V816V8 16 entradas a la matriz de puertas AND y 8 16 entradas a la matriz de puertas AND y 8

salidassalidasHH Half Power ( ICC = 90 mA)Half Power ( ICC = 90 mA)2020 Tiempo de propagación (20 mSeg)Tiempo de propagación (20 mSeg)

También existen:También existen:PALCE16V8Q PALCE16V8Q (Quarter Power Icc (Quarter Power Icc = 55 mA) = 55 mA) PALCE16V8Z PALCE16V8Z (Zero Power) (Zero Power) con un bajísimo consumo con un bajísimo consumo estático de potencia. ( < 10mA)estático de potencia. ( < 10mA)

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 10: Los PLDS

1010

Clases de PLDsClases de PLDs

1. PLA (Programable Logic Array)1. PLA (Programable Logic Array)

Es un PLD formado por una matriz AND y OR Es un PLD formado por una matriz AND y OR

programablesprogramables..

Matriz AND

Programable

Matriz OR

Programable

Entradas Salidas

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 11: Los PLDS

1111

Clases de PLDsClases de PLDs

Variables de Entradas

Salidas Programadas

Estructura Interna del PLA

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 12: Los PLDS

1212

Clases de PLDsClases de PLDs

Ejemplo 1Ejemplo 1• Implementar con un PLA las siguientes Implementar con un PLA las siguientes

funciones lógicas:funciones lógicas: F1 (A,B,C,D,E) = A´B´D´+ B´C D´ + A´B C D E´F1 (A,B,C,D,E) = A´B´D´+ B´C D´ + A´B C D E´ F2 (A,B,C,D,E) = A´B E + B´C D E F2 (A,B,C,D,E) = A´B E + B´C D E F3 (A,B,C,D,E) = A´B´D´+ B´C´D´E + A´B C DF3 (A,B,C,D,E) = A´B´D´+ B´C´D´E + A´B C D

Solución:Solución:Se tiene 5 variables, entonces el PLA debe tener 5 Se tiene 5 variables, entonces el PLA debe tener 5

entradas.entradas.Se van a generar 7 términos productos únicos.Se van a generar 7 términos productos únicos.Como hay 3 funciones se debe tener 3 términos OR.Como hay 3 funciones se debe tener 3 términos OR.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 13: Los PLDS

1313

Clases de PLDs - PLAClases de PLDs - PLA

Entradas

Salidas

Representación

de un PLA del

Ejemplo 1

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 14: Los PLDS

1414

Clases de PLDs - PALClases de PLDs - PAL

2. PAL (Programable Array Logic)2. PAL (Programable Array Logic)Es un PLD formado por una matriz AND Es un PLD formado por una matriz AND programable y una OR fija con una lógica de programable y una OR fija con una lógica de salida.salida.

Matriz AND

Programable

Matriz OR

FIJA

Entradas

Salidas

Lógica de Salida

Lógica de Salida

Lógica de Salida

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 15: Los PLDS

1515

Clases de PLDs - PALClases de PLDs - PALEstructura Interna del PAL

Salidas

Entradas

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 16: Los PLDS

1616

Clases de PLDs - PALClases de PLDs - PAL

Ejemplo 2:Ejemplo 2: Diseñar un PAL que realice las siguientes dos Diseñar un PAL que realice las siguientes dos

funciones lógicas y muestre las conexiones funciones lógicas y muestre las conexiones internas.internas.F1 (A,B,C,D) = F1 (A,B,C,D) = ΣΣ (0,1,3,7,13,15) (0,1,3,7,13,15)F2 (A,B,C,D) = F2 (A,B,C,D) = ΣΣ (0,2,4,5,8,10) (0,2,4,5,8,10)

SoluciónSolución::Simplificando las funciones lógicas tenemos:Simplificando las funciones lógicas tenemos:F1 = A´B´C´+ A´C D + A B DF1 = A´B´C´+ A´C D + A B DF2 = B´D´+ A´B C´ F2 = B´D´+ A´B C´

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 17: Los PLDS

1717

Clases de PLDs - PALClases de PLDs - PALRepresentación de un PAL del Ejemplo 2

Salidas

Entradas

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 18: Los PLDS

1818

Estructura de un PAL16L8Estructura de un PAL16L8

Fusibles de Programación

Líneas d

e e

ntra

da

Realimentación

Suma de hasta 7 términos productos

1er fusibleTermino producto para control

de salida

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 19: Los PLDS

1919

Estructura de un PAL16R8Estructura de un PAL16R8

Fusibles de Programación

Líneas d

e e

ntra

da

1er fusible

Realimentación desde los registros

Salidas de los registros a

travez de un tri-state

Un único clock general

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 20: Los PLDS

2020

Clases de PLDs -GALClases de PLDs -GAL 3. GAL( Generic Logic Array)3. GAL( Generic Logic Array)

Al igual que la Pal, tiene una matriz AND Al igual que la Pal, tiene una matriz AND programable y una matriz OR fija, con una salida programable y una matriz OR fija, con una salida lógica programable.lógica programable.Las principales diferencias entre los GALs y los Las principales diferencias entre los GALs y los PALs son:PALs son:

• Es repogramable porque usa tecnología EEs repogramable porque usa tecnología E22CMOS CMOS (Electrically Erasable CMOS) en lugar de tecnología (Electrically Erasable CMOS) en lugar de tecnología bipolar y fusibles.bipolar y fusibles.

• Las salidas tienen unas macroceladas lógicas Las salidas tienen unas macroceladas lógicas (OLMC) que están formadas por unos circuitos lógicos (OLMC) que están formadas por unos circuitos lógicos que pueden programarse como lógica combinacional o que pueden programarse como lógica combinacional o lógica secuencial.lógica secuencial.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 21: Los PLDS

2121

Clases de PLDs -GALClases de PLDs -GAL

Ejemplo 3:Ejemplo 3:

Diseñar un GAL que realice las siguientes tres funciones Diseñar un GAL que realice las siguientes tres funciones lógicas y muestre las conexiones internas.lógicas y muestre las conexiones internas.F1 (A,B,C,D) = F1 (A,B,C,D) = ΣΣ (0,2,7,10) + d(12,15) (0,2,7,10) + d(12,15)F2 (A,B,C,D) = F2 (A,B,C,D) = ΣΣ (2,4,5)+ d(6,7,8,10) (2,4,5)+ d(6,7,8,10)F3 (A,B,C,D) = F3 (A,B,C,D) = ΣΣ (2,7,8) + d(0,5,13)(2,7,8) + d(0,5,13)

SoluciónSolución::Simplificando las funciones lógicas tenemos:Simplificando las funciones lógicas tenemos:F1 = A´B´D´+ B´C D´+ A´B C DF1 = A´B´D´+ B´C D´+ A´B C DF2 = A´B + B´C D´F2 = A´B + B´C D´F3 = A´B´D´+ B´C´D´+ A´B C DF3 = A´B´D´+ B´C´D´+ A´B C D

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 22: Los PLDS

2222

Implementación del ejemplo 3Implementación del ejemplo 3

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 23: Los PLDS

2323

Características de la GAL 22V10Características de la GAL 22V10

Diagrama en bloques con los pines de entrada/salida de la GAL 22V10

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 24: Los PLDS

2424

Características de la GAL 22V10Características de la GAL 22V10

Representación de una OLMC ( OUTPUT LOGIC MACRO CELL)

MUX de Salida

MUX de Realimentación Fusibles

Activación de Salida

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 25: Los PLDS

2525

Características de la GAL 22V10Características de la GAL 22V10

Matriz Programable de 132*44 terminos producto

17 entradas dedicadas

Puede ser usada como entrada de clock o de datos 10 Macroceldas

10 entradas/salidas

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 26: Los PLDS

2626

Clases de PLDs -GALClases de PLDs -GAL

Matriz Programable ALTERA EPLD

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 27: Los PLDS

2727

Características de la GAL 22V10Características de la GAL 22V10

Tiene 12 entradas dedicadas y 10 E/STiene 12 entradas dedicadas y 10 E/S

Dispone de 10 macroceldas, de las cuales:Dispone de 10 macroceldas, de las cuales:• Dos tienen 8 operaciones producto (número de líneas de Dos tienen 8 operaciones producto (número de líneas de

la matriz AND a la puerta OR)la matriz AND a la puerta OR)• Dos tienen 10 operaciones producto. Otras dos doce, Dos tienen 10 operaciones producto. Otras dos doce,

otras dos catorce, y otras dos dieciséis.otras dos catorce, y otras dos dieciséis.• Cada OLMC puede programarse para que el nivel activo Cada OLMC puede programarse para que el nivel activo

de salida sea de salida sea alto o bajoalto o bajo y también, pueden programarse y también, pueden programarse como entradas.como entradas.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 28: Los PLDS

2828

Características de la GAL 22V10Características de la GAL 22V10

Cada OLMC puede configurarse como entrada o Cada OLMC puede configurarse como entrada o salida combinacional, o como salida secuencial. salida combinacional, o como salida secuencial. La configuración se establece automáticamente La configuración se establece automáticamente mediante programación.mediante programación.

Las cuatro configuraciones de las macroceldas Las cuatro configuraciones de las macroceldas lógicas programables son:lógicas programables son:• Modo Combinacional con salida activa a nivel bajoModo Combinacional con salida activa a nivel bajo• Modo Combinacional con salida activa a nivel altoModo Combinacional con salida activa a nivel alto• Modo Secuencial con salida activa a nivel bajoModo Secuencial con salida activa a nivel bajo• Modo secuencial con salida activa a nivel altoModo secuencial con salida activa a nivel alto

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 29: Los PLDS

2929

SOFTWARE PARA DISEÑO DE PLDsSOFTWARE PARA DISEÑO DE PLDs Para programar PLDs hay herramientas Para programar PLDs hay herramientas

específicas y herramientas universales. Las específicas y herramientas universales. Las herramientas específicas las suministran los herramientas específicas las suministran los propios fabricantes de PLDs, que se preocupan de propios fabricantes de PLDs, que se preocupan de actualizadas rápidamente para soportar a los actualizadas rápidamente para soportar a los nuevos dispositivos fabricados.nuevos dispositivos fabricados.

Algunas de las compañías más conocidas que Algunas de las compañías más conocidas que

ofrecen software de programación de PLDs son:ofrecen software de programación de PLDs son:

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 30: Los PLDS

3030

SOFTWARE PARA DISEÑO DE PLDsSOFTWARE PARA DISEÑO DE PLDs Altera CorporationAltera Corporation Suministra los paquetes de Suministra los paquetes de

software A + PLUS para trabajar con las familias de software A + PLUS para trabajar con las familias de dispositivos EP300..EP1800, MAX + PLUS para la dispositivos EP300..EP1800, MAX + PLUS para la familia MAX de arquitectura modular y SAM + PLUS familia MAX de arquitectura modular y SAM + PLUS para los usuarios del secuenciador SAM de Altera.para los usuarios del secuenciador SAM de Altera.

AMD AMD (Advanced Micro Devices)(Advanced Micro Devices) Se trata de un Se trata de un fabricante de microprocesadores que ofrece una fabricante de microprocesadores que ofrece una herramienta llamada PALASM para programar sus herramienta llamada PALASM para programar sus PALs. El ensamblador PALASM, junto con la abundante PALs. El ensamblador PALASM, junto con la abundante documentación de diseño ofrecida por MMI, fueron en documentación de diseño ofrecida por MMI, fueron en gran parte responsables de la rápida aceptación (que gran parte responsables de la rápida aceptación (que todavía perdura) de las PALs de MMI todavía perdura) de las PALs de MMI

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 31: Los PLDS

3131

SOFTWARE PARA DISEÑO DE PLDsSOFTWARE PARA DISEÑO DE PLDs National SemiconductorNational Semiconductor“ Distribuye el software “ Distribuye el software

PLAN PLAN (Programmable Logic Analysis) (Programmable Logic Analysis) para soportar a para soportar a sus PLDs. Admite más formas de entrada que sus PLDs. Admite más formas de entrada que PALASM y no necesita que se especifique el PALASM y no necesita que se especifique el dispositivo. De hecho, un programa de PLAN es capaz dispositivo. De hecho, un programa de PLAN es capaz de seleccionar el dispositivo adecuado y realizar la de seleccionar el dispositivo adecuado y realizar la asignación de patillas.asignación de patillas.

OrCAD SystemsOrCAD Systems Corporation. Corporation. Dispone de un Dispone de un compilador universal de lógica programable compilador universal de lógica programable OrCAD/PLD que acepta ecuaciones, ecuaciones OrCAD/PLD que acepta ecuaciones, ecuaciones indexadas, mapas numéricos, esquemas, máquinas de indexadas, mapas numéricos, esquemas, máquinas de estados, tablas de verdad y estados, tablas de verdad y streams. streams. Le acompaña un Le acompaña un simulador funcional que genera automáticamente los simulador funcional que genera automáticamente los vectores de testvectores de test. .. .

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 32: Los PLDS

3232

SOFTWARE PARA DISEÑO DE PLDsSOFTWARE PARA DISEÑO DE PLDs Philips-Signetics. Philips-Signetics. Es un fabricante de circuitos Es un fabricante de circuitos

integrados con una gran oferta en dispositivos FPLA. integrados con una gran oferta en dispositivos FPLA.

Posee un software específico para sus PLDs llamado Posee un software específico para sus PLDs llamado AMAZE AMAZE (Automated Map And Zap Equations) (Automated Map And Zap Equations) que que acepta ecuaciones, tablas de estados y esquemas acepta ecuaciones, tablas de estados y esquemas capturados con OrCAD/SDT o con FutureNet. capturados con OrCAD/SDT o con FutureNet.

AMAZE está formado por cinco módulos, entre los que AMAZE está formado por cinco módulos, entre los que se encuentra un simulador funcional y temporal que se encuentra un simulador funcional y temporal que genera automáticamente los vectores de test. genera automáticamente los vectores de test. También También dispone de un software destinado a sus dispone de un software destinado a sus dispositivos dispositivos más avanzados, los más avanzados, los Programmable Macro Programmable Macro Logic Logic o PML o PML llamado SNAP llamado SNAP (Syntesis, Netlist, Analysis (Syntesis, Netlist, Analysis And And Programming).Programming).

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 33: Los PLDS

3333

PROCESO DE DESARROLLO DE PLDsPROCESO DE DESARROLLO DE PLDs

DiseñoDiseño Es la etapa en la que se concibe y describe la Es la etapa en la que se concibe y describe la

función lógica o los datos que se almacenarán en función lógica o los datos que se almacenarán en el PLD. el PLD.

El diseño se realiza utilizando un editor de textos El diseño se realiza utilizando un editor de textos o uno un software de captura de esquemas. Mediante software de captura de esquemas. Mediante el editor de textos, la lógica puede expresarse en el editor de textos, la lógica puede expresarse en forma de tablas de verdad, ecuaciones de alto forma de tablas de verdad, ecuaciones de alto nivel, máquinas de estados, etc.nivel, máquinas de estados, etc.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 34: Los PLDS

3434

PROCESO DE DESARROLLO DE PLDsPROCESO DE DESARROLLO DE PLDs

Ciclo de compilación y verificación lógicaCiclo de compilación y verificación lógica..

En este ciclo tiene lugar la simplificación de las formas de En este ciclo tiene lugar la simplificación de las formas de entrada definidas en la etapa de diseño o se señalan los fallos entrada definidas en la etapa de diseño o se señalan los fallos de sintaxis detectados. de sintaxis detectados.

Si en la etapa de diseño se especifica un determinado PLD, se Si en la etapa de diseño se especifica un determinado PLD, se genera un fichero en formato JEDEC que contiene información genera un fichero en formato JEDEC que contiene información sobre el estado en que deben quedar los fusibles del PLD sobre el estado en que deben quedar los fusibles del PLD elegido. elegido.

El fichero en formato JEDEC servirá para la programación El fichero en formato JEDEC servirá para la programación posterior del chip en un equipo comercial. Si en la etapa de posterior del chip en un equipo comercial. Si en la etapa de diseño en lugar de una PAL o FPLA se especifica una PROM, la diseño en lugar de una PAL o FPLA se especifica una PROM, la mayoría de los compiladores de PLDs generan un fichero mayoría de los compiladores de PLDs generan un fichero ASCII con un formato diferente al JEDEC.ASCII con un formato diferente al JEDEC.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 35: Los PLDS

3535

PROCESO DE DESARROLLO DE PLDsPROCESO DE DESARROLLO DE PLDs

Programación Programación Para transportar la salida del compilador Para transportar la salida del compilador

contenida en el fichero JEDEC al chip, se utiliza un contenida en el fichero JEDEC al chip, se utiliza un programador de PLDs. programador de PLDs.

La mayoría de los equipos de programación La mayoría de los equipos de programación verifican el estado de los fusibles para asegurarse verifican el estado de los fusibles para asegurarse

de que la programación ha sido correcta.de que la programación ha sido correcta.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 36: Los PLDS

3636

PROCESO DE DESARROLLO DE PLDsPROCESO DE DESARROLLO DE PLDs

Verificación del dispositivoVerificación del dispositivo Consiste en aplicar físicamente los vectores de Consiste en aplicar físicamente los vectores de

test al dispositivo programado y comparar la test al dispositivo programado y comparar la salida real con la salida esperada. Este paso se salida real con la salida esperada. Este paso se realiza en el programador de PLDs, realiza en el programador de PLDs, inmediatamente después de la programación. inmediatamente después de la programación.

Es importante que los vectores de test hayan sido Es importante que los vectores de test hayan sido diseñados de forma que pongan a prueba la diseñados de forma que pongan a prueba la totalidad de los nodo s internos del PLD, de esta totalidad de los nodo s internos del PLD, de esta forma se evita que puedan utilizarse PLD forma se evita que puedan utilizarse PLD defectuosos que resultarían más difíciles de defectuosos que resultarían más difíciles de detectar una vez montados en placas de circuito detectar una vez montados en placas de circuito impreso.impreso.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 37: Los PLDS

3737

Programación de los PLDsProgramación de los PLDs

Para poder programar estos PLDs, son Para poder programar estos PLDs, son necesarios los siguientes componentes:necesarios los siguientes componentes:

• Computador que cumpla los requerimientos del Computador que cumpla los requerimientos del Compilador.Compilador.

• Editor de texto (Edit, Word Pad, etc)Editor de texto (Edit, Word Pad, etc)• Compilador de PLDs:Compilador de PLDs:

( Orcad-PLD, CUPL, Altera)( Orcad-PLD, CUPL, Altera)• Programador Universal de Circuitos Integrados.Programador Universal de Circuitos Integrados.

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica

Page 38: Los PLDS

3838

EJEMPLO CON EL COMPILADOR OrCAD/PLDEJEMPLO CON EL COMPILADOR OrCAD/PLD

EJEMPLO DE PUERTAS BASICASEJEMPLO DE PUERTAS BASICAS|PAL12H6|PAL12H6|in: (A, B, C, D, E, F, G), out:Y[1..6]|in: (A, B, C, D, E, F, G), out:Y[1..6]

|Y1 = A & B |Y1 = A & B |AND |AND|Y2 = C # D|Y2 = C # D |OR |OR|Y3 = B ## F |XOR|Y3 = B ## F |XOR|Y4 = G‘|Y4 = G‘ |NOT |NOT|Y5 = (B & C)|Y5 = (B & C)‘ |NAND‘ |NAND|Y6 = (E # F)|Y6 = (E # F)‘ |NOR‘ |NOR|Vectors:|Vectors:| {| {| | display A, B, C, “ A & B = “ Y1, “ (B & C)display A, B, C, “ A & B = “ Y1, “ (B & C)‘ = ‘ = “, Y5“, Y5|test A,B,C|test A,B,C|end|end|}|}

Ing. RAUL HINOJOSA SANCHEZ

Sistemas Digitales

Universidad Nacional San Luís Gonzaga de ICA Esc. de Ingeniería Electrónica