📄 or1200_dpram_32x32.v
字号:
// synopsys translate_off`include "timescale.v"// synopsys translate_on`include "or1200_defines.v"module or1200_dpram_32x32( // Generic synchronous double-port RAM interface clk_a, rst_a, ce_a, oe_a, addr_a, do_a, clk_b, rst_b, ce_b, we_b, addr_b, di_b);//// Default address and data buses width//parameter aw = 5;parameter dw = 32;//// Generic synchronous double-port RAM interface//input clk_a; // Clockinput rst_a; // Resetinput ce_a; // Chip enable inputinput oe_a; // Output enable inputinput [aw-1:0] addr_a; // address bus inputsoutput [dw-1:0] do_a; // output data businput clk_b; // Clockinput rst_b; // Resetinput ce_b; // Chip enable inputinput we_b; // Write enable inputinput [aw-1:0] addr_b; // address bus inputsinput [dw-1:0] di_b; // input data bus//// Internal wires and registers//wire we_a;wire [dw-1:0] di_a;wire [dw-1:0] do_b;//// Instantiation of FPGA memory://// Altera LPM//// Added By Jamil Khatib//altqpram altqpram_component ( .wraddress_a (addr_a), .inclocken_a (ce_a), .wraddress_b (addr_b), .wren_a (we_a), .inclocken_b (ce_b), .wren_b (we_b), .inaclr_a (rst_a), .inaclr_b (rst_b), .inclock_a (clk_a), .inclock_b (clk_b), .data_a (di_a), .data_b (di_b), .q_a (do_a), .q_b (do_b));defparam altqpram_component.operation_mode = "BIDIR_DUAL_PORT", altqpram_component.width_write_a = dw, altqpram_component.widthad_write_a = aw, altqpram_component.numwords_write_a = dw, altqpram_component.width_read_a = dw, altqpram_component.widthad_read_a = aw, altqpram_component.numwords_read_a = dw, altqpram_component.width_write_b = dw, altqpram_component.widthad_write_b = aw, altqpram_component.numwords_write_b = dw, altqpram_component.width_read_b = dw, altqpram_component.widthad_read_b = aw, altqpram_component.numwords_read_b = dw, altqpram_component.indata_reg_a = "INCLOCK_A", altqpram_component.wrcontrol_wraddress_reg_a = "INCLOCK_A", altqpram_component.outdata_reg_a = "INCLOCK_A", altqpram_component.indata_reg_b = "INCLOCK_B", altqpram_component.wrcontrol_wraddress_reg_b = "INCLOCK_B", altqpram_component.outdata_reg_b = "INCLOCK_B", altqpram_component.indata_aclr_a = "INACLR_A", altqpram_component.wraddress_aclr_a = "INACLR_A", altqpram_component.wrcontrol_aclr_a = "INACLR_A", altqpram_component.outdata_aclr_a = "INACLR_A", altqpram_component.indata_aclr_b = "NONE", altqpram_component.wraddress_aclr_b = "NONE", altqpram_component.wrcontrol_aclr_b = "NONE", altqpram_component.outdata_aclr_b = "INACLR_B", altqpram_component.lpm_hint = "USE_ESB=ON"; //examplar attribute altqpram_component NOOPT TRUEendmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -