8位数控分频器的设计_实验6 数控分频器的设计

该实验介绍了8位数控分频器的设计原理和方法,通过使用数值可并行预置的加法计数器,当输入不同数据时改变分频比。设计中,当计数器满载时,输入数据被预置,并通过溢出标志信号控制输出。详细的设计程序包括两个进程P_REG和P_DIV,分别处理计数和分频输出。
摘要由CSDN通过智能技术生成

1

实验

6

数控分频器的设计

(1)

实验目的

:

学习数控分频器的设计、分析和测试方法。

(2)

实验原理

:

数控分频器的功能就是当在输入端给定不同输入数据时,

将对输入的时钟信号有不同的

分频比,

数控分频器就是用

数值可并行预置的加法计数器

设计完成的,

方法是将计数溢出位

与预置数加载输入信号相接即可,详细设计程序如例

6-20

所示。

【例

6-20

8

位数控分频器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY DVF IS

PORT(CLK  :  IN STD_LOGIC;

D  :  IN STD_LOGIC_VECTOR(7 DOWNTO 0);

FOUT  : OUT STD_LOGIC);

END ENTITY DVF;

ARCHITECTURE one OF DVF IS

SIGNAL FULL : STD_LOGIC;

BEGIN

P_REG: PROCESS(CLK)

VARIABLE CNT8 : STD_LOGIC_VECTOR(7 DOWNTO 0);

BEGIN

IF CLK'EVENT AND CLK = '1' THEN

IF CNT8 = "11111111" THEN

CNT8 := D;   --

CNT8

计数计满时,输入数据

D

被同步预置给计数器

CNT8

FULL <= '1'; --

同时使溢出标志信号

FULL

输出为高电平

ELSE CNT8 := CNT8 + 1;  --

否则继续作加

1

计数

FULL <= '0';          --

且输出溢出标志信号

FULL

为低电平

END IF;

END IF;

END PROCESS P_REG ;

P_DIV: PROCESS(FULL)

VARIABLE CNT2 : STD_LOGIC;

BEGIN

IF FULL'EVENT AND FULL = '1' THEN

CNT2 := NOT CNT2;--

如果溢出标志信号

FULL

为高电平,

D

触发器输出取反

IF CNT2 = '1' THEN  FOUT <= '1';

ELSE FOUT <= '0';

END IF;

END IF;

END PROCESS P_DIV;

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值