Feature/cvxif coprocessors - #3380
ntribie-bosch wants to merge 4 commits into
Conversation
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
verible-verilog-format
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
[verible-verilog-format] reported by reviewdog 🐶
| parameter int unsigned NbInstr = 3; | ||
| parameter copro_issue_resp_t CoproInstr[NbInstr] = '{ | ||
| '{ | ||
| instr: // custom1 opcode for CRC8, func2 = 01 |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| instr: // custom1 opcode for CRC8, func2 = 01 | |
| instr: // custom1 opcode for CRC8, func2 = 01 |
| instr: // custom1 opcode for CRC16, func2 = 10, func3 = 001 or 011 | ||
| 32'b 00000_10_00000_00000_0_01_00000_0101011, |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| instr: // custom1 opcode for CRC16, func2 = 10, func3 = 001 or 011 | |
| 32'b 00000_10_00000_00000_0_01_00000_0101011, | |
| instr: // custom1 opcode for CRC16, func2 = 10, func3 = 001 or 011 | |
| 32'b00000_10_00000_00000_0_01_00000_0101011, |
| instr: // custom1 opcode for CRC32, func2 = 11, func3 = 011 | ||
| 32'b 00000_11_00000_00000_0_11_00000_0101011, |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| instr: // custom1 opcode for CRC32, func2 = 11, func3 = 011 | |
| 32'b 00000_11_00000_00000_0_11_00000_0101011, | |
| instr: // custom1 opcode for CRC32, func2 = 11, func3 = 011 | |
| 32'b00000_11_00000_00000_0_11_00000_0101011, |
| module instr_decoder import cvxif_pkg::*; #( | ||
| parameter int NbInstr = 1, | ||
| parameter cvxif_instr_pkg::copro_issue_resp_t CoproInstr[NbInstr] = {0} | ||
| ) | ||
| ( | ||
| input logic clk_i, | ||
| input x_issue_req_t x_issue_req_i, | ||
| output x_issue_resp_t x_issue_resp_o |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| module instr_decoder import cvxif_pkg::*; #( | |
| parameter int NbInstr = 1, | |
| parameter cvxif_instr_pkg::copro_issue_resp_t CoproInstr[NbInstr] = {0} | |
| ) | |
| ( | |
| input logic clk_i, | |
| input x_issue_req_t x_issue_req_i, | |
| output x_issue_resp_t x_issue_resp_o | |
| module instr_decoder | |
| import cvxif_pkg::*; | |
| #( | |
| parameter int NbInstr = 1, | |
| parameter cvxif_instr_pkg::copro_issue_resp_t CoproInstr[NbInstr] = {0} | |
| ) ( | |
| input logic clk_i, | |
| input x_issue_req_t x_issue_req_i, | |
| output x_issue_resp_t x_issue_resp_o |
| assign sel[i] = | ||
| ((CoproInstr[i].mask & x_issue_req_i.instr) == CoproInstr[i].instr); |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| assign sel[i] = | |
| ((CoproInstr[i].mask & x_issue_req_i.instr) == CoproInstr[i].instr); | |
| assign sel[i] = ((CoproInstr[i].mask & x_issue_req_i.instr) == CoproInstr[i].instr); |
| return |pass; | ||
| endfunction : is_inside_cacheable_regions | ||
|
|
||
| endpackage No newline at end of file |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| endpackage | |
| endpackage |
| localparam CVA6ConfigZcmpExtEn = 0; | ||
| localparam CVA6ConfigAExtEn = 1; | ||
| localparam CVA6ConfigHExtEn = 0; // always disabled | ||
| localparam CVA6ConfigBExtEn = 1; // To be inserted in spec |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| localparam CVA6ConfigBExtEn = 1; // To be inserted in spec | |
| localparam CVA6ConfigBExtEn = 1; // To be inserted in spec |
| localparam CVA6ConfigAxiDataWidth = 64; | ||
| localparam CVA6ConfigFetchUserEn = 0; // Not compatible with current implemention, set to DISABLED | ||
| localparam CVA6ConfigFetchUserWidth = CVA6ConfigXlen; // Not compatible with current implemention, set to XLEN | ||
| localparam CVA6ConfigDataUserEn = 0; // Not compatible with current implemention, DISABLED |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| localparam CVA6ConfigDataUserEn = 0; // Not compatible with current implemention, DISABLED | |
| localparam CVA6ConfigDataUserEn = 0; // Not compatible with current implemention, DISABLED |
| localparam CVA6ConfigIcacheByteSize = 16384; | ||
| localparam CVA6ConfigIcacheSetAssoc = 4; | ||
| localparam CVA6ConfigIcacheLineWidth = 128; | ||
| localparam CVA6ConfigDcacheByteSize = 32768; // To be inserted in spec |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| localparam CVA6ConfigDcacheByteSize = 32768; // To be inserted in spec | |
| localparam CVA6ConfigDcacheByteSize = 32768; // To be inserted in spec |
| localparam CVA6ConfigIcacheLineWidth = 128; | ||
| localparam CVA6ConfigDcacheByteSize = 32768; // To be inserted in spec | ||
| localparam CVA6ConfigDcacheSetAssoc = 4; | ||
| localparam CVA6ConfigDcacheLineWidth = 128; // To be inserted in spec |
There was a problem hiding this comment.
[verible-verilog-format] reported by reviewdog 🐶
| localparam CVA6ConfigDcacheLineWidth = 128; // To be inserted in spec | |
| localparam CVA6ConfigDcacheLineWidth = 128; // To be inserted in spec |
|
@ntribie-bosch To become contributor, you need to sign the Eclipse agreement. The Verible command to fix errors is given in CONTRIBUTING.md file. |
|
Hi JR , thanks for your comment . I signed the agreement but our repo (github.com/boschglobal/cva6) is sending different credentials than the ones I used to sign it . I need to sort this out. |
|
Hi Nicolas, Authorship information is not modified by the repository (it is part of the commit hash so this is immutable). In both cases, the branch needs to be rebased to update authorship information. https://stackoverflow.com/questions/16217801/git-rebase-change-author#16218264 |
|
Hi Come, thanks for your comment. In fact this is a chicken <=> egg issue : I have to commit with this identity in our forked repo BoschGlobal , otherwise commits are rejected. But I didn't sign the eclipse agreement with this ID.. need to think how to handle this. |
|
Is it possible to sign the ECA again with this email address? |
|
👋 Hi there! This pull request seems inactive. Need more help or have updates? Feel free to let us know. If there are no updates within the next few days, we'll go ahead and close this PR. 😊 |
|
Have you found a way to fix the Eclipse ECA issues? |
This PR contains 2 coprocessors examples, and a wrapper , developped as part of the TRISTAN project :
By default, the coprocessors are not instantiated. An example instantiation is given at cva6 level for each of them