• Nie Znaleziono Wyników

Multiple QPDM Design Considerations

W dokumencie AM95C60-2 (Stron 24-31)

Initialization and Broadcast

Since each QPDM handles up to four bit planes, a 16 plane system will require four QPDM devices. In general, all QPDMs are given each instruction simultaneously with identical parameters, so that the instruction can update each plane. In some cases, however, a means to differentiate between QPDMs and some planes within a single QPDM is necessary. To facilitate individual QPDM plane operation, each QPDM is assigned a QPDM number. This number is loaded into each QPDM using the "Set QPDM Position" instruction. Each QPDM must be assigned a unique number, via four separate set QPDM position instructions; one instruction is executed per QPDM. This means that it is necessary to provide chip select (CS) decoding for each individual QPDM and for al/ QPDMs as a group. In this design we would need five separate CS signals. The "Quad QPDM Chip Se-lects" shows the relationship between PCSx and the QPDM table chip selects in this example.

Quad QPDM Chip Selects Peripheral

CHAPTER 2

=>

Display Memory Interface

4

...

Figure 2.1-5 Quad QPOM Schematic

~

ADc}-AD15

MATOUT TSYNOUT

RESETOUT QPOMCS2 RO WR A2 A1

OT/R

MATOUT TSYNOUT

RESETOUT QPOMCS3 RO WR A2 A1

OT/R

R~

ACKO

MATIN TSYNIN

00--015 QPDM2

RESET INT

Cs WE

AD OREQ

WR FREQ

A1 TSYNOUT

AO MATOUT

vee

R~

ACKO

MATIN TSYNIN

00--015 QPOM3

RESET INT

CS EOE

RO OREQ

WR FREQ

A1 TSYNOUT

AO MATOUT

~

Display Memory Interface 4 /

2X

) 2012-2015 y

~O~

74ALS245A B A

~

~

OIR

G

AOO--A015

968:22.1-11

~ ~isplay

Memory Interface 4 /

2X 74ALS245A

)

Q21NT

Ei5E1

OREQ2 FREQ2 TSYN20UT MAT20UT

3012-<3015

~ ,.

B OIR G A

~

ADO--A015

g682A2.1-12

Q31NT EOE2 OREQ3 FREQ3 TSYN30UT MAT30UT

Figure 2.1-5 Quad QPOM Schematic (continued)

CHAPTER 2

System Bus Interface

2-10

MATOUT TSYNOUT

RESETOUT 'Q'P'i5MCs4 AD

WR A2 Al

DT/A

4012-4015

3012-3015

OT/R

2012-2015

1012-1015

R~

ACKD

=>

Display Memory Interface MATIN

TSYNIN 2X

~

74ALS245A

DG-D15 B A

QPDM4

-

DIR

G

iiESEf INT

CS EDE

AD DREQ

WR FREQ

Al TSYNOUT

AO MATOUT

8 5

-l\

<

8 /

8 74ALS245A A

7

8, -84

7

OIR ~

Figure 2.1-5 Quad QPDM Schematic (continued)

4

")

4D12-4D15

~

ADG-AD15

a682A2.2·13

>

AO.-AO'5

Q4INT

EDE3

DREQ4 FREQ4 TSYN40UT MAT40UT

011NT 021NT 031NT 041NT

PCSO PCSl PCS2 PCS3 PCS4 ALE TSYN10UT-TSYN40UT ClOCKOUT RESET

MAT10UT-MAT40UT

DEN A3 EDEO EDEl EDE2 EDE3

INTAO RESET

4

4

vee

R

IRa

SI"

f---IRI If\

IR3

INT 8529A-2 Ao

1m'A

~

00-0,

WR

1m Cs

r

-~

~ co_

~ co~ a.::::!

COo

~o.

~9 -100

-~

4r--...

co_

~~

~o.

COo

~9

'

r

-5l-

a:~

~

tea:

~~

