A hardware/software cooperative approach for reducing memory traffic in application-specific instruction set processors

Application-specific instruction set processor (ASIP) has emerged as an important design choice for embedded systems. It can achieve both high flexibility offered by the base processor core and high performance and energy-efficiency offered by the dedicated hardware extensions. Although a lot of efforts have been devoted to computation acceleration (e.g., automatic custom instruction identification and synthesis), the limited on-chip data storage elements, including the register file and data cache, have become a potential performance bottleneck. In this paper, we propose a hardware/software cooperative approach to utilize the custom registers for reducing the data traffic between the processor and memory through efficient communications between the base processor core and custom hardware extensions. Our experimental results demonstrate that promising performance improvements can be achieved.

[1]  Majid Sarrafzadeh,et al.  Instruction generation for hybrid reconfigurable systems , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[2]  Srivaths Ravi,et al.  Custom-instruction synthesis for extensible-processor platforms , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[3]  Peter Marwedel,et al.  Analysis of the influence of register file size on energyconsumption, code size, and execution time , 2001, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  Ricardo E. Gonzalez,et al.  Xtensa: A Configurable and Extensible Processor , 2000, IEEE Micro.

[5]  Amitabh Srivastava,et al.  Analysis Tools , 2019, Public Transportation Systems.

[6]  Jürgen Teich,et al.  Efficient architecture/compiler co-exploration for ASIPs , 2002, CASES '02.

[7]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[8]  Darin Petkov,et al.  Automatic generation of application specific processors , 2003, CASES '03.

[9]  Scott A. Mahlke,et al.  Application-Specific Processing on a General-Purpose Core via Transparent Instruction Set Customization , 2004, 37th International Symposium on Microarchitecture (MICRO-37'04).

[10]  Paolo Ienne,et al.  Exact and approximate algorithms for the extension of embedded processor instruction sets , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[11]  Todd M. Austin,et al.  SimpleScalar: An Infrastructure for Computer System Modeling , 2002, Computer.

[12]  Jason Cong,et al.  Application-specific instruction generation for configurable processor architectures , 2004, FPGA '04.

[13]  Jason Cong,et al.  Instruction set extension with shadow registers for configurable processors , 2005, FPGA '05.

[14]  Tulika Mitra,et al.  Characterizing embedded applications for instruction-set extensible processors , 2004, Proceedings. 41st Design Automation Conference, 2004..