Intel MCS-48

     Intel 8048   >>

Intel P8048H
Produktion: 1976 bis 1990er
Produzenten:
Prozessortakt: 6 MHz
Befehlssatz: 8 Bit
Sockel: 40-pin DIP

MCS-48 ist die Bezeichnung einer 1976 von Intel vorgestellten Familie von 8-Bit-Mikrocontrollern. Bei einem Mikrocontroller sind im Optimalfall alle Teile eines Computersystems (Prozessor, Programmspeicher, Datenspeicher und Ein-/Ausgabeeinheiten) in einem einzigen Baustein zusammengefasst. Die MCS-48-Baureihe zählt zu den ersten derartigen Systemen. Zu Beginn hatte sie nur drei Mitglieder mit den Bezeichnungen 8048, 8035 und 8748. Beim 8035 befindet sich das Anwendungsprogramm in einem externen Baustein, wohingegen sich beim 8048 und 8748 das Anwendungsprogramm im Baustein selbst befindet – entweder in einem maskenprogrammierten ROM (8048) oder in einem EPROM (8748).[1]

Bereits 1980 wurde mit Einführung des Intel 8051 eine leistungsfähigere Nachfolgefamilie vorgestellt, die unter dem Namen MCS-51 bekannt wurde. Der Erfolg der 8048-Serie in vielen Anwendungsbereichen sorgte aber dafür, dass er auch später noch massiv verwendet wurde und sogar bis heute Verwendung findet.

Geschichte und Verwendung

Im Jahr 1976 erschienen der 8048, 8035 und 8748. Im Jahr 1978 folgten die „Low-cost“-Varianten 8020, 8021 und 8022, die weniger Anschlüsse hatten und deshalb nur mit internem Programmspeicher betrieben werden konnten.[1][2] Gleichfalls 1978 wurden die entsprechenden Varianten 8039 und 8049, im Jahr 1981 der 8749 mit jeweils doppeltem ROM und RAM vorgestellt.[1]

Im Jahr 1978 wurde auch die ergänzende Bausteinreihe UPI-41 (Universal Peripheral Interface) vorgestellt. Hier ist der 8-Bit-Datenbus direkt herausgeführt, so dass der Prozessor als Slave-Prozessor verwendet werden kann. Im Vergleich zum 8048 mit 96 Befehlen besitzt der 8041 nur 90 Befehle. Zu Beginn bestand die Reihe nur aus den beiden Mitgliedern mit den Bezeichnungen 8041 und 8741, der bekannteste Einsatz dürfte der des später erschienenen 8042 als Tastaturcontroller im 1984 vorgestellten IBM PC AT sein.[3]

Intel D8749
UdSSR-Klon eines Intel 8748

Die Familie wurde zunächst in NMOS-Technologie, ab Beginn der 1980er-Jahre dann auch in der heute üblichen CMOS-Technologie hergestellt.

Philips Semiconductors (heute NXP) hatte eine Lizenz, diese Familie herzustellen und hat auf Basis der Architektur die eigene MAB8400-Familie entwickelt, die u. a. das erste I²C-Interface enthielt und in den ersten Philips CD-Spielern (z. B. CD-100) eingesetzt wurde.[4]

Auch für die in den 1980er-Jahren verbreiteten Genius-Computer-Mäuse wurde ein 8048 verwendet, ebenso wie er auch im Sinclair QL als Co-Prozessor Verwendung fand. Unsichtbar sind MCS-48-Bausteine auch heute noch in einer Unzahl von Geräten von der Nachttischuhr, über den Videorekorder bis hin zur Waschmaschine zu finden.

Architektur

Die MCS-48-Baureihe ist grundsätzlich entsprechend der Harvard-Architektur aufgebaut, wobei zum Programm- und zum Datenadressraum noch ein eigener Ein-/Ausgabeadressraum hinzukommt. Die Länge der Programmadresse beträgt 12 Bit, womit 4 KByte adressiert werden können. Diese sind als zwei unabhängige 2-KByte-Programmbänke organisiert. Da Bank 2 immer extern liegt (Ausnahme 8050), kann durch Benutzung von Ausgabeleitungen zusätzlicher Programmspeicher adressiert werden.

Der interne Datenspeicher (64–256 Bytes) kann extern durch weitere 256 Bytes erweitert werden. Die Speicherzellen sind statisch ausgeführt, sie können über eine Standby-Versorgungsleitung auch im abgeschalteten Zustand mit Strom versorgt werden und so die Daten erhalten.

Eine Erweiterung der Ein-/Ausgabeleitungen erfolgt im einfachsten Fall über den Portextender-Baustein 8243, der vier 4-Bit-Ports zur Verfügung stellt. Dabei wird der 8243 mit speziell dafür vorgesehenen Befehlen in das Gesamtsystem eingebunden. Außerdem können Standard-MCS-80/85-I/O-Bausteine im Datenadressraum betrieben werden.

