You are on page 1of 60

Diseño de Circuitos Secuenciales usando FPGA

Teniendo como apoyo Diagrama de Estados

Introducción
La siguiente investigación se realiza con el fin de seguir reforzando el proyecto de trabajo de grado
de maestría construcción de módulo de enseñanza de electrónica digital usando FPGA. El tema que se
va a tratar ahora va dirigido al diseño de circuitos secuenciales, ¿qué diferencia tiene con las tres
últimas entregas?. Que aquí se hará énfasis en el diseño, arrancar el proyecto desde cero y también se
hará hincapié en las aplicaciones en ingeniería. Hasta este momento se mostraba el hardware a describir
en VHDL y no se explicaba cómo se llegaba a ese circuito. En esta entrega se cambia un poco eso, y
por lo tanto se mostrará todo desde el comienzo. Para eso se necesitan herramientas como los mapas de
Karnaugh, el Diagrama de Estados y toda la teoría inicial de cada circuito.

Diagrama que esboza todos los posibles temas a estudiar

Después de haber desarrollado los temas de los Flip – Flops, CONTADORES y Registros se elige
ahora el tema del diseño de circuitos secuenciales para explicar usando las herramientas de electrónica
digital de donde proviene cada uno de los componentes usados en un montaje particular. Al igual que
las otras guías entregadas después de tener el circuito lógico se le hará su descripción en VHDL. Como
este material se piensa sea didáctico se habla de todos los aspectos relacionados con el tema, aunque al
final se termine teniendo una serie de líneas de código que pareciera que no dicen nada pero, si
entendemos lo básico seguro se llega a comprender más rápido la codificación. Por ejemplo, estar
claros que los circuitos secuenciales necesitan un reloj (clk  de Clock, reloj en Inglés) sirve para
entender la codificación del clock en VHDL if (clock = ‘1’ and clock ‘event) then y también la del
proceso en la descripción VHDL, ésta se hace así process(clk, reset, shift_load) lo que quiere decir
que al haber cualquier cambio en estas palabras claves dentro el paréntesis ocurre una acción en la
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

descripción. Estas líneas de comando se encuentran en todas las descripciones de VHDL


correspondiente a Circuitos Secuenciales

En base a lo anterior, esta investigación arranca con el concepto de Circuitos Secuenciales,


principios básicos, Principio de construcción de un Flip Flop, Inicio de los Flip Flops, tipos de
circuitos secuenciales; El clock y los temporizadores: Importancia y tipos, Diagramas de Estado,
Software Boole Deusto, luego se colocan los circuitos integrados (ICs) comercial TTL o CMOS con el
que se construyen Circuitos Secuenciales, Diseño de contadores usando Flip Flops, Descripción en
VHDL Registros, Descripción en VHDL, su RTL y la simulación en QUARTUS II.
La siguiente figura resalta todos los aspectos que serán tocados en la investigación. Les informo
que a partir de ahora las simulaciones de electrónica digital se harán sin profundizar en
explicaciones de lo que es ese software, empresa fabricante, ventajas y otros aspectos. Toda esa
profundización se hará en

Diagrama que esboza los temas relacionados a Sistemas Secuenciales

investigaciones separadas debido a la especialización y profundidad que se puede llegar a tener con los
softwares actuales. Por ejemplo LOGISIM, el Simulador de Construcción de Circuitos Digitales y el
software BooleDeusto, son muy completos y vale la pena dedicar más espacio a estos desarrollos. Un
punto importante a partir de ahora es que se comienza a mencionar y se profundizará más el trabajo
con los llamados Diagramas de Estados y las Maquinas de Estado Finito. Como se ve, llegar a lo que
parece lo más importante como FPGA – VHDL lleva su tiempo y hay obligatoriamente que tocar
muchos temas y aclarar muchos aspectos antes de establecer la codificación en VHDL.
Después de hablar lo básico de Circuitos Secuenciales y mostrar sus aspectos más relevantes viene la
codificación del circuito en VHDL. A cada codificación le sigue el RTL, que es el hardware producto
del proceso de síntesis, dado por el software Quartus II. El siguiente diagrama muestra los aspectos de
interés obtenidos con el Quartus II
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Diagrama que esboza las cosas que se pueden hacer con el software Quartus II

Se cierra la investigación con las aplicaciones, se habla un poco de la tecnología más avanzada que
se podría llegar a tocar en futuras investigaciones, conclusiones, comentarios y las referencias de
Internet. Con respecto a las referencias de Internet quiero agregar que se hizo énfasis en resaltar a los
autores de libros, canales de youtube, autores de láminas de power point y otras referencias
colocándolas de manera más visible de lo habitual a lo largo del trabajo. Lo normal es colocar la
dirección web y hacer un comentario, bueno aquí además de eso se coloca una foto de la portada del
libro, se toma una foto de la primera lámina de power point, se toma una foto de google map para
resaltar donde queda ubicada tal universidad. De esa forma pienso dar más importancia a las personas
que con su trabajo hacen posible trabajos como el que les entrego hoy y esto los motiva a seguir en
nuevas investigaciones

Pedro Landaeta
Landaeta Pedro
Prof Jubilado de la uPT de aragua “fbf”
2463

ENERO 2019
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Concepto de Circuito Secuencial


Los objetivos a cumplir en este aparte son:
 Diferenciar entre un circuito combinacional y uno secuencial
 Resaltar la diferencia entre Circuito secuencial y Sistema Secuencial
 Dar el Concepto de biestables y sus aplicaciones en la lógica secuencial

Un circuito secuencial es un tipo de circuito lógico. Envía una salida que depende de la entrada
actual, además de la historia de la entrada. Eso lo hace diferente de un circuito combinacional, cuya
salida depende únicamente de la entrada actual. Dada su dependencia de la historia de entrada (o
entrada almacenada), los circuitos secuenciales son particularmente útiles en la memoria de acceso
aleatorio (RAM, por sus siglas en inglés) de la computadora. Los dos tipos de circuitos secuenciales
son circuitos síncronos y circuitos asíncronos.
Los circuitos secuenciales utilizan un concepto de la teoría de circuitos llamado lógica secuencial. La
lógica secuencial se basa en el estado de las entradas, así como en los datos almacenados en la memoria
del circuito. Uno de los aspectos más importantes de la lógica secuencial es el concepto de "Flip-
Flops". Los Flip-Flops [FF] son conmutadores internos en un circuito secuencial que son, ya sea
abiertos, permitiendo el flujo de información; o cerrados, inhibiendo el flujo de información. Depende
de una serie de factores establecidos por el ingeniero. Esto permite la construcción de sistemas
complejos que pueden completar una amplia gama de funciones. Comentario aparte, aquí lo de
sistemas complejos se trata simplemente de algo de mayor envergadura. Para nada se está hablando de
los sistemas complejos que se refieren a CAOS, Sistemas Dinámicos y Procesos Cognitivos. Y esto se
mantiene así para todo el trabajo.

Figura 1.- Figura que refleja los tipos de circuitos lógicos existentes
Dirección web donde se encuentra la información sobre los conceptos básicos de lógica secuencial
https://www.youtube.com/watch?v=zG6ZyG-l7gs

Material de Internet de referencias de Circuitos Secuenciales


Instituto Universitario de Microeletrónica Aplicada de la Universidad de las Palmas de Gran Canaria
http://www.iuma.ulpgc.es/users/jrsendra/Docencia/Electronica_Basica/download/transparencias/secuen
ciales.pdf
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Material de lógica Secuencial muy completo tocando todos los aspectos básicos de interés inicial
Universidad Nacional Autónoma del Estado de Hidalgo y el CEDICAME: Centro de Innovación para
el Desarrollo y la Capacitación en Materiales Educativos http://cidecame.uaeh.edu.mx/

De aquí se tomó el material de Circuitos Secuenciales


http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro16/46_circuitos_secuenciales.html

Principios básicos de Circuitos Secuenciales

Figura 2.- Bloques básicos de un circuito secuencial

