Standard ISA Układ przerwan

Standard ISA
Standard ISA posiada 16-bitową, dwukierunkową szynę danych (SD0...SD7, SD8...SD15) i 24-bitową szynę adresową (SA0...SA19, LA17...LA23). Złącze ISA składa się z dwóch sekcji: 62-stkowej, z 8-bitową szyną danych i 36-stykowej, umożliwiającej rozszerzenie szyn danych do 16 bitów.
Szyna adresowa (SA0...SA19) umieszczona na 62-stykowej (8-bitowej) sekcji złącza ISA pozwala zaadresować 1 MB (zwany inaczej zerowym megabajtem) pamięci. Sygnał SMEMW jest aktywny tylko w przypadku zapisu danych do pamięci zawartej w tym obszarze, a sygnał SMEMR - aktywny dla odczytu danych tylko z tego obszaru. Sygnały te mogą być generowane przez mikroprocesor lub przez układy obsługujące transmisję DMA.
Linie adresowe SA0...SA19 wraz z liniami LA17...LA23 umożliwiają adresowanie pamięci do 16 MB. Linie L17...L23 wykorzystywane są jako sygnały wyjściowe dekoderów pamięci; sygnały te nie są zapamiętywane w rejestrach. Zapis danych do całego 16-megabajtowego obszaru pamięci możliwy jest przy aktywnym sygnale MEMW, odczyt przy aktywnym sygnale MEMR.
Maksymalna przestrzeń adresowa przeznaczona dla portów wejścia/wyjścia magistrali ISA wynosi 64 KB (16 linii adresowych SA). Pierwszych 256 adresów zarezerwowanych jest dla układów znajdujących się z reguły na płycie głównej (rejestry kontrolerów DMA, kontrolerów przerwań, zegara czasu rzeczywistego, itd.). Zapis danych do portu odbywa się przy aktywnym sygnale IOW (Input/Output Write), natomiast odczyt - przy aktywnym sygnale IOR (Input/Output Read).
Lina MASTER umożliwia przejecie sterowania zasobami systemu przez urządzenie zewnętrzne. Realizowane to jest poprzez zgłoszenie żądania cyklu DMA linią DRQ, a po akceptacji zgłoszenia (DACK), ustawienie linii MASTER w stan niski. Stan ten powoduje odłączenie od szyn danych, adresowych oraz linii sterujących mikroprocesorem i układów DMA. Sterowanie tymi szynami może być przejęte przez urządzenie zewnętrzne. Sygnał MASTER nie może trwać dłużej niż 15 mikrosekund, gdyż po tym czasie procesor musi wykonać rutynowe odświeżania pamięci DRAM.
Wszystkie operacje zapisu lub odczytu taktowane są zegarem magistrali CLK o częstotliwości ok. 8 MHz. Teoretyczna maksymalna szybkość przesyłania danych wynosi więcej 8 MB/s. Jest to, w porównaniu z szybkością procesora wąskie gardło, powodujące spowolnienie przcy komputera.

