aboutsummaryrefslogtreecommitdiff
path: root/design
diff options
context:
space:
mode:
Diffstat (limited to 'design')
-rw-r--r--design/readme.md6
-rw-r--r--design/stopwatch_fsm.svg33
-rw-r--r--design/stopwatch_fsm_backup.json1
3 files changed, 38 insertions, 2 deletions
diff --git a/design/readme.md b/design/readme.md
index 74196dc..af5b335 100644
--- a/design/readme.md
+++ b/design/readme.md
@@ -9,10 +9,11 @@ ontwerpbestand
|bestand (.dig)|beschrijving|
|-|-|
-|2c|two's complement|
+|2c|two's complement (with signed output)|
|add1b|1-bit full adder|
|add4b|4-bit full adder **(week 1)**|
|add8b|8-bit full adder|
+|add8bs|8-bit full adder (signed output)|
|alu|arithmetic logic unit **(week 3)**|
|bcd-decoder|bcd naar 7-segment display segment data|
|bcd2disp|halve opdrachtuitwerking **(week 2)**|
@@ -20,9 +21,10 @@ ontwerpbestand
|display-module|dummy module voor display testen in digital|
|equal|test of A = B|
|half-add|half adder|
-|min8b|A - B|
+|min8b|A - B (signed)|
|rl8b|rotate left 8-bits|
|rr8b|rotate right 8-bits|
|sl8b|shift left 8-bits|
|sr8b|shift right 8-bits|
+|stopp|(abs8b) take absolute value of signed 8-bit integer|
diff --git a/design/stopwatch_fsm.svg b/design/stopwatch_fsm.svg
new file mode 100644
index 0000000..dc7174e
--- /dev/null
+++ b/design/stopwatch_fsm.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+
+<svg width="797" height="599" version="1.1" xmlns="http://www.w3.org/2000/svg">
+ <ellipse stroke="black" stroke-width="1" fill="none" cx="211.5" cy="301.5" rx="31" ry="31"/>
+ <text x="184.5" y="307.5" font-family="Times New Roman" font-size="20">r:0/l:0</text>
+ <ellipse stroke="black" stroke-width="1" fill="none" cx="332.5" cy="409.5" rx="31" ry="31"/>
+ <text x="305.5" y="415.5" font-family="Times New Roman" font-size="20">r:0/l:1</text>
+ <ellipse stroke="black" stroke-width="1" fill="none" cx="211.5" cy="208.5" rx="31" ry="31"/>
+ <text x="184.5" y="214.5" font-family="Times New Roman" font-size="20">r:1/l:0</text>
+ <ellipse stroke="black" stroke-width="1" fill="none" cx="211.5" cy="409.5" rx="31" ry="31"/>
+ <text x="184.5" y="415.5" font-family="Times New Roman" font-size="20">r:0/l:0</text>
+ <ellipse stroke="black" stroke-width="1" fill="none" cx="332.5" cy="301.5" rx="31" ry="31"/>
+ <text x="305.5" y="307.5" font-family="Times New Roman" font-size="20">r:0/l:1</text>
+ <polygon stroke="black" stroke-width="1" points="211.5,332.5 211.5,378.5"/>
+ <polygon fill="black" stroke-width="1" points="211.5,378.5 216.5,370.5 206.5,370.5"/>
+ <text x="142.5" y="361.5" font-family="Times New Roman" font-size="20">!b&#8320; * b&#8321;</text>
+ <polygon stroke="black" stroke-width="1" points="242.5,409.5 301.5,409.5"/>
+ <polygon fill="black" stroke-width="1" points="301.5,409.5 293.5,404.5 293.5,414.5"/>
+ <text x="260.5" y="430.5" font-family="Times New Roman" font-size="20">!b&#8321;</text>
+ <polygon stroke="black" stroke-width="1" points="332.5,378.5 332.5,332.5"/>
+ <polygon fill="black" stroke-width="1" points="332.5,332.5 327.5,340.5 337.5,340.5"/>
+ <text x="337.5" y="361.5" font-family="Times New Roman" font-size="20">b&#8321;</text>
+ <polygon stroke="black" stroke-width="1" points="301.5,301.5 242.5,301.5"/>
+ <polygon fill="black" stroke-width="1" points="242.5,301.5 250.5,306.5 250.5,296.5"/>
+ <text x="260.5" y="292.5" font-family="Times New Roman" font-size="20">!b&#8321;</text>
+ <path stroke="black" stroke-width="1" fill="none" d="M 197.896,273.886 A 75.564,75.564 0 0 1 197.896,236.114"/>
+ <polygon fill="black" stroke-width="1" points="197.896,236.114 191.056,242.611 200.738,245.11"/>
+ <text x="126.5" y="261.5" font-family="Times New Roman" font-size="20">b&#8320; * !b&#8321;</text>
+ <path stroke="black" stroke-width="1" fill="none" d="M 223.587,236.855 A 83.859,83.859 0 0 1 223.587,273.145"/>
+ <polygon fill="black" stroke-width="1" points="223.587,273.145 230.199,266.416 220.436,264.252"/>
+ <text x="230.5" y="261.5" font-family="Times New Roman" font-size="20">!b&#8320;</text>
+</svg>
diff --git a/design/stopwatch_fsm_backup.json b/design/stopwatch_fsm_backup.json
new file mode 100644
index 0000000..75c6f3f
--- /dev/null
+++ b/design/stopwatch_fsm_backup.json
@@ -0,0 +1 @@
+{"nodes":[{"x":211,"y":301,"text":"r:0/l:0","isAcceptState":false,"textOnly":false},{"x":332,"y":409,"text":"r:0/l:1","isAcceptState":false,"textOnly":false},{"x":211,"y":208,"text":"r:1/l:0","isAcceptState":false,"textOnly":false},{"x":211,"y":409,"text":"r:0/l:0","isAcceptState":false,"textOnly":false},{"x":332,"y":301,"text":"r:0/l:1","isAcceptState":false,"textOnly":false}],"links":[{"type":"Link","nodeA":0,"nodeB":3,"text":"!b_0 * b_1","lineAngleAdjust":0,"parallelPart":0.5,"perpendicularPart":0},{"type":"Link","nodeA":3,"nodeB":1,"text":"!b_1","lineAngleAdjust":0,"parallelPart":0.5,"perpendicularPart":0},{"type":"Link","nodeA":1,"nodeB":4,"text":"b_1","lineAngleAdjust":0,"parallelPart":0.5,"perpendicularPart":0},{"type":"Link","nodeA":4,"nodeB":0,"text":"!b_1","lineAngleAdjust":0,"parallelPart":0.5,"perpendicularPart":0},{"type":"Link","nodeA":0,"nodeB":2,"text":"b_0 * !b_1","lineAngleAdjust":3.141592653589793,"parallelPart":0.4946236559139785,"perpendicularPart":-16},{"type":"Link","nodeA":2,"nodeB":0,"text":"!b_0","lineAngleAdjust":3.141592653589793,"parallelPart":0.46236559139784944,"perpendicularPart":-14}],"nodeRadius":31} \ No newline at end of file