5 Stage Pipline ARM Organization - Arduino Myanmar

Breaking

Open Arduino for Myanmar

Saturday, June 16, 2018

5 Stage Pipline ARM Organization

5 stage Pipline ARM Organization
================================

 Tprog = Ninst * CPI/fclk
Tprog ဆိုတာ program တစ္ခုကို အလုပ္တဲ့ ၾကာခ်ိန္ျဖစ္ပါတယ္။
Ninst ဆိုတာ ပရိုဂရမ္ထဲမွာ အလုပ္လုပ္တဲ့ ARM instruction အေရအတြက္ျဖစ္ပါတယ္။
CPI ဆိုတာ Instruction တစ္ခုမွာ ရွိတဲ့ Clock  Cycle ေတြရဲ႕ ပွ်မ္းမ်ွအေရအတြက္ျဖစ္ ပါတယ္။
Fclk ကေတာ့ Frequencyျျဖစ္ပါတယ္
။
 ARM9TDMI မွာ အသံုးျပဳပါတယ္။ 5 stage pipline မွာ instruction နဲ႕ data memory ေတြကိုခြဲျခားထားပါတယ္။


(၁)Fetch
Instruction ကို Memory ထဲကေနဆြဲထုတ္ျပီးေတာ့ Instruction Pipline ထဲမွာထားလိုက္ပါတယ္။
(၂)Decode
Instruction ကို decode လုပ္ျပီးေတာ့ Register operand ေတြဟာ register file ေတြထဲကေနျပီးေတာ့ ဖတ္ယူပါတယ္။ Register file ထဲမွာ operand read port သံုးခု ရွိပါတယ္။
(၃)Execute
Operand တစ္ခုကို shift လုပ္လိုက္ျပီးေတာ့ ALU result ကိုထုတ္ေပးလိုက္ပါတယ္။ Instruction က load သို႕မဟုတ္ store ျဖစ္မယ္ဆိုရင္ Memory Address က ALU ထဲမွာအလုပ္လုပ္ပါတယ္။
(၄) Buffer/Data
လိုအပ္မယ္ဆိုရင္ data memory ကို သံုးစြဲပါတယ္။ ဒီလိုမွမဟုတ္ရင္ ALU result က cycle တစ္ခု အတြက္ဘဲျျဖစ္ပါတယ္
။
(၅) Write back
Instruction ကေနထုတ္ေပးလိုက္တဲ့ result ဟာ  Memory ကေနရတဲ့ data ေတြအပါအ၀င္ register file ထဲကို ျပန္ေရးပါတယ္။ 

       Thank You!
          Zaw Myat

No comments:

Post a Comment