You are on page 1of 19

Programacion de

circuitos
combinacionales con hdl

POR CAPTURA ESQUEMTICA

Por Captura Esquemtica se entiende el proceso de descripcin,


mediante un dibujo, de un circuito elctrico, en el se que representan a
los diferentes componentes del circuito y solo se efectan
interconexiones entre ellos.

Existen varios programas con la aplicacin de Captura Esquemtica


como el Schematic del IspStarter de Lattice Semiconductor o
Fundation de XILINX entre otros.

Esta tcnica permite simular en la computadora el circuito virtualmente


y verificar su funcionamiento antes de su fabricacin o implementacin
en un PLD, reduciendo as el ciclo de diseo y el tiempo de obtencin
de un producto.

Programa de Captura Esquemtica.

Los cuatro componentes bsicos de la captura esquemtica son:


Smbolos, Conectores, Etiquetas y Puertos de Entrada y/o Salida.

Utilizando el programa IspStarter de Lattice Semiconductor, el primer paso en el


proceso de obtener el circuito es precisamente la captura esquemtica en donde se
genera un archivo de extensin .SCH, posteriormente se pasa al proceso de enlace
(link) en donde se valida si los componentes son permitidos en el dispositivo
seleccionado, adems si el dispositivo tiene la capacidad de integrar los elementos
requeridos (FitDesign). Tambin es posible efectuar la simulacin antes de obtener el
circuito final con la intencin de asegurar que este cumpla con los requerimientos
solicitados.

En el proceso de enlace se genera un archivo reporte con extensin


.REP que nos indica, entre otras cosas, la asignacin de terminales
(Pin Out) y el archivo JEDEC con el cual efectuaremos la
programacin del circuito a travs de un programador.

La desventaja de la captura esquemtica es que en el diseo de


circuitos grandes no es posible comprender los debido a que hay
demasiados componentes e interconexiones en la pantalla, para esos
casos es recomendable el uso de lenguajes de descripcin de
hardware.

POR TABLA DE VERDAD

Para aclarar el proceso es necesario un ejemplo especfico, la tabla de


verdad especifica un circuito combinacional con dos entradas y dos
salidas. Las funciones de BOOLE pueden expresarse en suma de
trminos mnimos.

El diseo de circuitos combinacionales parte la especificacin del


problema y culmina en un diagrama lgico de circuitos o un conjunto
de funciones booleanas a partir de las cuales se puede obtener el
diagrama lgico. El procedimiento implica los pasos siguientes:

De la especificacin del circuito, deduzca el nmero requerido de


entradas y salidas; asigne un smbolo a cada una.

Deduzca la tabla de verdad que define la relacin requerida entre las


entradas y las salidas.

Obtenga las funciones booleanas simplificadas para cada salida en


funcin de variables de entrada.

Dibuje el diagrama lgico y verifique que el diseo sea correcto.

POR ECUACIONES BOOLEANAS

Si se requiere reducir la funcin que realiza el circuito. Este proceso parte del
diagrama lgico dado y culmina en un conjunto de funciones BOOLEANAS, una
tabla de vedad o

una posible explicacin del funcionamiento del circuito. Si el diagrama lgico


analizar va acompaado de un nombre de funcin o de una explicacin de lo
que se supone que hace, el problema de anlisis se reduce a una verificacin
de la funcin planeada. El anlisis se efecta manual mente encontrando las
funciones BOOLEANAS o la TABLA DE VERDAD, o bien utilizando un programa
de simulacin de computadora.

El primer paso del anlisis consiste en asegurarse del que el circuito dado sea
combinacional y no secuencial. El diagrama del circuito combinacional tiene
compuertas lgicas sin trayectoria de retroalimentacin ni elementos de
memoria. Una trayectoria de retroalimentacin es una conexin de salida de
una compuerta a la entrada de una segunda compuerta que forma parte de la
entrada a la primera compuerta.

El anlisis del circuito combinacional dela figura ilustra, es un circuito que


tiene tres entradas binarias A,B y C y dos salidas binarias F1 y F2. Las salidas
de diversas compuertas que son funcin nicamente de variables de entrada
son T1 y T2. La salida F2 se deduce fcilmente de las variables de entrada.
Las funciones BOOLEANAS de esta salida son:

F2= AB+AC+BC

F1= A+B+C

T2= ABC

POR DESCRIPCIN DE COMPORTAMIENTO

Lenguaje de Descripcin de Hardware de alta escala de integracin (VHDL)

VHDL es el acrnimo que representa la combinacin de VHSIC y HDL, donde


VHSIC es el acrnimode Very High SpeedIntegratedCircuit y HDL es a su vez el
acrnimo de Hardware DescriptionLanguage.

Es un lenguaje definido por el IEEE (Institute of Electrical and


ElectronicsEngineers) (ANSI/IEEE 1076-1993) usado por ingenieros para
describir circuitos digitales. Otros

mtodos para disear circuitos son la captura de esquemas (con herramientas


CAD) y los diagramas debloques, pero stos no son prcticos en diseos
complejos. Otros lenguajes para el mismo propsito son Verilog y ABEL.

