Professional Documents
Culture Documents
Discrete devices: relays, transistors (1940s-50s) Discrete logic gates (1950s-60s) Integrated circuits (1960s-70s)
e.g. TTL packages: Data Book for 100s of different parts Map your circuit to the Data Book parts Custom integrated circuit chips Design using a library (like TTL) Transistors are already on the chip Place and route software puts the chip together automatically + Large circuits on a chip + Automatic design tools (no tedious custom layout) - Only good if you want 1000s of parts
Use transistors to implement combinational and sequential logic Wires to connect inputs and outputs to logic blocks Special blocks at periphery for external connections Done when chip is fabed
Interconnect
I/O blocks
mask-programmable
Lgica Programable
Constrained to parts in the Data Book Parts are necessarily small and standard Need to stock many different parts Use a single chip (or a small number of chips) Program it for the circuit you want No reason for the circuit to be small
Programmable logic
Fuse makes or breaks link between two wires Typical connections are 50-300 ohm One-time programmable (testing before programming?) Very high density High power consumption Typical connections are 2K-4K ohm Fairly high density Memory bit controls a switch that connects/disconnects two wires Typical connections are .5K-1K ohm Can be programmed and re-programmed in the circuit Low density
RAM-based
Conexiones
Programmable Logic
Program a connection
Connect two wires Set a bit to 0 or 1 All rely on two-level logic minimization PROM connections - permanent EPROM connections - erase with UV light EEPROM connections - erase electrically PROMs
Program connections in the _____________ plane Program the connections in the ____________ plane Program the connections in the ____________ plane
PLAs
PALs
Surgimiento de VHDL
Necesidad de nuevos mtodos ya que los clsicos (esquemticos), llegan a ser ineficientes en diseos de altas escalas de integracin. El diseo con ecuaciones Booleanas requiere de la escritura de una ecuacin por cada flip-flop, es imprctico para circuitos con cientos de estos. Necesidad de compartir informacin entre integrantes y equipos de un proyecto. Necesidad de reutilizar mdulos que ya han sido desarrollados, depurados y probados. Necesidad de tener un lenguaje portable a diversos fabricantes. Tener un lenguaje estructurado para modelar, simular y sintetizar circuitos digitales.
Qu es VHDL?
VHDL es un lenguaje de descripcin de hardware estandarizado por la IEEE (1076-93). Es un acrnimo: V se toma por Very High Speed Integrated Circuit ( Circuito Integrado de muy alta velocidad ), y HDL significa Lenguaje para la Descripcin de Hardware. Trmino acuado por el DoD (Department of Defense) de USA, quienes fueron los primeros en usarlo para: Documentacin, modelado y simulacin de dispositivos electrnicos. Los simuladores de VHDL surgen en los 90s. VHDL no fue creado para sntesis, esta propiedad se le agreg al buscar formas que ayuden a automatizar los procesos de diseo.
VHDL. Verilog (Cadence). ABEL. CUPL. PALASM. AHDL (Altera Hardware Descripcion Lenguaje) Handel-C (Celoxica) System-C (Synopsys)
Historia de VHDL
Desarrollado en los 80s por el departamento de defensa de los EU. Adoptado como estndar por la IEEE en 1987. Revisado por la IEEE en 1993.
Similitudes
Diferencias
En VHDL la informacin temporal es explicita Los comandos no siempre son procesados secuencialmente VHDL no se compila en un ejecutable, sino que se sintetiza en un circuito digital.
Lenguaje estandarizado. Permite el diseo modular y jerrquico de sistemas electrnicos. VHDL permite el paralelismo. Permite incluir diferentes niveles de abstraccin al describir un diseo digital.
Metodologas de diseo
Ascendente
Se inicia con componentes simples que permiten formar componentes cada vez ms complejos hasta llegar al sistema final.
Descendente
Se especifica y prueba el sistema con herramientas de alto nivel de abstraccin y posteriormente se van definiendo e implementando los niveles inferiores hasta llegar a un nivel de componente.
Algoritmos, micro-operaciones Respuesta I/O Tablas de transicin de estados, Tablas de verdad Ecuaciones booleanas
Compuertas, Flip-Flops
Transistores, R, L, C
Ecuaciones diferenciales
Objetos Geomtricos
No existe
Dispositivos FPGA
Logic ASIC Aplicattion Specific ICs Standard Logic
Programmable Cell-Based Full Custom Logic Gate Arrays ICs ICs Devices (PLDs) SPLDs (PALs) 80s CPLDs 90 FPGAs 90 -
Un FPGA es un Arreglo de Compuertas Programable en Campo (Field Programmable Logic Device) Son dispositivos programables que estn construidos con base en una matriz de bloques lgicos configurables (CLB) En cada CLB es posible desarrollar una funcin lgica independiente Entre los diferentes CLBs existen lneas de interconexin de diferentes tamaos que tambin son configurables Alrededor de la matriz se encuentran bloques de entrada y salida (IOB) que tambin son configurables
Categorias de FPGAs
Basados en SRAM.
Xilinx Altera
Basados en antifusibles.
Interruptores
FPGA
Programmable Interconnect
CLB CLB
Slew Rate Control Passive Pull-Up, Pull-Down Vcc
Switch Matrix
D Q
Output Buffer
Pad
CLB
C1 C2 C3 C4 H1 DIN S/R EC
S/R Control
CLB
Q D Delay
Input Buffer
G4 G3 G2 G1
F4 F3 F2 F1
SD D Q
H'
EC RD
F'
Switch Matrix
IOB de un FPGA
Fabricantes de FPGAs
( http://www.xilinx.com )
( http://www.altera.com )
( http://www.latticesemi.com )
Virtex Series
Spartan Series
Spartan Family Spartan-3E Gates 1.6M I/Os 376 Block RAM 648Kb Embedded Multipliers 36 18x18 DCM 8 Voltage 3.3V - 1.2V
Spartan-3
5M
784
1872Kb
104 18x18
3.3V - 1.2V
Spartan-3L
4M
633
1728Kb
96 18x18
3.3V - 1.2V
Spartan-IIE
600K
514
288Kb
3.3V - 1.5V
Spartan-II Spartan-XL
200K 40K
284 224
56Kb 25Kb
Notes: 1. Logic Cell = 4-input Look-Up Table (LUT) de 4 entradas mas un flip-flop D. "Equivalent Logic Cells" es igual a "Total CLBs" x 8 Logic Cells. 2. Estos productos estn disponibles en versiones de alta temperatura.
IOBs Spartan-3
Los CLBs (Configurable Logic Blocks) constituyen los principales recursos lgicos para implementar circuitos combinacionales o secuenciales sncronos.
Interior de un slice
Dos generadores de funciones lgicas Dos elementos de almacenamiento Multiplexores Hardware para acarreo lgico Compuertas para operaciones aritmticas Funciones lgicas Funciones aritmticas Funciones ROM Almacenamiento de datos usando RAM distribuida Desplazamiento de datos con registros de 16-bits
Interior de un slice
1 CLB = 4 Slices
Bloque RAM
Bloque RAM
Multiplicadores empotrados
Lneas de interconexin
Lneas de interconexin