Você está na página 1de 34

Electrnica Digital II

Descripcin y Simulacin de Circuitos

Digitales Utilizando VHDL

Temario
Captulo 1 Estado actual de la lgica programable
1.1
1.2
1.3
1.4

Conceptos fundamentales
Dispositivos lgicos programables simples (SPLDs)
Dispositivos lgicos programables complejos (CPLDs)
Arreglo de compuertas programables en campo (FPGAs)

Captulo 2 Sintaxis del lenguaje


2.1
2.2
2.3
2.4
2.5
2.6

Introduccin a la descripcin en VHDL de circuitos digitales


Estilos de programacin en VHDL
Operadores y expresiones
Objetos de datos
Tipos de datos
Declaracin de entidad y arquitectura

Captulo 3 Circuitos Lgicos combinatorios


3.1 Declaraciones concurrentes
3.1.1 La construccin when-else y with-select-when
3.2 Declaraciones secuenciales
3.2.1 La construccin if-then-else y case

Temari
o

Captulo 4 Circuitos Lgicos secuenciales


4.1
4.2
4.3
4.4
4.5

Diseo lgico secuencial


Elementos de memoria
Registros
Contadores
Mquinas de estado

Captulo 5 Diseo jerrquico en VHDL


5.1
5.2
5.3
5.4
5.5
5.6

Metodologa para el diseo jerrquico


Particin de la estructura global
Creacin de un paquete de componentes
Diseo del programa de alto
Subprogramas
Llamadas a subprogramas

Captulo 6 VHDL para simulacin


6.1
6.2
6.3

Asignacin de retardos
Notificacin de sucesos
Descripcin de un banco de pruebas
6.3.1 Mtodo tabular
6.3.2 Utilizacin de archivos
6.3.3 Metodologa algortmica

Captulo 1

Estado actual de la lgica


programable
Indice

PLDs
DISPOSITIVOS LOGICOS
PROGRAMABLES
Una alternativa en el Diseo de
Sistemas Digitales

Introduccin
La realidad del diseo lgico
actual

Complejidad creciente
Tiempos menores de introduccin al
mercado
Disminucin costos

Las exigencias que plantea son


Confiabilidad
Accesibilidad para pruebas

La meta principal es
Contar con una solucin de uso
universal

Beneficios de una solucin


universal
Fcil adaptabilidad a cambios de
diseo

Aumento de la vida comercial til del


producto

Mayor desempeo
Rpido, pequeo, confiable y fcil de
armar

Mejora en cuanto al aprovechamiento


de los recursos de ingeniera
Menor costo de desarrollo

Qu es un
PLD ?

Es un circuito
integrado que
contiene una gran
cantidad de
elementos lgicos
y a travs de la
programacin se
interconectan
para que realicen
una funcin
especfica.

Notacin convencional y notacin


PLD

Configuraciones bsicas
PLE
Entradas

Arreglo
AND
Fijo

Arreglo
OR
Programa
ble

Arreglo
AND
Programa
ble

Arreglo
OR
Fijo

Arreglo
AND
Programa
ble

Arreglo
OR
Programa
ble

PAL
Entradas

Salidas

Salidas

PLA
Entradas

Salidas

Configuracin PLE/PROM

Configuracin PAL

Configuracin PLA

Clasificacin de los
PLDs
Productos comerciales
SPLDs

PLDs

CPLDs

FPGAs

Fabricante
Actel
Altera
Atmel
Lucent
QuickLogic
Vantis
Xilinx

FPGA
ACT 1 a 3 , MX, SX
Flex, Cyclone, Stratix
AT6000, AT40K
ORCA 1 a 3
pASIC1 a 3
VF1
XC4000, Spartan, Virtex

PALs GALs

Integracin en un
SPLD

Sustituye
aproximadamen
te
a 100 C.I. SSI

C.I. Series 74xx y 40xx

Arquitectura PAL
Matriz de fusibles de interconexin

Un trmino producto
para control de tercer estado
Suma de 7
trminos producto

Lneas especficas de entrada

Retroalimentacin desde una E/S

Esquema circuital de un PAL

Se cuenta a lo largo de TODO EL CHIP con los literales de todas las


variables de entrada (la variable y la variable negada)
Mediante lgica cableada es posible generar trminos producto (AND) de la
cantidad de literales que se desee
Para generar la funcin slo es posible sumar ( OR) hasta 7 u 8 trminos
producto

PALI6L8
64 AND de 32 entradas
8 OR de 7 entradas
8 Inversores de tercer estado
16 Buffers doble salida

Aproximadamente :
200 C.I. SSI (TTL o CMOS)
serie 74xx o 40xx

PALI6R8
Un nico reloj global
Matriz de interconexin global

Entradas dedicadas
Salidas de
los registros
Tri-State

Feedback desde
los registros

Una seal global de


control de TriState

Incorporacin de elementos de
memoria

Ideal para la sntesis de mquinas secuenciales

Arquitectura
GAL
Macroceldas lgicas de salida

Suma de 8 a 16 trminos producto


La macrocelda consta de:

Un Flip-Flop

Dos multiplexores

Limitaciones de los
SPLD

Reducida cantidad de macroceldas.

Cuando se utiliza el flip-flop de la macrocelda para

realizar lgica enterrada se desperdicia una terminal de