Aunque puede ser usado de forma general para describir cualquier circuito se
usa principalmentepara programar PLD (Programable LogicDevice - Dispositivo
Lgico Programable),FPGA (Field ProgrammableGateArray), ASIC y similares

Dentro del VHDL hay varias formas con las que podemos disear el mismo
circuito y es tarea deldiseador elegir la ms apropiada.

Lenguaje de Descripcin de Hardware de alta escala de integracin (VHDL)

VHDL es el acrnimo que representa la combinacin de VHSIC y HDL, donde VHSIC es el


acrnimode Very High SpeedIntegratedCircuit y HDL es a su vez el acrnimo de Hardware
DescriptionLanguage.

Es un lenguaje definido por el IEEE (Institute of Electrical and ElectronicsEngineers) (ANSI/IEEE


1076-1993) usado por ingenieros para describir circuitos digitales. Otros

mtodos para disear circuitos son la captura de esquemas (con herramientas


CAD) y los diagramas debloques, pero stos no son prcticos en diseos
complejos. Otros lenguajes para el mismo propsito son Verilog y ABEL.

Aunque puede ser usado de forma general para describir cualquier circuito se
usa principalmentepara programar PLD (Programable LogicDevice - Dispositivo
Lgico Programable),FPGA (Field ProgrammableGateArray), ASIC y similares

Dentro del VHDL hay varias formas con las que podemos disear el mismo
circuito y es tarea deldiseador elegir la ms apropiada.

Programacin de circuitos secuenciales


con HDL

Los circuitos de conmutacin secuenciales tienen la propiedad de que la salida


no slo depende de la entrada actual, sino tambin de la secuencia de
entradas anteriores.

Son las siglas de Programable Logic Designo dispositivos de lgica programable.


Estos circuitos integrados permiten generar dentro de las mismas funciones
que no disponemos en losC.I. Comerciales (decodificadores, comparadores,
sumadores, etc).Los PLDs pueden reemplazar circuitos integrados de
propsito especifico en el diseo de circuitos digitales. Un solo PLD es
funcionalmente equivalente a dispositivos que tienen desde 5 hasta
10,000compuertas lgicas.

Estos dispositivos estn basados en transistores bipolares transistores


especiales que cuando se hace circular una fuerte corriente dejan de
conducir ,pero pueden volver a conducir aplicando una diferencia de potencial
en el circuito.

POR CAPTURA ESQUEMTICA

Los programas de captura esquemtica son aplicaciones creadas para esbozar


circuitos electrnicos y exportar los esquemas como archivos netlist ; los cuales
satisfacen la sintaxis de algn ncleo de simulacin en particular.

Dentro de este grupo de programas, que delegan al usuario la tarea de enlazar los
archivos netlist generados con el ncleo de simulacin, se encuentran: XCircuit
11, y gschem 12; pertenecientes a los grupos Open Circuit Design y

gEDA , respectivamente. La principal caracterstica de ambos programas, es que


pueden generar dibujos decircuitos de gran calidad, debido a la tecnologa
utilizada en su implementacin: el lenguaje Postscript para la descripcin de
diagramas. Sin embargo, se aprecia una ligera diferencia entre estas dos
aplicaciones, locual podra ayudar a discriminar entre una y otra. Por una parte,
el autor de gschem reconoce que XCircuit produce mejores salidas gr?cas; y por
otra, gschem est ms orientado al diseo de circuitos que a dibujos de calidad
en s, lo cual se aprecia en su funcionalidad. Lamentablemente, la desventaja de
programas de este tipo, es el hecho de tener que enlazar explcitamente el
ncleo de simulacin; lo cual incrementa la curva de aprendizaje de usuarios
provenientes de ambientes ms amigables

POR TABLA DE VERDAD

La tabla de verdad es un instrumento utilizado para la simplificacin de


circuitos digitales a travs de su ecuacin booleana.

Las tablas de verdad pueden tener muchas columnas, pero todas las tablas
funcionan de igual forma.

Hay siempre una columna de salida (ltima columna a la derecha) que


representa el resultado de todas las posibles combinaciones de las entradas.

El nmero total de columnas en unatabla de verdad es la suma de las


entradas que hay + 1 (la columna de la salida).

El nmero de filas de la tabla de verdad es la cantidad de combinaciones que


se pueden lograr con las entradas y es igual a 2n, donde n es el nmero de
columnas de la tabla de verdad (sin tomar en cuenta la columna de salida)

POR ECUACIONES BOOLEANAS

Los Nmeros Reales lo conocemos muy bien, as como todas las operaciones
definidas en l. Estamos acostumbrados a trabajar con ellos desde pequeos,
por eso este tipo de Ecuaciones nos parecen intuitivas y sencillas, aunque no
comprendamos lo que significan las variables usadas. Hemos dicho que los
circuitos digitales trabajan con nmeros, y que estos nmeros se expresan en
binario. Veremos ms adelante cmo con un conjunto de ecuaciones podemos
describir lo que hace un circuito, que transforma los nmeros de la entrada y
los saca por la salida.

