Abstract
This paper describes a methodology for identifying custom instructions for critical code segments of embedded applications, considering the available data bandwidth constraint between custom logic and the base processor. Our approach enables designers to optionally constrain the number of input and output operands for custom instructions to reach the acceptable performance. We describe a design flow to establish the desired performance. We study the effects of input/output constraints and registerfile read/write ports on overall speedup of the system. Our experiments show that, in most cases, the solutions with the highest merit are not identified with relaxed input/output constraints. Results for packet-processing benchmarks covering cryptography, lookup, and classification show speed-up up to 40%.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
ARM, The architecture for the digital world, www.arm.com
MIPS technologies Inc., www.mips.com
Gonzalez, R.E.: XTENSA: A configurable and extensible processor. IEEE Micro 20, 60–70 (2000)
Cong, J., et al.: Instruction set extension with shadow registers for configurable processors. In: Proc. FPGA, pp. 99–106 (February 2005)
Jayaseelan, R., et al.: Exploiting forwarding to improve data bandwidth of instruction-set extensions. In: Proc. DAC, pp. 43–48 (July 2006)
Kim, N.S., Mudge, T.: Reducing register ports using delayed write-back queues and operand pre-fetch. In: Proceedings of the 17th Annual International Conference on Supercomputing, pp. 172–182 (2003)
Park, Powell, M.D., Vijaykumar, T.N.: Reducing register ports for higher speed and lower energy. In: Proceedings of the 35th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 171–182 (2002)
Karuri, K., Chattopadhyay, A., Hohenauer, M., Leupers, R., Ascheid, G., Meyr, H.: Increasing data-bandwidth to instruction-set extensions through register clustering. In: Proceedings of the IEEE/ACM International Conference on Computer-Aided Design, pp. 166–177 (2007)
Sun, F., et al.: A scalable application-specific processor synthesis methodology. In: Proc. ICCAD, San Jose, CA, pp. 283–290 (November 2003)
Atasu, K., Pozzi, L., Ienne, P.: Automatic Application-Specific Instruction-Set Extensions under Microarchitectural Constraints. In: Proc. of the 40th Annual Design Automation Conference, pp. 256–261. ACM, Anaheim (June 2003)
Baleani, M., et al.: HW/SW partitioning and code generation of embedded control applications on a reconfigurable architecture platform. In: Proc.10th Int. Workshop HW/SW Codesign, pp. 151–156 (May 2002)
Alippi, C., et al.: A DAG based design approach for reconfigurable VLIW processors. In: Proc. DATE, Munich, Germany, pp. 778–779 (March 1999)
Biswas, P., et al.: ISEGEN: Generation of high-quality instruction set extensions by iterative improvement. In: Proc. DATE, pp. 1246–1251 (2005)
Bonzini, P., Pozzi, L.: Polynomial-time subgraph enumeration for automated instruction set extension. In: Proc. DATE, pp. 1331–1336 (April 2007)
Yu, P., Mitra, T.: Satisfying real-time constraints with custom instructions. In: Proc. CODES+ISSS, Jersey City, NJ, pp. 166–171 (September 2005)
Atasu, K., Ozturan, C., Dundar, G., Mencer, O., Luk, W.: CHIPS: Custom hardware instruction processor synthesis. IEEE Transactions on Computer Aided Design of Integrated Circuits and Systems 27, 528–541 (2008)
Pozzi, L., Atasu, K., Ienne, P.: Exact and Approximate Algorithms for the Extension of Embedded Processor Instruction Sets. IEEE Transaction on Computer-Aided Design of Integrated Circuits and Systems 25, 1209–1229 (2006)
Fisher, J.A., Faraboschi, P., Young, C.: Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools. Elsevier Morgan Kauffman, New York (2005)
Baker, F.: Requirements for IP version 4 routers. RFC 1812, Network Working Group (June 1995)
Ramaswamy, R., Wolf, T.: PacketBench: A tool for workload characterization of network processing. In: Proc. of IEEE International Workshop on Workload Characterization, pp. 42–50 (October 2003)
Kent, S., Atkinson, R.: Security architecture for the internet protocol. RFC 2401, Network Working Group (November 1998)
The GNU operating system, www.gnu.og
Salehi, M.E., Fakhraie, S.M.: Quantitative analysis of packet-processing applications regarding architectural guidelines for network-processing-engine development. Journal of System Architecture 55, 373–386 (2009)
Yazdanbakhsh, A., Salehi, M.E., Safari, S., Fakhraie, S.M.: Locality Consideration. In: Exploring Custom Instruction Selection Algorithms. In: ASQED 2010, Malaysia, pp. 157–162 (2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yazdanbakhsh, A., Salehi, M.E. (2011). IO-Aware Custom Instruction Exploration for Customizing Embedded Processors. In: Park, J.J., Yang, L.T., Lee, C. (eds) Future Information Technology. Communications in Computer and Information Science, vol 184. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22333-4_7
Download citation
DOI: https://doi.org/10.1007/978-3-642-22333-4_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-22332-7
Online ISBN: 978-3-642-22333-4
eBook Packages: Computer ScienceComputer Science (R0)