Optimalisatie van de mmips
|
|
- Frederik van der Wolf
- 4 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Optimalisatie van de mmips Sander Stuijk Department of Electrical Engineering Electronic Systems
2 2 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
3 3 Hoe moet ik clipping implementeren? void main(void) { int a, b, result; char *buf_i = (char*)x6, *buf_o = (char*)x6654; for (a = ; a < HEIGHT - ; a++) { for (b = ; b < WIDTH - ; b++) { result=(( 5*(int)buf_i[(a - ) * WIDTH + b - ] + -3*(int)buf_i[(a - ) * WIDTH + b ] + 6*(int)buf_i[(a - ) * WIDTH + b + ] + -7*(int)buf_i[ a * WIDTH + b - ] + *(int)buf_i[ a * WIDTH + b ] + -7*(int)buf_i[ a * WIDTH + b + ] + 6*(int)buf_i[(a + ) * WIDTH + b - ] + -3*(int)buf_i[(a + ) * WIDTH + b ] + 5*(int)buf_i[(a + ) * WIDTH + b + ] + 28) / 3); } } } /* Clipping */ if(result<) buf_o[a * WIDTH + b] = ; else if (result > 255) buf_o[a * WIDTH + b] = (char)255; else buf_o[a * WIDTH + b] = result;
4 4 Voeg een custom patroon aan de C code toe #define clip(a,b) ((a) - ((b) + *(int *) x234432)) void main(void) { int a, b, result; char *buf_i = (char*)x6, *buf_o = (char*)x6654; for (a = ; a < HEIGHT - ; a++) { for (b = ; b < WIDTH - ; b++) { result=(( 5*(int)buf_i[(a - ) * WIDTH + b - ] + -3*(int)buf_i[(a - ) * WIDTH + b ] + 6*(int)buf_i[(a - ) * WIDTH + b + ] + -7*(int)buf_i[ a * WIDTH + b - ] + *(int)buf_i[ a * WIDTH + b ] + -7*(int)buf_i[ a * WIDTH + b + ] + 6*(int)buf_i[(a + ) * WIDTH + b - ] + -3*(int)buf_i[(a + ) * WIDTH + b ] + 5*(int)buf_i[(a + ) * WIDTH + b + ] + 28) / 3); } } } /* Clipping */ result = clip(result,result); buf_o[a * WIDTH + b] = result;
5 5 Voeg clipping aan de LCC compiler toe Open het bestand lcc/src/minimips.md in een text editor Wijzig de custom operatie opcode = function code = x3
6 6 Controleer dat clipping gebruikt wordt Open een cygwin shell en voer de volgende commando s uit: ) lcc image.c o mips_mem.bin 2) disas mips_mem.bin less Zoek een assembler instructie met opcode and function code x3
7 7 Voeg de clipping functionaliteit toe aan de mmips rom_addr rom_dout rom_wait rom_r pc c4 a d d mux PCWrite if_instr if_pc mux7 decoder decoder_nb [5-] [25-] [5-] [-6] imm2word [25-2] r_addr_reg [2-6] r_data_reg r_addr_reg2 registers w_data_reg w_addr_reg r_data_reg2 w id_pc id_immediate id_instr_25_ id_data_reg id_data_reg2 id_instr_5_ id_instr 6 shiftleft a d d 2 shiftleft_ jmp mux2 b a l u aluctrl mux5 aluctrl a alu 2 branch_ ctrl hi lo 2 mux8 mux6 ex_alu_result memdev dev_* ram_dout ram_wait ram_din ram_addr ram_r ram_w mem_dmem_data mem_alu_result signextend byte 2 mux3 Pipe_en (This signal goes to all registers on which no write signal is depicted) hazard IFIDWrite [2-6] [3-26] [5-] [5-] id_instr_2_6 id_instr_5_ c3 2 mux4 ex_regdst_addr mem_regdst_addr dmem_wait Signextend enable Hazard Enable ctrl hazard_ctrl id_ctrl_ex_regdst id_ctrl_ex_alusrc id_ctrl_ex_aluop id_ctrl_ex_target id_ctrl_mem_branch id_ctrl_ex_hilo_write id_ctrl_ex_hiloalu_sel id_ctrl_ex_regvalue id_ctrl_mem_memwrite id_ctrl_mem_memread id_ctrl_wb_memtoreg id_ctrl_wb_regwrite ex_ctrl_wb_memtoreg ex_ctrl_wb_regwrite mem_ctrl_wb_memtoreg mem_ctrl_wb_regwrite clk rst
8 8 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
9 9 Compileer de LCC compiler Open een cygwin shell en voer de volgende commando s uit: ) cd /cygdrive/d/mmips/lcc 2) make clean 3) make
10 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
11 mux mux Forwarding optie rom_addr rom_dout rom_wait rom_r pc c4 a d d mux if_instr if_pc mux7 decoder_nb [5-] [25-] imm2word [25-2] r_addr_reg [2-6] r_data_reg r_addr_reg2 registers w_data_reg w_addr_reg r_data_reg2 w id_pc id_immediate id_instr_25_ id_data_reg id_data_reg2 shiftleft mux2 b a d d 2 shiftleft_ jmp a l u 2 mux5 branch_ ctrl hi lo memdev dev_* ram_dout ram_wait ram_din ram_addr ram_r ram_w mem_dmem_data signextend byte 2 decoder a 2 mux8 mux6 ex_alu_result mem_alu_result mux3 PCWrite [5-] [-6] id_instr_5_ id_instr 6 aluctrl Pipe_en (This signal goes to all registers on which no write signal is depicted) hazard IFIDWrite [2-6] [3-26] [5-] [5-] id_instr_2_6 id_instr_5_ c3 2 mux4 ex_regdst_addr mem_regdst_addr dmem_wait Signextend enable Hazard Enable ctrl hazard_ctrl id_ctrl_ex_regdst id_ctrl_ex_alusrc id_ctrl_ex_aluop id_ctrl_ex_target id_ctrl_mem_branch id_ctrl_ex_hilo_write id_ctrl_ex_hiloalu_sel id_ctrl_ex_regvalue id_ctrl_mem_memwrite id_ctrl_mem_memread id_ctrl_wb_memtoreg id_ctrl_wb_regwrite ex_ctrl_wb_memtoreg ex_ctrl_wb_regwrite mem_ctrl_wb_memtoreg mem_ctrl_wb_regwrite clk rst
12 mux mux 2 Forwarding optie 2 rom_addr rom_dout rom_wait rom_r pc c4 a d d mux if_instr if_pc mux7 decoder_nb [5-] [25-] imm2word id_pc id_immediate id_instr_25_ [25-2] r_addr_reg [2-6] r_data_reg id_data_reg r_addr_reg2 registers w_data_reg w_addr_reg r_data_reg2 id_data_reg2 w shiftleft mux2 b a d d 2 shiftleft_ jmp a l u 2 mux5 branch_ ctrl hi lo memdev dev_* ram_dout ram_wait ram_din ram_addr ram_r ram_w mem_dmem_data signextend byte 2 decoder a 2 mux8 mux6 ex_alu_result mem_alu_result mux3 PCWrite [5-] [-6] id_instr_5_ id_instr 6 aluctrl Pipe_en (This signal goes to all registers on which no write signal is depicted) hazard IFIDWrite [2-6] [3-26] [5-] [5-] id_instr_2_6 id_instr_5_ c3 2 mux4 ex_regdst_addr mem_regdst_addr dmem_wait Signextend enable Hazard Enable ctrl hazard_ctrl id_ctrl_ex_regdst id_ctrl_ex_alusrc id_ctrl_ex_aluop id_ctrl_ex_target id_ctrl_mem_branch id_ctrl_ex_hilo_write id_ctrl_ex_hiloalu_sel id_ctrl_ex_regvalue id_ctrl_mem_memwrite id_ctrl_mem_memread id_ctrl_wb_memtoreg id_ctrl_wb_regwrite ex_ctrl_wb_memtoreg ex_ctrl_wb_regwrite mem_ctrl_wb_memtoreg mem_ctrl_wb_regwrite clk rst
13 3 Forwarding - aandachtspunten Register heeft altijd de waarde, ongeacht wat er in dit register wordt geschreven Forward dus nooit register Forward altijd de nieuwste data EX gaat voor MEM, MEM gaat voor WB, WB gaat voor ID De twee register inputs kunnen uit dezelfde of verschillende pipeline stages komen De twee forwarding multiplexers moeten los worden aangestuurd De lees operaties (lw, lb) hebben delay slot, de data uit het geheugen is pas beschikbaar is in de WB stage Er kan een data hazard zijn tussen een load instructie in the MEM stage en een instructie in de ID stage, deze kan niet worden opgelost met forwarding
14 4 Forwarding WB stage Hazard detectie in WB stage else if (memwbregwrite_t == && ((memwbwriteregister_t == ifidreadregister_t) { } hazard = ; (memwbwriteregister_t == ifidreadregister2_t))) Forwading vanuit WB stage if (memwbregwrite_t == && memwbwriteregister_t == ifidreadregister_t && memwbwriteregister_t!= ) { forwarda.write(3); } if (memwbregwrite_t == && memwbwriteregister_t == ifidreadregister2_t && memwbwriteregister_t!= ) { forwardb.write(3); }
15 5 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
16 6 Hoe kan ik loads correct afhandelen Resultaat van load (lb, lw) pas in WB stage beschikbaar (op uitgang mux3) Eerste instructie na load onafhankelijk van load Tweede instructie na load kan hazard genereren Load MEM stage Tweede instructie na load in ID stage Optie Controleer of instructie in EX/MEM stage een load is bus id_ctrl_wb_memtoreg / ex_ctrl_wb_memtoreg ongelijk nul Introduceer een NOP indien load Optie 2 Controleer of instructie in MEM stage een load is bus ex_ctrl_wb_memtoreg ongelijk nul Controleer of er een hazard is Introduceer NOP indien nodig
17 7 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
18 8 Waarom is mijn simulatie zo traag? Controleer met disas hoeveel instructies er uitgevoerd moeten worden om pixel te bewerken en vermenigvuldig dit met het aantal pixels in het plaatje Met behulp van deze procedure kun je mogelijke optimalisaties vinden
19 9 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
20 2 Waarom stopt mijn mmips simulatie niet? Gebruik <ctrl>+<c> om een simulatie te stoppen Het VCD bestand bevat alle signalen tot het moment dat de simulatie wordt gestopt Bekijk de signalen in het VCD bestand om je probleem te vinden Veel voorkomende problemen Een combinatorische lus in de mmips Een fout in de forwarding
21 2 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
22 22 Hoe kan ik eenvoudig mijn forwarding testen? Maak een klein test programma om de nieuwe functionaliteit te testen Maak een VCD bestand met behulp van een similatie Vergelijk de VCD trace met de assembler code Begin aan het begin van het programma Gebeurt er precies dat wat jij verwacht?
23 23 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Opdracht Belangrijke data Vragen
24 24 Wat is de maximale frequentie van mijn mmips? Het synthese rapport wordt opgeslagen in het bestand mmips.srp maximale frequentie kritiek pad
25 25 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
26 26 Waarom werkt ImProc.exe niet? De combinatie van MS Vista en Cygwin geeft soms problemen met de file permissions Voer de volgende stappen uit als je een permission denied foutmelding krijgt op ImProc.exe of imgproc.exe )Open een cygwin shell 2)chmod a+rwx /usr/bin/imgproc.exe 3)chmod a+rwx /usr/bin/improc.exe 4)cd /cygdrive/d/imageprocessing/cygwin_post_install 5)./create_commands.sh 6)chmod a+rwx /usr/bin/imgproc.exe 7)chmod a+rwx /usr/bin/improc.exe
27 27 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
28 28 Waarom is het plaatje zo donker? Dit probleem kan een aantal oorzaken hebben imgproc.exe neemt standaard aan dat het plaatje 28x28 pixels is de filter coëfficiënten zijn niet altijd even logisch (vanuit een image processing perspectief) er zit een fout in je mmips Het plaatje dat jouw mmips oplevert moet uiteindelijk bit exact overeenkomen met het plaatje dat door de originele mmips wordt geproduceerd. Als beide plaatjes precies even donker zijn dan is het goed Je kunt dit echter niet zelf zien, gebruik daarom check-image
29 29 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
30 3 image.c void main(void) { int a, b, result; char *buf_i = (char*)x6, *buf_o = (char*)x6654; for (a = ; a < HEIGHT - ; a++) { for (b = ; b < WIDTH - ; b++) { result=(( 5*(int)buf_i[(a - ) * WIDTH + b - ] + -3*(int)buf_i[(a - ) * WIDTH + b ] + 6*(int)buf_i[(a - ) * WIDTH + b + ] + -7*(int)buf_i[ a * WIDTH + b - ] + *(int)buf_i[ a * WIDTH + b ] + -7*(int)buf_i[ a * WIDTH + b + ] + 6*(int)buf_i[(a + ) * WIDTH + b - ] + -3*(int)buf_i[(a + ) * WIDTH + b ] + 5*(int)buf_i[(a + ) * WIDTH + b + ] + 28) / 3); } } } /* Clipping */ if(result<) buf_o[a * WIDTH + b] = ; else if (result > 255) buf_o[a * WIDTH + b] = (char)255; else buf_o[a * WIDTH + b] = result;
31 Assembler if(result<) buf_o[a * WIDTH + b] = ; else if (result > 255) buf_o[a * WIDTH + b] = (char)255; else buf_o[a * WIDTH + b] = result; lcc image.c o mips_mem.bin disas mips_mem.bin 32: slt s8,s4,zero 324: beqz s8,x : nop 32c: sll t8,s6,x 33: sll t8,t8,x2 334: sll t8,t8,x2 338: addu t8,t8,s7 33c: addu t8,t8,s3 34: b x : sb zero,(t8) 348: li t8,255 34c: slt s8,t8,s4 35: beqz s8,x : nop 358: sll t8,s6,x 35c: sll t8,t8,x2 36: sll t8,t8,x2 364: addu t8,t8,s7 368: addu t8,t8,s3 36c: li t7,255 37: b x : sb t7,(t8) 378: sll t8,s6,x 37c: sll t8,t8,x2 38: sll t8,t8,x2 384: addu t8,t8,s7 388: addu t8,t8,s3 38c: move t7,s4 39: sb t7,(t8)
32 32 Voeg een custom patroon aan de C code toe #define clip(a,b) ((a) - ((b) + *(int *) x234432)) void main(void) { int a, b, result; char *buf_i = (char*)x6, *buf_o = (char*)x6654; for (a = ; a < HEIGHT - ; a++) { for (b = ; b < WIDTH - ; b++) { result=(( 5*(int)buf_i[(a - ) * WIDTH + b - ] + -3*(int)buf_i[(a - ) * WIDTH + b ] + 6*(int)buf_i[(a - ) * WIDTH + b + ] + -7*(int)buf_i[ a * WIDTH + b - ] + *(int)buf_i[ a * WIDTH + b ] + -7*(int)buf_i[ a * WIDTH + b + ] + 6*(int)buf_i[(a + ) * WIDTH + b - ] + -3*(int)buf_i[(a + ) * WIDTH + b ] + 5*(int)buf_i[(a + ) * WIDTH + b + ] + 28) / 3); } } } /* Clipping */ result = clip(result,result); buf_o[a * WIDTH + b] = result;
33 Assembler result = clip(result,result); buf_o[a * WIDTH + b] = result; lcc image.c o mips_mem.bin disas mips_mem.bin 328: tgeu s4,s4,x28 32c: lw t8,72(sp) 33: nop 334: addu t8,t8,s3 338: move t7,s4 33c: sb t7,(t8)
34 Converting a C program to the LCC IR : int main(void) { : int a = 3; 2: if (a == 3) 3: return ; a 3 ADDRLP4 CNSTI4 ASGNI4 2 a ADDRLP4 INDIRI4 3 CNSTI4 4: return ; 5: } NEI4 The LCC data representation is called an Abstract Syntax Tree (AST). 3 CNSTI4 RETI4 2* ADDRGP4 JUMPV The data representation is converted to assembler using rules. Rules map a set of nodes (one or more) onto assembler instructions. 4 CNSTI4 RETI4
35 What does a rule look like? A rule for adding two unsigned integer (4 bytes): reg: ADDU4 (reg,reg) "\taddu $%c,$%,$%\n" the node one output register two source registers the assembler instruction weight % The first source operand register %2 The second source operand register %c The destination register
36 Converting the LCC data-structure to assembler a 3 2 a.set reorder.globl main.text.text.align 2.ent main main:.frame $sp,8,$3 addu $sp,$sp,-8 la $24,3 sw $24,-4+8($sp) lw $24,-4+8($sp) la $5,3 bne $24,$5,L.2 la $2, b L. L.2: move $2,$ L.: addu $sp,$sp,8 j $3.end main ADDRLP4 ASGNI4 CNSTI4 3 ADDRLP4 3 INDIRI4 CNSTI4 NEI4 CNSTI4 RETI4 2* ADDRGP4 JUMPV 4 CNSTI4 RETI4
37 Adding a special function to the mmips (software) Clip function must be detected by LCC Use special pattern to indicate use of clip function Example: ((a) - ((b) + *(int *) x234432)) The following 4 constructs map to custom operations in LCC: ((a) - ((b) + *(int *) x234432)) ((a) + ((b) + *(int *) x234432)) ((a) - ((b) - *(int *) x234432)) ((a) + ((b) - *(int *) x234432)) More operations (possibly with more operands) can be added. Look at the website for more information.
38 What does a rule look like? All rules are defined in the file lcc/src/minimips.md File can be edited with a standard text editor LCC must be recompiled after editing (see website for details) Rule with three inputs
39 39 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
40 4 Opdracht Optimaliseer de run-time van een image processing filter voor de mmips beperkingen alle programma s die op de originele mmips draaien moeten ook op jouw mmips werken programma s die op jouw mmips draaien moeten precies hetzelfde resultaat (bit-exact) produceren als de originele mmips toegestaan toevoegen van speciale instructies aan de mmips aanpassen van het ontwerp van de mmips (b.v. forwarding) niet toegestaan aanpassingen aan het image processing algoritme die niet nodig zijn om speciale instructies te gebruiken (b.v. vervangen van vermenigvuldiging door shifts)
41 4 Testen en implementeren van het ontwerp functionele correctheid genereer referentie output met de originele mmips vergelijk deze referentie output met het resultaat van jouw eigen mmips gebruik check-image commando maximale klok frequentie gebruik cocentric en ise om timing rapport te genereren
42 42 Insturen van je ontwerp gebruik submit-design om jouw ontwerp in te sturen alleen de laatste versie wordt getest
43 43 Inhoudsopgave Veel gestelde vragen Hoe moet ik clipping implementeren? Hoe moet ik de compiler opnieuw compileren? Hoe moet ik forwarding implementeren? Er is iets bijzonders met de loads, maar hoe zit dat precies? Waarom is mijn simulatie zo traag? Waarom stopt mijn mmips simulatie niet? Hoe kan ik eenvoudig mijn forwarding testen? Wat is de maximale frequentie van mijn mmips? Waarom werkt ImProc.exe niet? Waarom is het plaatje dat uit de mmips komt zo donker? Hoe werkt dat nou precies met LCC en die speciale instructies? Opdracht Belangrijke data Vragen
44 Belangrijke data eerste versie van de mmips inleveren voor 8 maart a.s. om 2. uur deze deadline is optioneel als je iets inlevert krijg je feedback deze versie moet minimaal het volgende bevatten: werkende forwarding unit werkende clipping instructie. een los document (A4, pt font, max 2 pagina s) met een bescrhijving van alle veranderingen die je nog wil maken stuur het document naar s.stuijk@tue.nl instructies op
45 45 Belangrijke data test programma beschikbaar op vrijdag 3 maart om 9. op inleveren voor zondag april a.s. om 2. uur uitstel is niet mogelijk! presentaties op woensdag en donderdag 4/5 april a.s. indien je mmips tijdig is ingeleverd ontvang je op 2 april het tijdstip van je presentatie per presentatie moet gaan over wat jij gedaan hebt om de mmips sneller te maken (leg dus niet het boek, forwarding of clipping uit)
46 46 Ondersteuning en informatie iedere maandag tussen 5.45 en 7.3 uur in PT 9. zie ook voor meer informatie, tips, etc.
47 47 Vragen
Inhoudsopgave. Optimalisatie van de mmips. Forwarding optie 1. Design flow. implementation
2 Inhoudsopgave Optimalisatie van de mmips pc Sander Stuijk Veel gestelde vragen Hoe moet ik forwarding implementeren? Hoe moet ik clipping implementeren? Waarom is mijn simulatie zo traag? Hoe kan ik
Nadere informatieDDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie
www.arduino.cc Arduino en DDS DDS chips DDS = Direct Digital (frequency) Synthesis Output = sinusvormig signaal Maximum frequentie = ½ klokfrequentie Frequentie bepaald door tuning word Grootste fabrikant:
Nadere informatieTentamen Computersystemen
Tentamen Computersystemen baicosy6 2e jaar bachelor AI, 2e semester 21 oktober 213, 9u-11u OMHP D.9 vraag 1 Van een Single Cycle Harvard machine hebben de componenten de volgende propagation delay time:
Nadere informatieHoe werkt een computer precies?
Hoe werkt een computer precies? Met steun van stichting Edict Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Overview Introductie SIM-PL Simulatietool voor werking computer
Nadere informatieDigitale technieken Deeltoets II
Digitale technieken Deeltoets II André Deutz 11 januari, 2008 De opgaven kunnen uiteraard in een willekeurige volgorde gemaakt worden geef heel duidelijk aan op welke opgave een antwoord gegegeven wordt.
Nadere informatieComputerarchitectuur. Terugblik / discussie / oefenopgaven
Computerarchitectuur Terugblik / discussie / oefenopgaven Kristian Rietveld http://ca.liacs.nl/ Trends & Performance Voorkennis We bouwden een 4-bit microprocessor bij Digitale Technieken. Bij computerarchitectuur
Nadere informatieBeter, Sneller, Mooier. Processoren 12 januari 2015
Beter, Sneller, Mooier Processoren 12 januari 2015 Beter! Sneller! Krachtigere CPU: maak instructies die meer doen Snellere CPU: pipeline, out-of-order execution Sneller RAM: cache meer mogelijkheden...
Nadere informatieVan Poort tot Pipeline. Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam
Van Poort tot Pipeline Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Van Poort tot Pipeline Pipeline processor One cycle machine Calculator File of registers Assembly
Nadere informatieComputerarchitectuur. H&P Appendix A: Instruction Set Principles
Computerarchitectuur H&P Appendix A: Instruction Set Principles Kristian Rietveld http://ca.liacs.nl/ Instruction Sets Een processor moet precies worden verteld wat deze moet doen. Dit staat opgeschreven
Nadere informatieOefeningen Interpretatie I Reeks 6 : Registermachines
Oefeningen Interpretatie I Reeks 6 : Registermachines Deze oefeningenreeks behandelt het beschrijven van computationele processen aan de hand van registermachineprogrammaʼs. Registermachines manipuleren
Nadere informatieBasisconcept VHDL. Digitaal Ontwerpen Tweede studiejaar. Wim Dolman. Engineering, leerroute Elektrotechniek Faculteit Techniek
Basisconcept VHDL Tweede studiejaar Wim Dolman Engineering, leerroute Elektrotechniek Faculteit Techniek 1 Deze presentatie toont de stappen voor het ontwerpen van een digitale combinatorische schakeling
Nadere informatieExamen computerarchitectuur
Examen computerarchitectuur Vrijdag 6 juni 2003, 8u30 Prof. Koen De Bosschere Naam, Voornaam: Richting: Belangrijk 1. Vergeet niet uw naam en voornaam te vermelden. 2. Schrijf de antwoorden in de daarvoor
Nadere informatieComputerarchitectuur. H&P Appendix A: Instruction Set Principles
Computerarchitectuur H&P Appendix A: Instruction Set Principles Kristian Rietveld http://ca.liacs.nl/ Instruction Sets Een processor moet precies worden verteld wat deze moet doen. Dit staat opgeschreven
Nadere informatieALGORITMIEK: answers exercise class 7
Problem 1. See slides 2 4 of lecture 8. Problem 2. See slides 4 6 of lecture 8. ALGORITMIEK: answers exercise class 7 Problem 5. a. Als we twee negatieve (< 0) getallen bij elkaar optellen is het antwoord
Nadere informatieEE1410: Digitale Systemen BSc. EE, 1e jaar, , 10e hoorcollege
EE1410: Digitale Systemen BSc. EE, 1e jaar, 2012-2013, 10e hoorcollege Arjan van Genderen, Stephan Wong, Computer Engineering 13-5-2013 Delft University of Technology Challenge the future Hoorcollege 10
Nadere informatieMyDHL+ Van Non-Corporate naar Corporate
MyDHL+ Van Non-Corporate naar Corporate Van Non-Corporate naar Corporate In MyDHL+ is het mogelijk om meerdere gebruikers aan uw set-up toe te voegen. Wanneer er bijvoorbeeld meerdere collega s van dezelfde
Nadere informatieHandleiding Zuludesk Parent
Handleiding Zuludesk Parent Handleiding Zuludesk Parent Met Zuludesk Parent kunt u buiten schooltijden de ipad van uw kind beheren. Hieronder vind u een korte handleiding met de mogelijkheden. Gebruik
Nadere informatiePROS1E1 Handleiding ( ) Kf/Dd/Bd
1 Inleiding De eerste oefening In deze eerste oefening wordt het voorbeeld 2-1 van bladzijde 11 uit het boek De taal C van PSD tot C-programma (enigszins aangepast) ingevoerd in de computer. Tevens wordt
Nadere informatieES1 Project 1: Microcontrollers
ES1 Project 1: Microcontrollers Les 5: Timers/counters & Interrupts Timers/counters Hardware timers/counters worden in microcontrollers gebruikt om onafhankelijk van de CPU te tellen. Hierdoor kunnen andere
Nadere informatieAfter that, the digits are written after each other: first the row numbers, followed by the column numbers.
Bifid cipher The bifid cipher is one of the classical cipher techniques that can also easily be executed by hand. The technique was invented around 1901 by amateur cryptographer Felix Delastelle. The cipher
Nadere informatieDaylight saving time. Assignment
Daylight saving time Daylight saving time (DST or summertime) is the arrangement by which clocks are advanced by one hour in spring and moved back in autumn to make the most of seasonal daylight Spring:
Nadere informatieInleiding Software Engineering! Unit Testing, Contracten, Debugger! 13 Februari 2014!
Inleiding Software Engineering Unit Testing, Contracten, Debugger 13 Februari 2014 Beknopte info over Unit Testing en Contracten kan je vinden op het einde van dit document. Eclipse beschikt over een handige
Nadere informatieOpgave Tussentijdse Oefeningen Jaarproject I Reeks 4: Lcd Interface & Files
Opgave Tussentijdse Oefeningen Jaarproject I Reeks 4: Lcd Interface & Files 1 Introductie In deze oefening zal je je LCD display leren aansturen. Je controleert deze display door er instructies naar te
Nadere informatieDeel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax,
Deel 1: Arduino kennismaking Wat is een microcontroller, structuur van een programma, syntax, Wat is een microcontroller Wat is een microcontroller? Microcontroller = kleine dedicated computer. - Beperkt
Nadere informatieThe genesis of the game is unclear. Possibly, dominoes originates from China and the stones were brought here by Marco Polo, but this is uncertain.
Domino tiles Dominoes is a game played with rectangular domino 'tiles'. Today the tiles are often made of plastic or wood, but in the past, they were made of real stone or ivory. They have a rectangle
Nadere informatieGebruik van het LOGO in geautomatiseerde verkiezingen
BIJLAGE 1 S.A. STERIA Benelux N.V. Gebruik van het LOGO in geautomatiseerde verkiezingen Technische bepalingen voor de weergave van het logo op de schermen. Versie 1.2 Guy JASPERS Revisions Revision Description
Nadere informatieIntroductie in flowcharts
Introductie in flowcharts Flow Charts Een flow chart kan gebruikt worden om: Processen definieren en analyseren. Een beeld vormen van een proces voor analyse, discussie of communicatie. Het definieren,
Nadere informatieAlistair LED stairwell luminaire Handleiding Alistair (Emergency UC03 sensor)
Alistair LED stairwell luminaire Handleiding Alistair (Emergency UC03 sensor) Let op: Als het flexibele draad van dit licht beschadigd is, dient het te worden vervangen door iemand van de technische service,
Nadere informatieAntwoorden vragen en opgaven Basismodule
Antwoorden vragen en opgaven Basismodule Antwoorden van vragen en opgaven van hoofdstuk 1 1. Is elke combinatorische schakeling een digitale schakeling? Zo nee, waarom niet? Antwoord: Elke combinatorische
Nadere informatiePraktische Toets Computerarchitectuur
Praktische Toets Computerarchitectuur Oefentoets, december 2016 Examinator: dr. K. F. D. Rietveld De praktische toets is open boek. Echter zijn alleen het voorgeschreven tekstboek, of materiaal uitgeprint
Nadere informatieMyDHL+ Tarief berekenen
MyDHL+ Tarief berekenen Bereken tarief in MyDHL+ In MyDHL+ kunt u met Bereken tarief heel eenvoudig en snel opvragen welke producten er mogelijk zijn voor een bestemming. Ook ziet u hierbij het geschatte
Nadere informatieES1 Project 1: Microcontrollers
ES1 Project 1: Microcontrollers Les 3: Eenvoudige externe hardware & hardware programmeren in C Hardware programmeren in C Inmiddels ben je al aardig op gang gekomen met het programmeren van microcontrollers.
Nadere informatiePreschool Kindergarten
Preschool Kindergarten Objectives Students will recognize the values of numerals 1 to 10. Students will use objects to solve addition problems with sums from 1 to 10. Materials Needed Large number cards
Nadere informatieGeneral info on using shopping carts with Ingenico epayments
Inhoudsopgave 1. Disclaimer 2. What is a PSPID? 3. What is an API user? How is it different from other users? 4. What is an operation code? And should I choose "Authorisation" or "Sale"? 5. What is an
Nadere informatieDomJudge-Practicum. Open Dag UU
1 Introductie DomJudge-Practicum Open Dag UU Bij veel vakken die je volgt tijdens je studie informatica aan de UU, moet je programmeeropdrachten maken. Soms moet je die inleveren zodat ze door de docent
Nadere informatieMulti user Setup. Firebird database op een windows (server)
Multi user Setup Firebird database op een windows (server) Inhoudsopgave osfinancials multi user setup...3 Installeeren van de firebird database...3 Testing van de connectie met FlameRobin...5 Instellen
Nadere informatieZelftest Inleiding Programmeren
Zelftest Inleiding Programmeren Document: n0824test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST INLEIDING PROGRAMMEREN Deze
Nadere informatieUitwerking oefententamen Computerarchitectuur December 2016
Uitwerking oefententamen Computerarchitectuur December 2016 I.a. De overall CPI kan worden berekend met de formule n IC i CPI Instruction count CPI i voor de ratio vullen we telkens de geven frequentie
Nadere informatieComputerarchitectuur. H&P App. C. Pipelining
Computerarchitectuur H&P App. C. Pipelining Kristian Rietveld http://ca.liacs.nl/ Motivatie Pipelining is een techniek die tegenwoordig in iedere CPU wordt gebruikt om de performance te verbeteren. Idee:
Nadere informatieSAMPLE 11 = + 11 = + + Exploring Combinations of Ten + + = = + + = + = = + = = 11. Step Up. Step Ahead
7.1 Exploring Combinations of Ten Look at these cubes. 2. Color some of the cubes to make three parts. Then write a matching sentence. 10 What addition sentence matches the picture? How else could you
Nadere informatieGraphic Design. Keuzevak GD1. Raul Martinez-Orozco (r.d.martinez.orozco@hro.nl / raul@thecombine.nl)
Graphic Design 1 Graphic Design Keuzevak GD1 Raul Martinez-Orozco (r.d.martinez.orozco@hro.nl / raul@thecombine.nl) Graphic Design 2 Expectations Attendance, creativity, motivation and a professional attitude
Nadere informatiePIR DC-SWITCH. DC Passive infra-red Detector. Model No. PDS-10 GEBRUIKSAANWIJZING/INSTRUCTION MANUAL
PIR DC-SWITCH DC Passive infra-red Detector Model No. PDS-10 GEBRUIKSAANWIJZING/INSTRUCTION MANUAL Please read this manual before operating your DETECTOR PIR DC-Switch (PDS-10) De PDS-10 is een beweging
Nadere informatie2019 SUNEXCHANGE USER GUIDE LAST UPDATED
2019 SUNEXCHANGE USER GUIDE LAST UPDATED 0 - -19 1 WELCOME TO SUNEX DISTRIBUTOR PORTAL This user manual will cover all the screens and functions of our site. MAIN SCREEN: Welcome message. 2 LOGIN SCREEN:
Nadere informatieDocumentatie Nederlands v1
Documentatie Nederlands v1 Getting started Navigation menu Theme settings General Features Background Typography Banners Contact details Social Unique selling points Image Sizes Frequently asked questions
Nadere informatieSettings for the C100BRS4 MAC Address Spoofing with cable Internet.
Settings for the C100BRS4 MAC Address Spoofing with cable Internet. General: Please use the latest firmware for the router. The firmware is available on http://www.conceptronic.net! Use Firmware version
Nadere informatie8+ 60 MIN Alleen te spelen in combinatie met het RIFUGIO basisspel. Only to be played in combination with the RIFUGIO basicgame.
8+ 60 MIN. 2-5 Alleen te spelen in combinatie met het RIFUGIO basisspel. Only to be played in combination with the RIFUGIO basicgame. HELICOPTER SPEL VOORBEREIDING: Doe alles precies hetzelfde als bij
Nadere informatieAlistair LED stairwell luminaire Handleiding Alistair (UC03 sensor)
Alistair LED stairwell luminaire Handleiding Alistair (UC03 sensor) Let op: Als het flexibele draad van dit licht beschadigd is, dient het te worden vervangen door iemand van de technische service, of
Nadere informatieCalculator spelling. Assignment
Calculator spelling A 7-segmentdisplay is used to represent digits (and sometimes also letters). If a screen is held upside down by coincide, the digits may look like letters from the alphabet. This finding
Nadere informatieTeamhandleiding DOMjudge (versie 2.2.0muKP) 31 mei 2008
judge Teamhandleiding DOMjudge (versie..0mukp) 31 mei 008 /\ DOM DOM judge Inhoudsopgave 1 Inleiding Samenvatting.1 Inlezen en wegschrijven............................... Insturen van oplossingen...............................3
Nadere informatieQuick start guide. Powerbank MI Mah. Follow Fast All rights reserved. Page 1
Quick start guide Powerbank MI 16.000 Mah Follow Fast 2016 - All rights reserved. Page 1 ENGLISH The Mi 16000 Power Bank is a very good backup option for those on the move. It can keep you going for days
Nadere informatieAccelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368
Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368 Handleiding bij het gebruik van een microcontroller in het Accelerometerproject (Project II) Er zijn speciaal voor het Accelerometerproject
Nadere informatieTentamen Objectgeorienteerd Programmeren
Tentamen Objectgeorienteerd Programmeren 5082IMOP6Y maandag 16 november 2015 13:00 15:00 Schrijf je naam en studentnummer op de regel hieronder. Sla deze pagina niet om tot de surveillant vertelt dat het
Nadere informatieDeel 1: schriftelijk deel
Examen Computerarchitectuur en systeemsoftware Donderdag 15 januari 2009, namiddag Deel 1: schriftelijk deel Algemene bemerkingen: Het examen bestaat uit 2 delen. Dit zijn de vragen voor het eerste deel.
Nadere informatieDigitale Systeem Engineering 1. Week 4 Toepassing: Pulse Width Modulation Jesse op den Brouw DIGSE1/2013-2014
Digitale Systeem Engineering 1 Week 4 Toepassing: Pulse Width Modulation Jesse op den Brouw DIGSE1/2013-2014 PWM basics Het regelen van het toerental van een elektromotor kan eenvoudig worden gedaan door
Nadere informatieDOMjudge teamhandleiding
judge DOMjudge teamhandleiding Samenvatting /\ DOM DOM judge Hieronder staat de belangrijkste informatie kort samengevat. Dit is bedoeld om snel aan de slag te kunnen. We raden echter ten zeerste aan dat
Nadere informatieES1 Project 1: Microcontrollers
ES1 Project 1: Microcontrollers Les 1: Installeren en verifiëren van de SDE Door Hugo Arends, augustus 2012 Microcontrollers Een microcontroller is een elektronische component dat gebruikt wordt om (complexe)
Nadere informatieNCTS - INFORMATIE INZAKE NIEUWIGHEDEN VOOR 2010
NCTS - INFORMATIE INZAKE NIEUWIGHEDEN VOOR 2010 Op basis van het nieuwe artikel 365, lid 4 (NCTS) en het nieuwe artikel 455bis, lid 4 (NCTS-TIR) van het Communautair Toepassingswetboek inzake douane 1
Nadere informatieHoofdstuk 7. Computerarchitectuur
Hoofdstuk 7 Computerarchitectuur 1 controlebus CPU MEMORY I/O databus adresbus Figuur 71 Schematische opbouw van een computersysteem 8 Figuur 72 Een busverbinding Buslijn Out E A In Out E B In Out E C
Nadere informatieE-Basic. E-Studio. E-Run Real-Time Experiment Generator. E-Merge. E-DataAid Spreadsheet Application for E-Prime Data Files
E-Studio Graphical Design Environment E-Basic Full Scripting Language E-Run Real-Time Experiment Generator E-Merge Data Merging Utility E-DataAid Spreadsheet Application for E-Prime Data Files E-Studio
Nadere informatieEE1410: Digitale Systemen BSc. EE, 1e jaar, 2011-2012, 2e werkcollege
EE4: igitale Systemen BSc. EE, e jaar, 2-22, 2e werkcollege Arjan van Genderen, Stephan Wong, Computer Engineering 5 t/m 22-3-22 elft University of Technology Challenge the future Voor je begint. ownload
Nadere informatieAdd the standing fingers to get the tens and multiply the closed fingers to get the units.
Digit work Here's a useful system of finger reckoning from the Middle Ages. To multiply $6 \times 9$, hold up one finger to represent the difference between the five fingers on that hand and the first
Nadere informatieThe first line of the input contains an integer $t \in \mathbb{n}$. This is followed by $t$ lines of text. This text consists of:
Document properties Most word processors show some properties of the text in a document, such as the number of words or the number of letters in that document. Write a program that can determine some of
Nadere informatieB1 Woordkennis: Spelling
B1 Woordkennis: Spelling Bestuderen Inleiding Op B1 niveau gaan we wat meer aandacht schenken aan spelling. Je mag niet meer zoveel fouten maken als op A1 en A2 niveau. We bespreken een aantal belangrijke
Nadere informatieNSPYRE LEGO MINDSTORMS UITDAGING (JAVA) INLEIDING. DOEL: SIMULATOR:
NSPYRE LEGO MINDSTORMS UITDAGING (JAVA) INLEIDING. Door mee te doen aan deze uitdaging kan je Nspyre laten zien wat je kan. Schrijf jij de beste oplossing dan is deze lego mindstorms nxt 2.0 set voor jou.
Nadere informatieDigitale en analoge technieken
Digitale en analoge technieken Peter Slaets February 14, 2006 Peter Slaets () Digitale en analoge technieken February 14, 2006 1 / 33 Computerarchitectuur 1 Processors 2 Primair geheugen 3 Secundair geheugen
Nadere informatieEE1400: Programmeren in C BSc. EE, 1e jaar, , 4e college
EE1400: Programmeren in C BSc. EE, 1e jaar, 2012-2013, 4e college Arjan van Genderen, Computer Engineering 11-12-2012 Delft University of Technology Challenge the future Mededelingen Voortgangstoets: Woensdagmiddag
Nadere informatieInteraction Design for the Semantic Web
Interaction Design for the Semantic Web Lynda Hardman http://www.cwi.nl/~lynda/courses/usi08/ CWI, Semantic Media Interfaces Presentation of Google results: text 2 1 Presentation of Google results: image
Nadere informatieUsability walkthrough for accessibility
Usability walkthrough for accessibility steven stijger steven_stijger@nl.ibm.com http://www.flickr.com/photos/81167076@n00/322162512/ Copyright IBM Corporation 2008 usability walkthrough usability test
Nadere informatieCollege 13: Patterns (2)
Concurrency Gerard Tel / Jacco Bikker - november 2016 februari 2017 College 13: Patterns (2) Welkom! genda: Collective Operations Reduce Scan Stencil Recurrence Concurrency college 13 Patterns (2) 3 Collectives
Nadere informatieHet beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14
QUICK GUIDE C Het beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14 Version 0.9 (June 2014) Per May 2014 OB10 has changed its name to Tungsten Network
Nadere informatie9 Tijdsfuncties. 9.1 Voorstelling tijden
9 Tijdsfuncties 9.1 Voorstelling tijden Een speciaal gedeelte van het geheugen van de CPU is gereserveerd voor timers. In dit geheugengedeelte is er voor iedere timer een 16-bit woord gereserveerd. Het
Nadere informatieContents. Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation
TeleBank Contents Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation Introduction - TeleBank Automatic bank services Initiates a Dialog with
Nadere informatieZelf PIC's programmeren. Deel-1 KnipperLED (flashing LED)
Zelf PIC's programmeren Deel-1 KnipperLED (flashing LED) Het eerste project is het programmeren van een knipperende LED. Bij dit project gaat het vooral om ervaring op te doen met PIC-programmeren. We
Nadere informatieVakgroep CW KAHO Sint-Lieven
Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be
Nadere informatieProject Software Engineering XML parser: Parsen van een xml CD catalogus
Project Software Engineering XML parser: Parsen van een xml CD catalogus Brent van Bladel brent.vanbladel@uantwerpen.be February 16, 2017 XML (Extensible Markup Language) is een taal waarmee we op een
Nadere informatievon-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014
von-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014 Herhaling: Booleaanse algebra (B = {0,1},., +, ) Elke Booleaanse functie f: B n B m kan met., +, geschreven worden Met Gates (electronische
Nadere informatieThe colour of a pixel in a bit map picture can be presented in different ways. For this assignment, we distinguish two categories:
Bitmap conversion A bit map picture is exactly what the name makes one suspect: a sequence of bits (0 or 1) that together represent a digital photo. The picture consists of a matrix (rectangle grid) of
Nadere informatieL.Net s88sd16-n aansluitingen en programmering.
De L.Net s88sd16-n wordt via één van de L.Net aansluitingen aangesloten op de LocoNet aansluiting van de centrale, bij een Intellibox of Twin-Center is dat de LocoNet-T aansluiting. L.Net s88sd16-n aansluitingen
Nadere informatiei(i + 1) = xy + y = x + 1, y(1) = 2.
Kenmerk : Leibniz/toetsen/Re-Exam-Math A + B-45 Course : Mathematics A + B (Leibniz) Date : November 7, 204 Time : 45 645 hrs Motivate all your answers The use of electronic devices is not allowed [4 pt]
Nadere informatie7 aug. 2006 Snelstart document Thecus N2100 Y.E.S.box BlackIP Versie 1.0
Setup Wizard MET DHCP-server: 1. NA de installatie van de software welke zich op de CD bevindt krijgt u het volgende te zien: 2. V ervolgens gaat de softw are op zoek naar de Thecus Y.E.S.box welke is
Nadere informatieFOR DUTCH STUDENTS! ENGLISH VERSION NEXT PAGE
FOR DUTCH STUDENTS! ENGLISH VERSION NEXT PAGE Tentamen Bewijzen en Technieken 1 7 januari 211, duur 3 uur. Voeg aan het antwoord van een opgave altijd het bewijs, de berekening of de argumentatie toe.
Nadere informatie1. Testdata TA sensor met Ohmse belasting
1. Testdata TA12-100 sensor met Ohmse belasting Data van primaire meetkring met ohmse belasting Load (Ω) Mp1 (VC165) VTrms Mp2 (DVM98) ITrms Mp3 Vpp Mp3 VMax Mp3 VTrms Primaire Kring analyse Mp3 Vrms Mp1
Nadere informatieRCL Arduino Workshop 1
RCL Arduino Workshop 1 Leren door doen april 2015 - slides voor RCL Arduino workshop 1 ON4CDU & ON8VQ Workshop Leren door doen Werken in een groep Beperkte tijd Alleen essentiele vragen stellen Thuis oefenen
Nadere informatieES1 Project 1: Microcontrollers
ES1 Project 1: Microcontrollers Les 2: Architectuur ATmega32 en STK500 Door Hugo Arends, september 2012 Architectuur ATmega32 Een uitgebreide en gedetailleerde beschrijving van de ATmega32 microcontroller
Nadere informatieROBOMIND EV3 EXPORT HANDLEIDING VOOR WINDOWS COMPUTERS
ROBOMIND EV3 EXPORT HANDLEIDING VOOR WINDOWS COMPUTERS Attentie: Op dit moment werkt de EV3 export alleen met Windows Desktop computers! Om RoboMind programma s te exporteren naar de Lego EV3 robot moet
Nadere informatie2. Wanneer moet ik een afbeelding verkleinen?
Appendix B. Beeldmateriaal en Blackboard 1. Inleiding...1 2. Wanneer moet ik een afbeelding verkleinen?...1 3. Het formaat van een afbeelding wijzigen...2 4. Een afbeelding comprimeren...4 5. Een uitsnede
Nadere informatieToday s class. Digital Logic. Informationsteknologi. Friday, October 19, 2007 Computer Architecture I - Class 8 1
Today s class Digital Logic Friday, October 19, 2007 Computer Architecture I - Class 8 1 Digital circuits Two logical values Binary 0 (signal between 0 and 1 volt) Binary 1 (signal between 2 and 5 volts)
Nadere informatieHoofdstuk 4. Digitale techniek
Hoofdstuk 4 Digitale techniek 1 A C & =1 F Figuur 4.1: Combinatorische schakeling. A C & & F A = & F C Figuur 4.2: Drie-input AND. A C _ >1 & F Figuur 4.3: Don t care voorbeeld A? F Figuur 4.4: Onbekende
Nadere informatieMacrium Reflect V4.2 Handleiding
Macrium Reflect V4.2 Handleiding Met Macrium Reflect kunt u een Image (kopie) maken van de C: schijf, waarmee, u na computerproblemen binnen tien minuten weer een goed werkende PC kunt hebben. Ga naar:
Nadere informatieb) Geef het schema van een minimale realisatie met uitsluitend NANDs en inverters voor uitgang D.
Basisbegrippen Digitale Techniek (213001) 9 november 3000, 13.30 17.00 uur 8 bladzijden met 10 opgaven Aanwijzingen bij het maken van het tentamen: 1. Beantwoord de vragen uitsluitend op de aangegeven
Nadere informatieSequentiële gepijplijnde machine
Sequentiële gepijplijnde machine Samenvatting controlesignalen Als we de controlesignalen van vorig hoofdstuk nemen, kunnen we per cyclus een naam geven aan de stap. We plaatsen hiervoor wel de registerbeschrijving
Nadere informatie1 van 8 22-2-2012 20:43
1 van 8 22-2-2012 20:43 Garmin Basecamp is een gratis software programma van Garmin. Het vergelijkbaar met mapsource, echter met de nieuwe toestellen (oregon, dakota en gpsmap 62) heeft het een aantal
Nadere informatieInstallatie van Windows 10 op laptops. Windows 10 installation on laptops
Installatie van Windows 10 op laptops In mei vindt de migratie naar Windows 10 plaats op de laptops. Per dag worden ongeveer 25 laptops gemigreerd. Elke laptop heeft een ISSC-sticker met een laptop-nummer.
Nadere informatieFOR DUTCH STUDENTS! ENGLISH VERSION NEXT PAGE
FOR DUTCH STUDENTS! ENGLISH VERSION NEXT PAGE Tentamen Analyse 6 januari 203, duur 3 uur. Voeg aan het antwoord van een opgave altijd het bewijs, de berekening of de argumentatie toe. Als je een onderdeel
Nadere informatieTestplan Module 12: Bachelor assignment ( )
Testplan Module 12: Bachelor assignment (201500466) BSc Chemical Engineering, academic year: 2017-2018 Module information Module examiners Module parts EC Gardeniers, Bouwmeester, Betlem, Huskens, Brilman,
Nadere informatieHoe werkt een rekenmachine?
Hoe werkt een rekenmachine? Uit welke hardware-componenten bestaat een rekenmachine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachine I Constante getallen Instructies van het type
Nadere informatieHOP9850. void sendfrequency(unsigned long frequency) zie SWEEP9850
SWEEP9850 #define DDS_CLOCK 120000000 // frequentie van de DDS-klok (in Hz) byte LOAD = 8; // I/O 8 is verbonden met FQ_UD van de DDS (frequency update) byte CLOCK = 9; // I/O 9 is verbonden met W_CLK
Nadere informatieTeardrop readout gradient waveform design. Ting Ting Ren
Teardrop readout gradient waveform design Ting Ting Ren Overview MRI Background Teardrop Model Discussion Future work MRI Background: Classical Description of MRI Spins: MR relevant nuclei, like 1 H. Main
Nadere informatiecontinue in een for, while of do lus herhaalt de lus vroegtijdig. De volgende herhaling wordt onmiddellijk begonnen.
Hoofdstuk 3: controlestructuren instructies en blokken Naar elke instructie staat een ; Instructies worden door de haakjes {} in een block samengevat. if else if ( expression) statement1; else statement2;
Nadere informatieCambridge International Examinations Cambridge International General Certificate of Secondary Education. Paper 4 Writing May/June hour
*9572620256* Cambridge International Examinations Cambridge International General Certificate of Secondary Education DUTCH 0515/04 Paper 4 Writing May/June 2015 1 hour Candidates answer on the Question
Nadere informatie