CPU උපදෙස් මට්ටමේ සමාන්තරතාවය

විකිපීඩියා වෙතින්

CPU උපදෙස් මට්ටමේ සමාන්තරතාවය


මුලික පංච අවස්ථා නල මාරග හොදම සෙනාර්ියේදි මෙම නල මාර්ගයයට වක්‍රය එක් උපදෙසක් සම්පුර්ණ කිරිමේ සීග්‍රතාවයක් සම්පුර්ණ කර ගත හැකි වේ.

සමානාත්රකම් උත්සන් කිර'මට ඇති සරලම ක්‍රමයක් වන්නේ මුල් උපදෙස ක්‍රියා කරවිම නිමවිමට පෙර උපදෙස් අභරනය කිරිමේ හා විකේතනය කිරිමේ මුල් පියවර ගැනීමයි. මෙය උපදෙස් නල මාර්ගකරණය නැමති ශිල්පිය කුමයක සරලම ආකාරය වන අතර සියළුම නවීකරන පොදු කාර්ය CPU එකක්ම පාහේ යොදා ගැනේ. නල මර්ගකරණය මගින් ක්‍රියා කරවිමේ මාර්ගය වි‍වික්ත අවදි වලට වෙන් කරන බැවින් එක් අවධියකදි එක් උපදෙසකට වඩා ක්‍රියා කරවිමට අවස්ථාව ලැබේ. උපදෙස ක්‍රියා කරවා නල මාර්ගයෙන් ඉවත් කෙරෙන තෙක් එක් එක් අවදියේදි වඩ වඩා පුර්ණ කිරිම සිදු කරන බවින් වෙන වෙන් කිරිම එක්ලස් පෙලකට සමාන කල හැකි වේ.

කෙසේ වෙතත් නළ මාර්ගකරණය මගින් මුල් මෙහෙයුමක ප්‍රතිඵලය ඊලග මෙහෙයුම නිම කිරිමට අවශ්‍ය වන අවස්ථා ඇති විමට පුළුවන මෙම තත්ත්වය දත්ත ආයතනය ගැටලු ලෙස හැදින්වේ. මෙවඇනි තත්ව වැඩ පැවැත්විමට මෙවැනි ආකාරයේ තත්ව ගැන හා මෙවැනි තත්වයක් උදා වුවහොත් උපදෙස් නල මාර්ගයේ කොටසක් පවා කිරිම සදහා අතිරේක පරිපතවලියක් අවශ්‍ය වන නිසා නල මාර්ගස්ථ සකසන Sbscater ඒවාට වඩා සංකිර්ණ වේ. 9නමුත් සුවිශේෂ ලෙස සංකිර්ණ නොවේ) නල මාර්ගයක සකසනකය අදිශ තත්තවයට ඉතාමත් ලංවිය හැකි අතර නිෂේධනය විය හැක්කේ නල මාර්ග හදිසියේ නතර විමමෙන් පමණි. (උපදෙස් එක් අවදියකදි එක් ස්පන්දන ච්‍ක්‍රයකට වඩා ගැනිමෙනි)

සරල සුපිරි අදිශ නල මාර්ගය එක් වරකට උපදෙස් දෙක් ආහරනය කිරිමෙන් හා යැවිමෙන් උපරිම ලෙස ගත් විට එක් චක්‍රයකචදි උපදෙස් දෙකක් සදම්පුර්ණ කර ගත හැකිවේ.

