Xilinx ISE constraints von internen signalen

OP #7808589
Lesenswert?
• ▲
▼

Ich möchte 4 SPI ADCs mit jeweils 4 entities ansteuern. Das Signal zum start der Konversion wird an alle Blöcke verbunden und die steuern intern einfach den ADC an und zählen die Zeit bis das Ergebnis da ist. Das sollte alles synchron sein, denn ich möchte alle Ausgabewerte in ein Array packen und dann versenden. Die Frage ist nun, ob ich intern Constraints für die Signale setzen muss oder reicht es ein Ready signal abzufragen und dann den Rest als auch ready anzunehmen, wenn sich jeder Block logisch gleich verhält? Es handelt sich um eine Clock Frequenz von 120MHz.

#7808622
Lesenswert?
• ▲
▼

Wenn dein Ready nur von internen SIgnalen abhängt, also immer bei allen 4 Komponenten zeitgleich 1 oder 0 ist dann reicht es eines davon abzufragen. Ist aber auch egal, denn die Synthese optimiert überflüssige Logik sowieso weg. Also sauber wäre es die 4 Readys alle abzufragen.

OP #7809127
Lesenswert?
• ▲
▼

Es werden natürlich drei unterschiedliche ADCs abgefragt aber das Ready Signal kommt von dem ensprechenden entity, das dreimal instanziert wird. Ich kann natürlich ein Signal einführen, das diese drei Ready Signale mit einem AND Gatter zusammenfasst.

Das Gatter würde wieder Verzögerung einfügen. Die Frage ist nun, ob das Synthesetool davon weiß und das Timing entsprechend beachtet.

#7809160
Lesenswert?
• ▲
▼

Gustav G. schrieb:

Ready Signal kommt von dem ensprechenden entity, das dreimal instanziert wird.

Ja, soweit klar. Aber ist der Zeitpunkt an dem das Ready kommt von externen Sachen abhängig oder kommt das immer bei jeder Entity zum gleichen Zeitpunkt?

Nein das AND muss keine Zeit kosten. Du kannst die Readys ja kombinatorisch mit AND einem Signal zuweisen oder als Bits in einen 4-Bit Vektor stecken den du dann auf "1111" anfragst.

OP #7809166
Lesenswert?
• ▲
▼

Gustl B. schrieb:

Ja, soweit klar. Aber ist der Zeitpunkt an dem das Ready kommt von externen Sachen abhängig oder kommt das immer bei jeder Entity zum gleichen Zeitpunkt?

Nein das ist von nichts externem abhängig. Der ADC hat keinen Ready ausgang. Es wird ein conversion start gesendet und dann zählt in jedem Entity ein Zähler in einer Zustandsmaschine und daher kommt das Ready Signal.

Mal angenommen so ein ready signal wäre extern dann müsste ich doch dafür eine weiter Zustandsmaschine schreiben, die jeweils wartet bis alle ADCs bereit sind, oder?

Antwort schreiben

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.

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.