From 4e4ecae638440cdb161cb94e518b7a05c0be9147 Mon Sep 17 00:00:00 2001 From: GiannaP Date: Tue, 17 May 2022 14:28:32 +0200 Subject: [PATCH] Cleanup GPIO pad connections and fix VCS (#415) * occamy_top: Fix gpio pad configuration * vcs: Fix cluster_wrapper syntax for vcs compatibility --- .../src/snitch_cluster_wrapper.sv.tpl | 72 ++- .../occamy/src/occamy_cluster_wrapper.sv | 522 +++++++++++++++--- hw/system/occamy/src/occamy_top.sv | 68 ++- hw/system/occamy/src/occamy_top.sv.tpl | 6 - hw/system/occamy/test/testharness.sv | 5 - hw/system/occamy/test/testharness.sv.tpl | 5 - 6 files changed, 533 insertions(+), 145 deletions(-) diff --git a/hw/ip/snitch_cluster/src/snitch_cluster_wrapper.sv.tpl b/hw/ip/snitch_cluster/src/snitch_cluster_wrapper.sv.tpl index ff8d106d8..ebf5f3db4 100644 --- a/hw/ip/snitch_cluster/src/snitch_cluster_wrapper.sv.tpl +++ b/hw/ip/snitch_cluster/src/snitch_cluster_wrapper.sv.tpl @@ -126,23 +126,73 @@ package ${cfg['pkg_name']}; ${cfg['timing']['lat_comp_fp16_alt']}, // FP16alt ${cfg['timing']['lat_comp_fp8_alt']} // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: ${cfg['timing']['lat_noncomp']}}, // NONCOMP - '{default: ${cfg['timing']['lat_conv']}}, // CONV - '{default: ${cfg['timing']['lat_sdotp']}} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{${cfg['timing']['lat_noncomp']}, + ${cfg['timing']['lat_noncomp']}, + ${cfg['timing']['lat_noncomp']}, + ${cfg['timing']['lat_noncomp']}, + ${cfg['timing']['lat_noncomp']}, + ${cfg['timing']['lat_noncomp']}}, // NONCOMP + '{${cfg['timing']['lat_conv']}, + ${cfg['timing']['lat_conv']}, + ${cfg['timing']['lat_conv']}, + ${cfg['timing']['lat_conv']}, + ${cfg['timing']['lat_conv']}, + ${cfg['timing']['lat_conv']}}, // CONV + '{${cfg['timing']['lat_sdotp']}, + ${cfg['timing']['lat_sdotp']}, + ${cfg['timing']['lat_sdotp']}, + ${cfg['timing']['lat_sdotp']}, + ${cfg['timing']['lat_sdotp']}, + ${cfg['timing']['lat_sdotp']}} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA % if c["Xdiv_sqrt"]: - '{default: fpnew_pkg::MERGED}, // DIVSQRT + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // DIVSQRT % else: - '{default: fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT % endif - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV % if c["xfdotp"]: - '{default: fpnew_pkg::MERGED}}, // DOTP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP % else: - '{default: fpnew_pkg::DISABLED}}, // DOTP + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}}, // DOTP % endif PipeConfig: fpnew_pkg::${cfg['timing']['fpu_pipe_config']} }${',\n' if not loop.last else '\n'}\ diff --git a/hw/system/occamy/src/occamy_cluster_wrapper.sv b/hw/system/occamy/src/occamy_cluster_wrapper.sv index 3775219b4..79a59fbe3 100644 --- a/hw/system/occamy/src/occamy_cluster_wrapper.sv +++ b/hw/system/occamy/src/occamy_cluster_wrapper.sv @@ -102,16 +102,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -124,16 +164,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -146,16 +226,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -168,16 +288,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -190,16 +350,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -212,16 +412,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -234,16 +474,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -256,16 +536,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::MERGED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE }, '{ @@ -278,16 +598,56 @@ package occamy_cluster_pkg; 1, // FP16alt 1 // FP8alt }, - '{default: 1}, // DIVSQRT - '{default: 1}, // NONCOMP - '{default: 2}, // CONV - '{default: 3} // DOTP + '{1, 1, 1, 1, 1, 1}, // DIVSQRT + '{1, + 1, + 1, + 1, + 1, + 1}, // NONCOMP + '{2, + 2, + 2, + 2, + 2, + 2}, // CONV + '{3, + 3, + 3, + 3, + 3, + 3} // DOTP }, - UnitTypes: '{'{default: fpnew_pkg::MERGED}, // FMA - '{default: fpnew_pkg::DISABLED}, // DIVSQRT - '{default: fpnew_pkg::PARALLEL}, // NONCOMP - '{default: fpnew_pkg::MERGED}, // CONV - '{default: fpnew_pkg::DISABLED}}, // DOTP + UnitTypes: '{'{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // FMA + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}, // DIVSQRT + '{fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL, + fpnew_pkg::PARALLEL}, // NONCOMP + '{fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED, + fpnew_pkg::MERGED}, // CONV + '{fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED, + fpnew_pkg::DISABLED}}, // DOTP PipeConfig: fpnew_pkg::BEFORE } }; diff --git a/hw/system/occamy/src/occamy_top.sv b/hw/system/occamy/src/occamy_top.sv index 392e81b43..13c64c3fa 100644 --- a/hw/system/occamy/src/occamy_top.sv +++ b/hw/system/occamy/src/occamy_top.sv @@ -12,50 +12,44 @@ module occamy_top import occamy_pkg::*; ( - input logic clk_i, - input logic rst_ni, + input logic clk_i, + input logic rst_ni, /// Peripheral clock - input logic clk_periph_i, - input logic rst_periph_ni, + input logic clk_periph_i, + input logic rst_periph_ni, /// Real-time clock (for time keeping) - input logic rtc_i, - input logic test_mode_i, - input logic [ 1:0] chip_id_i, - input logic [ 1:0] boot_mode_i, - // pad cfg - output logic [31:0] pad_slw_o, - output logic [31:0] pad_smt_o, - output logic [31:0][1:0] pad_drv_o, + input logic rtc_i, + input logic test_mode_i, + input logic [ 1:0] chip_id_i, + input logic [ 1:0] boot_mode_i, // `uart` Interface - output logic uart_tx_o, - input logic uart_rx_i, + output logic uart_tx_o, + input logic uart_rx_i, // `gpio` Interface - input logic [31:0] gpio_d_i, - output logic [31:0] gpio_d_o, - output logic [31:0] gpio_oe_o, - output logic [31:0] gpio_puen_o, - output logic [31:0] gpio_pden_o, + input logic [31:0] gpio_d_i, + output logic [31:0] gpio_d_o, + output logic [31:0] gpio_oe_o, // `jtag` Interface - input logic jtag_trst_ni, - input logic jtag_tck_i, - input logic jtag_tms_i, - input logic jtag_tdi_i, - output logic jtag_tdo_o, + input logic jtag_trst_ni, + input logic jtag_tck_i, + input logic jtag_tms_i, + input logic jtag_tdi_i, + output logic jtag_tdo_o, // `i2c` Interface - output logic i2c_sda_o, - input logic i2c_sda_i, - output logic i2c_sda_en_o, - output logic i2c_scl_o, - input logic i2c_scl_i, - output logic i2c_scl_en_o, + output logic i2c_sda_o, + input logic i2c_sda_i, + output logic i2c_sda_en_o, + output logic i2c_scl_o, + input logic i2c_scl_i, + output logic i2c_scl_en_o, // `SPI Host` Interface - output logic spim_sck_o, - output logic spim_sck_en_o, - output logic [ 1:0] spim_csb_o, - output logic [ 1:0] spim_csb_en_o, - output logic [ 3:0] spim_sd_o, - output logic [ 3:0] spim_sd_en_o, - input [ 3:0] spim_sd_i, + output logic spim_sck_o, + output logic spim_sck_en_o, + output logic [ 1:0] spim_csb_o, + output logic [ 1:0] spim_csb_en_o, + output logic [ 3:0] spim_sd_o, + output logic [ 3:0] spim_sd_en_o, + input [ 3:0] spim_sd_i, /// Boot ROM output axi_lite_a48_d32_req_t bootrom_req_o, diff --git a/hw/system/occamy/src/occamy_top.sv.tpl b/hw/system/occamy/src/occamy_top.sv.tpl index 2e3701416..4b2297ec7 100644 --- a/hw/system/occamy/src/occamy_top.sv.tpl +++ b/hw/system/occamy/src/occamy_top.sv.tpl @@ -22,10 +22,6 @@ module ${name}_top input logic test_mode_i, input logic [1:0] chip_id_i, input logic [1:0] boot_mode_i, - // pad cfg - output logic [31:0] pad_slw_o, - output logic [31:0] pad_smt_o, - output logic [31:0][1:0] pad_drv_o, // `uart` Interface output logic uart_tx_o, input logic uart_rx_i, @@ -33,8 +29,6 @@ module ${name}_top input logic [31:0] gpio_d_i, output logic [31:0] gpio_d_o, output logic [31:0] gpio_oe_o, - output logic [31:0] gpio_puen_o, - output logic [31:0] gpio_pden_o, // `jtag` Interface input logic jtag_trst_ni, input logic jtag_tck_i, diff --git a/hw/system/occamy/test/testharness.sv b/hw/system/occamy/test/testharness.sv index 37eb5191f..1b82e0848 100644 --- a/hw/system/occamy/test/testharness.sv +++ b/hw/system/occamy/test/testharness.sv @@ -357,16 +357,11 @@ module testharness import occamy_pkg::*; ( .test_mode_i (1'b0), .chip_id_i ('0), .boot_mode_i ('0), - .pad_slw_o (), - .pad_smt_o (), - .pad_drv_o (), .uart_tx_o (tx), .uart_rx_i (rx), .gpio_d_i ('0), .gpio_d_o (), .gpio_oe_o (), - .gpio_puen_o (), - .gpio_pden_o (), .jtag_trst_ni ('0), .jtag_tck_i ('0), .jtag_tms_i ('0), diff --git a/hw/system/occamy/test/testharness.sv.tpl b/hw/system/occamy/test/testharness.sv.tpl index a8e060c8c..0b0479e2b 100644 --- a/hw/system/occamy/test/testharness.sv.tpl +++ b/hw/system/occamy/test/testharness.sv.tpl @@ -111,16 +111,11 @@ module testharness import occamy_pkg::*; ( .test_mode_i (1'b0), .chip_id_i ('0), .boot_mode_i ('0), - .pad_slw_o (), - .pad_smt_o (), - .pad_drv_o (), .uart_tx_o (tx), .uart_rx_i (rx), .gpio_d_i ('0), .gpio_d_o (), .gpio_oe_o (), - .gpio_puen_o (), - .gpio_pden_o (), .jtag_trst_ni ('0), .jtag_tck_i ('0), .jtag_tms_i ('0),