29 | | * source:trunk/soclib/soclib/lib/src/iss/microblaze.h |
30 | | This defines the resources associated to the MicroBlaze along with a few |
31 | | minimal helper functions (or methods, as they call them) |
32 | | * source:trunk/soclib/soclib/lib/src/iss/microblaze.cpp |
33 | | This is a large switch (as opposed to calling insn execution through |
34 | | pointers to functions) and a few macros, as it is overall not worse to |
35 | | traverse a switch than to move from tag to tag, seen the context necessary |
36 | | to the execution of one instruction (at least in the MicroBlaze case). |
37 | | |
38 | | It is possible to compile a version of the MicroBlaze that issues the instruction |
39 | | address along with the instruction being executed by defining `MBDEBUG` at `1` line |
40 | | 35 of source:trunk/soclib/soclib/lib/src/iss/microblaze.cpp |
41 | | This is quite useful to check that the processor is really interpreting correctly a |
42 | | sequence of instructions. |
43 | | The MicroBlaze model is now able to connect to the GDB stub, so it is possible to |
44 | | use GDB for debugging software running on it. |
45 | | |
| 29 | * st231.hh, st231.cpp : Defines the class ST231iss which is the impementation of the ISS respecting the IssWrapper interface. |
| 30 | * cpu/st231_isa.hh, cpu/st231_isa.cpp : Implements the ST231 instruction set. |
| 31 | * cpu/bundle.hh, cpu/bundle.cpp : Implements the VLIW instruction bundle. |
| 32 | * cpu/exception.hh, cpu/exception.cpp : Implements the associated exceptions. |
| 33 | * cpu/soclib_symtab.hh, cpu/soclib_symtab.cpp : Implements the associated symbol table. |
| 34 | * cpu/cpu_tlmt.hh, cpu/cpu_tlmt.cpp : Implements the CPU including the 7-stage pipeline. |
| 35 | |