CHIPS P82C612 i en PLCC-pakning

Micro Channel-arkitekturen blev designet af ingeniøren Chet Heath. Mange af de Micro Channel-kort, der blev udviklet, anvendte CHIPS P82C612 MCA-grænsefladekontrolleren, hvilket gjorde det meget lettere at implementere MCA-implementeringer.

IBM 83X9648 16-bit Network Interface Card

OversigtRediger

Micro Channel var primært en 32-bit bus, men systemet understøttede også en 16-bit tilstand, der var designet til at sænke omkostningerne til stik og logik i Intel-baserede maskiner som IBM PS/2.

Situationen var dog aldrig så enkel, da både 32-bit- og 16-bit-versionerne i begyndelsen havde en række ekstra valgfrie stik til hukommelseskort, hvilket resulterede i et stort antal fysisk inkompatible kort til bustilsluttet hukommelse. Med tiden flyttede hukommelsen over på CPU’ens lokale bus, hvorved problemet blev elimineret. På den anden side blev signalkvaliteten stærkt forbedret, da Micro Channel tilføjede jord- og strømforsyningsstifter og arrangerede stifterne for at minimere interferens; en jord eller en forsyning var derved placeret inden for 3 stifter af hvert signal.

En anden stikforlængelse blev inkluderet til grafikkort. Denne forlængelse blev brugt til analogt output fra grafikkortet, som derefter blev ledt gennem systemkortet til systemets egen skærmudgang. Fordelen ved dette var, at Micro Channel-systemkort kunne have et grundlæggende VGA- eller MCGA-grafiksystem indbygget, og grafik på højere niveau (XGA- eller andre acceleratorkort) kunne derefter dele den samme port. Tilføjelseskortene kunne så være fri for “legacy” VGA-tilstande, idet de gjorde brug af det indbyggede grafiksystem, når det var nødvendigt, og gav mulighed for et enkelt systemkort-stik til grafik, der kunne opgraderes.

Micro Channel-kort havde også et unikt, 16-bit software-læsbart ID, som udgjorde grundlaget for et tidligt plug and play-system. BIOS og/eller OS kan læse ID’er, sammenligne dem med en liste over kendte kort og foretage automatisk systemkonfiguration efter behov. Dette førte til opstartsfejl, hvor en ældre BIOS ikke kunne genkende et nyere kort, hvilket forårsagede en fejl ved opstart. Dette krævede til gengæld, at IBM regelmæssigt udsendte opdaterede reference-diske (CMOS Setup Utility). Der findes en ret komplet liste over kendte ID’er (se afsnittet Eksterne links). Sammen med disse referencediske var der ADF-filer, som blev læst af setup, og som igen gav konfigurationsoplysninger for kortet. ADF-filen var en simpel tekstfil, der indeholdt oplysninger om kortets hukommelsesadressering og interrupts.

Og selv om MCA-kort kostede næsten dobbelt så meget som tilsvarende ikke-MCA-kort, blev det i markedsføringen understreget, at det var enkelt for enhver bruger at opgradere eller tilføje flere kort til sin pc og dermed spare de betydelige udgifter til en tekniker. På dette kritiske område var Micro Channel-arkitekturens største fordel også dens største ulempe og en af hovedårsagerne til dens undergang. For at tilføje et nyt kort (video, printer, hukommelse, netværk, modem osv.) satte brugeren blot MCA-kortet i og indsatte en tilpasset diskette (der fulgte med pc’en) for automatisk at blande det nye kort ind i den oprindelige hardware i stedet for at få en dyrt uddannet tekniker ind, som manuelt kunne foretage alle de nødvendige ændringer. Alle valg af interrupts (et ofte forvirrende problem) og andre ændringer blev foretaget automatisk ved at pc’en læste den gamle konfiguration fra disketten, som foretog de nødvendige ændringer i softwaren og derefter skrev den nye konfiguration til disketten. I praksis betød dette imidlertid, at brugeren skulle beholde den samme diskette, som var tilpasset den pågældende pc. For et lille firma med få pc’er var dette irriterende, men praktisk. Men for store organisationer med hundredvis eller endog tusindvis af pc’er var det logistisk set usandsynligt eller umuligt at matche hver pc permanent med sin egen diskette. Uden den originale, opdaterede diskette kunne der ikke foretages ændringer i pc’ens kort. Efter at denne erfaring gentog sig tusindvis af gange, indså virksomhedsledere, at deres drømmescenarie for enkel opgradering ikke fungerede i virksomhedsverdenen, og de søgte en bedre proces.

DatatatransmissionRediger

