Unidad Básica de Aritmética

De Wiki~eWa
Revisión del 00:10 7 may 2009 de EnWILLYado (discusión | contribuciones) (Página nueva: La '''ABU''' o '''Unidad Básica de Aritmética''' es una de las Unidades Básicas de la Arquitectura eWa. Es la encargada de realizar las '''operaciones boolea...)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Ir a la navegaciónIr a la búsqueda

La ABU o Unidad Básica de Aritmética es una de las Unidades Básicas de la Arquitectura eWa. Es la encargada de realizar las operaciones booleanas más básicas unarias y binarias: or, nor; nxor, nand; not; y xor, and.

Registros de la ABU

La ABU tiene seis registros, dos a dos, nombrados MN, OP, y XY.

Registros MN

Los registros MN son dos registros de la ABU que funcionan como valores de entrada de la función que se va a ejecutar. Generalmente se consideran de solo escritura.

Registros OP

Los registros OP son dos registros de la ABU que funcionan como indicadores de la operación a ejecutar. Generalmente se consideran de solo escritura.

Registros XY

Los registros XY son dos registros de la ABU que funcionan como valores de salida de la función ejecutada. Generalmente se consideran de solo lectura.

Operaciones de la ABU

La ABU permite la ejecución de cuatro instrucciones dobles, aunque solo son siete, ya que una de ellas (la not 10) es doble. La operación se indica con los valores OP, se toman como valores de entrada los de MN y se escribe la salida en los XY.

Operación O=0 y P=0 (00)

X = M or N;  >> 0 = 0,0 || 1 = 0,1 || 1 = 1,0 || 1 = 1,1
Y = M nor N; >> 1 = 0,0 || 0 = 0,1 || 0 = 1,0 || 0 = 1,1

Operación O=0 y P=1 (01)

X = M nxor N; >> 1 = 0,0 || 0 = 0,1 || 0 = 1,0 || 1 = 1,1
Y = M nand N; >> 1 = 0,0 || 1 = 0,1 || 1 = 1,0 || 0 = 1,1

Operación O=1 y P=0 (10)

Esta operación es la única unaria que tiene la ABU. Es la not.

X = not M;  >> 1 = 0 || 0 = 1
Y = not N;  >> 1 = 0 || 0 = 1

Operación O=1 y P=1 (11)

X = M xor N; >> 0 = 0,0 || 1 = 0,1 || 1 = 1,0 || 0 = 1,1
Y = M and N; >> 0 = 0,0 || 0 = 0,1 || 0 = 1,0 || 1 = 1,1