博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ROM的一种写法
阅读量:5057 次
发布时间:2019-06-12

本文共 2886 字,大约阅读时间需要 9 分钟。

module mr_rom_pll_valuemask_8bpc #(parameter NUMBER_OF_MIF_RANGE = 6,parameter ROM_DEPTH_FOR_EACH_MIF_RANGE = 7,parameter ROM_SIZE = 32,parameter TOTAL_ROM_DEPTH = 42, // 6*7parameter ADDR_WIDTH = 6 // alt_clogb2(42)) (input wire clock,input wire [ADDR_WIDTH-1:0] addr_ptr,output wire [ROM_SIZE-1:0] rdata_out); reg [ROM_SIZE-1:0] ROM [0:TOTAL_ROM_DEPTH-1];wire [ROM_SIZE-1:0] DATAA = {ROM_SIZE{
1'b0}};wire [ADDR_WIDTH-1:0] RADDR; initial begin// FIELD_VALMASK// ROM OFFSET 0 (25MHz - 50MHz)ROM[0] <= 32'h00000F0F; // m 30ROM[1] <= 32'h00010000; // n 1ROM[2] <= 32'h00000303; // c0 6ROM[3] <= 32'h00001E1E; // c1 60ROM[4] <= 32'h00001E1E; // c2 60ROM[5] <= 32'h00000010; // cpROM[6] <= 32'h00000100; // bw// ROM OFFSET 1 (51MHz - 70MHz)ROM[7] <= 32'h00000A0A; // m 20ROM[8] <= 32'h00010000; // n 1ROM[9] <= 32'h00000202; // c0 4ROM[10] <= 32'h00001414; // c1 40ROM[11] <= 32'h00001414; // c2 40ROM[12] <= 32'h0000000B; // cpROM[13] <= 32'h000000C0; // bw// ROM OFFSET 2 (71MHz - 100MHz)ROM[14] <= 32'h00000505; // m 10ROM[15] <= 32'h00010000; // n 1ROM[16] <= 32'h00000101; // c0 2ROM[17] <= 32'h00000A0A; // c1 20ROM[18] <= 32'h00000A0A; // c2 20ROM[19] <= 32'h00000010; // cpROM[20] <= 32'h000000C0; // bw// ROM OFFSET 3 (101MHz - 170MHz)ROM[21] <= 32'h00000404; // m 8ROM[22] <= 32'h00010000; // n 1ROM[23] <= 32'h00000404; // c0 8ROM[24] <= 32'h00000808; // c1 16ROM[25] <= 32'h00000808; // c2 16ROM[26] <= 32'h00000010; // cpROM[27] <= 32'h000000C0; // bw// ROM OFFSET 4 (171MHz - 340MHz)ROM[28] <= 32'h00000202; // m 4ROM[29] <= 32'h00010000; // n 1ROM[30] <= 32'h00000202; // c0 4ROM[31] <= 32'h00000404; // c1 8ROM[32] <= 32'h00000404; // c2 8ROM[33] <= 32'h00000010; // cpROM[34] <= 32'h000000C0; // bw// ROM OFFSET 5 (85.25MHz - 150MHz) - 2.0ROM[35] <= 32'h00000404; // m 8ROM[36] <= 32'h00010000; // n 1ROM[37] <= 32'h00000101; // c0 2ROM[38] <= 32'h00000202; // c1 4ROM[39] <= 32'h00000202; // c2 4ROM[40] <= 32'h00000010; // cpROM[41] <= 32'h000000C0; // bw// Set the rest to all zerosROM[42] <= 32'h00000000;ROM[43] <= 32'h00000000;ROM[44] <= 32'h00000000;ROM[45] <= 32'h00000000;ROM[46] <= 32'h00000000;ROM[47] <= 32'h00000000;ROM[48] <= 32'h00000000;ROM[49] <= 32'h00000000;ROM[50] <= 32'h00000000;ROM[51] <= 32'h00000000;ROM[52] <= 32'h00000000;ROM[53] <= 32'h00000000;ROM[54] <= 32'h00000000;ROM[55] <= 32'h00000000;ROM[56] <= 32'h00000000;ROM[57] <= 32'h00000000;ROM[58] <= 32'h00000000;ROM[59] <= 32'h00000000;ROM[60] <= 32'h00000000;ROM[61] <= 32'h00000000;ROM[62] <= 32'h00000000;ROM[63] <= 32'h00000000;end // write is unusedwire [ADDR_WIDTH-1:0] ADDRA = {ADDR_WIDTH{
1'b0}};wire WEA = 1'b0;always @ (posedge clock)beginif (WEA) beginROM[ADDRA] <= DATAA;endend assign RADDR = addr_ptr; reg [ROM_SIZE-1:0] RDATA;always @ (posedge clock)beginRDATA <= ROM[RADDR];end assign rdata_out = RDATA; endmodule

 

转载于:https://www.cnblogs.com/zhongguo135/p/7683836.html

你可能感兴趣的文章
数据结构3——浅谈zkw线段树
查看>>
Introduction to my galaxy engine 2: Depth of field
查看>>
V2019 Super DSP3 Odometer Correction Vehicle List
查看>>
Python 3.X 练习集100题 05
查看>>
今时不同往日:VS2010十大绝技让VS6叹服
查看>>
设计器 和后台代码的转换 快捷键
查看>>
在线视频播放软件
查看>>
用代码生成器生成的DAL数据访问操作类 基本满足需求了
查看>>
28初识线程
查看>>
Monkey测试结果分析
查看>>
Sublime Text 3 设置
查看>>
浅谈C++底层机制
查看>>
STL——配接器、常用算法使用
查看>>
第9课 uart
查看>>
Range和xrange的区别
查看>>
BZOJ 1010 [HNOI2008]玩具装箱 (斜率优化DP)
查看>>
java-动态规划算法学习笔记
查看>>
STL容器之vector
查看>>
Linux 内核中断内幕
查看>>
DNS负载均衡
查看>>