用VHDL设计一个十二分频的分频器,代码急需

用VHDL设计一个十二分频的分频器,代码急需,第1张

这么简单的逻辑应该自己会写,如果实在不行在网上搜一下也很容易找到

ENTITY clkdiv IS

PORT(clk: IN STD_LOGIC

clk_div12 : OUT STD_LOGIC)

END clk_div

ARCHITECTURE rtl OF clk_div IS

SIGNAL count : STD_LOGIC_VECTOR(2 DOWNTO 0)

SIGNAL clk_temp : STD_LOGIC

BEGIN

PROCESS(clk, count)

BEGIN

IF (clk'event AND clk='1') THEN

IF(count = "101") THEN

count <= (OTHERS =>镇族凳 '0')

clk_temp <= NOT (clk_temp)

ELSE

count <= count +1

END IF

END IF

END PROCESS

clk_div12 <= clk_temp

END rtl

上面这个是最常用的1:1占空比,由于没有复位信号,所以第一个周期可能穗贺是不完整的,但在实际应用中御旅一般不成问题。

LIBRARY IEEE

USE IEEE.STD_LOGIC_1164.ALL

use ieee.std_logic_unsigned.all

ENTITY UPCOUNTER1_10 IS

PORT(CLK,CLR,EN:IN STD_LOGIC--时钟输入,异步清零,同步使能

Y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)--4位输出

CO:OUT STD_LOGIC)--高位进位

END UPCOUNTER1_10

ARCHITECTURE ART OF UPCOUNTER1_10 IS

SIGNAL X:STD_LOGIC_VECTOR(3 DOWNTO 0)

BEGIN

PROCESS(CLK,CLR,EN)

BEGIN

IF CLR='1'THEN X<="0000"桥袭

else IF clk'event and clk='1' then

IF EN='1'then x<=x+1

if x<11 then x<=x+1co<='0'

else x<="0000"co<='1'

end if

END IF

END IF

END IF

Y<=X

END PROCESS

END ART

考虑到引脚配置,得根据你实际情况来看,我们的试验箱有好敏罩兄几个模式,每个模式对应的引脚闷清配置是不同的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12519345.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存