1 / 8

Arbitrary Waveforms

Learn how to use state Q2, Q1, Q0 as inputs to create arbitrary waveforms using a combinational circuit. Gain insights from example exercises to enhance your understanding.

shermane
Download Presentation

Arbitrary Waveforms

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arbitrary Waveforms Lecture L8.5 Section 8.2

  2. State Q2 Q1 Q0 Q2.D Q1.D Q0.D D Q Q0.D Q0 CLK !Q s0 0 0 0 0 0 1 s1 0 0 1 0 1 0 s2 0 1 0 0 1 1 s3 0 1 1 1 0 0 s4 1 0 0 1 0 1 s5 1 0 1 1 1 0 s6 1 1 0 1 1 1 s7 1 1 1 0 0 0 D Q Q1.D Q1 CLK !Q D Q Q2.D Q2 CLK !Q Recall Divide-by-8 Counter Use Q2, Q1, Q0 as inputs to a combinational circuit to produce an arbitrary waveform.

  3. Q1 Q0 1 1 00 01 11 10 Q2 0 1 1 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 Example (See Exercise 7.10) State Q2 Q1 Q0 Q2.D Q1.D Q0.D y s0 0 0 0 0 0 1 1 s1 0 0 1 0 1 0 1 s2 0 1 0 0 1 1 0 s3 0 1 1 1 0 0 0 s4 1 0 0 1 0 1 0 s5 1 0 1 1 1 0 1 s6 1 1 0 1 1 1 0 s7 1 1 1 0 0 0 1 y = !Q2 & !Q1 # Q2 & Q0

  4. waveform.abl MODULE waveform TITLE 'Divide by 8 Counter, waveform' DECLARATIONS hex7seg interface([D3..D0] -> [a,b,c,d,e,f,g]); d7R FUNCTIONAL_BLOCK hex7seg; " INPUT PINS " CLK PIN 12; " 1 Hz clock (jumper) clear PIN 11; " switch 1 " OUTPUT PINS " Q2..Q0 PIN 41,43,44 ISTYPE 'reg'; " LED 14..16 Q = [Q2..Q0]; " 3-bit output vector Y PIN 35 ISTYPE 'com'; " LED 9 [a,b,c,d,e,f,g] PIN 15,18,23,21,19,14,17 ISTYPE 'com'; " Rightmost (units) 7-segment LED display

  5. waveform.abl (cont.) EQUATIONS Q.AR = clear; Q.C = CLK; Q2.D = !Q2 & Q1 & Q0 # Q2 & !Q1 # Q2 & !Q0; Q1.D = !Q1 & Q0 # Q1 & !Q0; Q0.D = !Q0; [a,b,c,d,e,f,g] = d7R.[a,b,c,d,e,f,g]; d7R.[D2..D0] = Q; d7R.D3 = 0; Y = !Q2 & !Q1 # Q2 & Q0;

  6. waveform.abl (cont.) test_vectors(CLK -> [Q,Y]) .C. -> [1,1]; .C. -> [2,0]; .C. -> [3,0]; .C. -> [4,0]; .C. -> [5,1]; .C. -> [6,0]; .C. -> [7,1]; .C. -> [0,1]; .C. -> [1,1]; .C. -> [2,0]; .C. -> [3,0]; .C. -> [4,0]; END

  7. Morse code --A

  8. K-map for A

More Related