Title: Ben Bruidegom AMSTEL-instituut Universiteit van Amsterdam
1NLT-module Digitale Techniek Ontwerpen van
digitale schakelingen met SIM-PL
Ben Bruidegom AMSTEL-instituut Universiteit van
Amsterdam Reehorstconferentie 2007
2What is SIM-PL?SIM-PL
- Simulatie tool voor digitale schakelingen
- Inputs/outputs are 0 or 1
- Complexiteit van poort tot processor
- Laat zien wat er achtereenvolgens gebeurt als er
een instructie van een computerprogramma wordt
uitgevoerd. - The hardware/software interface
- Auteursomgeving voor docenten, scholieren en
studenten
3Waar kun je SIM-PL bij gebruiken?
Computer architectuur
Pipeline processor
Assembly programming
One cycle machine
Calculator
Embedded Systems
File of registers/ALU
Register
Flipflop/XOR
Digital electronics
Gate
4Constructie van componenten en schakelingen
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay
- Schakeling
- Basic components
- Input/Output
- Connections
p
q
a
M
Y
b
r
5Construction of components en circuits
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay
p
q
M
r
6Construction of components en circuits
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay
p
q
a
M
Y
b
r
7Construction of components en circuits
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay
p
q
a
M
Y
b
Y a b
r
8Construction of components en circuits
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Event triggered
- - Input Change
- - Clock Rising
- - Clock falling
- Delay
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections
p
q
a
M
Y
b
Y a b
r
9Construction of components en circuits
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay (propagation delay)
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections
p
a
Y
b
q
M
a
b
r
Y
time
10Construction of components en circuits
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay
p
q
a
M
Y
b
r
11Construction of components en circuits
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay
p
q
a
M
Y
b
r
12Construction of components en circuits
- Circuits (hierarchy)
- Basic components
- Input/Output
- Connections (wires)
- (Basic) component
- Component lay-out
- Inputs/Outputs
- Programming
- Delay
p
q
a
M
Y
b
r
M (p and q) or (q and r) or (p and r)
13Ontwerpen van een digitale schakeling
14problem
solution
15problem
Truth table
solution
16problem
Boole expression
Truth table
solution
17problem
Boole expression
Truth table
Reduced Boole expression
solution
18problem
Boole expression
Truth table
Reduced Boole expression
solution
Boole algebra
19Implementation
problem
Boole expression
Truth table
Reduced Boole expression
solution
Boole algebra
20Majority voting system
Set value
a
Signal cond. sensor a
c
b
a
Majority Voter
Valve control
v
b
Signal cond. sensor b
c
Signal cond. sensor c
Vat
valve
21Truth table
22Truth table
23Truth table ? Boole exp.
a b c combinatie van a, b en c die 1 oplevert v
0 0 0 not(a) and not(b) and not(c) 0
0 0 1 not(a) and not(b) and c 0
0 1 0 not(a) and b and not(c) 0
0 1 1 not(a) and b and c 1
1 0 0 a and not(b) and not(c) 0
1 0 1 a and not(b) and c 1
1 1 0 a and b and not(c) 1
1 1 1 a and b and c 1
24Boolean expression
- v (not(a) and b and c) or
- (a and not(b) and c) or
- (a and b and not(c)) or
- (a and b and c).
Max term representatie
25Boole expr. ? simplified Boole expr.
- v (not(a) and b and c) or (a and not(b) and c)
or - (a and b and not(c)) or (a and b and c).
not
or
and
26Boole expr. ? simplified Boole expr.
27Boole expr. ? simplified Boole expr.
28Simplified Boole expression
- v (b and c) or (a and c) or (a and b).
29Implementation
y
y
?1
z and y
z or y
z
z
AND-gate
OR-gate
30Implementation with AND- and OR-gates
- v (a and b) or (a and c) or (b and c).
31Implementation with AND- and OR-gates
v (a and b) or (a and c) or (b and c).
a b c
?1
v
32Opgave Ontwerp een Multiplexer
Als S 0 wordt het signaal op ingang a
doorgelaten Als S 1 wordt het signaal op
ingang b doorgelaten.
33Opgave Ontwerp een Multiplexer
- Stap 1 Maak de waarheidstabel ( 3 variabelen 8
regels) - Stap 2 Maak de Boole-expressie (Maxterm
representatie) - Stap 3 Vereenvoudig deze expressie
- Stap 4 Implementeer een schakeling met poorten.
- Stap 5 Test schakeling
- Als test voldoet ? klaar
- Als test faalt ? ga weer na stap 1
34Oplossing Stap 1 De waarheidstabel
s a b Y
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1
Als S 0 wordt a doorgelaten Als S 1 wordt
b doorgelaten.
35Oplossing Stap 2 Boole-uitdrukking
s a b Y
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1
36Oplossing Stap 3 Vereenvoudigen
37Oplossing Stap 4 Ontwerp implementeren
38Oplossing Stap 5 Testen met Executer
39SIM-PL het vo-vak informatica
Computer architectuur
Pipeline processor
Assembly programming
One cycle machine
Calculator
Calculator
Embedded Systems
File of registers/ALU
Register
Flipflop/XOR
Digital electronics
Gate
40ADDI 4, 3, 0200Hex
Een basale calculator
41SIM-PL is gemaakt door Wouter Koolen-Wijkstra
Wouter is Master of Logic en is gestart met
promotieonderzoek aan het Centrum voor Wiskunde
en Informatica.
42www.science.uva.nl/amstel/SIM-PL/ ?voortgezet
onderwijs ? NLT
- Te downloaden
- Deze presentatie
- Onderwijsmateriaal
- SIM-PL 2.1.1 Componenten
43Sponsors
- Stichting Edict
- Digitale Universiteit
- Instituut voor Informatica UvA
- Bètapartners
44Vragen?