Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Avoiding gated clocks for counters

Thread Tools

Avoiding gated clocks for counters

c64 c64 is offline
Junior Member
Join Date: Apr 2009
Posts: 11

After reading some posts on this newsgroup, I have understood that gated clocks is something one would like to avoid in FPGA design. The following code is for a counter:

USE ieee.std_logic_1164.all;
USE ieee.std_logic_arith.all;

ENTITY counter2rev2 IS
ENC : IN std_logic;
CLK2 : IN std_logic;
COUNT2 : OUT std_logic_vector (18 DOWNTO 0)

END counter2rev2 ;

ARCHITECTURE struct OF counter2rev2 IS
signal count2Int : std_logic_vector(18 downto 0);
constant allOnes : std_logic_vector(18 downto 0) := (others => '1');
counter : process (ENC,CLK2)
if ENC = '0' then
count2Int <= (others => '0');
elsif rising_edge(CLK2) then
if (unsigned(count2Int) = unsigned(allOnes)) then
count2Int <= (others => '0');
count2Int <= (unsigned(count2Int) + '1');
end if;
end if;
end process;
COUNT2 <= count2Int;

If I compile this as a stand-alone code, I get no warnings or errors. However, if I use it as a component in a larger system, I get the warning message that "The clock for counter 'count2Int' is gated", highlighting the line "count2Int <= (unsigned(count2Int) + '1');"

How should I change the design to avoid this gated clock warning?

Reply With Quote
jeppe jeppe is offline
Senior Member
Join Date: Mar 2008
Location: Denmark
Posts: 348
Well the problem can't be found in this code.
you must look at the path of CLk2, which properly scale down.

Reply With Quote

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
gated clock VHDL 1 03-24-2007 06:32 PM
Why don't you just buy a house in a Sony gated community? Jordan DVD Video 3 02-11-2007 04:01 PM
un-intentional gated clock after synthesis Elinore VHDL 8 08-01-2005 06:05 PM
HELP: High fanout load on Gated clock output whizkid VHDL 3 11-15-2004 10:20 AM
how to implement gated clock and gated partial circuit in VHDL? walala VHDL 3 09-23-2003 10:02 PM