mirror of
https://github.com/YosysHQ/yosys
synced 2025-08-09 20:50:51 +00:00
intel_alm: direct LUTRAM cell instantiation
By instantiating the LUTRAM cell directly, we avoid a trip through altsyncram, which speeds up Quartus synthesis time. This also gives a little more flexibility, as Yosys can build RAMs out of individual 32x1 LUTRAM cells. While working on this, I discovered that the mem_init0 parameter of <family>_mlab_cell gets ignored by Quartus.
This commit is contained in:
parent
0610424940
commit
5b779f7f4e
9 changed files with 163 additions and 52 deletions
|
@ -106,3 +106,26 @@ input aclr1;
|
|||
output eccstatus;
|
||||
|
||||
endmodule
|
||||
|
||||
(* blackbox *)
|
||||
module cyclonev_mlab_cell(portaaddr, portadatain, portbaddr, portbdataout, ena0, clk0, clk1);
|
||||
|
||||
parameter logical_ram_name = "";
|
||||
parameter logical_ram_depth = 32;
|
||||
parameter logical_ram_width = 20;
|
||||
parameter mixed_port_feed_through_mode = "new";
|
||||
parameter first_bit_number = 0;
|
||||
parameter first_address = 0;
|
||||
parameter last_address = 31;
|
||||
parameter address_width = 5;
|
||||
parameter data_width = 1;
|
||||
parameter byte_enable_mask_width = 1;
|
||||
parameter port_b_data_out_clock = "NONE";
|
||||
parameter [639:0] mem_init0 = 640'b0;
|
||||
|
||||
input [address_width-1:0] portaaddr, portbaddr;
|
||||
input [data_width-1:0] portadatain;
|
||||
output [data_width-1:0] portbdataout;
|
||||
input ena0, clk0, clk1;
|
||||
|
||||
endmodule
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue