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

Table builder for specification #1814

Merged

Conversation

JeanRochCoulon
Copy link
Contributor

@JeanRochCoulon JeanRochCoulon commented Feb 7, 2024

In this MR:

  • Commit, csr and controller modules are post processed to generate port IO tables in Design Document
  • Config package to generate the parameter table in Design Document

@jquevremont This PR setup a flow to generate the "parameter configuration" table to be inserted in cv32a65x design documentation. It is generated from RTL.

core/commit_stage.sv Outdated Show resolved Hide resolved
core/commit_stage.sv Outdated Show resolved Hide resolved
input logic time_irq_i, // Timer threw a interrupt
// send a flush request out if a CSR with a side effect has changed (e.g. written)
// Subsystem Clock - SUBSYSTEM
input logic clk_i,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
input logic clk_i,
input logic clk_i,

// Subsystem Clock - SUBSYSTEM
input logic clk_i,
// Asynchronous reset active low - SUBSYSTEM
input logic rst_ni,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
input logic rst_ni,
input logic rst_ni,

// Asynchronous reset active low - SUBSYSTEM
input logic rst_ni,
// Timer threw a interrupt - SUBSYSTEM
input logic time_irq_i,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
input logic time_irq_i,
input logic time_irq_i,

// Current privilege level the CPU is in - EX_STAGE
output riscv::priv_lvl_t priv_lvl_o,
// Imprecise FP exception from the accelerator (fcsr.fflags format) - ACC_DISPATCHER
input logic [4:0] acc_fflags_ex_i,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
input logic [4:0] acc_fflags_ex_i,
input logic [ 4:0] acc_fflags_ex_i,

// Imprecise FP exception from the accelerator (fcsr.fflags format) - ACC_DISPATCHER
input logic [4:0] acc_fflags_ex_i,
// An FP exception from the accelerator occurred - ACC_DISPATCHER
input logic acc_fflags_ex_valid_i,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
input logic acc_fflags_ex_valid_i,
input logic acc_fflags_ex_valid_i,

// An FP exception from the accelerator occurred - ACC_DISPATCHER
input logic acc_fflags_ex_valid_i,
// Floating point extension status - ID_STAGE
output riscv::xs_t fs_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output riscv::xs_t fs_o,
output riscv::xs_t fs_o,

// Floating point extension status - ID_STAGE
output riscv::xs_t fs_o,
// Floating-Point Accured Exceptions - COMMIT_STAGE
output logic [4:0] fflags_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [4:0] fflags_o,
output logic [ 4:0] fflags_o,

// Floating-Point Accured Exceptions - COMMIT_STAGE
output logic [4:0] fflags_o,
// Floating-Point Dynamic Rounding Mode - EX_STAGE
output logic [2:0] frm_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [2:0] frm_o,
output logic [ 2:0] frm_o,

@JeanRochCoulon JeanRochCoulon changed the title Table builder Table builder for specification Feb 7, 2024
Copy link
Contributor

github-actions bot commented Feb 7, 2024

❌ failed run, report available here.

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

// Data to read from CSR - CSR_REGFILE
input riscv::xlen_t csr_rdata_i,
// Exception or interrupt occurred in CSR stage (the same as commit) - CSR_REGFILE
input exception_t csr_exception_i,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
input exception_t csr_exception_i,
input exception_t csr_exception_i,

// Floating-Point Dynamic Rounding Mode - EX_STAGE
output logic [2:0] frm_o,
// Floating-Point Precision Control - EX_STAGE
output logic [6:0] fprec_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [6:0] fprec_o,
output logic [ 6:0] fprec_o,

// Floating-Point Precision Control - EX_STAGE
output logic [6:0] fprec_o,
// Vector extension status - ID_STAGE
output riscv::xs_t vs_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output riscv::xs_t vs_o,
output riscv::xs_t vs_o,

// Vector extension status - ID_STAGE
output riscv::xs_t vs_o,
// interrupt management to id stage - ID_STAGE
output irq_ctrl_t irq_ctrl_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output irq_ctrl_t irq_ctrl_o,
output irq_ctrl_t irq_ctrl_o,

// interrupt management to id stage - ID_STAGE
output irq_ctrl_t irq_ctrl_o,
// enable VA translation - EX_STAGE
output logic en_translation_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic en_translation_o,
output logic en_translation_o,

// write data to performance counter module - PERF_COUNTERS
output logic [riscv::XLEN-1:0] perf_data_o,
// read data from performance counter module - PERF_COUNTERS
input logic [riscv::XLEN-1:0] perf_data_i,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
input logic [riscv::XLEN-1:0] perf_data_i,
input logic [ riscv::XLEN-1:0] perf_data_i,

output logic [riscv::XLEN-1:0] perf_data_o,
// read data from performance counter module - PERF_COUNTERS
input logic [riscv::XLEN-1:0] perf_data_i,
// TO_BE_COMPLETED - PERF_COUNTERS
output logic perf_we_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic perf_we_o,
output logic perf_we_o,

output riscv::pmpcfg_t [15:0] pmpcfg_o, // PMP configuration containing pmpcfg for max 16 PMPs
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o, // PMP addresses
// PMP configuration containing pmpcfg for max 16 PMPs - ACC_DISPATCHER
output riscv::pmpcfg_t [15:0] pmpcfg_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output riscv::pmpcfg_t [15:0] pmpcfg_o,
output riscv::pmpcfg_t [ 15:0] pmpcfg_o,

