Studieren der Platine eines Taschenrechners aus den 70er Jahren. Was dachten sie?

Ich habe die Platine eines ELSI 8002-Rechners von 1974 untersucht. Ich denke darüber nach, das Gehäuse für ein Projekt umzufunktionieren, obwohl ich es jetzt, da ich es repariert habe (durch erneutes Löten der Batterieanschlüsse), nicht weiß, ob ich es kann ertragen kann, es auseinander zu ziehen. ( schnief ) Vielleicht kaufe ich mir für mein Projekt ein tiefer kaputtes...

Geben Sie hier die Bildbeschreibung ein

Sentimentalität beiseite, ich bin ziemlich verwirrt über das Layout der Tastatur. Die Tastatur sah anfangs aus wie eine typische Matrixtastatur, aber nachdem ich die Spuren sorgfältig studiert habe, habe ich festgestellt, dass sie keine Zeilen oder Spalten verwendet.

Geben Sie hier die Bildbeschreibung ein

Zuerst dachte ich, das könnte daran liegen, dass sie versuchten, Pins auf dem Mikrocontroller zu speichern. Ein Matrix-Layout mit n Zeilen und m Spalten erfordert n+m Pins. Aber eigentlich brauchen wir nur ein einzigartiges Paar Pins für jede Taste. Wir brauchen also wirklich nur x Pins, wobei n*m <= x Wählen Sie 2.

Geben Sie hier die Bildbeschreibung ein

Eine 4x5-Matrix hat 20 Tasten und 20 <= 7 Wählen Sie 2 = 21. (Eigentlich werden nur 18 Tasten benötigt, da die Reset-Taste "C" auf besondere Weise zugeordnet ist und keine Pins mit den anderen Tasten teilt, und es eine unbenutzte gibt Pad, obwohl es vielleicht in anderen Modellen verwendet wird?)

Dies ist mein Versuch, jeden Schlüssel mit zwei Stiften abzugleichen.  Zum Beispiel ist die Zahl 9 mit den Pins A und D verbunden.

Ich dachte, das war, was los war, da Zeilen und Spalten keinen gemeinsamen Pin haben ... aber das Layout verwendet 9 Pins ... ? Mit 9 Pins, warum nicht einfach eine Matrix daraus machen?

Ich weiß nicht, was los ist, aber es ist immer noch ein schönes Gerät ...

Die Reduzierung der Pinanzahl ist nicht das einzige Kriterium im Elektronikdesign. Ich bezweifle, dass die Ingenieure, die diese Schaltung entworfen haben, hier sein werden, um Ihnen zu antworten.
Gut gefragt, aber wir müssten hellseherisch sein, um die Argumentation zu kennen, die sie hatten. Oder benutze Nekromantie. Abgesehen davon hätte das Anordnen als Matrix vielleicht eine weitere Ebene benötigt.
Auf diesem Teil der Platine ist nichts anderes los - eine Matrix in zwei Schichten scheint die einfache Lösung zu sein. Vielleicht ist es nur irgendein zufälliger Grund. Allerdings hatte ich gehofft, dass es hier eine Logik gibt, die mir fehlte. Vielleicht macht es die Spuren kürzer? Das erinnert mich allmählich an das Problem des Handlungsreisenden.
Ich gehe davon aus, dass zumindest ein Teil davon darin besteht, dass eine Matrix mehr Durchkontaktierungen benötigt. Die Kosten für Via spielen heutzutage kaum noch eine Rolle, aber sie waren nicht immer so billig.
Sind diese Spuren vergoldet?
Ich weiß nicht. Gibt es eine schnelle Möglichkeit zu überprüfen, ob es sich um Gold handelt, das dem Board nicht schadet? Ich würde es auf Keramik zerkratzen, aber es ist nicht praktisch.
Ah, handgemachtes Layout mit Klebeband. Keine ausgefallene PCB-Design-Software damals und ja, es wird vergoldet.
Es geht nicht um die Anzahl der Pins, sondern mehr um die Decodierung der Schlüssel in Software. ZB müssen Sie nur die Pins E und I überwachen - wenn einer der beiden ein Signal erhält, wurde eine Bedientaste gedrückt. Sonst, wenn ABC ein Signal bekommt, wurde eine Nummer gedrückt. Denken Sie daran, dass dies nach heutigen Maßstäben eine schrecklich langsame und winzige CPU ist. Das Speichern eines einzelnen "if" oder Lesens einer Eingabetaste ist ein Problem. Ich würde dies zu einer Antwort machen, kann dies aber nicht, da die Frage in der Warteschleife liegt.
Die Tastaturabtastung wird typischerweise mit dem Display-Multiplexing geteilt – was das optimale Schema beeinflusst.
asfdx hat die richtige Idee, denke ich. Was Sie wirklich tun müssen, ist, sich ein Datenblatt für den Rechnerchip zu besorgen und herauszufinden, was er erwartet. Frühe Taschenrechner waren in Bezug auf E/A und interne Softwareorganisation ziemlich spezialisiert. Das waren keine GP-Mikrocomputer, die für die Verwendung mit Taschenrechnern umfunktioniert wurden, und wenn der Chipdesigner nicht für den Matrixbetrieb entworfen hat, nun ja ....
Zur von futurebird zusammengestellten Tabelle: Wenn Sie die Einträge der Spalten C und E auf die andere Seite der Diagonale legen, sehen Sie, was los ist: Alle ungeraden Zahlen auf A, alle geraden Zahlen auf C. Alle einfachen Operationen auf E und die spezielleren auf I. Kann es nicht in den Kommentaren zeigen, aber ordnen Sie die Spalten als HFGBD und die Zeilen als ACEI neu und Sie erhalten eine sehr ordentliche 4x5-Matrix, die viel einfacher zu decodieren ist als eine Matrix, die nach Position des Schlüssels geordnet ist .
asdfex: Vielen Dank! das macht total sinn. Sie sollten das wirklich als Antwort aufschreiben.
@asdfex Die Frage ist nicht mehr alt, schreiben Sie gerne eine ausführliche Antwort.

