您的当前位置:首页正文

EDA三分频器设计

2021-10-05 来源:步旅网
EDA课程设计

实验题目:占空比可调节的三分频器

班级:电子081

学号:***

姓名:**

1:实验要求:实现一个占空比可调节的三分频器,占空比可调节为1:3和1:2,时钟信号输入为CLK,带使能输入ENABLEBLE。

2:源代码:

library ieee;

use ieee.std_logic_1164.all;

gned.all;

use ieee.std_logic_arith.all;

entity div is

port(

clk,enable:in std_logic;

qout1,qout2:buffer std_logic;

clk1,clk2:out std_logic) ;

end entity div;

architecture behave of div is

begin

process(clk,enable)is

variable cnt:integer range 0 to 2;

begin

if clk'event and clk='1' then

if enable='1' then

if cnt=2 then

cnt:=0;

qout1<='1';

else

cnt:=cnt+1;

qout1<='0';

end if;

clk1<=qout1;

end if;

end if;

end process;

process(clk,enable)is

variable cnt:integer range 0 to 2;

begin

if clk'event and clk='0' then

if enable='0' then

if cnt=2 then

cnt:=0;

qout2<='1';

else

cnt:=cnt+1;

qout2<='0';

end if;

end if;

end if;

end process;

clk2<= qout1 or qout2;

end behave;

3:仿真波形:

图(1)clk1为1:2占空比、 clk2为1:3的占空比:

4:结果分析:

为了实现三分频,必需保证输出波形周期是原信号周期的三倍。

1:当占空比为1:2时,即为方波(图中CLK1);

2:当占空比为1:3时,高电平时间/低电平时间=1/2(CLK2),仿真图形如图(1)

5:调试过程:

要实现1:3的占空比时,实现三分频,是通过计数器来实现,通过CLK的上升沿计数,CLK作为三进制计数器的时钟信号,当计数器记到1时发生输出翻转,计数到2时,又发生翻转。

要实现1:2的占空比时,通过待分频时钟下降沿触发计数,三分频计数和上升沿采取同样的方式,最后下降沿产生的三分频时钟和上升沿产生的时钟进行“或”运算。

6:心得体会:通过对这个题目的分析与编程,调试,我对VHDL编程有了更加进一步的了解,让我更加体会到VHDL语言对EDA的实用性,这个题目是对我们前面所学知识的一中综合,非常具有代表性,我决心在以后的学习过程中,更加深入的学习VHDL这门语言,更加深入的学习EDA这门学科,争取更大进步。

因篇幅问题不能全部显示,请点此查看更多更全内容