Download generador de números primos - Universidad Santiago de Cali

Document related concepts
no text concepts found
Transcript
GUIAS ÚNICAS DE LABORATORIO
GENERADOR DE NÚMEROS PRIMOS
AUTOR: ALBERTO CUERVO
SANTIAGO DE CALI
UNIVERSIDAD SANTIAGO DE CALI
DEPARTAMENTO DE LABORATORIOS
DDEEPPAARRTTAAM
MEENNTTOO DDEE LLAABBOORRAATTOORRIIOOSS
GGUUIIAASS DDEE GGEENNEERRAADDOORR DDEE NNÚÚM
MEERROOSS PPRRIIM
MOOSS
GENERADOR DE NÚMEROS PRIMOS.
OBJETIVO
Un circuito secuencial sincrónico consiste de un grupo de flip-flops y compuertas
combinacionales. Como los registros están disponibles fácilmente como circuitos
integrados de mediano nivel de integración, es conveniente algunas veces emplear un
registro como parte de un circuito secuencial. El estado presente del registro y las
entradas externas determinan el estado siguiente del registro.
La parte combinacional del circuito secuencial puede ser implementada con compuertas,
dispositivos lógicos programables o con una memoria ROM.
El presente trabajo tiene como objetivo ejercitar al estudiante en la operación de una
memoria EEPROM utilizada para implementar la lógica combinacional de un circuito
secuencial. En esta práctica se efectúa el diseño de un circuito secuencial utilizando una
EEPROM para generar una secuencia de números primos.
PLANTEAMIENTO DEL PROBLEMA
Diseñar un circuito “Generador de Números Primos” de 4 bits como se muestra en la
figura, utilizando la EEPROM (41), el registro SRG4 (11) y cualquier otro circuito que
considere necesario del Módulo DIGI BOARD 2 del laboratorio.
Reloj
Generador de
Número
A del
teclado
Al display
de 7 segmentos
números primos
Salida de
números primos
El generador de números primos admitirá como entrada los pulsos de reloj como
cualquier circuito secuencial, y el número primo A de 4 bits que se obtendrá de uno de
los teclados (31) del módulo DIGI BOARD2.
La secuencia que se debe obtener a la salida serán los números primos:
2,3,5,7,2,3,5,7,2,3,5......etc. en forma contínua (un número por segundo) siempre que
el número A = 0 (0000). Si en A se coloca un número primo cualquiera, el generador
debe detenerse y quedarse con este número permanentemente en su salida.
La secuencia de números primos debe alcanzarse en forma automática, sin necesidad de
imponerle al circuito un estado inicial, esto es, tan pronto se coloque la alimentación de
DDEEPPAARRTTAAM
MEENNTTOO DDEE LLAABBOORRAATTOORRIIOOSS
GGUUIIAASS DDEE GGEENNEERRAADDOORR DDEE NNÚÚM
MEERROOSS PPRRIIM
MOOSS
energía al circuito, éste debe alcanzar la secuencia válida en forma automática después
de unos pocos pulsos de reloj.
El reloj debe ser obtenido del generador de pulsos de reloj (27) y el divisor de
frecuencias del tablero.
En el trabajo previo debe venir el circuito con todas sus conexiones bien especificadas,
así como el contenido de la EEPROM en cada localización de memoria
No se deben utilizar compuertas en el diseño de su circuito (lo más un simple inversor)
Trabajo en el laboratorio: Una vez grabada su EEPROM, colocar la energía y comprobar
que el circuito cumple con las especificaciones del trabajo previo.
SOLUCIÓN
En la página siguiente se muestra el circuito diseñado con el contenido en cada
localización de la memoria EEPROM previamente almacenado para generar la secuencia
de números primos establecida.
En la elaboración del circuito se utilizó un comparador de 4 bits para detener al
generador en el número primo que sea colocado en el teclado. Así, si en el teclado se
coloca el número 5 (0101), cuando el generador llegue a este número la salida del
comparador coloca al registro SRG4 en el modo 00 de no operación y se detendrá.
Por el contrario, si en el teclado se coloca el número 0000, el comparador coloca al
registro en el modo de carga en paralelo 11, almacenándose en el mismo el dato de
salida de la EEPROM con cada pulso de reloj.
Como se especifica que se debe generar un número primo por segundo, entonces la
frecuencia de los pulsos de reloj debe ser igual a 1 Hz.
DDEEPPAARRTTAAM
MEENNTTOO DDEE LLAABBOORRAATTOORRIIOOSS
GGUUIIAASS DDEE GGEENNEERRAADDOORR DDEE NNÚÚM
MEERROOSS PPRRIIM
MOOSS
0
1 A 0/7
1
2
0
M 0/3
1
EEPROM
reloj
WE
OE
CS
SRG4
C4
3,4D
3,4D
3,4D
3,4D
Teclado
Al display
de 7 segmentos
3 2 1 0
3 2 1 0
Comparador
P=Q
Dirección
000
001
010
011
100
101
110
111
Contenido de la
EEPROM
0010
0010
0011
0101
0010
0111
0010
0010
DDEEPPAARRTTAAM
MEENNTTOO DDEE LLAABBOORRAATTOORRIIOOSS
GGUUIIAASS DDEE GGEENNEERRAADDOORR DDEE NNÚÚM
MEERROOSS PPRRIIM
MOOSS
DDEEPPAARRTTAAM
MEENNTTOO DDEE LLAABBOORRAATTOORRIIOOSS
GGUUIIAASS DDEE GGEENNEERRAADDOORR DDEE NNÚÚM
MEERROOSS PPRRIIM
MOOSS