This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Microarchitecture of a Coarse-Grain Out-of-Order Superscalar Processor
Feb. 2013 (vol. 24 no. 2)
pp. 392-405
Davor Capalija, University of Toronto, Toronto
Tarek S. Abdelrahman, University of Toronto, Toronto
We explore the design, implementation, and evaluation of a coarse-grain superscalar processor in the context of the microarchitecture of the Control Processor (CP) of the Multilevel Computing Architecture (MLCA), a novel architecture targeted for multimedia multicore systems. The MLCA augments a traditional multicore architecture (called the lower level) with a CP (called the top-level), which automatically extracts parallelism among coarse-grain units of computation (tasks), synchronizes these tasks and schedules them for execution on processors. It does so in a fashion similar to how instruction-level parallelism is extracted by superscalar processors, i.e., using register renaming, Out-of-Order Execution (OoOE) and scheduling. The coarse-grain nature of tasks imposes challenging constraints on the direct use of these techniques, but also offers opportunities for simpler designs. We analyze the impact of these constraints and opportunities and present novel microarchitectural mechanisms for coarse-grain superscalar execution, including register renaming, task queue, dynamic out-of-order scheduling and task-issue. We design an MLCA system around our CP microarchitecture and implement it on an FPGA. We evaluate the system using multimedia applications and show good scalability for eight processors, limited by the memory bandwidth of the FPGA platform. Furthermore, we show that the CP introduces little overhead in terms of resource usage. Finally, we show scalability beyond eight processors using cycle-accurate RTL-level simulation with an idealized memory subsystem. We demonstrate that the CP poses no performance bottlenecks and is scalable up to 32 processors.
Index Terms:
Registers,Microarchitecture,Parallel processing,Throughput,Programming,Clocks,Dynamic scheduling,register renaming,Coarse-grain parallelism,task-level superscalar execution,out-of-order execution
Citation:
Davor Capalija, Tarek S. Abdelrahman, "Microarchitecture of a Coarse-Grain Out-of-Order Superscalar Processor," IEEE Transactions on Parallel and Distributed Systems, vol. 24, no. 2, pp. 392-405, Feb. 2013, doi:10.1109/TPDS.2012.135
Usage of this product signifies your acceptance of the Terms of Use.