Antworten (1)

Es kommt nicht nur auf die Anzahl der Pins an, die zum Lesen einer Tastaturmatrix verwendet werden. Eine zu berücksichtigende Sache ist die Anzahl der Leiterbahnkreuzungen, dh die Anzahl der benötigten Vias. Für jeden muss ein Loch gebohrt werden, und dieser Prozess war in den siebziger Jahren nicht so automatisch wie heute. Aber das ist hier nicht der Hauptpunkt:

Eine 4x5-Matrix, die dem geometrischen Layout von Tasten folgt, ist im Prozessor komplex zu decodieren. Während dies bei heutigen CPUs trivial ist, hatten und haben Taschenrechner immer noch sehr einfache Prozessorarchitekturen. Damals vor allem wegen des Preises. Denken Sie daran, der Computerprozessor von 1971 war der Intel 4004, 4 Bit und 100.000 Befehle pro Sekunde, und es kann davon ausgegangen werden, dass der Chip dieses Rechners (ich konnte kein Datenblatt finden) weniger leistungsstark ist.

Die Tabelle, die @futurebird bei der Inspektion der Schaltung erstellt hat, sieht aus, als gäbe es ein totales Durcheinander von Verbindungen. Tatsächlich ist dies nicht wahr, wie wir sehen, wenn wir einfach Spalten und Zeilen neu anordnen:

   H F G B D
A  1 3 5 7 9
C  2 4 6 8 0
E  .     % C
I  * / + - =

Hier ist die Intention der Entwickler deutlich zu erkennen: Alle geraden Zahlen teilen sich Pin C, alle ungeraden teilen sich Pin A. Das macht die Dekodierung eines Tastendrucks zu einer Zahl im Gedächtnis so einfach wie möglich: Auf dem Silizium muss es sein nur ein "5 Eingänge zu 3-Bit-Encoder", um die Bits 3..1 der resultierenden Ziffer in binärer Darstellung zu erhalten, während das niedrigste Bit gesetzt oder gelöscht wird, je nachdem, ob Leitung A oder C aktiv war. Auf die gleiche Weise können alle Operationen erkannt werden, indem die Leitung I und die spezielleren am Eingang E überprüft werden.

Vergleichen Sie das mit der Decodierung einer Ziffer aus der grundlegenden 4x5-Matrix: Hier müssen 7 Eingaben überprüft werden, um 4 Bits der resultierenden Zahl abzurufen. Es ist offensichtlich, dass diese Nachschlagetabelle mehr Platz auf dem Silikongewebe verbraucht.

Durch die Verwendung dieser Matrixverbindungen werden die teuren Merkmale auf Silizium auf ein Minimum reduziert, während ein wenig Überlegung in die sorgfältige Planung der Struktur der Matrix und ein wenig Aufwand in die Gestaltung einer Leiterplatte gesteckt wird, die zu den beabsichtigten Verbindungen passt, was nicht viel dazu beiträgt Gesamtkosten des Gerätes.

Wenn ich mich richtig erinnere, verwendeten alte Taschenrechner eine bitserielle Architektur, die viel einfacher, langsamer, stromsparender und weniger Silizium ist als etwas Ausgefallenes wie ein 4004. Bei bitseriell erfordern mathematische Operationen einen Taktzyklus pro Datenbit. Ein Beispiel für eine bitserielle Operation finden Sie unter en.wikipedia.org/wiki/Serial_binary_adder .
Ich wollte nur sagen, dass dies eine erstaunliche Antwort war. Danke dir!