网站大量收购闲置独家精品文档,联系QQ:2885784924

EDA技术与VHDL课程设计任务书--看门狗设计.docVIP

EDA技术与VHDL课程设计任务书--看门狗设计.doc

  1. 1、本文档共18页,可阅读全部内容。
  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文档。上传文档
查看更多
课程设计任务书 姓 名 学 号 班 级 课程名称 EDA技术与VHDL 课程性质 专业课 设计时间 2009年 11月27日—— 2009年 12月28日 设计名称 看门狗设计 设计要求 喂狗周期可以由用户定制 喂狗脉冲宽度较窄 复位脉冲宽度不小于12ms 看门狗启动后,除非重新上电,否则不能停止工作 设计思路 与 设计过程 按功能划分为3个模块: 计数比较模块、分频模块、复位计时模块。其中,计数比较模块是系统的核心。 计划 与 进度 首先,确定各模块的大致功能及相互之间的联系; 其次,针对每一底层模块编写相应的代码编译仿真并生成符号文件; 再次,设计顶层文件电路图,编译、仿真、分配引脚、再编译生成可配置文件之后下载到开发板进行验证;最后完成课程设计报告。 任课教师 意 见 说 明 课程设计报告 课程: EDA技术与VHDL 学号: 姓名: 班级: 教师: 设计名称:看门狗设计 日期:2009年12月28日 设计内容: 1.看门狗电路时电子系统,是嵌入式系统中常用的抗干扰措施之一,其作用是在程序“跑飞”后强制系统复位。 2.看门狗实际上是一个计数器,它需要在一定时间内被清零,否则,看门狗将产生一个复位信号使系统重新启动。 3. 系统主要由3个功能模块构成: 计数比较模块; 分频模块; 复位计时模块; 设计目的与要求: (1)根据“自顶向下、模块化”的设计方法,设计一种基于可编程逻辑器件的看门狗电路,要求体现自顶向下的VHDL设计思路和方法。 (2)有较高的实用价值。 (3)喂狗周期可以由用户定制。 (4)喂狗脉冲宽度较窄。 (5)复位脉冲宽度不小于12ms。 (6)看门狗启动后,除非重新上电,否则不能停止工作。 设计环境或器材、原理与说明: PC机一台、QuartusII 4.2 软件、TD—EDA实验箱一台、SOPC开发板一块 设计过程(步骤)或程序代码: 1、运行QuartusII软件,分别建立新工程,选择File—New菜单,创建VHDL描述语言设计文件,分别wdcmp.vhd ,wdclock.vhd, wddelay.vhd的源程序。分别完成其功能。 2、模块设计与实现 2.1计数比较模块 在分频时钟的作用下计数,将计数值与预置值比较,若相等,则输出复位信号。复位信号有效时,将分频时钟屏蔽,计数比较模块停止计数,直至复位计时模块将其清零,重新计数。 --描述计数比较模块的VHDL程序,图2-1为计数比较模块的仿真波形图。 --wdcmp.vhd -- -- LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; ENTITY wdcmp IS PORT( --使能信号 start :IN STD_LOGIC; --清零信号 clr :IN STD_LOGIC; --时钟信号 clk :IN STD_LOGIC; --写信号 wr :IN STD_LOGIC; --数据输入 data :IN STD_LOGIC_VECTOR(7 DOWNTO 0); --复位信号 reset :OUT STD_LOGIC ); END wdcmp; ARCHITECTURE behave OF wdcmp IS --定义状态 TYPE statetype IS (notwatch,watch); SIGNAL state : statetype; --定义信号 SIGNAL pr : STD_LOGIC_VECTOR(7 DOWNTO 0); SIGNAL start_delay : STD_LOGIC; SIGNAL wr_delay : STD_LOGIC; BEGIN DELAY_PROC:PROCESS(clk) BEGIN IF rising_edge(clk) THEN start_delay = start; wr_delay = wr; END IF; END PROCESS; PR_PROC:PROCESS(clk) BEGIN IF rising_edge(clk) T

文档评论(0)

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

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

1亿VIP精品文档

相关文档