寄存序列信号发生器精要.docxVIP

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

沈阳理工大学课程设计专用纸  PAGE \* MERGEFORMAT 10 1 概述 1.1 设计背景和意义 EDA技术是先进的电子设计手段,是电子工程的必备知识。VHDL是一种全方位的硬件描述语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次,支持结构、数据流和行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用VHDL来完成。 VHDL还具有以下优点: VHDL的宽范围描述能力使它成为高层次设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现。 VHDL可以用简洁明确的代码描述来进行复杂控制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用。 VHDL的设计不依赖于特定的器件,方便了工艺的转换。 VHDL是一个标准语言,为众多的EDA厂商支持,因此移植性好。 ? 1.2 设计任务 设计寄存序列型信号发生器并生成指定波形。 1.3 设计要求 (1)熟练使用使用QUARTUS = 2 \* ROMAN II应用软件,进一步学习使用VHDL语言、原理图等EDA设计方法进行综合题目的方法。 (2)通过对相应文献的收集、分析以及总结,给出相应课题的背景、意义及现状研究分析。 (3)通过课题设计,掌握计算机组成原理的分析方法和设计方法。 (4)学习按要求编写课程设计报告书,能正确阐述设计和实验结果。 (5)学生应抱着严谨认真的态度积极投入到课程设计过程中,认真查阅相应文献以及实现,给出个人分析、设计以及实现 2 工作原理及层次划分 2.1 工作原理 基于移位寄存器原理,定义两个13位位矢量,同时进行两个进程。在进行异步加载后,先将最高位保存,此后每当遇到一个时钟脉冲上升沿时,便将后12位左移一位,将原最高位置于最低位,并将最高位和13位位矢量输出,完成一次操作。 2.2 层次划分 clk为时钟信号输入端口,load为异步加载控制端口,QB,QC分别为两个信号的输出端口,Dout1与Dout2分别为两个信号的寄存显示端口。 3 软件设计 3.1 信号发生器模块代码设计 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity jicun is port ( clk:in std_logic; load:in std_logic; QB:out std_logic; QC:out std_logic; Dout1:out std_logic_vector(12 downto 0); Dout2:out std_logic_vector(12 downto 0)); end entity jicun; architecture behav of jicun is signal reg131:std_logic_vector(12 downto 0); signal reg132:std_logic_vector(12 downto 0); signal qa1 :std_logic; signal qa2 :std_logic; begin process(clk,load) constant din1 : std_logic_vector := 1100000100000; begin if clkevent and clk=1 Then if load=1 then reg131=din1; else reg131(12 downto 1)=reg131(11 downto 0); reg131(0)=qa1; end if; end if; qa1=reg131(12); QB=reg131(12); end process; process(clk,load) constant din2 : std_logic_vector := 1110111110111; begin if clkevent and clk=1 Then if load=1 then reg132=din2; else reg132(12 downto 1)=reg132(11 downto 0); reg132(0)=qa2; end if; end if; qa2=reg132(12); Qc=reg132(12); end process; dout2=reg132; dout1=reg131; end behav; 4 仿真及测试 4.1 信号发生器模块仿真 给定时钟脉冲,并加入异步加载信号。 信号发生器仿真结果 信号Dout1寄存仿真结果

文档评论(0)

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

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

1亿VIP精品文档

相关文档