News Übernahme abgeschlossen: Altera wird Intels Programmable Solutions Group

MichaG

Redakteur
Teammitglied
Registriert
Juli 2010
Beiträge
12.919
CPUs sind Universalisten und FPGAs sind "Spezialisten"?
wohl ehr anders rum. ;)
 
Ne, das ist schon richtig so. CPUs sind Universalprozessoren, sie bilden eine Turing-Maschine. Auf einem FPGA erzeugt man ein sehr spezifische Schaltung, die haben nur sehr eingeschränkte Funktionalität, die allerdings sehr schnell.
 
florian. schrieb:
CPUs sind Universalisten und FPGAs sind "Spezialisten"?
wohl ehr anders rum. ;)

Nun ja, nicht "wohl eher anders rum." Nur drückt sich MichaelG da etwas ungeschickt aus.

CPUs ist eine festgeschriebene Schaltung, die jedoch universell programmierbar ist. Die Schaltung kann "universell" für alles genutzt werden.

FPGAs wiederum ist keine festgeschriebene Schaltung, sie kann daher "programmiert" werden (verschaltet) um eine Aufgabe "effektiv" (besser ist hier effektiver) zu lösen. Ist die Schaltung "programmiert", so kann sie jedoch nur noch ihre Aufgaben erledigen, bis sie neu "programmiert" wird.

Die letzte Stufe ist dann die spezialisierte Hardware. Die kann nur noch ihre Aufgabe schnell erledigen, aber nichts anderes mehr.

Und auch das ist nur lapidar ausgedrückt. Noch einfacher:

CPUs - Kann alles zu jeder Zeit.
FPGAs - Kann alles, aber nur eine Sache zur gleichen Zeit.
"Hardware"-Schaltungen - Kann nur das, was es kann.
 
Könntet ihr bitte das "sind Spezialisten" streichen? Es ist überhaupt nicht klar, warum das im Vergleich zum Xeon Spezialisten sein sollen.

Etwas spitzfindig: Xeons sind auch Spezialisten ... für x86-Code ... FPGA könnten auch anderen Code ausführen, wenn sie entsprechend konfiguriert werden. Es gibt ja auch welche, die einen Power oder einen ARM-Kern beinhalten.

Bin gespannt auf die neuen Xeon-Modell und würde gerne einen bei mir mal im Labor zum rumspielen haben.
 
Zuletzt bearbeitet:
fandre schrieb:
Weil FPGAs Schaltungen sind, die durch "Programmierung" zu Spezialisten werden.

FPGAs werden gerne in Bereichen verwendet, bei denen man spezialisierte Schaltungen verwenden würde, jedoch die Kosten zur Entwicklung solcher Schaltungen entweder unwirtschaftlich sind, oder gescheut werden.
 
Teralios schrieb:

Ich glaube, du willst garnicht verstehen und reitest nur auf irgendeiner fixierten Meinung herum.

Der Artikel ist mindestens insofern ungünstig formuliert, dass der FPGA flexibel eingesetzt werden kann und somit kein Spezialist ist. Er ist ein Spezialist im Sinne seiner Anwendbarkeit: Flexibler Beschleuniger oder gluelogic. Und nochmal: Man kann einen FPGA auch so verschalten, das er universell einsetzbar bleibt.
 
Teralios schrieb:
FPGAs werden gerne in Bereichen verwendet, bei denen man spezialisierte Schaltungen verwenden würde, jedoch die Kosten zur Entwicklung solcher Schaltungen entweder unwirtschaftlich sind, oder gescheut werden.

Du könntest z.b. sagen, FPGAs werden dort eingesetzt wo sich die Verwendung von ASICS nicht lohnt. Dazu gehören Produkte, welche ständig neue Updates benötigen, z.b. im Mobilfunk oder auch bei Routern :)
 
