Industri standard arkitektur -
Industry Standard Architecture

Från Wikipedia, den fria encyklopedin
ÄR EN
Industri standard arkitektur
Isa1.jpg
En 8-bitars och fem 16-bitars ISA-kortplatser på ett moderkort
År skapat 1981
; 40 år sedan
 (
1981
)
Skapad av IBM
Ersatt av PCI , LPC (1993, 1998)
Bredd i bitar 8 eller 16
Antal enheter upp till 6 enheter
Fart Halv duplex 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 -bitarsbussen på den 8088 -baserade IBM -datorn , inklusive IBM PC/XT och IBM PC -kompatibla .

Ursprungligen kallad PC-bussen (8-bitars) eller AT-bussen (16-bitars), kallades den också I/O-kanal av IBM. ISA-termen myntades som en retronym av konkurrerande PC-klonstillverkare 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 sin nya och inkompatibla Micro Channel-arkitektur .

16-bitars ISA-bussen användes också med 32-bitars processorer i flera år. Ett försök att förlänga den till 32 bitar, kallad 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 -platser på samma moderkort . Derivat av AT -bussstrukturen användes och används fortfarande i ATA/IDE , PCMCIA -standarden, Compact Flash , PC/104 -bussen och internt inom Super I/O -chips.

Även om ISA försvann från konsumentens stationära datorer för många år sedan, används det fortfarande i industriella datorer , där vissa specialiserade expansionskort som aldrig övergick till PCI och PCI Express används.

Historia

8-bitars XT
,
16-bitars ISA
, EISA (topp till botten)
8-bitars XT
: Adlib FM-ljudkort
16-bitars ISA
: Madge 4/16 Mbps Token Ring NIC
16-bitars ISA
: Ethernet 10Base-5/2 NIC
8-bitars XT
: US Robotics 56k-modem
AT -bussen till "ISA" för att undvika att kränka IBM: s varumärke på dess PC och PC/AT -system.

IBM utformade 8-bitarsversionen som ett buffrat gränssnitt till moderkortbussarna i Intel 8088 (16/8 bitars) CPU i IBM PC och PC/XT. 16-bitarsversionen var en uppgradering för moderkortets bussar till Intel 80286- processor som används i IBM AT. ISA -bussen var därför synkron med CPU -klockan tills sofistikerade buffertmetoder implementerades av chipset för att ansluta ISA till mycket snabbare processorer.

ISA har utformats för att ansluta kringkort till moderkortet och möjliggör bussmastring . Endast de första 16 MB huvudminnet är adresserbart. Den ursprungliga 8-bitarsbussen körde från 4,77 MHz klockan på 8088 CPU i IBM PC och PC/XT. Den ursprungliga 16-bitarsbussen kördes från CPU-klockan på 80286 i IBM PC/AT-datorer, vilket var 6 MHz i de första modellerna och 8 MHz i senare modeller. Den IBM RT PC använde också 16-bitars buss. 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 återfå kontrollen över PC -arkitekturen och PC -marknaden. MCA var mycket mer avancerat än ISA och hade många funktioner som senare skulle visas 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 Extended Industry Standard Architecture (EISA) och den senare VESA Local Bus (VLB). VLB använde några elektroniska delar som ursprungligen var avsedda för MCA eftersom komponenttillverkare redan var utrustade för att tillverka dem. Både EISA och VLB var bakåtkompatibla utvidgningar av AT (ISA) -bussen.

Användare av ISA-baserade maskiner var tvungna att veta särskild information om hårdvaran som de lade till i systemet. Medan en handfull enheter i huvudsak var " plug-n-play ", var detta sällsynt. Användare måste ofta konfigurera parametrar när de lägger till en ny enhet, till exempel IRQ -linjen, I/O -adressen eller DMA -kanalen. MCA hade gjort upp med denna komplikation och PCI införlivade faktiskt många av de idéer som först undersöktes med MCA, även om det härrörde mer direkt från EISA.

Detta 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årdvara, system- BIOS och operativsystemprogramvara för att automatiskt hantera resursallokeringar. I själva verket kan ISA PnP vara besvärligt och blev inte välstött förrän arkitekturen var i dess sista dagar.

