Forum: FPGA, VHDL & Co. Clock-Inputs Spartan 7


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Mampf F. (mampf) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Guten Mittag,

ich steh gerade so richtig auf dem Schlauch ...^^

Ich hab ein Arty S7 Board, an das ich einen Clock über einen 
Erweiterungs-Header anschließen möchte.

Bei der Implementierung bekomme ich folgenden Fehler:

> [Place 30-574] Poor placement for routing between an IO pin and BUFG.
> If this sub optimal condition is acceptable for this design, you may
> use the CLOCK_DEDICATED_ROUTE constraint in the .xdc file to demote
> this message to a WARNING. However, the use of this override is highly
> discouraged. These examples can be used directly in the .xdc file to
> override this clock rule. <snip>

Leider sieht man im Referenz-Manual und im Schaltplan des Arty S7 und 
sogar im Pinout des Spartan 7 nicht, welche I/Os als Clock-Input 
verwendet werden können.

Soll man den Fehler einfach ignorieren und den Vorschlag in die 
Constraints schreiben?

> set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets SWCLK_IBUF]

Es handelt sich um einen SWD-Clock, der zur internen Cortex M1 IP geht.

Das FPGA ist mit 15% nicht so ausgelastet, dass man so schlechtes 
Routing erwarten könnte.

Hier noch das Pinout-File von Xilinx:
https://www.xilinx.com/support/packagefiles/s7packages/xc7s50csga324pkg.txt

Da kann man nicht wirklich erkennen, woran man Clocks anschließen soll.

Hat jemand eine Idee?

Viele Grüße,
Mampf

*edit*: Google spuckt eine Xilinx-Seite mit folgender Hilfe aus:
> To resolve this issue, either:
> 1) Move the clock input to a clock capable pin.

Ahja, darauf wäre ich nie gekommen ... Aber wo sind die clock capable 
pins xD

: Bearbeitet durch User
von Hannes (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Bei der 7er Serie sind die Clock-Inputs die mittleren 4 Lanes einer Bank 
(also 11, 12, 13, 14). Wird die Clock single-ended verwendet, kann diese 
nur auf dem P-Pin als Clock geroutet werden. Das sind die 
MRCC/SRCC-Pins.

Die Auslastung des FPGAs hat hiermit nichts zu tun - die Clock wird bei 
deaktiviertem Dedicated Routing entweder ueber normales Routing geleitet 
(statt ueber die Clock-Buffer), oder bei Verwendung der Clock-Buffer 
gibt es einen deutlich groesseren (und schwerer zu definierenden) Skew 
als bei der Verwendung eines Clock-Paares.

Dieser Skew muss beim constrainen und routen beruecksichtigt werden. Er 
laesst sich auch nicht so einfach wie sonst mit einer MMCM reduzieren, 
sondern es muss deutlich mehr Aufwand betrieben werden.

Wie sieht das restliche Signal denn aus? Clock, Daten, 
Setup/Hold-Zeiten?

von freduardo (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Hi,

die Clocking Ressourcen des Spartan 7 sind beschrieben in:

https://www.xilinx.com/support/documentation/user_guides/ug472_7Series_Clocking.pdf

Schau Dir da das Kapitel "Clock capable I/O" an (Seite 49).

Gruß Freduardo

von Mampf F. (mampf) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Hannes schrieb:
> Bei der 7er Serie sind die Clock-Inputs die mittleren 4 Lanes einer Bank
> (also 11, 12, 13, 14). Wird die Clock single-ended verwendet, kann diese
> nur auf dem P-Pin als Clock geroutet werden. Das sind die
> MRCC/SRCC-Pins.

Aaaaah, vielen Dank!

Hannes schrieb:
> Wie sieht das restliche Signal denn aus? Clock, Daten,
> Setup/Hold-Zeiten?

Da hab ich nichts angegeben ... Das SWD ist ziemlich langsam, sodass ich 
denke, da keine Probleme zu bekommen.

von Mampf F. (mampf) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Hat nun geklappt!

Vielen Dank!

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]
  • [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.