c(X

0.

-Figure 2_1-5 Quad QPDM Schematic (continued)

8682A2. '·15

--"'

INTo

ADo -AD.,

OPDMCSl OPDMCS2 OPDMCS3 OPDMCS4 TSYNOUT ClK

T4

INTREADY RESETOUT

9682A2.1-1 4

CHAPTER 2

System Bus Interface

QPDM instructions are sent to each QPDM simultane-ously. This is called broadcasting. Broadcasting of instructions is accomplished by chip selecting all QPDMs and writing to Port O. Further details can be found in the QPDM Technical Manual. The hardware requirements for QPOM initialization and for broadcasting are a mechanism for individual chip selection as well as a global chip select.

DMA Requests

DMA with a muHiple QPDM system is fairly straightfor-ward. Both FREQ and DREQ are open-drain outputs.

Each QPDM in a system will release its FREQ or DREQ when it is ready so that a DMA request will be presented to the 80186. The FREQ controls DMA to the Instruction FIFO and OREQ controls DMA to and from the Data FIFO of the QPDM. In a muHiple QPDM system, all the FREQ lines of the QPDMs are tied together through a pull-up resistor to DRQ, of the 80186. Similarly, all the DREQ lines are tied together through a pull-up resistor to the ORQO input of the CPU. In the case of a data transfer (DREQ), as long as any QPDM is not ready to continue with the transfer, the node will be pulled LOW. When the last QPDM becomes ready, the node goes HIGH and a DMA request will be seen at the 80186. The same is true of the instruction FIFO and the FREQ pins. As long as any QPDM is not ready to request more instructions, the node goes LOW. When the last QPDM becomes ready, the node will be pulled HIGH through the pull-up resistor and an instruction DMA request will be seen at the DRQ, pin of the CPU.

To summarize, one can see that all DMA to and from muHiple QPDMs are synchronized by the open-drain AND connection. The open-drain AND ensures that all DREQ and FREQ requests of the QPDMs are active before the DMA request is seen at the processor. Above and beyond the previous discussion, the DMA cycles are the same as outlines in the single QPDM design.

Block Transfer to and from Display Memory In the multiple QPDM deSign, provisions have been made for display memory accesses by plane (hOrizontal on a selected bit plane) and by pixel (reading all bits in all planes per pixel). In a by plane Block I/O instruction, only one plane in asingle QPDM is selected for a read orwrite.

In the read case, a provision must be made to keep all QPDMs in synchronization. To do this, the processor fakes a read operation on all the QPDMs. The inactive QPDMs (do not contain the bit plane accessed) leave EDE not active, so as not to cause contention with the data ofthe only active QPDM. The active QPDM, the one with a plane active forthe instruction, places data on the bus as in a normal read cycle. In large systems, however,

we need external data transceivers. This is where the EOE (External Driver Enable) pin comes in handy. For the inactive QPDMs, the EDE pin does not go active to their corresponding bus transceivers. Only the active QPDM drives its EDE signal valid to its bus transceiver to allow its data onto the bus. Therefore, by adding a little more intelligence to the QPOM interface, synchroniza-tion is achieved and maintained even when only one bit plane in a single QPDM is to be accessed.

In a by pixel Block 1/0, the user wishes to access all bits in all planes per pixel. This implies that all QPDMs contribute the bits of the planes that they control for that particular pixel. Synchronization, therefore, is not a problem, as all QPDMs will be active. In a muHiple QPOM system, an extra set of transceivers must be provided to route the pixels from each QPDM to a single 16-bit data bus. These are shown on Sheet 8 of the Quad QPDM Schematic. For example, in this design each QPOM contributes four bits for each individual pixel. A mecha-nism has been provided in the QPDM to program the number of shifts necessary for the proper assembly of pixels. This is done by specifying the correct number (1, 2 or 4) dependent on the numberof QPDMs in the system in the BOS field of the Input or Output Block instructions.

To see how this works examine Figure 2.1-6, "By Pixel Read". On the first pixel's read cycle, each QPDM places 16 bits on its respective data bus, only four of which will be used. A 16-bit transceiver concatenates four bits from each QPDM to form a 16-bit data value. Following each cycle, each QPDM shifts its data four bits to the left. In this way the next pixel's four bits of data are pOSitioned correctly in the data bus to be assembled into the 16-bit value at the transceiver. This process continues until all 16-bit values for the selected number of pixels have been read. From a hardware standpoint, all that is required is an extra transceiver and extra decoding logic to selec-tively enable or disable the set of transceivers depending upon the type of access (by plane or by pixel).

From a software point of view it is best if planes appear in consistent bit positions. What this means in hardware terms is that some consideration must be given to how the data bits of the ''by pixel" transceiver are connected.

The relationship between data bits and planes is fixed by the organization of operands in the Set Activity Bits instruction. Each of four QPDMs extract four bits as shown below:

15 12 11

8 7

43

o

015 014 013

012

J

~

~~,W'~,'~,'~,'~~~,'~

0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3

~ ,.~

~S 0

16 15

QPOM4 14

13 lane 12

BY·PIXEL

~} N ,." .. ~ ,."W ,.,,'N ,.,,'

