BCD段数码管显示译码器电路设计_第1页
BCD段数码管显示译码器电路设计_第2页
BCD段数码管显示译码器电路设计_第3页
BCD段数码管显示译码器电路设计_第4页
BCD段数码管显示译码器电路设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

BCD-7段数码管显示译码器电路设计

一、项目资讯请根据要求在EDA实验箱上设计BCD-7段数码管显示译码器电路,要求:⑴使用EDA实验箱上开关设置模块的K4、K3、K2、K1开关作为BCD码输入;⑵使用EDA实验箱上键盘显示模块中最右边一位的数码管显示输入的BCD码编码数值;⑶进行功能仿真。一、项目资讯1、BCD-7段数码管显示译码器电路的工作原理。2、基于FPGA与VHDL的数字电路与数字系统设计方法与工作流程。3、WITH-SELECT语句与WHEN-ELSE语句及其应用。4、进程语句、CASE语句、IF语句及其应用。二、项目计划⑴能在Max+PlusII软件平台上调试BCD-7段显示译码电路VHDL程序,并进行功能仿真;⑵能在EDA实验系统上进行硬件验证测试。本项目涉及的VHDL语法VHDL顺序语句(CASE)变量与信号的区别VHDL并行语句(PROCESS)硬件执行:并行执行(VHDL本质)仿真执行:顺序执行、并行执行分为两大类:顺序(Sequential)描述语句并行(Concurrent)描述语句ARCHITECTUREProcessProcessENTITYSequentialProcessCombinationalProcessportsportscomponentVHDL顺序语句(Sequential)顺序描述语句:执行顺序与书写顺序一致,与传统软件设计语言的特点相似。顺序语句只能用在进程与子程序中。可描述组合逻辑、时序逻辑。常用的顺序描述语句:赋值语句;if语句;case语句;loop语句;next语句;exit语句;子程序;return语句;wait语句;null语句。1、变量赋值与信号赋值

变量与信号的差异:1)赋值方式的不同:变量:=表达式;信号<=表达式;2)硬件实现的功能不同:信号代表电路单元、功能模块间的互联,代表实际的硬件连线;变量代表电路单元内部的操作,代表暂存的临时数据。3)有效范围的不同:信号:程序包、实体、结构体;全局量。变量:进程、子程序;局部量。

