EDA课程第一部分.ppt

EDA课程第一部分.ppt

ID:56527524

大小:329.50 KB

页数:56页

时间:2020-06-27

EDA课程第一部分.ppt_第1页
EDA课程第一部分.ppt_第2页
EDA课程第一部分.ppt_第3页
EDA课程第一部分.ppt_第4页
EDA课程第一部分.ppt_第5页
资源描述:

《EDA课程第一部分.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数字集成电路设计入门--VerilogHDL经贸大学信息学院Verilog模块的基本概念MUXTWO的行为可以描述为:只要信号a或b或sel发生变化,如果sel为0则选择a输出;否则选择b输出。modulemuxtwo(out,a,b,sel);inputa,b,sel;outputout;regout;always@(seloraorb)if(!sel)out=a;elseout=b;endmodule这个行为级RTL描述不处理X和Z状态输入,并且没有延时。在行为级模型中,逻辑功能描述采用高级语言结构,如@,while,wait,if,case。Testbench(tes

2、tfixture)通常采用行为级描述。所有行为级结构在testbench描述中都可以采用。RTL模型中数据流都是基于时钟的。任何时钟元件在时钟沿处的行为都要精确描述。RTL级描述是行为级Verilog的子集。结构级描述(综合的概念)结构级Verilog适合开发小规模元件,如ASIC和FPGA的单元Verilog内部带有描述基本逻辑功能的基本单元(primitive),如and门。用户可以定义自己的基本单元UDP(UserDefinedPrivitives)下面是MUXTWO的结构级描述,采用Verilog基本单元(门)描述。moduletwomux(out,a,b,sl);

3、inputa,b,sl;outputout;notu1(nsl,sl);andu2(sela,a,nsl);andu3(selb,b,sl);oru4(out,sela,selb);endmodule综合不支持!3位加法器模型moduleadder(count,sum,a,b,cin);input[2:0]a,b;inputcin;outputcount;output[2:0]sum;assign{count,sum}=a+b+cin;Endmodule从例子中可以看出整个VerilogHDL程序是嵌套在module和endmodule声明语句里的。比较器模型Modulec

4、ompare(equal,a,b);outputequal;//声明输出信号intput[1:0]a,b;//声明输入信号assignequal=(a==b)?1:0;/*如果ab两个输入信号相等,输出为1;否则为0*/Endmodule这个程序描述了一个比较器.在这个程序中,/*........*/和//.........表示注释部分,注释只是为了方便程序员理解程序,对编译是不起作用的。三态驱动器moduletrist2(out,in,enable);outputout;inputin,enable;bufif1mybuf(out,in,enable);endmodule

5、这个程序描述了一个三态驱动器。程序通过调用一个实例元件bufif1来实现其功能。三态驱动器续moduletrist1(out,in,enable);outputout;inputin,enable;mytritri_inst(out,in,enable);endmodulemodulemytri(out,in,enable);outputout;inputin,enable;assignout=enable?In:'bz;endmodule简单的VerilogHDL模块通过上面的例子可以看到:VerilogHDL程序是由模块构成的。模块是可以进行层次嵌套的。正因为如此,才可

6、以将大型的数字电路设计分割成不同的小模块来实现特定的功能,最后通过顶层模块调用子模块来实现整体功能。每个模块要进行端口定义,并说明输入输出口,然后对模块的功能进行行为逻辑描述。VerilogHDL程序的书写格式自由,一行可以写几个语句,一个语句也可以分写多行。除了endmodule语句外,每个语句和数据定义的最后必须有分号可以用/*.....*/和//...对VerilogHDL程序的任何部分作注释。一个好的,有使用价值的源程序都应当加上必要的注释,以增强程序的可读性和可维护性。模块的结构module(模块)module能够表示:物理块,如IC或ASIC单元逻辑块,如一个C

7、PU设计的ALU部分整个系统每一个模块的描述从关键词module开始,有一个名称(如SN74LS74,DFF,ALU等等),由关键词endmodule结束。module是层次化设计的基本构件逻辑描述放在module内部语言的主要特点—模块端口(moduleports)端口在模块名字后的括号中列出端口可以说明为input,output及inout端口等价于硬件的引脚(pin)注意模块的名称DFF,端口列表及说明模块通过端口与外部通信模块的结构Verilog的基本设计单元是“模块”(block)。一个模块是由两部分组成

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。