16

r!

O O O O P " 1 1 2 2 2 2 3 3 3 3 QPOM3

~O~

rl' 0

011 010 D9

11

Ian. 8 10

DB

$ I.}

~ ~~~~~~~~~~~~~~~~ 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 16 QPOM2

~~ P,

07 D6

05 D4

03 QPOMl

02 01

00 XCVR DE

Not.: ~ - bk lor p~.1 x from plane y.

Figure 2.1-6a By Pixel (Output Block) Read - First Cycle There is no reasonable way to change this relationship;

everything else will have to match. To make lID by-pixel conform, one must wire the by-pixel data transceiver as shown in Figure 2.1-6, "By Pixel Read". Also see Chapter 13 of the QPDM Technical Manual, ''The Relationship Between Data Bits and Pixels." It should be noted here that only pixels that are 16 planes or less can be proc-essed in one pass; deeper bit planes would require multiple passes.

Other Synchronization Concerns

The synchronization of getting new words out of the instruction FIFO and reading and writing the data ex·

change FIFOs use the MATIN and MAToUT pins. The MATouTpins of allthe QPDMs are ANDed together. This composite signal goes HIGH only when all the QPDMs are ready to begin the next instruction. All QPDMs

sample the composite MAT OUT signal at the MATIN input.

From an interface standpoint, allthat is required isto AND the MAT OUT pins and connect the composite signal to the MATIN pins. The AND is done in PAL device QPDM2.

In a similar fashion, the TSYNoUT and TSYN IN pin combi-nation is used to synchronize the bit map display memory bus activities. The same hardware considerations dis-cussed in the preceding paragraphs apply. The AND is done in PAL device QPDM1. Please note that even in a single QPDM system MATIN and MAToUT must be tied together, as are TSYNoUT and TSYNIN"

2.1.3 Hardware Overview

Read Cycles

The multiple QPDM read is shown in Figure 2.1-7, "Quad QPDM Read TIming". The situation is Sightly more

CHAPTER 2

System Bus Interface

015

014

J fi'I'I"i' IW'i' I'i'n i'I'

16 15

OPDM4

013 P, " " 2 2 2 2 3 3 3 3 4 4 4 4

012

p'.~

p'

,

5

BY-PIXEL

..

~} ~ ~ I'IW NW I'I'~ UI'

OPOM:! 10 11

F!

" " a 2 2 2 3 3 3 3 4 4 4 4

011

J,O~

lane 8

010

fl'

09

,

DB

16 7

$

~ ~~~~.~~~~~~~~~~~

t 1 1 1 , P Z 2 2 2 3 3 3 3 4 4 4 4

~}

OPDM2 6

~~

D7

P,

D6

..

D5

..

D4 16

D3 1 1 3 0 1 3 0 1 3 1

P, ~p'~p'p'p'~~~p'~p'~p.~~

~}

OPOMl

D2

~~

Dl

~

DO XCVR OE

T

NOle: ~ -bn for pixel x lrom plane y.

1182A2.1-1' PIXELOE

Figure 2.1·6b By Pixel (Output Block) Read - Second Cycle

complex than in the single QPDM case. We must modify

the transceiver PAL device logic to factor in the EDE

W dokumencie AM95C60-2 (Stron 24-31)