cpu tasarım – 2 single – cycle cpu veriyolu tasarımı
DESCRIPTION
CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı. Processor. Input. Control. Memory. Datapath. Output. Giriş. Bilgisayarı oluşturan beş klasik parça. CPI. Komut Sayısı. Saat zamanı. İşlemci performansı. İşlemcinin performansı şu kriterlere göre belirlenir : İşlencek komut sayısı - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/1.jpg)
CPU Tasarım – 2
Single – Cycle CPU Veriyolu Tasarımı
![Page 2: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/2.jpg)
Lec 3.2
Giriş
Bilgisayarı oluşturan beş klasik parça
Control
Datapath
Memory
ProcessorInput
Output
![Page 3: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/3.jpg)
Lec 3.3
İşlemci performansı
İşlemcinin performansı şu kriterlere göre belirlenir:
• İşlencek komut sayısı
• Saat frekansı
• Bir komut için gerekli saat darbesi miktarı
İşlemci (veri yolu ve kontrol) tasarımı ile;
• Saat frekansı
• Bir komut için gerekli saat darbesi miktarı
Belirlenir.
CPI
Komut Sayısı Saat zamanı
![Page 4: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/4.jpg)
Lec 3.4
Single-cycle veri yolu
Bütün komutlar bir saat periyodunda işlenir (yükselen kenardan yükselen kenara) Avantajı: İşlemcileri öğrenmek için iyi bir yol. Dezavantajı: Donanımın boşa kullanılması, düşük saat periyodu.
![Page 5: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/5.jpg)
Lec 3.5
Single cycle veriyolu: Varsayımar
İşlemciler senkron yapılar kullanırlar (saat sinyaline bağlı)
f T
1 MHz 1 μs
10 MHz 100 ns
100 MHz 10 ns
1 GHz 1 ns
• Bütün durum elemanları yükselen kenar tetiklemeli flip flop gibi varsayılır.
• Saat sinyali tüm flip floplara aynı anda ulaşır.
D Q
clk
![Page 6: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/6.jpg)
Lec 3.6
Kare tetiklemeli D flip floplar
D Q Yükselen saat kenarında D deki değer örneklenir.
Q saat sinyalinin geri kalanında örneklenmiş değeri bulundurur.
CLK
D
Q
![Page 7: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/7.jpg)
Lec 3.7
Adım adım işlemci tasarımı
1. Komut seti analiz edillir => veri yolu gereksinimleri• Her komut register transferi şeklinde açılır
• Veri yolu ISA register lar için depolama elemanı içermelidir
• Veri yolu gerekli tüm register transfer işlemlerini desteklemelidir
2. Veri yolu elemanları seçilir ve saat metodu belirlenir
3. Gereklilikleri yerine getirecek şekilde veri yolu elemanları bir araya getirilir
4. Her komutun gerçeklenmesi ve çalışması analiz edilerek register transferlerine etki eden kontrol sinyalleri çıkartılır
5. Çıkarılan sinyallere göre kontrol devresi kurulur
![Page 8: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/8.jpg)
Lec 3.8
MIPS komut formatları
3 adet komut formatı bulunmaktadır:
• R-type
• I-type
• J-type
Formatlardaki alanlar:• op: komutun hangi operasyonu yapacağını bellirtir• rs, rt, rd: hedef ve kaynak register ları belirtir• shamt: kaydırma miktarını belirtir• funct: “op” alanındaki operasyonların alt operasyonlarını
gösterir • address / immediate: adres değeri yada sabit değer bulundurur• target address: jump komutlarının hedef adresini belirtir
op target address
02631
6 bits 26 bits
op rs rt rd shamt funct
061116212631
6 bits 6 bits5 bits5 bits5 bits5 bits
op rs rt immediate016212631
6 bits 16 bits5 bits5 bits
![Page 9: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/9.jpg)
Lec 3.9
Birkaç MIPS komutunun incelenmesi
ADD/SUB
• addU rd, rs, rt
• subU rd, rs, rt
OR Immediate:
• ori rt, rs, imm16
LOAD/STORE Word
• lw rt, rs, imm16
• sw rt, rs, imm16
BRANCH
• beq rs, rt, imm16
op rs rt rd shamt funct
061116212631
6 bits 6 bits5 bits5 bits5 bits5 bits
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
![Page 10: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/10.jpg)
Lec 3.10
MIPS komutlarının işlenmesi
- Sıradaki komut memory den okunur.- Sıradaki komut için hazırlanılır
opcode rs rt rd functshamt
- Komutun içindeki alanlar çözülerek anlamlandırılır- Register içerisindeki değerler alınır (rs, rt)
- Operasyon gerçekleştirilir (add, sub, or, lw, sw, beq)- Sonuç register a(rt/rd) yada hafızaya yazılır , gerkiyorsa PC modifiye edilir
InstructionFetch
InstructionDecode
OperandFetch
Execute
ResultStore
![Page 11: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/11.jpg)
Lec 3.11
Register transferleri RTL bize komutun anlamını gösterir
Hepsi aşağıdaki gibi komutun fetch(hafızadan okunması) edilmesiyle başlıyor.
op | rs | rt | rd | shamt | funct = MEM[ PC ]
op | rs | rt | Imm16 = MEM[ PC ]
inst Register Transfers
ADDU R[rd] <– R[rs] + R[rt]; PC <– PC + 4
SUBU R[rd] <– R[rs] – R[rt]; PC <– PC + 4
ORi R[rt] <– R[rs] | zero_ext(Imm16); PC <– PC + 4
LOAD R[rt] <– MEM[ R[rs] + sign_ext(Imm16)]; PC <– PC + 4
STORE MEM[ R[rs] + sign_ext(Imm16) ] <– R[rt]; PC <– PC + 4
BEQ if ( R[rs] == R[rt] ) then PC <– PC + 4 + [sign_ext(Imm16) || 00] else PC <– PC + 4
![Page 12: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/12.jpg)
Lec 3.12
Step 1: Komut setinin gereklilikleri Hafıza
• komutlar & veriler
Registers (32 x 32)
• RS i oku
• RT yi oku
• RT yada RD ye yaz
PC
Extender
ALU işlemleri
PC + 4 yada PC + “extended immediate” hesaplanması
![Page 13: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/13.jpg)
Lec 3.13
Step 2: Veri yolu elemanları
Combinational Elements
Storage Elements
• Clocking methodology
![Page 14: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/14.jpg)
Lec 3.14
Combinational Logic Elements (Basic Building Blocks)
Adder
MUX
ALU
32
32
A
B
32Sum
Carry
32
32
A
B
32Result
OP
32A
B32
Y32
Select
Adder
MU
XA
LU
CarryIn
![Page 15: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/15.jpg)
Lec 3.15
Depolama Elemanı: Register (Basic Building Block)
Register• Bir D Flip Flop dan farklı yanları;
- N-bit giriş ve çıkış
- Write Enable girişi
• Write Enable:
- Negated (0): Data Out değişmez
- Asserted (1): Data Out Data In i gösterirClk
Data In
Write Enable
N N
Data Out
![Page 16: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/16.jpg)
Lec 3.16
Depolama Elemanı : Register File Register File 32 register içerir:
• İki tane 32 bitlik çıkış:
busA ve busB
• Bir tane 32 bitlik giriş: busW
Register seçimi:• RA (numara) busA ya konulacak register ı seçer (veri)
• RB (numara) busB ya konulacak register ı seçer (veri)
• RW (numara) Write enable 1 olduğunda busW (veri) nin içeriğinin yazılacağı register ı seçer
Clock input (CLK) • CLK sadece yazma işleminde bir faktördür.
• Yapılar okuma işleminde combinational logic gibi davranır.
- RA yada RB geçerliyse => busA yada busB ulaşım zamanından sonra geçerlidir.
Clk
busW
Write Enable
3232
busA
32busB
5 5 5RW RA RB
32 32-bitRegisters
![Page 17: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/17.jpg)
Lec 3.17
Depolama Elemanı: Idealized Memory
Memory (ideal yapısı)• Bir giriş bus ı: Data In
• Bir çıkış bus ı: Data Out
Memory alanı seçimi:• Address, Data Out a konulacak olan verinin yerini seçer
• Write Enable = 1: address, Data In bus dan gelen verinin nereye yazılacağını seçer
Clock input (CLK) • CLK sadece yazma işleminde bir faktördür.
• Yapılar okuma işleminde combinational logic gibi davranır:
- Address geçerli => Data Out “access time.” dan sonra geçerlidir.
Clk
Data In
Write Enable
32 32DataOut
Address
![Page 18: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/18.jpg)
Lec 3.18
Clocking Methodology
Bütün depolama elemanları aynı saat köşe darbesinde tetiklenir Flip-flop lar (FF) ve combinational logic ler fiziksel yapılar
olduklarından bazı gecikmelere maruz kalırlar:• Kapılar: input un değişiminden output un değişimine kadarki
gecikme• Sinyallerin FF ler arasındaki transferi için, FF lardaki sinyaller ilgili
köşe tetiklemesi gelmeden istikrarlı hale gelmeli. “Critical path” (tasarımdaki en uzun yol) saat periyodunun
belirlenmesini sağlar.
.
.
.
.
.
.
.
.
.
.
.
.
Clk
Don’t Care
Setup HoldSetup Hold
![Page 19: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/19.jpg)
Lec 3.19
Step 3: Veri yolu gereksinimlerinin karşılanması
Register Transfer Gereksinimleri Veri yolunun gerçeklenmesi
Komutun alınması
Operantların okunması ve işlenmesi
Sonucun ilgli alana yazılması
![Page 20: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/20.jpg)
Lec 3.20
3a: Instruction Fetch Unitesine bakış Yaygın RTL operasyonları
• Fetch the Instruction: mem[PC]
- PC == Program Counter, sonraki komutu gösterir• “Program counter” ın yenilenmesi:
- Sıralı Code: PC <- PC + 4
- Branch ve Jump: PC <- “sabit bir değer”
32
Instruction WordAddress
InstructionMemory
PCClk
Next AddressLogic
![Page 21: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/21.jpg)
Lec 3.21
Instruction Fetch
32
Addr
Data
32
InstrMem
Niçin +4 , +1 değil?
CLK
Address
Data IMem[PC + 8]
IMem[PC + 4]IMem[PC]
PC + 8PC + 4PC
op target address02631
6 bits 26 bits
op rs rt rd shamt funct061116212631
6 bits 6 bits5 bits5 bits5 bits5 bits
op rs rt immediate016212631
6 bits 16 bits5 bits5 bits
![Page 22: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/22.jpg)
Lec 3.22
3b: Add & Subtract R[rd] <- R[rs] op R[rt] Örnek: addU rd, rs, rt
• Ra, Rb, and Rw komutların rs, rt ve rd alanlarından geliyor
• ALUctr ve RegWr: control logic tarafından komut çözüldükten sonra üretiliyorlar
32
Result
ALUctr
Clk
busW
RegWr
32
32
busA
32
busB
5 5 5
Rw Ra Rb
32 32-bitRegisters
Rs RtRd
ALU
op rs rt rd shamt funct
061116212631
6 bits 6 bits5 bits5 bits5 bits5 bits
![Page 23: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/23.jpg)
Lec 3.23
Yükselen kenardan sonra verinin ilerleyişi
32
RegFile
32
WE32
5Ra
5Rb
5Rw
32ALU
32
32
op
Control Logic
Addr Data
InstrMem
D
PC
Q
Adder
4
![Page 24: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/24.jpg)
Lec 3.24
Register-Register Timing: One complete cycle
32
Result
ALUctr
Clk
busW
RegWr
3232
busA
32busB
5 5 5
Rw Ra Rb
32 32-bitRegisters
Rs RtRd
ALU
Clk
PC
Rs, Rt, Rd,Op, Func
Clk-to-Q
ALUctr
Instruction Memory Access Time
Old Value New Value
RegWr Old Value New Value
Delay through Control Logic
busA, B
Register File Access Time
Old Value New Value
busW
ALU Delay
Old Value New Value
Old Value New Value
New ValueOld Value
Register WriteOccurs Here
![Page 25: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/25.jpg)
Lec 3.25
3c: Immediate operasyonu R[rt] <- R[rs] op ZeroExt[imm16]
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
32
Result
ALUctr
Clk
busW
RegWr
32
32
busA
32
busB
5 5 5
Rw Ra Rb
32 32-bitRegisters
Rs
Zero
Ext
Mu
x
RtRdRegDst
Mux
3216imm16
ALUSrc
ALU
Rt?
![Page 26: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/26.jpg)
Lec 3.26
3d: Load Operasyonu R[rt] <- Mem[R[rs] + SignExt[imm16]] E.g.: lw rt, rs,
imm16
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
32
ALUctr
Clk
busW
RegWr
3232
busA
32busB
5 5 5
Rw Ra Rb32 32-bitRegisters
Rs
RtRdRegDst
Exte
nd
er
Mu
x
Mux
3216
imm16
ALUSrc
ExtOp
Clk
Data InWrEn
32
Adr
DataMemory
32
ALU
MemWr Mu
x
W_Src
??
Rt?
![Page 27: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/27.jpg)
Lec 3.27
3e: Store Operasyonu
Mem[ R[rs] + SignExt[imm16] ] <- R[rt] E.g.: sw rt, rs, imm16
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
32
ALUctr
Clk
busW
RegWr
3232
busA
32busB
55 5
Rw Ra Rb32 32-bitRegisters
Rs
Rt
Rt
RdRegDst
Exte
nd
er
Mu
x
Mux
3216imm16
ALUSrcExtOp
Clk
Data InWrEn
32Adr
DataMemory
MemWr
ALU
32
Mu
x
W_Src
![Page 28: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/28.jpg)
Lec 3.28
3f: Branch komutu
beq rs, rt, imm16
• mem[PC] memory den komutu oku
• Equal <- R[rs] == R[rt] branch durumunu hesapla
• if (Equal) sonraki komut adresini hesapla
- PC <- PC + 4 + ( SignExt(imm16) x 4 )
• else
- PC <- PC + 4
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
![Page 29: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/29.jpg)
Lec 3.29
Branch operasyonu için veriyolu
beq rs, rt, imm16 Eşitlik sinyalini duruma göre veri yolu üretiyor
op rs rt immediate
016212631
6 bits 16 bits5 bits5 bits
32
imm16P
C
Clk
00
Ad
der
Mu
x
Ad
der
4nPC_sel
Clk
busW
RegWr
32
busA
32busB
5 5 5
Rw Ra Rb32 32-bitRegisters
Rs Rt
Eq
ual?
Cond
PC
Ext
Inst Address
![Page 30: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/30.jpg)
Lec 3.30
Tamamı : A Single Cycle Datapath
imm
16
32
ALUctr
Clk
busW
RegWr
32
32
busA
32busB
55 5
Rw Ra Rb32 32-bitRegisters
Rs
Rt
Rt
RdRegDst
Exte
nd
er
Mu
x
3216imm16
ALUSrcExtOp
Mu
x
MemtoReg
Clk
Data InWrEn32 Adr
DataMemory
MemWrA
LU
Equal
Instruction<31:0>
0
1
0
1
01
<2
1:2
5>
<1
6:2
0>
<1
1:1
5>
<0
:15
>
Imm16RdRtRs
=
Ad
der
Ad
der
PC
Clk
00
Mu
x
4
nPC_sel
PC
Ext
Adr
InstMemory
![Page 31: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/31.jpg)
Lec 3.31
A Single Cycle Datapath
PC
Instructionmemory
Readaddress
Instruction[31– 0]
Instruction [20– 16]
Instruction [25– 21]
Add
Instruction [5– 0]
MemtoReg
ALUOp
MemWrite
RegWrite
MemRead
BranchRegDst
ALUSrc
Instruction [31– 26]
4
16 32Instruction [15– 0]
0
0Mux
0
1
Control
Add ALUresult
Mux
0
1
RegistersWriteregister
Writedata
Readdata 1
Readdata 2
Readregister 1
Readregister 2
Signextend
Shiftleft 2
Mux
1
ALUresult
Zero
Datamemory
Writedata
Readdata
Mux
1
Instruction [15– 11]
ALUcontrol
ALUAddress
![Page 32: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/32.jpg)
Lec 3.32
Critical Path Register file ve ideal memory:
• CLK sadece yazma işleminde bir faktördür.
• Yapılar okuma işleminde combinational logic gibi davranır:
- Address geçerli => Data Out “access time.” dan sonra geçerlidir.
Critical Path (Load Operasyonu) = PC’s Clk-to-Q + Instruction Memory’s Access Time + Register File’s Access Time + ALU to Perform a 32-bit Add + Data Memory Access Time + Setup Time for Register File Write + Clock Skew
Clk
5
Rw Ra Rb
32 32-bitRegisters
RdA
LU
Clk
Data In
DataAddress
IdealData
Memory
Instruction
InstructionAddress
IdealInstruction
Memory
Clk
PC
5Rs
5Rt
16Imm
32
323232
A
B
Next
Ad
dre
ss
![Page 33: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/33.jpg)
Lec 3.33
İmplementasyon
DataOut
Clk
5
Rw Ra Rb
32 32-bitRegisters
Rd
ALU
Clk
Data In
DataAddress
IdealData
Memory
Instruction
InstructionAddress
IdealInstruction
Memory
Clk
PC
5Rs
5Rt
32
323232
A
B
Next
Ad
dre
ss
Control
Datapath
Control SignalsConditions
![Page 34: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/34.jpg)
Lec 3.34
Summary
5 steps to design a processor
1.Komut seti analiz edillir => veri yolu gereksinimleri
2. Veri yolu elemanları seçilir ve saat metodu belirlenir
3. Gereklilikleri yerine getirecek şekilde veri yolu elemanları bir araya getirilir
4. Her komutun gerçeklenmesi ve çalışması analiz edilerek register transferlerine etki eden kontrol sinyalleri çıkartılır
5. Çıkarılan sinyallere göre kontrol devresi kurulur
![Page 35: CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı](https://reader036.vdocuments.site/reader036/viewer/2022081421/56814093550346895dac2661/html5/thumbnails/35.jpg)
Lec 3.35
Summary
MIPS in sağladığı kolaylıklar
• Tüm komutlar aynı boyuttadır
• Kaynak registerları hep aynı yerde bulunur
• Sabit değerler hep aynı boyutta ve aynı yerde bulunur
• Operasyonlar her zaman register lar ve sabitler üzerinden yapılır
Single cycle datapath => CPI=1, CCT => uzun
Sonraki sunum : Control devresinin gerçeklenmesi