ARCHITECTURE{SIGNALDeclarations}label1:PROCESS{VARIABLEDeclarations}label2:PROCESS{VARIABLEDeclarations}┇4)赋值行为的不同:信号赋值延迟更新数值、时序电路;变量赋值立即更新数值、组合电路。5)信号的多次赋值a.一个进程:最后一次赋值有效b.多个进程:多源驱动线与、线或、三态例:信号的多次赋值architecturertlofexissignala:std_logic;beginprocess(…)begina<=b;…a<=c;endprocess;endrtl;architecturertlofexissignala:std_logic;beginprocess(…)begina<=b;…endprocess;process(…)begina<=c;...endprocess;endex;例:信信号赋赋值与与变量量赋值值的比比较信号赋赋值::architecturertlofsigissignala,b:std_logic;--定定义信号beginprocess(a,b)begina<=b;b<=a;endprocess;endrtl;--结果是a和b的值互互换变量赋值::architecturertlofvarisbeginprocessvariablea,b:std_logic;--定定义变量量begina:=b;b:=a;endprocess;endrtl;--结果果是a和b的值都都等于b的的初值例:变量赋赋值实现循循环语句功功能process(indicator,sig)variabletemp:std_logic;begintemp:=‘‘0’;foriin0to3looptemp:=tempxor(sig(i)andindicator(i));endloop;output<=temp;endprocess;以上语句等效效为:process(indicator,sig)variabletemp:std_logic;begintemp:=‘0’’;temp:=tempxor(sig(0)andindicator(0));temp:=tempxor(sig(1)andindicator(1));temp:=tempxor(sig(2)andindicator(2));temp:=tempxor(sig(3)andindicator(3));output<=temp;endprocess;如改改为为信信号号,,则则无无法法实实现现原原功功能能::………signaltemp:std_logic;………process(indicator,sig,temp)begintemp<=‘‘0’’;temp<=tempxor(sig(0)andindicator(0));temp<=tempxor(sig(1)andindicator(1));temp<=tempxor(sig(2)andindicator(2));temp<=tempxor(sig(3)andindicator(3));output<=temp;endprocess;转向控制语句转向控制语句句通过条件控控制开关决定定是否执行一条或几条条语句,或重重得执行一条条或几条语句句,或跳过一条或或几条语句。。分为五种:if语句、、case语语句、loop语语句、next语句、、exit语语句case语语句case语语句常用来描描述总线或编编码、译码行行为。可读性比if语句强。。格式如下:case表表达式式iswhen分分支条件=>顺顺序处理语语句;when分分支条条件=>顺顺序处理语语句;when分分支条条件=>顺顺序处理语语句;endcase;┇其中的分支条条件可有以下下的形式:when值值=>顺顺序处理语语句;when值值to值=>顺顺序处理语句句;when值值|值|值值|…|值=>顺序序处理语句;;以上三种方式式的混合;whenothers=>顺序处处理语句;Case语语句使用注意意:1)分支条件件的值必须在在表达式的取取值范围内。。2)两个分支支条件不能重重叠。3)CASE语句执行时时必须选中,,且只能选中中一个分支条件。。4)如果没有有others分支条件存在在,则分支条条件必须覆盖表表达式所有可可能的值。对std_logc,std_logic_vector数据类型型要特别注意意使用others分支支条件。例:用case语句描描述四选一电电路例:case语句的误用signalvalue:integerrange0to15;signalout_1:bit;casevalueis--缺少when条件语句句endcase;casevalueis--分支条条件不包含2到15when0=>out_1<=‘‘1’;when1=>out_1<=‘0’;endcase;casevalueis--在5到到10上发生生重叠when0to10=>out_1<=‘1’’;when5to15=>out_1<=‘0’’;endcase;例:根据输入入确定输出值值libraryieee;useieee.std_logic_1164.all;entitymux41isport(s4,s3,s2,s1:instd_logic;z4,z3,z2,z1:outstd_logic);endmux41;architectureartofmux41isbeginprocess(s4,s3,s2,s1)variablesel:integerrange0to15;beginsel:=0;ifs1=‘‘1’thensel:=sel+1;endif;ifs2=‘‘1’thensel:=sel+2;endif;ifs3=‘‘1’thensel:=sel+4;endif;ifs4=‘‘1’thensel:=sel+8;endif;z1<=‘0’;z2<=‘0’;z3<=‘0’’;z4<=‘0’’;caseseliswhen0=>z1<=‘1’;when1|3=>z2<=‘1’;when4to7|2=>z3<=‘1’;whenothers=>z4<=‘1’;endcase;endprocess;endart;常用的并行描描述语句有::进程(process))语句、块(block)语句、、顺序描述语句句的并行版本本、并行过程调用用语句、元件例化语句句、生成语句。进程(process))语句进程(process))语句最具VHDL语言言特色。提供了一种用算算法描述硬件件行为的方法法。特点:1、进程与进进程,或其它它并发语句之之间的并发性性;2、进程内部部的顺序性;;3、进程的启启动与挂起;;4、进程与进进程,或其它它并发语句之之间的通信。。进程语句process信号信号信号进程语句process进程语句process敏感信号表::进程内要读读取的所有敏敏感信号(包括端口))的列表。每每一个敏感信号的变化,,都将启动进进程。格式:[标记:]process[(敏感信号号表)]{进程说明明项}begin{顺序描述述语句}endprocess[标记记];信号名称{,信号名称称}3、如果有wait语语句,则不不允许有敏感感信号表。PROCESS(a,b)BEGIN--sequentialstatementsENDPROCESS;PROCESSBEGIN--sequentialstatementsWAITON(a,b);ENDPROCESS;BCD-7段段显示译码器器工作原理BCD-7段段译码器是由由7个发光二二极(LED)管构成,,LED由特特殊的半导体体材料砷化镓镓、磷砷化镓镓等制成,组组装成分段式式或点阵式LED显示器器件(半导体体显示器)。。分段式显示示器(LED数码管)由由7条线段围围成8型,每每一段包含一一个发光二极极管。外加正正向电压时二二极管导通,,发出清晰的的光,有红、、黄、绿等色色。只要按规规律控制各发发光段的亮、、灭,就可以以显示各种字字形或符号。。图5.1(a)是共共阴式LED数码管管的原理图图,图5.1(b)是其表示示符号。使使用时,公公共阴极接接地,7个个阳极a~g由相应应的BCD-7段译译码器来驱驱动(控制制),如图图5.1(c)所示示。图中,,电阻是上上拉电阻,,也称限流流电阻,当当译码器内内部带有上上拉电阻时时,则可省省去。数字字显示译码码器的种类类很多,现现已有将计计数器、锁锁存器、译译码驱动电电路集于一一体的集成成器件,还还有连同数数码显示器器也集成在在一起的电电路可供选选用。BCD-7

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论