课题:三分频器。
班级:姓名:
学号:2023年4月29日。
一、 设计任务与要求。
设计实现一个占空比可调的三分频器,占空比可调节为1比3(即脉冲宽度:周期=1:3)和1比2,时钟信号输入为clk,使能输入控制信号为enable,输出信号分别为clk1和clk2,对后两种占空比信号频率设计实体命名为。
二、 问题分析。
由实验要求可以画出clk和clk1、clk2的关系大体为:
三分频器,按要求就是产生一个周期是输入时钟信号3倍的时钟信号,输入信号的三个周期对应输出信号的一个周期,由此可以联想到用计数的方式来实现。可以用输入的信号作为时钟脉冲设计一个3进制的计算器,对于占空比为1比3,可以令计算器在数值等于0时,输出为高电平(1);数值为1和2时,输出为低电平(0)。而对于占空比为1比2时,由上图可以看出,clk2在计算器等于0和3时与clk1相同,在计算器等于1时,其值可以由clk1与clk相或来产生,但是,在clk的上升沿clk1会产生一个尖峰,如下图所示。
对此可以先将clk值赋给一个变量,产生延时后再进行或运算。
三、 程序**。
library ieee;
use use
entity div is
port( clk: in std_logic时钟信号输入。
enable: in std_logic; -使能信号。
clk1: out std_logic; -三分频1/3占空比。
clk2: out std_logic); 三分频1/2占空比。
end entity div;
architecture art of div is
signal count: std_logic_vector(1 downto 0); 3进制计数器。
signal dn,cn: std_logic
begincn<=clk赋值产生延时。
process(clk,enable)is
beginif(enable='0')then
count<="00";
elseif(clk'event and clk='1')then3进制计数器。
if count=2 then
count<="00";
else count<=count+1;
end if;
end if;
end if;
end process;
process(count) is
begincase count is
when"00"=>clk1<='1';dn<='1';clk2<='1';
when"01"=>clk1<='0';dn<='0';clk2<=cn or dn;
when"10"=>clk1<='0';dn<='0';clk2<='0';
when others=>null三分频,占空比1/3,1/2
end case;
end process;
end architecture art;
四、 **结果。
为各输入信号指定波形,enable值为1,clk为周期50ns的时钟信号,进行时序**得到**波形为:
enable为1时开始工作,clk1、clk2为clk的三分频输出,其占空比分别为1/2和1/3.
五、 心得体会。
通过这次课程设计是我对eda这门课有了一个全新的认识,特别是在vhdl语言编程方面,我深刻认识到vhdl与之前学过的c语言之间的差异。在整个的设计过程中,发现自己对vhdl语言很多细节上理解掌握的不够深刻,比如在使用时钟信号时会产生毛刺,还有在程序中的各种输出和中间变量的应用上,按照c语言的思想去解决就会出现错误。总之,在设计过程中遇到了很多问题,但同时也是我有了更全面的学习,是我认识到理论联系实际的重要性,提高了自己的实际动手能力和独立思考能力,通过这次课程设计,使我学到了不少知识。
EDA课程设计
题目一 数字钟设计 学号1 15 一 实验目的。学习并掌握数字钟的原理 设计方法。二 实验内容。计数始终由模60秒计数器 模60分计数器 模24小时计数器 报时模块 分 时设定模块及输出显示模块构成。可以采用同步计数器或异步计数器设计方法。三 实验要求。计时范围为0小时0分0秒至23小时59分59秒...
eda课程设计
哈尔滨工业大学 威海 信电学院电子信息工程。一 软硬件介绍。1软件部分介绍。1.1 quartus ii 是altera公司的综合性pld fpga开发软件,支持原理图 vhdl veriloghdl以及ahdl altera hardware description language 等多种设计输...
eda课程设计
目录。1 引言 2 1.1 课程设计的目的与任务 2 1.2 课程设计的内容 2 1.3课程设计仪器设备 2 1.4 课程设计的题目 2 1.5 方案的选择 2 2设计方案 3 2.1 设计原理 3 2.2各功能模块的原理及其源程序 3 2.2.1控制模块 3 2.2.2分频模块 4 2.2.3计时...