Microsex

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 19

UNIVERSIDAD MAYOR DE SAN ANDRÉS

FACULTAD DE INGENIERÍA
INGENIERÍA ELECTRÓNICA

MICROPROCESADORES
ETN – 801
MICROSEX Nº 02 – UNIDAD BÁSICA DE
CÁLCULO (UBC)
GRUPO L6

UNIV. : CUEVAS DELGADO MAURICIO RENÉ


NINA HUANCA CARLOS GABRIEL
DOCENTE : ING. MARCELO RAMÍREZ MOLINA

FECHA ENTREGA : 25-FEBRERO-2024

LA PAZ- BOLIVIA
INFORME # 1

1. OBJETIVOS

Los objetivos a cumplir en el desarrollo de este laboratorio son los siguientes:

 Unidad Básica de Cálculo (UBC) diseñada, implementada y en funcionamiento.

 UBC diseñada en VHDL.

 UBC implementada con FPGA.

 Operación exitosa del módulo UBC Microsex.

 Protocolo de pruebas ejecutado.

2. INTRODUCCIÓN

La UBC es una estructura digital combinacional multifuncional, capaz de ejecutar varias

operaciones sobre dos valores binarios de entrada, en respuesta a un arreglo de señales de

control. El sistema se muestra en la figura 1.

La estructura interna del dispositivo ha sido analizada y desarrollada en las clases previas.

La tabla funcional ha sido elaborada mediante una asignación de práctica de estudio. En

este sentido la estructura es una “caja blanca”.

Debe considerarse, asimismo, que dicha estructura está compuesta por un sumador de n

bits y dos etapas anteriores de control: paso y complemento a 1.

Figura 1: Unidad Básica de Cálculo (UBC).


3. ACTIVIDADES

Diseñar la electrónica de una UBC en VHDL.

Primero se debe crear un Sumador Completo de 1 bit y se lo hará con la siguiente tabla:

SUMADOR COMPLETO DE 1 BIT


࡭࢏ ࡮࢏ ࡯࢏࢔ ࡿ࢏ ࡯࢕࢛࢚
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1

Figura 2: Tabla de Verdad de un Sumador Completo de 1 bit.

De la tabla de verdad se deducen las siguientes ecuaciones:

Si = A i ⨁ B i ⨁ C ¿ ; C out = Ai ∙C ¿ + A i ∙ B i+ Bi ∙C ¿

Y con las ecuaciones se pasa a realizar el código en VHDL de un sumador de 1 bit:

Figura 3: Código en VHDL de un Sumador Completo de 1 bit.

El diagrama circuital del sumador de 1 bit será el siguiente:

Figura 4: Diagrama circuital (rtl viewer) de un Sumador Completo de 1 bit.


Mediante empaquetados se pasa a elaborar un sumador de 4 bits:

Figura 5: Código en VHDL de un Sumador de 4 bits.

El diagrama circuital del sumador de 4 bits será el siguiente:

Figura 6: Diagrama circuital (rtl viewer) de un Sumador de 4 bits.


Nuevamente mediante empaquetados se pasa a elaborar un sumador de 8 bits:

Figura 7: Código en VHDL de un Sumador de 8 bits.

El diagrama circuital del sumador de 8 bits será el siguiente:

Figura 8: Diagrama circuital (rtl viewer) de un Sumador de 8 bits.


Y por último se tiene el código completo en VHDL de la Unidad Básica de Cálculo (UBC):

Figura 9: Código en VHDL de la Unidad Básica de Cálculo (UBC).


El diagrama circuital de la UBC será el siguiente:

Figura 10: Diagrama circuital (rtl viewer) de la Unidad Básica de Cálculo (UBC).

El vector de prueba se lo verá en la resolución de los ejercicios que se implementarán y de

esa manera se verificará si el código realizado es el correcto.

Elaborar protocolo de pruebas:

Ejercicio # 1:

F=2 A−B−3=2 ∙(1710 )−1110−3=2010=14 16

Datos: A=1710=1116 ; B=1110=0 B 16

Se pasa a realizar la “secuencia descriptiva”:

.
Se pasa a llevar la secuencia realizada a una tabla:

Figura 11: Tabla de la secuencia descriptiva del Ejercicio # 1.

Ahora se utiliza la aplicación de Microsex para comprobar que lo resuelto es correcto:


