1 Woudschotenconferentie 2006 Ben Bruidegom AMSTEL-instituut Universiteit van Amsterdam NLT-module Digitale Techniek Ontwerpen van digitale schakelingen met SIM-PL
2 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
3 Register Waar kun je SIM-PL bij gebruiken? Pipeline processor Gate Flipflop/XOR One cycle machine Calculator File of registers/ALU Digital electronics Embedded Systems Assembly programming Computer architectuur
4 Constructie van componenten en schakelingen (Basic) component Component lay-out Inputs/Outputs Programming Delay Schakeling Basic components Input/Output Connections & 11 & & & a b Y p q r M
5 & Construction of components en circuits (Basic) component Component lay-out Inputs/Outputs Programming Delay Circuits (hierarchy) Basic components Input/Output Connections 11 & & & p q r M
6 Construction of components en circuits (Basic) component Component lay-out Inputs/Outputs Programming Delay Circuits (hierarchy) Basic components Input/Output Connections & 11 & & & a b Y p q r M
7 Construction of components en circuits (Basic) component Component lay-out Inputs/Outputs Programming Delay Circuits (hierarchy) Basic components Input/Output Connections & 11 & & & a b Y p q r M Y = a && b;
8 Construction 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 & 11 & & & a b Y p q r M Y = a && b;
9 Construction of components en circuits (Basic) component Component lay-out Inputs/Outputs Programming Delay (propagation delay) Circuits (hierarchy) Basic components Input/Output Connections & 11 & & & a b Y p q r M time Y b a
10 Construction of components en circuits (Basic) component Component lay-out Inputs/Outputs Programming Delay Circuits (hierarchy) Basic components Input/Output Connections & 11 & & & a b Y p q r M
11 Construction of components en circuits (Basic) component Component lay-out Inputs/Outputs Programming Delay Circuits (hierarchy) Basic components Input/Output Connections & 11 & & & a b Y p q r M
12 Construction of components en circuits (Basic) component Component lay-out Inputs/Outputs Programming Delay Circuits (hierarchy) Basic components Input/Output Connections (wires) & 11 & & & a b Y p q r M M = (p and q) or (q and r) or (p and r)
13 Ontwerpen van een digitale schakeling Twee methodes : Karnaugh diagrams havo hbo e-technology Waarheidstabel en Boole algebra vwo universiteiten
14 problemsolution
15 problemTruth tablesolution
16 problem Boole expression Truth tablesolution
17 problem Boole expression Truth table Reduced Boole expression solution
18 problem Boole expression Truth table Reduced Boole expression solution Boole algebra
19 problem Boole expression Truth table Reduced Boole expression solution Boole algebra Implementation
20 Majority voting system redundant system Majority Voter Signal cond. sensor a Signal cond. sensor b Signal cond. sensor c Valve control a vb c Vat valve cba Set value
21 Truth table
22 Truth table
23 Truth table Boole exp. a b ccombinatie van a, b en c die ‘1’ oplevertv 0 0 0not(a) and not(b) and not(c) not(a) and not(b) and c not(a) and b and not(c) not(a) and b and c a and not(b) and not(c) a and not(b) and c a and b and not(c) a and b and c1
24 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
25 Boole expr. simplified Boole expr. and or not 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).
26 Boole expr. simplified Boole expr.
27 Boole expr. simplified Boole expr.
28 Simplified Boole expression v = (b and c) or (a and c) or (a and b).
29 Implementation & AND-gate 11 OR-gate yy zz z and y z or y
30 & & & & Implementation with AND- and OR-gates v = (a and b) or (a and c) or (b and c).
31 Implementation with AND- and OR-gates & & & 11 abcabc v v = (a and b) or (a and c) or (b and c).
32 KARNAUGH-DIAGRAM
33 KARNAUGH-DIAGRAM
34 KARNAUGH-DIAGRAM
35 Opgave: Ontwerp een Multiplexer Als S = ‘0’ wordt het signaal op ingang a doorgelaten Als S = ‘1’ wordt het signaal op ingang b doorgelaten.
36 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 Opgave: Ontwerp een Multiplexer
37 Oplossing: Stap 1: De waarheidstabel sabY Als S = ‘0’ wordt a doorgelaten Als S = ‘1’ wordt b doorgelaten.
38 Oplossing: Stap 2: Boole-uitdrukking sabY
39 Oplossing: Stap 3: Vereenvoudigen
40 Oplossing: Stap 4: Ontwerp implementeren
41 Oplossing: Stap 5: Testen met Executer
42 Meer modellen: vier-bits opteller
43 Register SIM-PL & het vo-vak: informatica Pipeline processor Gate Flipflop/XOR One cycle machine Calculator File of registers/ALU Digital electronics Embedded Systems Assembly programming Computer architectuur Calculator Harvard machine
44 ADDI $4, $3, 0200 Hex Een basale calculator
45 SIM-PL is gemaakt door Wouter Koolen-Wijkstra Wouter heeft vorige week zijn Master of Logic behaald en is gestart met promotieonderzoek aan het Centrum voor Wiskunde en Informatica.
46 Website: Software Componenten Tutorial Onderwijsmateriaal Uitgewerkt profielwerkstuk Mastermind (wordt over nagedacht)
47 Sponsors: Stichting Edict Digitale Universiteit Instituut voor Informatica UvA Bètapartners
48 Vragen?