Sistema Digital Con Memoria Eprom
Sistema Digital Con Memoria Eprom
Sistema Digital Con Memoria Eprom
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
Introduccin. El artculo presente describe un proyecto que puede ser realizado por estudiantes de un primer curso sobre circuitos digitales. Tiene como objetivos reforzar los conocimientos que tienen los estudiantes de memoria EPROM, utilizando la misma en la obtencin de la raz cuadrada de un nmero entero de 2 dgitos y grabando la misma en el programador universal disponible en el laboratorio de Electrnica de la Universidad Santiago de Cali. Planteamiento del problema. Se debe disear un sistema digital que obtenga la raz cuadrada de un nmero entero N de dos dgitos, esto es, 0 N 99. El resultado debe poderse visualizar en un display de dos dgitos, por tanto tendr un dgito decimal. Por ejemplo si N = 87, entonces el resultado que aparecer en el display ser 9.3. El sistema digital constar de un teclado decimal para colocar el nmero N con su correspondiente display de 2 dgitos. Se deber utilizar una memoria EPROM 27C64 para tener almacenados o grabados los resultados en forma de tabla. La introduccin del nmero N en el sistema debe ser similar a como se introduce un nmero en una calculadora, esto es, si N=87, al presionar la tecla 8, este nmero aparece en la posicin de las unidades. Posteriormente al presionar la tecla 7, este nmero aparece en la posicin de las unidades y el 8 se corre a la posicin de las decenas. Diagrama funcional En la figura 1 se muestra el diagrama funcional del sistema digital que cumple con los requerimientos planteados.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
A7 A6 A5 A4 A3 A2 A1 A0
direccin datos
EPROM
D7 D6 D5 D4 D3 D2 D1 D0
registro decenas
registro unidades
.
N N Figura 1. Diagrama funcional
En la figura 1, al presionar una tecla decimal se activa la salida correspondiente del teclado. El codificador se encarga de generar en su salida O3O2O0 el cdigo BCD del nmero decimal y generar un pulso DAV: dato vlido cuando este cdigo ya se encuentre disponible en la salida. Como el pulso DAV es aplicado simultneamente al reloj de los dos registros, en el registro de las decenas se almacenar lo que est en el registro de las unidades y en este ltimo se almacenar la salida del codificador, es decir, el cdigo BCD de la tecla presionada. Las salidas de los dos registros se aplican a decodificadores BCD/7 Segmentos y las salidas de estos a displays para visualizar el nmero N tecleado.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
Las salidas de los dos registros, que no es ms que el nmero N en el cdigo BCD, se aplican a la entrada de direccin de una memoria EPROM para buscar la N. As, si N=87 (10000111), en esta direccin de memoria deber estar grabado o almacenado el dato 93 (10010011). Las salidas de la EPROM se aplican a decodificadores BCD/7 Segmentos y de estos a displays para visualizar la N. Ruido de rebote Un switch o interruptor mecnico genera en su salida lo que se conoce como ruido de rebote. Suponga que se tiene el circuito que se muestra en la figura 2.
voltaje en la salida +5v.
R
salida 1
t1
voltaje en ruido de la salida rebote
(b)
tiempo
presin
(a)
(c)
tiempo
Cuando el switch se encuentra abierto, la salida del inversor se encontrar en 0 lgico ya que su entrada se encuentra conectada a +5v. (1 lgico) a travs de la resistencia R como se muestra en la figura 2. Suponga que en el instante t1 se presiona el switch para cerrarlo. Al hacer contacto la lmina mvil con el pin 2 se coloca tierra (0 voltios) a la entrada del inversor colocndose la salida del mismo en 1 lgico como se muestra en la figura 2b. Sin embargo, al golpear la lmina mvil el punto 2, esta rebota encontrndose el switch cerrado y abierto repetitivamente hasta que definitivamente se quede cerrado, generndose por tanto la seal que se muestra en la figura 2c. La frecuencia con que rebota el switch es relativamente alta y el tiempo que demora el ruido de rebote en la mayora de los switches encontrados vara entre 10 y 20 milisegundos aproximadamente. Este ruido de rebote puede causar muchos inconvenientes en los sistemas digitales. As por ejemplo, si la seal en c se aplica a un contador, este contar muchos pulsos al presionar una sola vez un switch, etc.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
En el caso que nos ocupa, si la seal DAV tuviese la caracterstica que se muestra en la figura 2c, se aplicaran muchos pulsos a las entradas de reloj de los registros y si la tecla presionada es por ejemplo un 5, ambos registros almacenaran este nmero y en el display aparecera el nmero N = 55 con slo presionar el n 5 una sola vez. Supresin del ruido de rebote El ruido de rebote de un switch o una tecla puede ser eliminado utilizando un latch SR como se muestra en la figura 3.
R
PRESIONAR
SALIDA
Latch
+5v.
R
2 3
salida Q t1
+5v.
t (c)
(a)
(b)
Figura 3. (a) Latch SR, (b) latch SR con NANDs y (c) seal obtenida
En la figura 3, al no estar presionada la tecla, el punto 1 hace contacto con el punto 2 activando la entrada de Reset con un 0 y colocando Q=0. Si en t=t1 se presiona la tecla, el punto 1 hace contacto con el punto 3 activndose con un 0 la entrada de Set y colocando la salida Q=1. Si a continuacin la lmina mvil rebota separndose del punto 3, las dos entradas del latch se inactivan con 1 y no cambia de estado, obtenindose la seal que se muestra en la figura 3c sin ruido de rebote. Teclado decimal De acuerdo con el anlisis anterior, el teclado decimal sin ruido de rebote consistir de 10 teclas del 0 al 9 con diez circuitos biestables (latch) como se muestra en la figura 4.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
+5v. 10Kohmios
0 0
Tecla 0
+5v. 10Kohmios 10Kohmios
1 1
Tecla 1 ver lista de elementos
10Kohmios +5v.
+5v. 10Kohmios
9 9
Tecla 9
+5v. 10Kohmios
Codificador del teclado. Este circuito tiene como funcin la de generar el cdigo BCD en dependencia de la entrada que se active, esto es, de la tecla que sea presionada. Tambin la de generar el pulso DAV cuando el cdigo BCD est disponible en la salida O3O2O0 Para encontrar el circuito del codificador del teclado se puede construir la tabla 1 que se muestra.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
Entradas al codificador I3 0 0 0 1 0 0 0 0 0 0 I4 0 0 0 0 1 0 0 0 0 0 I5 0 0 0 0 0 1 0 0 0 0 I6 0 0 0 0 0 0 1 0 0 0 I7 0 0 0 0 0 0 0 1 0 0 I8 0 0 0 0 0 0 0 0 1 0 I9 0 0 0 0 0 0 0 0 0 1
O 0 0 1 0 1 0 1 0 1 0 1
Tabla 1. Tabla del codificador De la tabla anterior se pueden obtener las siguientes funciones para las salidas del codificador: O3 = I8 + I9 O2 = I4 + I5 + I6 + I7 O1 = I2 + I3 + I6 + I7 y O0 = I1 + I3 + I5 + I7 + I9 Con las funciones anteriores se puede obtener el circuito que se muestra en la figura 6. Como el pulso DAV debe generarse con cualquier tecla que se presione, esta salida ser una OR de todas las entradas al codificador. La funcin de los 4 inversores ser demorar este pulso (4 veces la demora de propagacin de un inversor) para que ocurra cuando el codigo en BCD en las salidas O3O2O1O0 se encuentre disponible y estable. Los circuitos integrados requeridos para este codificador sern: 2 circuitos integrados de 2 compuertas OR de 4 entradas, 1 circuito integrado de 4 compuertas OR de 2 entradas, 1 circuito integrado de 1 compuerta OR de 8 entradas y 1 circuito de 6 inversores.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
codificador
I0 I1 I2 I3 I4 I5 I6 I7 I8 I9
DAV
O3
O2
O1
O0
D
SL SER 7
S1 S0
0 0 1 1 0 1 0 1
CLR
reloj QA 15
74LS194A QB
14
no opera desplaza a la derecha desplaza a la izquierda carga o almacena los datos de entrada
QC
13
QD
12
Descripcin: A,B,C,D : entradas de datos en paralelo QA,QB,QC,QD : salida de datos CLR : entrada asincrnica de borrado, se activa con 0 SR SER : entrada para desplazamiento a la derecha SL SER : entrada para desplazamiento a la izquierda S1S0 : Modo de operacin
Las operaciones anteriores se efectan en sincronismo con el flanco positivo de los pulsos aplicados a la entrada de reloj
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
S1 S0 DAV
D
SL SER
SR SER
S1 S0
D
SL SER
SR SER
CLR
74LS194A
CLR
74LS194A
QA QB QC QD
QA QB QC QD
A0
Decodificador BCD/7 segmentos y display. El decodificador BCD/7 segmentos que se debe utilizar depender del tipo de display que se utilice, esto es, si es de nodo comn o de ctodo comn. Se utilizar un display de nodo comn como se muestra en la figura 8, por lo que se utilizar el circuito integrado 7447A el cual es un decodificador de colector abierto BCD/ 7 segmentos cuyas salidas se activan con 0. (La salida activa queda conectada a tierra a travs de un transistor)
dp
dpa b c d e f g a f g dp b
LEDs c
e d
comn
comn
(a)
(b)
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
EPROM
D7 D6 D5 D4
D3 D2 D1 D0 QA QB QC QD
6
3 4 5
Registros QA QB QC QD
6
3 4 5
220 0hmios
6 1 13 10 8 7 2 11
dp a b c d e f g
dp a b c d e f g
4.7
KOHMIOS
NTE3050
comn
14
NTE3050 comn
+5v.
Memoria EPROM El circuito integrado que se utiliza para la memoria EPROM es el 27C64, el cual consiste de una memoria EPROM de 8 Kbytes con 13 lneas de direccin como se muestra en la figura 10.
de los registros
decenas unidades
QA QBQCQDQA QBQCQD
+5v.
2 23 21 24 25 3 4 5 6 7 8 9 10 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
direccin
20 22
28 1 27
CE OE
EPROM 27C64
datos de salida O7 O6 O5 O4 O3 O2 O1 O0 D7 D6 D5 D4 D3 D2 D1 D0
19 18 17 16 15 13 12 11
C B A decenas
C B A unidades
a los decodificadores BCD/ 7 segmentos de la raz cuadrada de N Figura 10. Memoria EPROM
Las entradas CEy OEestn conectadas a tierra para habilitar el circuito y las salidas respectivas del mismo. Como solamente son necesarias 8 lneas de direccin (A7A6A0), el resto de las lneas son conectadas a tierra, por lo que solamente estarn disponibles 256 localizaciones y de estas slo se grabarn datos en 100. Para la grabacin de los datos en la memoria EPROM se utilizar el programador universal marca XELTEK disponible en el laboratorio de la universidad Santiago de Cali conectado al puerto paralelo de la impresora de un computador personal habilitado para este objetivo. Despus de conectar la energa elctrica al programador, abra el programa SuperPro Lx(L+), asegurndose de no tener conectado todava ningn circuito integrado al programador universal. Si no aparece ningn error en la pantalla del computador, haga
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
click en Select para seleccionar la memoria 27C64. Inserte su dispositivo en la base disponible en el programador y haga click en Edit para introducir los datos que deben ser grabados en cada direccin de memoria. Las direcciones de memoria en la EPROM 27C64 van de 0000hex a 1FFFhex. Una vez introducidos los datos, la ventana de Buffer Edit aparecer como se muestra en la tabla 2. DIRECCIN
00000000 00000010 00000020 00000030 00000040 00000050 00000060 00000070 00000080 00000090 000000A0 000000B0 000000C0 00 31 45 55 63 70 77 84 89 95 FF FF FF 10 33 46 56 64 71 78 84 90 96 FF FF FF 14 35 47 57 65 72 79 85 91 96 FF FF FF 17 36 48 57 66 73 79 85 91 96 FF FF FF 20 37 49 58 66 73 80 86 92 97 FF FF FF 22 39 50 59 67 74 81 87 92 97 FF FF FF 24 40 51 60 68 75 81 87 93 98 FF FF FF 26 41 52 61 69 75 82 88 93 98 FF FF FF
HEX
28 42 53 62 69 76 82 88 94 99 FF FF FF 30 44 54 62 70 77 82 89 94 99 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
etc. Tabla 2. Ventana de Buffer Edit Las direcciones y los datos en la tabla anterior se encuentran en hexadecimal. En cada fila hay 16 localizaciones, correspondiendo la direccin que aparece en la columna de la izquierda a la direccin de la primera localizacin de la fila. As por ejemplo, en la tercera localizacin de la primera fila aparece el nmero 14 porque esa localizacin tiene por direccin el nmero 0002 y 2 = 1.4. Cuando en una localizacin no se graba ningn dato aparece FF. Todas las localizaciones de todas las filas comenzando en la direccin 00A0 contendrn FF por lo que haga click en Fill. Coloque 00A0 en Fill Start Adress, 1FFF en Fill End Adress y FF en Fill Data. Luego de esta operacin haga click en OK para llenar toda la tabla. Una vez terminado de introducir todos los datos, haga click en Prog para que su memoria quede grabada con los datos introducidos.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
Lista de elementos. En la tabla 3 se relacionan los elementos utilizados para el montaje del sistema digital descrito. Lista de elementos Item Referencia Descripcin Cant Comentarios 1 74LS00 4 NAND de 2 entradas 5 Para eliminar ruido de rebote 2 CD4071B 4 OR de 2 entradas 1 Para el codificador del teclado 3 CD4072B 2 OR de 4 entradas 2 Para el codificador del teclado 4 CD4078B 1 OR/NOR de 8 entradas 1 Para el codificador del teclado 5 CD40106B 6 Inversores tipo Schmitt 1 Para el codificador del teclado 6 74LS194A Registro de 4 bits 4 7 7447A Decodificador BCD/ 7seg. 4 Salidas de colector abierto 8 NTE3050 Display de nodo comn 4 9 27C64 Memoria EPROM 1 Capacidad de 8 Kbytes 10 Resistencia 220 , w 29 11 Resistencia 10 K , w 20 12 Resistencia 4.7 K , w 2 13 Teclado decimal 1 Teclas: 1 polo, 2 posiciones 14 Fuente de energa 1 Salida estabilizada en +5 v. 15 tarjeta de circuito impreso 1 16 cables, estao, etc. Tabla 3. Lista de elementos. En la figura 11 se muestran los circuitos integrados de las compuertas donde se pueden identificar los nmeros de los pines de los mismos. Consideraciones Finales. En los momentos de redactar el presente artculo, los estudiantes han manifestado ciertas dificultades para conseguir en el mercado el teclado decimal con teclas de 1 polo, 2 posiciones. Para obviar este inconveniente se podra utilizar el circuito que se muestra en la figura 12.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
14
13
12
11
10
14
13
12
11
10
VDD
VDD
NC
Vss 7
NC VSS
1 2 3 4 5 6 7
CD4071B
14 13 12 11 10 9 8 14 13
CD4072B
12 11 10 9 8
VDD
NC
VDD
NC VSS
1 2 3 4 5 6 7 1 2 3 4 5 6
VSS
7
CD4078B
CD40106B
VP VN
salida salida tiempo
IIL
tecla n
tiempo
Si fuese TTL, la corriente IIL del mismo contribuira a cargar al capacitor ms rpidamente cuando la tecla se abre. En un circuito CMOS la corriente IIL es prcticamente cero. Como la duracin del rebote en la mayora de los switches encontrados en la prctica vara entre 10 y 20 milisegundos, se utiliza una constante de tiempo RC = 0.47x100 = 47 milisegundos, lo suficientemente larga para lograr este objetivo. De utilizarse esta alternativa, no habra necesidad de utilizar el latch que se muestra en la figura 3. Similarmente se podra tambin utilizar el circuito integrado CD40147B como codificador del teclado. Como se muestra en la figura 13, ste es un codificador de prioridad de 10 entradas y 4 salidas BCD, es decir, a la salida se obtiene el cdigo BCD de acuerdo a la entrada ms prioritaria que se active con un 1 lgico. Se debe sealar que este circuito opera con lgica negativa, por lo que en el caso de ser utilizado se deben hacer las modificaciones pertinentes.
15 11 12 13 1 2 3 4 5 10
bit de mayor 0 orden 1 D 2 14 3 C pin 8: tierra 4 CD40147B 6 pin 16: +5voltios 5 B 7 6 7 9 A 8 bit de menor 9 orden
Conclusiones En el presente artculo se ha descrito un sistema digital para obtener la raz cuadrada de un nmero entero de dos dgitos utilizando una memoria EPROM en forma de tabla, en la cual las races cuadradas de los nmeron estn grabadas en forma permanente. Se debe observar que nada ms se necesita una memoria de 256 bytes (8 lneas de direccin). La memoria 27C64 fue utilizada por su disponibilidad en el laboratorio de Electrnica de la Universidad Santiago de Cali. Bibliografa 1. Vctor P. Nelson, H. Troy Nagle, Bill D. Carroll y J. David Irwin, Anlisis y Diseo de Circuitos Lgicos Digitales, Prentice-Hall Hispanoamericana S.A., 1996 2. M. Morris Mano, Lgica Digital y Diseo de Computadores, Editorial Dossat S.A., 1982 3. J.F. Wakerly, Digital Design Principles and Practices, 2 ed., Englewood Cliffs, NJ: Prentice-Hall, 1984.
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM
DEPARTAMENTO DE LABORATORIIOS DEPARTAMENTO DE LABORATOR OS GUIIAS DE LABORATORIIO DE SIISTEMA DIIGIITAL CON MEMORIIA EPROM GU AS DE LABORATOR O DE S STEMA D G TAL CON MEMOR A EPROM