可预置串行序列信号发生器设计与实现.docVIP

可预置串行序列信号发生器设计与实现.doc

  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文档。上传文档
查看更多
可预置串行序列信号发生器设计与实现.doc

  可预置串行序列信号发生器设计与实现 实验目的 进一步了解时序电路描述方法 二.重点和难点 VHDL 语言中时序设计基础 VHDL 语言中同步时序设计 三.设备器材 稳压电源, 万用表, 示波器, 计算机 实验板一块,Quartus2,Synplify8.1 四.源程序 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity produce is port( clk:in std_logic; ——定义时钟变量 bnt1,bnt2:in std_logic; ——定义异步控制变量 sw:in std_logic_vector(7 downto 0); ——定义输入变量 ld5,ld8:out std_logic ——定义输出变量 ); end; architecture produce_arch of produce is signal t:integer range 0 to 9; signal k:std_logic; ——定义敏感变量 begin process(bnt1,bnt2,t,clk,sw) begin if(bnt2=1) then tlt;=0; elsif(bnt1=1) then tlt;=1; klt;=1 xor sw(0) xor sw(1) xor sw(2) xor sw(3) xor sw(4) xor sw(5) xor sw(6) xor sw(7); ——确定奇偶校验结果 elsif(clkevent and clk=1) then if (t=1) then tlt;=2; (fw.ΝsΕΑc.编辑) elsif (t=9) then tlt;=9; elsif (tgt;0) then tlt;=t+1; ——确定时钟周期,即时序脉冲的长度 end if; case t is when 0=gt; null; when 1=gt;ld5lt;=sw(7); when 2=gt;ld5lt;=sw(6); when 3=gt;ld5lt;=sw(5); when 4=gt;ld5lt;=sw(4); when 5=gt;ld5lt;=sw(3); when 6=gt;ld5lt;=sw(2); when 7=gt;ld5lt;=sw(1); when 8=gt;ld5lt;=sw(0); when 9=gt;ld5lt;=k; when others=gt;null; ——时序信号赋值 end case; end if; end process; ld8lt;=clk; end; 五.思考题: [预习思考题] 1) 怎样在本次设计里面体现出顶层设计和底层设计(解释一下你 的功能划分和端口定义)? clk: 时钟输入; (转载自中国评价网.nseac. ) btn1:异步控制输入,控制序列脉冲发生的开始 btn2:异步控制输入,异步复位; Sw:脉冲输入信号,完成序列脉冲的预制 ld5:脉冲输出与奇偶校验结果输出 Ld8:时钟信号输出;k: 信号敏感中间变量; t:敏感信号变量,确定输出序列长度 2) 怎样保证第一位数据的输出时间与其他数据位的输出时间相 等? 答:采用同步上升沿的信号输入控制。 六、实验内容: 用VHDL 描述一个8 位同步并行预置,串行输出带奇偶校验位的 序列信号发生器,完成编译、仿真和下载。 要求: 1) 输入用8个拨码开关SW1~SW8 预置要移位的数,最高位为 SW1,最低位为SW8 2) 用按键BTN1 作为预置并开始按键 3) 用按键BTN2 作为系统复位键 4) 输入时钟选择LOW 5) 用发光二极管LD8 显示输入的时钟信号,利用这个发光二极 管调节输入时钟的频率为0.5Hz 左右,即亮1 秒,灭1 秒 6) 用发光二极管LD5 显示输出的序列信号,要求先输出最高位, 最后停留在奇偶校验位上 7) 按下开始键后依次显示拨码开关的各位数,最后显示奇偶校验 结果 8) 前八个数据位每个输出位都要保持相同的时间,最后显示保持 在校验位上。特别要注意第一位数据的输出时间。 七、实验步骤 1、编写源程序并进行编译调试检查仿真逻辑电路图。 2、编辑输入电平形式,观察时序仿真波形图,检查输出电平与输入电平之间的关系是否满足电路要求。 3、检查无误后下载电路,按规定输入合适二进制数码,检验数码管是否输出正确数码。 八、实验问题与分析解答 1、实验中发现在第二次预制的信号开始前奇偶校验结果无法保持。 (转载自zw.NSEAC.作文网)

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档