From 2a77bc8053723cb440a20c0688160bacf78880dc Mon Sep 17 00:00:00 2001 From: kwan Date: Thu, 2 Dec 2021 09:45:55 -0800 Subject: [PATCH] .* in ifu/ifu.sv eliminated --- addins/riscv-arch-test | 2 +- addins/riscv-isa-sim | 2 +- .../linux-testgen/linux-testvectors/all.txt | 1 + .../linux-testvectors/bootmem.txt | 1 + .../linux-testvectors/checkpoint8500000 | 1 + .../linux-testgen/linux-testvectors/ram.txt | 1 + .../linux-testvectors/vmlinux.objdump | 1 + .../linux-testvectors/vmlinux.objdump.addr | 1 + .../linux-testvectors/vmlinux.objdump.lab | 1 + wally-pipelined/src/ifu/.ifu.sv.swp | Bin 0 -> 20480 bytes wally-pipelined/src/ifu/ifu.sv | 18 +++++++++++++----- 11 files changed, 22 insertions(+), 7 deletions(-) create mode 120000 wally-pipelined/linux-testgen/linux-testvectors/all.txt create mode 120000 wally-pipelined/linux-testgen/linux-testvectors/bootmem.txt create mode 120000 wally-pipelined/linux-testgen/linux-testvectors/checkpoint8500000 create mode 120000 wally-pipelined/linux-testgen/linux-testvectors/ram.txt create mode 120000 wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump create mode 120000 wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.addr create mode 120000 wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.lab create mode 100644 wally-pipelined/src/ifu/.ifu.sv.swp diff --git a/addins/riscv-arch-test b/addins/riscv-arch-test index be67c99bd..84d043817 160000 --- a/addins/riscv-arch-test +++ b/addins/riscv-arch-test @@ -1 +1 @@ -Subproject commit be67c99bd461742aa1c100bcc0732657faae2230 +Subproject commit 84d043817f75f752c9873326475e11f16e3a6f7c diff --git a/addins/riscv-isa-sim b/addins/riscv-isa-sim index ddcfa6cc3..d22b28019 160000 --- a/addins/riscv-isa-sim +++ b/addins/riscv-isa-sim @@ -1 +1 @@ -Subproject commit ddcfa6cc3d80818140a459e590296c3079c5a3ec +Subproject commit d22b280198e74b871e04fc0ddb622fb825fdae49 diff --git a/wally-pipelined/linux-testgen/linux-testvectors/all.txt b/wally-pipelined/linux-testgen/linux-testvectors/all.txt new file mode 120000 index 000000000..4275ab31a --- /dev/null +++ b/wally-pipelined/linux-testgen/linux-testvectors/all.txt @@ -0,0 +1 @@ +/courses/e190ax/buildroot_boot/all.txt \ No newline at end of file diff --git a/wally-pipelined/linux-testgen/linux-testvectors/bootmem.txt b/wally-pipelined/linux-testgen/linux-testvectors/bootmem.txt new file mode 120000 index 000000000..33bff4ce4 --- /dev/null +++ b/wally-pipelined/linux-testgen/linux-testvectors/bootmem.txt @@ -0,0 +1 @@ +/courses/e190ax/buildroot_boot/bootmem.txt \ No newline at end of file diff --git a/wally-pipelined/linux-testgen/linux-testvectors/checkpoint8500000 b/wally-pipelined/linux-testgen/linux-testvectors/checkpoint8500000 new file mode 120000 index 000000000..e48344418 --- /dev/null +++ b/wally-pipelined/linux-testgen/linux-testvectors/checkpoint8500000 @@ -0,0 +1 @@ +/courses/e190ax/buildroot_boot/checkpoint8500000 \ No newline at end of file diff --git a/wally-pipelined/linux-testgen/linux-testvectors/ram.txt b/wally-pipelined/linux-testgen/linux-testvectors/ram.txt new file mode 120000 index 000000000..209d4eed6 --- /dev/null +++ b/wally-pipelined/linux-testgen/linux-testvectors/ram.txt @@ -0,0 +1 @@ +/courses/e190ax/buildroot_boot/ram.txt \ No newline at end of file diff --git a/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump b/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump new file mode 120000 index 000000000..8f52aac07 --- /dev/null +++ b/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump @@ -0,0 +1 @@ +/courses/e190ax/buildroot_boot/vmlinux.objdump \ No newline at end of file diff --git a/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.addr b/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.addr new file mode 120000 index 000000000..62079f3a2 --- /dev/null +++ b/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.addr @@ -0,0 +1 @@ +/courses/e190ax/buildroot_boot/vmlinux.objdump.addr \ No newline at end of file diff --git a/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.lab b/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.lab new file mode 120000 index 000000000..fe8ecc6e4 --- /dev/null +++ b/wally-pipelined/linux-testgen/linux-testvectors/vmlinux.objdump.lab @@ -0,0 +1 @@ +/courses/e190ax/buildroot_boot/vmlinux.objdump.lab \ No newline at end of file diff --git a/wally-pipelined/src/ifu/.ifu.sv.swp b/wally-pipelined/src/ifu/.ifu.sv.swp new file mode 100644 index 0000000000000000000000000000000000000000..3c7810e18a044abe43261f24f45191c1cc6cb70e GIT binary patch literal 20480 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 literal 0 HcmV?d00001 diff --git a/wally-pipelined/src/ifu/ifu.sv b/wally-pipelined/src/ifu/ifu.sv index b18d8bc3c..3f9bcf510 100644 --- a/wally-pipelined/src/ifu/ifu.sv +++ b/wally-pipelined/src/ifu/ifu.sv @@ -133,13 +133,21 @@ module ifu ( .LoadAccessFaultM(), .StoreAccessFaultM(), .DisableTranslation(1'b0), - .Cacheable(), - .Idempotent(), - .AtomicAllowed(), - .*); + .Cacheable(), .Idempotent(), .AtomicAllowed(), + + .clk, .reset, + .SATP_REGW, + .STATUS_MXR, .STATUS_SUM, .STATUS_MPRV, + .STATUS_MPP, + .PrivilegeModeW, + .InstrAccessFaultF, + .PMPCFG_ARRAY_REGW, //bitfields? + .PMPADDR_ARRAY_REGW + ); - // branch predictor signals + + // branch predictor signal logic SelBPPredF; logic [`XLEN-1:0] BPPredPCF, PCNext0F, PCNext1F, PCNext2F, PCNext3F; logic [4:0] InstrClassD, InstrClassE;