mini|MOS 8367R0 - Agnus Der Agnus (lat. für Lamm) ist einer der Custom-Chips im Chipsatz des Commodore Amiga. In den späteren Versionen wurde er in Alice umbenannt.
Name „Agnus“ ist ein Akronym von „Adressgenerator“ ().
Eigenschaften mini|400px|Amiga-Hardwarestruktur mit dem speziellen Chip-Set mini|Alice 8374 Chip im Amiga 1200
Der Baustein ist für die Steuerung des sogenannten Chip-RAMs im Amiga zuständig, stellt die Video-Synchronsignale (HSY, CSY, VSY) zur Verfügung und enthält die Coprozessoren Copper und Blitter. Agnus enthält zusätzlich die komplette DMA-Logik für alle 6 möglichen Quellen. Für den zeitlichen Ablauf der einzelnen DMA-Zugriffe dient eine Bildschirmzeile als Zeitbezug. In jeder Zeile werden 225 Speicherzugriffe von Agnus auf die DMA-Kanäle und die CPU verteilt. Für das korrekte Timing sind ein Zeilen- und ein Spaltenzähler verantwortlich (HSY, VSY). Über diese Signale kann das Timing auch extern gesteuert werden (Genlock). Ein wesentlicher Hauptbestandteil von Agnus ist der große Adressgenerator. Alle Custom-Chips des Amiga können unabhängig von der CPU direkt auf das RAM zugreifen. Dazu benötigen diese Chips jedoch einen freien DMA-Kanal und den Adressgenerator. Über die DMA-Kanäle wird der Zugriff auf das RAM abgewickelt. Der Adressgenerator wandelt die Signale eines Chips in vollständige Speicheradressen um. Agnus kann Daten unabhängig vom Hauptprozessor im Speicher kopieren oder von einem Peripheriegerät in einen Speicherbereich oder umgekehrt.
Keiner der anderen Chips des Amiga-Chipsatzes verfügt über DMA-Kanäle oder Adressgeneratoren. Alle Speicherzugriffe laufen deshalb zentral über Agnus und werden von ihm kontrolliert und koordiniert. Insgesamt hat Agnus 25 DMA-Kanäle, über die 25 verschiedene Geräte ohne Beihilfe der CPU Daten in den Speicher schreiben oder aus ihm lesen können. Zu diesen von Agnus aus dem Chip-RAM geholten und von Denise dargestellten Video-Daten gehören neben den Pixel-Daten Paletten- und Sprite-Daten sowie die Copperlisten. Die Daten von BOBs werden zwar auch von Agnus per DMA geholt, aber dann mit dem in Agnus integrierten Blitter direkt an die darzustellende Position innerhalb des Videospeichers im Chip-RAM kopiert.
Agnus holt zum einen die Video- und Sound-Daten aus dem Chip-RAM und kann zum anderen auch Daten innerhalb des Chip-RAMs umkopieren und dabei auch verarbeiten (blitten), kann aber auch Daten generieren, nämlich beim Linienzeichnen und Flächenfüllen mit dem Blitter.
Die Urversion des Agnus kann 512 KiB Chip-RAM adressieren (OCS). Sie wurde im DIP-Gehäuse gefertigt und nur im Amiga 1000 und im Amiga 2000 mit A-Board eingesetzt. Die Nachfolgemodelle Amiga 500 und Amiga 2000 mit B-Board verfügen bereits über einen PLCC-Sockel für den aufgrund dieser Gehäuseform so genannten Fat Agnus (siehe unten bei PLCC-Versionen). Der Fat Agnus erschien in verschiedenen Varianten für unterschiedliche Chip-RAM-Größen mit abweichendem Funktionsumfang (OCS/ECS). Für die ECS-Versionen des Fat Agnus kursieren zusätzlich nicht vom Hersteller geprägte und daher uneinheitlich verwendete Ausdrücke wie Big Agnus, Super Agnus oder die Kombination dieser.
Der Alice-Chip ist die Weiterentwicklung des Fat Agnus für den AGA(AA)-Chipsatz. Alice wurde auf Basis des A3000-Agnus neu entwickelt und speziell auf die neueren CPUs (ab MC68020) zugeschnitten. Weil bei diesen Prozessoren der Bus 32 Bit breit ist, konnten einige Signale zusammengefasst bzw. entfernt werden. Damit konnten 2 MiB Chip-RAM verwendet werden. Alice kann allerdings nicht in alte Amigas eingebaut werden. Er ist nur für die Amigas mit AGA(AA)-Chipsatz entwickelt worden und wird im Amiga 1200, Amiga 4000-Modellen und im CD³² verwendet.
Versionen 8361 (A1000, A2000A, OCS, DIP-Gehäuse, NTSC) 8367 (A1000, A2000A, OCS, DIP-Gehäuse, PAL) 8370 (A500, A2000, OCS, PLCC-Gehäuse, NTSC) 8371 (A500, A2000, OCS, PLCC-Gehäuse, PAL) 8372 (A500, A2000, ECS, 1 MiB Chip-RAM) 8372-A (A500, A2000, ECS, 1 MiB Chip-RAM) 8372-B (A500+, A600, ECS, 2 MiB Chip-RAM) 8372-AB (A3000(T), ECS, 2 MiB Chip-RAM) 8374 Alice (A1200, A4000(T), CD³², AGA) 8375 (A500+, A600, ECS, 2 MiB Chip-RAM) Der Fat-(PLCC)-Agnus 8370-72/75 existiert also in verschiedenen Varianten: 1 MiB RAM, aber aufgrund nicht erweiterter Register nur 512 KiB als Chip-RAM nutzbar (OCS), die 2. Hälfte wird als Pseudo Fast-RAM nach $C00000 gemappt ('Ranger-Memory') 1 MiB RAM, voll als Chip-RAM nutzbar (ECS) 2 MiB RAM, voll als Chip-RAM nutzbar (ECS in A3000(T), A500+, A600) ECS-Chips sind zwischen PAL und NTSC umschaltbar, im OCS existieren dedizierte Versionen.
DMA-Kanäle Priorität Name Anzahl Zyklen/Rasterzeile Chip Bemerkung MPU 1 variiert CPU A Blitter 4 variiert Agnus (intern) gibt Zyklen an CPU ab, außer wenn BLTPRI aktiviert B Bitplane 6 80 Denise bei extremem Overscan werden Sprite-Kanäle beeinträchtigt C Copper 1 variiert Agnus (intern) D Audio 4 4 Paula E Sprites 8 16 Denise F Disk 1 3 Paula G Memory Refresh 1 4 - Quelle: Amiga 500 plus Service Manual
Pinbelegung
DIP-Version
OCS A1000/2000 8361/67 1 D8 2 D7 3 D6 4 D5 5 D4 6 D3 7 D2 8 D1 9 D0 10 Vcc (+5V) 11 _RES 12 _INT3 13 DMAL 14 _BLS 15 _DBR 16 _ARW 17 _RGA8 18 _RGA7 19 _RGA6 20 _RGA5 21 _RGA4 22 _RGA3 23 _RGA2 24 _RGA1 25 CCK 26 CCKQ 27 VSS 28 DRA0 29 DRA1 30 DRA2 31 DRA3 32 DRA4 33 DRA5 34 DRA6 35 DRA7 36 DRA8 37 _FIR0 38 _VSY 39 _CSY 40 _HSY 41 VSS 42 D15 43 D14 44 D13 45 D12 46 D11 47 D10 48 D9 Quelle: A2000A SchaltplanCommodore SCHEMATIC AMIGA 2000 380710 REV 6
PLCC-Versionen Bei Austausch/Umbau ist die Pinbelegung interessant. Die Typenangaben sind lediglich zur Referenz gedacht; von einem vorliegenden Agnus-Chip kann nicht direkt auf die Pinbelegung geschlossen werden, da diese unabhängig vom Chip anscheinend erst beim Packaging festgelegt wurde.
OCS/ECSECSECSAGA A500/2000A3000A500+/600A1200/4000 8370/71837283758374 Alice1RD13DRD13DRD13DRD132RD12DRD12DRD12DRD123RD11DRD11DRD11DRD114RD10DRD10DRD10DRD105RD9DRD9DRD9DRD96RD8DRD8DRD8DRD87RD7DRD7DRD7DRD78RD6DRD6DRD6DRD69RD5DRD5DRD5DRD510RD4DRD4DRD4DRD411RD3DRD3DRD3DRD312RD2DRD2DRD2DRD213RD1DRD1DRD1DRD114RD0DRD0DRD0DRD015VccVccVccVcc116RST*_RESET_RESET/RESET17INT3_INTR_INTR/INTR18DMALDMALDMALDMAL19BLS*_BLISS_BLISS/BLS20DBR*_BLIT_BLIT/DBR21RRW_WE_WE/WE22PRWR/WR/WR/W23RGEN*_REGEN_REGEN_REGEN24AS*_AS_ASNC225RAMEN*_RAMEN_RAMEN/RAMEN26RGA8RGA8RGA8RGA827RGA7RGA7RGA7RGA728RGA6RGA6RGA6RGA629RGA5RGA5RGA5RGA530RGA4RGA4RGA4RGA431RGA3RGA3RGA3RGA332RGA2RGA2RGA2RGA233RGA1RGA1RGA1RGA13428MHz28MHz28MHzSCLK35XCLKA20A20A2036XCLKEN*_XCLKEN_CDAC14MHz37CDAC*_CDAC7MHz/CDAC387MHz7MHzCCKQ7MHz39CCKQCCKQCCKCCKQ40CCKCCK14MCCK41TESTTESTGND/NTSC42VssVss1DRA0GND243MA0DRA0DRA1DRA044MA1DRA1DRA2DRA145MA2DRA2DRA3DRA246MA3DRA3DRA4DRA347MA4DRA4DRA5DRA448MA5DRA5DRA6DRA549MA6DRA6DRA7DRA650MA7DRA7DRA8DRA751MA8DRA8_LDSDRA852LDS*_LDS_UDSVcc253UDS*_UDS_CASLNC154CASL*_CASL_CASU/CAS55CASU*_CASUDRA9Vbb56RAS1*DRA9_RAS1DRA957RAS0*_RAS_RAS0/RAS58VssVss2GNDGND359A19A19A19A1960A1A1A1A161A2A2A2A262A3A3A3A363A4A4A4A464A5A5A5A565A6A6A6A666A7A7A7A767A8A8A8A868A9A9A9A969A10A10A10A1070A11A11A11A1171A12A12A12A1272A13A13A13A1373A14A14A14A1474A15A15A15A1575A16A16A16A1676A17A17A17A1777A18A18A18A1878LP*_LPEN_LPEN/LPEN79VSY*_VSYNC_VSYNC/VSYNC80CSY*_CSYNC_CSYNC/CSYNC81HSY*_HSYNC_HSYNC/HSYNC82VssVss3GNDGND183RD15DRD15DRD15DRD1584RD14DRD14DRD14DRD14 Quellen: A500 Service Training, A3000 Service Manual, A500+ Service Manual, A1200 Schaltplan
Siehe auch Original Chip Set Enhanced Chip Set Advanced Graphics Architecture
Einzelnachweise
Kategorie:Amiga Kategorie:Commodore-Chip