0% encontró este documento útil (0 votos)
62 vistas23 páginas

Introducción a FPGAs y Memorias RAM

El documento introduce los circuitos lógicos programables (FPGAs), incluyendo sus bloques lógicos configurables, matrices de interconexión y memoria RAM para almacenar la configuración. Explica el proceso de síntesis e implementación en una FPGA, que incluye la extracción de la lista de componentes, la ubicación y ruta de los elementos y la generación de la cadena de configuración.

Cargado por

wilson cortes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
62 vistas23 páginas

Introducción a FPGAs y Memorias RAM

El documento introduce los circuitos lógicos programables (FPGAs), incluyendo sus bloques lógicos configurables, matrices de interconexión y memoria RAM para almacenar la configuración. Explica el proceso de síntesis e implementación en una FPGA, que incluye la extracción de la lista de componentes, la ubicación y ruta de los elementos y la generación de la cadena de configuración.

Cargado por

wilson cortes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Introducción a los circuitos lógicos

programables

Miguel Melgarejo

Facultad de Ingeniería
Universidad Distrital Francisco José de Caldas
Agenda
•  Memorias RAM

•  Field Programmable Gate Arrays ( FPGAs)

•  Herramientas de síntesis

•  Herramientas de Implementación para FPGAs.

•  Síntesis e implementación en una FPGA.


Organización de una memoria semiconductora
para datos binarios
Dirección de columna (cajón)
1 …. m

2m
Dirección de fila (carpeta)

Arreglo de memoria
1 …. n

2n
Celda de memoria

Controladores de escritura y
Multiplexores de entrada/salida

Salida
Entrada
Celdas de memoria RAM
Vdd
dato dato
Q1 Q3

Q5 Q6

Q2 Q4

Tierra

Linea de bit Linea de bit


Celda estática
Memoria RAM: modelo digital

D Q D Q

Decodificador de fila
Bus de direcciones

D Q D Q

D Q D Q

D Q D Q

Enable

WE

Datos(1) Datos(0)
Ciclo de lectura en una memoria RAM
El cambio en la
Dirección no tiene efecto
En la salida Porque CS
Ts To Tv Td está inactivo
WE

ENA

Dirección X Dirección valida X

Datos Z Datos validos Z

Ts : Tiempo de establecimiento de dirección antes de habilitar


Tc : Retraso en la salida de datos
Td : Tiempo de establecimiento para deshabilitar.
Tv : Tiempo de lectura (seguro)
Tv + Td : Tiempo lectura con posibilidad de falla.
Ciclo de escritura en una memoria RAM
Ts To Te Tw

WE

Pulso de escritura
Ena

Dirección X Dirección valida X

Datos Z X Z

Sale de Sale de Entra a


la memoria la memoria memoria
Field Programmable Gate Array

Arreglo
RAM de
compuertas

• El arreglo de compuertas tiene los elementos


Combinacionales y sincrónicos para construir
un circuito digital cualquiera.
Procesador
JTAG • En la memoria RAM se almacenan cadenas de
bits que configuran funciones y conexiones en
el arreglo de compuertas.

• El procesador JTAG maneja la memoria RAM.


Permite que el usuario cambie su contenido y
por tanto modifique el circuito implementado en
el arreglo de compuertas
Arreglo de compuertas
Bloque Bloque de entrada
y salida
Lógico
configurable

Canales
De interconexión
Bloque lógico configurable
(sencillo)

Multiplexor

Flip-Flop

Flip-Flop tipo Data con Reset,clk


Y enable
Memoria
16 x 1
Aquí se implementa cualquier función Booleana
De 4 variables y una salida
FPGAs: Cajas de conexión
6Transistores de
interconexión

Línea
De conexión V

60 transistores en
Cada caja de interconexión Línea de
Conexión H
FPGAs: IOBs

Hacia la matriz de CLBs Pin de


entrada /
salida

De la matriz de CLBs
Herramientas de síntesis
Especificación
VHDL

Compilador Revisa :
Sintaxis

Revisa:
Pre-Sintetizador Coherencia
Normas de diseño

Pre-Sintetizador Extrae el circuito


Net-List
Herramientas de implementación para FPGAs

NETList

Place Ubica flip-flops y funciones combinacionales


en los CLBs

Route Configura las matrices de interconexión

configure Genera la cadena de bits de configuración de la FPGA

10010101101
10101011011
…..
Configuración de la FPGA

Opción 1
Aquí el PC transmite al procesador JTAG la
PC Cadena de bits de configuración de la FPGA

Opción 2
Aquí el procesador JTAG extrae
La cadena de configuración de una
Memoria Memoria tipo FLASH ( no volátil)
FLASH
Ejemplo de un proceso de síntesis e
implementación sobre FPGA

Process(clk,reset)
Begin
if reset = ‘1’ then
x<= “00”;
elsif clk’event and clk = ‘1’ then
x<=x+1;
end if;
End process;

S<= x(0) or x(1);


P<= x(0) and x(1);
Resultado de la síntesis
Generación de la lista de componentes

X(1) X(0) f2 f1
00 0 1 f1 y f2 son las sumas
01 1 0 correspondientes a cada salida
del sumador y a la vez son las
10 1 1
entradas a cada flip-flop.
11 0 0

f1 no es mas que una negación del flip-flop X(1).


f2 depende de los dos flip-flops X(1) y X(0).
Generación de la lista de componentes
X(1) X(0) S
00 0
01 1
10 1
11 1

X(1) X(0) P
00 0
01 0
10 0
11 1
Place & Route
Orden de ubicación de componentes:
1.  Flip-Flops
2.  Funciones combinacionales de entrada
3.  Funciones combinacionales de salida

Interconexión:
1.  En los cruces tan solo se pueden establecer
interconexiones en la diagonal derecha –
izquierda.
Place & Route
S

1 0
0 0
1 0 1 0
1 1
0 1 1 1
D Q D Q
0 0
0 clk 0 clk
0 0
0 0

1 0
1 0
0 0 0 0
1 0
0 1 1 1
D Q D Q
0 0
0 clk 0 clk
0 0
0 0

El 1 en el mux2to1 selecciona el registro, el cero permite el paso de la señal que viene del circuito combinacional
Flujo de diseño e implementación
Problema

Diseño de
La solución

Especificación VHDL

Simulación Adicional
Industria
Síntesis

Place & Route

configuración Diseño y
construcción del
PCB

Sistema de
PCB + FPGA
desarrollo
FPGA
Referencias

•  D. Gasjki, Principios de diseño digital,


Prentice Hall, 1994

• C. Maxfield, The design warrior’s guide


to FPGAs,Elsevier , 2004.

También podría gustarte