Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions dv/verilator/sonata_system.cc
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,8 @@ int SonataSystem::Setup(int argc, char **argv, bool &exit_app) {
// Note: calculate the period of the higher frequency clock first because
// the period of the 'hr' reference clock must be exactly 3 times longer
// to maintain the phase relationship.
uint32_t hr3x_hperiod = (micro + 599u) / 600u; // 300MHz cycle
uint32_t hr_hperiod = 3 * hr3x_hperiod; // 100MHz cycle
uint32_t hr3x_hperiod = (micro + 1199u) / 1200u; // 600MHz cycle
uint32_t hr_hperiod = 3 * hr3x_hperiod; // 200MHz cycle

// The HyperRAM requires a clock that is phase-shifted by 90 degress.
uint32_t hr90p_offset = hr_hperiod / 2;
Expand Down
2 changes: 1 addition & 1 deletion dv/verilator/top_verilator.sv
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ module top_verilator #(
// System clock frequency.
localparam int unsigned SysClkFreq = 40_000_000;
// HyperRAM clock frequency.
localparam int unsigned HyperRAMClkFreq = 100_000_000;
localparam int unsigned HyperRAMClkFreq = 200_000_000;
localparam int unsigned BaudRate = 921_600;
// Number of CHERI error LEDs.
localparam int unsigned CheriErrWidth = 9;
Expand Down
2 changes: 1 addition & 1 deletion rtl/fpga/clkgen_sonata.sv
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
module clkgen_sonata #(
// System Clock Frequency is parameterised, allowing it to be adjusted.
parameter int unsigned SysClkFreq = 50_000_000,
parameter int unsigned HyperRAMClkFreq = 100_000_000,
parameter int unsigned HyperRAMClkFreq = 200_000_000,

// Frequency of IO_CLK input on the FPGA board.
parameter int unsigned IOClkFreq = 25_000_000
Expand Down
2 changes: 1 addition & 1 deletion rtl/fpga/top_sonata.sv
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ module top_sonata

// System clock frequency.
parameter int unsigned SysClkFreq = 40_000_000;
parameter int unsigned HyperRAMClkFreq = 100_000_000;
parameter int unsigned HyperRAMClkFreq = 200_000_000;

parameter SRAMInitFile = "";

Expand Down
2 changes: 1 addition & 1 deletion rtl/ip/hyperram/rtl/hbmc_tl_top.sv
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ module hbmc_tl_top import tlul_pkg::*; #(
into the slower clock domain, it can take 4 system clock cycles to collect the first word.
*/
localparam int unsigned UDataWidth = top_pkg::TL_DW;
localparam int unsigned UFIFODepth = 1 << (Log2BurstLen - ABIT);
localparam int unsigned UFIFODepth = 2 << (Log2BurstLen - ABIT);

/* The Downstream FIFO to the HyperRAM controller must be wide enough and deep enough to
* accommodate all of the write data for a burst. The write coealescing logic in `hyperram_wrbuf`
Expand Down
2 changes: 1 addition & 1 deletion rtl/system/sonata_system.sv
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ module sonata_system
parameter int unsigned CheriErrWidth = 9,
parameter string SRAMInitFile = "",
parameter int unsigned SysClkFreq = 30_000_000,
parameter int unsigned HyperRAMClkFreq = 100_000_000
parameter int unsigned HyperRAMClkFreq = 200_000_000
) (
// Main system clock and reset
input logic clk_sys_i,
Expand Down
Loading