欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    【教学课件】第3章VHDL基础.ppt

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

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

    【教学课件】第3章VHDL基础.ppt

    第第3 3章章 VHDLVHDL基础基础 在在VHDLVHDL中,数据对象有中,数据对象有3 3类:常量(类:常量(constant constant)、变量()、变量(variablevariable)、)、信号(信号(signalsignal)3.6.1 3.6.1 常量常量 常量的定义和设置主要是为了使程序更容易阅读和修改。常量的定义和设置主要是为了使程序更容易阅读和修改。定义的一般表述方法:定义的一般表述方法:Constant Constant 常量名:数据类型:常量名:数据类型:=表达式表达式例:例:constant constant X X:std_logic_vector:=“010110”:std_logic_vector:=“010110”定义常数定义常数X X的数据类型是的数据类型是std_logic_vectorstd_logic_vector,它等于,它等于“010110”“010110”constant constant Y Y:integer:=15:integer:=15定义常数定义常数Y Y的数据类型是的数据类型是integerinteger,它等于,它等于15153.6 3.6 数据对象数据对象 P67P67常数使用范围说明:常数使用范围说明:P131P131 常数的使用范围取决于它被定义的位置。库包集合实体构造体进程1、当常数CS是在包集合里被定义的,那它可以在调用此包集 合的所有程序中使用。2、当常数CS是在某一程序的实体里被定义的,那它只可以在 该程序的实体、构造体、进程中使用。3、当常数CS是在某一程序的构造体里被定义的,那它只可以 在该程序的该构造体、该进程中使用。4、当常数CS是在构造体里某一进程中被定义的,那它只可以 在该进程中使用。3.6.2 变量变量 P68 变量是局部量,只能在进程和子程序中被定义和使用,主要是作为临时的数据存储单元。1、定义方式:variable 变量名称:数据类型 :=初始值;例:Variable a:integer range 0 to 15 ;定义变量a为整数类型,取值范围在015。Variable b:std_logic :=1;定义变量b为std_logic(标准位)类型,初始值为1,后面如果程序 有对它赋值,b的数值将=最后的赋值。2、赋值方式 变量名:=表达式a:=b;b:=3.0;c:=d+e;3.6.3 3.6.3 信号信号 信号是全局量,能在包集合、实体、结构体中被定义和使用,主要是作为类似于连接线的作用。在进程和子程序中是不能被定义。1、定义方式:signal 变量名称:数据类型 :=初始值;例:signal c:integer range 0 to 15 ;定义信号量a为整数类型,取值范围在015。signal d:std_logic :=1;定义信号量b为std_logic(标准位)类型,初始值为1。2、赋值方式 信号量名=表达式A=b;B=3.0;C=d+e;3.6.4 信号和变量的区别信号变量适用范围在整个结构体内的任何地方都能适用只能在所定义的进程中使用可否作为敏感量可不可赋值特性在进程的最后才对信号赋值,所以需要延时一个时间段,才能将新的数值传递给信号。立即赋值同一个信号可以在多个进程中的值是唯一的在不同进程中的值是可以不同的例例5-3 5-3 例例5-4 5-4 Architecture bhv of dff4 isArchitecture bhv of dff4 isBeginBeginProcess(clk)Process(clk)Variable a,b:std_logic;Variable a,b:std_logic;BeginBeginIf(clkevent and clk=1)thenIf(clkevent and clk=1)thena:=D1;a:=D1;b:=a;b:=a;Q1:=b;Q1:=b;End if;End if;End process;End process;End bhv;End bhv;Architecture bhv of dff3 isArchitecture bhv of dff3 isSignal a,b:std_logic;Signal a,b:std_logic;BeginBeginProcess(clk)Process(clk)BeginBeginIf(clkevent and clk=1)thenIf(clkevent and clk=1)thena=D1;a=D1;b=a;b=a;Q1=b;Q1=b;End if;End if;End process;End process;End bhv;End bhv;clkd1abq1000001110020010300014000051100600107000180000clkd1abq1000001111120000300004000051111600007000080000例例5-3(5-3(信号信号)例例5-4(5-4(变量变量)六盏彩灯控制CD1要求1、六盏灯编号分别为Y1、Y2、Y3、Y4、Y5、Y6;2、有一“控制方式选择键”,当电路的电源接通后,该选择键为0时,彩灯点亮顺序为Y1、Y3、Y5。3、当该选择键为1时,彩灯点亮顺序为Y2、Y4、Y6。4、每盏灯依次隔1秒被点亮。画出外围电路、写出流程程序library ieee;use ieee.std_logic_1164.all;use;use;entity cd1 is port(clk,xz:in std_logic;y1,y2,y3,y4,y5,y6:out std_logic);end cd1;architecture rtl of cd1 issignal a1,b2,c3,d4,e5,f6:std_logic;Begin process(clk,xz)beginif(clkevent and clk=1)then if(xz=0)then a1=1;c3=a1;e5=c3;elsif(xz=1)then b2=1;d4=b2;f6=d4;end if;end if;y1=a1;y2=b2;y3=c3;y4=d4;y5=e5;y6=f6;end process;end rtl;cd1要求1、六盏灯编号分别为Y1、Y2、Y3、Y4、Y5、Y6;2、有一“控制方式选择键”,当电路的电源接通后,该选择键为0时,彩灯点亮顺序为Y1、Y3、Y5。3、当该选择键为1时,彩灯点亮顺序为Y2、Y4、Y6。4、每盏灯依次隔1秒被点亮,按下复位键灯都灭。画出外围电路、写出流程六盏彩灯控制CD2程序entity cd2 is port(clk,xz:in std_logic;y1,y2,y3,y4,y5,y6:out std_logic);end cd2;architecture rtl of cd2 issignal a1,b2,c3,d4,e5,f6:std_logic;Begin process(clk,xz,rs)BeginIf (rs=1)thena1=0;b2=0;c3=0;d4=0;e5=0;f6=0;elsif(clkevent and clk=1)then if(xz=0)then a1=1;c3=a1;e5=c3;elsif(xz=1)then b2=1;d4=b2;f6=d4;end if;end if;y1=a1;y2=b2;y3=c3;y4=d4;y5=e5;y6=f6;end process;end rtl;cd23人抢答器1要求1、第1个按下抢答按钮的人,抢答器将点亮他的灯并保持,其他2人的抢答信号无效。2、主持人按下复位键后,灯灭,才可以接受下一次的抢答。画出外围电路、写出流程entity qdq1 isentity qdq1 is port(q1,q2,q3,rs:in std_logic;port(q1,q2,q3,rs:in std_logic;y1,y2,y3:out std_logic);y1,y2,y3:out std_logic);end qdq1;end qdq1;architecture rtl of qdq1 isarchitecture rtl of qdq1 issignal qdsignal qd,xh:std_logic;xh:std_logic;beginbeginprocess(q1,q2,q3,qd,rs,xh)process(q1,q2,q3,qd,rs,xh)beginbeginqd=q1 or q2 or q3;qd=q1 or q2 or q3;if(rs=1)then if(rs=1)then y1=0;y1=0;y2=0;y2=0;y3=0;y3=0;xh=0;xh=0;elsif(qdevent and qd=1)then elsif(qdevent and qd=1)then if(q1=1 and if(q1=1 and xh=0)xh=0)then then y1=1;y2=0;y1=1;y2=0;y3=0;y3=0;xh=1;xh=1;elsif(q2=1 and elsif(q2=1 and xh=0)xh=0)then then y1=0;y2=1;y1=0;y2=1;y3=0;y3=0;xh=1;xh=1;elsif(q3=1 and elsif(q3=1 and xh=0)xh=0)then then y1=0;y2=0;y1=0;y2=0;y3=1;y3=1;xh=1;xh=1;end if;end if;end if;end if;end process;end process;end rtl;end rtl;qdq13人抢答器2要求1、第1个按下抢答按钮的人,抢答器将 点亮他的灯并保持,其他2人的抢答信号无效。2、如果同时有2人或3人按下抢答按钮,抢答信号无效。3、主持人按下复位键后,灯灭,才可以接受下一次的抢答。4、显示第1个抢答成功的号码。防盗产品3 参考答案要求:1、当有人靠近红外线探测器工作范围时,要求有闪烁的红光和报警声。2、“功能选择键”为0低电平时选择A的功能要求,当“功能选择键”为1高电平时选择B的功能要求,A、当人离开红外线探测器工作范围时,要求立即停止闪烁的红光和报警声。B、当人离开红外线探测器工作范围时,闪烁的红光和报警声仍然存在,只有按下复位键,才能停止闪烁的红光和报警声。作业要完成内容:1、外围电路2、程序3、仿真后的正确波形图防盗产品3 architecture rtl of fang_dao3 isbeginprocess(fdxh,rs,xz)begin if(rs=1)then bjsy=0;bjdg=0;elsif(xz=0 and fdxh=1)then bjsy=1;bjdg=1;elsif(fdxhevent and fdxh=1)then if(xz=1)then bjsy=1;bjdg=1;end if;end if;end process;end rtl;entity fang_dao3 isentity fang_dao3 is port(fdxh,rs,xz,port(fdxh,rs,xz,pdpd:in std_logic;:in std_logic;bjsy,bjdg:out std_logic);bjsy,bjdg:out std_logic);end fang_dao3;end fang_dao3;architecture rtl of fang_dao3 isarchitecture rtl of fang_dao3 isbeginbeginprocess(fdxh,rs,xz,pd)process(fdxh,rs,xz,pd)beginbeginif(rs=1 if(rs=1 or(pd=0 and xz=0 and fdxh=0)or(pd=0 and xz=0 and fdxh=0)thenthen bjsy=0;bjsy=0;bjdg=0;bjdg=0;elsif(xz=0 and fdxh=1)thenelsif(xz=0 and fdxh=1)then bjsy=1;bjsy=1;bjdg=1;bjdg=1;elsif(fdxhevent and fdxh=1)then elsif(fdxhevent and fdxh=1)then if(xz=1)then if(xz=1)then bjsy=1;bjsy=1;bjdg=1;bjdg=1;end if;end if;end if;end if;end process;end process;end rtl;end rtl;

    注意事项

    本文(【教学课件】第3章VHDL基础.ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开