A Micro Channel architektúrát Chet Heath mérnök tervezte. A kifejlesztett Micro Channel kártyák nagy része a CHIPS P82C612 MCA interfészvezérlőt használta; így az MCA implementációk sokkal egyszerűbbé váltak.
ÁttekintésSzerkesztés
A Micro Channel elsősorban 32 bites busz volt, de a rendszer támogatta a 16 bites üzemmódot is, amelyet az Intel-alapú gépek, például az IBM PS/2, csatlakozók és logika költségeinek csökkentésére terveztek.
A helyzet azonban sosem volt ilyen egyszerű, mivel mind a 32 bites, mind a 16 bites változat kezdetben számos további opcionális csatlakozóval rendelkezett a memóriakártyák számára, ami a buszra csatlakoztatott memóriához fizikailag nem kompatibilis kártyák nagy számát eredményezte. Idővel a memória a CPU helyi buszára költözött, így a probléma megszűnt. Pozitívum, hogy a jelek minősége jelentősen javult, mivel a Micro Channel föld- és tápcsatlakozókat adott hozzá, és úgy rendezte el a csatlakozókat, hogy minimálisra csökkentse az interferenciát; így minden jelhez 3 csapon belül volt egy föld vagy egy tápegység.
Egy másik csatlakozóbővítés a grafikus kártyákhoz került. Ezt a bővítményt a videokártya analóg kimenetére használták, amelyet aztán a rendszerkártyán keresztül a rendszer saját monitor kimenetére vezettek. Ennek az volt az előnye, hogy a Micro Channel rendszerlapok alapszintű VGA vagy MCGA grafikus rendszerrel rendelkezhettek, és a magasabb szintű grafikus kártyák (XGA vagy más gyorsítókártyák) ezután ugyanazt a portot használhatták. A kiegészítő kártyák így mentesülhettek az “örökölt” VGA-módoktól, szükség esetén a fedélzeti grafikus rendszert használhatták, és egyetlen rendszerkártya-csatlakozót tettek lehetővé a továbbfejleszthető grafika számára.
A Micro Channel kártyák egyedi, 16 bites, szoftveresen olvasható azonosítóval is rendelkeztek, amely egy korai plug and play rendszer alapját képezte. A BIOS és/vagy az operációs rendszer képes beolvasni az azonosítókat, összehasonlítani az ismert kártyák listájával, és automatikus rendszerkonfigurációt végezni a megfelelő módon. Ez olyan rendszerindítási hibákhoz vezetett, amikor egy régebbi BIOS nem ismerte fel az újabb kártyát, ami hibát okozott az indításkor. Ez viszont szükségessé tette, hogy az IBM rendszeresen frissített referencialemezeket (The CMOS Setup Utility) adjon ki. Az ismert azonosítók meglehetősen teljes listája elérhető (lásd a Külső hivatkozások részt). Ezekhez a referencialemezekhez ADF fájlok tartoztak, amelyeket a setup olvasott be, ami viszont a kártya konfigurációs információit szolgáltatta. Az ADF egy egyszerű szöveges fájl volt, amely információkat tartalmazott a kártya memóriacímzéséről és megszakításairól.
Noha az MCA kártyák közel kétszer annyiba kerültek, mint a hasonló, nem MCA kártyák, a marketing azt hangsúlyozta, hogy bármely felhasználó számára egyszerű volt a PC-jének frissítése vagy további kártyák hozzáadása, így megspórolva a technikus jelentős költségeit. Ezen a kritikus területen a Micro Channel architektúra legnagyobb előnye egyben a legnagyobb hátránya is volt, és a bukásának egyik fő oka. Egy új kártya (videó, nyomtató, memória, hálózat, modem stb.) hozzáadásához a felhasználó egyszerűen bedugta az MCA-kártyát, és behelyezett egy testreszabott floppylemezt (amely a PC-hez tartozott), hogy az új kártya automatikusan illeszkedjen az eredeti hardverhez, ahelyett, hogy drágán képzett technikust hívott volna, aki kézzel elvégezte volna a szükséges módosításokat. A megszakítások (gyakran zavarba ejtő probléma) és egyéb változtatások kiválasztása automatikusan úgy történt, hogy a PC beolvasta a régi konfigurációt a floppylemezről, amely a szoftverben elvégezte a szükséges változtatásokat, majd az új konfigurációt a floppylemezre írta. A gyakorlatban azonban ez azt jelentette, hogy a felhasználónak meg kellett tartania ugyanazt a floppylemezt az adott PC-hez illesztve. Egy néhány PC-vel rendelkező kis cég számára ez bosszantó, de praktikus volt. A több száz vagy akár több ezer PC-vel rendelkező nagy szervezetek számára azonban logisztikailag valószínűtlen vagy lehetetlen volt, hogy minden PC-hez állandóan saját floppylemezt rendeljenek. Az eredeti, frissített floppylemez nélkül nem lehetett változtatásokat végrehajtani a PC kártyáin. Miután ez a tapasztalat ezerszer megismétlődött, az üzleti vezetők rájöttek, hogy a frissítés egyszerűségére vonatkozó álomforgatókönyvük nem működik a vállalati világban, és jobb eljárást kerestek.
AdatátvitelSzerkesztés
A Micro Channel alapvető adatátviteli sebességét az ISA 8 MHz-ről 10 MHz-re növelték. Ez az órajelek tekintetében szerény növekedés lehetett, de a nagyobb buszszélesség, valamint a burst módú átvitelt kihasználó dedikált buszvezérlő azt jelentette, hogy a tényleges átviteli sebesség akár ötször nagyobb volt, mint az ISA-nál. A gyorsabb átvitelhez a címbusz újra felhasználható volt az adatok számára, ami tovább növelte a busz effektív szélességét. Míg a 10 MHz-es sebesség 40 MB/s átviteli sebességet tett lehetővé 32 bites szélesség mellett, az RS/6000 gépek későbbi modelljei az adatátviteli sebességet 20 MHz-re, az átviteli sebességet pedig 80 MB/s-ra növelték. A Micro Channel busz néhány nagyobb áteresztőképességű funkciója csak az RS/6000 platformon volt elérhető, és kezdetben nem támogatták az Intel platformon működő kártyák.
A buszmesterrel minden kártya közvetlenül beszélhetett a másikkal. Ez a CPU-tól független teljesítményt tett lehetővé. A multi-master kialakítás egyik lehetséges hátránya a lehetséges ütközések voltak, amikor egynél több kártya próbált buszmesterré válni, de a Micro Channel tartalmazott egy arbitrációs funkciót, amely korrigálta ezeket a helyzeteket, és lehetővé tette azt is, hogy egy master burst-módot használjon. A Micro Channel kártyák 12 ezredmásodpercig teljes irányítással rendelkeztek. Ez elég hosszú idő volt ahhoz, hogy a buszon lévő más eszközök maximális száma pufferelhesse a bejövő adatokat az olyan túlfutó eszközökről, mint a szalag és a kommunikáció.
A több buszmester támogatása és a továbbfejlesztett arbitráció azt jelenti, hogy több ilyen eszköz egymás mellett létezhet és megoszthatja a rendszerbuszt. A Micro Channel buszmester-képes eszközök akár arra is használhatják a buszt, hogy közvetlenül beszéljenek egymással (peer to peer) a rendszer CPU-nál gyorsabb sebességgel, minden más rendszerszintű beavatkozás nélkül. Elméletileg a Micro Channel architektúrájú rendszerek a nagyszámítógépekhez hasonlóan csak intelligens mesterek hozzáadásával bővíthetők, anélkül, hogy a központi processzort rendszeresen frissíteni kellene.
A döntőbíráskodás javítása jobb rendszerátbocsátást biztosít, mivel a vezérlés hatékonyabban halad át. A fejlett megszakításkezelés a szintérzékeny megszakítások használatára utal a rendszerkérések kezelésére. A dedikált megszakítási vonal helyett több vonal is megosztható, hogy több lehetséges megszakítás legyen, ami megoldja az ISA-busz megszakítási vonalakkal kapcsolatos konfliktusproblémákat.
A Micro Channel architektúrán minden megszakításkérő jel “nyilvános” volt, ami lehetővé teszi, hogy a buszon bármely kártya I/O processzorként működjön az I/O eszközök megszakításainak közvetlen kiszolgálása érdekében. Az ISA az ilyen feldolgozást csak a rendszer CPU-jára korlátozta. Hasonlóképpen a buszmester kérő és engedélyező jelek is nyilvánosak voltak, így a buszhoz csatlakozó eszközök figyelemmel kísérhették a késleltetést, hogy az I/O processzorok belső pufferelését szabályozhassák. Ezeket a funkciókat a PCI nem vette át, így minden I/O-támogatásnak kizárólag a rendszerkártya processzorától kellett származnia.
A Micro Channel architektúra utolsó jelentős fejlesztése a POS, a Programmable Option Select volt, amely lehetővé tette, hogy minden beállítás szoftveresen történjen. Ez a funkció ma már magától értetődőnek számít, de akkoriban az ISA-rendszerek esetében a beállítás nagy fáradtságot jelentett. A POS egy egyszerű rendszer volt, amely eszközazonosítókat tartalmazott a firmware-ben, amelyeket a számítógépben lévő illesztőprogramoknak kellett értelmezniük. (Ezt a fajta szoftveres konfigurációs rendszert ma plug and play néven ismerjük.) A funkció nem igazán váltotta be a hozzá fűzött reményeket; az automatikus konfiguráció jó volt, amikor működött, de gyakran nem működött – ami indíthatatlan számítógépet eredményezett -, és a probléma megoldása kézi beavatkozással sokkal nehezebb volt, mint egy ISA-rendszer konfigurálása, nem utolsósorban azért, mert az MCA-eszköz dokumentációja hajlamos volt feltételezni, hogy az automatikus konfiguráció működni fog, és így nem adta meg a szükséges információkat a kézi beállításhoz, ellentétben az ISA eszköz dokumentációjával, amely szükségszerűen teljes részleteket tartalmazott (azonban az ISA esetében az összes IRQ beállítás fizikai eltávolítása és ellenőrzése, majd az új IRQ megkeresése és beállítása egy új eszközhöz – ha volt megfelelő – egyáltalán nem volt szórakoztató, és sok felhasználót meghaladott….nyilvánvaló, hogy miért tettek kísérletet a szoftveres arbitrált konfigurációra való áttérésre, és hogy ez később miért volt sikeres a PnP formájában.)