A los circuitos en los que las salidas dependen no sólo del valor actual de las entradas, sino también
de los valores pasados se les denomina secuenciales, ya que su salida depende de la secuencia de
valores que toman las entradas, ver la figura 2.
Para ilustrar cómo es posible que un circuito dependa del valor anterior de las entradas nada mejor
que ver un ejemplo. En la figura 3 se muestra un circuito secuencial en el que la salida S se ha
conectado a una de las entradas de la puerta OR. En el cronograma de la derecha se puede ver la
evolución temporal del circuito. Si se supone que la salida S y la entrada E valen cero inicialmente,
como 0 + 0 = 0 la salida permanecerá a cero mientras la entrada E siga a cero. Cuando E se ponga a
uno, la salida S pasará a valer uno después del retardo de la puerta y a partir ese momento, como E +
1 = 1 la salida permanecerá a uno indefinidamente, haga lo que haga la entrada E.
Como puede apreciar, la salida de este circuito depende no sólo del valor actual de la entrada E, sino
de la historia pasada de dicha entrada. Así, si la entrada E nunca ha valido uno, la salida S valdrá cero,
pero si la entrada E ha tomado alguna vez el valor uno, la salida S será igual a uno, independientemente
del valor actual de la entrada E. El diagrama de estados de la figura 4 ayuda a entender un poco más lo
que aquí se expresa.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Nótese que este circuito, al igual que el resto de los circuitos secuenciales, tiene memoria, que es lo
que le permite reaccionar a una secuencia de entradas. En este caso la memoria no es muy útil, ya que
se pone a uno y no hay forma de volver a ponerla a cero; pero en seguida se verán circuitos en los que
es posible memorizar cualquier valor. En cualquier caso hay que destacar que la memoria se consigue
mediante la realimentación de las salidas. En este circuito se ha realimentado la salida S a una de las
entradas de la puerta OR.

Toda esta información de principios básicos de circuitos


secuenciales fue tomada del libro Introducción a los sistemas
digitales de José Daniel Muñoz Frías. El libro, cuya portada
se muestra a la izquierda, se puede descargar libremente de
la siguiente página web
https://openlibra.com/es/book/introduccion-a-los-sistemas-
digitales

Contenido:
En este texto se realiza una introducción a los conceptos
básicos que se utilizan dentro de los sistemas digitales y
analógicos, remarcando las ventajas de los primeros frente a
los segundos. Su interesante estructura nos brinda un
recorrido por las principales áreas de la computación en
relación con la ciencia matemática en que se basa.
Los sugerentes capítulos que componen este ensayo son:

 Álgebra de Boole
 Sistemas de numeración
 Introducción al lenguaje VHDL
 Circuitos Aritméticos
 Bloques Combinacionales
 Circuitos secuenciales. Fundamentos
 Máquinas de estados finitos
 Diseño de sistemas complejos: ruta de datos + control
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

PRINCIPIO DE CONSTRUCCIÓN DE UN FLIP FLOP


Teniendo al Flip Flop como el circuito secuencial primario se considera importante arrancar las
explicaciones de cómo se construyen y de donde provienen las salidas Q y Q negada de cada uno de
ellos. Se hará la descripción en VHDL del Flip Flop RS, ya que las demás descripciones fueron hechas
por mí en trabajos anteriores, búsquela en la siguiente dirección web
https://www.linkedin.com/in/pedro-landaeta-17a7bb60/detail/recent-activity/shares/ . La figura 5
asoma muy sutilmente el próximo tema que viene en la serie de investigaciones que estoy haciendo, se
trata de Maquinas de Estado Finito [ FSM, de Finite State Machine]. Aunque existen dos Modelos en
esta investigación se eligió trabajar con el modelo de Moore
Los ejemplos serán tomados de varias fuentes, entre los cuales está 1) Una serie de videos hechos en la
Universidad Nacional de CUYO UNCUYO.
Centro Universitario, Ciudad de Mendoza. Provincia de Mendoza, Argentina. CP M5502JMA
+54 261 4135000. El siguiente link te lleva a todos los videos de circuitos secuenciales.
https://www.youtube.com/watch?v=-xlR6mw-
PrY&index=31&list=PLBpqsLjpOuieyqqBhgZqbhvV6Zflz41Hr
2) El Texto: Introducción a los sistemas digitales.
Un enfoque usando lenguajes de descripción de hardware. Autor: José Daniel Muñoz Frías
Esta obra está bajo una licencia de Reconocimiento – No comercial – Compartir bajo la misma licencia
2.5 España de Creative Commons.
https://openlibra.com/es/book/introduccion-a-los-sistemas-digitales
3) Otra fuente son los videos del Prof Carlos Fajardo. Universidad Industrial de Santander –
Colombia. La siguiente dirección web los llevará al video de Registros y Contadores digitales
https://www.youtube.com/watch?v=vTmBuR-JgvM
Nota: Reconocimiento al prof Carlos Fajardo de la Universidad Industrial de Santander. Ya que con sus
videos he aprendido muchos detalles y técnicas para trabajar con VHDL.

Figura 5.- Estructura de un circuito secuencial síncrono

INICIO DE LOS CIRCUITOS SECUENCIALES


Se tiene el circuito de la figura 6 para el arranque de lo que son los circuitos secuenciales. Ya que se
entiende que estos circuitos tienen la capacidad
de memorizar. Entonces este circuito “dice”
que al encender la alimentación ya en la salida
del pin 3 había un valor, ya sea cero o uno. No
hay capacidad para saberlo. En el caso de
PROTEUS se asume un 1 en el momento de
aplicar la alimentación. Lo que implica entonces
es que siempre será 1 la salida.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

A continuación se muestra el diagrama temporal para el circuito de la figura 6 asumiendo otra


condición

Aquí en la figura 7 se observa otro


supuesto para el circuito de la figura
6. Y es que la señal de salida al
comienzo pudo estar en nivel bajo
al conectarse la alimentación. Esto
es la historia del circuito. Esa es la
base de los circuitos secuenciales:
poseen historia y es lo que los hace
memorizar bits de información.

Mi nivel de programación en VHDL no me permite actualmente realizar la descripción del circuito


de la figura 6 tal como quisiera hacerlo en VHDL. Por lo tanto se debe recurrir a elementos extras para
lograr tal fin

Figura 8.- Circuito de la figura 6 con elementos extras

Como se ve en la figura 8, se cuenta con la misma puerta OR realimentada pero ahora a través de
una compuerta AND. Al hacer esto aparece otra entrada que se diferencia por completo de la salida. Se
cuenta ahora con una tabla de verdad más clara y precisa que la que pudiera hacerse en el circuito de
la figura 6.

Tabla I. Tabla de verdad


Del circuito de la figura 8 Además de la tabla de verdad también se ve que este circuito es
A B Salida más versátil que el de la figura 6 ya que se tiene control de la salida.
0 0 1 Dependiendo del valor de B la salida será “0” ó “1” . Mientras que
0 1 0 en el circuito de la figura 6 cuando la salida es “1” no hay manera
1 0 1 de cambiar ese estado. La salida siempre será “1”.
1 1 0
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

La figura 9 muestra el diagrama


de estado del circuito de la figura 8.
Este diagrama es hecho con el
software libre BOOLE DEUSTO de
la universidad de DEUSTO en
Bilbao España. En el siguiente link
se puede descargar este software
https://boole-
deusto.soft112.com/modal-
download.html

-- DESCRIPCIÓN VHDL DEL CIRCUITO DE LA FIGURA 8

Figura 10.- Descripción en VHDL del circuito de la figura 8


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Señales de salida de la descripción anterior

Figura 11.- Señales de salida del circuito de la figura 8

Estas señales fueron obtenidas con el software QUARTUS II de la empresa INTEL FPGA. Del cómo
se obtienen las señales, uso del software QUARTUS II y otros comentarios los puede encontrar en la
siguiente dirección web https://es.scribd.com/document/376832662/Guia-de-FPGA-Cyclone-II-de-la-
empresa-ALTERA

Copiando de nuevo el circuito de la figura 8. La idea es llevarlo a un formato más conocido para
nosotros. Como el de los Flip Flops RS por ejemplo hecho en base a compuertas NOR

(a) (b)

Figura 12.- Circuitos secuenciales con semejanzas

Haciendo los ajustes necesarios y los cambios convenientes se puede pasar del circuito de la figura
12(a) al de la figura 12(b). Un detalle, por ser un circuito secuencial este posee memoria, y ahí se
puede corroborar lo que aquí se dice en la figura 12 (a) donde teniendo A = 0 y B = 0 se tiene en la
salida = 0……..esto contradice la tabla I donde se coloca que salida = 1……..No hay ningún error en el
montaje ni en la teoría. Es un problema propio del circuito secuencial, más que problema es una
peculiaridad de los circuitos secuenciales. Y es la historia que ellos traen en el arranque. Por ejemplo
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

en PROTEUS la compuerta OR realimentada de la figura 6 arranca con “1” en la salida apenas se le


aplica la alimentación. Y por lo mismo de la memoria de los circuitos secuenciales cuando se hace la
combinación de suiches en la figura 12 (a) se llega a esta aparente contradicción con la tabla I de que
para A = 0 y B = 0 se tenga que la salida = 0.
No obstante, en la figura 11 correspondiente al resultado de la descripción del circuito de la figura 8
usando VHDL……que más que el circuito se trabajó con la tabla I producto de ese circuito. No se
observa contradicción alguna con la tabla de la verdad.

