____ ~XXXXlMWW~ ______________________________ ~xxx~~
4.7 BUS OPERATION EXAMPLES
The following paragraphs contain several specific examples of MC68851 bus operations and is intended to provide better understanding of the MC68851 by demonstrating sequences of typical bus operations.
4.7.1 Table Search Operations
The bus operations required to initiate and complete a table search operation, including startup and terminate overhead, are shown in Figure 4-44. This figure demonstrates the timing for a translation descriptor fetch and address translation cache update assuming that the MC68851 is operating in the early processing startup and fast table search modes of operation (refer to 4.1.2 Bus Interface Initialization) and that physical memory operates with no wait states. The table structure accessed consists of a function code index and two levels of long format descriptors.
The startup overhead associated with a table search operation is affected by the table structure used and operational mode of the MC68851. For example, if the first level of the table search is not an index by the function codes, the startup overhead is increased by the two clock periods required to perform a limit check of the root pointer used in the search. Also, ifthe early processing startup mode is disabled, an additional six clock periods of overhead is required to initiate a table search.
Figures 4-45 and 4-46 demonstrate the bus operations and timings associated with updating the used and modified descriptor status bits. The overall time required to perform a table search operation such as depicted in Figure 4-44 is affected by the number of status bits that must be updated during the search.
It should be noted that both the used and modified bits may be set in a single operation that does not require use of a read-modify-write operation. However, if only the used bit of a page descriptor is to be set and the status of the M bit is not to be changed, the MC68851 always uses a read-modify-write operation in order to maintain status consistency in systems that allow mul-tiple MC68851s to share the same translation tables. It should also be noted that a simple write operation is always used to update the used bit at all levels of the translation table other than the page descriptor level.
4.7.2 Logical Bus Arbitration
Figure 4-47 illustrates an MC68851 table search operation that is interrupted by an alternate logical bus master requesting control of the logical bus. The MC68851 continues the table search until it detects an assertion of logical bus grant in (LBGI) after which it asserts logical bus grant out (LBGO) to indicate that it will relinquish control of the logical bus at the end of the current bus cycle. After placing all shared control lines in the high-impedance state, the MC68851 negates logical bus grant acknowledge (LBGACK).
MC68851 USER'S MANUAL MOTOROLA
4-57
If the MC68851 was performing a table search to update the ATC as the result of a request for an address translation that did not have a descriptor resident in the address translation cache, the interrupted table search will not be resumed when the alternate logical bus master releases control of the bus; instead, the MC68851 will wait for the bus cycle that initiated the search to be retried by the logical master. When the master does retry that cycle, the MC68851 will resume the table search at the point it was terminated if, and only if, no operations have occurred between inter-ruption of the table search and the retry of the cycle that require that the MC68851 perform any other internal operations. Otherwise, the table search will be completely re-executed.
If the MC68851 was performing a table search in response to a PTEST or PLOAD instruction, the table search will be automatically resumed or restarted (refer to 4.4.1.2 MC68851 REQUESTING THE LOGICAL BUS).
MOTOROLA 4-58
MC68851 USER'S MANUAL
~ o
0) CO CO U1 ..a
c en
m :a
en
3: l>
:2 C l>
,...
s: o o
-!~·O :lJ
~~
CPU
LOGICAL DATA CACHE AND CONTROL
THREE-STATE BUFFERS
00-031 00-031
R/W R/W
Sill/SilO Sill/SilO
I
r -~os os ~
r----DSACK 1 /r----DSACKO DSACK 1 /DSACKO J
r----RMC BERR. HALT AO-A7 LAB-lA31 LAS
-~
RMC
II~~
BERR. HALT AO-A7 PA8-PA31
LOGICAL CYCLE IN PROGRESS PAS
Cil
I
MC68851
-
-Figure 4-42. Example of Signal Buffering Requirements for Support of Concurrent Logical and Physical Bus Activity
PHYSICAL ADDRESS SPACE DATA BUS
}
PHYSICAL ADDRESS BUS CONTROL SIGNALS
} PHYSICAL ADDRESS BUS PHYSICAL ADDRESS SPACE ADDRESS STROBE
MOTOROLA 4-60
CLOCK FCO-FC3.
SIZO/SIZI LA8-LA31.
AO-A7. R/W LAS
OBDIS
00-031
OSACKx
BERR
PA8-PA31
PAS
PBR
PBG
PBGACK
CPU
ALl. PHYSICAL MASTER MC68851
SO S2 Sw S4 SO S2 S4 SO S2 Sw S4
LJLJL
X X X
X X X
\ 1 \ 1 \ r
J
c:=> c==) -< >
\ / \ / ,
:::x > <
>--\ ~ \ /
\ /
\ I
\
PERFORMS BUS CYCLE ASSESSING+ FAST CYCLE ACCESSING
+
LOGICAL MASTER READS FROM MC68851--+-PHYSICAL AOORESS SPACE LOGICAL CACHE REGISTER SET
ARBITRATES FOR BUS MASTERSHIP __ I_ PERFORMS BUS
BUS MASTERSHIP GRANTED T O - + CONTINUES TO MONITOR+ DECODES ACCESS TO REGISTER SET. SUPPLIES---+-AlTERNATE PHYSICAL MASTER LDGICAL ACTIVITY DATA. AND ASSERTS DSACKx
Figure 4-43. Example of Concurrent
Me688S1 USER'S MANUAL
SO S2 S4 SO S2 Sw Sw Sw Sw S4 SO
IL.JL..JLI 1JLJLS
X =x x=
x =x x=
' - - - / \ " '
-\
--<==
>---I '\ 7 \
r-\ r
-< >- < x:
~
0-
I\ r
~
CCESSES BERR BIT SET IN PAGE W~TH 1 - + - - - -WRITE TO SYSTEM STACK MUST. WAIT PENDING COMPlETIONJ
OF PHYSICAL BUS ACTIVITY ~
CORRESPONDING DESCRIPTOR
INTERNAL PROCESSING
OPERATIONS - - - l * ( - - -RELINQUISHES CONTROL OF PHYSICAL BUS TO MC68851
r-
ABORTS BUS CYCLE-+=
CONTINUES TO MONITOR LOGICAL BUS ACTIVITY REGAINS BUS MASTERSHIP AND COMPLETES-1
BUT CANNOT PERFORM PHYSICAL ADDRESS SP~CE CYCLE PHYSICAL ADDRESS SPACE ACTIVITY
Logical and Physical Bus Activity
MC68851 USER'S MANUAL MOTOROLA
4-61
1
PERIODS· 5C• Me68851 Initialized for Fast Table Search and Early Processing Startup - Operating on 32·8it 8us. This Initial
Figure 4-44. MC68851 (Table Search with Function Code Lookup
Me68851 USER'S MANUAL
l'''''r
CLOCKSO S2 S4 SO S2 S4 SO S2
S4 PERIOOS
SO
~
SUPERVISOR DATA
) c=
c=
X C
X )( ) c=
J
c=
J
c=
"' c=
, I \ r - \ r- "'
~ ~~
I \ I \ r - \
~
/ \ r - \ I
, I \ r - \
r---+
CALCULATE+-~
DESCRIPTOR FETCH NEXT LONG FORMAT (54-BITI DESCRIPTOR FETCH
ADDRESS
ATC UPDATE AND BUS RELEASE
~
BUS MASTERSHIP CPU REGAINS~
AND RETRIES CYCLE
overhead is increased by two clock periods if the first level of the table search is not an index by function code_
Table Search Example
and Two Levels of Long Format Descriptors)
Me68851 USER'S MANUAL MOTOROLA
'4-63
0,0 ~s:
~--1
- 0 ::0
o
~
3: o en c0-CO U1 ...a
c en m ::0
en
3:
» z
c»
r-
-:.~-CLOCK FCO-FC3
SO S2 S4
L6CLOCK~
I
-PERIODSI
SD~
S2 S4 SO S2 S4
SUPERVISOR DATA
__________________________________________________________
J>---PAS-PA31
X ______________ _
AO-A7. )(
SIZO/SIZI ....
-_ -_ -_ -_ . J
x
>---R/W
\
~RMC
,
~PAS ~
1 , , , ,
iiS~
-I \ 1 \
~DBDlS
, , \ 1 \
~00-031 - - - «
>- ( ) <
>-OSACKO/DSACK I
\
~ \/
\;
-BERR HALT LBRO LBGI LBRI LBGACK CU
~
DESCRIPTOR FETCH-k
DETECTS U BIT OF Me 68851 . . .I
U BIT UPDATE USING INDIVISIBLE CYCLE ~I
ENe OF~
DESCRIPTOR NOT SET SEARCH
Figure 4-45. Page Descriptor U Bit Status Update
n 3:
a') co co U1 ...a
c C/)
m ~
en
3:
>
z
c>
r-~ o
-;
o
::D
~O
ffis;
so
~6CLOCK~
1-
PERIODS -I
SOS2
S2 S4 Sw S4 SO S2 S4
CLOCK
FCO-FC3 SUPERVISOR DATA
PA8-PA31
X I c:
SIZ~~~~; X I I c:
R/W , f
RMC
P A S ,
I \ I \
r-Ds~
I \ I \ r
-DBDlS
\ I \ I \
r-00-031 ---~()
< > <
r-DSACKO/DSACK 1
\ / \ / \
r-BERR HALT
LBRO
LBGI
LBRI lBGACK
ill
~
DESCRIPTOR FETCH--+
MC,"85IDHEcrs U (OR U AND M) • ..I
STATUS BIT UPDATE •I
.. NEXT TABLE SEARCH OPERATION~
BIT(S) FOR ENTRY NOT SET (IF ANY)
Figure 4-46. Table Pointer U Bit or Page Descriptor U and M Bit Status Update
~~
0,0 O')-i
o
:IIo
~s:
0m CO CO U1 ...a C en m :JJ
en s:
>
z
c>
I"""
•
I
so S2 S4 so S2 S4 so S2 Sw S4
CLOCK FCO-FC3
---',
~~---LA8-LA31 ---~(
PA8-PA31
X X
SIZ~~~~~
X X >
<~__________________________________ _
Riw
---~'---~(~---LAS ---~~
r-PAS
, I \ I
\~__________________ _
OS
, I \ r - ' / \
r-oBDlS
, I ,~ _____________________________________________ _
00-031 - - - « ) ( ) (
oSACKO/oSACK 1
\ / \ / \ /
BERR HALT
LBRI ~
/
lBRO
lBGI
\ I
lBGO , I
LBGACK
---~~~---I.--
ARBITRATION FO'lOGICALBUSOU_" MC68851 'US cvm---+
MC68851 RElEAS£S 'US+-
ALTERNATE MASTER PERFORMS 'USCVC~ISI----1
Figure 4-47. MC68851 Table Search Operation Interrupted by Alternate Logical Bus Master
SECTION 5
ADDRESS TRANSLATION
This section discusses the mapping of addresses from the logical address space to the physical address space by the MC68851. Included in this section is the description of the MC68851 trans-lation table structure, formats and uses of transtrans-lation descriptors, and operation of the MC68851 address translation cache (ATC).