- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
11eda3_combination
常用组合逻辑电路设计 * * 第三讲 module 模块名 (输入、输出端口列表); /*端口描述*/ input 输入端口列表; output 输出端口列表; inout双向端口列表; /*内部信号声明*/ wire //nets型变量,通常缺省 reg //register变量 integer /*逻辑功能定义*/ endmodule Verilog HDL程序模板: 三、逻辑功能的定义 运算符及表达式 赋值语句 条件语句 语句的顺序执行与并行执行 结构说明语句 运算符 优先级别 ! ~ { } * / % + - = = == != === !=== ~ ^ ^~ | ~| || ?: 高优先级 低优先级 运算符及表达式 实现循环移位,如循环左移一位 wire[4 : 0] a; wire[4 : 0] b; assign b = {a[3 : 0] , a[4]}; 例如: wire[5:0] cancat; input[3:0] ina,inb; assign cancat={ ina[3],inb[1:0] } 位拼接运算符 {} :把两个或多个信号的某些位拼接起来进行运算作 module concat(a,b,f1,f2,f3); input[4:1] a,b; output f1,f2,f3; assign f1=(ab)? 1 : 0; assign f2=(ab)? 1 : 0; assign f3=(a==b)? 1 : 0; endmodule 条件运算符 信号=条件?表达式1:表达式2; 当条件为真时,信号取“表达式1”的值,否则,取“表达式2”的值。 结构说明语句 always块语句;function语句 ; initial语句;task语句 在一个模块中,initial说明语句用于模拟的初始化,仅执行一次;always语句则不断重复执行。task和function语句可以在程序模块中的一处或多处调用。 例:二选一数据选择器 module select2(in1,in2,sel,out); endmodule always @(sel or in1 or in2) begin out=sel? In1 : in2; end input[4:1] in1,in2; input sel; output[4:1] out; reg[4:1] out; 1、组合逻辑电路描述 对于时序电路,时钟是敏感信号,事件是由时钟边沿触发的。在Verilog HDL中,边沿用上升沿posedge和下降沿negedge两个关键字来描述。 2、时序逻辑电路描述 例:时钟上升沿触发 module event(clk,datain,dataout); input clk; input[4:1] datain; output[4:1] dataout; reg[4:1] dataout; always @(posedge clk) begin dataout=~datain; end endmodule 敏感表达式里没有列出输入信号datain,因为信号datain要起作用,必须有时钟边沿到来,因此只须列出时钟信号即可。但对于同步或异步控制信号,则必须列出来。 条件语句有if-else语句和case语句两种 if-else语句格式: if(表达式) 语句1; else 语句2; if(表达式1) 语句1; else if(表达式2) 语句2; …… else if(表达式n) 语句n; else 语句n+1; 条件语句 格式与C语言中的if-else语句相似 if(表达式) 语句; 语句可以是单句,也可以是多句,多句时用begin end括起来 条件语句 case语句格式: case语句的使用格式为: case (表达式) 结果1: 语句1; 结果2: 语句2; …… 结果n: 语句n; default: 语句n+1; endcase 在Verilog HDL 中,语句有顺序执行(按照书写的顺序执行)和并行执行(所有语句同时执行)两种方式。 always块内的语句是顺序执行的,always块之间、assign语句以及实例元件等语句都是并行执行的。 语句的顺序执行与并行执行 module f1 (a,b,c,d,f); input a,b,c,d; output f; wire r1,r2;
您可能关注的文档
最近下载
- 压力管道延期申请.pdf VIP
- 储能电站安全教育培训.pptx VIP
- 储能电站与消防安全课件.pptx VIP
- 计算机网络技术基础(第3版)全套PPT课件.pptx
- 第三课 在计算机中输入汉字(初中信息技术课件).ppt
- 通风空调工程识图与预算—通风空调工程计量与计价.pptx
- 2025年英语-成人高考高起点考试真题及参考答案.docx VIP
- 职业卫生评价考试真题.pdf VIP
- 小学科学新教科版三年级上册2.1.水到哪里去了教案(2025秋版).doc VIP
- 一汽-大众-迈腾MAGOTAN-产品使用说明书-新一代迈腾330TSI DSG尊贵型-FV7187BBDBG-MagotanB8L-201606.pdf
文档评论(0)