. 80386 , , 86, / , . , 86, 86 . , . , VM86 , , 86, , 86. , 8086, , , 80386 , 80386, 8086. , 80386 8086, 86 . , 8086 , . , , . , 80386 , , , 8086, , 80386 , 86. , 8086 . 80386 , 86 . 80386, .4-1. IOPL 86 , 3, 80386 / 8086. 80386 /, , , . , ( ) ( ). 80386, , 275000 , CHMOS III . 80386 , 80386 . 5.1 .5.1. 80386. 6 , . . , . , . , , . . 32- 2 . / 32- c,-.&%-(% 9 41 , , 32- 38 42 , , . , , 64 . , , 80386 4,4 . +--------------------+ +------------+ +-------------------+ | | | | | | | | | | | | | | | | | | +--------------------| | | | | | | | | | | | | | | | | +--------------------| +------------| +-------------------| | / | | | | | +--------------------+ | | | | | +->| +->| | | | L-----T------- L---------T---------- | | | --------- +--------T------------ | | | | | | +-------------+ | | | | | | | L----------T-------------------------+ +-+ | | +-------------+ | | +---------------+ +------------------------+ | | | |<-+ -|<--- | | | | | | +---------------| +------------------------| | | | | | L-------------+ | | | +---------------+ +------------------------+ , . (MMU) , , . MMU , . ( , , , , ). , ( 80386 , ). 80386 , .5-1. . , 80386. c/` "+%-(o . , , , . , , . 32- (TLB), , . TLB, ( 98-99%) , . , TLB TLB , . 5.2 .5-2. - , 80386. , - . .5-3 80386 , . , . 5.2.1 80386 12,5 16 . (CLK2) , . 82384 CLK2, 80386 , . 5.2.2 80386 32- . 16 32 . . 80386 8-, 16- 32- . , , . 30 A2-A31. BE0-BE3 ( ) , . BE0 D0- D7, BE1 D8-D15 .. , 32- , (..5-4). , , , , A0 A1 BE0-BE3 4 . 80386 - , , , . , , , - , 4. ( 32 , , 4- #` -(f e ). 80386 , , , , , , 4, 16- . 5.2.3 80386 , ADS ( ). W/R, D/C M/IO. , / , . 80386 LOCK ( ) . , , . 80386 LOCK, , , , EXCHANGE. EXCHANGE " ", . , , , LOCK. 5.2.4 80386 : . 2- - ( K- , ). , 80386 . NA ( ), . , 80386 - () , , , . 80386 , , , READY. , , 80386, READY , . , . , , READY , .. . 32- , 80386 32 16 25 12,5 . 80386 , . 80386 . , , . , . NA, 80386 , , READY (..5-6). 5.2.5 ( /) . : 1. 16- 32- , 32- , 16- 32- ; 2. 16- , MULTIBUS I; 3. 16- ( ), 16-, 32- . " 16" (BS16), , 16 . BS16 , 32-, 80386 BS16 , [ /. 5.2.6 ( , -), 80386 HOLD. HLDA ( ) ( ), , HOLD . 80386 , HLDA , - , . 80386 , INTR ( ), NMI ( ). INTR . NMI, , . INTR 8259 (). 8259 8 , 8259 , 64 . 8259 (), . 8259 80386 , . 80386 , . RESET ( ) FFFFFFF04. 5.2.7 80386 80287 80387 / 64- / . A31 /I0. 80386 , 16- 80287 32- 80387. 80386 , 80387, 80287. BUSY . 80386 , BUSY - . 80386 , WAIT, 80386 , BUSY . ERROR, , , 80386 , 7. PEREQ 80386 6.1 80386 . 80386 : . - 32- . 32 , , 2 4 ( ), 30 . . () 32-, 16- (. 6.3.4). , 16- , 80386 . N- 32- 16- , . 80386 , 32- 16- , ( ). (. 6.4.2). , . 16 , 100 ( ), , . , 80386 ( ), . , , -, - . . . 80386 . 80386 32- 16 , 80386 32 /. , , . READY () 80386. 80386 , , , . , HLDA, 80386, . ( ). . -, (. 6.2 ). , (. 6.3 , 6.4 6.5 ). 6.2 6.2.1 80386, . , # , - . , # , . : M/IO# - . - /. , "t25 Reset/Setup Time" ( ) "t26 Reset Hold Time" ( ). 7-4 7-6. 6.2.2 (CLK2) CLK2 80386. , , . : " " " ". . .6-2 . , RESET, , t25 t26 (setup and hold times). 6.2.3 (D0-D31) 80386 . / "1" . 32-, 16- , ; BS16# (. 6.2.6 ). t21 t22 . ( ) 80386 32 , 16 . 6.2.4 (BE0#-BE3#, A2-A31) /. 4 ( 00000000H FFFFFFFFH) / 64 ( 00000000H 0000FFFFH) /. /, 80386 , / 800000F8H 800000FFH, : 31 M/IO#. BE0#-BE3# 32- , . . BE0# D0-D7, BE1# -"- D8-D15, BE2# -"- D16-D23, BE3# -"- D24-D31. BE0#-BE3#, , (1,2,3 4 ) (. 6.3.6 ). /, 16 (D16-D31), 16 (D0-D15). 16- . BE0#-BE3#. 6-1 BE0#-BE3# +-------------------------------------------------------------------+ | 80386| 80386 | | +----T----T----T----+-------T-------T------T-----+ | |BE3#|BE2#|BE1#|BE0#|D24-D31|D16-D23|D8-D15|D0-D7| ? | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.|. |. |.| | | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.|. |. | || | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.|. | |.| | | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.| D |. | D || | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.|. |. | | | | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.|. | | || | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.| D | | D | | | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.|. | | | | | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.| D | | || | +----+----+----+----+-------+-------+------+-----+------------------| |.|.|.|.| D | | | | | +-------------------------------------------------------------------+ : D = D24-D31 C= -"- D16-D23 B= -"- D8-D15 A= -"- D0-D7 6.2.5 (W/R#, D/C#, M/IO#, LOCK#) . W/R# . D/C# . M/IO# /. LOCK# . W/R#, D/C# M/IO#, ADS# ( ). LOCK# , (, ) ADS# (. 6.4.3.4 ). W/R#, D/C# M/IO# .6-2. W/R#, D/C# M/IO#, ADS# (, , "" , ADS#). M/IO#, D/C# W/R# ADS#, . 6-2 +-------------------------------------------------------------------+ | M/IO# | D/C# | W/R# | | | | | | | | ? | +-------+-------+-------+-----------------------------+-------------| | | | | | | +-------+-------+-------+-----------------------------+-------------| | | || | | +-------+-------+-------+-----------------------------+-------------| | || | | | | | | | / | | +-------+-------+-------+-----------------------------+-------------| | ||| | | | | | | / | | +-------+-------+-------+-----------------------------+-------------| || | | | | +-------+-------+-------+-----------------------------+-------------| || || : : | | | | | | =2 =0 | | | | | | | | | | | | (BE0#. (BE0# | | | | | | BE1#. BE1#. | | | | | | BE2#. BE2#. | | | | | | BE3#. BE3#. | | | | | | A2-A31.) A2-A31.)| | +-------+-------+-------+-----------------------------+-------------| ||| | | | | | | | | | +-------+-------+-------+-----------------------------+-------------| |||| | | | | | | | | +-------------------------------------------------------------------+ 6.2.6 6.2.6.1 , , . 6.2.6.2 (ADS#) 80386 , , (W/R#, D/C#, M/IO#, BE0# - BE3# A2-A31). ADS 1 2 ( a.ab.o-(oe . 6.4.3.2 6.4.3.4 ). 6.2.6.3 (READY#) , , , BE0#-BE3# BE16#, . READY#, 80386 "" . READY# , . READY# , READY# , READY#. READY# , . t19 t20 READY# (. 6.4 ). 6.2.6.4 (NA#) . , 80386 BE0#-BE3#, A2-A31, W/R#, D/C# M/IO#, READY#. 80386 NA# , , (. 6.4.2 6.4.3 ). 6.2.6.5 16- (BS16#) BS16# 80386 32- 16- . , (D0-D15) BE0# BE1#. BS16# ( ) , BE0# BE3#, BS16# ( ) 80386 () () D0-D16. BS16# , 80386 16- . t17 t18 BS16# . /, 80386 , BS16#. 80287 80387 ERROR# RESET. 80386 16- 80287, 80386 80387 32- . , BS16# 80287, 80387 BS16# . 6.2.7 6.2.7.1 , , (. 6.6.1). 6.2.7.2 (HOLD) , - 80386 . HOLD , . HOLD RESET. RESET HOLD, RESET , ( ). HOLD , HOLD , . HOLD - . t23 t24 . 6.2.7.3 (HLDA) HLDA , 80386 HOLD