22.09.2015 Views

of Microprocessors

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

162 MUSICAL ApPLICATIONS OF MICROPROCESSORS<br />

FUNCTION CODE<br />

ADDRESS BUS<br />

ADDRESS STROBE<br />

READ/WRITE<br />

DTACK<br />

DATA BUS<br />

70-, ~<br />

-'-:::~+-7D<br />

60 ...... I....<br />

,--+---1-----1'<br />

____--+-_-""'--,60<br />

70- 1- ...... 1+-0<br />

( VALID )<br />

y~--~/\<br />

FULL SPEED CYCLE<br />

I<br />

X<br />

\ ,<br />

\ ? ,<br />

15-1 ,......../15 ...... ,95-1<br />

"',,').<br />

~<br />

( VALID )-<br />

y<br />

I WAIT STATE CYCLE<br />

I<br />

Fig. 5-4. Motorola 68000 write cycle<br />

Like all microprocessors, the 68000 has provisions for waiting on slow<br />

memories, dynamic RAM refresh, and so forth. The others, however, have a<br />

wait signal, which must be activated to cause such a wait; ignoring the wait<br />

signal will allow full speed operation. The 68000 instead uses a data transfer<br />

acknowledge signal (DTACK), which must be driven to cease waiting and<br />

allow the cycle to complete. Motorola literature, which is geared toward<br />

large-system implementation, devotes a great deal <strong>of</strong>space to how this signal<br />

should be driven, which makes 68000 bus cycles appear to be much more<br />

complex than they really are. In reality, DTACK can be treated as simply the<br />

inverse <strong>of</strong> wait in a simple system. In systems with all static memory<br />

requiring no wait states, DTACK can simply be tied to ground, and the bus<br />

cycles will proceed at full speed.<br />

In any case, DTACK is sampled at the beginning <strong>of</strong>State 5. Ifit is low,<br />

the cycle proceeds, and read data is latched in the microprocessor at the<br />

beginning <strong>of</strong> State 7. If DTACK is high when sampled in State 5, States 4<br />

and 5 are repeated indefinitely until it is seen to be low. Thus, waiting is in<br />

increments <strong>of</strong> 125 nsec (assuming an 8-MHz clock), a much smaller penalty<br />

than with the 6502. For static memories (such as ROM), the allowable read<br />

access time is about 290 nsec, whereas, for dynamics (which are triggered by<br />

address strobe rather than an address change), it is about 235 nsee. Neithet<br />

requirement puts much stress on modern memory components, so zero wait<br />

state operation should generally be possible.<br />

Figure 5-4 shows a write cycle, which is quite similar to the read cycle<br />

just discussed. During State 2, simultaneously with Address Strobe, Read/<br />

Write goes low to signal a write cycle. The data strobes are not activated until<br />

State 4, at which time data on the data bus is guaranteed to be stable. When<br />

a word is written, both data strobes are activated to cause writing into both<br />

halves <strong>of</strong> the word. However, only one is activated when a byte write is to be<br />

performed. Memory must be organized into two 8-bit halves such that<br />

writing only occurs when the corresponding data strobe is activated in

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!