Sygnał RESET zeruje układy zewnętrzne w trakcie załączania napięć zasilających lub w trakcie zerowania systemu klawiszem RESET. Do złącza ISA doprowadzone są napięcia +5V, -5V, +12V, -12V umożliwiające zasilanie zainstalowanych tam kart.
Transmisję w trybie bezpośredniego dostępu do pamięci (DMA) zrealizowano w oparciu o dwa kontrolery 8237A (jak na rysunku) połączone kaskadowo. Jeden kontroler obsługuje transmisje 8-bitowe (kanały 0...3), drugi zaś transmisje 16-bitowe (kanały 5...7). Za pomocą linii DRQ, urządzenie żąda transmisji w trybie DMA. Kontroler DMA akceptuje zgłoszenie transmisji za pomocą linii DACK.
Sygnał AEN (generowany przez mikroprocesor) informuje wszystkie urządzenia dołączone do szyn ISA o przejęciu kontroli przez DMA nad szyną adresową.
System przerwań zawiera dwa kontrolery 8259 połączone kaskadowo. Układ 1 obsługuje przerwania o numerach od 0 do 7, przy czym przerwanie o numerze 2 (IRQ2) pochodzi od drugiego kontrolera 8259. Układ drugi obsługuje przerwania o numerach od 8 do 15. Sygnały żądania przerwania IRQ0, IRQ1, IRQ8 i IRQ13 generowane są przez układy znajdujące się standardowo na płycie głównej
Magistrala PCI
Magistrala lokalna PCI (ang. Peripheral Component Interconnent - standard połączeń układów peryferyjnych) została opracowana przez firmę INTEL w roku 1992, z myślą o obsłudze kart wymagających dużych szybkości transmisji (np. kontroler dysków twardych, kart sieciowych, graficznych itd.). Magistrala PCI taktowana zegarem o częstotliwości 33 MHz, przesyła dane całą szerokości 32-bitowej szyny, osiągając tym samym maksymalną szybkość transmisji 132 MB/s. Wszystkie współczesne płyty główne wyposażone są w kilka gniazd PCI.
Rysunek obok prezentuje wygląd złącza oraz funkcje niektórych linii magistrali PCI.
Magistrala PCI wyposażona jest w 32-bitową multipleksowaną szynę adresową/danych AD[31:0], taktowaną zegarem CLK o częstotliwości 33 MHz.
Procesor transmisji danych wykonany jest w trybie przesyłania seryjnego (ang. Burst). W pierwszym cyklu inicjującym transmisję wystawiany jest adres początkowy, zaś w następnych cyklach przesyłane są dane, przy czym ich ilość nie jest limitowana. Standard PCI wyróżnia dwa rodzaje współpracujących ze sobą urządzeń: urządzenia inicjujące transmisję (inicjatory) i urządzenia docelowe. Transmisję danych rozpoczyna inicjator, który na szynie AD [31:0] wystawia adres urządzenia docelowego, a na liniach C/BE [3:0] - kod rodzaju operacji (przykładowe kody operacji we/wy: 0010 - odczyt danych, 0011 - zapis danych). Inicjator uaktywnia również sygnał FRAME (początek wysyłania ramki). Wybrane urządzenie docelowe odpowiada uaktywnieniem sygnału DEVSEL. W ciągu kolejnych taktów zegara przesyłane są dane, oczywiście tylko wtedy, gdy aktywne będą linie: IRDY - inicjator gotowy, TRDY - urządzenie docelowe gotowe. Jeśli jeden z tych dwóch sygnałów jest nieaktywny, następuje stan oczekiwania.
Magistrala PCI została zaprojektowana dla kart zasilanych napięciem 5V i 3.3V. Różnice pomiędzy złączani tych kart przedstawione są na rysunku. Istniej również możliwość zainstalowania w gnieździe PCI karty "uniwersalnej" zasilanej napięciem 5V lub 3.3V - karta taka posiada złącze z dwoma wycięciami.
Specyfikacja PCI przewiduje również możliwość współpracy z 64-bitową szyną danych. Magistral 64-bitowa taktowana zegarem 33 MHz mogłaby osiągnąć maksymalną szybkość wymiany danych równą 264 MB/s. Oczywiście magistrala ta wymaga zastosowania złączy 64-bitowych (dłuższych niż 32-bitowe). Projektanci PCI przewidzieli możliwość instalowania kart 32-bitowych w gnieździe 64-bitowym oraz 64-bitowych w gnieździe 32-bitowym (w ty ostatnim przypadku karta 64-bitowa pracuje jako 32-bitowa).
Magistrala PCI wyposażona jest w automatyczną konfigurację - procedury BIOS automatycznie konfigurują każde nowe urządzenie dołączone do magistrali, uwzględniają przy tym parametry konfiguracyjne innych kart dołączonych wcześniej do magistrali.
Złącze AGP
Szybki port graficzny AGP (Accelerated Graphics Port), produkt firmy Intel, służy do obsługi zaawansowanej trójwymiarowej grafiki. Większość współczesnych płyt głównych wyposażona jest w złącze AGP.
Standard AGP umożliwia bezpośrednią transmisję danych pomiędzy pamięcią operacyjną RAM płyty głównej, a procesorem graficznym, bez potrzeby angażowania pamięci lokalnej sterownika graficznego. Technika ta nosi nazwę DIME (ang. Direct Memory Execute). Fakt ten pozwala ograniczyć pojemność pamięci lokalnej sterownika (do kilku-kilkunastu MB, bez pogarszania jej wydajności). Pojemność obszaru pamięci operacyjnej RAM, wykorzystywanego przez AGP, jest zmienna i zależna od użytego programu, może zajmować np. dla trójwymiarowej grafiki aż do kilkunastu MB.
Specyfikacja AGP opisuje trzy standardy. Każdy z nich zakłada taktowanie 32-bitowej szyny adresowej/danych AD[31:0] z częstotliwością CLK, równą 66MHz.
·    AGP 1x pozwala osiągnąć·     szybkość·     transmisji 264 MB/s (4 bajty pomnożone przez 66 MHz),
·    AGP 2x, w którym maksymalny transfer jest dwukrotnie wyższy i wynosi 528 MB/s (szyna AGP taktowana jest każdym zboczem opadającym i narastającym zegara, zwiększając dwukrotnie szybkość·     transmisji),
·    AGP 4x zakłada dalsze dwukrotne zwiększenie szybkości transmisji danych, dzięki wykorzystaniu każdego narastającego i opadającego zbocza, standardowego sygnału (interfejsu AGP) AD_STB, którego częstotliwość·     jest dwukrotnie większa od częstotliwości zegara CLK.
·    Jest ich kilka rodzajów:
·    AGP 1.0 - napięcie sygnalizujące 3.3V oraz mnożniki 1x oraz 2x
·    AGP 2.0 - napięcie sygnalizujące 1.5V oraz mnożniki 1x, 2x oraz 4x
·    AGP 3.0 - napięcie sygnalizujące 0.8V oraz mnożniki 4x oraz 8x
Złącze AMR (Audio/Modem Riser)
Urządzenie służące do obróbki sygnałów dźwiękowych (takie jak karty dźwiękowe, modemy, itd.) wyposażone są w układy wzajemnie dublujące się. Do układów tych należy np. cyfrowy procesor sygnałowy (ang. Digital Signal Processor, DSP), w który wyposażone są i modem i karta dźwiękowa. Dlatego też konstruktorzy Intela zaproponowali przeniesienie wspólnej części cyfrowej urządzeń audio na płytę główną i umieszczenie jej w oddzielnym układzie o nazwie Audio Digital Controller lub zintegrowanie jej z chipsetem. W ten sposób powstał interfejs, łączący części: cyfrową i analogową urządzeń audio, o nazwie Audio Codec '97 (AC '97).

