Logo Studenta

LABORATORIO DE DISPOSITIVOS LOGICOS PROGRAMABLES PRACTICA 2

¡Estudia con miles de materiales!

Vista previa del material en texto

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO
FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLÁN 
LABORATORIO DE PLD
 GRUPO: 1809 
REPORTE NO. 2
“OPERACIONES ALGEBRAICAS”
FECHA DE ELABORACION: 06-10-17
FECHA DE ENTREGA: 13-10-17
PROFESOR: HECTOR MIGUEL SANTOYO MORALES
ALUMNO: JORGE ANTONIO JIMENEZ BERNAL
SEMESTRE 2018-I
Tema:
2.3. Memorias de solo lectura (ROM’s).
Objetivos
· Implementar un circuito que calcule una operación matemática con 3 operadores binarios de 3 bits cada uno
· Programar la memoria EEPROM con la tabla de verdad de la operación matemática.
· Comprobar el funcionamiento del circuito.
Introducción
Debido a que las memorias ROM pueden almacenar valores en forma permanente en cada una de sus localidades, es posible calcular y almacenar los resultados de cualquier operación matemática.
A diferencia de los circuitos digitales combinacionales, los sistemas digitales implementados en PLD´s no requieren de la reducción en forma de funciones de Boole ya que solo se requiere la información para cada una de operaciones posibles y su inserción en cada localidad de la memoria.
En esta práctica se realizará la operación matemática: 
𝑆=(𝐴+𝐵)∗𝐶 
En donde los datos A, B y C se darán a través de 3 números de 3 bits cada uno y que serán las entradas del sistema digital, la salida S se obtendrá en un número de 7 bits puesto que el valor máximo posible será cuando A=7, B=7 y C=7 y por lo tanto el valor calculado será: 
𝑆=(7+7)∗7=98 
Hay que tener en cuenta que el valor de la localidad de memoria donde se almacenará el valor de salida, se determinará a partir del ordenamiento de los datos de entrada en la posición correspondiente de los bits sobre la dirección de entrada tal y como se muestra a continuación en la figura 2.2.
Por lo que la tabla correspondiente para implementar la operación, con la que se llenara el buffer es la siguiente:
.
.
.
Material 
1 Memoria AT28C16 
7 Resistencias de 330 Ω 
1 Barra de 8 leds ó en su defecto 7 leds individuales. 
Equipo 
1 Fuente de voltaje de CD. 
1 Multímetro 
1 Programador Universal 
1 Protoboard 
Procedimiento Experimental 
1. Se genero la tabla de 512 valores en el editor de buffer del software SuperPro. 
2. Se guardo el buffer en formato binario seleccionando la pestaña de Archivo/Guardar y asignando el nombre OPERACION, designe la carpeta de almacenamiento que desee. 
3. Se programo la memoria AT28C16 con archivo OPERACION.BIN 
4. Se Implemento el circuito de la figura 2.2. 
5. Se comprobaron las operaciones aritméticas del circuito proponiendo una tabla de 16 combinaciones de valores para el dato A, B y C. 
6. Se lleno la tabla 2.1 con los valores obtenidos del circuito y efectivamente , la “operación” se estaba realizando correctamente. 
	Dato A
	Dato B
	Dato C
	Resultado
	001
	111
	100
	00100000
	001
	111
	101
	00101000
	001
	111
	110
	00110000
	001
	111
	111
	00111000
	010
	000
	000
	00000000
	010
	000
	001
	00000010
	010
	000
	010
	00000100
	010
	000
	011
	00000110
	000
	000
	000
	00000000
	000
	000
	001
	00000000
	000
	000
	010
	00000000
	111
	111
	001
	00001110
	111
	111
	010
	00011100
	111
	111
	011
	00101010
	111
	111
	100
	00111000
	111
	111
	101
	01000110
