Forum: FPGA, VHDL & Co. Probleme mit Verzögerungsmodell: Transport


von Cotton (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich bin auf ein Verhalten meines VHDL-Modells gestoßen, dass ich mir 
nicht erklären kann.
Ich erzeuge mir einen Signalverlauf mit Hilfe der Transport Anweisung in 
meiner Testbench. Dieses Signal soll im "DUT" in einem syncronen Prozess 
verzögert werden. Jedeoch findet diese Verzögerung nicht statt.
Hier ein Beispielcode:
1
library ieee;
2
use ieee.std_logic_1164.all;
3
use ieee.numeric_std.all;
4
5
entity problem is
6
7
end entity problem;
8
9
10
11
architecture behavioral of problem is
12
13
  signal clk      : std_logic := '1';
14
  signal test_sig : std_logic := '0';
15
  signal reg      : std_logic := '0';
16
  signal reg_r    : std_logic := '0';
17
18
  constant clk_period : time := 10 ns;
19
20
21
begin  -- architecture behavioral
22
23
  clk <= not clk after clk_period/2;
24
25
  test_sig <= '0' after 0 ns,
26
              '1' after 20*clk_period;
27
28
  reg <= transport test_sig after 10*clk_period;
29
30
  process(clk)
31
  begin
32
    if rising_edge(clk) then
33
      reg_r <= reg;
34
    end if;
35
  end process;
36
37
38
end architecture behavioral;


Die Simulation zeigt, dass "reg_r" immer gleich "reg" ist. Ohne die 
Verwendung von "transport" (reg <= test_sig) ist das Verhalten wie 
gewünscht und "reg_r" ist um eine Periode gegenüber "reg" verzögert.
Hat jemand eine Idee, woran das liegen kann? Im Anhang befindet sich das 
Beispiel.

Viele Grüße,

Cotton

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Cotton schrieb:
> Im Anhang befindet sich das Beispiel.
Das kann ich mir auf dem Handy leider nicht ansehen. Drum besser einfach 
mit VHDL Dateien und Screenshots arbeiten...

von Cotton (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
vielen Dank für den Hinweis. Hier einmal das Simulationsergebnis.

Viele Grüße,
Cotton

von Klakx (Gast)


Lesenswert?

Das sieht nach delta Delay aus. Mit 10.1 statt 10 sollte es deinen 
Vorstellungen entsprechen

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Klakx schrieb:
> Das sieht nach delta Delay aus
Den Verdacht habe ich auch.
Oder andersrum: es ist ganz schlecht, "gleichzeitig" mit dem Takt die 
Daten zu ändern...

von Cotton (Gast)


Angehängte Dateien:

Lesenswert?

Vielen Dank für die Antworten. Jetzt ist mir die Problematik klarer 
geworden. Ich habe mir das delta delay im Simulator angeschaut. Im 
Anhang befindet sich ein Bild der Simulationsergebnisse.

Viele Grüße,
Cotton

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.