Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdJonathan Willems Laatst gewijzigd meer dan 10 jaar geleden
1
1Ben Bruidegom A Harvard Machine Recapitulatie Calculator Calculator Calculator met “loopjes” Calculator met “loopjes” Processor
2
2Ben Bruidegom Recapitulatie rekenmachine II Instruction Memory Registers ALU PC Instruction Address Constant getal 4 bits address 16 bits data rs Adres Data Adres rd Data rd rt Adres Data
3
3Ben Bruidegom Instructies: Rekenkundige en logische instructies ADD SUB AND Immediate instructies (Instructies met één constant getal) LOADI ADDI SUBI ANDI Datatransfer COPY
4
4Ben Bruidegom “Control” van de rekenmachine Instruction Memory ALU operatie PC Instruction Address First Register rs Address Data Second Register rt Address Data Destination Reg. rd Address Data 4 bits address 16 bits data 3 bits control Registerfile (16) Control Multiplexer (Mux) ADDIrsrtrdConstant getal 0000101x01110000 0001 0000 0000 Instructieformaat ADDI $7, $5, 0x100
5
5Ben Bruidegom Rekenmachine II
6
6Ben Bruidegom Calculator Calculator met “loopjes”
7
7Ben Bruidegom Uitbreiding instructieset: Rekenkundige en logische instructies ADD SUB AND COPY Immediate instructies (Instucties met één constant getal) ADDI SUBI ANDI LOADI Branch instucties BZ (Branch if zero) BEQ (Branch if equal) BRA (Branch always)
8
8Ben Bruidegom Voorwaarden Branch-instructie Een sprong in een programma wordt alleen uitgevoerd als: - er een Branch-instructie geprogrammeerd is én - de Zero-uitgang van de ALU 1 is.
9
9Ben Bruidegom ALU met Zero-flag A B 11 Z Y(y 15, y 14,….,y 0 )
10
10Ben Bruidegom Wanneer wordt een branch-instructie uitgevoerd? Instruction Memory Registers (16) Load PC ALU PC Instruction & Address Register Rs Register Rt Register Rd Data Branch AND-poort Evaluatie conditie (zero) ?
11
11Ben Bruidegom Hoe wordt de nieuwe waarde van de Program Counter berekend? Instruction Memory Registers (16) Load PC ALU PC Instruction & Address Register Rs Register Rt Register Rd Data Branch Opteller AND-poort Huidige waarde PC Offset Nieuwe waarde PC Evaluatie conditie (zero)
12
12Ben Bruidegom Instruction Memory Registers (16) Load PC ALU PC Instruction & Address Register Rs Register Rt Register Rd Data Branch Opteller AND-poort Huidige stand PC Offset Nieuwe stand PC Evaluatie conditie Syntax : BEQ rs, rt, label Voorbeeld: BEQ $7, $5, loop Betekenis: if (register 7 = register 5) goto loop Zero Welke operatie moet de ALU uitvoeren?
13
13Ben Bruidegom Uitbreiding met ‘loopjes’ Waarom is er een RegWrite-lijn nodig?
14
14Ben Bruidegom Rekenmachine II
15
15Ben Bruidegom Opgaven paragraaf 7.4 Toelichting opdracht 7: 12.00 uur
16
16Ben Bruidegom Vermenigvuldigen op de basisschool Multiplicand a 1210 Multiplier b 1301 1210 0000 3630 1210 Product 1574210
17
17Ben Bruidegom Vermenigvuldigen binair Multiplicand a 1010 Multiplier b 1101 1010 0000 1010 Product 10000010
18
18Ben Bruidegom Multiplicand a 1010 Multiplier b 1101 1010 110010 1010 Product 10000010 Vermenigvuldigen binair
19
19Ben Bruidegom Multiplicand a 1010 Multiplier b 1101 1010 110010 1010 Product 10000010 Vermenigvuldigen
20
20Ben Bruidegom Uitbreiding met Data Memory Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address Register Rs Register Rt Register Rd Data Data out Bij een Harvard architectuur is het geheugen gescheiden in twee delen: het instructiegeheugen en het datageheugen
21
21Ben Bruidegom Uitbreiding instructieset Load Word (LW): Registers Data Memory Store Word (SW): Registers Data Memory Slechts twee instructies communiceren met het datageheugen Load/Store Machine
22
22Ben Bruidegom ALU en Data Memory Data Memory ALU Data in Address Data out First register Instructie Memory (index) Second register Destination register
23
23Ben Bruidegom Store Word Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address Register Rs Register Rt Register Rd Data Data out SW rt, index, rs SW $0, 0x10, $1 Memory[R1 + 10 HEX ] = R0
24
24Ben Bruidegom Load Word Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address Register Rs Register Rt Register Rd Data Data out LW rd, index, rs LW $0, 0x10, $1 R0 = Memory[R1 + 10 HEX ]
25
25Ben Bruidegom Uitbreiding met Data Memory (Harvard machine )
26
26Ben Bruidegom Vijf fases van een instructie Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address 1 st register rs 2d register rt Dest. reg. rd Data in 1: Instruction fetch 2: Instruction decode 3:Execute 4: Memory Access 5: Write back Data out
27
27Ben Bruidegom Vijf fases van een instructie Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address 1 st register rs 2d register rt Dest. reg. rd Data in 1: Instruction fetch 2: Instruction decode 3:Execute 4: Memory Access 5: Write back Data out
28
28Ben Bruidegom Vijf fases van een instructie Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address 1 st register rs 2d register rt Dest. reg. rd Data in 1: Instruction fetch 2: Instruction decode 3:Execute 4: Memory Access 5: Write back Data out
29
29Ben Bruidegom Vijf fases van een instructie Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address 1 st register rs 2d register rt Dest. reg. rd Data in 1: Instruction fetch 2: Instruction decode 3:Execute 4: Memory Access 5: Write back Data out
30
30Ben Bruidegom Vijf fases van een instructie Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address 1 st register rs 2d register rt Dest. reg. rd Data in 1: Instruction fetch 2: Instruction decode 3:Execute 4: Memory Access 5: Write back Data out
31
31Ben Bruidegom Vijf fases van een instructie Instruction Memory Registers (16)Data Memory ALU PC Instruction Data in Address 1 st register rs 2d register rt Dest. reg. rd Data in 1: Instruction fetch 2: Instruction decode 3:Execute 4: Memory Access 5: Write back Data out
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.