Forum: FPGA, VHDL & Co. Xilinx CPLD - Byte-IO PIN Assignment im selben Funktionsblock ja/nein?


von Michael W. (Gast)


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

von Gerhard H. (ghf)


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

von Michael W. (Gast)


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.

von Michael W. (Gast)


Lesenswert?

Performance Exporer aktivieren. Der spielt die Kombis durch.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.