Hi, ich habe hier eine Aufgabe für ein Programmierpraktikum an der Uni gestellt bekommen. Da ich mich nicht wirklich mit FPGAs auskenne und nun längere Zeit das Internet durchforstet habe und mir immernoch nicht schlüssig bin auf was ich bei meiner Aufgabe genau eingehen soll, frage ich euch als erfahrene FPGA Nutzer, was ihr meint auf was ich eingehen könnte. Ich will natürlich keine Lösung, sondern nur Vorschläge, was wichtig sein könnte. Hier die Aufgabe: Erstellen Sie eine ca. einseitige Übersicht aktueller Technologien für mindestens einmal beschreibbare CPLDs und FPGAs: Welche Hersteller gibt es, was sind die Leistungsmerkmale,wo kommen sie zum Einsatz, wie unterscheiden sie sich, mittels welcher Sprachen werden sie programmiert, in welcher Stückzahl lohnt sich ihr Einsatz,. . . ? Ich tu mir mit der Bearbeitung der Frage irgendwie schwer, weil ich im Internet irgendwie nicht Brauchbares finde und mir irgendwie der Überblick fehlt. Meine Idee war zuerst es in dieser Form zu bearbeiten: Altera Low-Cost-FPGA (Cyclone Series) Merkmale: Geringer Stromverbrauch, geringer Preis Anwendungsgebiete: Fahrzeugindustrie, Endverbraucher, Displayhersteller, Militär, Video- und Bildverarbeitung High-End FPGA (Stratix Series) Merkmale: Hohe Dichte an Logikbausteinen, geringer Stromverbrauch, hohe Performance Also die Serien der 4 größten Hersteller auf diese Art und Weise aufzuzählen, weil mir nichts Besseres einfiel, aber irgendwie befriedigt mich die ganze Sache nicht. Habt ihr evtl eine Idee auf was ich eingehen kann? Danke auf jeden Fall mal schon!
> weil ich im Internet irgendwie nicht Brauchbares finde Geh in die UNI-Bibliothek, greif dir aktuelle Bücher zum Thema FPGAs heraus und schlag in den erten 25 Seiten jedes Buches nach. Dann hast du mal eine Ahnung, in welche Richtung du gehen mußt. > einseitige Übersicht aktueller Technologien Eine Seite ist knapp. Da kannst du bestenfalls am Lack kratzen... BTW: ein Haupmerkmal ist z.B. eine Instant-On Fähigkeit (Actel, Flash-basierte FPGAs). SRAM-basierte FPGAs müssen dagegen erst geladen werden.
Das mit dem Verwendungszweck ist nicht leicht zu sagen weil es von jeder FPGA Serie fast eine für Automotiv, MIL, Multimedia, erweiterter temparaturespanne oder sogar RAD HARD(aerospace usw). Schau dir mal die Spartan 3 Serie an von Xilinx da gibts allein 3 verschiedene Modelle mit ihren eigenheiten und einige verschiedene Varianten an Logikdichte usw. http://www.xilinx.com/products/spartan3a/ MFG Patrick
Ja ich danke euch beiden. Das mit dem Verwendunszweck habe ich auch schon gesehen und da blickt man gar nicht mehr durch. Ich werde es wohl nun so machen und ein zwei Beispiele für FPGAs mit HardCores bzw. SoftCores und kurz sagen, wofür man es diese Cores benötigt. Das mache ich dann auch mit SRAM- und Flashbasierte FPGAs und dann muss ich mal noch weiterschauen, was ich so nehmen werde :)
Ich würd auch auf die Softcores auch nicht so ein gehen, sondern einfach das ganze auf 3 Teile Gliedern: IPs Features der FPGA Entwicklungs umgebung Bsp Xilinx Algemein: Auszug der Angebotenen IPs * Ethernet Solutions * Endpoint for PCI Express * PIPE Endpoint for PCI Express * PCI 32-bit/64-bit Cores * Forward Error Correction Solution * DSP IP Cores/Algorithms * Processor IP * MicroBlaze™ * PicoBlaze™ * External Memory Solutions FPGAs Spartan 2: Spartan 3: *DSP-Hard Blocks *I/Os bis zu 600Mb/s *50,000 to 3.4 million system gates *Model mit Userflash *bis zu 320MHz (teoretisch ;-)) Also in die richtung würd ich das machen. So bekommt man einen kleinen überblick über die leistungsfähigkeit. Wobei zu sagen ist das ich das auch nur für die Populärsten/meist verwendeten FPGAs machen würde. Wer was spezielles sucht der kann sich eh was im inet suchen.
> IPs > Features der FPGA > Entwicklungs umgebung Die Reihenfolge ist m.E. falsch. Zuerst kommt das FPGA mit seinem grundlegenden Aufbau (Technik). Dazu die dedizierten Features (Multiplizierer, RAM, Prozessorkerne...). Dafür braucht man dann eine Entwicklungsumgebung. Damit können dann IP-Cores erstellt werden.
Naja das mit IP-Cores ist nicht unbedingt das letzte. Man muss sich ja erst die Fragen beantworten: Was will ich überhaupst machen? Wieviele I/Os brauch ich ? Wieviele Resourcen brauch ich ? Welche Features muss ich haben? (Serielle hochgeschwindigkeits I/O, Differentielle, DSP-Hard Cores usw) Dann kann ich mal sehen was ich für ein Modell an FPGA an nehm (Ok die Entwicklungsumgebung steht meistens nach der Wahl der FPGA eh schon fest) MFG Patrick P.S.: Außer Lothar du arbeitest mit nem Virtex 6 Schlachtschiff dann würd ich nach deiner Reihenfolge vorgehen weils fast nimmer "Fetter" gehts bei Xilinx wenn ich mich ned ganz irre
Also ich habe nun mehr oder weniger CPLDs mit FPGAs verglichen und nun bin ich an dem Punkt, an dem ich ein paar Leistungsmerkmale von CPLDs aufzählen will. Hab da nun schon ein paar Punkte dazu, aber irgendwie bin ich mir da relativ unschlüssig. Da ich das alles auf ca. eine Seite hauen soll, muss ich das ja schon sehr grob beschreiben. Meine Punkte sind dann bisher, die Sicherheit bzgl. Designdiebstahls, welchen Stromverbrauch sie haben, welche interne Taktfrequenz, welche Eingangs- und Ausgangsspannungen an den Schnittstellen erlaubt sind und welche räumliche Dichte sie besitzen. Ja meine Beschreibung der Leistungsmerkmale hört sich sehr laienhaft an, da ich auch ein Laie in dem Gebiet bin, aber aus der Masse an Features die zu den CPLDs auf den verschiedenen Herstellerseiten weiß ich echt nicht, was ich herausziehen soll... Ich danke schon mal im Voraus für eure Ideen.
Anzahl der Logikzellen Struktur der Logikzellen (CPLD - breite, grosse Dekoder in UND-ODer Matrix, FPGA - kleine, RAM-basierte Look Up Tables) Sonderfunktionen wie RAM-Blöcke, CPUs, Ethernettranceiver, Gbit- SerDes, etc. Preis/Logikzelle MFG Falk
'Struktur der Logikzellen (CPLD - breite, grosse Dekoder in UND-ODer Matrix' So ganz stimmt das nicht mehr. Moderne CPLDs besitzen eine ähnliche Struktur wie FPGAs --> SRAM basierte Logigstrukturen, die über einen integrierten Flash Speicher konfiguriert werden.
Es gibt da ein sehr tolles Buch - "FPGAs for Dummies". Der Titel ist zwar nicht so nett, aber das dürfte ziemlich genau alle Fragen beantworten, die du hier gestellt hast.
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.