-
Notifications
You must be signed in to change notification settings - Fork 0
/
446693559.html
147 lines (133 loc) · 34.2 KB
/
446693559.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<!DOCTYPE html>
<html>
<head>
<title>Di Luo : Di Luo's CS232 Project 1</title>
<link rel="stylesheet" href="styles/site.css" type="text/css" />
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body class="theme-default aui-theme-default">
<div id="page">
<div id="main" class="aui-page-panel">
<div id="main-header">
<div id="breadcrumb-section">
<ol id="breadcrumbs">
<li class="first">
<span><a href="index.html">Di Luo</a></span>
</li>
<li>
<span><a href="413631037.html">Di Luo’s Home</a></span>
</li>
<li>
<span><a href="474513832.html">Di Luo's CS232</a></span>
</li>
</ol>
</div>
<h1 id="title-heading" class="pagetitle">
<span id="title-text">
Di Luo : Di Luo's CS232 Project 1
</span>
</h1>
</div>
<div id="content" class="view">
<div class="page-metadata">
Created by <span class='author'> Di Luo</span>, last modified on Sep 16, 2019
</div>
<div id="main-content" class="wiki-content group">
<p><strong><u>Description</u></strong>:</p><p>In this project, I used basic<span style="color: rgb(34,51,68);"> digital design components, such as AND gates and OR gates, to implement a prime number indicator and a traffic light circuit. The prime number indicator </span>has<span style="color: rgb(34,51,68);"> 4 inputs, treated as a 4-bit positive binary integer, and it outputs a 1 if the input is a prime number and 0 otherwise. The traffic light circuit transfers the input, which is also a <span style="color: rgb(34,51,68);">4-bit positive binary integer, into the output, which is <span style="color: rgb(34,51,68);">the simulation of the six lights of a 4-way traffic light. By testing the prime number indicator with GHDL and the traffic light circuit with hardware (a board with push-buttons and LED lights), I proved that the two circuits return correct outputs.</span></span></span></p><p><span style="color: rgb(34,51,68);"><br/></span></p><p><strong><u>Task 1</u></strong>:</p><p>In this task, I implemented a prime number indicator in circuit2.bdf, which has 4 inputs, treated as 4-bit binary numbers, and it would give a high output when the 4-bit input is prime in decimal and a low input when the number is not prime. The 4-bit binary numbers can represent decimal numbers from 0 to 15, and the prime numbers are as follows: 2, 3, 5, 7, 11, 13. The truth table is shown below:</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-thumbnail" draggable="false" width="100" src="attachments/446693559/447021166.png" data-image-src="attachments/446693559/447021166.png" data-unresolved-comment-count="0" data-linked-resource-id="447021166" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-15 at 9.29.50 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>Then I used K-map to get simplified boolean expression: A'C(B'+D)+D(B(+)C) (the "(+)" between B and C stands for XOR gate.). With the boolean expression, I builts the circuit in Quartus.</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-thumbnail" draggable="false" width="100" src="attachments/446693559/447021169.png" data-image-src="attachments/446693559/447021169.png" data-unresolved-comment-count="0" data-linked-resource-id="447021169" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-15 at 9.30.40 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021170.png" data-image-src="attachments/446693559/447021170.png" data-unresolved-comment-count="0" data-linked-resource-id="447021170" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="prime4.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>By testing the circuit with ghdl and GTKWave and the screenshot of the simulation is shown below, which shows the validity of the circuit since 6 high outputs appeared in the correct position in the bottom line, which represents the 6 prime numbers.</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021174.png" data-image-src="attachments/446693559/447021174.png" data-unresolved-comment-count="0" data-linked-resource-id="447021174" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="GTKWave_testCircuit2.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p> </p><p><strong><u>Task 2</u></strong>:</p><p>In this task, I implemented a traffic light circuit with two components in tlight.bdf, which simulates a traffic light four-way intersection. The first component is a counter, which has<span style="color: rgb(34,51,68);"> a clock and a clear button as inputs and a bus with 4 values as output. By <span style="color: rgb(34,51,68);">labeling the bus as </span><samp>q[3..0]</samp><span style="color: rgb(34,51,68);">, I was able to access the leftmost bit as q[3] and the other bits as q[2], q[1], and q[0]. The second component is</span></span> a combinational circuit that controls the six lights of a 4-way traffic light. The output signals are NS-red, NS-green, and NS-yellow, EW-red, EW-green, and EW-yellow. They follow the timings below, given the 4-bit input from the counter.</p><p><span style="color: rgb(34,51,68);"><span style="color: rgb(34,51,68);"> </span></span></p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th class="confluenceTh">Input Values</th><th class="confluenceTh">Light setting</th></tr><tr><td class="confluenceTd">0</td><td class="confluenceTd">N/S Red, E/W Red</td></tr><tr><td class="confluenceTd">1-5</td><td class="confluenceTd">N/S Green, E/W Red</td></tr><tr><td class="confluenceTd">6-7</td><td class="confluenceTd">N/S Yellow, E/W Red</td></tr><tr><td class="confluenceTd">8</td><td class="confluenceTd">N/S Red, E/W Red</td></tr><tr><td class="confluenceTd">9-13</td><td class="confluenceTd">N/S Red, E/W Green</td></tr><tr><td class="confluenceTd">14-15</td><td class="confluenceTd">N/S Red, E/W Yellow</td></tr></tbody></table></div><p>With the information above, I created the truth table:</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021181.png" data-image-src="attachments/446693559/447021181.png" data-unresolved-comment-count="0" data-linked-resource-id="447021181" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-15 at 9.41.45 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span>.</p><p>By simplifying with K-map, I got the boolean expressions for the lights in each of the colors in both directions.</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021185.png" data-image-src="attachments/446693559/447021185.png" data-unresolved-comment-count="0" data-linked-resource-id="447021185" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-15 at 9.42.20 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>With the boolean expressions, I implemented the circuit in Quartus:</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="900" src="attachments/446693559/447021189.png" data-image-src="attachments/446693559/447021189.png" data-unresolved-comment-count="0" data-linked-resource-id="447021189" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Whole circuit.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p><span style="color: rgb(34,51,68);"><span style="color: rgb(34,51,68);"> </span></span></p><p>Then, to test the validity of the circuit, I <span style="color: rgb(34,51,68);">used the board and had a push-button as the clock input and another push-button as the <span style="color: rgb(34,51,68);">asynchronous clear input. As noted in the picture below, two push-buttons respectively represent clock input, which increments the 4-bits binary number by one for each push, and the clear input, which resets the input 4-bits binary number to 0000. Six LED lights respectively represent the six output signals: NS-red, NS-green, and NS-yellow, EW-red, EW-green, and EW-yellow. By connecting the board to the computer and programming for the board, the input of pushing button went through the traffic light circuit and the LED lights displayed the output of the circuit. The video below shows the testing process, which proved the validity of the circuit since the lights shined in the same way as the truth table above.</span></span></p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021194.jpg" data-image-src="attachments/446693559/447021194.jpg" data-unresolved-comment-count="0" data-linked-resource-id="447021194" data-linked-resource-version="2" data-linked-resource-type="attachment" data-linked-resource-default-alias="IMG_2119.jpg" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/jpeg" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p><span style="color: rgb(34,51,68);"><div class="embeddedObject" >
<video src="/download/attachments/446693559/IMG_2117.MOV" height="380" width="480" controls>
Your browser does not support the HTML5 video element
</video>
</div>
</span></p><p><span style="color: rgb(34,51,68);"><span>Then I also tested the circuit with GHDL by using the counter and the clockbench offered in project description. I changed the code in clockbench for tesing my own circuit and also changed the input and the counter in tlight.bdf, which is shown in tlight2.bdf in the folder. The result is shown below, which also proves that the circuit works correctly.</span></span></p><p><span style="color: rgb(34,51,68);"><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image" draggable="false" src="attachments/446693559/447021445.png" data-image-src="attachments/446693559/447021445.png" data-unresolved-comment-count="0" data-linked-resource-id="447021445" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="newtlight.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span><span><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021444.png" data-image-src="attachments/446693559/447021444.png" data-unresolved-comment-count="0" data-linked-resource-id="447021444" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-16 at 6.31.26 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></span></span></p><p><span style="color: rgb(34,51,68);"><span><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021446.png" data-image-src="attachments/446693559/447021446.png" data-unresolved-comment-count="0" data-linked-resource-id="447021446" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="GHDLfortlight.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span>(0~155ns shows one circulation from input value 0 to 15)</span></span></p><p><span style="color: rgb(34,51,68);"><br/></span></p><p><strong><u>Extension</u></strong>:</p><p><strong>Extension 1</strong>: Extend the prime number circuit to 5-bits</p><p>For 5-bits binary numbers, they have prime numbers: 2,3,5,7,11,13,17,19,23,29,31, which can be translated to the truth table below:</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="310" src="attachments/446693559/447021252.png" data-image-src="attachments/446693559/447021252.png" data-unresolved-comment-count="0" data-linked-resource-id="447021252" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-16 at 7.46.09 AM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>By simplification with K-map, I got the boolean expression: B’DE+A’B’C’D+A’CD’E+A’C’DE+AB’C’E+ABCE, which can be further simplified as A'E(C(+)D)+AE(B(+)C)'+B'D(E+A'C').</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-thumbnail" draggable="false" width="300" src="attachments/446693559/447021253.jpg" data-image-src="attachments/446693559/447021253.jpg" data-unresolved-comment-count="0" data-linked-resource-id="447021253" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="IMG_0329.jpg" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/jpeg" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>Then I built the circuit with the simplified boolean expression in prime5.bdf:</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021338.png" data-image-src="attachments/446693559/447021338.png" data-unresolved-comment-count="0" data-linked-resource-id="447021338" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="prime5circuit.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>By testing the circuit with refined testbench (testCircuit2.vhd) shown below, I got the simulation result from GTKWave, which confirmed the validity of the 5-bits prime number circuit since the high outputs on the bottom line correspond to the 5-bits prime numbers.</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021340.png" data-image-src="attachments/446693559/447021340.png" data-unresolved-comment-count="0" data-linked-resource-id="447021340" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-16 at 3.15.26 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021341.png" data-image-src="attachments/446693559/447021341.png" data-unresolved-comment-count="0" data-linked-resource-id="447021341" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="prime5.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p> </p><p><strong>Extension 2</strong>: <span style="color: rgb(34,51,68);">Figure out how to use an FPGA board to test the circuit in addition to doing the simulation</span></p><p><span style="color: rgb(34,51,68);">This extension is shown above while I was testing the traffic light circuit.</span></p><p><span style="color: rgb(34,51,68);"><br/></span></p><p><span style="color: rgb(34,51,68);"><strong>Extension 3</strong>: D<span style="color: rgb(34,51,68);">esign the inverse circuit (it outputs 1 for all zeros and 0 for all ones), invert the output, and compare</span></span></p><p><span style="color: rgb(34,51,68);"><span style="color: rgb(34,51,68);">For this extension, I inverted the outputs for each of the lights in traffic light circuit. The K-maps and the simplified boolean expressions are shown below:</span></span></p><p><span style="color: rgb(34,51,68);"><span style="color: rgb(34,51,68);"><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021594.png" data-image-src="attachments/446693559/447021594.png" data-unresolved-comment-count="0" data-linked-resource-id="447021594" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-16 at 9.54.14 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021595.jpg" data-image-src="attachments/446693559/447021595.jpg" data-unresolved-comment-count="0" data-linked-resource-id="447021595" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="IMG_0330.jpg" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/jpeg" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></span></span></p><p><span style="color: rgb(0,0,0);">The original NSR needs 4 NOT, 1 AND and 1 OR gate and the inverted one needs 1 AND gates, 2 OR gate and 1 NOT gate. This would be simpler to implement based on the lower number of gates.</span></p><p><span style="color: rgb(0,0,0);">The original NSY needs 1 NOT gate and 1 AND gate and the inverted one needs 1 OR gate and 2 NOT gate. In this case the original NSY is simpler to implement.</span></p><p><span style="color: rgb(0,0,0);">The original NSG needs 2 NOT, 2 AND, 1 XOR and 1 OR gate and the inverted one needs 2 AND gates, 1 OR gate and 3 NOT gate. This would be simpler to implement based on the lower number of gates and the complexity of the gates since NOT gate is simpler than AND, OR or XOR gates.</span></p><p><span style="color: rgb(34,51,68);"><span style="color: rgb(34,51,68);"> </span></span></p><p><span style="color: rgb(0,0,0);"><span>The cases are similar for EWs, which means that 4 situations support inverse circuit and 2 support original one. So I could conclude that in terms of traffic light circuit, it is more efficient to implement the inverse circuit.</span></span></p><p><span style="color: rgb(34,51,68);"><span style="color: rgb(34,51,68);"><br/></span></span></p><p><span style="color: rgb(34,51,68);"><span style="color: rgb(34,51,68);"><strong>Extension 4</strong>: Implement a new circuit with a different function</span></span></p><p>For this extension I decided to implement a 4-bits Fibonacci number indicator with a new circuit in circuit1.bdf. In mathematics, the Fibonacci numbers, commonly denoted Fn form a sequence, called the Fibonacci sequence, such that each number is the sum of the two preceding ones, starting from 0 and 1. For 4-bits binary number there are 7 numbers belonging to Fn : 0, 1, 2, 3, 5, 8, 13. The truth table, K-map, and simplified boolean expression are shown below:</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-thumbnail" draggable="false" width="200" src="attachments/446693559/447021632.png" data-image-src="attachments/446693559/447021632.png" data-unresolved-comment-count="0" data-linked-resource-id="447021632" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-16 at 10.19.27 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-thumbnail" draggable="false" width="200" src="attachments/446693559/447021637.png" data-image-src="attachments/446693559/447021637.png" data-unresolved-comment-count="0" data-linked-resource-id="447021637" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Screen Shot 2019-09-16 at 10.22.52 PM.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-thumbnail" draggable="false" width="300" src="attachments/446693559/447021643.jpg" data-image-src="attachments/446693559/447021643.jpg" data-unresolved-comment-count="0" data-linked-resource-id="447021643" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="IMG_0331.jpg" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/jpeg" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>With the boolean expression I created the circuit.</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021664.png" data-image-src="attachments/446693559/447021664.png" data-unresolved-comment-count="0" data-linked-resource-id="447021664" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="fn.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p>By testing the circuit with GHDL and receiving correct output, I could confirm that the circuit is correct. The high outputs on the bottom line in GTKWave graph perfectly correspond the high output in truth table.</p><p><span class="confluence-embedded-file-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image" draggable="false" width="500" src="attachments/446693559/447021668.png" data-image-src="attachments/446693559/447021668.png" data-unresolved-comment-count="0" data-linked-resource-id="447021668" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="fntest.png" data-base-url="https://wiki.colby.edu" data-linked-resource-content-type="image/png" data-linked-resource-container-id="446693559" data-linked-resource-container-version="15"></span></p><p> </p><p><strong><u>Reflection</u></strong>:</p><p>This project offered me a chance to put the knowledge I learned in CS232 lectures into practical application. I understood how to use different software to create a virtual circuit on the computer and to test the validity of the circuits. In addition, while testing the traffic light circuit with a board in the actual world, I was surprised that I could build a connection between the virtual world and the actual world.</p><p> </p><p><strong><u>Source</u></strong>:</p><p>I received help from:</p><p>TA: Mike Zheng</p><p>Student: Caleb Hong Liang Chong, Qianhua Gao, Yixuan Qiu, Mingyang Li, Jiahao Ye, Zixuan Wang</p><p>Website: <a href="https://en.wikipedia.org/wiki/Fibonacci_number" class="external-link" rel="nofollow">https://en.wikipedia.org/wiki/Fibonacci_number</a></p>
</div>
<div class="pageSection group">
<div class="pageSectionHeader">
<h2 id="attachments" class="pageSectionTitle">Attachments:</h2>
</div>
<div class="greybox" align="left">
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021166.png">Screen Shot 2019-09-15 at 9.29.50 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021169.png">Screen Shot 2019-09-15 at 9.30.40 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021170.png">prime4.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021174.png">GTKWave_testCircuit2.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021181.png">Screen Shot 2019-09-15 at 9.41.45 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021185.png">Screen Shot 2019-09-15 at 9.42.20 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021189.png">Whole circuit.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021193.mov">IMG_2117.MOV</a> (video/quicktime)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021202.jpg">IMG_2119.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021194.jpg">IMG_2119.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021252.png">Screen Shot 2019-09-16 at 7.46.09 AM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021253.jpg">IMG_0329.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021338.png">prime5circuit.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021340.png">Screen Shot 2019-09-16 at 3.15.26 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021341.png">prime5.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021444.png">Screen Shot 2019-09-16 at 6.31.26 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021445.png">newtlight.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021446.png">GHDLfortlight.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021594.png">Screen Shot 2019-09-16 at 9.54.14 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021595.jpg">IMG_0330.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021632.png">Screen Shot 2019-09-16 at 10.19.27 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021637.png">Screen Shot 2019-09-16 at 10.22.52 PM.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021643.jpg">IMG_0331.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021664.png">fn.png</a> (image/png)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/446693559/447021668.png">fntest.png</a> (image/png)
<br/>
</div>
</div>
</div> </div>
<div id="footer" role="contentinfo">
<section class="footer-body">
<p>Document generated by Confluence on Aug 29, 2022 09:29</p>
<div id="footer-logo"><a href="http://www.atlassian.com/">Atlassian</a></div>
</section>
</div>
</div> </body>
</html>