Welcher Programmiersprache gehört die Zukunft im Embedded Bereich? C++ oder Java



  • Embedded Progger schrieb:

    Aber wie die Zukunft von FPGAs aussieht, das wäre dann jetzt doch wieder ein eigener Diskussionsthread wert.

    Lies dir aber bitte mal vorher z.B. das durch, damit du wenigstens mit Halbwissen glänzen kannst.
    http://de.wikipedia.org/wiki/Field_Programmable_Gate_Array



  • Tim schrieb:

    Embedded Progger schrieb:

    Aber wie die Zukunft von FPGAs aussieht, das wäre dann jetzt doch wieder ein eigener Diskussionsthread wert.

    Lies dir aber bitte mal vorher z.B. das durch, damit du wenigstens mit Halbwissen glänzen kannst.
    http://de.wikipedia.org/wiki/Field_Programmable_Gate_Array

    Glaub mir, ich kenne die Anwendungsgebiete von FPGAs gut genug.

    Aber gehen wir mal auf die Anwendungsgebiete der Wikipedia ein und sagen was es da als Alternative gibt:

    PGAs haben in den letzten Jahren ihren Anwendungsbereich von der klassischen „Glue-Logic“, also der reinen Verbindungslogik zwischen verschiedenen digitalen Bausteinen, zunehmend erweitert und werden heute auch bei mittleren Stückzahlen für die Realisierung komplexer digitaler Schaltungen bis hin zu kompletten digitalen Systemen eingesetzt.

    Alternative:
    -> System on a Chip (SoC)
    http://de.wikipedia.org/wiki/System_on_Chip

    Durch die Rekonfigurierbarkeit von FPGAs direkt beim Endanwender besteht darüber hinaus der wesentliche Vorteil, auf aktuelle technische Entwicklungen reagieren zu können und die digitalen Schaltungen durch Updates anpassen zu können, ohne direkt die zugrundeliegende Hardware der FPGA-Chips verändern zu müssen.

    Alternative:
    Wenn man programmierbare Mikrochips hat, die Leistungsfähig genug sind,
    dann kann man auch mit reiner Software deren Fähigkeiten verwirklichen und die Software dann updaten.

    Und ich sagte ja, die Zukunft!
    In der Zukunft werden wir unglaublich leistungsfähige Embedded Mikrochips genaugenommen SoCs haben.

    FPGAs werden beispielsweise zur Echtzeit-Verarbeitung von einfachen bis komplexen Algorithmen genutzt, zur digitalen Signalverarbeitung im Rahmen von digitalen Filtern oder zur schnellen Fourier-Transformation. Aber auch Protokoll-Implementierungen wie Teile des Ethernet-MAC-Layers, die Kodierung von digitalen Videosignalen, die Verschlüsselung von Daten und Fehlerkorrekturverfahren sind Anwendungsgebiete.

    Ja, das sind noch so ein paar Nischengebiete wo es für FPGAs platz gibt.

    Wobei auch hier viele Funktionen schon heute in die SoCs wandern (z.b. Ethernet) oder beim PC diese Funktionen in den Mainboard Chipsatz wandern.

    Besonders in Bereichen, in denen Algorithmen bzw. Protokolle einer schnellen Weiterentwicklung unterliegen, ist die Verwendung rekonfigurierbarer FPGAs statt ASICs angebracht. Die Vorteile sind schnelle Marktreife, nachfolgende Fehlerbehebungen, Anpassung an neue Entwicklungen.

    Mikroprozessoren sind per Software immer veränderbar und wenn man deren zukünftige Leistungsfähigkeit berücksichtigt, dann werden die das mit Software abdecken könenn, was die FPGAs heute können.

    Für einige Klassen von Rechenproblemen sind auch FPGA-basierte Parallelcomputer sehr geeignet. Das wahrscheinlich bekannteste Beispiel sind FPGA-Rechner zum Brechen kryptographischer Verfahren, wie dem Data Encryption Standard (DES). Der aus 120 FPGAs bestehende Parallelrechner COPACOBANA ist ein solcher Parallelcomputer zum Codebrechen.

    Tja, ich sagte ja.
    Grafikkarten, Larabee und Fusion.
    Sowie CUDA und OpenCL.

    Wer braucht da noch langsame FPGAs?

    Die inzwischen erreichte Anzahl von Logikblöcken erlaubt die Integration mehrerer eingebetteter Computersysteme in einen einzigen FPGA-Baustein inklusive CPU(s), Bussystem(en), RAM, ROM, RAM-Controller, Peripherie-Controller etc. Solche kompletten Systeme werden als System on a Chip (SoC) bezeichnet.

    Und diese SoCs gibt es genau auch als normale ICs.

    [QUOTE]
    FPGAs werden auch als Entwicklungsplattform für den digitalen Teil von ASICs verwendet.
    [QUOTE]
    Ja, auch noch ne Nischenlösung die übrig bleibt.

    Wie du also siehst.
    Ich kenne die FPGAs mehr als gut genug um darüber ein Urteil zu sprechen.

    Und ich werde ganz sicher nicht für paralelle berechnungen auf 50 MHz langsame FPGAs setzen, wenn ich CUDA mit 256 Core Einheiten habe, die mit 1 GHz getaktet sind.

    Ja, die machen dann alles in Software, sind aber aufgrund der Taktrate dennoch schneller als die FPGAs.



  • @Embedded Progger

    Alternative:
    -> System on a Chip (SoC)
    http://de.wikipedia.org/wiki/System_on_Chip

    Genau, lies doch mal im Link von Dir, was da von FPGAs steht.



  • Und hier gibt es noch einen Link mit ähnlicher Diskussion und vielen vielen Meinungen (FPGA contra Mikrocontroller): http://www.mikrocontroller.net/topic/50101



  • Embedded Progger schrieb:

    Und ich sagte ja, die Zukunft!
    In der Zukunft werden wir unglaublich leistungsfähige Embedded Mikrochips genaugenommen SoCs haben.

    Während FPGAs immer langsamer werden. Sorry, du bist halt doch nur ein zweitklassiger Troll.



  • volkard schrieb:

    Erhard Henkes schrieb:

    Die Geschichte der Sprachen auf den Großrechnern/PCs (Assembler -> C-> C++ -> C#/Java/...)

    hihi. die bloße zeitlich erfindungsabfolge ist ein tolles maß.

    naja, man sollte zumindest annehmen, dass die nachfolger aus den fehlern der vergangenheit gelernt haben usw, also der fortschritt geht von links nach rechts.

    Nagila Hawa schrieb:

    Im Übrigen habe ich den Eindruck, daß C++ nicht unbedingt für seine besonders angenehme Syntax bekannt ist, wieso also eine HDL mit C++-Syntax?

    ich auch nicht. dieses systemC war ja ursprünglich nur zur simulation gedacht, aber mittlerweile solls schon systhesetools geben, die aus systemsC netzlisten machen und fpgas damit befüllen.
    🙂



  • VHDL und Verilog waren auch zu Beginn zur Simulation gedacht, bis jemand Synthesetools dafür entwickelt hat.

    Zum Thema FPGA: Die größten Nachteile sind die lange Initialisierungszeit und der hohe Stromverbrauch. Das gilt für (Anti-)Fuse natürlich nicht, wobei man dann die Flexibilität verliert. Genau da greifen Flash-basierte FPGAs an. Schaut mal bei Actel vorbei, da gibt es sehr viele Flash-FPGAs, die auf geringen Stromverbrauch abzielen und natürlich sofort nach Start einsatzfähig sind. Auch eine Familie für die Verarbeitung analoger Signale mit A/D-Wandler und Ähnlichem haben die. Preis-/Leistungsverhältnis scheint auch in Ordnung zu sein. Ich habe zwar noch keinen FPGA von denen benutzt, aber verlockend ist das schon. 🙂



  • Was kosten die?
    Diese Flash basierten FPGAs?



  • Bei dem von der Actel-Seite verlinkten Distributor kosten die zwischen $4.20 bis zu über $100.
    http://www.mouser.com/Search/Refine.aspx?N=6180973&Keyword=Actel&Ns=Pricing|0&FS=True



  • Gibt es eigentlich auch FPGAs die man wie nen USB Stick an den Rechner anschließen kann und dann den FPGA programmieren und berechnungen durchführen lassen kann?



  • ffgj schrieb:

    Gibt es eigentlich auch FPGAs die man wie nen USB Stick an den Rechner anschließen kann und dann den FPGA programmieren und berechnungen durchführen lassen kann?

    Von einer solchen Entwicklungsplatine habe ich nicht gehört.
    Aber, es gab mal in c't vom 21.07.2008 auf Seite 44 einen Artikel über einen USB-Stick mit Hardware-AES-Verschlüsselung "Verpfuschte Sicherheit" mit ein Paar Fotos von den Innereien des USB Sticks. Dort ist ein Actel FPGA zu sehen, aber keine Lötaugen oder ähnliches, was auf einen JTAG Interface schließen würden, erkennbar (vielleicht auf der Rückseite der Platine?). Wahrscheinlich wird FPGA auf diesem Stick direkt über USB konfiguriert, irgendwie... Der Titel "Verpfuschte Sicherheit" hat aber nichts darüber zu sagen, dass es am FPGA liegt, nur so mal nebenbei, sondern an der Anwendung, die am PC läuft und mit dem Stick kommuniziert. Sprich, die PC-Programmierer haben da Scheiße gebaut und nicht die fleissigen Embedded-Systeme-Programmierer.



  • Und mit google kommt man auf diesen Link mit dem besagten USB-Stick: http://www.heise.de/security/USB-Stick-mit-Hardware-AES-Verschluesselung-geknackt--/artikel/113014



  • abc.w schrieb:

    Sprich, die PC-Programmierer haben da Scheiße gebaut und nicht die fleissigen Embedded-Systeme-Programmierer.

    wie immer.
    🙂


Anmelden zum Antworten