| 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 | |