21.08.2013 Views

Laboratory 4 A MIDI Interface - Department of Electronics at Carleton ...

Laboratory 4 A MIDI Interface - Department of Electronics at Carleton ...

Laboratory 4 A MIDI Interface - Department of Electronics at Carleton ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Carleton</strong> University Description <strong>of</strong> the Blocks<br />

Description <strong>of</strong> the Blocks<br />

The STRT_STP Block<br />

Refer to the timing diagram Fig. 4.9. Note particularly:<br />

Region B is shaded .<br />

Region C is shaded .<br />

Note the values <strong>of</strong> SI, DATAVALID and ACTIVE in the regions A, B, and C.<br />

Region C is when SI is not active, th<strong>at</strong> is idle. See Fig. 4.4.<br />

When Region A is where ACTIVE starts up, but before DATAVALID goes false (low).<br />

Design the circuit to gener<strong>at</strong>e the ACTIVE signal from SI and DATAVALID.<br />

FIGURE 4.9 Timing used to gener<strong>at</strong>e the circuit for STRT_STP<br />

SI<br />

DATAVALID<br />

0<br />

1<br />

0<br />

ACTIVE<br />

B<br />

C<br />

A<br />

Complete truth table, Karnaugh map and schem<strong>at</strong>ic for STRT_STP. With proper use <strong>of</strong> don’t cares, you will<br />

need only one 2-input g<strong>at</strong>e. Don’t cares come from impossible inputs; why cannot DATAVALID stay 0 in region<br />

C?<br />

DIVBY8<br />

This circuit basically divides the clock by 8 to get a 32.0µs time base, which is used to gener<strong>at</strong>e a single<br />

4µs pulse every 32.0µs..<br />

ACTIVE<br />

CE<br />

CLK<br />

RST<br />

Q0<br />

Q1<br />

Q2<br />

to where?<br />

CLR = ASYNCHRONOUS RESET<br />

CE = CHIP INPUT ENABLE<br />

CARRY OUT “TC” ON 7 COUNT<br />

Care must be taken to only sample the SI signal when it is stable. One way is to read SI in the middle <strong>of</strong><br />

each bit. Since CLK is 8 times the bit r<strong>at</strong>e <strong>of</strong> SI, this can be done sampling the first bit after 4 CLK pulses and<br />

<strong>MIDI</strong>-6 SWITCHING CIRCUITS © J.Knight, March 1, ’06<br />

D<br />

C<br />

CE<br />

D<br />

C<br />

CE<br />

D<br />

C<br />

CE<br />

Q<br />

CLR<br />

Q<br />

CLR<br />

Q<br />

CLR<br />

TC<br />

Q0<br />

Q1<br />

Q2<br />

stop<br />

bit<br />

Q0 + = ( Q0 )·CE + Q0·CE<br />

On the flip-flops<br />

CE = Clock Enable (Chip Enable)<br />

The Q output will not change unless<br />

CE is high.<br />

1<br />

1<br />

FIGURE 4.10<br />

A 3-bit binary counter you<br />

will need to modify<br />

Q1 + =( Q0⊕Q1)·CE + Q1·CE<br />

fdce in the Xilinx libraries<br />

Use fdc if CE is not needed.<br />

Q2 + = (Q2⊕(Q1·Q0)·CE + Q2·CE<br />

Where should ACTIVE be placed in these<br />

equ<strong>at</strong>ions?

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

Saved successfully!

Ooh no, something went wrong!