Unidad Básica de Aritmética
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.
Sumario
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. 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. 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. 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, OP=10 (10) (la not), 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
Acceso a los registros
La naturaleza de registros de solo escritura (MN y OP) y de solo lectura (XY) permite que, con una sola instrucción (B: 1011) se pueda escribir o leer los registros de la ABU al/del valor del registro K de la CPU.
Para el acceso a estos registros se envían los valores de los registros azules, UVW, de la CPU así como el valor de K. Los valores de los registros UVW indicarán cual de los seis registros (y dos valores constantes) se usarán, y el valor del registro de la CPU K sólo se usará para los registros de solo escritura; los otros registros, los de solo lectura, copiarán su valor al restro K de la CPU para finalizar la ejecución de esta instrucción.
La siguiente tabla especifica los registros de la ABU para los valores de los registros UVW de la CPU pasados.
U | V | W | Registro |
---|---|---|---|
0 | 0 | 0 | Siempre es 0 (solo lectura) |
0 | 0 | 1 | O (solo escritura) |
0 | 1 | 0 | P (solo escritura) |
0 | 1 | 1 | X (solo lectura) |
1 | 0 | 0 | Y (solo lectura) |
1 | 0 | 1 | N (solo escritura) |
1 | 1 | 0 | M (solo escritura) |
1 | 1 | 1 | Siempre es 1 (solo lectura) |