FPGA zieht Input Signal auf 0

Gast #3870960
Hallo an alle,

Ich habe ein PWM signal, das ich mit einem FPGA auswerten will. Das 
Problem aktuell liegt aktuell aber beim Input Signal.

Das PWM-Signal liegt vor (überprüft mit einem Logikanalzyer). Sobald 
aber der FPGA programmiert wird, wird das Signal auf 0 gezogen. Resete 
ich den FPGA wieder, liegt auch das Signal wieder an.

Mein Constraints im XDC File sehen für den betreffenden Pin 
folgendermaßen aus:
1
set_property PACKAGE_PIN W20 [get_ports {pw_range}]
2
set_property IOSTANDARD LVCMOS33 [get_ports {pw_range}]

Das Signal wird dann direkt auf einen Input einer Entity geroutet. Ich 
verwende einen ZYNQ FPGA am Zybo Board und beschreibe mit Vivado 2014.2.

Hat irgendjemand eine Idee, warum der FPGA das Signal nach 0 zieht?

Mit freundlichen Grüßen
Martin
Gast
@Moderatorenteam: Hab aus Versehen mein Problem ins englischsprachige 
Forum geschrieben. Könnt ihr es bitte ins deutschsprachige Forum 
verschieben, oder soll ich einen neuen Thread aufmachen?
Gast
Lothar Miller schrieb:
> Von woher?

Aus einem Sensorinterface 
(https://www.digilentinc.com/Products/Detail.cfm?NavPath=2,719,1271&Prod=PMOD-MAXSONAR). 
Da ich noch keinen Schaltplan habe (habe bereits angefragt), kann ich 
das nicht genauer beantworten. So wie ich das sehe, dürfte am Sensor ein 
kleiner µC drauf sein, der das Signal generiert.

Lothar Miller schrieb:
> Welchen Pegel (bzw. Pullup/Pulldown) ordnest du unbenutzen Pins zu?

Unbenutzte Pins sind im Contraint-File aktuell nicht berücksichtigt. 
Warum ist das von Bedeutung?

Lothar Miller schrieb:
Hmmm... der Array oder das Array?

Ich hätte im englischen Forum mit 'the' bleiben sollen ;-)

Ich habe mal am Eingang den Pullup aktiviert
1
set_property PULLUP true [get_ports {pw_range}]

Leider führt das zum selben Verhalten.

lg Martin
Moderator (Firma: Titel) Persönliche Seite
Martin schrieb:
> Unbenutzte Pins sind im Contraint-File aktuell nicht berücksichtigt.
> Warum ist das von Bedeutung?
Könnte ja sein, dass dein Design so (weg)optimiert wird, dass kein 
Eingang mehr nötig ist. Dann gilt die Defaulteinstellung, die sich beim 
Generieren des Bitstroms einstellen lässt (oder zumindest bei der ISE 
einstellen ließ, ich arbeite noch nicht mit Vivado)...
Gast
Lothar Miller schrieb:
> Könnte ja sein, dass dein Design so (weg)optimiert wird, dass kein
> Eingang mehr nötig ist.

Dürfte vielleicht wirklich so etwas in der Art sein, sehe jedoch keine 
Anzeichen dafür. Wenn ich die Default-Einstellungen für unbenützte Pins 
auf Pullups stelle, wird das PWM Signal nicht unterdrückt.

Da die Default Unused-Einstellung Pulldown ist, ist die Impedanz des 
internen Pulldowns geringer als die Ausgangsimpedanz des Sensors.

Dies kann aber nur durch 2 Fälle passieren:
1) Die Logik wird wegoptimiert
2) Ich benutze den falschen Pin

Bezgl. 1), ich habe das Schematic nach der Synthese in Vivado angesehen. 
Hier ist der Eingang sauber synthetisiert, eine IBUF Zelle wird 
verwendet.

Bezgl. 2) sehe ich jedoch auch nicht, das ich etwas falsch mache :-(
Ich verwende den Pulsweiten-Ausgang des Sensors. Dieser ist gemäß [1] 
auf Pin 4. Bei der Verwendung des PMOD JB des Zybo-Boards muss gemäß 
[2], S.25, der Pin W20 verwendet werden. Das ist auch jener Pin, den ich 
im XDC-File habe (siehe Initialpost).

Ist die Pinzuordnung korrekt?

Mit freundlichen Grüßen
Martin

[1] 
http://www.digilentinc.com/Data/Products/PMOD-MAXSONAR/PmodMAXSONAR_rm2.pdf
[2] http://www.digilentinc.com/Data/Products/ZYBO/ZYBO_RM_B_V6.pdf
Moderator (Firma: Titel) Persönliche Seite
Martin schrieb:
> Bezgl. 1), ich habe das Schematic nach der Synthese in Vivado angesehen.
Die Optimierung passiert später. Sieh dir den Pinout Report an (es wird 
schon noch irgend sowas geben...)

Wenn du z.B. irgendetwas auswertest und berechnest, auf dieses 
ausgewertete Signal aber nie zugreifst, dann löst sich die ganze 
Schaltung in Nichts auf.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [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 einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.