- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA技术与VHDL语言课程大作业设计
EDA技术与VHDL语言课程大作业
设计题目: 电子分频器
姓 名: 李 露
班 级: 自动化10(2)
学 号: 41003010208
目录
1. 设计背景
2. 设计方案
2.1计数器模块
2.2任意偶数分频模块
2.3任意奇数分频模块
2.4设计思路
3. 数字分频器模块的VHDL源程序
3.1 任意偶数分频的VHDL源程序(dvf.VHD)
3.2 任意奇数分频的VHDL源程序(dvf.VHD)
4. 源程序总体描述
5. 波形仿真图
6. 总结
7. 参考文献
设计背景
EDA技术作为计算机硬件设计中的关键设计技术之一,是每一位将来希望从事涉及电子系统与集成电路设计研究领域工作的人所必须掌握的一门技术。时序逻辑电路作为其主要 设计与研究的电路类型之一,在EDA中占据着重要的位置,而时钟信号在时序逻辑电路有占据着重要的位置,它决定了时序逻辑单元中的状态何时更新。时钟信号作为一种有固定周期并与运行状态无关的信号量,在边沿触发机制中,只有上升沿或下降沿才是有效信号,才能控制逻辑单元状态量的改变。为满足不同的时序电路要求,对时钟信号进行分频也显得格外重要
基于EDA技术的数控分频器设计,采用的是用软件的方法设计硬件的EDA (电子设计自动化)技术。作为EDA技术重要组成部分的VHDL硬件描述语言是一种符合IEEE工业标准的建模语言。用它设计的数控分频器可作为一个模 块,移植到很多数字电路系统中,且极易修改,只要修改程序中的某几条语句,就可使最大分频系数得到改变。整个设计过程简单、快捷。可从根本上减少硬件调试 的时间,为总体设计完成争取宝贵的时间。50%的偶数分频信号。例如,6分频,计数值为0~2输出高电平,计数值为3~5输出低电平。
2.3 任意奇数分频模块
定义两个计数器,分别对输入时钟的上升沿和下降沿进行计数,然后把这两个计数值输入一个组合逻辑,用其控制输出时钟的电平。
这是因为计数值为奇数,占空比为50%clk的周期。例如,5分频,前半个周期包含2.5个clk周期,后半个周期包含2.5个clk周期。
2.4设计思路
原理图
不同的分频比,数控分频器就是用计数值可并行预置的加法计数器设计完成的,方法是将数控分频器的功能就是当在输入端给定不同输入数据时,将对输入的时钟信号有计时器溢出位与预置数加载输入信号相接即可。
3. 数字秒表计时模块的VHDL源程序
3.1 任意偶数分频的VHDL源程序(dvf.VHD)
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity dvf is
port(clk_in:in std_logic;
fout:out std_logic);
end;
architecture one of dvf is
signal cnt: integer range 0 to 2000;
signal clk_out:std_logic;
begin
process(clk_in)
begin
if clk_inevent and clk_in = 1 then
if cnt=2000 then
cnt =0;
clk_out =not clk_out;
else
cnt=cnt+1;
end if;
end if;
end process;
fout=clk_out;
end one;
3.2 任意奇数分频的VHDL源程序(dvf.VHD)
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity division5 is
port (clk : in std_logic;
out1: out std_logic);
end division5;
architecture Behavioral of division5 is
signal out2, out3 : std_logic := 0;
signal temp1,temp2 : integer range 0 to 10;
begin
process(clk) --输出占空比为50%的奇数5
文档评论(0)