In my VHDL code, I use rising_edge for shift registers to latch data.

But TimeQuest report timing of these shift registers using falling edge of clock.
What's wrong?

pls see the detailed VHDL code below:
LIBRARY IEEE;
USE IEEE.stdlogic1164.ALL;
USE IEEE.stdlogicunsigned.ALL;
USE IEEE.stdlogicarith.ALL;
entity FreqMeasure_ADReader is

port
(
   IN_AD_SCLK     : in std_logic;
   IN_TARGET_SIGNAL  : in std_logic;
   IN_AD_DATA         : in std_logic;
   OUT_AD_SCLK        : out std_logic;
  OUT_AD_VALUE      : out integer       
);

constant cADRESOLUTION : integer :=16;
end entity;
architecture registeradsclk of FreqMeasureADReader is
component SynSignalGenerator
CrossingClockDomain is
port
(
INCLK : in stdlogic;
INSTROBE : in stdlogic;
OUTSYNSIGNAL : inout std_logic
);
end component;

signal   s_ad_sdata_shift_reg   : std_logic_vector(c_AD_RESOLUTION-1 downto 0);
signal   s_ad_sclk_enable :std_logic;
signal   s_ad_sclk :std_logic;
signal   s_counter :integer range c_AD_RESOLUTION*2 downto 0;
signal   s_target_signal : std_logic;
signal   s_counter_synclear : std_logic;

begin

stargetsignal <= NOT INTARGETSIGNAL;
countersyncleargen: SynSignalGeneratorCrossingClockDomain PORT MAP(INADSCLK, stargetsignal, scountersynclear);
sclk
engen: process(INADSCLK, scountersynclear)
begin
if(s
countersynclear = '1') then
s
counter <= 0;
elsif(risingedge(INADSCLK)) then
if(s
counter = 1) then
sadsclkenable <= '0';
s
counter <= scounter + 1;
elsif(s
counter < cADRESOLUTION * 2) then
sadsclkenable <= '0';
s
counter <= scounter + 1;
else
s
adsclkenable <= '1';
end if;
end if;
end process;
adsclkgen: process(INADSCLK, sadsclkenable)
begin
if(s
adsclkenable = '0') then
if(risingedge(INADSCLK)) then
s
adsclk <= NOT sadsclk;
end if;
else
s
adsclk <= '1';
end if;
end process;
OUT
ADSCLK <= sadsclk;
shift
reg0: process(sadsclk)
begin
if(rising
edge(sadsclk)) then
sadsdatashiftreg(0) <= INADDATA;
end if;
end process;

shiftreggen: for i in 1 to sadsdatashiftreg'high generate
process(sadsclk)
begin
if(risingedge(sadsclk)) then
s
adsdatashiftreg(i) <= sadsdatashiftreg(i-1);
end if; end process;
end generate;
OUT
ADVALUE <= CONVINTEGER(sadsdatashiftreg);
end registeradsclk;

Pls see the following TimeQuest screen shot pic:
http://blogimg.chinaunix.net/blog/upfile2/080124210233.jpg

Another question:
I create ADSCLK for *|FreqMeasureADReader:*|sadsclk, pls see below
creategeneratedclock -name ADSCLK -source FreqMeasureNiosII:inst|pll:thepll|altpllpll:thepll|altpll:altpllcomponent|clk2 -divide_by 2

And TimeQuest report timing of |FreqMeasure_ADReader:|sadsclk with wrong launch clock, the launch clock should be FreqMeasureNiosII:inst|pll:thepll|altpllpll:thepll|altpll:altpllcomponent|clk2.
Pls note that: *|FreqMeasure
ADReader:*|sadsclk is a toggle register launch & latch by FreqMeasureNiosII:inst|pll:thepll|altpllpll:thepll|altpll:altpllcomponent|_clk2, which make TimeQuest confused.
How can I correct TimeQuest to report correct timing in this case?
Pls also see the following screen shot pic:
http://blogimg.chinaunix.net/blog/upfile2/080124210633.jpg