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