1 Ben Bruidegom AMSTEL-instituut Universiteit van Amsterdam Reehorstconferentie 2007 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
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 Opgave: Ontwerp een Multiplexer Als S = ‘0’ wordt het signaal op ingang a doorgelaten Als S = ‘1’ wordt het signaal op ingang b doorgelaten.
33 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
34 Oplossing: Stap 1: De waarheidstabel sabY Als S = ‘0’ wordt a doorgelaten Als S = ‘1’ wordt b doorgelaten.
35 Oplossing: Stap 2: Boole-uitdrukking sabY
36 Oplossing: Stap 3: Vereenvoudigen
37 Oplossing: Stap 4: Ontwerp implementeren
38 Oplossing: Stap 5: Testen met Executer
39 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
40 ADDI $4, $3, 0200 Hex Een basale calculator
41 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.
42 voortgezet onderwijs NLT Te downloaden: Deze presentatie Onderwijsmateriaal SIM-PL Componenten
43 Sponsors: Stichting Edict Digitale Universiteit Instituut voor Informatica UvA Bètapartners
44 Vragen?