PCI-kortplatser var de första fysiskt inkompatibla expansionsportarna som direkt pressade ISA från moderkortet. Till en början var moderkort i stort sett ISA, inklusive några PCI -kortplatser. I mitten av 1990-talet var de två spelautomaterna i stort sett balanserade, och ISA-platser var snart i minoritet av konsumentsystem. Microsoft : s PC 99 -specifikationen rekommenderar att ISA slots tas bort helt och hållet, även om systemarkitekturen krävs fortfarande ISA vara närvarande på något vestigial sätt internt för att hantera diskettenheten , serieportar , etc., som var anledningen till att programvara som är kompatibel LPC bussen var skapad. ISA -kortplatser fanns kvar några år till, och mot sekelskiftet var det vanligt att se system med en Accelerated Graphics Port (AGP) som sitter nära den centrala processorenheten , en rad PCI -kortplatser och en eller två ISA -platser i närheten slutet. I slutet av 2008 försvann till och med disketter och seriella portar, och utrotningen av resterande ISA (då LPC -bussen) från chipset var i horisonten.

PCI-kortplatser är "roterade" jämfört med deras ISA-motsvarigheter-PCI-kort sattes i huvudsak "upp och ner", så att ISA- och PCI-kontakter kunde 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.

Den AT Attachment (ATA) hårddisk interface härstammar direkt från 16-bitars ISA av PC / AT. ATA har sitt ursprung i hårddiskar 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 utformade för att stödja sådana tunga enheter som hårddiskar. Nästa generation av Integrated Drive Electronics -enheter flyttade både enheten och styrenheten till ett enhetsfack 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 programvara för gränssnitt med HDC i enheten. ATA har sedan separerats från ISA -bussen och anslutits direkt till lokalbussen, vanligtvis genom integration i chipsetet, för mycket högre klockfrekvenser och dataflöde än ISA skulle kunna stödja. ATA har tydliga egenskaper hos 16-bitars ISA, till exempel en 16-bitars överföringsstorlek, signaltiming i PIO-lägen och avbrotts- och DMA-mekanismerna.

ISA -bussarkitektur


XT Buss pins.svg
ISA Buss pins.svg

Den PC / XT-bussen är en åtta bit ISA-bussen som används av Intel 8086 och Intel 8088 system i IBM PC och IBM PC XT på 1980-talet. Bland dess 62 stift fanns demultiplexerade och elektriskt buffrade versioner av de 8 data och 20 adresslinjerna i 8088 -processorn, tillsammans med kraftledningar, klockor, läs-/skrivsignaler, avbrottsledningar etc. Kraftledningar inkluderade −5 V och ± 12 V för att direkt stödja pMOS och förbättringsläge nMOS -kretsar, bland annat dynamiskt RAM -minne. XT -bussarkitekturen använder en enda Intel 8259 PIC , som ger åtta vektoriserade och prioriterade avbrottslinjer. Den har fyra DMA -kanaler som ursprungligen levererades av Intel 8237 , 3 av DMA -kanalerna förs ut till XT -bussens expansionsplatser; av dessa är 2 normalt redan tilldelade maskinfunktioner (diskettenhet och hårddiskstyrenhet):

DMA -kanal Expansion Standardfunktion
0 Nej Dynamisk uppdatering av
1 Ja Tilläggskort
2 Ja Diskettstyrenhet
3 Ja Hårddiskstyrenhet

Den PC / AT-buss , en 16- bit (eller 80286-) version av PC / XT buss, infördes med IBM PC / AT . Denna buss benämndes officiellt I/O Channel av IBM. Den förlänger XT-bussen genom att lägga till en andra kortare kantkontakt i linje med åtta-bitars XT-busskontakten, som är oförändrad, och behåller kompatibilitet med de flesta 8-bitars kort. Den andra kontakten lägger till ytterligare fyra adresslinjer för totalt 24, och ytterligare 8 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, liksom kontrollinjer för att välja 8- eller 16-bitars överföringar.

16-bitars AT-bussplatsen använde ursprungligen två vanliga kantkontaktuttag i tidiga IBM PC/AT-maskiner. Men med AT-arkitekturens och 16-bitars ISA-bussens popularitet introducerade tillverkarna specialiserade 98-poliga kontakter som integrerade de två uttagen i en enhet. Dessa finns i nästan alla datorer i AT-klass som tillverkades efter mitten av 1980-talet. ISA -kortkontakten är vanligtvis svart (skiljer den från de bruna EISA -kontakterna och de vita PCI -kontakterna).

Antal enheter