උපදෙස් නල මාර්ග පිලිබද අදහස තවදුරටත් වැඩි දියුනු කිරිමෙන් CPU අංගයන්හි අභාවිත කාලය තවදුරටයත අවම කරන ක්‍රම දියුණු විමට හේතු විය. සුපිරි අදිග ලෙස හදුන්වන සැලසුම් වල දිගු උපදෙස් නල මාර්ග හා බහු සර්වසම ක්‍රියාකරවන ඒකකක අඩංග්‍ු වේ. සුපිරි අදිශ නල මාර්ග බහු උපදෙස් ප්‍රමාණයක් කියවා ඒවා dispatcher එක වෙත යවන අතර උපදෙස් සමාන්තර (එක විටම ක්‍රියා කරවිය හැකිද නැද්ද යන්න තිරණය කරන්නේ ඒවා ‍මගින් සේ නම් ඒවා තිබෙන ක්‍රියකරවන ඒකක වෙත යැරවෙන අතර මෙමගින් උපදෙස් කිහිපයකට එකවර ක්‍රියා කරවිමේ හැකියාව ලැබේ. සමස්තයක් ලෙස ගත් විට සුපිරි අදිශ CPU මගින් නැවති සිටින ක්‍රියා කරවන ඒකක වෙත එක විට යැවිය හැකි උපදෙස් ප්‍රමාණය වැඩිවත්ම වැඩි උපදෙස් ප්‍රමාණයක් එක් චක්‍රයකදි සම්පුර්ණ කර ගත හැකිවේ. සුපිරි අදිශ CPU නිර්මිත සැගසුම් කිරිම ගත් විට අපහසු කාර්යය වන්නේ dispatcher නිර්මාණය කිරිමයි. dispatcher ට කුමන උපසේ සාන්තර ක්‍රියා කරවිය හැකි දැයි ඉක්මනනින් හා නිවැරදිව නිර්ණය කළ හැකි විය යුතු අතරම උපරිම ක්‍රියාකරවන ඒකක ගනනක් කාර්ය බහුලව තැාබෙන ආකාරයට එම උපදෙස් යැවිය යුතුය. මේ සදහා උපදෙස් නල මාර්ගය ඉක්මනින් පිරිවය යුතු අතර CPU හැඹිලියේ සැලකිය යුතු කොටස් ප්‍රමාණයක් සුපිරි අදිශ නිර්මිතය යොදා ගැනිමේ අවශ්‍යතාව වැඩි කරයි. එසේම ඉහල මට්ටමක කාරය සාධකයක් ‍පවත්වා ගැනිම උදෙසා branch prediction, speculative execution out-of- order- exexution වැනි උපද්‍රව මගහැරිම් හිල්පිය කුම යොදා ගැනිම තිරණාත්මක වේ. කොන්දෙස් සහගත උපදෙස් මගින් කුමන ශාකාවක් ‍(හෝ පඨයක්_ ගනිදැයි අනුමාන කිරිමට උත්සහ කිරිමෙන් CPU හහට කොන්දේසි සහගත උපදෙසක් නියමකරන තුරැ මහත් ‍නල මාර්ගයම නවතා බලා සිටි මුලු වාර ගණන අඩු කරගත හැකි වේ. කල්පිත ක්‍රියාකරවිම මගින් කොන්දේසි සහගත මෙහෙයුම් අවසානයේ අවශ්‍ය වන හෝ නෙවන කේත කොටස් ක්‍රියා කරවිමෙන් බොහෝ විට ප්‍රමාණවත් කාර්ය සාධන වර්ධයන් පලබා දේ. අපිලිවෙලට ක්‍රියා කරවිම මගින් යම් ප්‍රමාණයකට උපදෙස් ක්‍රියා කිරිමේ පිළිවෙල නැවත සැකසිමක් සිදුවන අතර දත්ත ආයත්තතාවයන් මගින් ඇතිවන ප්‍රමාද අඩු කර ගත හැකිවේ.

CPU හි කොටසක් සුපිරි අදිශ හා කොටස් එසේ නොවන අවස්ථාවකදි එම සුපිරි අදිශ නොවන කොටසට උපලේඛනය කිරිම නතර විම නිසා කා්ය සාධනය අතින් පාඩු විදිමට සදිදුවේ. මුල් Interl pentium(PS) හට එකකින් එක කාලය චක්‍රයකදි එක් උපදෙසක් ප්‍රතිගහළුණය කරන සුපිරි අදිශ අංක ගණිතය තර්ක එකක දෙකක් තිබු නමුත් එහි FPU හට එක් කාල චක්‍රයකදි එක් උපදෙසක් ප්‍රතිග්‍රහණය කළ ‍ොනාහැකි විය. එම නිසා P5 නිකිල අතින් සුපිර අදිශ වු අතර ඉපිලෙන ලක්ෂ්‍ය අතින් සුපිරි අදිශ නොවිය. Intel හි Penti um නිර්මිකතියට අනුප්‍රාපිතයාවු P6 හි ඉපිලෙසන ලක්ෂිය විශේෂාංග වලට සුපිරි අදිශ හැියාව එක් කර තිබු අතර එම නිසා ඉපිලෙන ලක්ඹෂිය උපදෙස් ක්‍රියා කරවිමෙහි සුවිශේෂි වර්ධනයක් සලසවා ගත හැකිවිය.

සරල නර මාර්ගකරණය හා සුපරි අදිශ සැලසුම් යන දෙනකම මගින් CPU හි උපදෙස් මට්ටමේ සමානතරතාවය (ILP) වර්දනය කරන අතර තනි සකසනයකට චක්‍රයකට එක් උපදෙසක් ඉක්මවන සීඝ්‍රතාවයකින් උපදෙස් ක්‍රියා කරවිමට අවස්ථාව ලැබේ. බොහො නවින CPU සැලසුම් යම් දුරකට සුපිරි අිශ වන අතර පසුගිය දශකයෙි සරලසුම්කල පොදු කාර්ය CPU සියල්ලම පාහේ සුපිර අදිශ වෙ. පසුගිය වසර වලදි ඉහල ILP පරිගණක සැලසුම් කිරිමට තිබු ප්‍රමුඛතාවය CPU දෘඩාංගය වලින් ඉවත් කොට එහි මෘදුකාංග අතුරැමුහුණතකට හෝ හට ඍජුව මෘදුකාංග මගින් ගම්‍යමානවිමට ඉඩ සලසන අතර එමගින් CPU මගින් ILP හුවා දැක්විමට කල යුතු වැඩ ප්‍රමාණය අඩු කරන අතර මේ හේතුවෙන් සැලසුමෙහි ඇති සංකිර්ණතාව අඩු වේ.