Forum: FPGA, VHDL & Co. Artikel zur historischen Entwicklung "how the fpga came to be"


von Christoph db1uq K. (christoph_kessler)


Lesenswert?

https://www.eejournal.com/article/how-the-fpga-came-to-be-part-1/

oder "Opa erzählt aus dem Krieg"

Zur Entwicklung der programmierbaren Logik, seit Anfang der 80er und die 
dazu benutzte Hard- und Software.

Aber auch ein Rückblick auf die Computertechnik im Manhattan Projekt:
"Frankel’s thermonuclear simulation program required one million punched 
Hollerith cards, shipped in a train boxcar from New Mexico to ENIAC’s 
home at the Moore School in Pennsylvania."

von Helge (Gast)


Lesenswert?

Auf der ersten Arbeitsstelle im Beruf gings mit PROMs los für 
Logikfunktionen. Brauchst du 10, machste 11 davon. häufig ging eins 
nicht richtig. Kann aber am Prommer gelegen haben, der wurde gut warm.

von Weltbester FPGA-Pongo (Gast)


Lesenswert?

Ja, ja, was war das noch schön, massenhaft PROM in den Programmer zu 
stecken, das Hebelchen zu ziehen und sie dann mit Samthandschuhen in die 
Schaltung zu buchsieren. Und dann war doch das Prog falsch und alles 
musste wiederholt werden.

Christoph db1uq K. schrieb:
> oder "Opa erzählt aus dem Krieg"
War schon ein Gemetzel damals ...

Heute plagen wir uns mit lausiger Xilinx-Software ab ,,,

von Hans-Georg L. (h-g-l)


Lesenswert?

Ich hatte damals, Mitte der siebziger, mit den Harris "fusible links" 
Dingern zu tun. Habe hier sogar noch welche. Hm7603 und HM7611 und ein 
selbstgebautes Programmiergerät dazu. Die waren recht einfach zu 
programmieren, code am Eingang anlegen und auf den Ausgang der "0" 
werden sollte 12V draufgeben, das war alles. Damit habe ich mir meine 
ersten Hex-Sieben-Segment-Dekoder gebrannt.
Die Dinger hatten nur einen Nachteil, sie haben beim umschalten 
ordentlich Spikes an den Ausgängen produziert. Musste man dann noch ein 
Latch dahinter spendieren wenn es störte.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Ich habe nur mal ein TTL-Prom 32*8 Bit 74S288 oder 82S23 programmiert. 
Eine Video-Rufzeicheneinblendung aus dem "TV-Amateur". Ein 
selbstgemachtes Programm und simple Hardware am AIM-65. Immerhin die 
Hälfte hat funktioniert.

von (prx) A. K. (prx)


Lesenswert?

TTL Proms standen im Ruf, selbstheilende Kräfte zu besitzen, wenn der 
Progger nicht perfekt funktionierte. ;-)

von Nähmaschinenprogrammer (Gast)


Lesenswert?

Christoph db1uq K. schrieb:
> "Frankel’s thermonuclear simulation program required one million punched
> Hollerith cards,

Das bezweifle ich, selbst bei einer sekunde pro Karte zum einlesen 
bräuchte man 10 d um alle durchrutschen zu lassen.

Beitrag #6902374 wurde vom Autor gelöscht.
von Bernhard K. (bkom)


Angehängte Dateien:

Lesenswert?

Nähmaschinenprogrammer schrieb:
> Das bezweifle ich, selbst bei einer sekunde pro Karte zum einlesen
> bräuchte man 10 d um alle durchrutschen zu lassen.

In Los Alamos rechneten die Monatelang mit Lochkarten:
https://www.tandfonline.com/doi/full/10.1080/00295450.2021.1940060

von Fpgakuechle K. (Gast)


Lesenswert?

Bernhard K. schrieb:
>> Das bezweifle ich, selbst bei einer sekunde pro Karte zum einlesen
>> bräuchte man 10 d um alle durchrutschen zu lassen.
>
> In Los Alamos rechneten die Monatelang mit Lochkarten:

Sehr gut beschreibender Text über den konkreten Ablauf, ich kannte 
bisher nur die oberflächliche Beschreibung von Richard Feynman aus 
seiner Autofiktion.

Da wird auch deutlich, das sich auf den Lochkarten nicht das Programm 
(executable) selbst befand sondern der Datensatz, der dann quasi durch 
die Tabelliermaschinen 'durchgeleiert' wurde. Das war halt eine simple 
Rechenmaschine, die nicht mehr als Multiply-and-Accumulate konnte als 
ein (Speicherprogrammierbarer) Computer mit Lochbändern/Karte. Die 
wurden erst nach der Atombombe erfunden. Und schon für die MAC-Operation 
war ein kleiner Hühnerstall an Bürokräften nötig ;-)

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Teil 2 ist da
https://www.eejournal.com/article/how-the-fpga-came-to-be-part-2

Da steht, der Signetics 82S100 steckte auch im C64. Da fallen sie jetzt 
nach fast 40 Jahren gelegentlich aus, sodaß Ersatzschaltungen entwickelt 
wurden.

Im ersten Teil fand ich noch interessant, dass der ENIAC eher eine 
programmierbare Logik war als eine klassische Computerarchitektur 
Harvard oder Von Neumann.
https://de.wikipedia.org/wiki/Harvard-Architektur
https://de.wikipedia.org/wiki/Von-Neumann-Architektur

von Nähmaschinenprogrammer (Gast)


Lesenswert?

Christoph db1uq K. schrieb:
> Im ersten Teil fand ich noch interessant, dass der ENIAC eher eine
> programmierbare Logik war als eine klassische Computerarchitektur
> Harvard oder Von Neumann.

Fur nen ersten Cpomputer, für eine heute als klassisch bezeichnete 
Computer-Architektur sollte man nicht viel weiter als 1959 (PDP-1) 
zurückgehen. Alles davor waren eher Analogrechner oder reine 
Rechenwerke. Die Idee von einer programmierbaren CPU die aus einem 
rechenwerk einen Computer macht, wurde erst mit dem Transistor 
realisierbar. Eniac und Co entstanden jahrzehnte früher und waren nur 
über eine eingespielte bedienermannschaft zu komplexen Berechnungen 
fähig.

Aus heutiger Sicht brauchbare Terminals kamen auch erst in den 
siebzigern auf (VT-52).

> Da steht, der Signetics 82S100 steckte auch im C64

Damit ist wohl der berüchtigte Address-decoder PLA gemeint:
https://www.c64-wiki.de/wiki/PLA_(C64-Chip)

von (prx) A. K. (prx)


Lesenswert?

Nähmaschinenprogrammer schrieb:
> Die Idee von einer programmierbaren CPU die aus einem
> rechenwerk einen Computer macht, wurde erst mit dem Transistor
> realisierbar. Alles davor waren eher Analogrechner oder reine
> Rechenwerke.

Keineswegs. Es gab sehr bald Rechner auf Röhrenbasis, die sich im 
Prinzip nicht von den späteren Transistorrechnern unterschieden. 
Beispiele sind die IBM 704 und die in für damalige Verhältnisse in 
grossen Stückzahlen hergestellte und günstige IBM 650.

: Bearbeitet durch User
von Christoph db1uq K. (christoph_kessler)


Lesenswert?

https://de.wikipedia.org/wiki/Zuse_Z3 1941
https://de.wikipedia.org/wiki/Zuse_Z4 1945
ich dachte, der Zuse-Computer hätte schon alle Teile der klassischen 
Architektur enthalten.

"In ihren frühen Ausbaustufen hatte die Z4 zunächst keine bedingte 
Sprunganweisung und war dadurch kein Turing-mächtiger universeller 
Computer."
Bedingte Sprünge sollte er eigentlich können, das macht heute jeder 
Mikrocontroller.

von (prx) A. K. (prx)


Lesenswert?

Selbst mit Sprungbefehlen ist ein Programmausführung vom Lochstreifen 
(Filmrolle) nicht realistisch äquivalent zu modernen General Purpose 
Computern. Mikrocontroller ohne Möglichkeit, ein Programm selbst zu 
erzeugen, übrigens auch nicht. Womit auch AVRs aussen vor sind, wenn man 
die Selbstprogrammierung vom Flash nicht mitrechnet.

Für Selbstprogrammierung müsste man dann einen Bootstrap-Interpreter 
drauf schnallen, der aus Daten Befehle macht. Dann ist die Universalität 
gegeben. Aber das sind, wie auch die Turing-Mächtigkeit des Zuses, 
genauso theoretische Ansätze wie die Turing-Maschine selbst.

: Bearbeitet durch User
von Berufsethos (Gast)


Lesenswert?

(prx) A. K. schrieb:
> Nähmaschinenprogrammer schrieb:
>> Die Idee von einer programmierbaren CPU die aus einem
>> rechenwerk einen Computer macht, wurde erst mit dem Transistor
>> realisierbar. Alles davor waren eher Analogrechner oder reine
>> Rechenwerke.
>
> Keineswegs. Es gab sehr bald Rechner auf Röhrenbasis, die sich im
> Prinzip nicht von den späteren Transistorrechnern unterschieden.
> Beispiele sind die IBM 704

Interessanter Hinweis, aber, grins, Betriebsdauer geringer als 
Compile-zeit für kleine programme ... das kann sich nicht wirklich mit 
heute oder auch "vor 40 jahren auf dem C64" nicht messen

"Da die IBM 704 Röhren verwendete, war ihre Zuverlässigkeit nach 
heutigen Maßstäben sehr gering. Sie fiel im Durchschnitt nach etwa acht 
Stunden aus.[4][5] Das stellte eine Begrenzung der Größe der ersten 
Fortran-Programme dar, da große Programme häufig vor dem Ausfall der 
Maschine nicht fertig übersetzt werden konnten.[5]" (aus Wikipedia)

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

>Aus heutiger Sicht brauchbare Terminals
https://en.wikipedia.org/wiki/Tektronix_4010
im Zusammenhang mit den alten "vi" Texteditor von 1976 war ich neulich 
darauf gestoßen.

Die Terminals hier von 1968 hatten noch keinen Bildspeicher, sondern 
einen analogen Speicherbildschirm. Die Zeichen wurden als Vektorgrafik 
einzeln gemalt, man konnte nur den ganzen Bildschirm löschen und neu 
beschreiben. Damit war ein Texteditor wie man ihn heute kennt noch nicht 
möglich.

von (prx) A. K. (prx)


Lesenswert?

Nähmaschinenprogrammer schrieb:
> Aus heutiger Sicht brauchbare Terminals kamen auch erst in den
> siebzigern auf (VT-52).

Knapp daneben. 1969, Datapoint 3300.

von (prx) A. K. (prx)


Lesenswert?

Christoph db1uq K. schrieb:
> Die Terminals hier von 1968 hatten noch keinen Bildspeicher,

Mit so einem Tektronix hatte ich auch einmal gearbeitet. Aber es gab 
auch Vektorgrafik mit live Zeichengenerator statt Bildspeicherröhre, und 
das viele Jahre vor den Text-Terminals. Nur waren das "dumme" 
Bildschirme an einem eigens dafür eingerichteten Vorrechner, und 
schweineteuer - z.B. 1964 IBM 2250 mit einem Controller und 4 
Bildschirmen. Spielte bei frühem CAD eine wichtige Rolle. 1972 dann 
Telefunken SIG 100 mit der ersten Maus (Rollkugel).

: Bearbeitet durch User
von Duke Scarring (Gast)


Lesenswert?

(prx) A. K. schrieb:
> Mit so einem Tektronix hatte ich auch einmal gearbeitet. Aber es gab
> auch Vektorgrafik mit live Zeichengenerator statt Bildspeicherröhre, und
> das viele Jahre vor den Text-Terminals.
Waren das die Dinger, die umso stärker flackerten, je mehr Linien 
dargestellt wurden?

von (prx) A. K. (prx)


Lesenswert?

Duke Scarring schrieb:
> Waren das die Dinger, die umso stärker flackerten, je mehr Linien
> dargestellt wurden?

Live-Vektorschirme werden naturgemäss bei sehr komplexen Bildern 
langsamer. Aber die habe ich zwar gesehen, jedoch nicht an ihnen 
gearbeitet.

: Bearbeitet durch User
von Markus F. (mfro)


Lesenswert?

(prx) A. K. schrieb:
> Spielte bei frühem CAD eine wichtige Rolle.

Noch in den 80ern durfte der Werksstudent erst an die 200KDM 
SGI-Workstation, wenn er sich am TEK 4014 erste Sporen verdient hatte.
Das verwendete CAD-System malte Kringel an gelöschte Geometrie (weil es 
die ja nicht löschen konnte). Man fing morgens an und um Elf hatte man 
den Bildschirm voller Kringel. Mit etwas Glück war der Repaint nach dem 
Mittagessen fertig und man sah, was man den ganzen Vormittag gemacht 
hatte. Mit etwas weniger Glück fing man dann wieder von vorne an.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Meine Erfahrung mit einem Vektorgrafikterminal vom Anfang der 70er hatte 
ich schon hier beschrieben:
Beitrag "Re: [Suche] Lochstreifenschreiber"
aber das hatte schon einen digitalen Bildspeicher, nur die einzelnen 
Zeichen waren Vektorgrafik.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

https://www.eejournal.com/article/how-the-fpga-came-to-be-part-3/
dieses war der zweite Streich, doch der dritte folgt sogleich.

Jetzt geht es um die Anfänge bei MMI

von Christoph db1uq K. (christoph_kessler)


Lesenswert?


von Weltbester FPGA-Pongo (Gast)


Lesenswert?

Gar nicht so uninteressant. Sollten sich mal die bachelors angucken, die 
in ihrer "Thesis" in Sachen Digitaltechnik immer so eröffnen wie "in den 
ltzten Jahren haben FPGAs an Bedeutung gewonnen", so als seien sie 
letzten Mittwoch erfunden worden.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?


von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Eigentlich ein neues Thema, aber von selben Autor. Er hat 45 Jahre 
Erfahrung mit Drucker- und Netzwerkinstallationen, aber wir sind wohl zu 
alt für heutige Technik:

https://www.eejournal.com/article/the-story-of-the-terrible-horrible-no-good-very-bad-printer/
https://www.eejournal.com/article/stay-curious-stay-humble-stay-connected/

Er wollte nur einen WiFi-fähigen Drucker für seine Tochter installieren, 
aber das artete in mehrtägige Arbeit aus.
Ich denke, wir haben hier alle ein deja-vu.

von Programmierer (Gast)


Lesenswert?

(prx) A. K. schrieb:
> Selbst mit Sprungbefehlen ist ein Programmausführung vom Lochstreifen
> (Filmrolle) nicht realistisch äquivalent zu modernen General Purpose
> Computern. Mikrocontroller ohne Möglichkeit, ein Programm selbst zu
> erzeugen, übrigens auch nicht.

Was heißt denn "erzeugen"? Einen Compiler ausführen? Das scheint mir 
eine ziemlich arbiträre Computer-Definition zu sein. AVRs und sonstige 
Mikrocontroller sind genau so Turing-Vollständig, wie ein Computer es 
eben sein kann*. Daten direkt als Programm ausführen ist auf modernen 
PCs auch nur über den Umweg einer Datei (NX-Bit usw.) oder Interpreter 
möglich; genau so könnte man die Flash-Selbstprogrammierung beim 
Mikrocontroller auch sehen. Der prinzipielle Unterschied zu z.B. einem 
Cortex-M welcher Code aus dem RAM ausführen kann ist da jetzt nicht so 
groß. AVR's o.ä. können definitiv mehr als LOOP-Programme ausführen 
(d.h. primitiv-rekursive-Funktionen berechnen), und WHILE-Schleifen mit 
unbegrenzter Durchlaufzahl sind möglich. Selbstmodifizierender Code ist 
sowieso ziemlich "out". So sind solche Controller durchaus als 
vollwertige Computer zu sehen.

*: Genau genommen ist KEIN real existierender Computer 
Turing-Vollständig, weil sie alle nur endlich viel RAM besitzen und kein 
unendliches Band. Rein technisch sind alle Computer nur endliche 
Automaten mit sehr, sehr großem Zustandsraum. Weil man diese Computer 
aber nahezu so programmieren kann, als wäre der RAM unendlich, und es 
für jedes Turing-Problem eine RAM-Menge gibt mit der der Computer es 
berechnen kann, nennt man die realen Computer und ihre 
Programmiersprachen eben Turing-Vollständig.

von Fpgakuechle K. (Gast)


Lesenswert?

Programmierer schrieb:

>  Selbstmodifizierender Code ist
> sowieso ziemlich "out".

Kommt darauf an mit welchen Worten man 'durch die Logik selbst 
angepasste Algorithmus (Code)' beschreibt. Ein lernfähiges Neuronales 
Netz ist auch 'selbstmodifizierender Code' - und Neuronale netze aka AI 
ist so garnicht "out".

von Programmierer (Gast)


Lesenswert?

Fpgakuechle K. schrieb:
> Ein lernfähiges Neuronales
> Netz ist auch 'selbstmodifizierender Code' - und Neuronale netze aka AI
> ist so garnicht "out".

Ja richtig, aber hier wird m.W. kein Maschinencode generiert. Somit wäre 
das prinzipiell direkt auf einem AVR o.ä. möglich - nur eben seeehr 
langsam.

von Christoph db1uq K. (christoph_kessler)


Angehängte Dateien:

Lesenswert?

Noch ein Artikel von Steven Leibson
https://www.eejournal.com/article/happy-birthday-to-gordon-moore/?vgo_ee=pJlQN%2BOM7SSiQtOIyfnEWWk20kkAZay2C%2FJNq%2BJ67FU%3D

Gordon Moore ist inzwischen 93

"way back in 1967! …The Micromatrix 4500 Gate Array – it’s really the 
world’s first commercially successful ASIC – incorporated a whopping 32 
uncommitted 4-input AND/NAND gates"

https://american.cs.ucdavis.edu/academic/ecs154b/154bpdf/gordon_moore_1965_article.pdf
seine Veröffentlichung, seither als Moores Law bekannt, von 1965.

Darin auch dieses Bild, "Handy"-Verkauf 1965.

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.