Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 19:16:23 +0000 (20:16 +0100)]
Revert "move coresync clock synchronisation into HDLRunner"
This reverts commit
8a51f6944fa6c5185285b0139f5b419fb68aa145.
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 18:03:45 +0000 (19:03 +0100)]
call StateRunner constructor, to add to StateRunner class Factory
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 17:59:23 +0000 (18:59 +0100)]
more TODO comments
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 17:59:15 +0000 (18:59 +0100)]
move coresync clock synchronisation into HDLRunner
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 17:53:23 +0000 (18:53 +0100)]
whoops missed one function which should be a yield (of nothing)
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 17:51:53 +0000 (18:51 +0100)]
use yield from on StateRunners
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 15:34:03 +0000 (16:34 +0100)]
add comments, remove unneeded code
https://bugs.libre-soc.org/show_bug.cgi?id=686#c73
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 15:23:59 +0000 (16:23 +0100)]
move pc_i and svstate_i to HDLRunner
klehman [Sat, 25 Sep 2021 14:46:53 +0000 (10:46 -0400)]
add end_test, minor cleanup, added hdlrun.cleanup() call
klehman [Sat, 25 Sep 2021 14:32:33 +0000 (10:32 -0400)]
moved pc_i and sv_state to constructor, remove hdl_state_run
klehman [Sat, 25 Sep 2021 14:07:52 +0000 (10:07 -0400)]
change over run_hdl_state to TestRunner class
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 13:02:15 +0000 (14:02 +0100)]
add dummy call to simrun and end_test()
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 12:49:52 +0000 (13:49 +0100)]
code-comments and dummy functions
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 12:43:10 +0000 (13:43 +0100)]
move contents of run_sim_state into SimRunner run_test function
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 12:35:36 +0000 (13:35 +0100)]
add a SimRunner prepare_for_test and run_test function
klehman [Sat, 25 Sep 2021 12:16:18 +0000 (08:16 -0400)]
start of HDLRunner
Luke Kenneth Casson Leighton [Fri, 24 Sep 2021 19:51:10 +0000 (20:51 +0100)]
create initial SimRunner
Luke Kenneth Casson Leighton [Fri, 24 Sep 2021 17:13:01 +0000 (18:13 +0100)]
add shiftrot2 tests to test_issuer.py
Luke Kenneth Casson Leighton [Thu, 23 Sep 2021 22:55:35 +0000 (23:55 +0100)]
move pc_i and svstate_i inside if self.run_hdl
Luke Kenneth Casson Leighton [Thu, 23 Sep 2021 22:49:57 +0000 (23:49 +0100)]
more comments
Luke Kenneth Casson Leighton [Thu, 23 Sep 2021 22:47:32 +0000 (23:47 +0100)]
add in a stack of comments for identifying match-points with StateRunner
Luke Kenneth Casson Leighton [Thu, 23 Sep 2021 22:40:04 +0000 (23:40 +0100)]
add option to run ISACaller Sim (or not)
Luke Kenneth Casson Leighton [Thu, 23 Sep 2021 22:31:41 +0000 (23:31 +0100)]
add a new run_hdl parameter to TestRunner
Luke Kenneth Casson Leighton [Wed, 22 Sep 2021 20:52:26 +0000 (21:52 +0100)]
completely borked python segfault, workaround to copy last sim state
Luke Kenneth Casson Leighton [Wed, 22 Sep 2021 20:35:14 +0000 (21:35 +0100)]
add test of expected results against last sim state
Luke Kenneth Casson Leighton [Wed, 22 Sep 2021 20:34:52 +0000 (21:34 +0100)]
whoops broken run_sim_state function
Luke Kenneth Casson Leighton [Wed, 22 Sep 2021 19:18:53 +0000 (20:18 +0100)]
split out HDL from Simulator into separate functions
Luke Kenneth Casson Leighton [Wed, 22 Sep 2021 18:40:30 +0000 (19:40 +0100)]
split out HDL test from Simulator test,
save two separate lists of TestStates
compare them *after* the two simulations have been run
should be possible to completely separate out, now
Tobias Platen [Wed, 22 Sep 2021 18:02:05 +0000 (20:02 +0200)]
Merge branch 'master' of ssh://git.libre-riscv.org:922/soc
Tobias Platen [Wed, 22 Sep 2021 18:00:58 +0000 (20:00 +0200)]
compldst_multi: add op_is_dcbz signal
Jacob Lifshay [Wed, 22 Sep 2021 17:58:58 +0000 (10:58 -0700)]
fix mul fu test helper.py not passing immediate to pia for mulli
Tobias Platen [Wed, 22 Sep 2021 16:45:59 +0000 (18:45 +0200)]
whitespace cleanup
Luke Kenneth Casson Leighton [Wed, 22 Sep 2021 15:56:09 +0000 (16:56 +0100)]
alter setup_tst_memory to take a test.mem rather than take a Sim object
*containing* a Mem
Luke Kenneth Casson Leighton [Wed, 22 Sep 2021 15:38:40 +0000 (16:38 +0100)]
whoops forgot to do with self.subTest()
Tobias Platen [Tue, 21 Sep 2021 18:48:27 +0000 (20:48 +0200)]
Merge branch 'master' of ssh://git.libre-riscv.org:922/soc
Tobias Platen [Tue, 21 Sep 2021 18:47:33 +0000 (20:47 +0200)]
testcase: add mmu, link mmu and dcache together
klehman [Tue, 21 Sep 2021 18:20:31 +0000 (14:20 -0400)]
changed test_runner to use state mem compare
klehman [Tue, 21 Sep 2021 18:19:10 +0000 (14:19 -0400)]
changed over to use state mem compare
Tobias Platen [Tue, 21 Sep 2021 17:49:19 +0000 (19:49 +0200)]
Merge branch 'master' of ssh://git.libre-riscv.org:922/soc
Tobias Platen [Tue, 21 Sep 2021 17:49:01 +0000 (19:49 +0200)]
comment out lines that cause test_compldst_multi_mmu.py to hang
Luke Kenneth Casson Leighton [Tue, 21 Sep 2021 14:46:16 +0000 (15:46 +0100)]
convert HDLState.get_mem() to a dictionary of memory state results
Tobias Platen [Mon, 20 Sep 2021 18:34:31 +0000 (20:34 +0200)]
update test_compldst_multi_mmu.py
Luke Kenneth Casson Leighton [Mon, 20 Sep 2021 17:33:38 +0000 (18:33 +0100)]
use get_l0_mem in HDLState to get memory data
Cesar Strauss [Sun, 19 Sep 2021 20:13:18 +0000 (17:13 -0300)]
Fix rel_o/go_i signal names
Cesar Strauss [Sun, 19 Sep 2021 20:03:48 +0000 (17:03 -0300)]
Replace "Display" with "print" on simulation process
The fallback on nmutil doesn't work with "yield Display".
Cesar Strauss [Sun, 19 Sep 2021 13:38:46 +0000 (10:38 -0300)]
Fix import
Cesar Strauss [Sat, 18 Sep 2021 20:56:41 +0000 (17:56 -0300)]
Use a pre-compiled version of maturin
Should save compile time on the Gitlab CI runner.
Luke Kenneth Casson Leighton [Sat, 18 Sep 2021 15:35:59 +0000 (16:35 +0100)]
allow individual unit tests to be named in test_issuer.py
Luke Kenneth Casson Leighton [Sat, 18 Sep 2021 15:05:09 +0000 (16:05 +0100)]
always store full memory state (including zeros)
klehman [Sat, 18 Sep 2021 11:44:01 +0000 (07:44 -0400)]
added get_mem
Luke Kenneth Casson Leighton [Fri, 17 Sep 2021 15:13:15 +0000 (16:13 +0100)]
update comments
https://bugs.libre-soc.org/show_bug.cgi?id=686#c51
Luke Kenneth Casson Leighton [Thu, 16 Sep 2021 16:06:18 +0000 (17:06 +0100)]
moving teststate_check_regs written by klehman into openpower-isa
isengaara [Wed, 15 Sep 2021 17:56:35 +0000 (19:56 +0200)]
Merge branch 'master' of ssh://git.libre-riscv.org:922/soc
isengaara [Wed, 15 Sep 2021 17:55:52 +0000 (19:55 +0200)]
add new testcase for ompldst_multi using mmu
Luke Kenneth Casson Leighton [Tue, 14 Sep 2021 17:38:58 +0000 (18:38 +0100)]
convert to using TestState and State after moving to openpower-isa
klehman [Tue, 14 Sep 2021 15:43:10 +0000 (11:43 -0400)]
factory add and intro doc string
Cesar Strauss [Mon, 13 Sep 2021 09:22:43 +0000 (06:22 -0300)]
Save Gitlab runner cache, even on a failed test
Since our tests currently fail, the cache was never saved, not even once.
Luke Kenneth Casson Leighton [Sun, 12 Sep 2021 13:36:41 +0000 (14:36 +0100)]
use log instead of print
Luke Kenneth Casson Leighton [Sun, 12 Sep 2021 13:24:00 +0000 (14:24 +0100)]
code comments
Luke Kenneth Casson Leighton [Sun, 12 Sep 2021 13:21:23 +0000 (14:21 +0100)]
create new function teststate_check_regs which is called by check_regs
teststate_checkregs does not care how many pieces of state it is asked
to compare. could be 2, could be 3, could be 30
klehman [Sun, 12 Sep 2021 12:59:09 +0000 (08:59 -0400)]
changes to utilize full teststate class
klehman [Sun, 12 Sep 2021 03:56:11 +0000 (23:56 -0400)]
added compare function
klehman [Sun, 12 Sep 2021 00:53:31 +0000 (20:53 -0400)]
added factory function for test class creation
klehman [Fri, 10 Sep 2021 20:58:15 +0000 (16:58 -0400)]
implement base class in state class
klehman [Fri, 10 Sep 2021 15:08:12 +0000 (11:08 -0400)]
changes made to utilize teststate class
Luke Kenneth Casson Leighton [Fri, 10 Sep 2021 10:19:47 +0000 (11:19 +0100)]
update explanatory comments on LD/ST exception handling
klehman [Thu, 9 Sep 2021 21:31:31 +0000 (17:31 -0400)]
made sim into generators and some uniformity changes
klehman [Thu, 9 Sep 2021 16:33:01 +0000 (12:33 -0400)]
finished remaining hdl items
klehman [Thu, 9 Sep 2021 13:01:50 +0000 (09:01 -0400)]
HDL int reg added
klehman [Thu, 9 Sep 2021 12:04:23 +0000 (08:04 -0400)]
more sim class registers add
Cesar Strauss [Wed, 8 Sep 2021 16:42:50 +0000 (13:42 -0300)]
Monitor exceptions, re-decoding the instruction in this case
The misaligned load test-case now passes.
Whenever an exception is reported during Execution, it is forwarded to
PowerDecode2. After Execution finishes, Issue notices this, and returns
directly to Decode, without updating PC, SVSTATE, etc. The exception
condition is always cleared after a Decode, to prepare the stage for
a new Execution.
klehman [Wed, 8 Sep 2021 13:03:13 +0000 (09:03 -0400)]
initial commit of sim state class
Cesar Strauss [Wed, 8 Sep 2021 09:26:15 +0000 (06:26 -0300)]
Monitor the exception input to PowerDecoder2
Cesar Strauss [Wed, 8 Sep 2021 09:25:18 +0000 (06:25 -0300)]
Remove default argument for dict.get()
1) The default is already None.
2) It really doesn't accept keyword arguments
Luke Kenneth Casson Leighton [Tue, 7 Sep 2021 21:37:06 +0000 (22:37 +0100)]
fun fixing of get_core_hdl_regs, "yield from"
Luke Kenneth Casson Leighton [Tue, 7 Sep 2021 21:31:28 +0000 (22:31 +0100)]
move functions to above where they are called
klehman [Tue, 7 Sep 2021 21:15:42 +0000 (17:15 -0400)]
breakout of register collection and compare
Cesar Strauss [Tue, 7 Sep 2021 19:11:15 +0000 (16:11 -0300)]
Fix typo.
Luke Kenneth Casson Leighton [Tue, 7 Sep 2021 13:44:05 +0000 (14:44 +0100)]
add TODO code-comments
related to https://bugs.libre-soc.org/show_bug.cgi?id=686
Luke Kenneth Casson Leighton [Tue, 7 Sep 2021 13:40:39 +0000 (14:40 +0100)]
whitespace, add bug ref number to test API
Luke Kenneth Casson Leighton [Fri, 3 Sep 2021 07:13:14 +0000 (08:13 +0100)]
another batch of ready/valid i/o prefix-suffix swaps
Luke Kenneth Casson Leighton [Tue, 31 Aug 2021 20:27:08 +0000 (21:27 +0100)]
anooother valid_o to convert to o_valid
Luke Kenneth Casson Leighton [Tue, 31 Aug 2021 20:20:02 +0000 (21:20 +0100)]
update ready/valid in shift_rot test_pipe_caller
Jacob Lifshay [Tue, 31 Aug 2021 04:54:04 +0000 (21:54 -0700)]
fix test_all_values_covered, missed import when moving test cases to openpower.git
Luke Kenneth Casson Leighton [Mon, 30 Aug 2021 16:38:31 +0000 (17:38 +0100)]
update ready/valid i/o_ prefix in div test helper.py
Luke Kenneth Casson Leighton [Mon, 30 Aug 2021 14:33:41 +0000 (15:33 +0100)]
fix ready/valid i/o prefix in ALU test
Luke Kenneth Casson Leighton [Mon, 30 Aug 2021 12:26:49 +0000 (13:26 +0100)]
fix CR tests valid/ready naming
Luke Kenneth Casson Leighton [Mon, 30 Aug 2021 11:39:26 +0000 (12:39 +0100)]
missed valid/ready_i/o to o/i_ conversion
Luke Kenneth Casson Leighton [Mon, 30 Aug 2021 11:36:54 +0000 (12:36 +0100)]
missed valid/ready_i/o to o/i_ conversion
Luke Kenneth Casson Leighton [Sun, 29 Aug 2021 21:00:59 +0000 (22:00 +0100)]
unnecessary signal rename ivalid_i to ii_valid (reverting)
Luke Kenneth Casson Leighton [Tue, 24 Aug 2021 11:53:06 +0000 (12:53 +0100)]
replace data_o with o_data and data_i with i_data as well
a little more care involved here due to names such as st_data_o
and others
Luke Kenneth Casson Leighton [Tue, 24 Aug 2021 10:22:14 +0000 (11:22 +0100)]
big rename, global/search/replace of ready_o with o_ready and the other
> 4 signals as well, valid_i -> i_valid
> https://libera.irclog.whitequark.org/nmigen/2021-08-24#
30728292;
> to be consistent with nmigen standards
Luke Kenneth Casson Leighton [Sun, 22 Aug 2021 09:43:26 +0000 (10:43 +0100)]
remove svanalysis from Makefile, it is now part of openpower-isa
Tobias Platen [Tue, 17 Aug 2021 18:06:10 +0000 (20:06 +0200)]
fix "link addr-go direct to rel"
Cesar Strauss [Tue, 17 Aug 2021 11:37:47 +0000 (08:37 -0300)]
Enable LD/ST exception test case
It helps for implementing exception handling in TestIssuer
Cesar Strauss [Tue, 17 Aug 2021 11:11:19 +0000 (08:11 -0300)]
Clear operand latch on a terminating condition
Cesar Strauss [Tue, 17 Aug 2021 10:18:00 +0000 (07:18 -0300)]
Add exc_o.happened to the conditions for terminating the CompUnit FSM
Otherwise, a failed load will hang indefinitely, waiting for data that
never comes.
Cesar Strauss [Tue, 17 Aug 2021 10:13:04 +0000 (07:13 -0300)]
Fix activation of cancel signal
As an active low signal, the conditions to cancel must be ANDed together.
Being active high, exc_o.happened must be inverted.
Cesar Strauss [Mon, 16 Aug 2021 21:39:39 +0000 (18:39 -0300)]
Adjust PortInterface traces according to MMU option
The hierarchy of PortInterface changes when the MMU is present. Set the
correct module path, so the traces don't vanish in the GTKWave document.
Tobias Platen [Mon, 16 Aug 2021 18:25:14 +0000 (20:25 +0200)]
fix renamed symbols