toyanie podtverzhdeniya zahvata shiny. Sostoyanie podtverzhdeniya zahvata predpolagaet pochti polnuyu izolyaciyu processora. Signal HLDA v etom sostoyanie - edinstvennyj signal, vydavaemyj 80386. Drugie vyhodnye signaly ili dvunapravlennye signaly (D0-D31, BE0#-BE3#, A2-A31, W/R#, D/C#, M/IO#, LOCK# i ADS#) pereklyuchayutsya v tret'e (vysokoimpedansnoe) sostoyanie, poetomu zaprosivshee shinu ustrojstvo mozhet zahvatit' ih. K nekotorym signal'nym liniyam zhelatel'no podsoedinit' fiksiruyushchie rezistory dlya togo, chtoby izbezhat' lozhnoe srabatyvanie po etim signalam, kogda oni ne formiruyutsya tekushchim vladel'cem shiny (sm. 7.2.3 Rekomendacii po vyboru i primeneniyu rezistorov). Krome togo, odin ispol'zuemyj front, kotoryj mozhet byt' sformirovan na vhode NMI vo vremya sostoyaniya podtverzhdeniya zahvata, zapominaetsya s tem, chtoby on byl proanalizirovan i obrabotan posle snyatiya signala HOLD. Krome obychnogo ispol'zovaniya sostoyaniya podtverzhdeniya zahvata pri vzaimodejstvii 80386 s kontrollerami PDP (pryamogo dostupa k pamyati) ili aktivnymi periferijnymi ustrojstvami, sostoyanie pochti polnoj izolyacii processora osobenno udobno ispol'zovat' v rezhime testirovaniya sistemy, kogda testovoe oborudovanie upravlyaet sistemoj, a takzhe v otkazoustojchivyh sistemah. 6.2.8 Signaly interfejsa s soprocessorom 6.2.8.1Vvedenie V sleduyushchih paragrafah etogo razdela dano opisanie signalov, prednaznachennyh dlya interfejsa s arifmeticheskim soprocessorom. |ti signaly, dopolnyaya signaly shiny dannyh, shiny adresa i signaly opredeleniya tipa cikla shiny, upravlyayut vzaimodejstviem 80386 s ego soprocessorom 80287 ili 80387. 6.2.8.2Zapros soprocessora (PEREQ) Aktivnyj uroven' etogo signala ukazyvaet na to, chto soprocessor trebuet, chtoby v otvet na ego zapros operandy dannyh byli peredany v/iz pamyati. Aktivnyj uroven' etogo vhodnogo signala ukazyvaet na zapros soprocessora na peredachu processorom 80386 operanda dannyh v/iz pamyati, v otvet na etot zapros 80386 peredaet informaciyu mezhdu a./`.f%aa.`., i pamyat'yu. Poskol'ku v 80386 hranitsya kod operacii, vypolnyaemoj soprocessorom, 80386 osushchestvlyaet zaproshennuyu peredachu dannyh v zadannom napravlenii i po zadannomu adresu pamyati. 80386 analiziruet i srabatyvaet po urovnyu signala PEREQ. Signal PEREQ mozhet byt' asinhronnym po otnosheniyu k CLK2. 6.2.8.3Soprocessor zanyat (BUSY#) Aktivnyj uroven' etogo signala ukazyvaet na to, chto soprocessor eshche vypolnyaet zadannuyu tekushchuyu instrukciyu i poka ne mozhet prinyat' druguyu instrukciyu. Kogda 80386 vstrechaet lyubuyu instrukciyu soprocessora, kotoraya operiruet s arifmeticheskim stekom (stekom soprocessora) (t.e. instrukcii zagruzki, "POP" - instrukcii (ubrat' v stek) ili arifmeticheskie operacii), ili instrukciyu ozhidaniya WAIT, on srazu avtomaticheski analiziruet sostoyanie vhodnogo signala BUSY# i budet prosmatrivat' ego do teh por, poka BUSY# ne pereklyuchitsya v neaktivnoe sostoyanie. Takoj prosmotr vhodnogo signala BUSY# predotvrashchaet prezhdevremennuyu vydachu sleduyushchej instrukcii vo vremya vypolneniya soprocessorom predydushchej instrukcii. Instrukciya soprocessora FNINIT i FNCLEX mogut byt' vypolneny dazhe pri nalichii aktivnogo urovnya na vhode BUSY#, tak eti instrukcii ispol'zuyutsya dlya inicializacii i preryvaniya-sbrosa soprocessora. 80386 analiziruet i srabatyvaet po urovnyu signala BUSY#. Signal BUSY# mozhet byt' asinhronnym po otnosheniyu k CLK2. Signal BUSY# sluzhit eshche odnoj celi. Esli vo vremya otricatel'nogo fronta signala RESET na vhode BUSY# imeetsya signal nizkogo urovnya, to 80386 vypolnit proceduru samo diagnostirovaniya (sm. 6.6.3 Funkcionirovanie shiny v techenie i posle dejstviya signala RESET). Esli zhe v etot moment signal BUSY# budet imet' vysokij uroven', to samo diagnostirovanie vypolnyat'sya ne budet. 6.2.8.4Oshibka soprocessora (ERROR#) |tot vhodnoj signal ukazyvaet na to, chto pri vypolnenii soprocessorom predydushchej instrukcii im byl sformirovan kod oshibki, nemaskiruemyj upravlyayushchim registrom soprocessora. Pri vypolnenii soprocessorom instrukcii processor 80386 avtomaticheski analiziruet vhodnoj signal ERROR#, i esli ustanovitsya aktivnyj uroven' signala ERROR#, to 80386 vyrabatyvaet preryvanie 7, chtoby obratit'sya k programmam obrabotki oshibok. Nekotorye instrukcii soprocessora, v osnovnom te, kotorye sbrasyvayut flagi arifmeticheskih oshibok v soprocessore ili sohranyayut sostoyanie soprocessora, ispolnyayutsya bez vyrabotki processorom 80386 preryvaniya 7, dazhe esli ustanovleno aktivnoe sostoyanie signala ERROR#. K takim instrukciyam otnosyatsya FNINIT, FNCLEX, FSTSW, FSTSWAX, FSTCW, FSTENV, FSAVE, FESTENV i FESAVE. 80386 analiziruet i srabatyvaet po urovnyu signala ERROR#. Signal ERROR# mozhet byt' asinhronnym po otnosheniyu k CLK2. Signal ERROR# vypolnyaet eshche odnu funkciyu. Esli nizkij uroven' signala ERROR# ustanovitsya ne pozzhe, chem cherez 20 periodov taktovoj chastoty CLK2 posle otricatel'nogo fronta signala RESET, i sohranitsya takim po men'shej mere do teh por, poka 80386 ne nachnet svoj pervyj cikl shiny, to eto ukazyvaet na to, chto v sisteme ispol'zuetsya soprocessor tipa 80387 (razryad ET v registre CR0 avtomaticheski ustanavlivaetsya v 1). V obratnom sluchae v sisteme ispol'zuetsya soprocessor tipa 80287 ili ne ispol'zuetsya nikakoj (razryad ET v registre CR0 avtomaticheski ustanavlivaetsya v 0). Sm. 6.6.3 Funkcionirovanie shiny v techenie i posle dejstviya signala RESET. Izmenenie signala na vyhode ERROR# vliyaet na ustanovku b.+l*. bita ET. Programmno ustanavlivayutsya neobhodimye znacheniya bitov EM i MP v registre CR0. Sledovatel'no, dlya razlicheniya sluchaya nalichiya v sisteme soprocessora tipa 80287 ot sluchaya, kogda v sisteme voobshche net soprocessora, neobhodimo programmnoe zadanie sootvetstvuyushchego znacheniya bita EM v registre CR0 (edinichnoe znachenie bita EM ustanavlivaetsya v sluchae, kogda v sisteme net soprocessora). Esli analiz izmeneniya sostoyaniya signala ERROR# pokazal nalichie v sisteme 80387 (signal ERROR ustanovlen v nizkoe sostoyanie posle sbrosa), no pozdnee programmno ustanovleno edinichnoe sostoyanie bita EM (EM=1), to 80386 vedet sebya tak, kak esli by v sisteme ne bylo soprocessora. 6.2.9 Signaly preryvaniya 6.2.9.1Vvedenie V etom razdele opisyvayutsya vhodnye signaly, kotorye mogut preryvat' ili priostanavlivat' vypolnenie processorom tekushchego nabora instrukcij. 6.2.9.2Maskiruemyj zapros preryvaniya (INTR) Aktivnyj uroven' etogo vhodnogo signala oboznachaet zapros na obsluzhivanie preryvaniya, kotoroe mozhet byt' zamaskirovano bitom IF flagovogo registra Flag Register 80386. V otvet na vhodnoj signal INTR 80386 vypolnyaet dva cikla podtverzhdeniya preryvaniya i v konce vtorogo cikla "zashchelkivaet" 8-bitovyj vektor preryvaniya, prinyatyj po liniyam D0-D7, chtoby identificirovat' istochnik preryvaniya. 80386 analiziruet uroven' i srabatyvaet po urovnyu signala INTR. Signal INTR mozhet byt' asinhronnym po otnosheniyu k CLK2. Dlya togo, chtoby garantirovat' opoznanie processorom maskiruemogo zaprosa preryvaniya, aktivnyj uroven' signala INTR dolzhen podderzhivat'sya do nachala pervogo cikla podtverzhdeniya preryvaniya. 6.2.9.3Nemaskiruemyj zapros preryvaniya (NMI) |tot vhodnoj signal opredelyaet zapros na obsluzhivanie preryvaniya, kotoroe ne mozhet byt' programmno zamaskirovano. Zapros nemaskiruemogo preryvaniya vsegda obrabatyvaetsya po programme, adres nachala kotoroj ukazan v elemente (pozicii) 2 tablicy preryvanij. Kogda obrabatyvaetsya NMI, to blagodarya fiksirovannomu znacheniyu pozicii tablicy preryvanij, sootvetstvuyushchej NMI, cikly podtverzhdeniya preryvaniya ne vypolnyayutsya. 80386 analiziruet i srabatyvaet po polozhitel'nomu frontu signala NMI. Signal NMI mozhet byt' asinhronnym po otnosheniyu k signalu CLK2. CHtoby garantirovat' opoznanie signala NMI, poslednij dolzhen imet' neaktivnyj uroven' po men'shej mere v techenie 8-i periodov CLK2, i zatem dolzhen byt' ustanovlen i podderzhivat'sya aktivnyj uroven' signala NMI po men'shej mere v techenie 8-i periodov CLK2. Kak tol'ko nachinaetsya obrabotka zaprosa preryvaniya NMI, drugie zaprosy NMI obrabatyvat'sya ne budut do poyavleniya ocherednoj instrukcii IRET, kotoraya oznachaet konec procedury obsluzhivaniya preryvaniya NMI. Odnako, esli vse-taki ran'she etogo vremeni snova budet sformirovan aktivnyj uroven' signala NMI, to odin polozhitel'nyj front signala NMI budet zapomnen dlya posleduyushchej obrabotki posle vypolneniya ocherednoj instrukcii IRET. 6.2.9.4Signal sbrosa (ustanovki v ishodnoe sostoyanie){RESET} |tot vhodnoj signal ostanavlivaet vypolnenie lyuboj operacii i perevodit 80386 v sostoyanie, izvestnoe kak sostoyanie sbrosa. Sbros 80386 proizvoditsya ustanovkoj aktivnogo urovnya signala RESET v techenie 15-i ili bolee periodov CLK2 (za 78 ili bolee periodov CLK2 do zaprosa samo diagnostirovaniya). Kogda ustanovlen aktivnyj c`."%-l signala RESET, signaly na vseh ostal'nyh vhodnyh vyvodah ignoriruyutsya, a shinnye vyvody perevodyatsya v nerabochee sostoyanie kak pokazano v tabl.5-3. Esli odnovremenno ustanovleny aktivnye urovni signalov RESET i HOLD, to bolee prioritetnym budet signal RESET. Sbros po signalu RESET budet proizveden, dazhe esli 80386 nahodilsya v sostoyanii podtverzhdeniya zahvata do ustanovki RESET. 80386 analiziruet i srabatyvaet po urovnyu (aktivnomu ili neaktivnomu) signala RESET. Signal RESET mozhet byt' asinhronnym po otnosheniyu s CLK2. Esli neobhodimo, faza vnutrennego sinhrosignala processora, a takzhe celoe sostoyanie 80386 mogut byt' polnost'yu sinhronizirovany s vneshnimi shemami, esli obespechit' neobhodimye dlya etogo znacheniya vremeni ustanovki t25 i vremeni uderzhaniya t26 otricatel'nogo fronta signala RESET. Tablica 6-3 SOSTOYANIE VYVODOV (NERABOTAYUSHCHEJ SHINY) V TECHENIE DEJSTVIYA SIGNALA RESET +-----------------------------------------------------------------+ | OBOZNACHENIE VYVODOV | UROVNI SIGNALOV VO VREMYA SBROSA RESET | +-------------------------+---------------------------------------| | ADS# | VYSOKIJ | +-------------------------+---------------------------------------| | D0-D31 | TRETXE SOSTOYANIE (VYSOKIJ IMPEDANS) | +-------------------------+---------------------------------------| | BE0#-BE3# | NIZKIJ | +-------------------------+---------------------------------------| | A2-A31 | VYSOKIJ | +-------------------------+---------------------------------------| | W/R# | VYSOKIJ | +-------------------------+---------------------------------------| | D/C# | VYSOKIJ | +-------------------------+---------------------------------------| | M/IO# | NIZKIJ | +-------------------------+---------------------------------------| | LOCK# | VYSOKIJ | +-------------------------+---------------------------------------| | HLDA | NIZKIJ | +-----------------------------------------------------------------+ 6.2.10 Spisok signalov V tabl.6-4 perechisleny signaly processora 80386 i privedeny nekotorye ih harakteristiki. Tablica 6-4 PERECHENX SIGNALOV 80386 +------------------------------------------------------------------------------+ | NAZVANIE | FUNKCII | AKTIVNYJ | VHOD/ | VHOD | PEREKLYUCHAETSYA | | SIGNALA | SIGNALA | UROVENX | VYHOD | SINHRONNYJ | LI VYHOD | | | | | | ILI | V TRETXE | | | | | | ASINHRONNYJ | VYSOKOIMPEDANSNOE| | | | | | PO | SOSTOYANIE VO | | | | | | OTNOSHENIYU | VREMYA DEJSTVIYA | | | | | | K CLK2 | HLDA? | +----------+---------------+----------+-------+-------------+------------------| | CLK2 | SINHROSIGNAL | - | VHOD | - | - | +----------+---------------+----------+-------+-------------+------------------| | D0-D31 | SHINA DANNYH | VYSOKIJ | VHOD/ | S | DA | | | | | VYHOD | | | +----------+---------------+----------+-------+-------------+------------------| | E0#-BE3# | STROBY DANNYH | NIZKIJ | VYHOD | - | DA | +----------+---------------+----------+-------+-------------+------------------| | A2-A31 | SHINA ADRESA | VYSOKIJ | VYHOD | - | DA | +------------------------------------------------------------------------------+ +------------------------------------------------------------------------------+ | W/R# | UKAZATELX | VYSOKIJ |VYHOD | - | DA | | | REZHIMA ZAPISI | | | | | | | ILI CHTENIYA | | | | | +----------+---------------+----------+-------+-------------+------------------| | D/C# | UKAZATELX | VYSOKIJ |VYHOD | - | DA | | | OBMENA DANNYMI| | | | | | | ILI | | | | | | | UPRAVLYAYUSHCHIMI | | | | 3 3 | SIGNALAMI | | | | | +----------+---------------+----------+-------+-------------+------------------| | M/IO# | UKAZATELX | VYSOKIJ | VYHOD | - | DA | | | OBRASHCHENIYA | | | | | | | PAMYATI ILI V/V| | | | | +----------+---------------+----------+-------+-------------+------------------| | LOCK# | BLOKIROVKA | NIZKIJ | VYHOD | - | DA | | | SHINY | | | | | +----------+---------------+----------+-------+-------------+------------------| | ADS# | STROB ADRESA | NIZKIJ | VYHOD | - | DA | +----------+---------------+----------+-------+-------------+------------------| | NA# | ZAPROS | NIZKIJ | VHOD | S | DA | | | SLEDUYUSHCHEGO | | | | | | | ADRESA | | | | | +----------+---------------+----------+-------+-------------+------------------| | BS16# | 16-RAZRYADNAYA | NIZKIJ | VHOD | S | DA | | | SHIRINA SHINY | | | | | +----------+---------------+----------+-------+-------------+------------------| | READY# | PEREDACHA | NIZKIJ | VHOD | S | DA | | | PODTVERZHDENIYA | | | | | +----------+---------------+----------+-------+-------------+------------------| | HOLD | ZAPROS NA | VYSOKIJ | VHOD | S | DA | | | ZAHVAT SHINY | | | | | +----------+---------------+----------+-------+-------------+------------------| | HLDA | PODTVERZHDENIE | VYSOKIJ | VYHOD | S | NET | | | ZAHVATA SHINY | | | | | +----------+---------------+----------+-------+-------------+------------------| | PEREQ | ZAPROS | VYSOKIJ | VHOD | A | NET | | | SOPROCESSORA | | | | | +----------+---------------+----------+-------+-------------+------------------| | BUSY# | SOPROCESSOR | NIZKIJ | VHOD | A | NET | | | ZANYAT | | | | | +----------+---------------+----------+-------+-------------+------------------| | ERROR# | OSHIBKA | NIZKIJ | VHOD | A | NET | | | SOPROCESSORA | | | | | +----------+---------------+----------+-------+-------------+------------------| | INTR | MASKIRUEMYJ | VYSOKIJ | VHOD | A | NET | | | ZAPROS | | | | | | | PRERYVANIYA | | | | | +----------+---------------+----------+-------+-------------+------------------| | NMI | NEMASKIRUEMYJ | VYSOKIJ | VHOD | A | NET | | | ZAPROS | | | | | | | PRERYVANIYA | | | | | +----------+---------------+----------+-------+-------------+------------------| | RESET | SBROS | VYSOKIJ | VHOD |A{PRIMECHANIE}| NET | +------------------------------------------------------------------------------+ Primechanie: Esli faza vnutrennego sinhrosignala processora dolzhna byt' sinhronizirovana s vneshnimi shemami, to neobhodimo obespechit' opredelennye znacheniya vremeni ustanovki t25 i vremeni uderzhaniya t26 otricatel'nogo fronta signala RESET. 6.3Mehanizm obmena po shine 6.3.1 Vvedenie Vse peredachi dannyh zanimayut odin ili bolee ciklov shiny. Operandy logicheskih dannyh dlinoj v bajt, slovo i dvojnoe slovo mogut byt' peredany bez vyravnivaniya fizicheskih adresov. Lyuboj bajt mozhet byt' kraevym bajtom (pervym ili poslednim) peredavaemogo operanda, no pri etom dlya peredachi ne vyrovnennogo operanda mozhet potrebovat'sya dva ili dazhe tri fizicheskih cikla shiny. (Sm.6.3.4 Izmenyaemyj razmer shiny dannyh i 6.3.6 Ne vyrovnennye operandy.) Signaly adresa 80386 predusmotreny dlya uproshcheniya apparatury vneshnej sistemy. Starshie bity adresa realizovany liniyami A2-A31. Mladshie bity adresa v vide BE0#-BE3# obespechivayut vyborku sootvetstvenno chetyreh bajtov 32-bitnoj shiny dannyh. Blagodarya etomu fizicheskij operand predstavlyaetsya v kazhdom cikle v naibolee udobnoj forme. Aktivnye urovni vyhodnyh signalov strobov dannyh BE0#-BE3# ustanavlivayutsya, esli sootvetstvuyushchie im bajty shiny dannyh budut prinimat' uchastie v predstoyashchem cikle shiny, kak ukazano v tabl.6- 6. Izmenyaya kombinaciyu ustanovlennyh strobov dannyh mozhno .aci%ab"(bl lyuboj variant vyborki smezhnyh bajtov, no nikakaya kombinaciya BE0#-BE3# ne pozvolit vybrat' bajty, razdelennye dvumya ili tremya nefunkcioniruyushchimi bajtami. Adresnye bity A0-A1 fizicheskogo adresa operanda mogut byt' obrazovany, kogda neobhodimo (naprimer, dlya interfejsov Multibus I i Multibus II), kak funkciya ustanovlennyh strobov dannyh. Sootvetstvie znachenij A0 i A1 signalam BE0#-BE3# privedeno v tabl.6-6. Logicheskie shemy formirovaniya A0 i A1 privedeny na ris.6- 3. Tablica 6-6 STROBY DANNYH I SOOTVETSTVUYUSHCHIE IM BAJTY DANNYH I OPERANDOV +-----------------------------------------------------------+ | STROBY DANNYH | SOOTVETSTVUYUSHCHIE SIGNALY SHINY DANNYH | +----------------+------------------------------------------| | BE0# | D0-D7 (BAJT 0 - MLADSHIJ BAJT) | +----------------+------------------------------------------| | BE1# | D8-D15 (BAJT 1) | +----------------+------------------------------------------| | BE2# | D16-D23 (BAJT 2) | +----------------+------------------------------------------| | BE3# | D24-D31 (BAJT 3 - STARSHIJ BAJT) | +-----------------------------------------------------------+ Tablica 6-6 FORMIROVANIE SHINY A0-A31 IZ SHINY BE0#-BE3# I A2-A31 +-----------------------------------------------------------+ | ADRESNYE SIGNALY 80386 | +-----------------------------------------------------------| | A31 ......... A2 | BE3# | BE2# | BE1# | BE0# | +--------------------------+-------+-------+-------+--------| | | FIZICHESKIJ ADRES | | | | | +----+---------------------| | | | | |A31 | .... | A2 | A1 | A0 | | | | | +----+------+----+----+----+-------|-------+-------+--------| |A31 | .... | A2 | 0 | 0 | X | X | X | NIZKIJ | +----+------+----+----+----+-------+-------+-------+--------| |A31 | .... | A2 | 0 | 1 | X | X |NIZKIJ | VYSOKIJ| +----+------+----+----+----+-------+-------+-------+--------| |A31 | .... | A2 | 1 | 0 | X |NIZKIJ |VYSOKIJ| VYSOKIJ| +----+------+----+----+----+-------+-------+-------+--------| |A31 | .... | A2 | 1 | 1 |NIZKIJ |VYSOKIJ|VYSOKIJ| VYSOKIJ| +-----------------------------------------------------------+ Ris.6-3. Logicheskie shemy formirovaniya A0, A1 kak funkcij signalov BE0#-BE3# K - MAP for A1 Signal - karta Karno dlya signala A1. Kazhdyj cikl shiny vklyuchaet v sebya po men'shej mere dva sostoyaniya shiny. Kazhdoe sostoyanie shiny zanimaet po vremeni odin period taktovoj chastoty processora. Prostejshij cikl shiny mozhet byt' dopolnen sostoyaniyami shiny, kotorye nazyvayutsya sostoyaniyami ozhidaniya. Sm. 6.4 Opisanie funkcionirovaniya shiny. Poskol'ku dlya vypolnenie cikla shiny trebuetsya kak minimum dva sostoyaniya shiny (chto ravnyaetsya dvum periodam taktovoj chastoty processora), to maksimal'naya skorost' peredachi dannyh mezhdu vneshnimi ustrojstvami i 80386 ravna odnomu 4-bajtovomu dvojnomu slovu v kazhdye dva perioda taktovoj chastoty processora, chto sootvetstvuet maksimal'noj propusknoj sposobnosti shiny 32 megabajt/sek (80386-16 rabotaet na taktovoj chastote 16 MGc). 6.3.2 Prostranstva pamyati i vvoda/vyvoda V techenie ciklov shiny vozmozhno obrashchenie k prostranstvu pamyati ili k prostranstvu vvoda/vyvoda. Periferijnye ustrojstva v sisteme mogut byt' otneseny libo k prostranstvu pamyati, libo k prostranstvu vvoda/vyvoda, ili i k tomu i k drugomu prostranstvam. Kak pokazano na ris.6-4, fizicheskie adresa pamyati nahodyatsya v diapazone ot 00000000H do FFFFFFFFH (4 gigabajta), a adresa vvoda/vyvoda - v diapazone ot 00000000H do 0000FFFFH (64 kilobajta), neobhodimom dlya adresacii ustrojstv vvoda/vyvoda. Otmetim adresa vvoda/vyvoda, ispol'zuemye v avtomaticheski vypolnyaemyh dlya vzaimosvyazi s soprocessorom ciklah vvoda/vyvoda. |ti adresa ot 800000F8H do 800000FFH ne vhodyat v diapazon vysheukazannyh adresov dlya programmnoj adresacii ustrojstv vvoda/vyvoda i pozvolyayut legko sformirovat' signal vyborki soprocessora, ispol'zuya signaly A31 i M/IO#. FFFFFFFFh+------------+ + - - - - - - - + | | | | | | | | | NEADRESUEMOE | | | | | | | | | | | | | | | 800000FFh+---------------+ SOPROCESSOR | FIZICHESKAYA | 800000F8h| | (80387 ILI 80287) | PAMYATX | (PRIMECH.1)+---------------+ | | | | | | NEADRESUEMOE | 4 GBAJTA | | | | | | | 0000FFFFh+---------------| | | | 64 KBAJTA | PROGRAMMNO ADRESUEMOE | | | | PROSTRANSTVO VVODA/VYVODA 00000000h+------------+ 00000000h+---------------+ PROSTRANSTVO FIZICHESKOJ PAMYATI PROSTRANSTVO VVODA/VYVODA Primechanie: Tak kak v techenie avtomaticheski vypolnyaemyh ciklov vzaimosvyazi s soprocessorom ustanavlivaetsya vysokij uroven' signala A31, to ustanovka edinichnogo urovnya A31 i nulevogo urovnya stroba formirovaniya sigala vyborki soprocessora. Ris.6-4 Prostranstva fizicheskoj pamyati i vvoda/vyvoda 6.3.3 Organizaciya pamyati i vvoda/vyvoda SHirina magistrali dannyh ot 80386 k prostranstvam pamyati i vvoda/vyvoda mozhet sostavlyat' 32 bita ili 16 bit. V sluchae 32- razryadnoj shiriny magistrali prostranstva pamyati i vvoda/vyvoda organizovany sootvetstvenno kak massivy fizicheskih 32-razryadnyh dvojnyh slov. Kazhdoe dvojnoe slovo pamyati ili vvoda/vyvoda sostoit iz 4-h individual'no adresuemyh (s pomoshch'yu posledovatel'nyh adresov bajtov) bajtov. Samyj men'shij (iz chetyreh) adres bajta otnositsya k signalam D0-D7; samyj bol'shij - k signalam D24-D31. 80386 imeet takoj signal upravleniya shinoj, kak BS16#, kotoryj obespechivaet pravil'nuyu vzaimosvyaz' s 16-razryadnymi prostranstvami pamyati i vvoda/vyvoda, organizovannymi v vide posledovatel'nosti 16-bitnyh slov. Cikly obmena s 16-razryadnymi i 32-razryadnymi ustrojstvami pamyati ili vvoda/vyvoda mogut vstrechat'sya v lyuboj posledovatel'nosti, tak kak sostoyanie signala BS16# analiziruetsya v techenie kazhdogo cikla shiny. Sm. 6.3.4 Izmenyaemyj razmer shiny dannyh. Signaly strobov dannyh BE0#-BE3# pozvolyayut obrashchat'sya k otdel'nym bajtam pri lyuboj strukture pamyati ili vvoda/vyvoda (32- razryadnoj ili 16-razryadnoj). 6.3.4 Izmenyaemyj razmer shiny dannyh Izmenyaemyj razmer shiny dannyh otlichitel'naya osobennost' 80386, obespechivayushchaya neposredstvennuyu svyaz' processora s 32-razryadnymi ili 16-razryadnymi shinami dannyh pamyati ili vvoda/vyvoda. Odin processor mozhet byt' soedinen s shinami dvuh razmerov. Peredachi v/iz 32- ili 16-razryadnye porty soprovozhdayutsya opredeleniem v kazhdom cikle shiny neobhodimoj shiriny shiny. V techenie kazhdogo cikla shiny shema deshifracii adresa ili podchinennoe ustrojstvo sami mogut ustanovit' aktivnyj uroven' signala BS16# dlya 16-razryadnogo porta, ili neaktivnyj uroven' BS16# dlya 32-razryadnogo porta. Kogda ustanovlen aktivnyj uroven' signala BS16#, processor avtomaticheski vmesto odnoj peredachi razryadnost'yu bol'she 16 bit ili odnoj 16-razryadnoj ne vyrovnennoj peredachi vypolnit dve ili tri peredachi, kak potrebuetsya. Pri aktivnom urovne BS16# vse peredachi operandov osushchestvlyayutsya tol'ko po liniyam D0-D16. Poetomu 16- razryadnye ustrojstva pamyati ili vvoda/vyvoda obmenivayutsya tol'ko signalami dannyh D0-D16. Special'nyh pereklyuchatelej ne trebuetsya. Dejstvie aktivnogo urovnya signala BS16# proyavlyaetsya tol'ko togda, kogda v tekushchem cikle shiny ustanovleny aktivnye urovni signalov BE2# i/ili BE3#. Esli v peredache uchastvuyut tol'ko linii D0-D15, to ustanovka aktivnogo urovnya BS16# ne budet imet' znachenie, tak kak peredacha budet proizvodit'sya vse ravno po 16-razryadnoj shine nezavisimo ot sostoyaniya BS16#. Drugimi slovami, ustanovka aktivnogo urovnya BS16# neobyazatel'na, kogda tol'ko mladshaya polovina razryadov shiny uchastvuet v tekushchem cikle. Sushchestvuyut dve situacii, pri kotoryh proyavlyaetsya vliyanie aktivnogo urovnya BS16# na dejstviya processora, zavisyashchie takzhe ot znachenij strobov dannyh BE0#-BE3# v tekushchem cikle shiny: - v obmene uchastvuet tol'ko starshaya polovina linij shiny: ustanavlivayutsya aktivnye urovni tol'ko signalov BE2# i/ili BE3#; - v obmene uchastvuyut i starshaya, i mladshaya poloviny linij shiny: ustanavlivayutsya aktivnye urovni po men'shej mere signalov BE1# i BE2# (i vozmozhno takzhe signalov BE0# i/ili BE3#). Vozdejstvie BS16# na cikly chteniya "s uchetom tol'ko starshej poloviny linij shiny": Ustanovka aktivnogo urovnya BS16# v techenie ciklov chteniya "s uchastiem tol'ko starshej poloviny linij shiny" vynudit 80386 schityvat' mladshie 16 bitov shiny dannyh i ignorirovat' dannye na starshih 16 bitah shiny dannyh. T.e. vmesto schityvaniya dannyh s linij D16-D31 v sootvetstvii s ustanovlennymi BE2# i BE3# budut schityvat'sya dannye s linij D0-D16. Vzaimodejstvie signala BS16# na cikly zapisi "s uchastiem tol'ko starshej poloviny linij shiny": Ustanovka aktivnogo urovnya BS16# v techenie ciklov zapisi "s uchastiem tol'ko starshej poloviny" ne otrazitsya na procedure zapisi. Kogda v cikle zapisi ustanovleny aktivnye urovni signalov BE2# i/ili BE3#, 80386 vsegda kopiruet signaly dannyh D16-D31 na linii D0-D15 (sm. tabl. 6-1). Poetomu ne trebuetsya dopolnitel'nyh dejstvij 80386 dlya togo, chtoby vypolnit' eti cikly zapisi po 32- ili 16-razryadnoj shine. Vozdejstvie signala BS16# na cikly chteniya "s uchastiem i ab `h%) i mladshej polovin shiny": Ustanovka aktivnogo urovnya signala BS16# v techenie ciklov chteniya "s uchastiem i starshej i mladshej polovin shiny" zastavit processor vypolnit' dva 16-razryadnyh cikla chteniya dlya peredachi vsego fizicheskogo operanda. Bajty 0 i 1 (v sootvetstvii s ustanovlennymi BE0# i BE1#) budut schitany v pervom cikle s linij D0-D16. Bajty 2 i 3 (v sootvetstvii s ustanovlennymi BE2# i BE3#) budut schitany vo vtorom cikle i snova s linij D0-D16. Signaly na liniyah D16-D31 ignoriruyutsya v techenie oboih 16-razryadnyh ciklov. BE0# i BE1# vsegda nahodyatsya v neaktivnom sostoyanii v techenie vtorogo 16-razryadnogo cikla. Aktivnyj uroven' signala BS16# neobyazatel'no ustanavlivat' na vremya vtorogo 16-razryadnogo cikla. Sm. ris.6-14, cikly 2 i 2a. Vozdejstvie signala BS16# (aktivnogo urovnya) na cikly zapisi "s uchastiem i starshej i mladshej polovin shiny": Ustanovka aktivnogo urovnya signala BS16# v techenie ciklov zapisi "s uchastiem i starshej i mladshej polovin shiny" zastavit processor 80386 vypolnyat' dva 16-razryadnyh cikla zapisi dlya peredachi celogo fizicheskogo operanda. Nalichie vseh bajtov operanda na liniyah D0-D15 v techenie pervogo cikla zapisi pozvolit vneshnim ustrojstvam poluchit' bajty 0 i 1 (v sootvetstvii s ustanovlennymi znacheniyami BE0# i BE1#) po liniyam D0-D16. Vo vtorom cikle 80386 skopiruet bajty 2 i 3 na linii D0-D15, i zapis' etih bajtov (v sootvetstvii s ustanovlennymi znacheniyami BE2# i BE3#) budet proizvedena takzhe po liniyam D0-D16. Signaly BE0# i BE1# vsegda pereklyuchayutsya v neaktivnoe sostoyanie v techenie vtorogo 16- razryadnogo cikla. Ustanovka aktivnogo urovnya signala BS16# v techenie vtorogo 16-razryadnogo cikla neobyazatel'na. Sm. ris.6-14, cikly 1 i 1a. 6.3.5 Svyaz' s 32 i 16 razryadnym ustrojstvami pamyati V 32-razryadnyh ustrojstvah fizicheskoj pamyati, takih kak na ris.6-5, kazhdoe fizicheskoe dvojnoe slovo nachinaetsya s bajta, adres kotorogo kraten 4. Signaly A2-A31 obychno ispol'zuyutsya dlya vyborki opredelennogo dvojnogo slova, a signaly BE0#-BE3# - dlya vyborki opredelennogo bajta v dvojnom slove BS16# podderzhivaetsya v neaktivnom sostoyanii vo vseh ciklah shiny, operiruyushchih s 32- razryadnym massivom. Kogda v sostav sistemy vhodyat 16-razryadnye fizicheskie massivy, kak pokazano na ris.6-6, adres nachala kazhdogo 16-bitnogo fizicheskogo slova kraten 2. Otmetim, chto shema deshifracii adresa ADDRESS DECODER pri deshifracii adresa formiruet aktivnyj uroven' signala BS16# tol'ko v techenie ciklov shiny, operiruyushchih s 16- razryadnymi ustrojstvami pamyati, to shema deshifracii adresa analiziruet takzhe znacheniya signalov BE0#-BE3# i W/R#, chtoby opredelit', kogda dolzhen byt' ustanovlen aktivnyj uroven' signala BS16#. Sm. 6.4.3.7 Optimal'noe ispol'zovanie metoda konvejernoj adresacii v sluchae 16-razryadnoj shiriny shiny. Signaly A2-A31 obychno ispol'zuyutsya dlya adresacii 32-razryadnyh i 16-razryaznyh ustrojstv. Dlya adresacii 16-razryadnyh ustrojstv neobhodimy takzhe signal A1 i dva signala stroba dannyh. CHtoby sformirovat' neobhodimye znacheniya signala A1 i dvuh signalov stroba dannyh dlya obrashcheniya k 16-razryadnomu ustrojstvu, signaly BE0#-BE3# dolzhen byt' deshifrirovany v sootvetstvii s tabl. 6-7. Otmetim nekotorye zapreshchennye kombinacii BE0#-BE3#, nikogda ne vyrabatyvaemye 80386. Pri nalichii zapreshchennoj kombinacii BE0#- BE3# na vhode deshifratora vyhody ego ne analiziruyutsya i sostoyanie ih oboznachaetsya X. Zapreshchennye kombinacii BE0#-BE3# mogut byt' ispol'zovany pri neobhodimosti dlya bolee optimal'nogo ispol'zovaniya deshifratora. Tablica 6-7 FORMIROVANIE SIGNALOV A1, BHE# I BLE# DLYA ADRESACII 16-RAZRYADNYH USTROJSTV +-----------------------------------------------------------+ | SIGNALY 80386 | SIGNALY 16-RAZRYADNOJ | KOMMENTARII | | | SHINY | | +-------------------+-----------------------| | |BE3#|BE2#|BE1#|BE0#| A1 | BHE# | BLE# (A0) | | +----+----+----+----+----+------+-----------+---------------| | H* | H* | H* | H* | X | X | X | X - NET NI | | | | | | | | | ODNOGO AKTIV- | | | | | | | | | NOGO BAJTA | +----+----+----+----+----+------+-----------+---------------| | H | H | H | L | L | H | L | | +----+----+----+----+----+------+-----------+---------------| | H | H | L | H | L | L | H | | +----+----+----+----+----+------+-----------+---------------| | H | H | L | L | L | L | L | | +----+----+----+----+----+------+-----------+---------------| | H | L | H | H | H | H | L | | +----+----+----+----+----+------+-----------+---------------| | H* | L* | H* | L* | X | X | X | X - NESMEZHNYE | | | | | | | | | BAJTY | +----+----+----+----+----+------+-----------+---------------| | H | L | L | H | L | L | H | | +----+----+----+----+----+------+-----------+---------------| | H | L | L | L | L | L | L | | +----+----+----+----+----+------+-----------+---------------| | L | H | H | H | H | L | H | | +----+----+----+----+----+------+-----------+---------------| | L* | H* | H* | L* | X | X | X | X - NESMEZHNYE | | | | | | | | | BAJTY | +----+----+----+----+----+------+-----------+---------------| | L* | H* | L* | H* | X | X | X | X - NESMEZHNYE | | | | | | | | | BAJTY | +----+----+----+----+----+------+-----------+---------------| | L | L | H | H | H | L | L | | +----+----+----+----+----+------+-----------+---------------| | L* | L* | H* | L* | X | X | X | X - NESMEZHNYE | | | | | | | | | BAJTY | +----+----+----+----+----+------+-----------+---------------| | L | L | L | H | L | L | H | | +----+----+----+----+----+------+-----------+---------------| | L | L | L | L | L | L | L | | +-----------------------------------------------------------+ BLE# ustanavlivaetsya (aktivnyj uroven') kogda aktiviziruyutsya razryady D0-D7 16-razryadnoj shiny. BHE# ustanavlivaetsya (aktivnyj uroven') kogda aktiviziruyutsya razryady D8-D15 16-razryadnoj shiny. A1 imeet nizkij uroven' dlya vseh chetnyh slov; A1 imeet vysokij uroven' dlya vseh nechetnyh slov. OBOZNACHENIYA: X - dopustim i vysokij i nizkij logicheskij uroven'; H - vysokij logicheskij uroven'; L - nizkij logicheskij uroven'; * - neispol'zuemye kombinacii BE0#-BE3#: - kombinaciya, kogda vse stroby dannyh nahodyatsya v neaktivnom sostoyanii; - kombinacii strobov dannyh, pri kotoryh poyavlyayutsya nesmezhnye aktivnye bajty. 6.3.6 Vyravnivanie operandov Blagodarya gibkoj adresacii pamyati v 80386 vozmozhna peredacha logicheskogo operanda, razryadnost' kotorogo bol'she slova ili dvojnogo slova pamyati ili vvoda/vyvoda, naprimer 32-razryadnogo operanda (dvojnoe slovo), adres nachala kotorogo ne kraten 4, ili 16-razryadnogo operanda (slovo), razdelennogo mezhdu dvumya fizicheskimi dvojnymi slovami massiva pamyati. Kogda peredacha operanda trebuet vypolneniya neskol'kih ciklov, to vo vremya etih ciklov vypolnyaetsya vyravnivanie dannyh i opredelenie razmera shiny. Tablica 6-8 opisyvaet opredelenie tipov ciklov peredachi dlya vseh kombinacij takih harakteristik, kak dlina logicheskogo operanda, vyravnivanie i shirina shiny dannyh. Kogda dlya peredachi mnogobajtovogo logicheskogo operanda trebuetsya neskol'ko ciklov shiny, to pervymi peredayutsya starshie bajty (no esli ustanovlen aktivnyj uroven' BS16#, to budut vypolneny dva 16- razryadnyh cikla, prichem pervymi budut peredany mladshie bajty). Tablica 6-8 CIKLY PEREDACHI BAJTOV, SLOV I DVOJNYH SLOV +-----------------------------------------------------------+ | | DLINA LOGICHESKOGO OPERANDA V BAJTAH | | +-------------------------------------------| | | 1 | 2 | 4 | +---------------+---+-------------------+-------------------| | ADRES BAJTA |XX | 00 | 01 | 10 | 11 | 00 | 01 | 10 | 11 | | FIZICHESKOJ | | | | | | | | | | | PAMYATI | | | | | | | | | | | *MLADSHIE DVA | | | | | | | | | | | BAJTA | | | | | | | | | | +---------------+---+----+----+----+----+----+----+----+----| |CIKLY PEREDACHI |b | W | W | W |hb, | d |hb, |hw, |h3, | |PO 32-RAZRYADNOJ| | | | |lb | |l3 |lw |lb | |SHINE DANNYH | | | | | | | | | | +---------------+---+----+----+----+----+----+----+----+----| |CIKLY PEREDACHI |b | W |lb,*| W |hb,*|lw,*|hb, |hw, |mw, | |PO 16-RAZRYADNOJ| | |hb* | |lb* |hw* |lb,*|lw |hb,*| |SHINE DANNYH | | | | | | |mw* | |lb | +-----------------------------------------------------------+ OBOZNACHENIYA: b = peredacha bajta w = peredacha slova l = mladshaya chast' operanda m = srednyaya chast' operanda h = ne ispol'zuetsya * = aktivnyj uroven' BS16# vyzyvaet vypolnenie vtorogo cikla shiny 3 = peredacha 3-h bajtov d = peredacha dvojnogo slova h = starshaya chast' operanda 6.4 Opisanie funkcionirovaniya shiny 6.4.1 Vvedenie 80386 imeet otdel'nye parallel'nye shiny: shinu adresa i shinu dannyh. SHina dannyh - 32-razryadnaya i dvunapravlennaya. SHirina shiny adresa - 32 razryada: iz nih 30 starshih razryadov - adres operanda i 2 razryada formiruyutsya iz 4-h signalov strobov dannyh kazhdyj iz kotoryh sluzhit dlya vyborki sootvetstvuyushchego bajta v operande. |ti shiny analiziruyutsya i upravlyayutsya sootvetstvuyushchimi im upravlyayushchimi signalami. Tip kazhdogo cikla shiny opredelyaetsya tremya signalami: M/IO#, W/R# i D/C#. Odnovremenno s etimi signalami ustanavlivaetsya dostovernyj adres na liniyah BE0#-BE3# i A2-A31. Signal stroba adresa ukazyvaet na vydachu processorom 80386 novogo tipa cikla shiny i adresa. Ob®edinennye shina adresa, shina dannyh i vse svyazannye s nimi upravlyayushchie signaly nazyvayutsya v tekste prosto "shinoj". V rabochem sostoyanii shina vypolnyaet odin iz nizhe perechislennyh ciklov shiny: 1) chtenie iz pamyati; 2) chtenie iz pamyati s blokirovkoj shiny; 3) zapis' v pamyat'; 4) zapis' v pamyat' s blokirovkoj shiny; 5) chtenie iz ustrojstva vvoda/vyvoda (ili iz soprocessora); 6) zapis' v ustrojstvo vvoda/vyvoda (ili v soprocessor); 7) podtverzhdenie preryvaniya; 8) cikl ostanova ili cikl vyklyucheniya. Tabl. 6-2 pokazyvaet sootvetstvie kombinacij signalov opredeleniya tipa shiny kazhdomu tipu shiny. Sm. paragraf 6.2.5 Signaly opredeleniya tipa cikla shiny. Otlichitel'noj chertoj shiny dannyh yavlyaetsya ee izmenyaemaya shirina, kotoraya mozhet byt' 32-razryadnoj i 16-razryadnoj. SHirina shiny dannyh ukazyvaetsya processoru 80386 ego vhodnym signalom BS16#. Vse funkcii shiny mogut byt' vypolneny pri lyuboj shirine shiny. Kogda shina 80386 ne vypolnyaet ni odin iz vysheperechislennyh ciklov, ona nahoditsya ili v nerabochem sostoyanii ili v sostoyanie podtverzhdeniya zahvata shiny, poslednee mozhet byt' vyzvano vneshnej shemoj. Nerabochee sostoyanie shiny mozhet imet' mesto, kogda 80386 ne vydaet dal'nejshih podtverzhdenij na svoj vyhod stroba adresa (ADS#) posle nachala tekushchego cikla, i potomu tekushchij cikl budet poslednim. Sostoyanie podtverzhdeniya zahvata shiny identificiruetsya ustanovkoj processorom 80386 aktivnogo urovnya n