mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	Removed AHB-specific testing and replaced with ram configs
This commit is contained in:
		
							parent
							
								
									1c62c5e433
								
							
						
					
					
						commit
						9bd0027c94
					
				| @ -85,7 +85,7 @@ for test in tests64i: | ||||
|   configs.append(tc) | ||||
| 
 | ||||
| tests32gcimperas = ["imperas32i", "imperas32f", "imperas32m", "imperas32c"] # unused | ||||
| tests32gc = ["arch32f", "arch32d", "arch32f_fma", "arch32d_fma", "arch32i", "arch32priv", "arch32c",  "arch32m", "arch32a", "arch32zifencei", "arch32zicond", "arch32zba", "arch32zbb", "arch32zbc", "arch32zbs", "arch32zfh", "arch32zfaf", "wally32a", "wally32priv", "wally32periph"]  # "arch32zfad", | ||||
| tests32gc = ["arch32f", "arch32d", "arch32f_fma", "arch32d_fma", "arch32i", "arch32priv", "arch32c",  "arch32m", "arch32a", "arch32zifencei", "arch32zicond", "arch32zba", "arch32zbb", "arch32zbs", "arch32zfh", "arch32zfaf", "wally32a", "wally32priv", "wally32periph"]  # "arch32zbc", "arch32zfad", | ||||
| #tests32gc = ["arch32f", "arch32d", "arch32f_fma", "arch32d_fma", "arch32i", "arch32priv", "arch32c",  "arch32m", "arch32a", "arch32zifencei", "arch32zba", "arch32zbb", "arch32zbc", "arch32zbs", "arch32zicboz", "arch32zcb", "wally32a",  "wally32priv", "wally32periph"]   | ||||
| for test in tests32gc: | ||||
|   tc = TestCase( | ||||
| @ -124,16 +124,16 @@ for test in tests32e: | ||||
|         grepstr="All tests ran without failures") | ||||
|   configs.append(tc) | ||||
| 
 | ||||
| ahbTests = [("0", "0"), ("0", "1"), ("1", "0"), ("1", "1"), ("2", "0"), ("2", "1")]  | ||||
| for test in ahbTests: | ||||
|   tc = TestCase( | ||||
|         name="ram_latency_" + test[0] + "_burst_en_" + test[1], | ||||
|         variant="ahb", | ||||
|         cmd="vsim > {} -c <<!\ndo wally-batch.do rv64gc ahb "+test[0]+" "+test[1]+"\n!", | ||||
|         grepstr="All tests ran without failures") | ||||
|   configs.append(tc) | ||||
| #ahbTests = [("0", "0"), ("0", "1"), ("1", "0"), ("1", "1"), ("2", "0"), ("2", "1")]  | ||||
| #for test in ahbTests: | ||||
| #  tc = TestCase( | ||||
| #        name="ram_latency_" + test[0] + "_burst_en_" + test[1], | ||||
| #        variant="ahb", | ||||
| #        cmd="vsim > {} -c <<!\ndo wally-batch.do rv64gc ahb "+test[0]+" "+test[1]+"\n!", | ||||
| #        grepstr="All tests ran without failures") | ||||
| #  configs.append(tc) | ||||
| 
 | ||||
| tests64gc = ["arch64f", "arch64d", "arch64f_fma", "arch64d_fma", "arch64f_divsqrt", "arch64d_divsqrt", "arch64i", "arch64zba", "arch64zbb", "arch64zbc", "arch64zbs",  "arch64zfh", "arch64zfh_divsqrt", "arch64zfaf", "arch64zfad", | ||||
| tests64gc = ["arch64f", "arch64d", "arch64f_fma", "arch64d_fma", "arch64f_divsqrt", "arch64d_divsqrt", "arch64i", "arch64zba", "arch64zbb", "arch64zbs",  "arch64zfh", "arch64zfh_divsqrt", "arch64zfaf", "arch64zfad", | ||||
|              "arch64priv", "arch64c",  "arch64m", "arch64a", "arch64zifencei", "arch64zicond", "wally64a", "wally64periph", "wally64priv"] # add arch64zfh_fma when available; arch64zicobz, arch64zcb when working | ||||
| #tests64gc = ["arch64f", "arch64d", "arch64f_fma", "arch64d_fma", "arch64i", "arch64zba", "arch64zbb", "arch64zbc", "arch64zbs",  | ||||
| #             "arch64priv", "arch64c",  "arch64m", "arch64a", "arch64zifencei", "wally64a", "wally64periph", "wally64priv", "arch64zicboz", "arch64zcb"]  | ||||
| @ -141,7 +141,7 @@ if (coverage):  # delete all but 64gc tests when running coverage | ||||
|     configs = [] | ||||
|     tests64gc = ["coverage64gc", "arch64i", "arch64priv", "arch64c",  "arch64m", | ||||
|                  "arch64zifencei", "arch64zicond", "arch64a", "wally64a", "wally64periph", "wally64priv",  | ||||
|                  "arch64zba",  "arch64zbb",  "arch64zbc",  "arch64zbs"] # add when working: "arch64zcb", "arch64zicboz" | ||||
|                  "arch64zba",  "arch64zbb",  "arch64zbs"] # add when working: "arch64zcb", "arch64zicboz" | ||||
|     if (fp): | ||||
|        tests64gc.append("arch64f") | ||||
|        tests64gc.append("arch64d") | ||||
| @ -190,6 +190,13 @@ if (nightly): | ||||
|         ["ram_2_0_rv64gc", ["ahb"]], | ||||
|         ["ram_2_1_rv64gc", ["ahb"]], | ||||
|          | ||||
|         ["noicache_rv32gc", ["ahb"]], | ||||
|         ["nodcache_rv32gc", ["ahb"]], | ||||
|         ["nocache_rv32gc", ["ahb"]], | ||||
|         ["noicache_rv64gc", ["ahb"]], | ||||
|         ["nodcache_rv64gc", ["ahb"]], | ||||
|         ["nocache_rv64gc", ["ahb"]], | ||||
| 
 | ||||
