Éè¼ÆË¼Â·£ºÕý³£µÄ¼ÆÊý״̬ÊÇ0->1->2->3->4->5->0->1¡¡£» µ±¼ÆÊýµ½5ʱ£¬½øÎ»ÐźűäΪ¡®1¡¯£»·ñÔò״̬×ÔÔö£¬½øÎ»Ðźű£³Ö
ÔÚ¡®0¡¯
Ö÷Òª´úÂ룺£¨ÍêÕû´úÂëÇë¼ûÔ´³ÌÐò£©
SIGNAL qs :STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL ca :STD_LOGIC;
BEGIN
PROCESS(clk)
begin
IF(reset='1')THEN qs<=\ELSIF(clk'EVENT AND clk='1')THEN IF(en='0') THEN
IF(qs=\¼ÆÊýµ½5 qs<= \ca<='1'; ELSE
qs<=qs+1; ca<='0'; END IF;
END IF; END IF;
END PROCESS;
PROCESS(ca,en) BEGIN q<=qs; carry<=ca; END PROCESS;
¢Ü10½øÖƼÆÊýÆ÷Ä£¿écnt10£º
ÊäÈë¶Ë¿Ú£ºreset,en,clk:IN STD_LOGIC; Êä³ö¶Ë¿Ú£ºcarry :OUT STD_LOGIC;
q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
Éú³É·ûºÅ£º
µÚ 5 Ò³ ¹² 37 Ò³
Éè¼ÆË¼Â·£ºÕý³£µÄ¼ÆÊý״̬ÊÇ£»
0->1->2->3->4->5->6->7->8->9->0->1¡¡
µ±¼ÆÊýµ½9ʱ£¬½øÎ»ÐźűäΪ¡®1¡¯£»·ñÔò״̬×ÔÔö£¬½øÎ»Ðźű£³Ö
ÔÚ¡®0¡¯
Ö÷Òª´úÂ룺£¨ÍêÕû´úÂëÇë¼ûÔ´³ÌÐò£©
SIGNAL qs :STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL ca :STD_LOGIC;
BEGIN
PROCESS(clk)
begin
IF(reset='1')THEN qs<=\ELSIF(clk'EVENT AND clk='1')THEN IF(en='0') THEN
IF(qs=\¼ÆÊýµ½9 qs<= \ca<='1'; ELSE
qs<=qs+1; ca<='0'; END IF;
END IF; END IF;
END PROCESS;
PROCESS(ca) BEGIN q<=qs; carry<=ca; END PROCESS;
¢Ý24½øÖƼÆÊýÆ÷Ä£¿écnt24£º
ÊäÈë¶Ë¿Úen,Reset,clk: in STD_LOGIC; Êä³ö¶Ë¿Úcarry: out STD_LOGIC;
qa: out STD_LOGIC_VECTOR(3 DOWNTO 0); qb: out STD_LOGIC_VECTOR(3 DOWNTO 0);
Éú³É·ûºÅ£º
µÚ 6 Ò³ ¹² 37 Ò³
Éè¼ÆË¼Â·£ºÕý³£µÄ¼ÆÊý״̬ÊÇ£»
µÍλqa״̬±ä»¯£º
0->1->2->3->4->5->6->7->8->9->0->1¡¡
¸ßλqb״̬±ä»¯£º
0->1->2->0->1¡¡
µ±µÍλqa¼ÆÊýµ½9ʱ£¬qb×ÔÔö£¬½øÎ»Ðźű£³ÖÔÚ¡®0¡¯ µ±µÍλqaΪ3ÇÒ¸ßλqbΪ2ʱ£¬½øÎ»ÐźűäΪ¡®1¡¯£¬ ͬʱqa±äΪ0¡¢qb±äΪ0 Ö÷Òª´úÂ룺£¨ÍêÕû´úÂëÇë¼ûÔ´³ÌÐò£© SIGNAL ca :STD_LOGIC;
BEGIN
process(clk,Reset,en)
variable tma: STD_LOGIC_VECTOR(3 DOWNTO 0); variable tmb: STD_LOGIC_VECTOR(3 DOWNTO 0); begin
If Reset = '1' then tma:=\
if clk'event and clk='1' then
IF(en='0') THEN
--µ±BTN0¼üûÓеÚÒ»´Î°´ÏÂʱ£¬Õý³£¼ÆÊý
if tma=\elsif tmb=\--¼ÆÊýµ½23
tma:=\ ca<='1'; else tma:=tma+1; end if; end if; end if; end if;
qa<=tma;qb<=tmb; carry<=ca; end process;
¢ÞÒëÂëÄ£¿éyima£º
ÊäÈë¶Ë¿Ú£ºcarry: in STD_LOGIC;
data: in std_logic_vector(3 downto 0);
µÚ 7 Ò³ ¹² 37 Ò³
Êä³ö¶Ë¿Ú£ºdataout:out std_logic_vector(7 downto 0)); Éú³É·ûºÅ£º
Éè¼ÆË¼Â·:¸ù¾ÝÊäÈëÐźŵIJ»Í¬£¬Ê¹ÓÃcaseÓï¾ä½øÐв»Í¬µÄÒëÂë²Ù×÷¼´¿É¡£¾ßÌå
À´Ëµ£º
'0'£¨ËÄλ¶þ½øÖÆ£©ÒëΪ\£¨°Ëλ¶þ½øÖÆ£©
'1'£¨ËÄλ¶þ½øÖÆ£©ÒëΪ\£¨°Ëλ¶þ½øÖÆ£© '2'£¨ËÄλ¶þ½øÖÆ£©ÒëΪ\£¨°Ëλ¶þ½øÖÆ£© '3'£¨ËÄλ¶þ½øÖÆ£©ÒëΪ\£¨°Ëλ¶þ½øÖÆ£©
µÚ 8 Ò³ ¹² 37 Ò³
Ïà¹ØÍÆ¼ö£º