// PMP configuration containing pmpcfg for max 16 PMPs - ACC_DISPATCHER
output riscv::pmpcfg_t [15:0] pmpcfg_o,
// PMP addresses - ACC_DISPATCHER
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o,
output logic [ 15:0][riscv::PLEN-3:0] pmpaddr_o,

output riscv::pmpcfg_t [15:0] pmpcfg_o,
// PMP addresses - ACC_DISPATCHER
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o,
// TO_BE_COMPLETED - PERF_COUNTERS
output logic [31:0] mcountinhibit_o
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [31:0] mcountinhibit_o
output logic [ 31:0] mcountinhibit_o

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit

verible-verilog-format

core/include/cv32a65x_config_pkg.sv|96|
core/include/cv32a65x_config_pkg.sv|123|
core/include/cv32a65x_config_pkg.sv|128|
core/include/cv32a65x_config_pkg.sv|131|

// Floating-Point Dynamic Rounding Mode - EX_STAGE
output logic [2:0] frm_o,
// Floating-Point Precision Control - EX_STAGE
output logic [6:0] fprec_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [6:0] fprec_o,
output logic [ 6:0] fprec_o,

// Floating-Point Precision Control - EX_STAGE
output logic [6:0] fprec_o,
// Vector extension status - ID_STAGE
output riscv::xs_t vs_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output riscv::xs_t vs_o,
output riscv::xs_t vs_o,

// Vector extension status - ID_STAGE
output riscv::xs_t vs_o,
// interrupt management to id stage - ID_STAGE
output irq_ctrl_t irq_ctrl_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output irq_ctrl_t irq_ctrl_o,
output irq_ctrl_t irq_ctrl_o,

// interrupt management to id stage - ID_STAGE
output irq_ctrl_t irq_ctrl_o,
// enable VA translation - EX_STAGE
output logic en_translation_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic en_translation_o,
output logic en_translation_o,

// enable VA translation - EX_STAGE
output logic en_translation_o,
// enable VA translation for load and stores - EX_STAGE
output logic en_ld_st_translation_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic en_ld_st_translation_o,
output logic en_ld_st_translation_o,

output logic [riscv::XLEN-1:0] perf_data_o,
// read data from performance counter module - PERF_COUNTERS
input logic [riscv::XLEN-1:0] perf_data_i,
// TO_BE_COMPLETED - PERF_COUNTERS
output logic perf_we_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic perf_we_o,
output logic perf_we_o,

output riscv::pmpcfg_t [15:0] pmpcfg_o, // PMP configuration containing pmpcfg for max 16 PMPs
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o, // PMP addresses
// PMP configuration containing pmpcfg for max 16 PMPs - ACC_DISPATCHER
output riscv::pmpcfg_t [15:0] pmpcfg_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output riscv::pmpcfg_t [15:0] pmpcfg_o,
output riscv::pmpcfg_t [ 15:0] pmpcfg_o,

// PMP configuration containing pmpcfg for max 16 PMPs - ACC_DISPATCHER
output riscv::pmpcfg_t [15:0] pmpcfg_o,
// PMP addresses - ACC_DISPATCHER
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o,
output logic [ 15:0][riscv::PLEN-3:0] pmpaddr_o,

output riscv::pmpcfg_t [15:0] pmpcfg_o,
// PMP addresses - ACC_DISPATCHER
output logic [15:0][riscv::PLEN-3:0] pmpaddr_o,
// TO_BE_COMPLETED - PERF_COUNTERS
output logic [31:0] mcountinhibit_o
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
output logic [31:0] mcountinhibit_o
output logic [ 31:0] mcountinhibit_o

core/ex_stage.sv Outdated Show resolved Hide resolved
bit'(
0
),
RVF: bit'(0),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
RVF: bit'(0),
RVF:
bit'(
0
),

unsigned'(
2
),
NrNonIdempotentRules: unsigned'(2),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
NrNonIdempotentRules: unsigned'(2),
NrNonIdempotentRules:
unsigned'(
2
),

1024'(
{64'h8000_0000, 64'h1_0000, 64'h0}
),
ExecuteRegionAddrBase: 1024'({64'h8000_0000, 64'h1_0000, 64'h0}),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
ExecuteRegionAddrBase: 1024'({64'h8000_0000, 64'h1_0000, 64'h0}),
ExecuteRegionAddrBase:
1024'(
{64'h8000_0000, 64'h1_0000, 64'h0}
),

unsigned'(
1
),
NrCachedRegionRules: unsigned'(1),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[verible-verilog-format] reported by reviewdog 🐶

Suggested change
NrCachedRegionRules: unsigned'(1),
NrCachedRegionRules:
unsigned'(
1
),

Copy link
Contributor

github-actions bot commented Feb 7, 2024

❌ failed run, report available here.

2 similar comments
Copy link
Contributor

github-actions bot commented Feb 7, 2024

❌ failed run, report available here.

Copy link
Contributor

github-actions bot commented Feb 7, 2024

❌ failed run, report available here.

Copy link
Contributor

github-actions bot commented Feb 7, 2024

❌ failed run, report available here.

Copy link
Contributor

github-actions bot commented Feb 8, 2024

✔️ successful run, report available here.

@JeanRochCoulon
Copy link
Contributor Author

@ASintzoff Can you approve ?

@JeanRochCoulon
Copy link
Contributor Author

This PR has been approved by @ASintzoff internally before PR on Github.

@JeanRochCoulon JeanRochCoulon merged commit 3f8649e into openhwgroup:master Feb 8, 2024
19 checks passed
@JeanRochCoulon JeanRochCoulon deleted the table_builder branch February 8, 2024 09:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant