{"title":"Design, Implementation and Performance Comparison of Different Branch Predictors on Pipelined-CPU","authors":"Syed Ali Imran Quadri, Mohd Ziauddin Jahangir","doi":"10.1109/ICCECE.2017.8526196","DOIUrl":null,"url":null,"abstract":"Branch predictors are implemented on pipelined CPUs having different types of instructions. Both unconditional and conditional branches are implemented utilizing different instruction set formats of the CPU. A basic pipelined CPU consists of three stages Fetch, Decode, and Execute. All the instructions are executed in parallel, hence every stage is busy with an instruction which saves the wastage of time and increases the performance. Hazards will occur because of Conditional branches in the pipeline which changes the sequential flow of execution. To overcome these hazards, the pipeline should be made empty and loaded with appropriate instruction which avoids the wastage of time. Hence Branch predictors are essential in CPUs as it saves the wastage of time by guessing the correct sequence of instruction as the conditional branches changes the sequence of instructions. Three types of Branch Predictors are implemented on pipelined CPUs separately which are simulated, synthesized and bit-files are generated using Xilinx ISE tool, the bit-files are later dumped on Xilinx SPARTAN-6 board and the results are analyzed using CHIPSCOPE.","PeriodicalId":325599,"journal":{"name":"2017 International Conference on Computer, Electrical & Communication Engineering (ICCECE)","volume":"14 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 International Conference on Computer, Electrical & Communication Engineering (ICCECE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICCECE.2017.8526196","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Branch predictors are implemented on pipelined CPUs having different types of instructions. Both unconditional and conditional branches are implemented utilizing different instruction set formats of the CPU. A basic pipelined CPU consists of three stages Fetch, Decode, and Execute. All the instructions are executed in parallel, hence every stage is busy with an instruction which saves the wastage of time and increases the performance. Hazards will occur because of Conditional branches in the pipeline which changes the sequential flow of execution. To overcome these hazards, the pipeline should be made empty and loaded with appropriate instruction which avoids the wastage of time. Hence Branch predictors are essential in CPUs as it saves the wastage of time by guessing the correct sequence of instruction as the conditional branches changes the sequence of instructions. Three types of Branch Predictors are implemented on pipelined CPUs separately which are simulated, synthesized and bit-files are generated using Xilinx ISE tool, the bit-files are later dumped on Xilinx SPARTAN-6 board and the results are analyzed using CHIPSCOPE.