Ahora, regresando a lo que se estaba comentando en la página anterior de ir del circuito de la figura
12 (a) a la 12 (b) se tiene entonces un leve ajuste en la figura 13

(a) (b)
Figura 13.- Primera aproximación para pasar de (a) a (b)

Y el circuito de la figura 14 se
aproxima bastante al de la figura 13
(b). Se observan las realimentaciones,
las dos entradas y las dos salidas.
Aunque el de la figura 14 resalta una
sola de ellas.
Con esto se llega a donde se
deseaba, que era tener una idea de
donde salían los circuitos
Figura 14.- Segunda aproximación para pasar de (a) a (b) secuenciales básicos.

La figura 15 muestra las partes de un


circuito secuencial básico. Está compuesto
de lógica combinatoria más el bloque de
memoria. Y se resalta aquí la diferencia
principal con los circuitos combinatorios,
y es el hecho de que las salidas son
también entradas.
Figura 15.- Partes de un circuito secuencial básico
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Por último, haciendo los cambios restantes se llega al siguiente circuito

Figura 16.- Circuito equivalente final

Se puede demostrar por algebra de Boole que el circuito de la figura 16 es idéntico al de la figura 17.
Por ejemplo la primera compuerta NOR se hace con la puerta OR más el inversor. Y la segunda
compuerta NOR de la figura 17 se logra con los dos inversores en las entradas de la compuerta AND.
Es decir, la salida de la AND es  S = 𝐴̅ . 𝐵̅ , y se puede demostrar por Algebra de Boole que esto
es similar a S = 𝐴 ̅̅̅̅̅̅̅̅
+𝐵

Figura 17.- Transformaciones necesaria para pasar del circuito de la figura 16 al de la figura 18

El circuito de la figura 16 es lo que se conoce como biestable. Y comparando la Tabla I con la tabla
de verdad del biestable RS (ver tabla II en la página siguiente) se ve que es exactamente igual.
Un biestable (flip-flop en inglés), es un multivibrador capaz de permanecer en uno de dos estados
posibles durante un tiempo indefinido en ausencia de perturbaciones, señales de entrada o entradas de
excitación. Esta característica es ampliamente utilizada en electrónica digital para memorizar
información. Ejemplo clásico las memorias RAM de las computadoras

https://es.wikipedia.org/wiki/Biestable
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 18.- Circuito secuencial resultante después de todos los cambios

A lo que se llega en la figura 18 es el circuito LATCH o Biestable SR  donde S: Set y R: Reset,


QBar es 𝑄̅ y cuya tabla de verdad se muestra a continuación

Tabla II.- Tabla de verdad del Latch SR


La Tabla II muestra los valores típicos del Latch o
S R Q biestable SR. Donde S = R = 0  mantiene el valor
0 0 Latch o Qn - 1 anterior
0 1 0 S = R = 1  es un valor no permitido. En
muchos casos algunos autores le colocan a Q para estos
1 0 1
valores Q = 0. En general, se recomienda es evitar estos
1 1 No permitido
valores en el Latch SR.
Para S = 1 y R = 0  Q = 1
Y Para S = 0 y R = 1  Q = 1

Lo que viene después en el estudio es agregar a lo anterior una circuitería de habilitación. Ahí si se
tiene por completo el Latch SR. Para convertirlo en Flip Flop se le debe agregar un reloj para que
sincronice toda la operacionalización del circuito. Se tiene entonces los Latch asincrónicos y los Flip
Flop sincrónicos.

Para evitar los valores no permitidos del Flip Flop SR se creó el Flip Flop JK.
Luego con el SR y con el JK se crean los Flip Flops D y T respectivamente.

Toda la teoría de funcionamiento, aplicaciones y conceptos básicos de Latch, Biestables y Flip Flops
se encuentra en la guía que puede descargar de la siguiente dirección web
https://es.scribd.com/document/396832271/Flip-Flops-Con-VHDL de mi propia autoría.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

A continuación un resumen de dos láminas de power point bajado de Internet donde se deja ver los
conceptos de Flip Flops, tablas de verdad y tablas de transiciones

Figura 19.- Tipos de Flip Flops y sus tablas de verdad

Les recomiendo vayan al siguiente link de la universidad de Sevilla


https://www.dte.us.es/docencia/etsii/ii/fc/doc/aula/FCT6
De donde fueron tomadas estas laminas. Ellas sirven para ampliar más la información de circuitos
secuenciales y también porque coincide hacia donde quiero llegar en la investigación.

Las tablas de excitación para cambios de estado es lo que interesa para un proyecto usando circuitos
secuenciales. Esto define todo el proyecto y no importando la cantidad de entradas dará como resultado
una circuitería que al montarla en un breadboard (tablero de montajes) o describirla con VHDL arrojará
los resultados definidos inicialmente en el diseño.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 20.- Circuito resultado del proceso de síntesis hecha por el software QUARTUS II
del circuito de la figura 18

Se cierra esta parte con la figura 20 donde se ve el circuito resultante luego del proceso de síntesis de
la descripción hecha en VHDL. Como se aprecia en el circuito se observa en azul un Flip Flop tipo D.
Es de señalar aquí que los Flip Flops tipo D son los usados en la arquitectura de las FPGA para
construir los circuitos secuenciales. Revise el siguiente material para reforzar la parte de arquitectura de
las FPGAs https://es.scribd.com/document/394770039/Arquitectura-de-Las-Fpga de mi autoría.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Tipos de Circuitos Secuenciales


Los objetivos a cumplir en este aparte son:
 Conocer más sobre Osciladores a Cristal
 Usar El clock en sistemas secuenciales síncronos
 Estudiar las Frecuencias de trabajo de las FPGAs

Hay dos tipos principales de circuitos secuenciales, y su clasificación depende de los tiempos de sus
señales. Estos son,
Circuito Secuencial Asíncrono: que No dependen de ninguna señal de reloj, y
Circuito Secuencial Síncrono: Dependen de un reloj.

https://sites.google.com/site/circuitossec/tipos

La figura 21 presenta la foto de la primera


lámina de 47 de una presentación sobre
Análisis de Sistemas Secuenciales hecha por
prof Luis Pacheco Cribillero de la Universidad
Tecnológica del Perú. Este trabajo toca los tipos
de circuitos secuenciales como parte de su
introducción, ya que después habla sobre
diagrama de estados, máquina de estado finito,
dispositivos de memoria y coloca unos
ejemplos de aplicación de sistemas
secuenciales.

Página web para su descarga


https://vdocuments.mx/download/circuitos-digitales-ii-analisis-de-sistemas-secuenciales-docente-ing-luis

Circuito Secuencial Asíncrono


Puede verse de dos formas, la número 1 que se muestra en la siguiente figura

Figura 22.- Primera forma de ver un circuito asíncrono


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Aunque es un reloj con una frecuencia determinada y con un periodo T fijo el sistema no tiene
sincronismo porque el sistema 2 posee la misma señal de clock pero con un retardo de tiempo.
Y la número 2 que se ve en la figura 23. El pulso lo envía el usuario del sistema cada vez que quiera
ver la respuesta de éste. Lo asíncrono existe desde el momento que se verifica por completo que no
existe periodicidad entre los pulsos enviados al sistema

Figura 23.- Segunda forma de ver un circuito asíncrono

Circuito Secuencial Síncrono


Se observa en la figura 24 como a cada bloque del sistema mostrado le llega la misma señal de reloj

Figura 24.- Circuito síncrono


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

El Clock y Temporizadores

Ya se ha dicho que los sistemas digitales pueden operar en forma asíncrona o síncrona. Resumiendo,
en los sistemas asíncronos las salidas de los circuitos lógicos pueden cambiar de estado en cualquier
momento en que una o más de las entradas cambie. En los sistemas síncronos los tiempos exactos en
que alguna salida puede cambiar de estado se determinan por medio de una señal denominada reloj o
clock. Esta señal de reloj consiste en una serie de pulsos rectangulares o cuadrados como se muestra en
la figura 25.

Figura 25.- Características de interés de una señal de reloj

Denominaremos periodo al tiempo T entre transiciones sucesivas en la misma dirección, esto es entre
dos flancos de subida o entre dos flancos de bajada. La transición de estado en los circuitos
secuenciales síncronos se efectúan en el momento en el que el reloj hace una transición entre 0 y 1
(flanco de subida) o entre 1 y 0 (flanco de bajada). Entre pulsos sucesivos de reloj no se efectúan
cambios.
1
El inverso del periodo es lo que denominamos la frecuencia f del reloj  𝑓 = 𝑇 . donde la frecuencia
f está dada en Hertz  Hz …..y el periodo T en unidades de tiempo, se toma el segundo “s” como
base.

