www.mikrocontroller.net

Forum: FPGA, VHDL & Co. ISE WebPack + Netlist + Softmakro = 32 failing Constraints


Autor: Ghisi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

ich hab leider ein Problem mit einer Netlist und dem PAR unter ISE 
WebPAck.
Ich habe von einer Firma ein Modul für den Spartan2e entwickeln lassen, 
dieses ist an einen PCI Controller angebunden. Wenn ich die von der 
Firma entwickelte Netlist und das zugehörige .ucf File in ISE PAR möchte 
bekommen ich 32 failing constraints errors wie:
MET = No; Constraint = COMP "D(11)" OFFSET = OUT 10 ns AFTER COMP "clk"
Check = MAXDELAY; Worst Case Slack = -2,757ns; Best Case = 12.757ns
Timing Errors = 1; Timing Score = 2757

Ich habe im Studium gelernt das eine Verletzung der Setup und Hold 
Zeiten
zu Instabilitätem im Betrieb führen. Ist das eine deutliche Verletzung 
dieser
Zeiten? Was kann man dagegen tun?

Ich meine der Entwickler hätte nicht auf ISE entwickelt, vll. hat er es
desewegen nicht gemerkt?

Bin für jeden Tipp dankbar,

Ghisi

Autor: Ghisi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sorry, der titel muss ISE + Netlist + .ucf + PAR lauten...

Autor: Jan M. (mueschel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jetzt müsste man genauer wissen, wann die Daten die aus dem FPGA kommen 
von der Gegenstelle gelesen werden.

Der Fehler sagt nämlich, dass die Ausgänge des FPGAs erst etwa 12ns 
nachdem am Takteingang eine steigende Flanke war valide sind. Liest die 
Gegenstelle also erst z.B. 15ns später, ist alles in Ordnung. Schreib 
bitte, was die Gegenstelle ist, wann die liest und welchen Takt sie 
dafür verwendet, dann kann man genaueres sagen.

Autor: Ghisi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, am (FPGA) Softmakro und am PCI Controller (PLX PCI9030) liegt eine 
gemeinsame Taktleitung, die mit 33 MHz über einen konfigurierbaren 
Taktgenerator getaktet ist.

Der Takt ist ist also der Systemtakt des Softmakros und gleichzeitig der 
synchrone Takt zwischen Softmakro und lokalen PCI Bus.

Der lokale Bus ist nicht gemultiplext. Es

Read Fall: FPGA->PCI Controller
Table 12-6. AC Electrical Characteristics (Local Inputs) over Operating 
Range
Signals (Synchronous Inputs)
CL = 50 pF, VCC = 3.0V, Ta = 85 °C Bus Mode
SIgnale Bus-Type TSETUP (ns) (Worst Case) THOLD (ns) (Worst Case)
BTERM# All 7.0 1
LAD[31:0] (Data) Multiplexed 5.0 1
LD[31:0] Non-Multiplexed 5.0 1
LPMESET All 5.0 1
LREQ All 5.0 1
READY# All 7.0 1

Input Clocks Bus Mode Min Max
Local Clock Input Frequency All 0 60 MHz
PCI Clock Input Frequency All 0 33 MHz

Write Fall:FPGA->PCI

Signals (Synchronous Outputs)
VCC = 3.0V, Ta = 85 °C Bus Mode
Output
TVALID (Max)
ADS# All 10.0
BLAST# All 10.0
CS[3:0]# All 10.0
LA[27:2] All 10.0
LAD[31:0] (Data) Multiplexed 10.0
LBE[3:0]# All 10.0
LD[31:0] Non-Multiplexed 10.0
LGNT All 11.0
LLOCKo# All 10.0
LPMINT# All 10.0
LW/R# All 10.0
RD# All 10.0
WAITo# All 10.0
WR# All 10.0

Hoffe das ist so lesbar. Für mich sieht es so aus, als ob die 
Gegenstelle schon nach 1ns valide Daten erwartet... oder interpretiere 
ich das Falsch?!?

Autor: Jan M. (mueschel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich das richtig entschluessele (Screenshot der formatierten Tabelle 
waere besser gewesen), ist tsetup 5ns und thold 1ns. Die Daten muessen 
also 5ns for der Clockflanke bis 1ns danach valide sein.

Hat dein lokaler Bus nun 33MHz, also ~30ns taktdauer, muessen die Daten 
spaetestens 25ns nach der vorhergehenden Taktflanke valide sein. Du 
kannst die constraints also ruhig von 10ns auf z.B. 15ns erhoehen 
("OUTPUT xy VALID 15 ns AFTER CLK_xy RISING").

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.