2697|0

6892

帖子

0

TA的资源

五彩晶圆(高级)

楼主
 

同步双口RAM模块 实例 [复制链接]

同步双口RAM模块,看参数就能明白怎么工作,就不多说了,可以直接拷贝到自己工程中使用.

// synthesis verilog_input_version verilog_2001
`timescale 1 ps / 1 ps
module altpcierd_dprambe (wrclk, wraddr, wrdata, wrbe, rdclk, rdclken,
rdaddr, rddata);

   parameter ADDR_WIDTH  = 8;
   parameter DATA_WIDTH  = 32;
   parameter BYTE_SIZE  = 8;
   input wrclk;
   input[ADDR_WIDTH - 1:0] wraddr;
   input[DATA_WIDTH - 1:0] wrdata;
   input[DATA_WIDTH / BYTE_SIZE - 1:0] wrbe;
   input rdclk;
   input rdclken;
   input[ADDR_WIDTH - 1:0] rdaddr;
   output[DATA_WIDTH - 1:0] rddata;
   wire[DATA_WIDTH - 1:0] rddata;

   wire [DATA_WIDTH - 1:0] q_a;
   wire wren;

   assign wren = 1'b1 ;

   altsyncram dpram(
      .wren_a(wren),
      .clock0(wrclk),
      .clock1(rdclk),
      .clocken1(rdclken),
      .byteena_a(wrbe),
      .address_a(wraddr),
      .address_b(rdaddr),
      .data_a(wrdata),
      .q_b(rddata),
      .q_a(q_a),
      .addressstall_a(1'b0),
      .addressstall_b(1'b0),
      .byteena_b(1'b1),
      .aclr0(1'b0),
      .aclr1(1'b0),
      .clocken0(1'b1),
      .data_b({DATA_WIDTH{1'b1}}),
      .rden_b(1'b1),
      .wren_b(1'b0)
                    );

        defparam
                dpram.operation_mode = "DUAL_PORT",
                dpram.width_a = DATA_WIDTH,
                dpram.widthad_a = ADDR_WIDTH,
                dpram.numwords_a = (1<<ADDR_WIDTH),
                dpram.width_b = DATA_WIDTH,
                dpram.widthad_b = ADDR_WIDTH,
                dpram.numwords_b = (1<<ADDR_WIDTH),
                dpram.lpm_type = "altsyncram",
                dpram.width_byteena_a = DATA_WIDTH/BYTE_SIZE,
                dpram.outdata_reg_b = "CLOCK1",
                dpram.indata_aclr_a = "NONE",
                dpram.wrcontrol_aclr_a = "NONE",
                dpram.address_aclr_a = "NONE",
                dpram.byteena_aclr_a = "NONE",
                dpram.address_reg_b = "CLOCK1",
                dpram.address_aclr_b = "NONE",
                dpram.outdata_aclr_b = "NONE",
                dpram.ram_block_type = "AUTO",
                dpram.intended_device_family = "Stratix";

endmodule
 
       直接在程序可以语言调用!

此帖出自FPGA/CPLD论坛
点赞 关注
个人签名一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表