Por último, se pasa a comprobar que el código en VHDL es el correcto con el vector de

prueba:

Figura 12: Vector de prueba de la Unidad Básica de Cálculo (UBC) para el Ejercicio # 1.

Ejercicio # 2:

F= A+2 B+2 D+1=−6710 +2 ∙ ( 1210) +2 ∙ ( 2010 ) +1=−2 10=FE 16

Datos: A=−6710=BD 16 ; B=1210=0 C 16 ; D=2010=1416

Se pasa a realizar la “secuencia descriptiva”:

Se pasa a llevar la secuencia realizada a una tabla:

Figura 13: Tabla de la secuencia descriptiva del Ejercicio # 2.


Ahora se utiliza la aplicación de Microsex para comprobar que lo resuelto es correcto:
Por último, se pasa a comprobar que el código en VHDL es el correcto con el vector de

prueba:

Figura 14: Vector de pruebas de la Unidad Básica de Cálculo (UBC) para el Ejercicio #

2.

REFERENCIAS

- Ramírez, D. (2022). Emulador Microsex. Obtenido de GITHUB:

https://github.com/korvec/microsex

- Ramírez, M. (2024). Guía de Laboratorio # 02 Microsex Nº 02 – Unidad Básica de

Cálculo. Bolivia.

- Ramírez M. y Ramírez D. (2022). Fundamentos de Arquitectura de Microprocesadores. La

Paz, Bolivia.
APÉNDICE

Apéndice A: Tabla Funcional de la Unidad Básica de Cálculo (UBC):

TABLA FUNCIONAL DE LA UBC


ࡿ૝ ࡿ૜ ࡿ૛ ࡿ૚ ࡿ૙ C R FUNCIÓN
0 0 0 0 0 0 0 Constante, borrar salida
0 0 0 0 1 0 1 Constante, uno positivo
0 0 0 1 0 0 -1 Constante, uno negativo
0 0 0 1 1 1 0 Constante, borrar salida
0 0 1 0 0 0 -1 Constante, uno negativo
0 0 1 0 1 1 0 Constante, borrar salida
0 0 1 1 0 1 -2 Constante, dos negativo
0 0 1 1 1 1 -1 Constante, uno negativo
0 1 0 0 0 0 ࢟ Leer y
0 1 0 0 1 ࢟ ൅ ૚ Incrementar y
0 1 0 1 0 0 െ࢟ െ૚ Complemento a 1 de y, invertir y
0 1 0 1 1 െ࢟ Complemento a 2 de y, negar y
0 1 1 0 0 ࢟ െ૚ Decrementar y
0 1 1 0 1 1 ࢟ Leer y
0 1 1 1 0 െ࢟ െ૛ Función compleja
0 1 1 1 1 1 െ࢟ െ૚ Complemento a 1 de y, invertir y
1 0 0 0 0 0 ࢞ Leer x
1 0 0 0 1 ࢞ ൅ ૚ Incrementar x
1 0 0 1 0 ࢞ െ૚ Decrementar x
1 0 0 1 1 ࢞ Leer x
1 0 1 0 0 0 െ ࢞ െ૚ Complemento a 1 de x , invertir x
1 0 1 0 1 െ࢞ Complemento a 2 de x , negar x
1 0 1 1 0 െ࢞ െ૛ Función compleja
1 0 1 1 1 1 െ࢞ െ૚ Complemento a 1 de x , invertir x
1 1 0 0 0 ࢞ ൅ ࢟ Sumar
1 1 0 0 1 ࢞൅ ࢟൅ ૚ Función compleja
1 1 0 1 0 ࢞ െ࢟ െ૚ Función compleja
1 1 0 1 1 ࢞ െ࢟ Restar y de x
1 1 1 0 0 െ࢞ ൅ ࢟ െ૚ Función compleja
1 1 1 0 1 ࢟ െ࢞ Restar x de y
1 1 1 1 0 െ࢞ െ࢟ െ૛ Función compleja
1 1 1 1 1 െ࢞ െ࢟ െ૚ Función compleja
Extraído de: Ramírez M. y Ramírez D. (2022). Fundamentos de Arquitectura de
Microprocesadores. La Paz, Bolivia.
CUADERNO DE LABORATORIO:
ç

También podría gustarte