82S100
Inhaltsverzeichnis
Das PLA 82S100
Das PLA 82S100 (Programmable Logic Array) ist ein integrierter Schaltkreis (IC), der viele Logik TTL ersetzen kann. Der Einsatz einer PLA hat viele Vorteile:
- Reduktion der Anzahl an IC in einer Schaltung
- Reduktion der notwendigen Fläche auf der Platine
- das Platinen Layout ist einfacher
- Reduktion des Stromverbrauch
- deutlich höhere Flexibilität bei Design Änderungen
Das alles führt zu deutlich verringerte Produktionskosten. Die Firma Commodore hat den 82S100 deshalb in praktisch allen neueren Designs ihrer Produkte eingesetzt:
- im C64
- im Diskettenlaufwerk 1541
- im Business Computer 8032
- im Business Computer 8296 (UE5 und UE6)
- alle neueren Computer Systeme verwenden eine oder mehrere PLA
Leider haben diese PLA nicht nur Vorteile. Aus Erfahrung weiß man, dass die PLA in einem Commodore Computer sehr oft defekt sind. Speziell die beiden Systeme 8032 und 8296 haben fast immer defekte PLA, wenn sie nicht mehr richtig starten.
PLA, GAL, CPLD und FPGA
Ein PLA ist quasi der 'Urvater' der programmierbaren Logik Bausteine. Die PLA 82S100 hat 16 Eingänge und 8 Ausgänge. Die Verknüpfung zwischen Ein- und Ausgänge ist flexibel (programmierbar). Die Logik in dem PLA ist wie eine Software, aber es wird nicht sequentiell ausgeführt, sondern zeitgleich. Man muss sich diese Logik wie ein Schaltbild vorstellen. Der Entwurf dieser Logik erfolgt in einer eigenen Sprache (Syntax). Wie bei jeder Software ist es zuerst ein Textfile, das von einem Compiler übersetzt wird.
Ein PLA kann einmal programmiert werden, und folgt fortan dieser Logik. Die Pins an dem Baustein haben eine fix zugeordnete Verwendung (Eingang, Ausgang). Der PLA an sich hat einen relativ begrenzten Funktionsumfang. Bausteine wie der 82S100 haben TTL Ausgänge und können logische Verknüpfungen ausführen. Beim 82S101 sind alle Ausgänge in Open Collector Bauweise. Es gibt weitere PLA wie den 82S105 die Flip Flop Elemente zur Verfügung stellen.
Die nächste Generation an programmierbaren Logik Bausteine waren die GAL. Im Unterschied zu den PLA können GAL gelöscht und neu programmiert werden (ähnlich wie ein EPROM). GAL Bausteine ersetzen meist eine Vielzahl unterschiedlicher PLA Bausteine. Es können Gatter Schaltungen und Flip Flop definiert werden. Einige Pins der GAL Bausteine haben fixe Verwendung (Ein- oder Ausgang), andere können als ein- oder Ausgang verwendet werden. Die Funktion kann sogar im Betrieb geändert werden, abhängig von einem Ergebnis einer internen Logik. Ausgänge können auch hochohmig geschaltet werden, das ermöglicht den Betrieb an einem Computer Bus.
Nach den GAL kamen die CPLD (Complex Programmable Logic Device) Bausteine. Ein CPLD erhöht die Flexibilität noch weiter: alle Pins können wahlfrei verwendet werden (Ein- oder Ausgang). Aber es gibt auch Pins mit speziellenr Funktion (Trigger, OE, Clk ...). Die Anzahl an interne Gatter wurde drastisch erhöht, was die mögliche Komplexität deutlich erhöht. Bei CPLD spricht man von Makrozellen, die Anzahl an Makrozellen ist ein Maß dafür, wie komplex die Logik sein kann, die man in den Baustein programmieren möchte. Neben einer großen Anzahl programmierbarer Gatter bieten CPLD auch viele verschiedene Arten von Flip Flops und anderer komplexer Elemente. Über sogenannte 'Fuses' kann man Eigenschaften des CPLD steuern, wie zB. das Reset Verhalten und die 'Slew Rate' der Augänge.
Mit einem CPLD kann man bereits sehr komplexe Schaltungen abbilden. Zum Beispiel kann man eine sogenannte 'State Machine' entwickeln, was einfache Ablaufsteuerungen ermöglicht. Es gibt interessante CPLD Projekt, zum Beispiel hat jemand aus zwei CPLD eine sehr einfache CPU erstellt. Diese CPU ist funktionsfähig und kann einfache Programme abarbeiten.
Der Nachfolger der CPLD ist ein FPGA (Field Programmable Gate Array). Es gibt sehr einfache FPGA bis hin zu richtigen Logik Monster. Ein FPGA benötigt nur noch sehr wenig an Außenbeschaltung. Man kann mit einem FPGA ganze Computer System abbilden. Abgesehen von der unvorstellbar großen Komplexität arbeitet ein modernes FPGA mit einer extrem hohen Geschwindigkeit. Allerdings tendieren FPGA Bausteine zu einer immer kleineren Versorgungsspannung. Es gibt kaum FPGA die mit höheren Spannungen als 3,3V arbeiten können. Das erschwert den Einsatz für Retro Systeme, die meist mit 5V laufen. Aber mit Pegelkonverter kann man auch FPFA an einem Retro Computer System einsetzen, was zu eindrucksvollen Produkten geführt hat wie zum Beispiel das Turbo_Chameleon_64.
PLA im Commodore 8296
Im CBM 8296 gibt es zwei PLA Bausteine: UE5 und UE6
Der 8296 und der 8296D waren die letzten der CBM Business Maschinen, bevor die CBM-II Computer auf den Markt kamen. Diese Geräte haben 128K SRAM und ein raffiniertes Banking, damit die 64K Grenze der 6502 CPU umgangen werden kann. Die beiden PLA Bausteine sind zuständig für die komplexe Adress-Dekodierung und damit für die Ansteuerung alles Komponenten am CPU Bus (RAM, ROM, IO, Bildschirmspeicher, erweiterter Speicher, Banking).
Der CBM 8032 ist wohl die am meisten verbreitete Business Computer von Commodore. Der 8032 hat nur 32K RAM (kein erweiterter Speicher) benötigt nur eine PLA. Für den 8032 gibt es eine 64K Speichererweiterung. Der CBM 8096 ist ein 8032 mit dieser 64K Speichererweiterung und hat daher 96K RAM.
Der CBM 8296 hat von Haus aus 128K RAM (zwei RAM Bänke zu 64K). Die zweite PLA (UE5) ist für den Betrieb des Computers nicht unbedingt notwendig. Wenn man den PLA UE5 entfernt und 5 Brücken setzt (JR1 bis JR5), dann läuft der 8296 als ganz normaler 8032.
PLA im Commodore 64
Im CBM 8296 gibt es zwei PLA Bausteine: UE5 und UE6
Der 8296 und der 8296D waren die letzten der CBM Business Maschinen, bevor die CBM-II Computer auf den Markt kamen. Diese Geräte haben 128K SRAM und ein raffiniertes Banking, damit die 64K Grenze der 6502 CPU umgangen werden kann. Die beiden PLA Bausteine sind zuständig für die komplexe Adress-Dekodierung und damit für die Ansteuerung alles Komponenten am CPU Bus (RAM, ROM, IO, Bildschirmspeicher, erweiterter Speicher, Banking).
Der CBM 8032 ist wohl die am meisten verbreitete Business Computer von Commodore. Der 8032 hat nur 32K RAM (kein erweiterter Speicher) benötigt nur eine PLA. Für den 8032 gibt es eine 64K Speichererweiterung. Der CBM 8096 ist ein 8032 mit dieser 64K Speichererweiterung und hat daher 96K RAM.
Der CBM 8296 hat von Haus aus 128K RAM (zwei RAM Bänke zu 64K). Die zweite PLA (UE5) ist für den Betrieb des Computers nicht unbedingt notwendig. Wenn man den PLA UE5 entfernt und 5 Brücken setzt (JR1 bis JR5), dann läuft der 8296 als ganz normaler 8032.
PLA Ersatz Schaltungen
News
- 11.06.2021 -- Prototyp der UC1
- 14.07.2021 -- Release der UC1
- 20.09.2021 -- UC2 voll funktionsfähig
- 23.09.2021 -- UC1.1 Prototyp
- 01.10.2021 -- Release UC-Builder v1.07
- 08.10.2021 -- Release der UC2
- 29.10.2021 -- Release UC-Builder v1.10
Downloads
- UC-Builder v1.06 mit Beispiel Images und den Menü Sourcen
- UC-Builder v1.10
- MultiMax Image für die UC-1.5 und UC-2
- 'Prince of Persia' Image für UC2 (dazu benötigt wird das EF Jedec)