Hallo alle! Ich versuche zu verstehen, woraus ein FPGA besteht, und vor allem, wie man diese Angaben - Zahl der Gates, Cells und Logic Blocks - richtig versteht. Ich habe mir den Wikipedia-Artikel zu FPGA auf Deutsch und Englisch durchgelesen und blicke immer noch nicht durch. Darum möchte ich meine Fragen hier stellen und hoffe auf eure Hilfe! 1. Bei manchen FPGAs ist die Zahl der Gates (wie 50k, 200k usw.) angegeben. Nun laut Wikipedia besteht ein Basisblock eines FPGA vereinfacht aus einer Lookup-Tabelle die logische Funktionen (and, or, nor ...) realisiert und einem Flip-Flop. Von Gattern (also Gates) ist da nicht die Rede. Was bedeutet denn die Angabe der Gatterzahl? Heißt es, dass bei den Bausteinen, die diese Angabe haben, ein Basisblock keine LUTs sondern normale Gatter hat? Außerdem, warum braucht man die Angabe der Gatterzahl? Die Gatter sind doch (falls ich es richtig verstehe) in Basisblöcken untergebracht, wäre da nicht die Angabe der Zahl der Basisblöcke und evtl. zusätzlich der Zahl der Gatter pro Block sinnvoller? 2. Weiterhin ist die Zahl der Makrozellen angegeben. Ich gehe mal davon aus, dass Makrozelle = Basisblock (aus Wikipedia) ist. Stimmt es so? Was bedeutet der Begriff Logic Block? Der steht z.B. in der Beschreibung des Lattice LFEC1E-5TN100C bei Farnell. Zuerst habe ich angenommen, es ist dasselbe wie Makrozelle, aber bei dem Baustein ist die Zahl der Makrozellen 750 und die der Logic Block 192, daher kann dan wohl nicht dasselbe sein, aber was sind dann die Logic Blocks? Ich danke schon mal für jede Antwort!!!
Hallo, als Beispiel Xilinx Spartan 3: http://www.xilinx.com/support/documentation/data_sheets/ds099.pdf Auf der Seite 3 steht folgendes: Logic Cell = 4-input Look-Up Table (LUT) plus a ‘D’ flip-flop. "Equivalent Logic Cells" equals "Total CLBs" x 8 Logic Cells/CLB x 1.125 effectiveness Bei Altera ist es änlich, nur bei denen wir die Anzahl von LEs (Logiv Elements) angegeben. 1 LE bei Altera ist (relativ) gleich 1 Logic Cell von Xilinx. Und Gates-anzahl bei Xilinx sagt mir persönlich nicht viel. MfG aus Westerwald
> Was bedeutet denn die Angabe der Gatterzahl? Da kommt noch aus der FPGA-Steinzeit, als FPGAs mit ASICs verglichen wurden. Dann konnte man eine ASIC-Funktion, die durchschittlich eine bestimmte Gatteranzahl (üblicherweise NAND-Gatter) hat, u.U. in ein entsprechendes FPGA bringen... > Was bedeutet der Begriff Logic Block? Das steht im Datenblatt zum entsprechenden FPGA und ist auch beim selben Hersteller eine jeweils unterschiedlich große Baugruppe aus LUTs, FFs, Carry-Logic... > Makrozelle Gibts traditionell nur bei CPLDs, und daher ist das nicht so direkt auf FPGAs übertragbar. Man kann aber genauso wie bei den Gatteräqivalenten eine Umrechnung machen und sagen, ein Design, das im FPGA x Logikblöcke braucht, bräuchte ein CPLD mit etwa y Makrozellen. > aber was sind dann die Logic Blocks? Das sind die vielfach wiederholten logischen Einheiten innerhalb eines FPGAs. Jeder Hersteller hat dort eine eigene Bezeichnung und mehr oder weniger Funktionalität untergebracht.
Vielen Dank nochmals für die Aufklärung!! Das hat mich schon wesentlich weiter gebracht!
Hallo Zusammen Wie berechne ich resp. schätze ich ab, wieviele Flipflops und Gates ich für mein Vorhaben/Schaltung benötige? Z.B. Geplant habe ich ein XC95108 im PLCC84 Gehäuse für einen universellen GPIO mit 8x 8Bit Ports. Jeder Port sollte wahlweise Input, Output und PWM können. Dies möchte ich per Setup vom uC zu Beginn in den Baustein einspeichern(Konfiguration). Das Ziel ist einen einzigen universellen GPIO zu bekommen mit mehr Ein-/Und Ausgängen als herkömliche bausteine eben noch mit PWM. Von den 69 Pins werden 8x 8Pin für die I/O's benötigt, ein Pin für den I2C/SPI Slave Betrieb, 4 Pin's für den SPI (I2C) Busanschluss Angesprochen von einem Microkontroller mit einem SPI Bus. Habe hier an anderer Stelle gelesen, das Falk in einen XC9572 CPLD nur einen SPI Slave und 12 PWM hinbekommen hat, weil der CPLD zuwenig Flipflops oder Gates hat. Mir ist noch unklar ob diese Gates auch eine Art Flipflop Speicherfunktion haben denn für meine Konfiguration, Counter, Register für Frequenzteiler, etc. benötige ich schon mehr Bytes als ich FlipFlops Bits habe und die sind ja Ausschleisslich direkt für den I/O Pin. Würde es weniger "Gates/Macrozellen/Flipflops" benötigen, wenn man die Konfiguration immer für einen ganzen Port herstellt. es wärend ann immer 8 Bit miteienader Eingang, Ausgang oder PWM? Da die Entwicklungsumgebung die "Verteilung" der Gates/Macrozellen automatisch vornimmt, ist es wohl schwierig dies im Voraus zu berechnen oder gibt es dafü eine Anleitung? Könnte auch auf einen FBGA von mit einem Lötbaren Gehäuse wechseln, weil die FPGA für meine geplante Anwendung wohl geeigneter ist. (Hat meine Recherche im Internet von ca. 2 Tagen+ ergeben) Da ich die Xilinx Entwichlungsumgebung bereits beschafft habe inkl. Programmer wäre ich über Vorschläge der Xilinx-Chips sehr verbunden. Wie kompatibel die Software und der USB Programmer ist in Bezug auf Lattice oder Altera Chips weiss sich nicht. Da sind natürlich nun die Erfahrungen der Spezialisten auf diesem Gebiet gefragt. Ob mir da wohl jemand weiterhelfen kann auf welchen Chip ich setzen soll? Besten Dank schon mal im Voraus. Gruss Martin
Xilinx schrieb: > Z.B. Geplant habe ich ein XC95108 im PLCC84 Gehäuse für einen > universellen GPIO mit 8x 8Bit Ports. Vergiss es. Der alte Zombie (den es nur noch an der Resterampe gibt), hat gerade mal 108 Flipflops. Um einen Konfigurierbaren IO-Pin zu bekommen, musst du den Ausgangswert, den Tristatewert und den Eingangswert speichern können. Das sind 3*64=192 Bits. Damit ist die Latte von 108 Flipflops schon gerissen. Das CPLD ist zu klein. Punkt. Wenn du jetzt noch das SPI-Interface dazunimmst, dann noch Register für die PWM, dann siehst du, dass du auch mit größeren CPLDs ratzfatz am Ende bist. Fazit: nimm einen MachXO/MachXO2 von Lattice.
:
Bearbeitet durch Moderator
http://www.eejournal.com/archives/articles/20130924-halffull/ "The FPGA is Half Full - Unwinding the Marketing Spin" in der üblichen flotten "Schreibe" von Kevin Morris, immer nett zu lesen.
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.