Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hw: Add SIMD shuffling operations #191

Draft
wants to merge 55 commits into
base: main
Choose a base branch
from
Draft
Changes from 1 commit
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
64a517e
doing tutorial
Mar 6, 2024
b03de3c
doing tutorial
Mar 6, 2024
30d168c
tutorial finished
Mar 18, 2024
067dc10
Merge branch 'main' of https://github.com/pulp-platform/snitch_cluster
Mar 18, 2024
aabafcd
Updated submodule riscv-opcodes to use my own fork
Mar 19, 2024
ccdb552
added branch to submodule riscv-opcodes
Mar 19, 2024
304bc31
Added shuffle to opcodes
Mar 21, 2024
edd79a4
draft for vfshuffle.s encoding and decoder
Mar 26, 2024
931c439
Merge remote-tracking branch 'upstream/main'
Mar 26, 2024
7a65650
working on decoder
Apr 2, 2024
1b399b5
testing the first implementation of vfshuffle.s
Apr 12, 2024
60eaa8c
shuffle implementation
Apr 24, 2024
1a71ff0
implementation for vfshuffle.s
Apr 25, 2024
63af430
traces: Add MiniFloat representation for RTL traces
Mar 12, 2024
97191b0
`gen_trace.py`: Fix crash on unsupported SIMD instructions
colluca Mar 13, 2024
bb30748
`gen_trace.py`: Reverse SIMD vectors such that LSB is rightmost
colluca Mar 13, 2024
c2ddc52
trying to run vfshuffle.h
May 2, 2024
df8b23a
done with tests
May 7, 2024
eeff5ee
finished tests
May 14, 2024
2d8abc0
sw: Add transpose layer
fischeti Nov 7, 2023
74b0490
transpose kernel
May 19, 2024
1f23f6a
moved data scripts to /scripts
May 20, 2024
f8b0786
pulled fixes from upstream
May 20, 2024
f727a63
kernel done for fp32, fp16, fp8
May 27, 2024
8803037
SSR without frep works
Jun 6, 2024
fb2d9d8
Remove files which should not have been tracked
fischeti Jul 25, 2024
bd1e9c2
Remove C encoding instructions again
fischeti Jul 25, 2024
f6052d4
Revert `fp32_computation_vector` test changes
fischeti Jul 25, 2024
b1cbd78
sw: Fix compilation errors
fischeti Jul 25, 2024
8c50a89
util: Remove `generate-opcodes` comments
fischeti Jul 25, 2024
716dd4e
hw: Clean up shuffle unit
fischeti Jul 25, 2024
75fdb6c
shfl_unit: Fix bitwidth of masks
fischeti Aug 7, 2024
9289011
wip: Add shuffle tests
fischeti Aug 7, 2024
52779f2
REVERT: ignore tranpose_shuffle for now
fischeti Aug 7, 2024
46132de
hw: Combine two shuffle variants in decoder
fischeti Aug 14, 2024
9c17280
wip: Configure cluster wrapper for shuffle instructions
fischeti Aug 14, 2024
9cc3f1d
sw: Fix debug target variables
fischeti Aug 14, 2024
25e8e45
util: Add shuffle instructions to format CSV
fischeti Aug 14, 2024
64ca391
hw: Remove shuffle unit in FP SS
fischeti Aug 14, 2024
f25a4a9
hw: Clean up
fischeti Aug 14, 2024
9d4b740
hw: Remove shuffle unit
fischeti Aug 14, 2024
2db2d99
lint: Add missing license headers
fischeti Aug 15, 2024
b6f8411
sw: Whitespace changes
fischeti Aug 15, 2024
e0c7d01
lint: Python sources
fischeti Aug 15, 2024
3e0e8e9
Fix format encoding
fischeti Aug 15, 2024
938aa61
lint: Python sources
fischeti Aug 15, 2024
d03f26c
sw: Finalize shuffle test
fischeti Aug 16, 2024
f78afa6
deps: Bump FPU
fischeti Aug 16, 2024
4e7ffa0
Revert IIS setup script changes
fischeti Aug 29, 2024
913b652
Remove transpose shuffle stuff
fischeti Aug 29, 2024
15697ff
Remove redundant include
fischeti Aug 29, 2024
7749def
Remove SW stuff
fischeti Aug 29, 2024
8ec58c8
ci: Run shuffle test in all simulators
fischeti Aug 29, 2024
1c350d6
Bump opcodes submodule
fischeti Aug 29, 2024
318fd67
Bump `fpnew`
fischeti Aug 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix format encoding
  • Loading branch information
fischeti committed Aug 29, 2024
commit 3e0e8e97c15f94208a71954fda55a53ba27c0866
8 changes: 4 additions & 4 deletions hw/snitch/src/riscv_instr.sv
Original file line number Diff line number Diff line change
@@ -840,11 +840,11 @@ package riscv_instr;
localparam logic [31:0] VL4R_V = 32'b000011101000?????110?????0000111;
localparam logic [31:0] VL8R_V = 32'b000111101000?????111?????0000111;
localparam logic [31:0] VFSHUFFLE_S = 32'b1011111??????????000?????0110011;
localparam logic [31:0] VFSHUFFLE_H = 32'b1011111??????????001?????0110011;
localparam logic [31:0] VFSHUFFLE_B = 32'b1011111??????????010?????0110011;
localparam logic [31:0] VFSHUFFLE_H = 32'b1011111??????????010?????0110011;
localparam logic [31:0] VFSHUFFLE_B = 32'b1011111??????????011?????0110011;
localparam logic [31:0] VFSHUFFLE2_S = 32'b1011111??????????100?????0110011;
localparam logic [31:0] VFSHUFFLE2_H = 32'b1011111??????????101?????0110011;
localparam logic [31:0] VFSHUFFLE2_B = 32'b1011111??????????110?????0110011;
localparam logic [31:0] VFSHUFFLE2_H = 32'b1011111??????????110?????0110011;
localparam logic [31:0] VFSHUFFLE2_B = 32'b1011111??????????111?????0110011;
localparam logic [31:0] IMV_X_W = 32'b111000000000?????000?????1011011;
localparam logic [31:0] IMV_W_X = 32'b111100000000?????000?????1011011;
localparam logic [31:0] IADDI = 32'b?????????????????000?????1111011;