• Aucun résultat trouvé

BUS OPERATION EXAMPLES

Dans le document Address Translation . . (Page 101-111)

____ ~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 COMPlETION

J

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

CLOCK

SO 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

-PERIODS

I

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

SO

S2

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

:II

o

~

s:

0

m 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 'US

CVC~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).

Dans le document Address Translation . . (Page 101-111)