Académique Documents
Professionnel Documents
Culture Documents
I. INTRODUCCIN
A. Arquitectura
ALTERIC es un procesador con arquitectura Von Neuman
2
de tres buses, de 32 bits de datos y 24 bits para direcciones de
memoria. La arquitectura la conforman la ALU (Arithmetic
and Logic Unit), los buses y los registros. (Figura 1)
Incorpora muchas de las caractersticas de procesadores
comerciales como el Motorola 68000, Zilog Z80 y National
16032, en cuanto manejo de interrupciones, comunicacin con
perifricos, manejo de instrucciones de 16 y 32 bits, modos de
direccionamiento, direccionamiento de memoria 24 bits y
algunas instrucciones especficas.
1) ALU
Es la unidad aritmtica y lgica del procesador, se encarga
de realizar las operaciones aritmticas, lgicas, rotaciones y
desplazamientos. Cuenta con dos entradas de 32 bits
conectadas a los buses internos ABUS y BBUS, una entrada
de acarreo de 1 bit desde la bandera de acarreo en el registro
de estados, una entrada de control de 5 bits y una salida de 32
bits conectada al OBUS y cuatro salidas de 1 bit
correspondientes a las banderas de acarreo, desbordamiento,
cero y negativo.
2) Buses
ALTERIC posee tres buses internos de 32 bits que son
ABUS, BBUS y OBUS. Posee dos buses externos, DBUS y
ADBUS que conectan al procesador con la memoria y los
perifricos. DBUS es un bus bidireccional de datos de 32 bits
y ADBUS es un bus de salida de 24 bits de direcciones.
Tambin posee otros buses didcticos como SBUS (bus
espa) de salida de 32 bits, por medio del cual se puede
conocer el contenido de todos los registros internos del
procesador; PBUS (bus de pasos) de salida de 8 bits por medio
del cual es posible conocer el paso del cdigo AHPL o estado
de la mquina de estados del procesador y PBUSIN (bus de
pasos de entrada) de entrada de 8 bits, en el cual el usuario
especifica en que paso del cdigo AHPL (A Hardware
Programming Language) desea que el bus espa comience a
trabajar en modo de parada.
3) Registros
El procesador tiene un conjunto de 17 registros. Los
registros encargados de guardar datos (32 bits) son AC, IR,
MD, RA, RB, RC, RD, RE y RF. Los registros encargados de
las direcciones (24 bits) son MA, IX, SP y PC. ALTERIC
tambin cuenta con el registro de estados SR de 6 bits, el cual
contiene las banderas C (acarreo), Of (desbordamiento), Z
(cero), N (negativo), ie (interrupciones) y sh (instrucciones de
16 bits). Adems posee el registro SHC de 5 bits, el MR de 2
bits, PR de 3 bits y el registro del bus espa SBR de 6 bits.
B. Conjunto de instrucciones
El procesador tiene un conjunto de 52 instrucciones. Entre
estas 17 son instrucciones de 32 bits, 25 de 16 bits y 10 que
pueden ser de 32 bits o de 16 bits.
Las 10 instrucciones que pueden ser de 32 o 16 bits, al ser
de 32 bits pueden tener modos de seleccin de posicin de
memoria como directo, indizado, inmediato, indirecto e
indizado indirecto. As mismo, al ser instrucciones de 16 bits
pueden tener modos de seleccin de posicin de memoria
como registro fuente e inmediato.
3
procesador regresar al paso siguiente al que hizo la parada,
retornar al modo de trabajo normal y la salida ESP se
desactivar. Si la seal Retor tiene un cero lgico y la seal
Datok est inactiva (cero lgico), el procesador permanecer
en el mismo paso, permitiendo as que el usuario est seguro
de los registros o registros que quiere observar en el bus espa.
Si la seal Retor tiene un cero lgico y la seal Datok est
activa (uno lgico) pues ya el usuario est seguro del dato que
carg en SBR, el procesador saltar al paso 104E donde
realiza la decodificacin al dato en el registro SBR y de
acuerdo a esto salta a un paso determinado. La seal ESP
permanece activa.
III.
IMPLEMENTACIN
4
activan con un cero lgico, ya que en las memorias
generalmente usadas por los estudiantes de las asignaturas de
Arquitectura de Procesadores I y II, estas seales se activan
con un cero lgico.
H. Instrucciones IMP y EXP
En ALTERIC, las direcciones asignadas a los perifricos
utilizados en las instrucciones del procesador varan desde
000C00h y 000C3Fh, controlando los 6 ltimos bits para
direcciones de los dispositivos. En E-RIC y PCSIM, las
direcciones asignadas a los perifricos varan entre 000000h y
00003Fh, las cuales al ser las primeras direcciones, son
posiciones de memoria ROM (Read Only Memory).
I. Instruccin RST
En ALTERIC, al ejecutarse la instruccin de reset por
software, el registro PC queda apuntando a la direccin
0007FFh, la cual es una direccin de memoria ROM. En ERIC y las versiones de PCSIM, al ejecutarse la misma
instruccin, el registro PC queda apuntando a la direccin
FFFFFFh, al ser esta la ltima direccin posible, lo ms
probable es que esa direccin sea ocupada por memoria RAM
(Random Access Memory).
J. Distribucin de los bits en los registros y buses
En ALTERIC, todos los buses y registros, excepto el
registro IR tienen al bit 0 como su bit menos significativo. En
E-RIC (exceptuando a PBUS) y las versiones de PCSIM,
todos los registros y buses tienen al bit 0 como su bit ms
significativo. Este cambio se hizo para facilitar al usuario la
interconexin entre el procesador y las memorias.
K. Atencin y retorno de las interrupciones
En PCSIM y E-RIC la mayora de los registros se guardaban
en la pila en el momento de atender una interrupcin.
ALTERIC solamente guarda en la pila el contenido de los
registros SR y PC.
L. Cdigo AHPL
ALTERIC tom como base el cdigo AHPL del procesador
E-RIC y debido a los cambios mencionados, fue necesario
aumentar y omitir algunos para cumplir con las
especificaciones del nuevo procesador.
En la ejecucin de algunas instrucciones, E-RIC saltaba a
los pasos 148, 150 o 151 del cdigo AHPL para luego regresar
al paso siguiente al interrumpir la secuencia. En ALTERIC
estos pasos fueron reemplazados y el procesador no salta a uno
de estos, sino que sigue una secuencia de pasos consecutivos.
V. CONCLUSIONES
Los resultados obtenidos fueron posibles en parte gracias a
trabajos de grado realizados con anterioridad y en los cuales se
basa ALTERIC.
As mismo, se espera que ALTERIC sea punto de partida
para desarrollos posteriores, profundizando y mejorando el
procesador didctico.
En el desarrollo de ALTERIC nos enfrentamos a la
AGRADECIMIENTOS
Queremos agradecer al Ing. Francisco Viveros, a la Ing.
Alejandra Gonzlez y a John Freddy Snchez por toda la
colaboracin recibida durante el desarrollo del proyecto.
REFERENCIAS
[1]
[2]
[3]
[4]
[5]
[6]
[7]
5
G.
Agustn,Ingeniera
del
software:
prctica
de
la
programacin.Addison-Wesley
Iberoamericana.
Wilmington,
Delaware, 1991.
[9] Frakes, Fox y Nejmeh,Software Engineering in the Unix/C
Environment. Prentice-Hall, Englewood Cliffs, New Jersey, 1991.
[10] P.A.V.Hall, Software Reuse and Reverse Engineering in Practice.,
Chapman & Hall, London, UK, 1992.
[8]