Xilinx CPLD - Byte-IO PIN Assignment im selben Funktionsblock ja/nein?

Gast #5550499
Lesenswert?
• ▲
▼
Hallo zusammen,

in meiner XC9572 Xilinx CPLD-Anwendung gibt es 8 bzw. 16 Bit breite 
"Worte" zu verarbeiten (Input / Output). Wie sollte ich am Besten die 
Pins zu den einzelnen Wort-Bits zuordnen?

Für ein n-bit Wort "w" sei "w[i]" das ite Bit, und "start" sei ein 
beliebiger CPLD Pin. Sollte ich nun lieber

a) w[0] = start, w[1] = start + 1, ..., w[n-1] = start + n-1

oder besser

b) w[0] = cpld_function_block_pin(0), w[1] = cpld_function_block_pin(1), 
..., w[n-1] = cpld_function_block_pin(n-1)

nehmen?

Wobei cpld_function_block_pin(i) der Pin für die ite Makrozelle in einem 
Funktionsblock ist (sagen wir Block 1). Für meinen XC9572 PC84 wäre z.B. 
für Block 1: cpld_function_block_pin(1) = 4, cpld_function_block_pin(2) 
= 1, usw.

Macht es nun Sinn, für die Wortbit-Pin-Zuordnung sicherzustellen, dass 
sie "im gleichen Funktionsblock" (evtl. sogar nach aufsteigender Macro 
cell Nummer) "sortiert" / "verarbeitet" werden? Method a) ist natürlich 
wesentlich schöner im Verilog / VHDL Code. Bisher habe ich immer a) 
verwendet.

Mit der Bitte um Erleuchtung / Meinung, Danke und mfG! Michael
#5550590
Lesenswert?
• ▲
▼
Lasse halt einfach mal den Fitter ein paar Mal laufen und gib ihm freie 
Hand, dann kommt das raus, was ihm am besten gefällt und auch die 
Obergrenze für die Performance.

Dann schreibe ihm dein Wunsch-Pinout vor und du wirst sehen, ob genügend 
Performance übrig bleibt. Normalerweise haben nur globale Signale wie 
Takte einen nennenswerten Einfluss, und auch beim Wunsch-Pinout sind die 
Signale üblicherweise halbwegs sortiert.

Versuch macht kluch.

Gruß, Gerhard
Gast #5551052
Lesenswert?
• ▲
▼
Danke Gerhard. Performance sollte ohnehin kein Problem sein für diese 
Anwendung (der CPLD ist mehr als schnell genug). Da ich mit a) bisher 
keine Probleme hatte, bleibe ich einfach dabei - Code und 
Platinen-Layout sind dann übersichtlicher. Ich werde b) trotzdem mal 
ausprobieren.

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.