lib/ECP5_RAM: clean up old core, fix error in module docstring
This commit is contained in:
parent
1ccd1b0072
commit
b73a211ec4
|
@ -469,7 +469,7 @@ module mkEBRCore#(EBRPortConfig cfgA,
|
|||
endinterface
|
||||
endmodule
|
||||
|
||||
// mkEBRCore instantiates one EBR memory block with the given
|
||||
// mkEBR instantiates one EBR memory block with the given
|
||||
// configuration.
|
||||
//
|
||||
// This module includes flow control for reads, but unlike the
|
||||
|
@ -499,55 +499,6 @@ module mkEBR#(EBRPortConfig cfgA,
|
|||
DelayLine#(void) latencyA <- mkDelayLine(rcfgA.operation_latency, clocked_by(rcfgA.clk), reset_by(rcfgA.rstN));
|
||||
DelayLine#(void) latencyB <- mkDelayLine(rcfgB.operation_latency, clocked_by(rcfgB.clk), reset_by(rcfgB.rstN));
|
||||
|
||||
// WriteOnly#(Bool) portA_start_op = ?;
|
||||
// ReadOnly#(Bool) portA_op_complete = ?;
|
||||
// WriteOnly#(Bool) portB_start_op = ?;
|
||||
// ReadOnly#(Bool) portB_op_complete = ?;
|
||||
|
||||
// // TODO: this variable-depth register chain should be pulled into a
|
||||
// // separate "delay line" module.
|
||||
// if (!rcfgA.enabled) begin
|
||||
// portA_start_op = discardingWriteOnly;
|
||||
// portA_op_complete = constToReadOnly(False);
|
||||
// end
|
||||
// else if (rcfgA.register_output) begin
|
||||
// let syncA1 <- mkDReg(False, clocked_by(rcfgA.clk), reset_by(rcfgA.rstN));
|
||||
// let syncA2 <- mkReg(False, clocked_by(rcfgA.clk), reset_by(rcfgA.rstN));
|
||||
// portA_start_op = regToWriteOnly(syncA1);
|
||||
// portA_op_complete = regToReadOnly(syncA2);
|
||||
|
||||
// (* no_implicit_conditions, fire_when_enabled *)
|
||||
// rule syncA1_to_syncA2;
|
||||
// syncA2 <= syncA1;
|
||||
// endrule
|
||||
// end
|
||||
// else begin
|
||||
// let syncA <- mkDReg(False, clocked_by(rcfgA.clk), reset_by(rcfgA.rstN));
|
||||
// portA_start_op = regToWriteOnly(syncA);
|
||||
// portA_op_complete = regToReadOnly(syncA);
|
||||
// end
|
||||
|
||||
// if (!rcfgB.enabled) begin
|
||||
// portB_start_op = discardingWriteOnly;
|
||||
// portB_op_complete = constToReadOnly(False);
|
||||
// end
|
||||
// else if (rcfgB.register_output) begin
|
||||
// let syncB1 <- mkDReg(False, clocked_by(rcfgB.clk), reset_by(rcfgB.rstN));
|
||||
// let syncB2 <- mkReg(False, clocked_by(rcfgB.clk), reset_by(rcfgB.rstN));
|
||||
// portB_start_op = regToWriteOnly(syncB1);
|
||||
// portB_op_complete = regToReadOnly(syncB2);
|
||||
|
||||
// (* no_implicit_conditions, fire_when_enabled *)
|
||||
// rule syncB1_to_syncB2;
|
||||
// syncB2 <= syncB1;
|
||||
// endrule
|
||||
// end
|
||||
// else begin
|
||||
// let syncB1 <- mkDReg(False, clocked_by(rcfgB.clk), reset_by(rcfgB.rstN));
|
||||
// portB_start_op = regToWriteOnly(syncB1);
|
||||
// portB_op_complete = regToReadOnly(syncB1);
|
||||
// end
|
||||
|
||||
interface EBRPort portA;
|
||||
method Action put(UInt#(3) chip_select, Bool write, addr_a address, data_a datain);
|
||||
mem.portA.put(chip_select, write, address, datain);
|
||||
|
|
Loading…
Reference in New Issue