El ancho del pulso de reloj es el


tiempo durante el cual la señal de
reloj está en 1.
A la izquierda en la figura 26 se
muestra un ejemplo de un circuito
secuencial síncrono

Lo que falta ahora por definir es qué


valor de frecuencia usar para el clock
en un circuito secuencial particular.
Y en general, se puede pensar más
allá y mencionar otros dispositivos
tales como microcontroladores,
microprocesadores, los sistemas
embebidos en general y los FPGAs.

Figura 26.- Ejemplo de circuito secuencial síncrono


http://www.kumbaya.name/ci1210/leccion%209%20circuitos%20secuenciales/Circuitos%20Secuencia
les%20s%C3%ADncronos.htm
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Temporización en circuitos digitales

Los circuitos de temporización se requieren frecuentemente para varias aplicaciones. Una puede ser la
de medir el lapso de tiempo que un suiche ha estado en la posición on o en la posición off . También
se ha visto que un circuito de clock es necesario para sincronizar varios componentes en circuitos
secuenciales. Existen muchas formas diferentes de construir circuitos temporizadores, pero el chip
temporizador 555 ha llegado a ser en la industria un estándar para éste propósito.

Clocks
Así como el baterista en una banda ayuda a mantener el resto de los integrantes sincronizados, así
mismo hace el clock en un circuito. Éste se usa para sincronizar un circuito que contiene diferentes
componentes que tienen diferentes retardos de propagación.

Se requiere la sincronización porque los cambios en la señal toman su tiempo en viajar a través de un
circuito. Las inductancias y capacitancias internas en los cables del circuito y los propios componentes
causan retardos. Para el caso en que se requiera mucha más rapidez como en los procesadores de
computadoras que operan en el orden de los Gigahertz, estos son construidos usando cristales de
cuarzo. El 555 no puede ser fabricado para esas frecuencias debido al retardo de propagación interno
dentro de los transistores en el chip, pero puede proporcionar un pulso de reloj confiable para
aplicaciones que no requieren mucha rapidez. A continuación en la figura 27 se muestra el circuito
clásico astable para el 555

Figura 27.- Muestra un circuito de tiempo usando el temporizador 555.

En la página siguiente se muestran dos referencias de interés para el tema de temporización, clock,
circuitos sincrónicos y lógica secuencial. El de la figura 28 es un libro de filosofía open source y cuya
dirección web se deja para el que quiera descargarlo; y la de la figura 29 es una presentación que
involucra Flip Flops y temporizadores. Hecha por el Prof William Moscoso de la Universidad de La
Sabana en Colombia https://www.unisabana.edu.co/
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 28.- Libro de sistemas digitales con información de Clock y Temporizadores.

https://openlibra.com/es/book/download/introduction-to-digital-logic-with-laboratory-exercises

Figura 29.- Presentación de Lógica secuencial con información de temporizadores

https://www.academia.edu/27422371/L%C3%93GICA_SECUENCIAL_Flip-Flops_y_Temporizadores
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Osciladores a cristal

Existen otros tipos de osciladores que se utilizan para rangos de frecuencias mayores y cuya pureza
espectral es mayor. Estos osciladores están basados en el empleo de un cristal. El cristal de cuarzo es
utilizado como componente de control de la frecuencia de circuitos osciladores convirtiendo las
vibraciones mecánicas en voltajes eléctricos a una frecuencia específica, ver figura 30. Esto ocurre
debido al efecto "piezoeléctrico". La piezoelectricidad es electricidad creada por una presión mecánica.
En un material piezoeléctrico, al aplicar una presión mecánica sobre un eje, tendrá como consecuencia
la creación de una carga eléctrica a lo largo de un eje ubicado en un ángulo recto respecto al de la
aplicación de la presión mecánica. Por las propiedades mecánicas, eléctricas, y químicas, el cuarzo es
el material más apropiado para fabricar dispositivos con una frecuencia bien controlada, ya que sus
características son prácticamente constantes respecto al tiempo y la temperatura. De este modo, cuando
se aplica una diferencia de tensión entre dos caras opuestas de este material se generará una frecuencia
que vendrá determinada, junto con su factor de calidad, por las características del cristal, tales como su
dimensión o la orientación de las superficies respecto a sus ejes.

Algunos valores típicos de las especificaciones de los cristales


comerciales son:
- Frecuencia de funcionamiento: cuando se incrementa la
frecuencia solicitada, el espesor del cuerpo del cristal disminuye
y por supuesto existe un límite en el proceso de fabricación.
Alrededor de 30MHz, el espesor de la placa del cristal comienza
a ser muy delgada.
Algunas de las muchas aplicaciones de los cristales de cuarzo
son las de uso diario tales como relojes, microprocesadores o
teléfonos móviles, ver figura 31. También son usados para
equipos de test y medidas tales como generadores de señal u osciloscopios. Los cristales pueden ser
construidos para su oscilación en un amplio rango de frecuencias, desde unos pocos KHz hasta varios
cientos de MHz. Muchas aplicaciones requieren una misma frecuencia determinada. Algunos ejemplos
de bandas de interés donde se usan osciladores basados en cristal son las de 12 MHz para USB, 4 MHz
para microcontroladores, 23-25 MHz para GPS, 30,72 MHz para 3G, 106,5 MHz para transceivers de
radio y 156.5 MHz para 10 Gigabit Ethernet. Algunos fabricantes típicos de cristales son Crystek o
Murata.

http://www.dinel.us.es/ASIGN/CE_2T/pracs/2010-2011/p2/practica10.pdf
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 31. Oscilador a Cristal externo

https://www.mikroe.com/ebooks/microcontroladores-pic-programacion-en-c-con-ejemplos/oscilador-de-reloj

Frecuencia de trabajo de las FPGA

Entre las tarjetas de desarrollo con FPGAs más básicas se suelen manejar los 50MHz, este es el
caso de la cyclone ii EP2C5T144C8. La misma dispone de PLLs que pueden elevar la frecuencia de
trabajo hasta 300 MHz, ver la web page http://www.digilogic.es/altera-cyclone-ii-ep2c5t144-fpga/
para más información sobre esta FPGA. Ahora, si se quiere comparar con algún microcontrolador hay
que ser cuidadoso porque para los FPGAs esa frecuencia es una frecuencia de operación real, realizan
sumas, multiplicaciones, divisiones y cambios de estado de un pin a 50MHz, a diferencia de los
microprocesadores que aunque están conectados a un cristal de cierta frecuencia, su frecuencia de
operación es 2 o 4 veces menor debido a la arquitectura que tienen.
Otro detalle es que al igual que muchos microcontroladores y microprocesadores los FPGAs tienen
PLLs internos que permiten multiplicar la frecuencia llegando a 100MHz, 200 ó 300MHz desde
50MHzsin ningún problema. Ver la figura 32 donde se resalta entre otros componentes el cristal de 40
MHz que viene con la tarjeta de la cyclone i

https://nodoelectronico.com/2016/01/01/que-son-los-fpgas-como-funcionan-para-que-sirven-quien-
deberia-utilizarlos/

Figura 32. Oscilador a Cristal externo en una tarjeta cyclone I

https://es.scribd.com/presentation/76049642/FPGA
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Diagrama de Estado: Este muestra la secuencia de estados por los que pasa bien un caso de uso,
un objeto a lo largo de su vida, o bien todo el sistema. Es una forma de representación gráfica más
intuitiva de los autómatas finitos basadas en dígrafos con arcos acotados llamados transiciones en los
cuales se ponen los símbolos de tránsito entre un vértice (estado) y otro y se identifican los estados de
partida y los de aceptación del resto. Los diagramas de estados finitos son también representaciones
más cómodas para su elaboración, legibilidad y comprensión de distintos tipos de abstracciones
computacionales de reconocimiento
como los autómatas de pila y las
máquinas de Turing.
Páginas web de referencias
https://www.ecured.cu/Diagrama_d
e_estado

https://es.slideshare.net/faurbano/di
seo-de-circuitos-secuenciales

La figura 33 se explica por sí


sola, y corresponde a un circuito
secuencial. No debe confundirse los
diagramas de estados que se quieren
estudiar en esta guía y en las
venideras con los diagramas de estado correspondiente a UML. Tienen el mismo nombre pero su
aplicación y forma tienen otro rumbo y finalidad.

Figura 34.- Software Educativo BOOLE-DEUSTO para lógica digital

https://boole-deusto.soft112.com/modal-download.html
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Análisis y diseño de sistemas digitales Usando el Software Boole-Deusto


