440 likes | 586 Views
NLT-module Digitale Techniek Ontwerpen van digitale schakelingen met SIM-PL. Ben Bruidegom AMSTEL-instituut Universiteit van Amsterdam Reehorstconferentie 2007. What is SIM-PL? SIM-PL:. Simulatie ‘tool’ voor digitale schakelingen Inputs/outputs are ‘0’ or ‘1’
E N D
NLT-module Digitale Techniek Ontwerpen van digitale schakelingen met SIM-PL Ben Bruidegom AMSTEL-instituut Universiteit van Amsterdam Reehorstconferentie 2007
What 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
Waar 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
Schakeling Basic components Input/Output Connections & & & 1 Constructie van componenten en schakelingen (Basic) component • Component lay-out • Inputs/Outputs • Programming • Delay p q a & M Y b r
Circuits (hierarchy) Basic components Input/Output Connections & & & 1 Construction of components en circuits (Basic) component • Component lay-out • Inputs/Outputs • Programming • Delay p q & M r
Circuits (hierarchy) Basic components Input/Output Connections & & & 1 Construction of components en circuits (Basic) component • Component lay-out • Inputs/Outputs • Programming • Delay p q a & M Y b r
Circuits (hierarchy) Basic components Input/Output Connections & & & 1 Construction of components en circuits (Basic) component • Component lay-out • Inputs/Outputs • Programming • Delay p q a & M Y b Y = a && b; r
Circuits (hierarchy) Basic components Input/Output Connections & & & 1 Construction of components en circuits (Basic) component • Component lay-out • Inputs/Outputs • Programming Event triggered - Input Change - Clock Rising - Clock falling • Delay p q a & M Y b Y = a && b; r
Circuits (hierarchy) Basic components Input/Output Connections & & & 1 Construction of components en circuits (Basic) component • Component lay-out • Inputs/Outputs • Programming • Delay (propagation delay) p a & Y b q M a b r Y time
Circuits (hierarchy) Basic components Input/Output Connections & & & 1 Construction of components en circuits (Basic) component • Component lay-out • Inputs/Outputs • Programming • Delay p q a & M Y b r
Circuits (hierarchy) Basic components Input/Output Connections & & & 1 Construction of components en circuits (Basic) component • Component lay-out • Inputs/Outputs • Programming • Delay p q a & M Y b r
Circuits (hierarchy) Basic components Input/Output Connections (wires) & & & 1 Construction of components en circuits (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)
problem solution
problem Truth table solution
problem Truth table Boole expression solution
problem Truth table Boole expression Reduced Boole expression solution
problem Truth table Boole expression Reduced Boole expression solution Boole algebra
Implementation problem Truth table Boole expression Reduced Boole expression solution Boole algebra
Majority voting system Set value • redundant system a c b a Signal cond. sensor a Majority Voter Valve control b v Signal cond. sensor b c Vat Signal cond. sensor c valve
Boolean 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
Boole 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
Simplified Boole expression v = (b and c) or (a and c) or (a and b).
Implementation y y & 1 z and y z or y z z AND-gate OR-gate
Implementation with AND- and OR-gates v = (a and b) or (a and c) or (b and c). & & & &
Implementation with AND- and OR-gates v = (a and b) or (a and c) or (b and c). a b c & 1 & v &
Opgave: Ontwerp een Multiplexer Als S = ‘0’ wordt het signaal op ingang a doorgelaten Als S = ‘1’ wordt het signaal op ingang b doorgelaten.
Opgave: 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
Oplossing: Stap 1: De waarheidstabel Als S = ‘0’ wordt a doorgelaten Als S = ‘1’ wordt b doorgelaten.
SIM-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
ADDI $4, $3, 0200Hex Een basale calculator
SIM-PL is gemaakt door Wouter Koolen-Wijkstra Wouter is Master of Logic en is gestart met promotieonderzoek aan het Centrum voor Wiskunde en Informatica.
www.science.uva.nl/amstel/SIM-PL/voortgezet onderwijs NLT Te downloaden: • Deze presentatie • Onderwijsmateriaal • SIM-PL 2.1.1 + Componenten
Sponsors: • Stichting Edict • Digitale Universiteit • Instituut voor Informatica UvA • Bètapartners