Bei der Entwicklung wurde besonders auf einen Befehlssatz geachtet, der leistungsfähige Bitbefehle bietet, andererseits aber auch so kompakt wie möglich ist. Die meisten Befehle sind nur 1 Byte lang mit implizitem Operanden, einige wenige haben einen Operanden in einem zweiten Byte codiert. Dadurch ergeben sich sehr kurze Programme, die auf die vorgegebene Speichergröße abgestimmt sind.

Ein großer Nachteil der Architektur war, dass bedingte Sprünge nur absolut innerhalb einer 256-Byte-Seite durchgeführt werden konnten. Dies führte bei Programmerweiterungen zu Nachjustierung nachfolgender bedingter Sprünge durch Nachschaltung direkter langer Sprünge, um die 256-Byte-Seitengrenze zu überwinden, was in der Folge zu weiteren Codeverschiebungen mit Korrekturen führte. Mehrere Eingriffe im Assemblercode und anschließende Assemblierungen waren die Folge. Beim nachfolgenden MCS-51 wurde dieser Nachteil beseitigt, indem die bedingen Sprünge relativ ± 127 Byte zum Sprungbefehl durchgeführt werden konnten und nicht an Seitengrenzen gebunden waren.

Gemeinsamkeiten aller MCS-48-Bausteine:

Varianten

Blick auf den 8749H
MCS-48-Varianten
Typ ROM
intern
RAM
intern
Bemerkung
8020 1024 64 maskenprogrammierte Low-Cost-CPU: keine Interrupts, kein externer Programmspeicher, abgespeckter 8048-Befehlssatz, 20 Anschlüsse, 13 Ein-/Ausgänge
8021 1024 64 maskenprogrammierte Low-Cost-CPU: keine Interrupts, kein externer Programmspeicher, abgespeckter 8048-Befehlssatz, 28 Anschlüsse, 21 Ein-/Ausgänge[5]
8022 2048 64 maskenprogrammierte Low-Cost-CPU: A/D-Wandler, Spannungskomparator-Eingänge, kein externer Programmspeicher, abgespeckter 8048-Befehlssatz[6]
8035 64 ROM-lose Version des 8048, Programm in externem Baustein[7]
8039 128 ROM-lose Version des 8049, Programm in externem Baustein[8]
8040 256 ROM-lose Version des 8050, Programm in externem Baustein[9]
8048 1024 64 erster Mikrocontroller von Intel, begründete die MCS-48-Familie[7]
8049 2048 128 Weiterentwicklung des 8048 mit größerem Daten- und Programmspeicher[8]
8050 4096 256 Weiterentwicklung des 8049 mit größerem Daten- und Programmspeicher[9]
8648 1024 64 einmalig programmierbarer 8048, Factory OTP
8748 1024 64 reprogrammierbarer 8048, EPROM statt ROM[7]
8749 2048 128 reprogrammierbarer 8049, EPROM statt ROM[9]
87P50 256 Piggyback(Huckepack)-Version, bei der im Chipgehäuse ein Sockel für ein 2716-EPROM (2 KB) vorhanden ist
Blick auf den 8741
UPI-41-Varianten
Typ ROM
intern
RAM
intern
Bemerkung
8041 1024 64 vom 8048 abgeleiteter Slave-Prozessor mit asynchronem Datenregister zur Kommunikation mit einem Master-Prozessor (bspw. 8048/49/50)[10]
8042 2048 128 vom 8049 abgeleiteter Slave-Prozessor mit asynchronem Datenregister zur Kommunikation mit einem Master-Prozessor (bspw. 8048/49/50)[11]
8641 1024 64 einmalig programmierbarer 8041, Factory OTP[10]
8741 1024 64 reprogrammierbarer 8041, EPROM statt ROM[12]
8742 2048 128 reprogrammierbarer 8042, EPROM statt ROM[13]
8271 Programmierbarer Floppy-Disk-Steuerbaustein (festprogrammierter Schnittstellenbaustein auf Basis 8041)
8273 Programmierbarer HDLC/SDLC-Steuerbaustein (festprogrammierter Schnittstellenbaustein auf Basis 8041)
8278 Programmierbarer Tastatur-Schnittstellenbaustein (festprogrammierter Schnittstellenbaustein auf Basis 8041)
8292 IEC-Steuerbaustein (festprogrammierter Schnittstellenbaustein auf Basis 8041)
8294 Datenverschlüsselungs-Baustein (festprogrammierter Schnittstellenbaustein auf Basis 8041)
8295 Steuerbaustein für Punktmatrix-Drucker (festprogrammierter Schnittstellenbaustein auf Basis 8041)