entrada/salida.

La distribucin de todas la seales por todo el chip


consume mucha superficie del silicio y genera retardos
capacitivos de importancia.

En los primeros PAL, el uso de fusibles afectaba


seriamente la confiabilidad del dispositivo.

Integracin en un
CPLD
Sustituye
aproximadamen
te
a 50 SPLDs

PALs y GALs

Familia
MAX5000

CPLDs

Matriz de
macroceldas

Matriz de
expansores

Bloque de control de E/S

De lneas de entrada
dedicadas (8 a 20)

Interconexin del LAB

Agrupamiento de las
macroceldas (LABs)
Generacin de reas de
conexionado global (PIA)
Generacin de reas de
conexin dentro del LAB
Expansores para generar
trminos producto auxiliares
Con un trmino producto
p/control de inversin lgica
Con un bloque de E/S por
cada macrocelda con dual
feedback
De 32 a 192 macroceldas en
chips de 28 a 100 terminales

Interconexin global (PIA)

4..16 pines
de I/O por
cada LAB

Macrocelda y
Expansores

LAB Arreglo
local

Clear
Global
Expansores
paralelos

Clock
Global

Desde terminal
E/S

PRN
D Q

Matriz
de
seleccin

Clock

Expansores
Desde PIA

lgicos

ENA
CLRN

hacia PIA y
Bloque de
control E/S

FPGAs
Field Programmable Gate Array
(Arreglo de compuertas programables
en campo).

Es un circuito integrado que contiene


celdas lgicas programables (64 a
104,882)

Las celdas lgicas se interconectan


por medio de una matriz de
interconexiones
Programables

Cuenta en su periferia con Bloques de


Entrada/Salida.

Arquitectura del FPGA


Bloques de E/S

Celdas Lgicas

Interconexin Programable

Celda Lgica del FPGA

Densidades de FPGAs
Spartan II XC2S15
Spartan IIE XC2S150E
Virtex E XCV50E
Virtex E XCV3200E
Virtex II XC2V40
Virtex II XC2V8000
* Compuertas de sistema

15,000*
150,000*
72,000*
4,047,000*
40,000*
8,000,000*

Densidades de IP Cores
Encriptador AES
Microcontrolador 80530
Microcontrolador 8051
Decodificador Viterbi
Controlador de Ethernet
Decodificador JPEG color
* Compuertas de sistema

40,000*
130,000*
150,000*
190,000*
195,000*
780,000*

Costos de FPGAs
Varan dependiendo del encapsulado y velocidad
Spartan 20,000 compuertas

~ 1 DL

Spartan 100,000 compuertas

~ 20 DLS

Virtex 300,000 compuertas ~ 150 DLS


Virtex II 8,000,000 compuertas

~ 8,000 DLS

Xilinx vs. Altera


CPLDs

FPGAs

Software

Diseo usando lgica


programable
Conclusiones :

El uso de lgica programable no descarta el uso de lgica


discreta, sino que la restringe a casos muy simples.
Es una herramienta rpida, de alta confiabilidad, y de bajsimo
costo por compuerta.
La fcil modificacin de un diseo permite asegurar el
mantenimiento y actualizacin de un producto.
Conocer profundamente las tcnicas de diseo lgico es la
mejor manera de aprovechar la lgica programable.
Se pasa del diseo por compuertas al diseo por sistemas.

Sistema bsico y Flujo de Diseo para Lgica


Programable
Introduccin/Descripcin
del Diseo
Captura Esquemtica
Descripcin basada en
Lenguaje
Realizacin/Implementacin
del Diseo
Translacin/Sntesis del
Diseo
Verificacin de Reglas de
Diseo
Particin y Mapeo de Lgica
Asignacin o Colocacin
(Place) de la Lgica en los
Bloques configurables
Enrutamiento (Route)
Creacin de Archivo de
Programacin
Programacin-Dispositivo

Simulacin Funcional
Verificacin de la funcionalidad de
la Lgica
Temporizacin estimada (opcional)
Simulacin Temporizada
Se requiere de informacin de
temporizacin posterior a los
procesos de Colocacin (Place) y
Enrutamiento (Route)
Anlisis de Temporizacin Esttico
Se requiere de informacin de
temporizacin posterior a los
procesos de Colocacin (Place) y
Enrutamiento (Route)
Determina retardos de trayectorias
de manera rpida y reporta violacin
de restricciones.
Depuracin del diseo integrado al
Sistema (In-System) siendo
desarrollado
Para dispositivos reprogramables
Uso de otros Sistemas de Software &
Hardware

Verificacin del Diseo

Sistema Bsico de
Desarrollo
Computadora
Personal / Estacin de
Trabajo
Software CAE/CAD
p.ej. WebPack
(Gratuito) de Xilinx

Programador
Opcional

Descripcin del Diseo

Mtodos
Captura Esquemtica (p.ej.
OrCAD)
Descripcin por Lenguaje

De Bajo
Nivel:

PALASM
OPAL
PLPL

De Alto
Nivel:

ABEL
CUPL
Verilog
VHDL

Cul es la primera fase del


diseo de un sistema digital
utilizando SPLDs, CPLDs y
FPGAs ?

Limitacin: Difcil o imposible


la manipulacin de diseos
complejos

Você também pode gostar