|         ["div_2_1_rv32gc", ["arch32f_divsqrt", "arch32d_divsqrt", "arch32m"]], | ||||
|         ["div_2_1i_rv32gc", ["arch32f_divsqrt", "arch32d_divsqrt", "arch32m"]], | ||||
|         ["div_2_2_rv32gc", ["arch32f_divsqrt", "arch32d_divsqrt", "arch32m"]], | ||||
|  | ||||
| @ -21,14 +21,7 @@ | ||||
| onbreak {resume} | ||||
| 
 | ||||
| # create library | ||||
| if {$2 eq "ahb"} { | ||||
|     if [file exists wkdir/work_${1}_${2}_${3}_${4}] { | ||||
|         vdel -lib wkdir/work_${1}_${2}_${3}_${4} -all | ||||
|     } | ||||
|     vlib wkdir/work_${1}_${2}_${3}_${4} | ||||
| 
 | ||||
| 
 | ||||
| } elseif {$2 eq "configOptions"} { | ||||
| if {$2 eq "configOptions"} { | ||||
|     if [file exists wkdir/work_${1}_${3}_${4}] { | ||||
|         vdel -lib wkdir/work_${1}_${3}_${4} -all | ||||
|     } | ||||
| @ -86,22 +79,6 @@ if {$2 eq "buildroot"} { | ||||
|     run -all | ||||
|     run -all | ||||
|     exec ./slack-notifier/slack-notifier.py | ||||
| 
 | ||||
| } elseif {$2 eq "ahb"} { | ||||
|     vlog -lint -work wkdir/work_${1}_${2}_${3}_${4} +incdir+../config/$1 +incdir+../config/deriv/$1 +incdir+../config/shared ../src/cvw.sv ../testbench/testbench.sv ../testbench/common/*.sv   ../src/*/*.sv ../src/*/*/*.sv -suppress 2583 -suppress 7063,2596,13286  +define+RAM_LATENCY=$3 +define+BURST_EN=$4 | ||||
|     # start and run simulation | ||||
|     # remove +acc flag for faster sim during regressions if there is no need to access internal signals | ||||
|     vopt wkdir/work_${1}_${2}_${3}_${4}.testbench -work wkdir/work_${1}_${2}_${3}_${4} -G TEST=$2 -o testbenchopt | ||||
|     vsim -lib wkdir/work_${1}_${2}_${3}_${4} testbenchopt  -fatal 7 | ||||
|     # Adding coverage increases runtime from 2:00 to 4:29.  Can't run it all the time | ||||
|     #vopt work_$2.testbench -work work_$2 -o workopt_$2 +cover=sbectf | ||||
|     #vsim -coverage -lib work_$2 workopt_$2 | ||||
| 
 | ||||
|     # power add generates the logging necessary for said generation. | ||||
|     # power add -r /dut/core/* | ||||
|     run -all | ||||
|     # power off -r /dut/core/* | ||||
| 
 | ||||
| } elseif {$2 eq "configOptions"} { | ||||
|     # set arguments " " | ||||
|     # for {set i 5} {$i <= $argc} {incr i} { | ||||
|  | ||||
| @ -77,12 +77,7 @@ if {$2 eq "buildroot" || $2 eq "buildroot-checkpoint"} { | ||||
|     run 20 ms | ||||
| 
 | ||||
| } else { | ||||
|     if {$2 eq "ahb"} { | ||||
|         vlog +incdir+../config/$1 +incdir+../config/shared ../src/cvw.sv ../testbench/testbench.sv ../testbench/common/*.sv   ../src/*/*.sv ../src/*/*/*.sv -suppress 2583,13286 -suppress 7063 +define+RAM_LATENCY=$3 +define+BURST_EN=$4 | ||||
|     } else { | ||||
|         # *** modelsim won't take `PA_BITS, but will take other defines for the lengths of DTIM_RANGE and IROM_LEN.  For now just live with the warnings. | ||||
|     vlog +incdir+../config/$1 +incdir+../config/shared ../src/cvw.sv ../testbench/testbench.sv ../testbench/common/*.sv   ../src/*/*.sv ../src/*/*/*.sv -suppress 2583,13286 -suppress 7063  | ||||
|     } | ||||
|     vopt +acc work.testbench -G TEST=$2 -G DEBUG=1 -o workopt  | ||||
| 
 | ||||
|     vsim workopt +nowarn3829  -fatal 7 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user