Moderkortsenheter har dedikerade IRQ (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 vardera, eller 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 vardera, medan upp till 3 enheter kan använda en 16-bitars DMA-kanal vardera.

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 programvara eller elektriska tidsproblem för vissa ISA kort med busshastigheter de inte var avsedda för. Senare moderkort eller integrerade chipset använde en separat klockgenerator eller en klockavdelare som antingen fixade ISA -bussfrekvensen till 4, 6 eller 8 MHz eller tillät användaren att justera frekvensen via BIOS -inställningen. Vissa ISA-kort (till exempel vissa Hercules-kompatibla grafikkort) kan visa betydande prestandaförbättringar vid högre bussfrekvens .

8/16-bitars inkompatibilitet

Minnesadressavkodning för val 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-bitars kort eftersom de inte kunde samexistera i samma 128 KiB-område. Detta beror på att MEMCS16-raden endast måste ställas in baserat på värdet LA17-23.

Tidigare och nuvarande användning

ISA används än 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 utrustad med två ISA -kortplatser. Det marknadsförs för industriella och militära användare som har investerat i dyra specialiserade ISA -bussadaptrar, som inte finns i PCI -bussversioner.

På samma 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-kortplats.

Den PC / 104 -buss, som används i industriella och inbäddade tillämpningar, är ett derivat av ISA-bussen, med användning av samma signalledningar med olika kontakter. Den LPC -bussen har ersatt ISA-bussen som anslutning till de etablerade och I / O-anordningar om den senaste moderkort; medan det fysiskt är ganska annorlunda, ser LPC ut precis som ISA för programvara, så att särdragen hos ISA, såsom 16 MiB DMA -gränsen (som motsvarar hela adressutrymmet för Intel 80286 CPU som används i den ursprungliga IBM AT) sannolikt kommer att hålla fast runt ett tag.

ATA

Som förklaras i avsnittet Historik var ISA grunden för utvecklingen av ATA -gränssnittet, som används för ATA (aka IDE) och nyligen Serial ATA (SATA) hårddiskar. Fysiskt ä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 och några unika signallinjer specifika för ATA/IDE -hårddiskar (t.ex. kabelväljaren/spindelsynkroniseringslinjen.) Utöver det fysiska gränssnittet kanal, går ATA utöver och långt utanför ISA: s omfattning genom att också ange en uppsättning fysiska enhetsregister som ska implementeras på varje ATA (IDE) -enhet och en fullständig uppsättning protokoll och enhetskommandon för att styra fasta hårddiskar med hjälp av dessa register. ATA-enhetsregistren nås med hjälp av adressbitarna och adressvalsignalerna i ATA: s fysiska gränssnittskanal, och alla operationer på ATA-hårddiskar utförs med hjälp av de ATA-specifika protokollen via ATA-kommandosatsen. 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 -styrenheter (som föregick ATA -kontroller), men de senaste ATA -standarderna har mycket mer komplexa protokoll och instruktionsuppsättningar som inkluderar valfria kommandon och protokoll som tillhandahåller sådana avancerade valfria funktioner som betydande dolda systemlagringsområden, låsning av lösenordssäkerhet och programmerbar geometriöversättning.

En ytterligare avvikelse mellan ISA och ATA är att medan ISA -bussen förblev låst i en enda standardklockfrekvens (för bakåtkompatibel maskinvara) erbjöd ATA -gränssnittet 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 snabbare 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 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 så populärt som ATA har blivit, och XT-IDE-hårdvara är nu ganska svårt att hitta. Vissa XT-IDE-adaptrar fanns som 8-bitars ISA-kort, och XTA-uttag fanns också på moderkortet till Amstrads senare XT-kloner samt en kortlivad serie Philips- enheter. XTA -pinout liknade mycket ATA, men endast åtta datalinjer och två adressrader användes och de fysiska enhetsregistren hade helt olika betydelser. Några hårddiskar (t.ex. Seagate ST351A/X) kan stödja båda typerna av gränssnitt, valda 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 levererade 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 / minneutvidgningsenheten 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

Den PCMCIA specifikationen kan ses som ett 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 en enda stift lågt, så att PCMCIA -hårdvara och firmware inte är nödvändiga för att använda dem som en ATA -enhet ansluten till en ATA -port. PCMCIA -flash -enheter till ATA -adaptrar är således enkla och billiga, men kan inte garanteras att de fungerar med alla vanliga PCMCIA -flashenheter. Sådana adaptrar kan inte användas som generiska PCMCIA -portar, eftersom PCMCIA -gränssnittet är mycket mer komplext än ATA.

Emulering med inbäddade chips

Även om de flesta moderna datorer inte har fysiska ISA-bussar, har nästan alla datorer- x86 och x86-64- ISA-bussar tilldelade i fysiskt adressutrymme. Southbridge , CPU: er och GPU: er själva tillhandahåller tjänster som temperaturövervakning och spänningsmätningar genom dessa bussar som ISA -enheter.

Standardisering

IEEE startade en standardisering av ISA -bussen 1985, kallad P996 -specifikationen. Trots att det till och med har publicerats böcker om P996 -specifikationen gick det aldrig officiellt förbi 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 enkeldatorer baserade på moderna processorer, USB 3.0 och SATA .

Se även

Referenser

Vidare läsning