Industristandardarkitektur
Industry Standard Architecture | |
År skapat | 1981 |
---|---|
Skapad av | IBM |
Ersatt av | PCI , LPC (1993, 1998) |
Bredd i bitar | 8 eller 16 |
Antal enheter | upp till 6 enheter |
Fart | Halvduplex 8 MB/s eller 16 MB/s |
Stil | Parallell |
Hotplugging-gränssnitt | Nej |
Externt gränssnitt | Nej |
Industry Standard Architecture ( ISA ) är den 16-bitars interna bussen för IBM PC/AT och liknande datorer baserad på Intel 80286 och dess omedelbara efterföljare under 1980-talet. Bussen var (i stort sett) bakåtkompatibel med 8-bitars bussen på den 8088 -baserade IBM PC:n , inklusive IBM PC/XT såväl som IBM PC kompatibla .
Ursprungligen kallad PC-bussen (8-bitars) eller AT-bussen (16-bitars), kallades den också för I/O-kanal av IBM. ISA-termen myntades som en retronym av IBM PC-klontillverkare i slutet av 1980-talet eller början av 1990-talet som en reaktion på IBMs försök att ersätta AT-bussen med dess nya och inkompatibla Micro Channel-arkitektur .
16-bitars ISA-bussen användes även med 32-bitars processorer under flera år. Ett försök att utöka det till 32 bitar, kallat Extended Industry Standard Architecture (EISA), var dock inte särskilt framgångsrikt. Senare bussar som VESA Local Bus och PCI användes istället, ofta tillsammans med ISA-kortplatser på samma moderkort . Derivat av AT-busstrukturen användes och används fortfarande i ATA/IDE , PCMCIA - standarden, Compact Flash , PC/104 -bussen och internt i Super I/O -chips.
Även om ISA försvann från konsumentdatorer för många år sedan, används det fortfarande i industriella datorer , där vissa specialiserade expansionskort som aldrig övergått till PCI och PCI Express används.
Historia
Den ursprungliga PC-bussen utvecklades av ett team ledd av Mark Dean på IBM som en del av IBM PC-projektet 1981. Det var en 8-bitars buss baserad på I/O-bussen i IBM System/23 Datamaster- systemet - den använde samma fysiska kontakt, och ett liknande signalprotokoll och pinout. En 16-bitarsversion, IBM AT- bussen, introducerades med lanseringen av IBM PC/AT 1984. AT-bussen var en mestadels bakåtkompatibel förlängning av PC-bussen – AT-busskontakten var en superset av PC-bussen kontakt. 1988 föreslogs 32-bitars EISA-standarden av gruppen "Gang of Nine" av PC-kompatibla tillverkare som inkluderade Compaq. Compaq skapade termen "Industry Standard Architecture" (ISA) för att ersätta " PC-kompatibel ". I processen bytte de retroaktivt namn på AT-bussen till "ISA" för att undvika att göra intrång i IBM:s varumärke på dess PC- och PC/AT-system (och för att undvika att ge deras stora konkurrent, IBM, gratis reklam).
IBM designade 8-bitarsversionen som ett buffrat gränssnitt till moderkortsbussarna för Intel 8088 (16/8 bitars) CPU i IBM PC och PC/XT, utökat med prioriterade avbrott och DMA-kanaler. 16-bitarsversionen var en uppgradering för moderkortsbussarna till Intel 80286 CPU (och utökade avbrotts- och DMA-faciliteter) som användes i IBM AT, med förbättrat stöd för busmastering. ISA-bussen var därför synkron med CPU-klockan, tills sofistikerade buffringsmetoder implementerades av chipset för att koppla ISA till mycket snabbare CPU:er.
ISA designades för att ansluta kringutrustningskort till moderkortet och möjliggör busmastering . Endast de första 16 MB av huvudminnet är adresserbara. Den ursprungliga 8-bitarsbussen körde från 4,77 MHz-klockan på 8088-processorn i IBM PC och PC/XT. Den ursprungliga 16-bitarsbussen körde från CPU-klockan på 80286 i IBM PC/AT-datorer, som var 6 MHz i de första modellerna och 8 MHz i senare modeller. IBM RT PC använde också 16-bitars bussen. ISA användes också i vissa icke-IBM-kompatibla maskiner som Motorola 68k -baserade Apollo (68020) och Amiga 3000 (68030) arbetsstationer, den kortlivade AT&T Hobbit och den senare PowerPC -baserade BeBox .
Företag som Dell förbättrade AT-bussens prestanda men 1987 ersatte IBM AT-bussen med sin egenutvecklade Micro Channel Architecture (MCA). MCA övervann många av de begränsningar som då var uppenbara i ISA men var också ett försök från IBM att återta kontrollen över PC-arkitekturen och PC-marknaden. MCA var mycket mer avancerad än ISA och hade många funktioner som senare skulle dyka upp i PCI. Men MCA var också en sluten standard medan IBM hade släppt fullständiga specifikationer och kretsscheman för ISA. Datortillverkare svarade på MCA genom att utveckla den utökade industristandardarkitekturen (EISA) och den senare VESA Local Bus (VLB). VLB använde vissa elektroniska delar som ursprungligen var avsedda för MCA eftersom komponenttillverkarna redan var utrustade för att tillverka dem. Både EISA och VLB var bakåtkompatibla expansioner av AT-bussen (ISA).
Användare av ISA-baserade maskiner var tvungna att känna till speciell information om hårdvaran de lade till i systemet. Medan en handfull enheter i huvudsak var " plug-n-play ", var detta sällsynt. Användare var ofta tvungna att konfigurera parametrar när de lade till en ny enhet, såsom IRQ- linjen, I/O-adressen eller DMA- kanalen. MCA hade avskaffat denna komplikation och PCI inkorporerade faktiskt många av de idéer som först utforskades med MCA, även om det var mer direkt härstammande från EISA.
Dessa problem med konfigurationen ledde så småningom till skapandet av ISA PnP , ett plug-n-play-system som använde en kombination av modifieringar av hårdvaran, systemets BIOS och operativsystemets programvara för att automatiskt hantera resursallokering. I verkligheten kunde ISA PnP vara besvärligt och fick inte bra stöd förrän arkitekturen var inne i sina sista dagar.
PCI-kortplatser var de första fysiskt inkompatibla expansionsportarna som direkt klämde ISA från moderkortet. Till en början var moderkort till stor del ISA, inklusive några PCI-platser. I mitten av 1990-talet var de två slottyperna grovt balanserade, och ISA-slots var snart i minoriteten av konsumentsystemen. Microsofts PC 99 -specifikation rekommenderade att ISA-platser skulle tas bort helt, även om systemarkitekturen fortfarande krävde att ISA var närvarande på något rudimentiellt sätt internt för att hantera diskettenheten, serieportarna , etc. , vilket var anledningen till att den programvarukompatibla LPC- bussen var skapas. ISA-slots fanns kvar i några år till, och mot sekelskiftet var det vanligt att se system med en Accelerated Graphics Port (AGP) sittande nära den centrala processorenheten , en rad PCI-slots och en eller två ISA-platser nära slutet. I slutet av 2008 försvann till och med diskettenheter och serieportar, och utplåningen av rudimentiell ISA (då LPC-bussen) från chipset var vid horisonten.
PCI-kortplatser är "roterade" jämfört med sina ISA-motsvarigheter - PCI-kort sattes i huvudsak "upp och ner", vilket gör att ISA- och PCI-kontakter kan klämmas ihop på moderkortet. Endast en av de två kontakterna kan användas i varje kortplats åt gången, men detta möjliggjorde större flexibilitet.
AT Attachment (ATA) hårddiskgränssnitt är direkt härstammande från 16-bitars ISA på PC/AT. ATA har sitt ursprung i IBM Personal Computer Fixed Disk and Diskette Adapter, standarddisketten med dubbla funktioner och hårddiskkontrollkortet för IBM PC AT; den fasta diskkontrollern på detta kort implementerade registeruppsättningen och den grundläggande kommandouppsättningen som blev grunden för ATA-gränssnittet (och som skilde sig mycket från gränssnittet för IBM:s fasta diskkontrollerkort för PC XT). hårdkort från tredje part som integrerade en hårddisk (HDD) och en hårddiskkontroller (HDC) på ett kort. Detta var i bästa fall besvärligt och i värsta fall skadligt för moderkortet, eftersom ISA-kortplatser inte var designade för att stödja så tunga enheter som hårddiskar. Nästa generation av Integrated Drive Electronics- enheter flyttade både enheten och styrenheten till en enhetsplats och använde en bandkabel och ett mycket enkelt gränssnittskort för att ansluta den till en ISA-kortplats. ATA är i grunden en standardisering av detta arrangemang plus en enhetlig kommandostruktur för mjukvara för gränssnitt med HDC i enheten. ATA har sedan dess separerats från ISA-bussen och kopplats direkt till den lokala bussen, vanligtvis genom integrering i styrkretsen, för mycket högre klockhastigheter och datagenomströmning än vad ISA kunde stödja. ATA har tydliga egenskaper hos 16-bitars ISA, såsom en 16-bitars överföringsstorlek, signaltiming i PIO-lägena och avbrotts- och DMA-mekanismerna.
ISA buss arkitektur
|
PC /XT-bussen är en åttabitars ISA -buss som användes av Intel 8086- och Intel 8088- system i IBM PC och IBM PC XT på 1980-talet. Bland dess 62 stift fanns demultiplexade och elektriskt buffrade versioner av de 8 data- och 20 adresslinjerna i 8088-processorn, tillsammans med kraftledningar, klockor, läs/skriv-strober, avbrottsledningar, etc. Kraftledningar inkluderade −5 V och ±12 V för att direkt stödja nMOS -kretsar för pMOS och förbättringsläge såsom dynamiska RAM-minnen bland annat. XT-bussarkitekturen använder en enda Intel 8259 PIC , vilket ger åtta vektoriserade och prioriterade avbrottslinjer. Den har fyra DMA- kanaler som ursprungligen tillhandahålls av Intel 8237 . Tre av DMA-kanalerna förs ut till XT-bussexpansionsplatserna; av dessa är 2 normalt redan allokerade till maskinfunktioner (diskettenhet och hårddiskkontroll):
DMA-kanal | Expansion | Standardfunktion |
---|---|---|
0 | Nej | uppdatering av slumpmässigt minne |
1 | Ja | Tilläggskort |
2 | Ja | Diskettkontroller _ |
3 | Ja | Hårddiskkontroller _ |
PC /AT-bussen , en 16- bitars (eller 80286-) version av PC/XT-bussen, introducerades med IBM PC/AT . Denna buss kallades officiellt I/O Channel av IBM. [ citat behövs ] Den utökar XT-bussen genom att lägga till en andra kortare kontakt i linje med den åttabitars XT-busskontakten, som är oförändrad, vilket bibehåller kompatibiliteten med de flesta 8-bitarskort. Den andra kontakten lägger till fyra ytterligare adresslinjer för totalt 24, och 8 ytterligare datalinjer för totalt 16. Den lägger också till nya avbrottslinjer anslutna till en andra 8259 PIC (ansluten till en av linjerna i den första) och 4 × 16-bitars DMA-kanaler, samt kontrolllinjer för att välja 8- eller 16-bitars överföringar.
16-bitars AT-bussplatsen använde ursprungligen två standardkantuttag i tidiga IBM PC/AT-maskiner. Men med populariteten av AT-arkitekturen och 16-bitars ISA-bussen introducerade tillverkarna specialiserade 98-stiftskontakter som integrerade de två uttagen i en enhet. Dessa finns i nästan varje AT-klass PC som tillverkats efter mitten av 1980-talet. ISA-kortplatsens kontakt är vanligtvis svart (att skilja den från de bruna EISA-kontakterna och vita PCI-kontakterna).
Antal enheter
Moderkortsenheter har dedikerade IRQ:er (finns inte i kortplatserna). 16-bitars enheter kan använda antingen PC-bus eller PC/AT-bus IRQ. Det är därför möjligt att ansluta upp till 6 enheter som använder en 8-bitars IRQ var och upp till 5 enheter som använder en 16-bitars IRQ vardera. Samtidigt kan upp till 4 enheter använda en 8-bitars DMA-kanal var, medan upp till 3 enheter kan använda en 16-bitars DMA-kanal var.
Varierande busshastigheter
Ursprungligen var bussklockan synkron med CPU-klockan, vilket resulterade i varierande bussklockfrekvenser bland de många olika IBM-"klonerna" på marknaden (ibland så höga som 16 eller 20 MHz), vilket ledde till mjukvaru- eller elektriska timingproblem för vissa ISA kort med busshastigheter de inte var designade för. Senare moderkort eller integrerade chipsets använde en separat klockgenerator eller en klockdelare som antingen fixerade ISA-bussfrekvensen till 4, 6 eller 8 MHz eller tillät användaren att justera frekvensen via BIOS- inställningen . När de används vid en högre bussfrekvens kan vissa ISA-kort (till exempel vissa Hercules-kompatibla grafikkort) visa betydande prestandaförbättringar.
8/16-bitars inkompatibiliteter
Minnesadressavkodning för valet av 8- eller 16-bitars överföringsläge var begränsad till 128 KiB-sektioner, vilket ledde till problem vid blandning av 8- och 16-bitarskort eftersom de inte kunde samexistera i samma 128 KiB-område. Detta beror på att MEMCS16-linjen måste ställas in endast baserat på värdet för LA17-23.
Tidigare och nuvarande användning
ISA används fortfarande idag för specialiserade industriella ändamål. 2008 släppte IEI Technologies ett modernt moderkort för Intel Core 2 Duo-processorer som, förutom andra speciella I/O-funktioner, är utrustat med två ISA-platser. Den marknadsförs till industriella och militära användare som har investerat i dyra specialiserade ISA-bussadaptrar, som inte finns i PCI -bussversioner.
På liknande sätt släpper ADEK Industrial Computers ett moderkort i början av 2013 för Intel Core i3/i5/i7-processorer, som innehåller en (icke-DMA) ISA-plats.
PC /104 -bussen, som används i industriella och inbyggda applikationer, är en derivata av ISA-bussen, som använder samma signallinjer med olika kontakter. LPC - bussen har ersatt ISA-bussen som anslutning till de äldre I/O-enheterna på de senaste moderkorten; även om LPC är fysiskt ganska annorlunda, ser LPC ut precis som ISA för mjukvara, så att särdragen hos ISA som 16 MiB DMA-gränsen (som motsvarar hela adressutrymmet för Intel 80286-processorn som användes i den ursprungliga IBM AT) sannolikt kommer att hålla sig kvar runt ett tag.
ATA
Som förklarats i avsnittet Historik var ISA grunden för utvecklingen av ATA- gränssnittet, som används för ATA (alias IDE) hårddiskar. Fysiskt sett är ATA i huvudsak en enkel delmängd av ISA, med 16 databitar, stöd för exakt en IRQ och en DMA-kanal och 3 adressbitar. Till denna ISA-delmängd lägger ATA till två IDE-adressval ("chip select")-linjer (dvs. adressavkodningar, som i praktiken motsvarar adressbitar) och några unika signallinjer specifika för ATA/IDE-hårddiskar (som Cable Select/Spindle Synkroniseringslinje.) Förutom den fysiska gränssnittskanalen går ATA bortom och långt utanför ISA-området genom att även specificera en uppsättning fysiska enhetsregister som ska implementeras på varje ATA (IDE)-enhet och en komplett uppsättning protokoll och enhet kommandon för att styra fasta diskenheter med dessa register. ATA-enhetsregistren nås med hjälp av adressbitarna och adressvalssignalerna i den fysiska ATA-gränssnittskanalen, och alla operationer på ATA-hårddiskar utförs med de ATA-specificerade protokollen via ATA-kommandouppsättningen. De tidigaste versionerna av ATA-standarden innehöll några enkla protokoll och en grundläggande kommandouppsättning som var jämförbar med kommandouppsättningarna för MFM- och RLL-kontroller (som föregick ATA-kontroller), men de senaste ATA-standarderna har mycket mer komplexa protokoll och instruktionsuppsättningar som inkluderar valfria kommandon och protokoll tillhandahåller sådana avancerade valfria funktioner som stora dolda systemlagringsområden, lösenordssäkerhetslåsning och programmerbar geometriöversättning.
En ytterligare avvikelse mellan ISA och ATA är att medan ISA-bussen förblev låst till en enda standardklockfrekvens (för bakåtkompatibilitet med hårdvara), ATA-gränssnittet erbjöd många olika hastighetslägen, kunde välja bland dem för att matcha den maximala hastigheten som stöds av den bifogade enheter, och fortsatte att lägga till högre hastigheter med senare versioner av ATA-standarden (upp till 133 MB/s för ATA-6, den senaste.) I de flesta former körde ATA mycket snabbare än ISA, förutsatt att den var ansluten direkt till en lokal buss (t.ex. sydbrygga-integrerade IDE-gränssnitt) snabbare än ISA-bussen.
XT-IDE
Innan 16-bitars ATA/IDE- gränssnittet fanns det ett 8-bitars XT-IDE (även känt som XTA)-gränssnitt för hårddiskar. Det var inte alls lika populärt som ATA har blivit, och XT-IDE-hårdvara är nu ganska svår att hitta. Vissa XT-IDE-adaptrar fanns tillgängliga som 8-bitars ISA-kort, och XTA-sockets fanns också på moderkorten till Amstrads senare XT-kloner samt en kortlivad linje av Philips -enheter. XTA pinout var mycket lik ATA, men endast åtta datalinjer och två adresslinjer användes, och de fysiska enhetsregistren hade helt olika betydelser. Några hårddiskar (som Seagate ST351A/X) kan stödja båda typerna av gränssnitt, vald med en bygel.
Många senare AT (och AT efterföljare) moderkort hade inget integrerat hårddiskgränssnitt utan förlitade sig på ett separat hårddiskgränssnitt anslutet till en ISA/EISA/VLB-kortplats. Det fanns till och med några 80486-baserade enheter som levererades med MFM/RLL-gränssnitt och enheter istället för den allt vanligare AT-IDE.
Commodore byggde den XT-IDE-baserade perifera hårddisken / minnesexpansionsenheten A590 för sina Amiga 500 och 500+ datorer som också stödde en SCSI- enhet. Senare modeller – A600 , A1200 och Amiga 4000- serien – använder AT-IDE-enheter.
PCMCIA
PCMCIA - specifikationen kan ses som en superset av ATA. Standarden för PCMCIA-hårddiskgränssnitt, som inkluderade PCMCIA-flashenheter, möjliggör ömsesidig konfiguration av porten och enheten i ett ATA-läge. Som en de facto-förlängning tillåter de flesta PCMCIA-flashenheter dessutom ett enkelt ATA-läge som aktiveras genom att dra ett enda stift lågt, så att PCMCIA-hårdvara och firmware är onödiga för att använda dem som en ATA-enhet ansluten till en ATA-port. PCMCIA flash-enhet till ATA-adaptrar är således enkla och billiga, men är inte garanterade att fungera med vilken standard PCMCIA-enhet som helst. Vidare kan sådana adaptrar inte användas som generiska PCMCIA-portar, eftersom PCMCIA-gränssnittet är mycket mer komplext än ATA.
Emulering av inbäddade marker
Även om de flesta moderna datorer inte har fysiska ISA-bussar, har nästan alla datorer — x86-32 och x86-64 — ISA-bussar allokerade i fysiskt adressutrymme. vissa Southbridges och vissa CPU: er själva tillhandahåller tjänster som temperaturövervakning och spänningsavläsningar genom ISA-bussar som ISA-enheter. [ citat behövs ]
Standardisering
IEEE startade en standardisering av ISA-bussen 1985, kallad P996-specifikationen. Men trots att böcker publicerades på P996-specifikationen gick den aldrig officiellt över utkaststatus.
Moderna ISA-kort
Det finns fortfarande en befintlig användarbas med gamla datorer, så vissa ISA-kort tillverkas fortfarande, t.ex. med USB- portar eller kompletta enkortsdatorer baserade på moderna processorer, USB 3.0 och SATA .
Se även
- PC/104 - Inbäddad variant av ISA
- Lågt antal stift (LPC)
- Extended Industry Standard Architecture (EISA)
- Mikrokanalarkitektur (MCA)
- VESA lokalbuss (VLB)
- Peripheral Component Interconnect (PCI)
- Accelerated Graphics Port (AGP)
- PCI-X
- PCI Express (PCI-E eller PCIe)
- Lista över datorbussgränssnitt
- Amiga Zorro II
- NuBus
- Bytt tyg
- Lista över enhetens bandbredder
- Kompakt PCI
- PC-kort
- Universal Serial Bus (USB)
- Äldre hamn
- Bakplan
Vidare läsning
- Intel ISA Bus-specifikationer och applikationsnoteringar - Rev 2.01 ; Intel; 73 sidor; 1989.
externa länkar
- "Connector Bus ISA (Industry Standard Architecture)" . Hårdvara bok.
- Microsoft (1999-06-02). "Ta bort ISA-arkitekturen i Windows-baserade plattformar" . Microsoft. Arkiverad från originalet (Microsoft Word) 2012-03-11 . Hämtad 2007-07-14 .