so, hab jetzt was rausgefunden:
wenn ich die simulationsauflösung auf 1 ps stelle, sehe ich, dass das
ff-modell genau nach 100 ps den eingang auf den ausgang legt.
bei der suche in der bibliothek ist dies auch so im modell beschrieben.
entity FDCE is
generic(
INIT : bit := '0'
);
port(
Q : out std_ulogic;
C : in std_ulogic;
CE : in std_ulogic;
CLR : in std_ulogic;
D : in std_ulogic
);
end FDCE;
architecture FDCE_V of FDCE is
begin
VITALBehavior : process(C, CLR)
variable FIRST_TIME : boolean := true ;
begin
if (FIRST_TIME = true) then
Q <= TO_X01(INIT);
FIRST_TIME := false;
end if;
if (CLR = '1') then
Q <= '0';
elsif (rising_edge(C)) then
if (CE = '1') then
Q <= D after 100 ps;
end if;
end if;
end process;
end FDCE_V;
problem aber ist, dass diese modell nur funktioniert, wenn die clock mit
100 ps läuft.
normalerweise sollte die von xilinx mitgelieferte bibliothek unisim die
simulation unabhängig der taktfrequenz ermöglichen. d.h. sie sollte sich
dem gewünschten takt anpassen.
ich werde mal weitersuchen, wie ich das in den griff bekomme.
bye
mss