Bekannte Geräte mit MCS-48-Bausteinen

Literatur

MCS-48

  • J. Koch (Bearb.): Die Mikrocomputer-Familie MCS-48, Eigenschaften und Anwendungen. Philips / Valvo, 1980, ISBN 3-87095-253-9.
  • J. Koch (Bearb.): Die Mikrocomputer-Familie MCS-48, Befehlsvorrat. Philips / Valvo, 1979, ISBN 3-8709-250-4.
  • Horst Pelka: Der Ein-Chip-Mikrocomputer. Franzis-Verlag, München 1981, 141 S., ISBN 3-7723-6831-X.
  • Mikrocomputer SAB 8048/8049 Befehlsliste. Hrsg. von der Siemens AG, Bereich Bauelemente, Balanstraße 73, 8000 München 80 (Bestell-Nr. B/2516).
  • Helmut Steffen: Steuern/Prozeßdatenverarbeitung im Technikunterricht, Funktionsmodelle mit dem INTEL-Einchip-Computer 8048. Ferd. Dümmler Verlag, Bonn 1995, 103 S., ISBN 3-427-53411-1.
  • MCS-48™ Single Component Microcomputer. Applications Seminar Notebook, 1978, Intel Corporation.
  • MCS-48™ Microcomputer User's Manual (PDF; 7,2 MB), 1978, Intel Corporation.
  • Lionel Smith, Cecil Moore: Serial I/O and Math Utilities for the 8049 Microcomputer. Application Note AP-49, January 1979, Intel Corporation.
  • A High-Speed Emulator for Intel MCS-48™ Microcomputers. Application Note AP-55A, August 1979, Intel Corporation.
  • Phil Dahm, Stuart Rosenberg: Intel MCS-48™ and UPI-41A™ Microcontrollers. Reliability Report RR-25, December 1979, Intel Corporation.
  • Microcontroller Handbook. Intel 1984, Order number 210918-002.
  • 8-Bit Embedded Controllers. Intel 1991, Order number 270645-003.

UPI-41

  • UPI-41A User’s Manual. Intel 1980, Order number 9800504-02 Rev. B.
  • Microprocessor Peripherals UPI-41A/41AH/42/42AH User’s Manual (PDF; 718 kB) Oktober 1993, Order number 231318-006, Intel Corporation.
  • Johan Beaston, Jim Kahn: An 8741A/8041A Digital Cassette Controller. Application Note AP-90, May 1980, Intel Corporation.
Commons: MCS-48 – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

  1. a b c Intel’s CPU family trees (Memento vom 14. März 2011 im Internet Archive)
  2. MCS-48™ Microcomputer User's Manual. (Memento des Originals vom 21. Juli 2011 im Internet Archive; PDF; 7,2 MB)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.sharpmz.org Intel Corporation, 1978.
  3. Technische Universität Chemnitz: Das Motherboard des AT (Memento des Originals vom 6. Januar 2012 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.tu-chemnitz.de.
  4. Datenblatt. (Memento des Originals vom 15. Mai 2016; PDF)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.datasheetarchive.com Philips MAB8400-Familie.
  5. 8021 Single-Component 8-Bit Microcontroller; Intel Fair Applications Handbook (archive.org)
  6. 8022 Single-Component 8-Bit Microcontroller With On Chip A/D Converter; Intel Fair Applications Handbook (archive.org)
  7. a b c 8048/8748/8035 Single-Component 8-Bit Microcontroller; Intel Fair Applications Handbook (archive.org)
  8. a b New High Performance 8049/8039/8039-6 Single-Component 8-Bit Microcontroller; Intel Fair Applications Handbook (archive.org)
  9. a b c P8748H/P8749H/8048AH/8035AHL/8049AH/8039AHL/8050AH/8040AHL HMOS Single-Component 8-Bit Microcontroller; Intel Fair Applications Handbook (archive.org)
  10. a b 8041AH/8041AH-2/8641A/8741A Universal Peripheral Interface 8-Bit Microcontroller; Intel Fair Applications Handbook (archive.org)
  11. UPI-41AH/42AH Universal Peripheral Interface 8-Bit Slave Microcontroller; Intel Fair Applications Handbook (archive.org)
  12. 8741A Universal Peripheral Interface 8-Bit Microcomputer. (PDF; 214 kB), Oktober 1989, Order number 290241-001, Intel Corporation; Intel Fair Applications Handbook (archive.org)
  13. 8742 Universal Peripheral Interface 8-Bit Slave Microcomputer. (PDF; 216 kB), November 1991, Order number 290256-001, Intel Corporation; Intel Fair Applications Handbook (archive.org)