A Hybrid Neural Based Dynamic Branch Prediction Unit

Gheni Ali
2012 Eng.& Tech. Journal   unpublished
Modern high performance processor architectures have come to depend upon highly pipelined operation in order to achieve improvements in operating speed. As a result, the cost associated with flushing the pipeline and refilling it when a branch instruction is mis-predicted can significantly impact processor performance. Many schemes, from the extremely simple to the highly complex, have been proposed to improve branch prediction accuracy. Conventional two-level branch predictors predict the
more » ... rs predict the outcome of a branch either based on the(local branch history) information, comprising the previous outcomes of a single branch (intra-branch correlation), or based on the (global branch history) information, comprising the previous outcomes of all branches (inter-branch correlation). The misprediction rates for these predictors are very high when they predict branch instructions with hybrid correlations. In this paper we suggest a hybrid perceptron based predictor which employs up to 31-bits of both local and global branch history information to minimize the misprediction rates. The software written for simulation and testing shows that the suggested hybrid predictor achieves a high accuracy. Our results shows that the best response of the predictor is obtained on history length of 16-bits. ‫ﺍﻟﻌﺼﺒﻴﺔ‬ ‫ﺍﻟﺸﺒﻜﺎﺕ‬ ‫ﺒﺎﺴﺘﺨﺩﺍﻡ‬ ‫ﺒﺎﻟﺘﻔﺭﻋﺎﺕ‬ ‫ﻟﻠﺘﻨﺒﺅ‬ ‫ﻫﺠﻴﻨﺔ‬ ‫ﺩﻴﻨﺎﻤﻴﻜﻴﺔ‬ ‫ﻭﺤﺩﺓ‬ ‫ﺍﻟﺨﻼﺼﺔ‬ ‫ﻴ‬ ‫ﻤـﺎ‬ ‫ﻋﻠﻰ‬ ‫ﻜﺒﻴﺭﺓ‬ ‫ﻭﺒﺩﺭﺠﺔ‬ ‫ﺍﻟﺤﺩﻴﺜﺔ‬ ‫ﺍﻟﻤﻌﺎﻟﺠﺎﺕ‬ ‫ﻤﻌﻤﺎﺭﻴﺎﺕ‬ ‫ﺘﻌﺘﻤﺩ‬ ‫ﺍﻟﺘﺩﻓﻘﻴـﺔ‬ ‫ﺒﺎﻟﻤﻌﺎﻟﺠـﺔ‬ ‫ﻌـﺭﻑ‬ (Pipelining) ‫ﺍﻟﺘﺸﻐﻴﻠﻴﺔ‬ ‫ﺴﺭﻋﻬﺎ‬ ‫ﺘﺤﺴﻴﻥ‬ ‫ﺃﺠل‬ ‫ﻤﻥ‬. ‫ﺨـﻁ‬ ‫ﺘﻔﺭﻴـﻎ‬ ‫ﻤﻥ‬ ‫ﺘﻨﺘﺞ‬ ‫ﺍﻟﺘﻲ‬ ‫ﺍﻟﺘﻜﻠﻔﺔ‬ ‫ﻓﺈﻥ‬ ‫ﻟﺫﻟﻙ‬ ‫ﺒﺩﺭﺠـﺔ‬ ‫ﺴﻴﺅﺜﺭ‬ ‫ﻤﻌﻴﻥ‬ ‫ﺘﻔﺭﻉ‬ ‫ﺇﻴﻌﺎﺯ‬ ‫ﺒﺘﻨﻔﻴﺫ‬ ‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﻓﻲ‬ ‫ﺨﻁﺄ‬ ‫ﺤﺩﻭﺙ‬ ‫ﻋﻨﺩ‬ ‫ﻤﻠﺌﻪ‬ ‫ﻭﺇﻋﺎﺩﺓ‬ ‫ﺍﻟﺘﺩﻓﻘﻴﺔ‬ ‫ﺍﻟﻤﻌﺎﻟﺠﺔ‬ ‫ﺍﻟﻤﻌﺎﻟﺞ‬ ‫ﺃﺩﺍﺀ‬ ‫ﻋﻠﻰ‬ ‫ﻜﺒﻴﺭﺓ‬. ‫ﺍﻟﺩﻴﻨﺎﻤﻴﻜﻲ‬ ‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﺘﻘﻨﻴﺎﺕ‬ ‫ﻤﻥ‬ ‫ﺍﻟﻌﺩﻴﺩ‬ ‫ﻫﻨﺎﻙ‬ ‫ﻁﻭﺭﺕ‬ ‫ﻭﺍﻟﺘﻲ‬ ‫ﺍﻟﺘﻔﺭﻉ‬ ‫ﺒﻌﻤﻠﻴﺎﺕ‬ ‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﺩﻗﺔ‬ ‫ﻟﺘﺤﺴﻴﻥ‬ ، ‫ﺍﻟﺘﻌﻘﻴﺩ‬ ‫ﻓﻲ‬ ‫ﻏﺎﻴﺔ‬ ‫ﻭﺒﻌﻀﻬﺎ‬ ‫ﺠﺩﺍ‬ ‫ﺒﺴﻴﻁﺔ‬ ‫ﺍﻟﺘﻘﻨﻴﺎﺕ‬ ‫ﻫﺫﻩ‬ ‫ﺒﻌﺽ‬. ‫ﻓـﺈﻥ‬ ‫ﻋﻤﻭﻤـﺎ‬ ‫ﻟﻜﻥ‬ ‫ﺘﺎﺭﻴﺨﻴـﺔ‬ ‫ﻤﻌﻠﻭﻤﺎﺕ‬ ‫ﻋﻠﻰ‬ ‫ﺒﻨﺎﺀﺍ‬ ‫ﺃﻤﺎ‬ ‫ﺍﻟﺘﻔﺭﻉ‬ ‫ﺇﻴﻌﺎﺯ‬ ‫ﺒﻨﺘﻴﺠﺔ‬ ‫ﺘﺘﻨﺒﺄ‬ ‫ﺍﻟﻤﺴﺘﻭﻴﻴﻥ‬ ‫ﺫﺍﺕ‬ ‫ﺍﻟﺘﻘﻠﻴﺩﻴﺔ‬ ‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﻭﺤﺩﺍﺕ‬ ‫ﻤﺤﻠﻴﺔ‬ (local branch history)) ‫ﺍﻟﺘﻨﻔ‬ ‫ﺤﺎﻻﺕ‬ ‫ﻋﻥ‬ ‫ﻤﻌﻠﻭﻤﺎﺕ‬ ‫ﺍﻟﺫﻱ‬ ‫ﺍﻹﻴﻌﺎﺯ‬ ‫ﻟﻨﻔﺱ‬ ‫ﺍﻟﺴﺎﺒﻘﺔ‬ ‫ﺍﻟﻔﻌﻠﻴﺔ‬ ‫ﻴﺫ‬ ‫ﺤﺎﻟﻴﺎ‬ ‫ﺘﻨﻔﻴﺫﻩ‬ ‫ﺒﻌﻤﻠﻴﺔ‬ ‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﻴﺭﺍﺩ‬ (‫ﺍﻟﺩﺍﺨﻠﻲ‬ ‫ﺒﺎﻟﺘﺭﺍﺒﻁ‬ ‫ﻴﻌﺭﻑ‬ ‫ﻤﺎ‬ ‫ﻭﻫﻭ‬ (intra-branch correlation) ، ‫ﺸﺎﻤﻠﺔ‬ ‫ﻤﻌﻠﻭﻤﺎﺕ‬ ‫ﻋﻠﻰ‬ ‫ﺍﺴﺘﻨﺎﺩﺍ‬ ‫ﻤﻌﻴﻥ‬ ‫ﺘﻔﺭﻉ‬ ‫ﺒﻨﺘﻴﺠﺔ‬ ‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﻴﺘﻡ‬ ‫ﺃﻥ‬ ‫ﺃﻭ‬ (global branch history) ‫ﻋﻥ‬ ‫ﻤ‬ ‫ﺍﻟﻤﻨﻔﺫﺓ‬ ‫ﺍﻟﺘﻔﺭﻉ‬ ‫ﺃﻭﺍﻤﺭ‬ ‫ﻟﺠﻤﻴﻊ‬ ‫ﺍﻟﺘﻨﻔﻴﺫ‬ ‫ﺤﺎﻻﺕ‬ ‫ﺅﺨﺭﺍ‬. ‫ﻭﺍﻁﺌـﺔ‬ ‫ﺘﻨﺒـﺅ‬ ‫ﺩﻗـﺔ‬ ‫ﺘﻘﺩﻡ‬ ‫ﺍﻟﺴﺎﺒﻘﺔ‬ ‫ﺍﻟﻁﺭﻕ‬ ‫ﻜل‬ PDF created with pdfFactory Pro trial version www.pdffactory.com A Hybrid Neural Based Dynamic Branch Prediction Unit 1067 ‫ﻤﺎ‬ ‫ﻭﻫﺫﺍ‬ ‫ﺃﺨﺭﻯ‬ ‫ﻭﻷﻭﺍﻤﺭ‬ ‫ﻨﻔﺴﻪ‬ ‫ﻟﻸﻤﺭ‬ ‫ﺍﻟﺴﺎﺒﻘﺔ‬ ‫ﺍﻟﺘﻨﻔﻴﺫ‬ ‫ﺤﺎﻻﺕ‬ ‫ﻋﻠﻰ‬ ‫ﺘﻨﻔﻴﺫﻫﺎ‬ ‫ﻴﻌﺘﻤﺩ‬ ‫ﺍﻟﺘﻲ‬ ‫ﺍﻟﺘﻔﺭﻉ‬ ‫ﺒﺈﻴﻌﺎﺯﺍﺕ‬ ‫ﺍﻟﻬﺠﻴﻥ‬ ‫ﺒﺎﻟﺘﺭﺍﺒﻁ‬ ‫ﻴﻌﺭﻑ‬ (hybrid correlation). ‫ﻟﻠﺘﻨﺒـﺅ‬ ‫ﻤﻘﺘﺭﺤﺔ‬ ‫ﻫﺠﻴﻨﺔ‬ ‫ﻁﺭﻴﻘﺔ‬ ‫ﻴﻘﺩﻡ‬ ‫ﺍﻟﺒﺤﺙ‬ ‫ﻫﺫﺍ‬ ‫ﺍﻟ‬ ‫ﺃﻨﻭﺍﻉ‬ ‫ﺍﺒﺴﻁ‬ ‫ﺘﺴﺘﺨﺩﻡ‬ ‫ﺍﻟﺘﻔﺭﻋﺎﺕ‬ ‫ﺒﺄﻨﻭﺍﻉ‬ ‫ﻭﻫﻭ‬ ‫ﺍﻟﻌﺼﺒﻴﺔ‬ ‫ﺸﺒﻜﺎﺕ‬ (Perceptron). ‫ﺍﻟﺘـﻲ‬ ‫ﺍﻟﻁﺭﻴﻘـﺔ‬ ‫ﻟﻐﺎﻴﺔ‬ ‫ﺘﺴﺘﺨﺩﻡ‬ ‫ﺍﻟﺒﺤﺙ‬ ‫ﻴﻘﺩﻤﻬﺎ‬ 31 ‫ﺍﻟﻬﺠﻴﻨﺔ‬ ‫ﺍﻟﻤﻌﻠﻭﻤﺎﺕ‬ ‫ﻤﻥ‬ ‫ﺒﺕ‬) ‫ﺇﻴﻌﺎﺯ‬ ‫ﺘﻨﻔﻴﺫ‬ ‫ﺘﺎﺭﻴﺦ‬ ‫ﻋﻥ‬ ‫ﻭﺸﺎﻤﻠﺔ‬ ‫ﻤﺤﻠﻴﺔ‬ ‫ﺍﻟﺘﻔﺭﻉ‬ (‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﺩﻗﺔ‬ ‫ﺘﺤﺴﻴﻥ‬ ‫ﺃﺠل‬ ‫ﻤﻥ‬ ‫ﺍﻟﻬﺠﻴﻥ‬ ‫ﺍﻟﺘﺭﺍﺒﻁ‬ ‫ﺨﺼﻭﺼﻴﺔ‬ ‫ﻟﻤﺭﺍﻋﺎﺓ‬. ‫ﺒﺭﻤﺠـﻲ‬ ‫ﻨﻅـﺎﻡ‬ ‫ﺒﻨﺎﺀ‬ ‫ﺘﻡ‬ ‫ﻭﺍﻟﺘ‬ ‫ﺍﻟﻤﻘﺘﺭﺤﺔ‬ ‫ﺍﻟﺘﻨﺒﺅ‬ ‫ﻭﺤﺩﺓ‬ ‫ﻭﺍﺨﺘﺒﺎﺭ‬ ‫ﻟﻤﺤﺎﻜﺎﺓ‬ ‫ﻋﺎﻟﻴﺔ‬ ‫ﺘﻨﺒﺅ‬ ‫ﺩﻗﺔ‬ ‫ﺤﻘﻘﺕ‬ ‫ﻲ‬. ‫ﻟﻬـﺎ‬ ‫ﺘﻭﺼـﻠﺕ‬ ‫ﺍﻟﺘﻲ‬ ‫ﺍﻟﻨﺘﺎﺌﺞ‬ ‫ﻋﻨﺩ‬ ‫ﺘﺘﺤﻘﻕ‬ ‫ﺍﺴﺘﺠﺎﺒﺔ‬ ‫ﺍﻨﺴﺏ‬ ‫ﺃﻥ‬ ‫ﺘﺒﻴﻥ‬ ‫ﺍﻟﻁﺭﻴﻘﺔ‬ 16 ‫ﺍﻟﻬﺠﻴﻨﺔ‬ ‫ﺍﻟﻤﻌﻠﻭﻤﺎﺕ‬ ‫ﻤﻥ‬ ‫ﺒﺕ‬ .
fatcat:vomvkgvkt5d6dexpsm4zaffc4m