Verilog表达式和语句课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Verilog表达式和语句课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Verilog 表达式 语句 课件
- 资源描述:
-
1、A1Verilog表达式和语句A2目录目录一运算符及表达式二语句目录A3壹运算符及表达式u1、基本的算数运算符、基本的算数运算符u2、赋值运算符、赋值运算符u3、关系运算符、关系运算符u4、逻辑运算符、逻辑运算符u5、位运算符、位运算符u6、等式运算符、等式运算符u7、移位运算符、移位运算符u8、位拼接运算符、位拼接运算符u9、优先级别、优先级别第4页一 运算符运算符(1)算数运算符:+、-、x、/、%(2)赋值运算符:=、=、=(4)逻辑运算符:&、|、!(5)条件运算符:?:(6)位运算符:&、|、(7)移位运算符:(8)拼接运算符:(9)其他。第5页1、基本的算数运算符(二进制运算符)、
2、基本的算数运算符(二进制运算符)(1)+(加法运算符,正值运算符,如rega+regb,+3)(2)-(减法运算符,负值运算符,如rega-2,-3)(3)x(乘法运算符,如rega*3)(4)/(除法运算符,如5/3)在进行整数除法运算时,结果值略去小数部分,只取整数部分。(5)%(模运算符,或者求余运算符,如7%3值为1)结果的符号位采用模运算式里第一个操作数的符号位,如:10%3,-10%3,10%-3第6页2、赋值运算符、赋值运算符(1)非阻塞赋值方式(如b=a)特点:1、所赋变量值不能立即为下面语句所用;2、块结束后才完成赋值操作,所赋的变量是上一次赋值得到的;3、编写可综合的时序逻
3、辑模块,这是最常用的赋值。例1 always(posedge clk)begin b=a;c=b;end第7页 (2)阻塞赋值方式(如b=a)特点:1、赋值语句执行完后,块才结束;2、赋值语句执行后,变量值立即改变;3、用在时序逻辑中,会产生意想不到的结果。例2 always(posedge clk)begin b=a;c=b;endDCLKQclkabc第8页3、关系运算符、关系运算符(1)ab (3)a=b 在进行关系运算时,如果声明关系为假(flase),返回值为0;如果声明关系为真(true),则返回值为1;如果某个操作数不定,则关系模糊,返回值为不定值。第9页4、逻辑运算符、逻辑运算
4、符(1)&逻辑与;(2)|逻辑或;(3)!逻辑非;“&”和“|”是双目运算符,“!”是单目运算符第10页5、位运算符、位运算符(1)按位取反,单目,如a=b1010;(2)&按位取与,将两个操作数相应位进行与运算。(3)|按位取或,将两个操作数相应位进行或运算。(4)按位异或,也称XOR运算符,将两个操作数相应位进行异或运算。(5)按位同或,将两个操作数先进行相应位异或运算在进行非运算。两个不同长度的数据进行位运算,系统会自动地将两者按右端对齐,位数少的操作数会在相应的高位用0填满,再进行位操作。第11页第12页6、等式运算符、等式运算符(1)=等于(2)!=不等于 又称逻辑等式运算符,结果由
5、两个操作数的值决定。操作数中可能为不定值x和高阻态z,结果可能为不定值x。第13页(3)=等于 (4)!=不等于 case等式运算符,常用于case表达式的判别。对操作数进行比较时对某些位的不定值和高阻态也进行比较,两个操作数必须完全一致时,结果才是1,否则为0。第14页7、移位运算符、移位运算符(1)右移位 使用方法:an,a代表进行移位的操作数,n代表要移几位。用0来填补移出的空位。例:4b10012=4b0010;第15页8、位拼接运算符、位拼接运算符 位拼接运算符,用这个运算符可以把两个或多个信号的某些位拼接起来进行运算操作,使用方法:信号1的某几位,信号2的某几位,信号n的某几位 例
6、:a,b3:0,w,3b101,可以写成 a,b3,b2,b1,b0,w,1b1,1b0,1b1 在位拼接表达式中不允许存在没有指明位数的信号。例:重复,4w等同于w,w,w,w 嵌套,b,3a,b等同于b,a,b,a,b,a,b第16页9、优先级别、优先级别第17页贰语句语句u1、条件语句(、条件语句(if_else)u2、case语句语句u3、循环语句、循环语句u4、块语句、块语句u5、过程块、过程块第18页1、条件语句(、条件语句(if_else)(1)if(表达式)语句。例如:if(ab)out1=int1;(2)if(表达式)语句1 else 语句2例如:if(ab)begin ou
7、t1=int1;out2=int2;end else begin out1=int2;out2=int1;end第21页(4)允许一定形式的表达式简写方式。例如:if(expression)等同与 if(expression=1)if(!expression)等同与 if(expression!=1)(5)if语句的嵌套。例如:if(expression1)if(expression2)语句1;(内嵌if)else 语句2;else if(expression3)语句3;(内嵌if)else 语句4;注:注意if和else的配对关系,else总是和它上面最近的if配对。如果if和else的数目
8、不一样,为了实现程序设计者的企图,可以用begin_end块语句来确定配对关系。第22页2、case语句语句(1)case(表达式)endcase(2)casez(表达式)endcase(3)casex(表达式)endcase case分支项的一般格式如下:分支表达式:语句;默认项(default项):语句;说明:(1)case括弧内的表达式成为控制表达式,case分支项中的表达式称为分支表达式。(2)当控制表达式的值等于分支表达式的值时,就执行分支表达式后面的语句。第23页(3)default项可有可无,有且只准有一个default项。(4)每个case分项的分项表达式的值必须互不相同。(5
9、)执行完case分项后的语句,则跳出该case语句结构,终止case语句的执行。(6)在用case语句表达式进行比较时,只有当信号的相应位的值能明确进行比较时,比较才能成功。(7)case语句的所有表达式值得位宽必须相同。第24页case,casez和casex的真值表casez语句用来处理不考虑高阻态z的比较过程。casex语句则将高阻态z和不定值x都视为不必关心的情况。第25页 例1:reg7:0 ir;casez(ir)8b1?:instruction1(ir);8b01?:instruction2(ir);8b00010?:instruction3(ir);8b000001?:inst
展开阅读全文