Màrius Montón
fc85c603d4
Two instances of CPU (RV32, RV64). Need to implement RV64 specific instructions.
2022-07-21 15:33:23 +02:00
Màrius Montón
acf38332d5
cast to u32
2022-07-08 12:02:30 +02:00
Màrius Montón
10ed1fa653
Changed to template classe to prepare for 64bits version
2022-02-20 11:23:58 +01:00
Màrius Montón
d1fa3c752e
Register class changed to templated to prepare for rv64 code
2022-02-06 11:41:37 +01:00
mariusmonton
d430b23fc6
No nested namespaces
2021-11-29 22:21:20 +01:00
mariusmonton
8d3d3bb35b
Added namespace to project
2021-11-29 20:37:20 +01:00
mariusmonton
fb84f197bf
Added namespace to project
2021-11-29 20:35:26 +01:00
mariusmonton
e2981d8a50
remove unused files
2021-11-28 22:26:49 +01:00
Màrius Montón
724cf258ce
merge with log branch. New log mechanism
2021-11-25 13:01:23 +01:00
Màrius Montón
e6bf4e30a4
Use spdlog library as logger.
2021-11-25 12:11:18 +01:00
Màrius Montón
2c4de6a427
Fixed types
2021-11-16 10:27:28 +01:00
Màrius Montón
61be24e608
changed pointer by reference
2021-11-16 10:26:42 +01:00
Màrius Montón
f7c9f47c3f
changed pointer by reference
2021-11-16 10:25:47 +01:00
Màrius Montón
5caf1b77c8
Rework on DMI mechanism. Limited memory to 16MB
2021-11-16 10:20:59 +01:00
Màrius Montón
a42877ab95
change types from uintX_t to std::uintX_t
2021-11-11 17:10:23 +01:00
Màrius Montón
d8a20db976
New function to increase PC by 2 (incPCby2) instead of a parameter to incPC function, could be faster code.
2021-11-11 14:52:50 +01:00
Màrius Montón
de1aa4c7a6
changed C array to std::array
2021-11-09 11:15:36 +01:00
Màrius Montón
1890b62f07
Changed registers to uint32_t.
...
Removed unused initializers.
Add cast from uint to int when necessary.
2021-11-08 09:49:08 +01:00
Màrius Montón
908b7e965d
Better output, change registers to unsigned int as base. Should be uint32_t?
2021-11-08 09:25:36 +01:00
Màrius Montón
e9e4543f72
Exception doesn't stop simulation
2021-11-08 09:24:43 +01:00
Màrius Montón
08d699d34e
If write to HOST, stop simulation
2021-11-08 09:21:59 +01:00
Màrius Montón
24c593e715
JALR cannot be const because calls RaiseException
2021-11-08 09:21:19 +01:00
Màrius Montón
56c5203899
Use real addresses in memory, extend memory size fo 0xFFFFFFFF
2021-07-04 22:47:47 +02:00
Màrius Montón
c9bab2ae27
Remove SC_MODULE macros, other trivial code clean-up
2021-06-30 15:37:18 +02:00
Màrius Montón
1777a3bc9a
code clean-up (using clang-tidy)
2021-04-26 00:20:29 +02:00
Màrius Montón
3b3813bd07
code clean-up (using clang-tidy)
2021-04-25 19:52:12 +02:00
mariusmonton
512e701f22
removed unused constructor parameters
2021-02-21 14:04:11 +01:00
mariusmonton
49103e5591
Prepare for debug
2021-02-21 13:49:05 +01:00
mariusmonton
4c60d6ae75
Prepare for debug
2021-02-21 13:48:41 +01:00
mariusmonton
9b7b5635d2
removed CPU64 files (unused)
2021-02-02 19:56:14 +01:00
mariusmonton
6286c640d9
Remove unused methods
2021-02-02 19:52:39 +01:00
Màrius Montón
03c95d2de3
removed duplicate code
2021-02-01 12:24:25 +01:00
Màrius Montón
22b7ec4c03
remove duplicated methods
2021-02-01 11:49:38 +01:00
Màrius Montón
cc9045341d
override keyword to virtual methods
2021-02-01 11:25:04 +01:00
mariusmonton
a48e552926
some methods now are const, reference class parameters, other minor changes
2021-01-23 11:44:10 +01:00
mariusmonton
cb63c65d7f
Implemented C_EBREAK instruction
2021-01-18 09:14:54 +01:00
mariusmonton
286dbf07a6
added const keyword to const methods
2021-01-17 15:40:47 +01:00
Màrius Montón
a019de5eb3
reduce variable scope
2021-01-15 15:51:03 +01:00
Màrius Montón
2ca86d4688
array init
2021-01-15 15:16:56 +01:00
Màrius Montón
3bf210556e
fixed initialization array error
2021-01-15 10:27:14 +01:00
Màrius Montón
9636a53624
Merge branch 'master' of https://github.com/mariusmm/RISC-V-TLM
2021-01-15 10:24:31 +01:00
mariusmonton
f7dbf106cc
trivial changes to increase performance
2021-01-15 09:09:52 +01:00
mariusmonton
a713e13705
missing header
2020-12-10 19:34:57 +01:00
Màrius Montón
1e9ca5c4e3
documentation
2020-11-12 11:02:26 +01:00
mariusmonton
abf47625a1
change fixed array for CSR to unordered map
2020-06-21 00:29:45 +02:00
mariusmonton
376d3e9e4f
better container class
2020-06-20 11:22:22 +02:00
Màrius Montón
6ff0da0313
new log file, same performance
2020-06-09 16:37:29 +02:00
Màrius Montón
5ee634e4b4
Major refactoring!
...
* A_Instruction, C_Instruction and M_Instruction renamed to *_extension
* These files decode and executes extensions
* These classes use a new base clase extension_base
* Execute & Instruction classes heavyly modified:
* Execute now is BASE_ISA and decodes and executes base ISA, Zicsr & Zifencei
* Instruction keeps the instruction being executed, nothing else
* Add memory interface to ISS to clear the code and the structure
* Removed "using namespace " directives, all classes are called using their namespace
* Added proper header to each file
* Added license to all files
2020-06-02 13:08:38 +02:00
Màrius Montón
95b9685ad9
removed creation of class every CPU loop. It should get better performance
2020-05-28 17:18:50 +02:00
Màrius Montón
2aaa83a064
new MSTATUH CSR register
2020-04-14 12:27:09 +02:00