【VHDL语言学习笔记(七)】 分频器

❀工信工实验参考——《VHDL实验2——数码管及分频器》 一般来说,我贴上来的代码都是能直接跑的,如果不行可以邮箱交流1902946954@qq.com 仅供参考,VHDL的老师讲的很好,所以请还是要先自己完成咯。 免责声明,本人菜只因一只,内容仅供参考,错了不负责哈 阅读详情

目的:实现分频器设计。

1.  设计一个分频器实现将原信号进行8分频,所得信号占空比为50%。

分频是将单一频率信号的频率降为原来的1/N,就叫N分频。将信号进行8分频,即所得信号频率是原信号频率的1/8,则其所得信号的1个周期等于原始信号的8个周期。

占空比是高电平持续时间占整个周期的比值。占空比为50%意思是高低电平持续时间一样,均为半个周期的时间长。

程序

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;

entity frequency_divider is
	port(
		clk		:in std_logic;	--原始信号
		fp_out	:out std_logic	--经过分频后的输出信号
		);
end frequency_divider;

architecture behave of frequency_divider is
begin 
	process(clk)
		variable count	:integer := 0;	--integer决定分频数N
	begin
		if(clk'event and clk = '1') then	--上升沿
			count := count + 1;		--对上升沿的个数进行计数,其实就是对原始信号的周期进行计数
			if(count < 5) then
				fp_out <= '1';	--输出信号在原始信号的前四个周期内保持高电平
			elsif(count <8) then
				fp_out <= '0';	--输出信号在原始信号的后四个周期内保持低电平
			end if;
			if(count = 8) then	--因为是8分频,所以当计数到8时要将计数值清0
				count := 0;
			end if;
		end if;
	end process;
end behave;
		
		
		

波形仿真图

 2.  设计一个分频器实现将原信号进行8分频,所得信号占空比为25%。

在上个程序的基础上,对高电平持续时间进行修改,即可实现占空比的修改。

程序

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;

entity frequency_divider is
	port(
		clk		:in std_logic;	--原始信号
		fp_out	:out std_logic	--经过分频后的输出信号
		);
end frequency_divider;

architecture behave of frequency_divider is
begin 
	process(clk)
		variable count	:integer := 0;	--integer决定分频数N
	begin
		if(clk'event and clk = '1') then	--上升沿
			count := count + 1;		--对上升沿的个数进行计数,其实就是对原始信号的周期进行计数
			if(count < 3) then
				fp_out <= '1';	--输出信号在原始信号的前两个周期内保持高电平
			elsif(count <8) then
				fp_out <= '0';	--输出信号在原始信号的后六个周期内保持低电平
			end if;
			if(count = 8) then	--因为是8分频,所以当计数到8时要将计数值清0
				count := 0;
			end if;
		end if;
	end process;
end behave;
		
		
		

波形仿真图

 

基于VHDL语言分频器电路程序设计 基于VHDL语言分频器电路程序设计(汇总) 分频器简介: 分频器是数字电路中最常用的电路之一,在 FPGA 的设计中也是使用效率非常高的基本设计。基于 FPGA 实现的分频电路一般有两种方法:一是使用FPGA 芯片内部提供的锁相环电路,如 ALTERA 提供的 PLL(Phase Locked Loop),Xilinx 提供的 DLL(Delay Locked Loop);二是使用硬件描述语言,如VHDL、Verilog HDL 等。使用锁相环电路有许多优点,如可以实现倍频;相位偏移;占空比可调等。但 FP 阅读详情

相关推荐

1.基于VHDL的分频器设计

本套代码是基于VHDL在quartus的环境下编写的代码,只作为学习积累,如有bug请多多包含本文主要讲解了分频器的代码原理,与使用方法。

weixin_62964909的博客 1562

VHDL实现分频器

10分频电路(非分频器) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY clk_div IS PORT(clkin:IN STD_LOGIC; clkout:OUT STD_LOGIC); END clk_di...

zy010101博客 2万+

VHDL语言实现的任意整数分频器。

 fpga中,一般外接的晶振是50Mhz,如果电路中一个模块需要25mhz时钟,那么进行一个2分频,这个是相当容易的,下面是一种方法,还有可以用一个二进制计数器实现。这里就不写代码了。easy.同样的原理 ,四分频也很容易。process(clk)--clk输入时钟;begin  if(rst = 0) then  --rst复位信号;     clkout   elsif(clk;event

welcome to hell 9378

VHDL学习--分频器

分频器,就是将特定频率的信号,通过计数分频的方式,得到自己需要的频率的信号。比如假如你的系统时钟是50Mhz,而你需要得到一个25Mhz的信号,则可以设计一个二分频模块对系统时钟进行分频获得。设计方法很简单,系统时钟每个上升沿或下降沿的时候输出取反即可。同理可用于设计多倍数分频器,只需加入一个计数器即可:每遇见一个上升沿,计数器加一,当计数器计数加到你需要的倍数时候,输出信号再取反,就可以得到你需要的分频的信号。下文代码是一个21倍分频器。 library ieee; use ieee.std_logic_

weixin_43570886的博客 1万+

VHDL数控分频器及其应用

主要内容:采用VHDL语言设计数控分频器电路,利用数控分频的原理,设计乐曲演奏电路,并采用原理图方法设计数字时钟,使该电路具有校时校分的功能,用MAX一PLUSII编程工具进行逻辑综合和时序仿真。 设计的基本内容 传统数字电路设计是利用标准集成电路、电路板来实现电路功能。可编程逻辑器件和EDA技术使设计方法发生了质的变化。把以前 “电路设计+硬件搭试+调试焊接”转化为 “功能设计+软件模拟+仿真下载”。利用EDA开发平台,采用可编程逻辑器件CPLD/FPGA使硬件的功能可通过编程来实现,这种新的基于芯片的设

QQ_778132974的博客 1971

(05)VHDL实现分频器

(05)VHDL实现分频器 1.1 目录 1)目录 2)FPGA简介 3)VHDL简介 4)VHDL实现分频器 5)结语 1.2 FPGA简介 FPGA(Field Programmable Gate Array)是在PAL、GAL等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 FPGA设计不是简单的芯片研究,主要是利用 FPGA 的模式进行其他行业产品的设计。 与 A

