38张方乐VHL实训报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
38张方乐VHL实训报告

实训报告 目录 一 实训名称 二 实训要求及目的 三 实训仪器以及设备 四 实训内容及步骤 五 实训结果及分析 11电子(2)班 张方乐 实训名称:双向移位寄存器。 实训要求及目的:1设计一个双向移位寄存器,理解移位寄存器的工作原理,掌握串入\并出端口控制的描述方法。 2通过VHDL编程,实现双向移位寄存器,要求有一个方向控制端,一个时钟脉冲输入,一个异步清零端,一个数据输入端以及3位的并行数据输出端。 3通过点阵显示移位效果。 实训内容及步骤:一 程序设计:设计双向移位寄存器的VHDL程序。 二 程序编写:利用Quartus II编程软件,程序详见 附一。 三 程序写入开发板:把数据线和USB线接入电脑,打开开发板的电源,将程序写进开发板。 四 检验双向移位寄存器实验验证,利用开发板的点阵验证显示双向移位寄存器及程序的正确性,并与理论对比,如果实验结果与理论相同则程序正确。祥见附二实验分析。 五 实验完毕,关掉电源。 附一:library ieee; use ieee.std_logic_1164.all; entity shuangxiang is port(load:in std_logic; clk:in std_logic; left_right:in std_logic; d:in std_logic_vector(2 downto 0); q:buffer std_logic_vector(2 downto 0); aj:in std_logic_vector(1 downto 0); w:out std_logic_vector(7 downto 0)); end shuangxiang; architecture one of shuangxiang is signal aa:std_logic_vector(2 downto 0); signal clkout:std_logic; signal counter:integer range 0 to 2; signal clkhz:std_logic; signal clkhx:std_logic; signal clkhc:std_logic; signal clkout1:std_logic; begin w process(clk) variable clk1:integer range 0 to 2000; variable clk2:integer range 0 to 2000; begin if clkevent and clk=1 then if clk1=2000 then clk1:=0; if clk2=2000 then clk2:=0; clkout=not clkout; else clk2:=clk2+1; end if; else clk1:=clk1+1; end if; end if; end process; process(clkout) variable clk1:integer range 0 to 1500; variable clk2:integer range 0 to 1500; begin if clkevent and clk=1 then if clk1=1500 then clk1:=0; if clk2=1500 then clk2:=0; clkhz=not clkhz; else clk2:=clk2+1; end if; else clk1:=clk1+1; end if; end if; end process; process(clkhz) variable clk1:integer range 0 to 2000; variable clk2:integer range 0 to 2000; begin if clkevent and clk=1 then if clk1=1000 then clk1:=0; if clk2=1000 then clk2:=0; clkhx

文档评论(0)

cvv110 + 关注
文档贡献者

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

1亿VIP精品文档

相关文档