Escrito por José Carlos Bethencourt Gutiérrez el 12 febrero, 2015. Posteado en 17. Tecnología,
17.10.Electrónica (4º ESO), 30. Tecnología Industrial I y II, 30.7. Sistemas automáticos (Tecnología Industrial
II), 30.9. Control y programación de sistemas automáticos (Tecnología Industrial II), III - ESO, IV - Bachillerato

Boole-Deusto es una herramienta de software educativo para la


electrónica digital, ver figura 34. Se puede trabajar con circuitos
combinacionales y circuitos secuenciales, pero siempre a nivel de bit. A
diferencia de otras herramientas avanzadas, Boole-Deusto está
especialmente orientado para los estudiantes, de forma que les permita
realizar el diseño de un circuito digital paso a paso, realizar los
correspondientes Mapas de Karnaugh y la posterior simplificación
lógica.

Proyecto realizado en la Universidad de DEUSTO en España

Link que te lleva a la página web del gobierno de Canarias donde


informan que es el software Boole Deusto y donde y quienes lo usan
http://www3.gobiernodecanarias.org/medusa/ecoescuela/recursosdigitales/2015/02/12/analisis-y-
diseno-de-sistemas-digitales-boole-deusto/

Página web de la Universidad de DEUSTO


https://www.deusto.es/cs/Satellite/deusto/es/universidad-deusto
La Universidad de Deusto, ver figura 35 para su ubicación por Google Map, es una universidad privada
regida por la Compañía de Jesús, con dos campus, uno en el distrito de Deusto de la ciudad de Bilbao,
y otro en San Sebastián, País Vasco, además de una sede en Madrid. Actualmente su rector es José
María Guibert Ucín.

Figura 35.- Ubicación de la Universidad de DEUSTO


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Ejemplo de aplicación del software BOOLE DEUSTO, ver figura 36.


En la siguiente dirección web encuentras el video
https://www.youtube.com/watch?v=kgWeekmlrbw

Figura 36.- Aplicación del software Boole Deusto en youtube

Esta es la primera parte que se ve en el video. Se tratan aquí los temas de Diagrama de Estados, Mapas
de Karnaugh, Flip Flop JK y, se resalta aquí el uso del software Boole Deusto y PROTEUS.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Circuitos Secuenciales en circuito Integrado (IC)

Flip Flop
Se pueden ver el IC 4043, 4044, 7474, el 4027 y el 7476. Estos se encargan en un solo chip ( IC)
de lo que hacen las compuertas en forma discreta. Hay una forma mayor de discretización y es la de
hacer las compuertas a base de transistores, pero no es tema de esta investigación.

Figura 37a.- IC 4043 es un quad (R/S) Figura 37b.- IC 4044 es una latch Quad R/S construido a
construido a base de compuertas NOR base de compuertas NAND

Figura 38a.- IC 4027 flip Flop JK fabricado Figura 38b.- IC 7476 es un Flip – Flop JK dual
con Tecnología CMOS

Circuito integrado comercial Flip-Flops J-K 4027 fabricado con tecnología CMOS:
el cual incluye dos flip-flops J-K (simbolizados en el diagrama como F/F). En el Flip-Flop 1, el
equivalente de nuestra terminal S que fuerza al Flip-Flop a entrar en el estado Q=1 está puesto en la
terminal 9 del circuito integrado (SET 1), mientras que el equivalente de nuestra terminal R que
"limpia" al Flip-Flop poniéndolo en el estado Q=0 está puesto en la terminal 12 del circuito integrado
(RESET 1).
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Flip Flop D

Este bloque representa el elemento conocido comúnmente como el flip-


flop D; y aunque menos versátil que el flip-flop J-K, requiere de mucho
menos conexiones que el flip-flop J-K en una infinidad de circuitos, o sea,
ofrece menos problemas de alambrado en la construcción de circuitos
lógicos. El flip-flop D es tan útil y tan versátil que se puede adquirir en
pares dentro de un circuito integrado de bajo costo como el 4013
(construido con tecnología CMOS)

Las terminales de Set S y de Reset R son para "forzar"


a cada flip-flop D a entrar en el estado Q=1 y en el
estado Q=0, respectivamente, independientemente del
estado en el que se haya encontrado previamente. Un
aspecto interesante de la tecnología CMOS usada por este
circuito integrado es que el voltaje VDD de la fuente de
poder puede variar desde +5 volts hasta +15 volts, como
lo indica el diagrama, y aun así el circuito integrado será
capaz de interpretar la presencia o ausencia del mismo
como un "1" ó como un "0".
Además del circuito integrado mencionado, tenemos otros
como el CD40175 (también fabricado con tecnología
CMOS) cuya relación de terminales "pins" en el circuito
integrado es la siguiente (obsérvese que la señal de
"reloj" o clock puesta en la terminal 9 actúa
simultáneamente sobre los cuatro
Flip-Flops D que hay dentro del circuito integrado, lo cual
es una gran ayuda para diseños en los que es importante mantener a todos los componentes
sincronizados):

IC 40175
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

o como el circuito integrado CD4175 (también fabricado con tecnología CMOS) cuyo diagrama
funcional interno es el siguiente:

Además de ser fabricado con tecnología CMOS, el Flip-Flop D también ha sido fabricado con
tecnología TTL, de lo cual se muestra como
ejemplo el circuito integrado dual 7474 y el octal
74LS374 (el prefijo "74" indica que pertenece a la
familia TTL de circuitos lógicos, y el sufijo
intermedio "LS" significa Low power Schottky
señalando que es de consumo bajo de energía y de
alta velocidad):

El IC 74LS374 contiene ocho flip-flops D


independientes el uno del otro, excepto por el
hecho de que, como puede verse en el diagrama
para este circuito integrado, todos los flip-flops
D están conectados a la misma terminal de
"reloj" designada CK, la cual viene de la
terminal 11.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Contadores
A continuación se muestran algunos IC que sirven como contadores digitales. Se comienza con el IC
7490. Contador de 0 a 9 Ascendente en BCD.

Figura 39.- Contador BCD ascendente 7490

Figura 40a.- IC 74192/193 son Contadores Figura 40b.- IC 7493 es un Contador Binario de 4 bits
reversibles. BCD/Binario síncrono TTL

Figura 41a.- IC 74190/191 son contadores Figura 41b.- IC 74160/162 y 74161/163 son contadores
reversibles. BCD/Binario síncrono TTL ascendentes. BCD/Binario síncrono TTL
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Acá se tiene una muestra de los diferentes contadores construidos con IC. Faltan otros pero la idea
era hacer un paseo rápido por esta tecnología para dejar claro que los contadores se pueden encontrar
de otra forma distinta a la conocida hasta ahora que era la de solamente usar unos Flip – Flops en forma
individual o en grupos dependiendo de la cantidad de bits que se quisiera en el conteo.

Otro aspecto importante es que solamente aquí se muestran los contadores TTL, faltan los de
tecnología CMOS.

Además del libro de referencia que he comentado anteriormente que estoy usando para construir este
material, el de la serie Schaum de Principios Digitales. Aquí quiero recomendar el libro de Malvino y
Donald Leach llamado principios y aplicaciones digitales

En esta dirección aparece un resumen del libro


https://books.google.co.ve/books/about/Principios_y_aplicaciones_digitales.html?id=aWVNFkrO4NYC

Figura 42.- Foto del libro recomendado

Los autores hacen aquí una buena comparación y análisis de los contadores
en IC en su página 384

Albert Paul Malvino, Donald P. Leach

Registros
Aquí se muestran los Registros TTL y los CMOS, una pequeña muestra.
En el mercado existen actualmente varios circuitos integrados que desempeñan su función como
registros, en esta sección se mencionarán algunos de estos registros disponibles en lógica TTL y
CMOS.
Circuito Integrado 74HC373
Este integrado contiene en su interior 8
Cerrojos o Latches tipo D con salidas
triestado. En la figura 3 se observa el
PINOUT. La descripción de sus
entradas y salidas es la siguiente:
 D0...D7: Entrada paralelo
 Q0...Q7: Salida paralelo
 LE: Latch Enable
 OE: Output Enable
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Circuito Integrado 74HC374


Este integrado contiene 8 Flip-Flops (FF)
tipo D con salidas triestado sensibles al
flanco de subida de la señal del Reloj. En la
figura 4 se observa el PINOUT de este
registro y su diferencia con el anterior
Circuito Integrado es que este contiene FF.
Ya que lo más común en un registro de
desplazamiento es que existan en cascada una
serie de FFD, el IC 74HC374 es ideal porque
posee 8 FFD en su interior. Su aplicación en
registros y en la construcción de memorias es
rápida y sencilla. EL IC 74HC373 es exactamente igual con la diferencia de que en su interior posee
LATCHES. Entonces uno se habilita por flanco de CK y el otro por nivel.

