Vous êtes sur la page 1sur 4

Testbench del Modelo VHDL

del RSCPU (Relatively Simple CPU)


Omar X. Avelar
ARQUITECTURA DE COMPUTADORAS (ESI 031B)
Instituto Tecnolgico y de Estudios Superiores de Occidente (ITESO)
Departamento de Electrnica, Sistemas e Informtica (DESI)

1. OBJETIVO
1). Estudiar un modelo de comportamiento (Behavioral Model)
del RSCPU escrito en lenguaje VHDL.
2). Familiarizarse con el uso de un simulador lgico (ModelSim)
Simular el funcionamiento del procesador RSCPU utilizando un
programa conocido y el simulador lgico ModelSim.

4. PROGRAMA (ENSAMBLADOR)

2. DESCRIPCIN VHDL DEL RSCPU

FIN:

ORG 0
LDAC x
MVAC
LDAC y
NOT
INAC
ADD
STAC z
JUMP FIN

El modelo en VHDL del procesador consta de dos archivos, uno


de ellos contiene el modelo del procesador rscpu_v16.vhd y el
otro testrscpu_v16.vhd es una cama de prueba que
presenta la conexin del procesador con una memoria y permite
la ejecucin de un programa de prueba.

x:
y:
z:

ORG 15h
DB 128
DB FFh
DB 0

INIT:

5. PROGRAMA (LENGUAJE MAQUINA)


3. DESCRIPCIN
1). Estudia el modelo VHDL del RSCPU (archivo rscpu_v16.vhd)
poniendo especial atencin en la manera como estn
construidas cada una de las instrucciones que ejecuta el
procesador.
2). Estudia el modelo VHDL de la cama de prueba del RSCPU
(archivo testrscpu_v16.vhd) poniendo especial atencin en
identificar los elementos que la componen y su funcin.
3). En una computadora en donde ya se tenga instalada la
herramienta y una licencia vigente de ModelSim completa el
tutorial para familiarizarte con el uso del simulador.
4). Una vez familiarizado con el modelo en VHDL del RSCPU y
con el simulador ModelSim estars listo para simular un
programa. El programa a simular es el mismo que se utiliz en la
prctica 1 y cuyo listado aparece a continuacin.

01
01
0A
00
00
00

15
15
08
05
00
80

00
00
02
0D
00
FF

03
0F
17
00
00
00

o bien traducida a bits:


"00000001",
"00010101",
"00000000",
"00000011",
"00000001",
"00010101",
"00000000",
"00001111",
"00001010",
"00001000",
"00000010",
"00010111",
"00000000",
"00000101",
"11010000",
"00000000",
"00000000",
"00000000",
"00000000",
"00000000",
"00000000",
"00001000",
"11111111"

Materia: Arquitectura de Computadoras - Pag 1 of 4


Guadalajara, Mexico // jue 19 de noviembre de 2009.

ITESO
Instituto Tecnolgico y de Estudios Superiores de Occidente (ITESO),
Perifrico Sur Manuel Gmez Morn 8585, Tlaquepaque, Jalisco, Mxico, C.P. 45604.
Departamento de Electrnica, Sistemas e Informtica (DESI).

Modelo en VHDL del RSCPU


Por: Omar X. Avelar

6. SIMULACIN
Con ayuda del programa ModelSim de Mentor Graphics podemos
simular y observar las formas de onda de nuestra descripcin
del RSCPU en VHDL.
Donde el tiempo de ejecucin de las capturas de esta pagina va
de 0 1.2 ms

Materia: Arquitectura de Computadoras - Pag 2 of 4


Guadalajara, Mexico // jue 19 de noviembre de 2009.

ITESO
Instituto Tecnolgico y de Estudios Superiores de Occidente (ITESO),
Perifrico Sur Manuel Gmez Morn 8585, Tlaquepaque, Jalisco, Mxico, C.P. 45604.
Departamento de Electrnica, Sistemas e Informtica (DESI).

Modelo en VHDL del RSCPU


Por: Omar X. Avelar

Mientras las capturas de esta pagina van de: 1.2 ms 2.4 ms.

Materia: Arquitectura de Computadoras - Pag 3 of 4


Guadalajara, Mexico // jue 19 de noviembre de 2009.

ITESO

Modelo en VHDL del RSCPU

Instituto Tecnolgico y de Estudios Superiores de Occidente (ITESO),


Perifrico Sur Manuel Gmez Morn 8585, Tlaquepaque, Jalisco, Mxico, C.P. 45604.
Departamento de Electrnica, Sistemas e Informtica (DESI).

Por: Omar X. Avelar

En estas capturas de pantalla podemos observar que las seales


de control concuerdan con las observadas de la practica 3 (Micro-operaciones en el RSCPU).
Algunos puntos que se pueden observar a simple vista es lo siguiente:
----------------------------------------------------------------------------------------- Address contiene los valores de acceso a memoria
como es el caso de fetch u otras lecturas de datos.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Z se enciende hasta que se invierte y (0xFF en este
caso).

----------------------------------------------------------------------------------------- El registro R solo se modifica cuando se hace la operacin MVAC (R AC, que en este caso es un 0x80.

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- El pcbus va de la mano con el irload y el drbus.

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- irload se activa cada fetch, como vemos la primera presenta un tiempo muerto respecto a la siguiente porque:
Es un LDAC el cual tambin necesita obtener los datos de direccin de 16 bits que van a continuacin.
Despus de esto se hace un fetch de un MVAC el
cual solo necesita traer la instruccin al IR y ejecutarla.

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Address es de 16 Bits como es de esperarse y se modifica cuando se requiere hacer accesos a memoria ya sea
para traer la siguiente instruccin (fetch) o traer datos
del programa.

------------------------------------------------------------------------------------------

7. CONCLUSIONES
El programa de ModelSim es bastante amigable y como muchos
simuladores de VHDL podemos observar claramente varias seales y datos al mismo tiempo en un tiempo determinado. Estas
herramientas son utiles al momento de disear para probar implementaciones y simular circuitos lgicos
Al parecer la descripcin de VHDL del RCSPU es correcta a simple vista (de acuerdo con nuestra prueba no extensiva), el simulador de ModelSim nos permite analizar las seales y como suceden los intercambios a nivel de RTL.

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Memory presenta la memoria de programa.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------El PC trae valores, y se puede ver como despus del primer


LDAC el PC es incrementado no en el que sigue pero en otros
dos mas (a causa de los 16 bits de direccin)
------------------------------------------------------------------------------------------

Materia: Arquitectura de Computadoras - Pag 4 of 4


Guadalajara, Mexico // jue 19 de noviembre de 2009.

Vous aimerez peut-être aussi