Кіріспе

GIO компьютерлік шина стандарты — SGI компаниясымен әзірленген және 1990 жылдары олардың негізгі кеңейту жүйесі ретінде көптеген өнімдерінде қолданылған компьютерлік шина стандарты. GIO тұжырымдық тұрғыдан NuBus немесе (кейін) PCI сияқты бәсекелес стандарттарға ұқсас болды, бірақ SGI компаниясынан тыс жерде аз қолданылды, нәтижесінде олардың платформасында қолжетімді құрылғылар шектеулі болды. GIO-ны қолданатын құрылғылардың көп бөлігі SGI-нің өзіндік графикалық карталарынан тұрды, алайда Fibre Channel және FDDI сияқты жоғары жылдамдықты деректерге қол жеткізуді қолдайтын бірнеше карталар үшінші тараптардан да қолжетімді болды. Кейінірек SGI машиналары XIO шинасын пайдаланды, ол шина емес, компьютерлік желі ретінде құрылған.

Сипаттама

Сол дәуірдегі көптеген автобустар сияқты, GIO 32 биттік адрестік және деректерді мультиплекстеу арқылы жұмыс істейтін автобус болды, ол әдетте 25 немесе 33 МГц жиілікте жұмыс істеді. Бұл шина адрестеу және деректерді беру үшін бірдей жолды пайдаланатынын білдіреді, сондықтан бір 32 биттік мәнді беру үшін үш цикл қажет: бір цикл адресті жіберу үшін, келесісі деректерді жіберу үшін, ал соңғысы оны оқу немесе жазу үшін. Бұл автобустың 33 МГц жиіліктегі осындай шағын трансферлер үшін максималды өткізу қабілетін шамамен 16 Мбайт/с деңгейінде шектеді. Дегенмен, жүйеде 4 килобайтқа дейін деректерді (R3000 негізіндегі SGI машиналарындағы негізгі бет өлшемі) үздіксіз беруге мүмкіндік беретін ұзақ сериялы оқу/жазу режимі де болды. Бұл режимді пайдалану өткізу қабілетін 132 Мбайт/с-қа дейін арттырды (циклге 32 бит * 33 МГц). GIO сонымен қатар құрылғыларға қажет болған жағдайда осы ұзақ трансферлерді тоқтатуға мүмкіндік беретін «нақты уақыт» үзілісін де қамтыды. Автобусқа қол жеткізуді бастапқы R3000 негізіндегі SGI Indigo жүйелерінде процессорлық интерфейс контроллері (PIC) басқаратын. Физикалық тұрғыдан алғанда, GIO 96 контактілі жалғауыштарды және 6,44 дюйм (16,3576 см) ұзындығы және 3,375 дюйм (8,5725 см) ені бар салыстырмалы түрде кішкентай карталарды қолданды. Indigo сериясында карталар корпуста тік бойымен бір-бірінің үстіне орналастырылды, бұл аналық тақтаға тік бұрышпен орналастырылатын, көбірек таралған орналасудан өзгеше болды. Бұл «биік және жіңішке» корпус дизайнына әкелді. Карталар бір-бірінің үстінде орналасқандықтан, компьютердің аналық тақтасындағы екі жалғауышқа қосылатын картаны жасауға болады, осылайша қосымша орын пайда болды.

GIO64

GIO кейіннен 64 биттік формаға, GIO64-ке кеңейтілді, бұл оның алдыңғы нұсқасын GIO32 деп қайта атауға әкелді. Адрестеу 32 биттік қалпында болды, бірақ енді жаңа басқару тірегі арқылы үлкен және кіші енді адрестеуге мүмкіндік берді, ал GIO32 тек SGI стиліндегі үлкен енді адрестеуді қолдады. Деректер енді бір уақытта 64 битпен берілуі мүмкін болды, бұл жылдамдықты екі есеге арттырды. GIO64, GIO32-ден гөрі жылдам жұмыс істей алатын, 40 МГц дейін жететін және 320 Мбайт/с максималды дерек ағынын қамтамасыз ететін болды. Бет өлшемдері де процессорлардың өзгеруіне байланысты реттелді, R3000 негізіндегі машиналар үшін 4 килобайттан бастап, R4400 негізіндегі машиналар үшін 16 мегабайтқа дейін. Физикалық тұрғыдан алғанда, GIO64 шинасы EISA карталарымен салыстырылатын, әлдеқайда үлкен карталарды пайдаланды, бұл дамуды жеңілдету және SGI-ге бір машинаға EISA слоттарын орналастыруға мүмкіндік беру үшін қасақана таңдалған. Атап айтқанда, сыртқы жалғауыш (металл жиек) EISA-мен бірдей болды, бірақ тақтаның пішіні сәл өзгеше болды. GIO64-тің екі түрі анықталды. "Құбырсыз" жүйе GIO32 сияқты жұмыс істеді, деректерді тікелей шинада орнату арқылы. Ал жаңа "құбырлы" жүйе нақты тақталарда қолданылды, және атауынан көрініп тұрғанындай, жүйе контроллердің ішкі құбырында кодталған бірнеше қадамдық операцияда деректерді орнатуды жүзеге асырды. Ішкі құбырсыз шина компьютердің әртүрлі бөліктері арасында деректерді тасымалдады, оның ішінде GIO карталары, EISA құрылғылары, SCSI және т.б. GIO карталары уақытты реттеу және басқару үшін құбырлы контроллерді пайдаланды, содан кейін деректер ішкі құбырсыз бөлігі арқылы негізгі жадқа жіберілді.

GIO32-bis

Үшінші стандарт, GIO32 bis, GIO64 сигналдарын және уақытын пайдаланды, бірақ GIO32-нің 32 биттік жалғағыштарымен. Дұрыс жобаланған GIO32 bis карталарын GIO64, GIO32 немесе GIO32 bis ұяларында қолдануға болады, соңғы екеуін түпнұсқа GIO32-де жерге қосылған, ал GIO32 bis-те "жоғары" деңгейге қосылған тігін арқылы ажыратуға болады. Төмен өтімділік карталары үшін GIO32 bis бір құрылғыны GIO-ны қолдайтын кез келген машинада, оның ұрпағына қарамастан пайдалануға мүмкіндік берді.