m0_46498597的博客 2598

VHDL——分频器设计

1.简介 1.在数字电路设计的过程中,常常需要对较高频率的时钟信号进行分频操作,从而得到较低频率的时钟信号。 一个硬件电路,如果时钟信号设计的不对,将会导致整个硬件电路设计的失败。 2.分频器:完成对时钟信号的2分频,4分频,8分频和16分频 2.分频器设计 ...

m0_54355172的博客 1万+

VHDL实现16分频器:原理与代码

VHDL(VHSIC Hardware Description Language),即超高速集成电路硬件描述语言,最初是由美国国防部为了加速其集成电路设计进度而开发的一种硬件描述语言。它的前身是VHSIC(Very-High-Speed Integrated Circuits)项目的一部分,该项目始于1980年代早期。VHDL随后在1987年发布了官方标准IEEE 1076,标志着其作为一种标准的硬件描述语言在工业界得到广泛应用。

weixin_32311823的博客 1059

分频器的VHDL描述

在数字电路中,常需要对较高频率的时钟进行分频操作,得到较低频率的时钟信号。我们知道,在硬件电路设计中时钟信号时非常重要的。   下面我们介绍分频器的VHDL描述,在源代码中完成对时钟信号CLK的2分频,4分频,8分频,16分频。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOG

sky156的专栏 2843

VHDL实现1/10分频器的设计与实践

本文还有配套的精品资源,点击获取 简介:分频器是数字电子设计中用于降低时钟信号频率的关键组件。本文通过设计一个1/10分频器,展示了如何使用VHDL这一硬件描述语言实现分频功能。通过定义实体和结构体,构建了一个输出频率为输入频率十分之一且占空比为50%的时钟信号。该设计流程涵盖了从计数器到状态机的逻辑操作,强调了在硬件实现中同步和异步复位、时钟使能信号等关键因素的重要性。 ...

weixin_36197669的博客 1796

VHDL实现数字分频器设计与验证

VHDL(VHSIC Hardware Description Language)是用于描述电子系统硬件功能的语言,广泛应用于复杂电子系统设计的前端工程。VHDL语言因其标准化和抽象化程度高,成为工业界和学术界设计FPGA和ASIC的首选工具之一。数字分频器是一种逻辑电路,它能够将输入的时钟信号的频率降低到其输入频率的一定比例。分频器工作基于计数器的原理,通过计数器记录输入信号的周期数,然后根据设定的分频比输出相应数量的脉冲。

weixin_35752645的博客 756

【VHDL】VHDL设计一个分频器

尝试用两种或以上方式设计并实现一个分频器

_TFBoy的小茶馆 2万+

VHDL分频器设计与实现原理

VHDL(VHSIC Hardware Description Language)是一种用于描述电子系统硬件功能和行为的硬件描述语言。VHDL不仅能够表达复杂的数字电路和系统,还能通过描述电路的结构、行为或混合方式来模拟硬件设计。自1980年代起,VHDL成为国际标准,并广泛应用于军工、航空航天、通信等领域,特别是在FPGA和ASIC的设计中占据着举足轻重的地位。本章将从基础的VHDL语言特点谈起,探讨其在硬件设计中的关键作用,为后续章节介绍分频器设计的深入讨论打下基础。

weixin_33239721的博客 621

【VHDL】分频器设计要求:25分频,占空比为50%

【VHDL】分频器设计要求:25分频,占空比为50% 程序` LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.all; entity DIV_25 IS PORT(CLK:IN STD_LOGIC; S1,S2:BUFFER STD_LOGIC; CNT:BUFFER INTEGER; Q:OUT STD_LOGIC); END ENTITY; ARCHITECTURE ONE OF DIV_25 IS BEGIN PROCESS(CLK) BEGIN IF C

凡的博客 4330

实现分频系数1000的VHDL分频器项目实战

VHDL(VHSIC Hardware Description Language,超高速集成电路硬件描述语言)是一种用于描述数字电子系统硬件功能的语言,起源于1980年代美国国防部的VHSIC(Very High Speed Integrated Circuits)项目。

weixin_31139479的博客 849

VHDL任意分频器

VHDL编写的任意分频器,通过修改参数即可实现任意的分频 占空比为50%,读者可以调整代码修改所需的占空比。

VHDL/Verilog HDL实现任意整数倍分频器

在用HDL实现分频器的时候,主要通过写计数器计数时钟的上升/下降沿来实现。偶数倍分频十分容易实现在此不加赘述,奇数倍分频需要通过计数器生成两个波形然后进行异或操作实现奇数倍分频。 以下给出5倍分频、10倍分频的Verilog HDL程序代码,以及testbench测试仿真程序 Verilog程序: module frequence_divider ( input clk_50M...

FPGA学习记录 5871

数控分频器VHDL程序

在CLK输入750KHZ的频率信号;输出FOUT接蜂鸣器,由KEY2/KEY3控制输入8位预置数并在数码管1~2上显示。

上一篇: 【VHDL语言学习笔记(六)】 计数器
下一篇: 【VHDL语言学习笔记(八)】 序列信号检测器
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

单片机学习之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值