- 1、本文档共126页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3VerilogHDL硬件描述语言整理
运算符-关系运算符(二) 例: 如果操作数长度不同,长度较短的操作数在左方填0补齐。例: 逻辑相等与不等的比较中,只要一个操作数含有x或z,比较结果为未知(x)。如: 2345 //结果为False(0); 528hxFF //结果为x b1000=b01110; //等价于b01000=b01110;结果为假(0) Data = b11x0; Addr = b11x0; Data == Addr //比较结果不定,也就是说值为x 运算符-逻辑运算符(一) 包括: 逻辑与 || 逻辑或 ! 逻辑非 语法:(表达式1) 逻辑运算符 (表达式2) 运算结果为0或1,例: Crd=b0; //0为假 Dgs=b1; //1为真 CrdDgs //结果为0(假) Crd||Dgs //结果为1(真) !Dgs //结果为0(假) 运算符-逻辑运算符(二) 逻辑与()的真值表: 逻辑或(||)的真值表: 运算符-按位逻辑运算符(一) 包括: ~ 一元非,相当于非门运算 二元与,相当于与门运算 | 二元或,相当于或门运算 ^ 二元异或,相当于异或门运算 ~^, ^~ 二元异或非,即同或,相当于同或门运算 在输入操作数的对应位上按位操作,产生向量结果。 运算符-按位逻辑运算符(二) 按位逻辑运算符真值表: 运算符-按位逻辑运算符(三) 例: 如果操作数长度不相等,长度较小的操作数在最左端填0补位。例如: A = b0110; B = b0100; A|B //结果为b0110 AB //结果为b0100 b0110^b10000 //与下式的操作相同 b00110^b10000 //结果为:b10110 运算符-条件运算符 根据条件表达式的值选择表达式 语法:cond_expr ? expr1 : expr2; 如果cond_expr为真(1),选项expr1,如果cond_expr为假(0),选择expr2.如果cond_expr为x或z,结果是按以下逻辑expr1和expr2按位操作的值:0与0得1,1与1得1,其余情况为x 例: wire [2:0] Student = Marks18 ? Grade_A : Grade_C; //计算表达式Marks18,如果为真,Grade_Aa赋值给Stuent; //如果为假,Grade_c赋值给Student 运算符-连接运算符 将小表达式合并形成大表达式 语法:{expr1, expr2, …, exprN} 例: wire [7:0] Dbus; assign Dbus[7:4] = {Dbus[0], Dbus[1], Dbus[2], Dbus[3]}; //以反转的顺序将低端4位赋给高端4位 assign Dbus = {Dbus[3:0}, Dbus[7:4]}; //高4位与低4位交换 运算符:移位运算符 左移位运算符 右移位运算符 语法:an 或 an a代表要进行移位的操作数,n代表要移几位。 逻辑移位,移出的位用0填补 例1:若A=5’b11001,则: A2的值为5’b00110 A2的值为5’b00100 Verilog HDL基本语法 标识符 注释 格式 数字值集合 数据类型 运算符 If_else语句 Case语句 If_else语句 用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。 三种形式: If_else语句的三种形式 (1): if(condition) procedural_statement; (2): if(condition) procedural_statement_1; //语句1 else procedural_statement_2; //语句2 (3): if(condition_1) procedural_statement_1; //语句1 else if(condition_2) procedural_statement_2; //语句2 . . . else if(condition_m) procedural_statement_m; //语句m else procedural_statement_n; //语句n 说明: 1.if语句后面都有表达式,一般为逻辑表达式或关系表达式。0、x、z按“假”处理,1按“真”处理。 2.
文档评论(0)