A diferencia de los dos IC anteriores los fabricantes ofrecen circuitos integrados específicos para ser
registros de desplazamiento. El que se estudiará a continuación es un registro de desplazamiento
universal. El símbolo lógico para el registro de desplazamiento /universal de 4 bits, TTL 74194 se
muestra en la figura 45.
Este registro tiene 10 entradas y 4 salidas; estas últimas están conectadas a las salidas normales (Q) de
cada Flip Flop en el circuito integrado.

Figura 45.- Registro de desplazamiento TTL 74194

El 74194 es un registro universal de desplazamiento bidireccional de 4 bits con una muy alta velocidad
de operación y un bajo consumo de energía, cuenta con cuatro entradas paralelas (A,B,C y D) y cuatro
salidas en paralelo (Q1, Q2, Q3 y Q4), una entrada serial para desplazamientos hacia la derecha y otra
hacia la izquierda, un nivel bajo activa la entrada para borrado (clear), entrada de señal de reloj y dos
entradas (S0 y S1) para seleccionar uno de los cuatro modos diferentes de operación del integrado, es
decir si se desea operar como registro de desplazamiento PIPO, PISO (Entrada Paralelo-Salida Serie),
SISO (Entrada Serie-Salida
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Serie) con desplazamiento hacia la izquierda, SISO (Entrada Serie-Salida Serie) con desplazamiento
hacia la derecha o SIPO (Entrada Serie-Salida Paralelo).

Los fabricantes de circuitos integrados disponen de gran variedad de registros de desplazamiento


CMOS.
El que se estudiará a continuación es el IC 74HC164 es un registro de desplazamiento de 8 bits entrada
serie salida paralelo. El diagrama en bloques para el registro de desplazamiento CMOS 74HC164 se
muestra en la figura 46, este IC viene encapsulado en forma de DIP de 14 patillas, trabaja con una
fuente de alimentación de +5V DC y opera disparado con flanco de reloj y solo permite la entrada de
datos serie.

Comentario: La opción de los ICs se propone porque aunque la investigación promueve el lenguaje
VHDL y la simulación con PROTEUS, LOGISIM y otros softwares de simulación electrónica. Puede
ser que existan personas que por alguna razón quieran montar en hardware todos los experimentos aquí
planteados. No obstante, también existe la opción virtual para este caso con el software Simulador de
Construcción de circuitos digitales del Profesor Peruano Arturo Miguel de Priego. Aquí sus redes
sociales amiguel@pucp.edu.pe y www.tourdigital.net . Con este software se tiene la opción de
montar los experimentos de una manera muy realista. En este link lo descargas
http://www.tourdigital.net/SimuladorTTLconEscenarios.htm

PUCP: Pontificia Universidad Católica del Perú


https://www.pucp.edu.pe/
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Diseño de Contador usando Flip - Flops


Los objetivos a cumplir en este aparte son:
 Usar mapas de karnaugh para simplificar circuitos lógicos
 Diseñar contadores usando Flip Flops JK
 Diseñar contadores apoyados con Diagrama de Estados

Diseñar un contador de 0 a 1 de 1 bit sincrónico usando Flip Flop JK


Tabla III.- Tabla de transición del contador de 0 a 1

t t+1

A A JA KA

0 1 1 x

1 0 x 1

Como es una sola variable no se puede construir el mapa de Karnaugh. No obstante, se puede observar
en la tabla III de transición que los datos existentes coinciden con el modo Toggle del Flip Flop JK.
Este modo resulta cuando las dos entradas del Flip Flop son iguales a 1. Viendo los valores resultantes
para JA y KA según la tabla de transición se pueden tomar esos datos como si fuera un mapa de
Karnaugh donde todos los valores son 1……..al hacer eso se puede considerar a JA = KA = 1. El
diagrama de estados de la figura 47 corrobora lo que se desea diseñar. En la cuenta resultante debe
verse como los datos pasan de 0 a 1 y luego vuelve el valor a cero. Esto ocurre indefinidamente
mientras esté alimentado el circuito

Figura 47.- Diagrama de estados del Contador de 1 bit con Flip Flop JK

La figura 48 muestra la simulación


hecha con PROTEUS, una versión trial
que se encuentra en Internet llamada
PROTEUS Demostration. En esta
dirección puede descargarlo
https://www.labcenter.com/downloads/ .
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Con este montaje queda comprobado el diseño a nivel de electrónica.

Código en VHDL para el contador de 0 a 1

Figura 49.- Código en VHDL del Contador de 1 bit usando QUARTUS II

Figura 50.- Señales de salida del contador de 0 a 1


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 51.- Circuito resultante del proceso de síntesis del contador de 0 a 1


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Diseñar un contador de 0 a 2 de 2 bits sincrónico usando Flip Flop JK


Tabla IV.- Tabla de transición para el ejemplo del contador de 2 bits
t t+1

AB AB JA KA JB KB

00 01 0 x 1 x

01 10 1 x x 1

10 00 x 1 0 x

JA = B KA = 𝐵̅

A / B 0 1 A / B 0 1

0 0 1 0 x x

1 x x 1 1 x

JB = 𝐴̅ KB = B

A / B 0 1 A / B 0 1
0 1 x 0 x 1
1 0 x 1 x x

Figura 52.- Diagrama de estados del Contador de 2 bits con Flip Flop JK
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 53.- Contador de 2 bits con Flip Flop JK

Buena explicación de mapas de Karnaugh

https://www.youtube.com/watch?v=i5JHQ1nSTvY

El profesor en este video y los siguientes que encontrarás del mismo autor explica los mapas de
Karnaugh de 2, 3 y 4 variables
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Código en VHDL para el contador de 0 a 2

Figura 54.- Código en VHDL del Contador de 1 bit usando QUARTUS II

Figura 55.- Señales de salida del contador de 0 a 2


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 56.- Circuito resultante del proceso de síntesis del contador de 0 a 2


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Diseñar un contador de 3 bits sincrónico usando Flip Flop JK

Figura 57.- Diagrama de estados del Contador de 3 bits con Flip Flop JK

Tabla V.- Tabla de transición para el ejemplo del contador de 3 bits


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 58.- Mapas de Karnaugh para el contador de 3 bits con Flip Flop JK

Este ejemplo se encuentra en la siguiente dirección web


https://www.youtube.com/watch?v=FANMaccckNM

Los mapas de Karnaugh y la tabla de transición pertenecen a este video

El video pertenece al canal Aportación Electrónica y fue subido a la red en Noviembre 2017
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 59.- Contador de 3 bits con Flip Flop JK

Código en VHDL para el contador de 0 a 7

Figura 60.- Código en VHDL del Contador de 3 bits usando QUARTUS II


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 61.- Señales de salida del contador de 0 a 7

Figura 62.- Circuito resultante del proceso de síntesis del contador de 0 a 2


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Comentario de la Descripción de los contadores en VHDL

- - - Es la forma de hacer un comentario en VHDL

- Luego vienen las librerías usadas necesarias para que el proyecto se ejecute

- La entidad entity es donde se nombran las entradas y salidas

- Architecture es donde se va a ejecutar todo el proyecto

- La instrucción signal contador : std_logic_vector(2 downto 0), esta instrucción define la


cantidad de bits que va a tener el contador. Como aquí va de 2 a 0….es un contador de 3 bits.
Si fuera realizado con Flip Flops (FF) necesitaría 2 FF JK IC 7476 para hacer este proyecto.
Ahora imagínese que es un contador de 16 bits…..harían falta 8 FF IC 7476. Mientras que con
el mismo chip FPGA y colocando en la instrucción ….15 downto 0 ya tengo los 16 bits.

- Process ( ) …dentro de la arquitectura o architecture en Inglés que Se debe usar porque es una
palabra clave se coloca process ( ) porque dentro del process ( ) es donde se puede usar la
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

- instrucción if…..es como un aparte que permite VHDL para usar códigos de lenguaje
estructurado

- Con la instrucción contador <= std_logic_vector(unsigned(contador) + 1), define si el


contador va a ser creciente o decrecient

- https://www.dte.us.es/docencia/etsii/ii/dcsl/temas/VHDL_isesimulator/at_download/file

Enlace interesante para profundizar con el lenguaje VHDL. En formato .pdf

- https://www.tamps.cinvestav.mx/~adiaz/Vhdl/01-VHDL-ALuca.ppt
Enlace interesante para profundizar con el lenguaje VHDL. En formato .ppt
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