Aby lepiej zrozumieć ideę specyfikacji AC '97, prześledzimy drogi sygnałów z/do urządzeń audio (rysunek obok). Sygnał analogowy pochodzący z mikrofonu (MIC) lub z innego źródła (LINE_IN) poddawany jest zmiksowaniu lub wzmocnieniu w układzie multipleksera analogowego, a następnie przetwarzaniu analogowo/cyfrowemu. Powyższe czynności wykonuje układ zwany kodem audio. Tak uformowana postać cyfrowa sygnału audio przesyłana jest linią SDATA_IN interfejsu AC '97 do układu Audio Digital Controller.
W przypadku operacji wyjściowych, postać cyfrowa sygnału audio przesyłana jest z układu Audio Digital Controller linią SDATA_OUT interfejsu AC '97 na wejście dekodera audio, gdzie zostaje zmieniona na postać analogową, a następnie poddana wzmocnieniu, pojawia się na wyjściu dekodera (LINE_OUT).
Koder i dekoder audio tworzą wspólny układ o angielskiej nazwie Audio Codec. Układ ten jest odpowiednikiem części analogowej karty dźwiękowej i podobnie jak on obsługuje następujące złącza analogowe audio:
·    4-stykowe złącze wejściowe Video In, umożliwiające podłączenie sygnału fonii stereo z tunera telewizyjnego,
·    4-stkowe złącze wejściowe CD In, sygnału fonii stereo z napędu CD, łączone kablem z wyjściem Audio napędu CD,
·    4-stykowe pomocnicze złącze wejściowe sygnału fonii stereo (AUX In),
·    4-stykowe złącze TAD (ang. Telephone Answering Device) połączone kablem z takim samym złączem, znajdującym się na karcie modemu, umożliwia odbiór i nadawanie poprzez modem wiadomości głosowych; dwa styki tego złącza Phone i masa służą do przesyłania wiadomości z modemu do układu kodera/dekodera audio, wiadomość·     odwrotna przesyłana jest do modemu za pomocą styków; Mono Out i masa.
Poszczególnym stykom złącz Video In i CD In i AUX In przyporządkowano następujące sygnały: kanał lewy fonii, masa, masa, kanał prawy fonii.
Koder/dekoder audio obsługuje również typowe złącza stereofoniczne, umieszczone na "śledziu" karty dźwiękowej: Line Out, Line In, Mic In.
Dane cyfrowe przesyłane są liniami SDATA_IN oraz SDATA_OUT w postaci ramek, synchronizowanych impulsami SYNC, z częstotliwością 48 kHz (z taką częstotliwością przetwarzany jest sygnał audio przez układy cyfrowe). Przesyłanie bitów wchodzących w skład ramek synchronizowane jest za pomocą sygnału BIT_CLK (z częstotliwością 12,288 MHz). Audio Codec wytwarza więc 48000 ramek na sekundę. Na przykład - ramka wejściowa zawiera dwie 20-bitowe próbki sygnałów pochodzących z aktualnie użytkowanego wejścia audio oraz jedną próbkę pochodzącą z modemu (z wejścia Phone).

