this means that each sub circuit had to be constructed individually and the

# This means that each sub circuit had to be

• Lab Report
• 17
• 100% (14) 14 out of 14 people found this document helpful

This preview shows page 10 - 15 out of 17 pages.

this means that each sub circuit had to be constructed individually and the outputs from one sub circuit was put as the input of the next sub circuit as needed. IMPLEMENTATION AND CIRCUIT BUILDING In this lab the first step was to build the counter circuit as was shown in the design section of this report. The counter circuit consist of a flip-flop, a divide-by-two circuit and a series of logic gates leading to the outputs Lite_1, Lite_2, Lite_3 and Emerg. Figure 11 below shows the counter circuit that was built using the software. FIGURE 11: COUNTER CIRCUIT IMPLEMENTATION
FIGURE 12: LEFT CONTROL BOX IMPLEMENTATION The final step was to build the right control box circuit which quite similar to the left control box. Figure 13 shows the schematic of the right control box that was built using the software.
FIGURE 13: RIGHT CONTROL BOX IMPLEMENTATION
WAVEFORM ANALYSIS The Verilog test fixture is as follows: // Verilog test fixture schematic TBirdTestFixture.v – Feb 26, 2018. timescale 1s / 1ms module TBird_TestFixture; // Outputs from your circuit wire BULB_L1, BULB_L2, BULB_L3, BULB_R1, BULB_R2, BULB_R3; wire CLK; // Inputs to your circuit reg L, R, B, RST, fCLK; // Generate a clock, real Time; initial begin fCLK=0; Time=0; forever #0.5 Time=Time+0.5; //Keep track of time in sec. end //\$time in ModleSim gave ps? always // (0.5 sec)/4 = 0.0625 sec. begin #0.062 fCLK=~fCLK; // Correct lack of 4 digit time resolution. #0.063 fCLK=~fCLK; // by using a slightly asymmetric clock. end // Make signals in tbirdtop visable in the test fixture. wire Emerg, LITE_1, LITE_2, LITE_3; // Emerg error corrected, Tue, Jan 8,2011 assign Emerg=UUT.Emerg, LITE_1=UUT.LITE_1, LITE_2=UUT.LITE_2, LITE_3=UUT.LITE_3; // TESTS START HERE // ================================================================ // Set all the switches low initially initial begin L=0; R=0; B=0; // Do an initial reset to make Q0 =0 at the start of the simulation. RST = 0; #0.1 RST = 1; // Set RST high after a 0.1 s delay
#1.7