Hallo, im Zuge einer Überarbeitung soll ich ein TTL - Grab mit zusammen 70 Ein- und Ausgängen durch ein CPLD (Xilinx Coolrunner II) ersetzen. Da ich bisher noch kaum mit CPLDs geabeitet habe stehe ich jetzt vor der Frage, ob ich die Ein- und Ausgänge am CPLD nach belieben (bzw. so wie es sich am besten routen lässt) festlegen kann oder ob ich dabei etwas beachten muss (z.B. welche Bänke oder Makrozellen ich wofür am besten benutze). Ich habe zwar in Büchern viel über Programmierrichtlinien u.ä. für VHDL gefunden, aber nichts wie ich am sinnvollsten die I/Os aufteile.
Im großen und ganzen kannst du die IO Blöcke nach deinen Vorstellungen gestallten. Sollte evtl. viel Logik untergebracht werden, sind kurze Signalewege von Vorteil(also z.B. nicht von links oben nach rechts unten, sondern etwa von links oben nach rechts oben, oder so) Dann gibt es noch globale Takteingänge und Reseteingänge. Wobei das erste eher von interesse ist. D.h. wenn hier ein globaler Takt eingebracht wird, dann hat es Routingvorteile, im Gegensatz zu einem normalen IO...
Die User I/O sind in (2?) bänke geteilt. Für jede ist der Ausgangssignalpegel auswählbar. Also eine auf z.B. 3V3, die andere auf 1V8. Falls Du einen BGA verwendest, schau wie du am besten die inneren Pins anfährst. Eventuell sollte man diese nicht benutzen (wegen PCB_Layout problemen). Je Lockerer (Belegt/unbelegt im Wechsel statt knäulweise belegt) desto besser. Die internen laufzeiten hängen beim CPLD nicht oder schwach von der Pinbeschaltung an (Ausnahme dedicated Pins vom Vor-Redner) wie beim FPGA. Also zwei signale verknüpfen die an engegengestzten ecken in den Chip führen ist beim FPGA schlecht aber beim CPLD kaum relevant (wegen AND/OR Matrixfeld).
Eine Stolperfalle bei den Collrunners ist die zentrale Wahl der Terminierung. Man kann zwar zwischen Bus-Hold und Pull Up waehlen, aber nur eine dieser beiden Moeglichkeiten waehlen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.