ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:478.75KB ,
资源ID:7321731      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7321731.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大二下数电实验报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大二下数电实验报告.docx

1、大二下数电实验报告数字电路与逻辑设计实验实验报告 班级:_ 学号:_姓名:_日期: _2015/5/30_一、实验目的(1)熟悉Quartus II原理图输入法进行电路设计和仿真(2)掌握Quartus II 图形模块单元的生成与调用(3)熟悉实验板的使用(4)熟悉用VHDL语言设计组合逻辑电路的方法(5)熟悉用Quartus II文本输入法进行电路设计(6)熟悉不同的编码及其之间的转换(7)熟悉用VHDL语言设计时序逻辑电路的方法(8)熟悉计数器、分频器的设计方法(9)掌握多个数码管动态扫描显示的原理及设计方法二、实验器材(1)计算机(2)直流稳压电源(3)数字系统与逻辑设计实验开发板三、实

2、验名称与要求实验一 Quartus II 原理图输入法设计与实现任务要求:(1)用逻辑门设计一个半加器,仿真验证其功能,并生成新的半加器图形模块单元; (2)实验内容(1)中生成的半加器模块和逻辑门设计一个全加器,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号;(3)用74LS138译码器逻辑门设计实现函数,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号。实验内容1、 半加器连接图:2、 全加器连接图:仿真图:仿真分析:实验用生成的半加器模块单元设计一个全加器,有三个输入,ai,bi,ci-1分别为两加数以及上一级

3、的进位输出。有两个输出:si为加数之和,ci为进位输出,实现了一位全加器功能。3、 3线-8线译码器74LS138和逻辑门设计实现函数F连接图:仿真图:实验二 用VHDL设计与实现组合逻辑电路任务要求:(1)用VHDL语言设计实现一个共阴极7段数码管译码器,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,7段数码管显示输出信号;(2)用VHDL语言设计实现一个8421码转换为余3码的代码转换器,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号;(3)用VHDL语言设计实现一个4位二进制奇校验器,输入奇数个“1”时输出为“1”,否则输出为“0

4、”,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号。实验内容1、 数码管译码器代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY PR1_CL2 IS PORT( a: IN STD_LOGIC_VECTOR (3 downto 0); b: OUT STD_LOGIC_VECTOR (6 downto 0) );end PR1_CL2;ARCHITECTURE PR1_CL2_arch OF PR1_CL2 ISBEGIN PROCESS(a) BEGIN CASE a IS WHEN0000 = b

5、b b b b b b b b b b B B B B b b b b b b B b b b b b b b b b b b b b b b b =0; END CASE; END PROCESS;END;仿真图:实验三 用VHDL设计与实现时序逻辑电路任务要求:(1)用VHDL语言设计实现一个带异步复位的8421码十进制计数器,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号;(2)用VHDL语言设计实现一个分频系数为12,分频输出信号占空比为50%的分频器,仿真验证其功能;(3)将(1)(2)和数码管译码器三个电路进行连接,并下载到实验板显示计数结果

6、。实验内容1、 带异步复位的8421码十进制计数器代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY count10 ISPORT( clk,clear: IN STD_LOGIC; q: OUT STD_LOGIC_VECTOR (3 DOWNTO 0) );END count10;ARCHITECTURE behave OF count10 IS SIGNAL q_temp: STD_LOGIC_VECTOR (3 DOWNTO 0); BEGIN PROCESS(clk,cl

7、ear) BEGIN IF clear = 1 THEN q_temp= 0000; ELSIF(clkevent AND clk = 1) THEN IF q_temp= 1001 THEN q_temp= 0000; ELSE q_temp=q_temp+1; END IF; END IF;END PROCESS;q=q_temp;END behave;仿真图:2、分频器代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY div_12 ISPORT(clk,clear: IN

8、STD_LOGIC;clk_out: OUT STD_LOGIC);END div_12;ARCHITECTURE behave OF div_12 IS SIGNAL temp: INTEGER RANGE 0 TO 5; SIGNAL clktemp: STD_LOGIC; BEGINPROCESS(clk,clear) BEGIN IF clear = 1 THENtemp= 0;ELSIF(clkevent AND clk = 1) THEN IF temp= 5 THENtemp= 0; clktemp=not clktemp;ELSE temp=temp+1; END IF; EN

