Description of APEmille Microcode [hs 7/2000]
A jex file contains different types of records:
1) Data initialization records to specify the initialization
(at load time of the program) of Jn or Tz Data Memory
locations
2) Initialization of Tz and Jn program memory, i.e. the
microcode of the program.
The jex records can be visualized by `disjex file[.jex]`
Microcode lines are displayed in the following format:
PMA: Tz-microcode Jn-microcode
where "Tz-microcode" has the following (fixed) fields
AGU DISP ALU T0 T1 T2 T3 T4 FLOW IO
and "Jn-microcode" has the following fixed fields
followed by the optional fields
For instance, a NOP line looks as follows:
00000: . 0 . 0 0 0 0 0 . . 0 0 0 0 0 CC
PMA | <------------Tz-microcode------------> | <----- Jn-microcode------>
The meaning of the various fields is:
AGU = opcode for Address Generation Unit
DISP = Displacement
AGU = opcode for Arithmetic Logical Unit
T0 = Address for Port 0 of Tz Register file
...
T4 = Address for Port 4 of Tz Register file
FLOW = opcode for flow control
IO = opcode for IO at Register File Port 4
J0 = Address for Port 0 of Jn Register file
...
J4 = Address for Port 4 of Jn Register file
FILU = opcode Floating-point Integer Logical Unit
WC = Where condition code
MC = Memory controller code
LUT = Look-up Table and IO code for Jn
RD = Refresh Disable
The values of the various opcodes can be found in microcidici.ps
from http://www.ifh.de/apemilledoc/Run_mode_index.html