Den grundlæggende datahastighed i Micro Channel blev øget fra ISA’s 8 MHz til 10 MHz. Dette kan have været en beskeden stigning med hensyn til clockfrekvens, men den større busbredde, kombineret med en dedikeret buscontroller, der udnyttede burst mode-overførsler, betød, at den effektive gennemstrømning var op til fem gange højere end ISA. Ved hurtigere overførsler kunne adressebussen genbruges til data, hvilket yderligere øgede den effektive busbredde. Mens hastigheden på 10 MHz gav mulighed for 40 MB/s gennemløb ved 32-bit bredde, øgede senere modeller af RS/6000-maskiner datahastigheden til 20 MHz og gennemløbet til 80 MB/s. Nogle af Micro Channel-bussens funktioner med højere gennemløb var kun tilgængelige for RS/6000-platformen og blev oprindeligt ikke understøttet på kort, der opererer på en Intel-platform.

Med bus mastering kunne hvert kort tale direkte med et andet kort. Dette gav mulighed for en ydeevne, der var uafhængig af CPU’en. En potentiel ulempe ved multi-master-designet var de mulige kollisioner, når mere end ét kort forsøgte at blive busmaster, men Micro Channel inkluderede en arbitreringsfunktion for at korrigere for disse situationer og tillod også en master at bruge en burst-mode. Micro Channel-kort havde fuld kontrol i op til 12 millisekunder. Dette var længe nok til at give det maksimale antal andre enheder på bussen mulighed for at buffere indgående data fra enheder, der kan overløbes, som f.eks. bånd og kommunikation.

Understøttelse af flere bus-mastere og forbedret arbitrering betyder, at flere sådanne enheder kan eksistere side om side og dele systembussen. Micro Channel-bus-master-kompatible enheder kan endda bruge bussen til at tale direkte med hinanden (peer to peer) ved hastigheder, der er højere end systemets CPU, uden nogen anden systemintervention. I teorien kan systemer med Micro Channel-arkitektur udvides, ligesom mainframes, ved blot at tilføje intelligente mastere, uden at det periodisk er nødvendigt at opgradere den centrale processor.

Arbitreringsforbedring sikrer bedre systemgennemstrømning, da kontrollen overføres mere effektivt. Avanceret afbrydelseshåndtering henviser til brugen af niveaufølsomme afbrydelser til at håndtere systemforespørgsler. I stedet for en dedikeret afbrydelseslinje kan flere linjer deles for at give flere mulige afbrydelser, hvilket løser ISA-busens afbrydelseslinje-konfliktproblemer.

Alle afbrydelsesforespørgselssignaler var “offentlige” på Micro Channel-arkitekturen, hvilket gør det muligt for ethvert kort på bussen at fungere som en I/O-processor til direkte betjening af I/O-enhedsafbrydelser. ISA havde begrænset al sådan behandling til kun at omfatte systemets CPU. På samme måde var bus master request- og grant-signalerne offentlige, således at bustilsluttede enheder kunne overvåge latenstiden for at styre den interne buffering for I/O-processorer. Disse funktioner blev ikke indført i PCI, hvilket betød, at al I/O-understøttelse udelukkende skulle komme fra systemkortets processor.

Den sidste store forbedring af Micro Channel-arkitekturen var POS, Programmable Option Select, som gjorde det muligt at foretage al opsætning i software. Denne funktion tages for givet i dag, men på det tidspunkt var opsætning en stor opgave for ISA-systemer. POS var et simpelt system, der indeholdt enheds-id’er i firmware, som driverne i computeren skulle fortolke. (Denne type software-konfigurationssystem er i dag kendt som plug and play.) Funktionen levede ikke rigtig op til det, den lovede; den automatiske konfiguration var fin, når den virkede, men det gjorde den ofte ikke – hvilket resulterede i en computer, der ikke kunne starte op – og det var meget vanskeligere at løse problemet ved manuel indgriben end at konfigurere et ISA-system, ikke mindst fordi dokumentationen til MCA-enheden havde en tendens til at antage, at den automatiske konfiguration ville fungere, og derfor ikke gav de nødvendige oplysninger til at konfigurere den i hånden, i modsætning til dokumentationen for ISA-enheder, som nødvendigvis indeholdt alle detaljer (men at skulle fjerne og kontrollere alle IRQ-indstillinger fysisk og derefter finde og indstille den nye IRQ til en ny enhed — hvis der var en egnet en af dem til rådighed — for ISA var slet ikke sjovt, og det var for mange brugere umuligt…. det er indlysende, hvorfor man forsøgte at gå over til softwaremæssig arbitreret konfiguration, og hvorfor dette senere skulle lykkes i form af PnP.)

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.