Cuestionario
1. Diseñar un circuito que genere los valores de ordenadas de la recta
𝑦=2∗𝑥+8
La entrada del circuito es la variable independiente x, la cual será de 7 bits con un valor máximo de 120 y la salida del circuito es la variable dependiente y, la cual será de 8 bits.
El buffer para la memoria entonces será:
.
.
.
2. Grafique la salida y, considerando que la entrada x es una señal senoidal digitalizada.
3. Comparando ambas gráficas de entrada y salida y comente acerca de la función que realiza el circuito.
Conclusiones
En esta práctica, al igual que en la anterior , no se programó absolutamente nada , en realidad la memoria EEPROM es incapaz de hacer una operación por si misma , entonces lo que se hace es llenar el buffer con todos los resultados de las 512 combinaciones posibles de los Datos A, B y C , para que al introducir estos datos al bus de la memoria este muestre a su salida el resultado previamente guardado en ella , no hubo ningún conflicto en la realización de esta práctica.
Bibliografía
Apuntes de la materia.
Decimal XDecimal Y(X)Direccion en memoriaResultado en memoriaHEX
08000000000000100008
11000000001000010100A
21200000010000011000C
31400000011000011100E
416000001000001000010
518000001010001001012
620000001100001010014
722000001110001011016
824000010000001100018
92600001001000110101A
102800001010000111001C
113000001011000111101E
1232000011000010000020
1334000011010010001022
1436000011100010010024
1538000011110010011026
1640000100000010100028
174200010001001010102A
184400010010001011002C
194600010011001011102E
2048000101000011000030
1002080110010011010000D0
1012100110010111010010D2
1022120110011011010100D4
1032140110011111010110D6
1042160110100011011000D8
1052180110100111011010DA
1062200110101011011100DC
1072220110101111011110DE
1082240110110011100000E0
1092260110110111100010E2
1102280110111011100100E4
1112300110111111100110E6
1122320111000011101000E8
1132340111000111101010EA
1142360111001011101100EC
1152380111001111101110EE
1162400111010011110000F0
1172420111010111110010F2
1182440111011011110100F4
1192460111011111110110F6
1202480111100011111000F8
Dato ADato BDato C
(0+0)*0000000000000000000000000
(0+0)*1000000001000000000010010
(0+0)*2000000010000000000020020
(0+0)*3000000011000000000030030
(0+0)*4000000100000000000040040
(0+0)*5000000101000000000050050
(0+0)*6000000110000000000060060
(0+0)*7000000111000000000070070
(0+1)*0000001000000000000080100
(0+1)*1000001001000000010190111
(0+1)*20000010100000001002100122
(0+1)*30000010110000001103110133
(0+1)*40000011000000010004120144
000000011
000000100
000000101
000000110
000000111
000001000
S=(A+B)*C
000000000
000000001
000000010
000001001
000001010
000001011
000001100
Resultado en binarioR. en HexDecimal
Datos en Decimal
R. en decimalDato ADato BDato CDireccion en la Memoria
(7+5)*3111101011001001002449175336
(7+5)*4111101100001100003049275448
(7+5)*5111101101001111003C49375560
(7+5)*6111101110010010004849475672
(7+5)*7111101111010101005449575784
(7+6)*011111000000000000004967600
(7+6)*1111110001000011010D49776113
(7+6)*2111110010000110101A49876226
(7+6)*3111110011001001112749976339
(7+6)*4111110100001101003450076452
(7+6)*5111110101010000014150176565
(7+6)*6111110110010011104E50276678
(7+6)*7111110111010110115B50376791
(7+7)*011111100000000000005047700
(7+7)*1111111001000011100E50577114
(7+7)*2111111010000111001C50677228
(7+7)*3111111011001010102A50777342
(7+7)*4111111100001110003850877456
(7+7)*5111111101010001104650977570
(7+7)*6111111110010101005451077684
(7+7)*7111111111011000106251177798
111101111
111110000
111110001
111110010
111110011
111110100
111101011
111101100
111101101
111101110
111111011
111111100
111111101
111111110
111111111
111110101
111110110
111110111
111111000
111111001
111111010

Continuar navegando