auteursomgeving voor digitale componenten n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Auteursomgeving voor Digitale Componenten PowerPoint Presentation
Download Presentation
Auteursomgeving voor Digitale Componenten

Loading in 2 Seconds...

play fullscreen
1 / 22
abraham-clay

Auteursomgeving voor Digitale Componenten - PowerPoint PPT Presentation

123 Views
Download Presentation
Auteursomgeving voor Digitale Componenten
An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Auteursomgeving voor Digitale Componenten SIM-PL Ben Bruidegom Wouter Koolen-Wijkstra AMSTEL INSTITUUT FACULTEIT DER NATUURWETENSCHAPPEN, WISKUNDE EN INFORMATICA UNIVERSITEITVAN AMSTERDAM

  2. Programma • 14.00 Inleiding SIM-PL • Digitale Componenten • Demo Simulator • Demo Editor • 14.30 Practicum • 14.45 Koffiepauze • 15.00 Demo • Rekenmachine en • Harvard Processor • 15.15 Practicum vervolg • 15.30 Discussie: • Is SIM-PL geschikt voor het VO? • Wat moet er beter? • Wil ik SIM-PL dan gaan gebruiken?

  3. Objecten: Digitale ComponentenHardware met alle in/uitgangen 0 of 1 • Complexiteit • Van poort tot processor • Hiërarchische compositie • Timing 16 bit Processor 16 bit rekenmachine 16 bit ALU 2 * 4 bit opteller Full Adder AND/OR/XOR-poort

  4. Voorbeeld poortschakeling: “Majority Voter” Set value • redundant system a c b a Signal cond. sensor a Majority Voter Valve control b Y Signal cond. sensor b c Vat Signal cond. sensor c valve

  5. Waarheidstabel “Majority Voter” Logica Formule: Y = (a AND b) OR (a AND c) OR (b AND c)Benodigde componenten: - Drie AND-poorten met twee ingangen - Eén OR-poort met drie ingangen

  6. Schema “Majority Voter”

  7. Demo SIM-PL Executer

  8. Complex (hiërarchie) Subcomponenten Input/Output Verbindingen Ontwerpen van componenten en schakelingen Simple (basis) • Basisfiguren • Input/Output • Programmering • Delay

  9. Voorbeeld: 4 bits opteller

  10. Demo SIM-PL Editor • Simple Component • Bouwen XOR poort • Complex Component • Full Adder bouwen uit: • Majority Voter • Twee XOR-poorten

  11. Instruction Memory Registers (16) ALU First Register Address Data Second Register Address Data Destination Reg. Address Data PC Instruction Address 4 bit address 16 bit data 3 bit control 16 bit rekenmachine

  12. Mnemonic Betekenis Voorbeeld Betekenis LOAD rd, imm Laad getal in register LOAD $1, 0x 0020 r1  0x0020 MOVE rd, rt Copy register MOVE $3, $2 r3  r2 ADD rd, rs, rt Optellen registers ADD $5, $6, $7 r5  r6 + r7 SUB rd, rs, rt Aftrekken registers SUB $5, $6, $7 r5  r6 - r7 ADDI rd, rs, imm Optellen register en constante ADDI $5, $6, 0x1234 r5  r6 + 0x1234 SUBI rd, rs, imm Aftrekken register en constante SUBI $7, $6, 0x1234 r7  r6 - 0x1234 Instructieset

  13. 16 bit rekenmachine SUBI $4, $3, 0100

  14. Demo rekenmachine

  15. Van rekenmachine  processor • Toevoegen: • Data Memory • Componenten om “loopjes” te kunnen executeren

  16. Uitbreiding met Data Memory Instruction Memory Registers (16) DataMemory ALU Register # PC Address Instruction Register # Address Data out Register # Data in Data Bij een Harvard architectuur is het geheugen gescheiden in twee delen: instructiegeheugen en datageheugen

  17. LW rd, rs ,index Load Word from Memory LW $2, 0x8($1) R2 Address (8 + r1) SW rs, rt, index Store Word to Memory SW $2, 0x8($1) Address (8 + r1) r2 Uitbreiding instructieset: Instruction Memory Registers DataMemory 100 ALU 1st register # PC Instruction 2nd register # Address Address Dest. reg. # Data Data SW $r0, 100($r1) Memory[$r1 + 100] = $r0

  18. BRA offset Branch Always to “label” BRA label PC  PC + offset BZ rt, offset Branch if rt = 0 BZ $6, end If (r6 = 0) goto ‘end’ BEQ rs, rt, offset Branch if rs = rt BEQ $6, $8, loop If (r6 = r8) goto ‘loop’ 0004 0009 Instruction Memory ADD DataMemory Offset FFFB 1st register # Branch & LOAD z Instruction 2nd register # PC Address ALU Address Dest. reg. # Data out Data in Data out Registers Uitbreiding hardware en instructieset voor ‘loopjes’:

  19. De status van de Harvard machine na het uitvoeren van de instructie Load Immediate 0x01FD

  20. Waarom SIM-PL? • Geeft inzicht in de werking van digitale schakelingen op alle niveau’s • Auteursomgeving voor docenten en scholieren • Geschikt voor “profielwerkstukken” • Uitgewerkt werkstuk met handleiding voor Mastermind • Beschikbaar onder GPL licentie (Free Software)http://staff.science.uva.nl/~benb/SIM-PL • Wordt toegepast in het WO en binnenkort ook in het HBO • Project Digitale Universiteit i.s.m. Hogeschool van Amsterdam To do

  21. SIM-PL geschikt voor het voortgezet onderwijs? • Verbeteringen: • Gebruikersvriendelijker Editor • Undo optie • .. • .. • Uitbreidingen • Toevoegen C-Compiler • .. • ..

  22. Toepassen van SIM-PL in het VO? • Wie van jullie wil het gaan gebruiken? • Toegepast bij VWO-scholieren • Beta-festival (2 keer) • Schoolklassen uit Zaandam en Weert