Sin embargo, puesto que estos nmeros vienen expresados en binario, las
variables y nmeros utilizados NO SON REALES.

Para describir un circuito digital utilizaremos ecuaciones, Para describir un


circuito digital utilizaremos ecuaciones matemticas. Sin embargo, estas
ecuaciones tienen variables y nmeros que NO SON REALES, por lo que NO
podemos aplicar las mismas propiedades y operaciones que conocemos. Hay
que utilizar nuevas operaciones y nuevas propiedades, definidas en el ALGEBRA
DE BOOLE.

Por tanto, vamos a trabajar con unas ecuaciones a las que NO estamos
acostumbrados. Son muy sencillas, pero al principio pueden resultar poco
intuitivas. En este captulo aprenderemos a trabajar con ellas.

Las operaciones del lgrebra de Boole

En el lgebra de Boole hay dos operaciones, denotadas con los smbolos + y


( - ) _ pero que no tienen nada que ver con las operaciones que todos
conocemos de suma y producto!!. No hay que confundirlas!!!!. El + y el _ del
Algebra de Boole se aplican a bits, es decir, a nmeros que slo pueden ser el
0 el 1.

La operacin +

Esta operacin se define de la siguiente manera:

0+0=0

0+1=1

1+0=1

1+1=1

Las tres primeras operaciones nos resultan obvias, son iguales que la suma que
conocemos, sin embargo la expresin 1 + 1 = 1 nos puede resultar chocante. Pero
no me haban dicho toda la vida que 1+1=2??, nos podemos estar preguntando. S,
pero hay que recordar que aqu estamos utilizando otra operacin que NO ES LA
SUMA, la denotamos con el mismo smbolo +, pero no es una suma normal!!
Hay que cambiar el chip!!

Ahora estamos con Algebra de Boole!!

POR DESCRIPCIN DE COMPORTAMIENTO

Descripcin VHDL de comportamiento.- Esta es quizs la etapa mas importante del


diseo, ya que en ella se toman decisiones claves para el resultado final.

El mtodo se clarifica con un ejemplo, en el cual se ha buscado tambin la aplicacin de

los criterios de jerarqua, modularidad y regularidad. Para ello se trata de que todos los
pasos de la secuencia sean iguales, cuando ello es posible. Tambin se siguieron las
recomendaciones de no usar lgica auxiliar en las seales de reloj (todos los cambios del
sistema se producen sincronizados con la seal de reloj la cual es nica para todos los
Flip Flops.)

Sntesis.- Ya en la descripcin inicial se halla presente la divisin del circuito en una


parte de control y una parte de datos. Por lo tanto la sntesis consistir en pasar de la
descripcin de comportamiento a una descripcin de estructura (y comportamiento) que
contemple los requisitos expuestos.

En esta etapa son importantes la eleccin del tipo de lgica a utilizar y la estrategia de
reloj, esto se podr apreciar en el ejemplo que consiste en un circuito de control para
un convertidor A/D de aproximaciones sucesivas. Comportamiento.

En una especificacin de este tipo decimos cual es la funcin que cumple el sistema.

POR TABLA DE ESTADO

Un circuito cuya salida depende no solo de la combinacin de entrada, sino tambin de la historia de las
entradas anteriores se denomina Circuito Secuencial. La historia de las entradas anteriores en un momento
dado se encuentra resumida en el estado del circuito, el cual se expresa en un conjunto de variables de
estado.

El circuito secuencial debe ser capaz de mantener su estado durante algn tiempo, para ello se hace necesario
el uso de dispositivos de memoria. Los dispositivos de memoria utilizados en circuitos secuenciales pueden ser
tan sencillos como un simple retardador (inclusive, se puede usar el retardo natural asociado a las compuertas
lgicas) o tan complejos como un circuito completo de memoria denominado multivibrador biestable o Flip
Flop.

Como puede verse entonces, en los circuitos secuenciales entra un factor que no se haba considerado en los
combinacionales, dicho factor es el tiempo. De hecho, los circuitos secuenciales se clasifican de acuerdo a la
manera como manejan el tiempo en circuitos secuenciales sncronos y circuitos secuenciales asncronos.

En un circuito secuencial asncrono, los cambios de estado ocurren al ritmo natural marcado por los retardos
asociados a las compuertas lgicas utilizadas en su implementacin, es decir, estos circuitos no usan elementos
especiales de memoria, pues se sirven de los retardos propios (tiempos de propagacin) de las compuertas
lgicas usados en ellos. Esta manera de operar puede ocasionar algunos problemas de funcionamiento, ya que
estos retardos naturales no estn bajo el control del diseador y adems no son idnticos en cada compuerta
lgica.

Los circuitos secuenciales sncronos, slo permiten un cambio de estado en los intantes marcados por una seal
de sincronismo de tipo oscilatorio denominada reloj. Con sto se pueden evitar los problemas que tienen los
circuitos asncronos originados por cambios de estado no uniformes en todo el circuito.

You might also like