REGISTROS
El tema que falta por tocar es el de registros. Ya el tema fue tratado anteriormente, puede encontrarla
en https://es.scribd.com/document/394116308/Registros-de-Desplazamiento-Usando-FPGA . No
obstante, aprovechando lo ya investigado se propone estudiar las aplicaciones de estos registros para
que de alguna manera tenga sentido tanto empeño en entenderlos y conocerlos de la forma en que se
está haciendo.
Considerando la transmisión de datos en serie como la clave de las comunicaciones entre equipos
más usada actualmente se tiene el registro PISO  Parallel Input Serial Output y el registro SIPO 
Serial Input Parallel Output como puntas de lanza para darle una aplicación importante a este tema.
A continuación se presenta una lámina de una presentación del tema de registros realizada en la
Universidad Rey Juan Carlos en Madrid – España. En la misma se presentan los registros mencionados
y los dos restantes como son el Serie – Serie y el Paralelo - Paralelo

Presentación tomada de la Universidad Rey Juan Carlos en Madrid – España


https://www.urjc.es/
por medio de este link.
http://www.cartagena99.com/recursos/alumnos/apuntes/Tema6_SED_1415.pdf

Cartagena99 es una academia de cursos universitarios


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

REGISTRO PISO CON FLIP FLOP D

Figura 63.- Registro Paralelo - Serie con Flip Flop D de 4 bits

Foto tomada de:


http://www.kumbaya.name/ci1210/leccion10%20registros%20y%20contadores/Registros.htm

Lo que se señala en la figura 63 como salida de datos es lo que vendría a ser el pin de Tx
(Transmisión)…..luego de Tx lo que viene es el canal que se usará para transmitir los datos que puede
ser inalámbrico o cableado

Figura 64.- Registro Paralelo - Serie con Flip Flop RS convertido en FF D de 3 bits

Foto tomada de:


https://es.wikipedia.org/wiki/Archivo:Registro_paralelo_serie_sincrono.JPG

La figura 64 muestra básicamente el mismo circuito de la figura 63 pero ahora haciendo los FF D
usando FF RS. Los dos circuitos poseen multiplexores (MUX) y los dos, como debe ser, poseen dos
botones de selección (para decirlo de alguna manera) que se les conoce como
̅̅̅̅̅̅̅̅̅̅ 𝑜 𝐿𝑂𝐴𝐷
̅̅̅̅̅̅̅̅̅̅ , 𝐶𝐴𝑅𝐺𝐴
𝑊𝑅𝐼𝑇𝐸 ̅̅̅̅̅̅̅̅ 𝑦 𝑆𝐻𝐼𝐹𝑇 𝑜 𝐷𝐸𝑆 𝑑𝑒 𝐷𝐸𝑆𝑝𝑙𝑎𝑧𝑎𝑚𝑖𝑒𝑛𝑡𝑜. Con cero (0) se cargan los
datos en paralelo y con uno (1) se desplazan los bits cargados anteriormente.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Los datos transmitidos desde el registro PISO anterior llegan a un receptor (Rx) donde hay un
registro SIPO que recibe los datos y los manda en paralelo a donde se desee que sean procesados.

Figura 65.- Registro Serie - Paralelo con Flip Flop RS convertido en FF D de 5 bits

Foto tomada de:


https://es.m.wikipedia.org/wiki/Archivo:Registro_serie_paralelo.svg

Figura 66.- Registro Serie - Paralelo con FF D de 4 bits

Foto tomada de:


http://www.kumbaya.name/ci1210/leccion10%20registros%20y%20contadores/Registros.htm

Este registro SIPO cierra el sistema de comunicaciones de transmisión de datos. Los ejemplos
colocados aquí no llegan a 8 bits (1 byte) que es lo que normalmente se maneja en computación,
microprocesadores o transmisión inalámbrica de datos.

A continuación se mostrara la descripción de los registros PISO y SIPO usando lenguaje VHDL
con el software QUARTUS II de la empresa INTEL FPGA. El Chip FPGA usado es la cyclone II
EP2C5T144C8, posee 89 pines para manejar entradas y salidas de datos. Con esta se puede construir
dos registros….uno PISO y otro SIPO de 16 bits cada uno ó 2 bytes cada uno para hacer pruebas
de Transmisión de datos serial. Es una propuesta que es factible ya que la capacidad de la FPGA lo
permite.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Registro de entrada Paralelo y salida serie PISO

Figura 67.-
Diagrama del hardware que
se desea describir en HDL

Figura 68.- Descripción en VHDL del hardware del registro PISO


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 69.- Síntesis del circuito Registro Entrada Paralelo y salida Serie

Figura 70.- Señales de salida del registro paralelo – serie (PISO)

Figura 71.- Salida del registro PISO con Variación del tiempo de Shift - Load
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 72.- Salida del registro PISO con Variación del tiempo de Shift - Load

Nota: la figura 67, se muestra de nuevo abajo para resaltar que estructura es la correspondiente a un
circuito Secuencial Síncrono

También hay que agregar muy rápidamente, sin más comentarios, que esta estructura es la
correspondiente a un circuito asociado a un modelo de MOORE, que corresponde a Maquinas de
Estado Finito (FSM por sus siglas en Inglés). A continuación se presenta el modelo general de FSM de
MOORE

El circuito secuencial asociado a un modelo de MOORE fue Tomado de:


http://ocw.uc3m.es/tecnologia-electronica/electronica-digital/espanol_pdf/tema-6.-circuitos-
secuenciales-sincronos
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Registro de entrada serie y salida en paralelo SIPO

Figura 73.- Diagrama del hardware que se desea describir en HDL

Figura 74.- Descripción en VHDL del hardware del Tercer Ejemplo


Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Figura 75.- Síntesis del circuito Registro Entrada Serie y salida Paralelo

Figura 76.- Señales de salida para cada Flip Flop (FF) del registro
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Aplicaciones de los Circuitos Secuenciales


a) Retardo de tiempo, Divisores de frecuencia, frecuencímetros

b) Memorias RAM

c) Computadoras

d) Microprocesadores

Sistemas Secuenciales
Es la unión básicamente de todos los conceptos aquí vistos. Imagínese un equipo electrónico que
tenga en su interior Flip Flops, Contadores y Registros. La unión de todas esas partes es lo que
constituye un sistema.
No debe confundirse con sistemas secuenciales que tienen que ver con Control Industrial. No es el
tema de esta investigación. Aquí les dejo el libro DESARROLLO DE SISTEMAS SECUENCIALES
de ANTONIO RODRIGUEZ MATA; JULIAN COCERA RUEDA para que vean la diferencia
entre lo que propone el libro y los sistemas secuenciales en electrónica digital

Con este libro se pretende que el técnico en automatización disponga de la


información suficiente para poder abordar en todos sus aspectos el desarrollo de
un sistema de control secuencial para automatizar una máquina. Se centra
fundamentalmente en los sistemas realizados con autómatas programables.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

Tecnología más avanzada


 Diagrama de estados en Lógica Digital y en UML
Aquí lo que voy a agregar es que cuando busquen Diagrama de Estados en
google coloquen Diagrama de estados en Lógica Digital. Porque de lo contrario le
aparecerá Diagrama de Estados en UML. Que habla de estados pero no digitales.
 Máquina de Estados Finitos [FSM, por sus siglas en Inglés]
Es el tema que viene en futuras investigaciones. No lo manejo porque es el
tema que toca por aprender. Pero lo que les puedo decir es que existen
Maquinas de MOORE y de MEALY. Y me imagino que se usan para sistemas más
complejos donde las FPGAs se pueden usar con mucha comodidad por toda la
potencia de procesamiento que estos poseen
 Sistemas de mayor envergadura usando circuitos secuenciales
o Hay que tener en cuenta la palabra complejo…….mejor no la uso porque se
refiere a los sistemas complejos…..que es un concepto que va más allá de
lo que deseo decir. Mejor uso sistemas de mayor envergadura. Así me
evito hablar de CAOS, Sistemas DINAMICO y procesos cognitivos.
 Capacidad de procesamiento de señales de los circuitos secuenciales
Quedará para futuras investigaciones. Este futuro queda para después de mi
graduación como magister. Que es lo que estoy aspirando con esta investigación.
La cual cierra con Maquinas de Estado Finito (FSM por sus siglas en Inglés Finite
State Machine)
 Uso de diagramas de Estados
A partir de esta investigación serán usados constantemente en todos los
proyectos que se planteen
 Importancia de los diagramas de estados para sistemas más avanzados
Debido a la claridad que dan los diagramas de estados es necesario visualizar
la secuencia de pasos para los sistemas cuando su envergadura es grande
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