Scalony układ audio Codec może być montowany bezpośrednio na płycie głównej komputera (wtedy wszystkie omówione złącza analogowe znajdą się na tejże płycie) lub na specjalnych kartach instalowanych w 46-stkowym złączy AMR płyty głównej. Styki tego złącza połączone są liniami interfejsu AC '97. Karta AMR może posiadać kilka układów typu CODEC, w zależności od funkcji, jakie ma pełnić.
Rysunek obok ilustruje przykład karty, integrującej funkcje karty dźwiękowej i modemu. Złącze AMR posiada cztery linie SDATA_IN (0-3), umożliwiające pracę z czterema układami CODEC. Obecnie niektóre współczesne płyty główne posiadają już złącze AMR, umożliwiając instalowanie kart rozszerzeń z interfejsem AC '97.
Złącze CNR
Konstruktorzy Intel zintegrowali z układem chipset - South Bridge kontroler sieci lokalnej (ang. LAN - Local Area Network). Fakt ten pozwoli uprościć konstrukcję karty sieciowej, która będzie zawierać jedynie przetworniki A/C i C/A oraz część analogową.
W ten sposób powstał standard CNR (ang. Communications and Networking Riser), który jest dalszym rozwinięciem standardu AMR. Złącze CNR obsługuje więc interfejsy AC '97 i LAN. Niestety złącza AMR i CNR nie są ze sobą zgodne ani mechanicznie, ani elektronicznie, w związku z powyższym karta AMR nie pasuje do złącza CNR.
Rysunek ilustruje przykład karty CNR, integrującej funkcje modemu i karty sieciowej. Produkowane są również karty, integrujące funkcje karty dźwiękowej i modemu lub karty dźwiękowej i karty sieciowej.
PCI-s (PCIe, PCI-E), znana również jako 3GlO (od 3rd Generation I/O), jest pionową magistralą służącą do podłączania urządzeń do płyty głównej. Zastąpiła ona magistralę PCI oraz AGP.
PCI-Express stanowi magistralę lokalną typu szeregowego, łączącą dwa punkty (Point-to-Point). Nie jest to więc magistrala w tradycyjnym rozumieniu, i nie jest rozwinięciem koncepcji "zwykłego" PCI w związku z czym nie jest z nim kompatybilne. Taka konstrukcja eliminuje konieczność dzielenia pasma pomiędzy kilka urządzeń - każde urządzenie PCI-Express jest połączone bezpośrednio z kontrolerem. Sygnał przekazywany jest za pomocą dwóch linii, po jednej w każdym kierunku. Częstotliwość taktowania wynosi 2,5 GHz. Protokół transmisji wprowadza dwa dodatkowe bity, do każdych ośmiu bitów danych (kodowanie 8/10). Zatem przepustowość jednej linii wynosi 250 MiB/s. W związku z tym, że urządzenia mogą jednocześnie przekazywać sygnał w obydwu kierunkach (full-duplex) to można ewentualnie przyjąć, że w przypadku takiego wykorzystania złącza, transfer może sięgać 500 MiB/s. Możliwe jest kilka wariantów tej magistrali - z 1, 2, 4, 8, 12, 16 lub 32 liniami (każda składająca się z dwóch 2-pinowych części - nadawczej i odbiorczej). Wraz ze wzrostem liczby linii wydłużeniu ulega gniazdo, jego konstrukcja (poprzez wspólną część początkową i jedynie dodawanie na końcu nowych linii) umożliwia włożenie wolniejszej karty do szybszego gniazda (w drugą stronę jest niemożliwe). Gniazdo 1x ma 18 pinów z każdej strony, gniazdo x4 - 32, gniazdo x8 - 49, zaś gniazdo x16 - 82 piny z każdej strony.
Na płytach głównych gniazda 16x montuje się zwykle w miejscu gniazda AGP na starszych płytach (ponieważ większość chipsetów z kontrolerem PCI Express nie zawiera kontrolera AGP, najczęściej obecność PCI-E eliminuje możliwość użycia kart graficznych ze złączem AGP. Przykłady chipsetów obsługujących zarówno AGP jak i PCI-E to: Via PT880 Pro dla procesorów Intela i ULi M1695 + ULI M1567 dla procesorów AMD), pod nim gniazda x8, x4 i x1, najdalej zaś od procesora - gniazda PCI.