- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 Verilog语言初步介绍
芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 芜湖职业技术学院 * * FPGA应用技术 讲课教师:杨会伟 第2章 Verilog HDL语言初步介绍 Verilog语言概述 自顶向下的设计方法 完整的Verilog HDL设计实例 Verilog模块基本结构剖析 2.1 Verilog语言概述 HDL(Hardware Description Language)是一种用形式化方法来描述数字电路和数字逻辑系统的硬件描述语言。有两种类型:VHDL 和 Verilog HDL。 Verilog HDL语言具有这样的描述能力:设计的行为特性、设计的数据流特性、设计的结构组成,以及包含响应监控与设计验证方面的时延和波形产生机制。 Verilog HDL语言不仅定义了语法,而且对每个语法结构都定义了清晰的模拟和仿真语义。因此,用这种语言编写的模型能够使用Verilog仿真器进行验证。 VHDL侧重于系统级描述,通常被系统级设计人员所采用,Verilog侧重于电路级描述,从而更多地为电路级设计人员所采用。Verilog非常容易掌握,只需要有C语言编程基础就可很快上手。 Verilog与C语言的比较 (1)Verilog是一种硬件语言,最终是为了产生实际的硬件电路或对硬件电路进行仿真;而C语言是一种软件语言,是控制硬件来实现某些功能的语言。 (2)C语言只要是语法正确,都可以编译执行;而Verilog语言有可综合的限制,即在所有的Verilog语句中,只有一部分可以被综合,而另外的部分则不能被综合,只能用来仿真。 (3)C语言是一种软件编程语言,其基本思想是语句的循序执行;而Verilog语言的基本思想是模块的并行执行。 (4)利用Verilog编程时,要时刻记得Verilog是硬件语言,要时刻将Verilog与硬件电路对应起来。 monitor, display,strobe Printf Int Int Define Define Disable Break While While For For begin, end {,} Case Case if-then-else if-then-else module, function, task sub-function Verilog语言 C语言 常用的C语言与Verilog语言相对应的关键字与控制结构 常用的C语言与Verilog语言相对应的运算符 同等于if-else敘述 ?: ?: 左移 右移 按位逻辑同或 ~^ ~^ 按位逻辑异或 ^ ^ 按位逻辑或 | | 按位逻辑与 位反相 ~ ~ 不等于 != != 等于 == == 小于等于 = = 大于等于 = = 小于 大于 逻辑或 || || 逻辑且 反逻辑 ! ! 取模 % % 减 - - 加 + + 除 / / 乘 * * 功 能 Verilog语言 C语言 2.2 自顶向下的设计方法 通过自顶向下的设计方法,可以实现设计的结构化,可以使一个复杂的系统设计由多个设计者分工合作,还可以实现层次化的管理。 2.3完整的Verilog HDL设计实例 3位加法器 module addr (a, b, cin, count, sum); / /模块名及输入输出端口列表 input [2:0] a; / /定义信号流向及位宽 input [2:0] b; input cin; output count; output [2:0] sum; assign {count,sum} = a +b + cin; / /功能描述 endmodule 4位计数器 module count4 (out,reset,clk); Output [3:0] out; input reset,clk; reg[3:0] out; always @(posedge clk) begin if (reset) out=0;//同步复位 else out=out+1;//计数 end endmodule 从上面的例子可以看出,Verilog程序具
文档评论(0)