欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    EDA技术与Verilog设计第7章.ppt

    • 资源ID:6504889       资源大小:262.49KB        全文页数:31页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    EDA技术与Verilog设计第7章.ppt

    第7章 Verilog设计的层次与风格,主要 内容,结构(Structural)描述 行为(Behavioural)描述 数据流(Data Flow)描述 基本组合电路设计 基本时序电路设计,7.1 Verilog设计的层次,结构(Structural)描述 行为(Behavioural)描述 数据流(Data Flow)描述,在Verilog程序中可通过如下方式描述电路的结构 调用Verilog内置门元件(门级结构描述)调用开关级元件(晶体管级结构描述)用户自定义元件UDP(也在门级),7.2 结构(Structural)描述,Verilog的内置门元件,门元件的调用,调用门元件的格式为:门元件名字()其中普通门的端口列表按下面的顺序列出:(输出,输入1,输入2,输入3);比如:and a1(out,in1,in2,in3);/三输入与门对于三态门,则按如下顺序列出输入输出端口:(输出,输入,使能控制端);比如:bufif1 mytri1(out,in,enable);/高电平使能的三态门,门级结构描述的2选1MUXmodule MUX1(out,a,b,sel);output out;input a,b,sel;not(sel_,sel);and(a1,a,sel_),(a2,b,sel);or(out,a1,a2);endmodule,7.3 行为描述,就是对设计实体的数学模型的描述,其抽象程度远高于结构描述方式。行为描述类似于高级编程语言,当描述一个设计实体的行为时,无需知道具体电路的结构,只需要描述清楚输入与输出信号的行为,而不需要花费更多的精力关注设计功能的门级实现。,行为描述的2选1MUX,module mux2(out,a,b,sel);output out;input a,b,sel;reg out;always(a or b or sel)begin if(sel)out=b;else out=a;endendmodule,7.4 数据流描述,数据流描述方式主要使用持续赋值语句,多用于描述组合逻辑电路,其格式为:assign LHS_net=RHS_expression;右边表达式中的操作数无论何时发生变化,都会引起表达式值的重新计算,并将重新计算后的值赋予左边表达式的net型变量。,数据流描述的2选1MUX,module MUX3(out,a,b,sel);output out;input a,b,sel;assign out=sel?b:a;endmodule,7.5 不同描述风格的设计,对设计者而言,采用的描述级别越高,设计越容易;对综合器而言,行为级的描述为综合器的优化提供了更大的空间,较之门级结构描述更能发挥综合器的性能,所以在电路设计中,除非一些关键路径的设计采用门级结构描述外,一般更多地采用行为建模方式。,结构描述的一位全加器,module full_add1(a,b,cin,sum,cout);input a,b,cin;output sum,cout;wire s1,m1,m2,m3;and(m1,a,b),(m2,b,cin),(m3,a,cin);xor(s1,a,b),(sum,s1,cin);or(cout,m1,m2,m3);endmodule,数据流描述的1位全加器,module full_add2(a,b,cin,sum,cout);input a,b,cin;output sum,cout;assign sum=a b cin;assign cout=(a endmodule,行为描述的1位全加器,module full_add4(a,b,cin,sum,cout);input a,b,cin;output sum,cout;reg sum,cout,m1,m2,m3;always(a or b or cin)begin m1=aendendmodule,4位加法器,4-bit adder,include full_add1.vmodule add4_1(sum,cout,a,b,cin);output 3:0 sum;output cout;input 3:0 a,b;input cin;full_add1 f0(a0,b0,cin,sum0,cin1);full_add1 f1(a1,b1,cin1,sum1,cin2);full_add1 f2(a2,b2,cin2,sum2,cin3);full_add1 f3(a3,b3,cin3,sum3,cout);endmodule,结构描述的4位级连全加器,module add4_2(cout,sum,a,b,cin);output3:0 sum;output cout;input3:0 a,b;input cin;assign cout,sum=a+b+cin;endmodule,数据流描述的4位加法器,行为描述的4位加法器,module add4_3(cout,sum,a,b,cin);output3:0 sum;output cout;input3:0 a,b;input cin;reg3:0 sum;reg cout;always(a or b or cin)begincout,sum=a+b+cin;endendmodule,7.6 基本组合电路设计,门级结构描述 module gate1(F,A,B,C,D);input A,B,C,D;output F;nand(F1,A,B);/调用门元件and(F2,B,C,D);or(F,F1,F2);endmodule,数据流描述module gate2(F,A,B,C,D);input A,B,C,D;output F;assign F=(A/assign持续赋值endmodule,行为描述module gate3(F,A,B,C,D);input A,B,C,D;output F;reg F;always(A or B or C or D)/过程赋值beginF=(Aendendmodule,基本组合电路设计,用bufif1关键字描述的三态门 module tri_1(in,en,out);input in,en;output out;tri out;bufif1 b1(out,in,en);endmodule,基本组合电路设计,3-to-8 decoder,module decoder_38(out,in);output7:0 out;input2:0 in;reg7:0 out;always(in)begin case(in)3d0:out=8b11111110;3d1:out=8b11111101;3d2:out=8b11111011;3d3:out=8b11110111;3d4:out=8b11101111;3d5:out=8b11011111;3d6:out=8b10111111;3d7:out=8b01111111;endcase endendmodule,基本组合电路设计,奇偶校验位产生器 Module parity(even_bit,odd_bit,input_bus);output even_bit,odd_bit;input7:0 input_bus;assign odd_bit=input_bus;/产生奇校验位assign even_bit=odd_bit;/产生偶校验位endmodule,基本组合电路设计,用if-else语句描述的4选1 MUXmodule mux4_1(out,in0,in1,in2,in3,sel);output out;input in0,in1,in2,in3;input1:0 sel;reg out;always(in0 or in1 or in2 or in3 or sel)beginif(sel=2b00)out=in0;else if(sel=2b01)out=in1;else if(sel=2b10)out=in2;else out=in3;endendmodule,7.7 基本时序电路设计,D-FF designs(基本D触发器),module DFF(Q,D,CLK);output Q;input D,CLK;reg Q;always(posedge CLK)beginQ=D;endendmodule,基本时序电路设计,带异步清0、异步置1的D触发器module DFF1(q,qn,d,clk,set,reset);input d,clk,set,reset;output q,qn;reg q,qn;always(posedge clk or negedge set or negedge reset)beginif(!reset)beginq=0;qn=1;/异步清0,低电平有效end else if(!set)beginq=1;qn=0;/异步置1,低电平有效end else begin q=d;qn=d;endendendmodule,基本时序电路设计,带同步清0、同步置1的D触发器module DFF2(q,qn,d,clk,set,reset);input d,clk,set,reset;output q,qn;reg q,qn;always(posedge clk)beginif(reset)begin q=0;qn=1;end/同步清0,高电平有效else if(set)begin q=1;qn=0;end/同步置1,高电平有效else begin q=d;qn=d;endendendmodule,基本时序电路设计,8位数据锁存器module latch_8(qout,data,clk);output7:0 qout;input7:0 data;input clk;reg7:0 qout;always(clk or data)beginif(clk)qout=data;endendmodule,基本时序电路设计,8位数据寄存器module reg8(out_data,in_data,clk,clr);output7:0 out_data;input7:0 in_data;input clk,clr;reg7:0 out_data;always(posedge clk or posedge clr)beginif(clr)out_data=0;else out_data=in_data;endendmodule,基本时序电路设计,可变模加法/减法计数器module updown_count(d,clk,clear,load,up_down,qd);input7:0 d;input clk,clear,load,up_down;output7:0 qd;reg7:0 cnt;assign qd=cnt;always(posedge clk)beginif(!clear)cnt=8h00;/同步清0,低电平有效else if(load)cnt=d;/同步预置else if(up_down)cnt=cnt+1;/加法计数else cnt=cnt-1;/减法计数endendmodule,习 题,7-1 Verilog语言支持哪几种描述方式,各有什么特点?7-2 分别用结构描述和行为描述方式设计一个基本的D触发器,并进行综合。7-3 分别用结构描述和行为描述方式设计一个JK触发器,并进行综合。7-4 试编写同步模5计数器程序,有进位输出和异步复位端。7-5 编写4位串/并转换程序。7-6 编写4位并/串转换程序。7-7 编写4位除法电路程序。,

    注意事项

    本文(EDA技术与Verilog设计第7章.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开