新编数字逻辑电路(第2版)2解读.ppt

  1. 1、本文档共251页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * B3 B2 B1 B0 A3 A2 A1 A0 =1 A3 =1 =1 B3 B2 B1 B0 A2 A1 A0 * * 9.4 存储器的设计 9.4.1 RAM的设计 在Verilog HDL中,若干个相同宽度的向量构成数组,其中reg(寄存器)型数组变量即为memory(存储器)型变量。 memory型变量定义语句如下: reg[7:0] mymemory[1023:0]; 语句定义了一个1024个字的存储器变量mymemory,每个字的字长为8位。经定义后的memory型变量可以用下面的语句对存储器单元赋值(即写入): mymemory[7] = 75; //存储器mymemory的第7个字被赋值75 * * 8x8位RAM的Verilog HDL的源程序(myram.v)如下: module myram(addr,csn,wrn,data,q); input [2:0] addr; input csn,wrn; input [7:0] data; output [7:0] q; reg [7:0] q; reg [7:0] mymemory[2:0]; always @(posedge addr) begin if (csn) q = bzzzzzzzz; else if (wrn == 0) mymemory[addr]= data; else if (wrn == 1) q = mymemory[addr]; end endmodule * * 图7.14 8x8位RAM设计电路的仿真波形 在8x8位RAM设计电路的仿真波形中的第1阶段,由于csn=0和wrn=0,存储器处于写操作阶段。在此工作阶段,存储器根据地址addr的变化,将数据data写入存储器,此时的输出未具体赋值,因此输出q为未知(x)。在仿真波形的第2阶段,由于csn=0和wrn=1,存储器处于读操作阶段。在此工作阶段,存储器根据地址addr的变化,将已写入的数据送到q输出端。在仿真波形的第3阶段,由于csn=1,存储器处于禁止工作阶段,在此工作阶段,输出端为高阻状态(z)。 * * 9.4.2 ROM的设计 用case语句实现8x8位ROM的源程序from_rom.v如下: module from_rom(addr,ena,q); input [2:0] addr; input ena; output [7:0] q; reg [7:0] q; always @(ena or addr) begin if (ena) q = bzzzzzzzz;else case (addr) 0:q = 1:q = 2:q = 3:q = 4:q = 5:q = 6:q = 7:q = default : q = bzzzzzzzz; endcase end endmodule * * 用数组语句实现8x8位ROM的源程序from_rom.v如下: module from_rom(addr,ena,q); input [2:0] addr; input ena; output [7:0] q; reg [7:0] q; reg [7:0] ROM[2:0]; always @(ena or addr) begin ROM[0] = ROM[1] = ROM[2] = ROM[3] = ROM[4] = ROM[5] = ROM[6] = ROM[7] = if (ena) q = bzzzzzzzz; else q=ROM[addr]; end endmodule * * 9.5 半导体存储器的应用 多功能信号发生器 多谐震荡器 CP 存储器 D/A转换 波形输出 计数器 A0 A1 Ai-1 控制电路 输出电路 数据输出 * * 第10章 可编程逻辑器件 PROM是始于1970年出现第一块可编程逻辑器件PLD(Programmable Logic Device),随后可编程逻辑器件又陆续出现了PLA、PAL、GAL、EPLD及现阶段的C

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档