北邮电子院《数字电路与逻辑设计》实验报告docx..docx

北邮电子院《数字电路与逻辑设计》实验报告docx..docx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北邮电子院《数字电路与逻辑设计》实验报告docx.

《数字电路与逻辑设计》实验报告 姓 名: 学 院: 专 业: 班 级: 学 号: 班内序号: 任课老师: 目录摘要11.实验一:QuartusⅡ原理图输入法设计21.1.实验内容21.2.全加器的实验原理图21.3.全加器的仿真波形图21.4.仿真波形图的分析32.实验二:VHDL组合逻辑电路设计32.1.实验内容33.实验三:VHDL时序逻辑电路设计33.1.实验内容33.2.将1)、2)与数码管译码器连接的VHDL代码43.3.将1)、2)与数码管译码器连接的仿真波形图53.4.对仿真波形图的分析63.5.要求(3)的模块端口说明及连接图63.5.1.模块端口说明63.5.2.模块连接图64.实验四:双色点阵行扫描控制器74.1.实验内容74.2.VHDL代码74.2.1.单色点阵行扫描电路的VHDL代码74.2.2.双色点阵行扫描电路的VHDL代码84.3.仿真波形图114.3.1.单色点阵行扫描电路的仿真波形图114.3.2.双色点阵行扫描电路的仿真波形图124.4.对仿真波形图的分析134.4.1.对单色点阵行扫描电路仿真波形图的分析134.4.2.对单色点阵行扫描电路的仿真波形图的分析134.5.模块端口说明及连接图134.5.1.单色点阵行扫描电路模块端口说明及连接图134.5.2.双色点阵行扫描电路模块端口说明及连接图145.故障及问题分析156.总结和结论15参考文献16摘要本次数字电路与逻辑设计实验以初步掌握VHDL语言设计简单的数字电路,并且在QuartusⅡ上仿真为目的,共有四次实验,分别为QuartusⅡ原理图输入法设计,VHDL组合逻辑电路设计,VHDL时序逻辑电路设计和双色点阵行扫描控制器关键词:数字电路;VHDL语言;QuartusⅡ仿真实验一:QuartusⅡ原理图输入法设计实验内容用逻辑门设计实现一个半加器,仿真验证其功能,并生成新的半加器图形模块单元。用实验内容1中生成的半加器模块和逻辑门设计实现一个全加器,仿真验证其功能。用3线-8线译码器(74LS138)和逻辑门设计实现函数F=C B A + C B A + C B A + C B A全加器的实验原理图全加器的仿真波形图仿真波形图的分析根据仿真波形对比全加器真值表,可以确定电路实现了全加器的功能。此外,仿真的输出波形中有毛刺,这个是电路中存在冒险造成的,因为设计的时候未考虑到逻辑门的延迟等因素造成的误差影响。实验二:VHDL组合逻辑电路设计实验内容用VHDL 语言设计实现一个4位二进制奇校验器,输入奇数个‘1’时,输出为‘1’,否则输出‘0’,仿真验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号,发光二极管显示输出信号。用VHDL语言设计实现一个8421码转换为余3码的代码转换器,仿真验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号,发光二极管显示输出信号。用VHDL语言设计实现一个共阴极7段数码管译码器,仿真验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号,7段数码管显示输出信号。实验三:VHDL时序逻辑电路设计实验内容用VHDL语言设计实现一个分频系数为12,分频输出信号占空比为50%的分频器。要求在Quartus Ⅱ平台上设计程序并仿真验证设计。用VHDL语言设计实现一个带异步复位的8421码十进制计数器,仿真验证其功能,并下载到实验板测试。要求用按键设定输入信号,发光二极管显示输出信号。将1)、2)和数码管译码器3个电路进行连接将1)、2)与数码管译码器连接的VHDL代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY yhy ISPORT( clk:IN STD_LOGIC; clear:IN STD_LOGIC; a:OUT STD_LOGIC_VECTOR( 6 DOWNTO 0));END yhy;ARCHITECTURE struc OF yhy ISSIGNAL tmp:INTEGER RANGE 0 TO 5;SIGNAL clktmp,clk_out:STD_LOGIC;SIGNAL q,q_temp:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINP1:PROCESS(clk)--进程1实现对时钟信号的12分频BEGINIF clkEVENT AND clk=1 THEN--当有时钟上升沿到来时IF tmp=5 THENtmp=0;clktmp=NOT clktmp;--如果数了6个时钟周期,则clktmp翻转ELSEtmp=tmp+1;--用tmp来记录到来的时钟周期个数,到一个加一END IF;END IF;END PROCESS;clk_

文档评论(0)

klfgk7s7fas + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档