En Conclusión
1) Hay varios tipos de Sistemas Secuenciales, por la variedad de formas de cargar los datos
y su forma variante de poder obtener la salida ya sea en formato serie o paralelo. Todos
los sistemas secuenciales son síncronos. Tienen como punto de partida los Flip – Flops
(FF). Los sistemas secuenciales se pueden construir a base de FF, que vienen en IC o
comprarlos ya convertidos en IC comerciales más especializados. Todo esto apoyado
con diagramas de estados se hace más ilustrativo a la hora de diseñar.
2) A nivel de software se van a construir los sistemas secuenciales usando VHDL. Ese
programa o descripción que es la forma correcta de hablar en el mundo de las FPGAs
se inserta en el chip FPGA y se tiene un sistema secuencial construido a base de
códigos.
3) A todos los sistemas secuenciales les hace falta un reloj para darle su sincronismo. Este
reloj se puede construir en base a IC 555 ó a cristales de cuarzo
4) Los sistemas secuenciales que se pueden diseñar con FPGA son muy variados, y la
CYCLONE II de INTEL FPGA cuenta internamente con 4608 FF, y esta es la de
menor capacidad.
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

COMENTARIO
Con respecto a las descripciones VHDL realizadas en cada tipo de Flip Flop, Contador o registro de
desplazamiento se puede decir que está realizado cada ejemplo sin mayor explicaciones ya que como
siempre digo en cada una de las entregas anteriores que ya he hecho estoy en etapa de aprendizaje y
solamente el hecho de lograr la meta pautada en cada trabajo me es suficiente. Luego en otras
investigaciones posteriores se profundizará en cada tema. Por ejemplo en esta entrega se hacen los
diseños de los contadores desde cero. Haciendo las tablas de transiciones, mapas de Karnaugh y
circuito digital usando Flip Flops. Lo importante aquí es que cada ejemplo funciona correctamente y
cada uno está bien sustentado.

Por ejemplo el libro de Pong Chu cuya imagen de la


portada se presenta a la izquierda es referencia vital para
entender la base del hardware de los sistemas secuenciales a
los que se les va a aplicar una descripción en VHDL.

Espero con este material haber aportado a los interesados en conocer el tema de FPGA y VHDL

Seguimos en contacto

landaetabiz@gmail.com Ing Pedro Landaeta

LinkedIn https://www.linkedin.com/in/pedro-landaeta-17a7bb60/ Prof Jubilado con más de 25 años


de servicio en la Universidad Politécnica Territorial del Estado Aragua “FBF”
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

REFERENCIAS DE Internet

Flip Flops y Contadores


Concepto de Contador
https://es.wikipedia.org/wiki/Contador
https://www.ecured.cu/Contador_electr%C3%B3nico
https://www.arrow.com/es-mx/categories/counters-and-timers
http://personales.unican.es/manzanom/Planantiguo/EDigitalI/CONTG5.pdf

Contador en Circuitos Integrados (IC)

 IC 7490 contador de 0 a 9 en BCD


https://www.engineersgarage.com/electronic-components/74ls90-ic-datasheet
 Proyecto del contador de 0 a 9 usando el IC 7490
https://mikitronic.blogspot.com/2012/01/contador-digital-de-0-9.html

CIRCUITOS SECUENCIALES

 http://ocw.usal.es/ensenanzas-tecnicas/electronica/contenido/electronica/Tema10_SistemSecuencial.pdf

 http://www.gmcon.net/cirlog/con06.html

 Video que da buena información rápida y concreta de circuitos secuenciales


https://www.youtube.com/watch?v=CDxvSXwbXhI

 Lógica secuencial
http://docplayer.es/44341146-Unidad-iii-introduccion-a-la-logica-secuencial.html

 Dirección web para ahondar el estudio de Lógica Digital


https://es.slideshare.net/xdorzx/circuito-logicos-combinacionales-ver-2-41337509

SOFTWAREs PROPIETARIOS Y LIBRES

a) Video donde se observa paso a paso como se trabaja con el software TINA, usando MACROS y
descripciones en .vhd…..en este caso el TINA 8 
https://www.youtube.com/watch?v=joY7vOD9Gww

EASYEDA GRATUITO DESDE LA NUBE


 Dirección web de la página oficial de easyeda https://easyeda.com/es .
 La siguiente dirección te lleva a un video que explica muy bien la parte introductoria de uso de
éste software https://www.youtube.com/watch?v=zHumxCSP2zY
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

 Dirección web para aprender un poco más sobre EasyEda


https://www.redeszone.net/2016/02/19/conoce-easyeda-un-completo-software-de-simulacion-
de-circuitos-y-diseno-de-pcb-online/

LOGISIM
 Página web del gobierno de Canarias donde se le hace publicidad al software y se indica para donde
fue pensado su uso y las ventajas del software
http://www3.gobiernodecanarias.org/medusa/ecoescuela/recursosdigitales/2015/02/09/simulado
r-de-puertas-logicas-digitales-logisim/
 Página de descarga de LOGISIM http://www.cburch.com/logisim/index_es.html

LOGIC GATE SIMULATOR


 Para mayor información respecto al software Logic Gate Simulator
https://kolls.net/gatesim/

 Dirección de descarga del software Logic gate Simulator


https://osdn.net/projects/sfnet_gatesim/downloads/1.4/Logic%20Gate%20Simulator-1.4.zip/

 Mayor información sobre la licencia GPL


https://es.wikipedia.org/wiki/GNU_General_Public_License

DESIGNSOFT
 Página web de Design Soft fabricante de TINA software de simulación de Circuitos eléctricos y
electrónicos
http://www.designsoftware.com/home/demos/demo_tina
 Página web de Texas Instruments
www.ti.com

PROTEUS
 En esta dirección https://www.labcenter.com/downloads/ se baja el ejecutable que engancha la
descarga directamente desde los servidores de LabCenter y el resto es cuestión de tiempo
porque el software se instala completamente solo.

FPGA
 Introducción alos PLDs
http://www.intesc.mx/2017/04/introduccion-a-los-dispositivos-logicos-programables/
 Descripciones en VHDL de Flip - Flops https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/
 FPGA Libres
http://www.jornadassarteco.org/js2017/documents/Keynote3.pdf
 Grupo Español que trabaja con FPGA Libres
http://fpgawars.github.io/
 Las FPGAs Libres en la educación
https://juegosrobotica.es/icezum-alhambra-educacion/
Hecho por el Prof Pedro Landaeta. Prof Jubilado de la UPT de Aragua y Aspirante a MSc en la
UCV - Venezuela. Material Introductorio de FPGA, Enero 2019

 Software HDL del ecosistema PYTHON


http://www.myhdl.org/ .
 Investigación Centrada en el hecho de construir una interfaz teclado PS/2 – Monitor VGA
usando la tarjeta FPGA XSV-800. Título:
DISEÑO DE CIRCUITOS ELECTRONICOS DIGITALES USANDO FPGA
http://jesusandres246.wixsite.com/misitio/single-post/2016/05/05/Sin-T%C3%ADtulo

Registros
Láminas de Power Point correspondientes a descripciones en VHDL de registros de Desplazamiento
https://vdocuments.mx/registros-de-desplazamiento-56cc365a75e91.html
Estas láminas fueron hechas en Universidad Industrial de Santander – Colombia. Colocado
en Internet en Febrero de 2016

Esta página pertenece al prof Miguel Angel Perez Solano. Prof del Tecnologico Nacional de México
http://solano.orgfree.com/

Libro: Introducción a la Programación en VHDL


https://eprints.ucm.es/26200/1/intro_VHDL.pdf
Licencia copyleft

Descripción en VHDL de los contadores Johnson y de Anillo


https://allaboutfpga.com/vhdl-code-4-bit-ring-johnson-counter/

Tutorial de circuitos secuenciales


https://www.electronics-tutorials.ws/sequential/seq_5.html

Registros
Trabajo sobre el registro de desplazamiento universal 74194
https://es.scribd.com/doc/125964598/74194

LADELEC – Empresa Colombiana dedicada a dictar cursos y asesoría en electrónica


http://www.ladelec.com/teoria/electronica-digital/395-registros-de-desplazamiento-ttl-y-cmos

Universidad Nacional de Ingeniería - Nicaragua


https://electrouni.files.wordpress.com/2010/08/registros.pdf

Dirección web que contiene un pdf muy bueno en su explicación de registros en IC


http://solano.orgfree.com/DISE%D1O%20DIGITAL%20CON%20VHDL/Registros.pdf

Teoría básica de los contadores Johnson y de Anillo


https://www.ecured.cu/Archivo:ConJJ.jpg
Contenido de registros de desplazamiento tomado de las siguientes direcciones web:
https://es.scribd.com/doc/125964598/74194
http://www.ladelec.com/teoria/electronica-digital/395-registros-de-desplazamiento-ttl-y-cmos
https://electrouni.files.wordpress.com/2010/08/registros.pdf

La siguiente dirección tiene un universo de posibilidades para conseguir libros con licencias libres
https://openlibra.com/es/

You might also like