Ich hab auch was zu beanstanden. Und zwar die Verwendung von "FPGA-Entwickler", die für gewöhnlich in Stellenanzeigen für Personen verwendet wird, die FPGAs programmieren.
 
fandre schrieb:
Da ich heute Abend durchaus mal Lust habe unhöflich zu werden - ab und an braucht der Mensch ja mal ein Ventil um sich abzureagieren - werde ich es doch einfach mal:

Warum muss man immer ziemlich persönlich in solchen Themen werden? Wer von uns beiden versucht denn hier gerade seine Meinung hier durchzudrücken? Du oder ich?

Alleine deine Wortwahl in deinem ersten Beitrag als auch jetzt zeigt doch gut, wessen Geisteskind du bist und dass für dich nur deine Meinung gilt. Deine jetzige Wortwahl sorgt bei mir für einen Brechreiz und im Endeffekt den Wunsch meinen Kopf gegen den Tisch zu schlagen wegen soviel Arroganz - zweiter Beitrag - und Ignoranz - erster und zweiter Beitrag - wegen einer Wortwahl, die die meisten jedoch verstehen und die sich mit dem Thema auskennen auch folgen können.

Mit deiner selbstverliebten arroganten (ja, dass ist "doppelt gemoppelt", soll es unterstreichen) Wortwahl könnte man ja noch leben, wenn du dann auch wirklich Lesekompetenz beweisen würdest und nicht ignorant fast - bedeutungstechnisch - etwas ähnliches schreiben würdest, was ich im Beitrag davor geschrieben habe. Bei mir ließt sich das wie folgt: "Weil FPGAs Schaltungen sind, die durch "Programmierung" zu Spezialisten werden."

Was schreibst du nun zu diesem Thema: "Er ist ein Spezialist im Sinne seiner Anwendbarkeit."

Zwei verschiedene Wortlaute, im Endeffekt sagen sie jedoch in diesem Fall das Gleiche aus. Mit Arroganz könnte ich ja in den meisten Fällen leben. Mangelnder Lesekompetenz durch Ignoranz ist für mich in diesem Fall aber einfach mal der Punkt, an dem ich unhöflich werden möchte.

Dir gefällt die Aussage des Autors nicht und versucht dieses nun durch zudrücken. Gut, geschenkt. Jedoch wissen die meisten was er damit meint und können das nach vollziehen. FPGAs werden oft Mals - eben weil sie sich universell beschalten lassen - zu Spezialisten "programmiert". (Ja man könnte hier auch Beschaltung, Verknüpfung und was weiß ich nicht alles für begriffe nehmen.)

Ich habe bei einem Doktoranden in diesem Bereich einen interessanten Ansatz gesehen, der durch FPGAs bestimmte zeitkritische Bestandteile des Linux in "Hardware" gegossen hat.

Und natürlich lasse sich mit FPGAs auch "universellere" Schaltungen realisieren - Emulation von CPU (Atari oder C64 als Beispiel) - solche Projekte sehe ich in der Regel jedoch bei Bastlern/Nostalgikern oder Studenten/Schülern. Stell dir vor, wir haben sowas ähnliches gemacht.

Die Aussage von MichaG ist also nicht falsch und für den 08/15-Leser verständlich und er kann eines der Haupteinsatzfelder der FPGAs schnell erkennen. Man könnte vielleicht sagen: FPGAs sind spezialisierbare Universalisten. Um dir an diesem Punkt etwas entgegen zu kommen. (Mal sehen ob du dazu auch in der Lage bist. Ich wäre positiv überrascht!)

Bärenmarke schrieb:
Du könntest z.b. sagen, FPGAs werden dort eingesetzt wo sich die Verwendung von ASICS nicht lohnt. Dazu gehören Produkte, welche ständig neue Updates benötigen, z.b. im Mobilfunk oder auch bei Routern :)
Könnte ich nicht nur, habe ich ja eigentlich: "jedoch die Kosten zur Entwicklung solcher Schaltungen entweder unwirtschaftlich sind". Nur eben mit anderen Worten.

