Commit Graph

276 Commits (94d01a97d997eec4749a3c165f8d5ff662af1b7a)
 

Author SHA1 Message Date
Anton Lydike 9278235e44 [decoder] fixed botched j immediate decoding 3 years ago
Anton Lydike 6351f1e84d [PrivRV32I] fixed bug with blt backwards jumps missing by one 3 years ago
Anton Lydike f14bd2b983 [PrivCPU, PrivRV32I] fixed bug where ebreaks where missed during debugging 4 years ago
Anton Lydike c1110b9ce3 [ElfLoader] better formatting for jump and load/store instructions 4 years ago
Anton Lydike 37910018b9 [PrivRV32I] finally correct parsing of load/store instruction args 4 years ago
Anton Lydike e4537f86d9 [PrivRV32I] implemented csrrwi instruction 4 years ago
Anton Lydike c770cc05cf [Priv Exceptions] added __str__ as __repr__ alias to CpuTrap to correctly format exceptions when printed 4 years ago
Anton Lydike 3e4920f5d9 [decoder] fixed bug when decoding add/sub instruction 4 years ago
Anton Lydike 849d5f4fc3 [decoder, ElfLoader] decoing an instruction now returns all args as int 4 years ago
Anton Lydike f9b0bac245 [Priv Exceptions] fixed constructor typo in TimerInterrupt 4 years ago
Anton Lydike 9424390b65 [decoder] Added mret, sret, uret, wfi instruction decoding support 4 years ago
Anton Lydike 198d14d5fb [Priv Exceptions] added __repr__ to CpuTrap class 4 years ago
Anton Lydike ca3b4099d4 [Priv] moved CSR constants to a separate file 4 years ago
Anton Lydike 79369889f4 [CSR] fixed method naming for _addr_to_name (now _name_to_addr) 4 years ago
Anton Lydike de261c4c43 [Priv] overhauled instruction architecture 4 years ago
Anton Lydike c963fe3989 [Priv] small fixes for overlooked things 4 years ago
Anton Lydike 85af9b992f [PrivCPU] overhaul of instruction cycle, adding more CSR interaction 4 years ago
Anton Lydike 7239212729 [CSR] adding virtual csr registers 4 years ago
Anton Lydike 6653ef7e7c [CPU] set correct MISA 4 years ago
Anton Lydike a1f29b9d97 [CPU] cleaned up constructor 4 years ago
Anton Lydike 49b59cd46a [CSR] added read/write checks and unified name to addr resuloution 4 years ago
Anton Lydike 291f44a192 [CSR] unknown csr names now fail without exception 4 years ago
Anton Lydike c4cd83701f [CSR, PrivCPU] Added csr callback registration through decorator 4 years ago
Anton Lydike 504407c0d9 [CSR] adding callbacks to each csr block 4 years ago
Anton Lydike db2b0b314b [PrivCPU, PrivRV32I] fix for relative jumps and branches 4 years ago
Anton Lydike 6bd5cd1598 [ElfLoader] better formatting for load and save instructions 4 years ago
Anton Lydike ed6912a060 [ElfLoader] added bounds check to elf loader and casting binary data to bytearray 4 years ago
Anton Lydike 55be71dcc3 [CSR] added time and timeh csr codes 4 years ago
Anton Lydike 3a79bfdada [ElfLoader] also loading .sdata and .sbss sections now 4 years ago
Anton Lydike 3f11cd84ca [decoder] fixed error with decoding slli type instructions 4 years ago
Anton Lydike f3959be843 [decoder] now returning instruction number as third return value 4 years ago
Anton Lydike 0475d8d384 [CPU] added instruction XLEN attribute to CPU class to support multiple instruction lengths 4 years ago
Anton Lydike c9a136d595 [instructions] fixed error in auipc command 4 years ago
Anton Lydike ee0aac30c4 [instructions] moved regs and mmu to properties to work with janky PrivCPU 4 years ago
Anton Lydike 1bdf2e6efe [mmu] fixed typo in docstring 4 years ago
Anton Lydike c48a5efee3 [cpu] fixed formatting to include cpu class extensions 4 years ago
Anton Lydike 15da68995c [priv] module now able to load and execute elf binaries 4 years ago
Anton Lydike a4735db388 Added a decoder module which can deocde some RV32I/M instructions
Some of them even correctly O.o
4 years ago
Anton Lydike 483a3f2416 Priv: [wip] implementing privileged architecture 4 years ago
Anton Lydike a2e206eaee renamed CPU.__run -> CPU._run, it's now overwriteable by subclasses 4 years ago
Anton Lydike e45655e4c0 fixed some syscall docs 4 years ago
Anton Lydike 1abdc79e5e added additional logging to invalid mmu data access, needs a better exception 4 years ago
Anton Lydike fa22d76f13 Added libstring and documentation for the general library 4 years ago
Anton Lydike 6bb0ad3793 Added libstring and documentation for the general library 4 years ago
Anton Lydike a645e6259a Added more debugger documentation 4 years ago
Anton Lydike 462639ade7 Added run_ins method to debugger to run an instruction 4 years ago
Anton Lydike 5d484f08cf Minor fixes like imports and edge-case handling 4 years ago
Anton Lydike f45a37e705 Added MMU.get_bin_containing 4 years ago
Anton Lydike ff5ba9a7ef made CPU.run_instruction public 4 years ago
Anton Lydike da895f00cd added stack field to cpu 4 years ago