9、D IF;END PROCESS;clk_outCLK,clear=CLEAR,clk_out=clktmp);u2:count10 PORT MAP(clk=clktmp,clear=CLEAR,q=clktemp);u3:PR1_CL2 PORT MAP(a=clktemp,b=OP,c=CAT);END behave;端口说明及连接图:先分频器加外部时钟输入,然后其输出链接到异步复位10进制计数器作为时钟输入,再链接到数码管译码器的输入端,最后通过数码管译码器输出显示。12分频器和异步复位10进制计数器的clear端高电平有效。仿真图:仿真分析:每输入12个脉冲时计数器便计数一次,计数器

10、为0-9循环计数,再根据0-9数字对应的数码管abcdefg字段输出b6b0,0对应的是1111110,1对应的是0110000,2对应的是1101101,3对应的是1111001,4对应的是0110011,5对应的是1011011,6对应的是1011111,7对应的是1110000,8对应的是1111111,9对应的是1111011. c5c0对应6个数码管,由于过程中只需一个数码管显示且为共阴极,故设置c5为0,其余均为1.clear为异步复位信号,当clear为1时,计数器便回到0,重新开始计数,此时数码管也输出相应的“1111110”.实验四 用VHDL设计与实现相关电路任务要求:(1

11、)用VHDL语言设计并实现六个数码管滚动显示电路I、循环左滚动,始终点亮6个数码管,左出右进。状态为:012345123450234501345012450123501234012345代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity PR2_CL4 is port(clear,clk_in: in std_logic; cat:out std_logic_vector(5 downto 0); a_out:out std_logic_vector(6 downto 0);end

12、 ;architecture arch of PR2_CL4 issignal tmp:std_logic_vector(6 downto 0); signal count:integer range 0 to 149; signal cat_tmp:std_logic_vector(5 downto 0) ; begin process(clk_in,clear) begin IF(clear=1) THEN cat_tmp=”111111”; elsif(clk_inevent and clk_in=1) then if count=24 then cat_tmp=011111; coun

13、t=count+1; elsif count=49 then cat_tmp=101111; count=count+1; elsif count=74 then cat_tmp=110111; count=count+1; elsif count=99 then cat_tmp=111011; count=count+1; elsif count=124 then cat_tmp=111101; count=count+1; elsif count=149 then cat_tmp=111110; count=0; else counttmptmptmptmptmptmptmp=000000

14、0; end case; end process; cat=cat_tmp; a_out=tmp;END;分频器代码library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity PR2_CL3 IS generic (n : integer := 5); port(clk,clr : in std_logic; clkout: out std_logic);end PR2_CL3;architecture ss of PR2_CL3 IS signal temp:integer range 0 t

15、o n; signal clktemp:std_logic; begin process(clr,clk) begin if (clklast_value =0 and clkevent and clk=1) then if (clr=1) then temp =0; elsif (temp=n) then temp =0; clktemp= not clktemp; else temp = temp +1; end if; end if; end process; clkout = clktemp; end ss;端口连接图先分频器加外部时钟输入,然后其输出链接到数码管译码器作为时钟输入,最

16、后通过数码管译码器输出显示。中间设置显示的数码管cat5cat0,控制器循环显示,再设置每个数码管显示数字a_out6a_out0,最终完成输出。分频器的clear端高电平有效。仿真结果:仿真分析:仿真时设置的是240分频,每输入240*6个脉冲,cat便在“011111”,“101111”,“ 110111”,“111011”,“111101”,“1111101”间循环一次,与此对应每个数码管输出也在123450,234501,345012,450123,501234,012345之间不断循环。当clear为1是,cat输出为“111111”,a_out输出为“0000000”,对应实验板上

17、便是数码管无任何输出。三、故障分析前两次实验都非常基础,书上也有详细的操作步骤,因此很容易完成。第三次以及第四次实验需要设置复位信号clear,开始时按照之前设置其为周期16us的脉冲,发现扰乱实验,后学习了利用设置其占空比来有效处理这个信号。实验三中先按照实验要求设置的12分频,下载到板子上测试时发现正常只显示8,后来了解到实验板是50M分频,在此处做了修改;而实验四中再次利用了50M分频,经老师指出扫描速度过慢。经过两次实验学会了根据实际需要设置合适的分频。四、实验总结这学期是第一次接触到数电实验,感觉和模电实验有很大的不同,数电实验需要我们操作的是代码和连接图,灵活性非常高,而且误差较小。相比电路的结构,我们更需要了解电路的功能。代码也可以不断改进,寻找最优化的代码。由于本学期实验都比较简单,所以我们忽视了冒险,经常会出现毛刺,但对我们的电路几乎没有影响所以我们没有处理,下学期做综合实验的时候应该考虑冒险带来的危害并寻找相应的措施消除。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1