Da gibt es ja noch eine reihe weitere Beispiele. Man könnte so auch ein "NAS" (Vorsichtshalber: Es ist nur ein Beispiel!) so immer wieder neue Verschlüssungstechniken beibringen, sollte die alte unsicher werden.

Ach ich liebe FPGAs. So viele Möglichkeiten zum Spielen und Schabernack treiben! ;)
 
Teralios schrieb:
Nun ja, nicht "wohl eher anders rum." Nur drückt sich MichaelG da etwas ungeschickt aus.

CPUs - Kann alles zu jeder Zeit.
FPGAs - Kann alles, aber nur eine Sache zur gleichen Zeit.
"Hardware"-Schaltungen - Kann nur das, was es kann.

Dies ist falsch. Bei FPGAs gibt es die partielle bzw. dynamische Rekonfiguration. Somit kann sich die Schaltung zur Laufzeit ändern, wenn man möchte. Außerdem kannst du mehrere Sachen (z.B. einen nachgebildeten Prozessor, während es noch z.B. noch einen Verschlüsselungscircuit gibt) zur gleichen Zeit parallel laufen lassen.
 
Teralios schrieb:
Könnte ich nicht nur, habe ich ja eigentlich: "jedoch die Kosten zur Entwicklung solcher Schaltungen entweder unwirtschaftlich sind". Nur eben mit anderen Worten.

Da gibt es ja noch eine reihe weitere Beispiele. Man könnte so auch ein "NAS" (Vorsichtshalber: Es ist nur ein Beispiel!) so immer wieder neue Verschlüssungstechniken beibringen, sollte die alte unsicher werden.

Ach ich liebe FPGAs. So viele Möglichkeiten zum Spielen und Schabernack treiben! ;)

Ich hab dich zwar schon verstanden, aber ich fand du hast dich etwas umständlich ausgedrückt. Gerade mit Beispielen wirkt das für den ein oder anderen hier (wie du bestimmt auch gemerkt hast) doch um einiges verständlicher :)
 
vielleicht sollte mal der Computerbase Gründer etwas dazu schreiben?
der hat bei Intel nämlich die zukünftigen Prozessoren mit FPGAs simuliert.

man kann es aus meiner Sicht wohl am besten so formulieren:
man kann eine "Logik" verschieden "programmieren":
a) als reines Software Programm
sehr flexibel und alles ist möglich, das Programm wird nur größer. Bei einem Fehler: fixen, neu kompilieren, fertig!
aber extrem langsam!
b) FPGA
man packt die Logik in eine programmierbare Hardware, die in gewissen Grenzen angepasst werden kann.
Statt das die CPU einen "If-Then-Else" Vergleich in mehreren Takten inkl. Instruction und Data-Fetch durchführt, wird das alles in Hardware viel schneller durchgeführt.
Wie bei der Software kann man eine Änderung durch neu "kompilieren" (ist hier etwas schwieriger, aber im Prinzip dasselbe) durchführen und muss das FPGA neu laden.
Allerdings sind die Taktraten deutlich niedriger als bei "richtiger" Hardware!
c) eine CPU ist dann der nächste Schritt
im Prinzip ist das dasselbe wie ein FPGA. Nur lässt sich das nicht einfach so "laden", sondern es muss ein IC gefertigt werden. Eine Änderung ist quasi nicht mehr möglich (es gibt da Möglichkeiten, aber sind Spezial Tricks).

Man kann also mit einem FPGA an eine CPU gekoppelt bestimmte Dinge viel schneller "durchrechnen" als es in reiner Software per CPU möglich wäre.

Für die "ganz alten Hasen" könnte man das vielleicht ganz grob damit vergleichen, wie man früher einige extrem zeitkritische Subroutinen in Assembler geschrieben und dann in sein C-Programm eingebettet hat.
 
Zuletzt bearbeitet:
Zurück
Oben