C/C++ Hardware Design for the Real World

Part of the Embedded Systems book series (EMSY)


In previous chapters we have seen how system-level virtual prototypes get created and how they are often partitioned into pieces intended to be implemented as either software or hardware. This partitioning was done to manage costs and performance and to optimize many other attributes of the system. For the parts of the system intended to be hardware, several choices still remain. It is possible that those functionalities can be implemented using off-the-shelf components, such as processors or DSPs, or as components that require small extensions in order to meet the necessary requirements, such as configurable and extensible processors. It is likely that there will be a few components for which dedicated custom hardware is required and we now need to refine those models in ways that make them more amenable to the transformation process that is often called behavioral synthesis or high-level synthesis.


Orthogonal Frequency Division Multiplex Clock Cycle Synthesis Tool Gantt Chart Architectural Exploration 


  1. 1.
    Philippe Coussy, Adam Morawiec (Eds.). High-Level Synthesis: From Algorithm to Digital Circuit, Springer, 2008.Google Scholar
  2. 2.
    Philippe Coussy, Adam Morawiec (Eds.). High-Level Synthesis: From Algorithm to Digital Circuit, Springer –  Chapter 3, 2008.
  3. 3.
    Brian Bailey, Grant Martin, Andrew Piziali. ESL Design and Verification: A Prescription for Electronic System Level Methodology, Elsevier Morgan Kaufmann, 2007.Google Scholar
  4. 4.
    Gary Smith EDA website. http://www.garysmitheda.com
  5. 5.
    Brian Bailey, Grant Martin, Thomas Anderson (Eds.). Taxonomies for the Development and Verification of digital systems, Springer, 2005Google Scholar
  6. 6.
    Richard Cloutier, Donald Thomas. “The combination of Scheduling, Allocation, and Mapping in a Single Algorithm”. Proceedings of the 27th ACM/IEEE Conference on Design Automation. 1991Google Scholar
  7. 7.
  8. 8.
    Andres Takach, Peter Gutberlet, Simon Walters. Fast Bit-Accurate C++ Datatypes for Functional System Verification and Synthesis. GSPx 2005Google Scholar
  9. 9.
    Andres Takach, Bryan Bowyer, Thomas Bollaert. C Based Hardware Design for Wireless Applications. DATE 2005Google Scholar
  10. 10.
  11. 11.
  12. 12.
    Advanced Encryption Standard (AES) Implementation in C/C++ with comments. http://www.hoozi.com/Articles/AES_Encryption.htm
  13. 13.
    Nicolas Sklavos, Odysseas Koufopavlou. Architectures and VLSI Implementations of the AES-Proposal Rijndael. IEEE Transactions on Computers, Vol. 51, No. 12, December 2002 http://www.nsklavos.gr/Papers/%5BJ01%5D.pdf
  14. 14.
    David Canright. A Very Compact S-box for AES. Cryptographic Hardware and Embedded System Sept. 2005Google Scholar
  15. 15.
    Tsung-Fu Lin et al. A High Throughput Low Cost AES Cipher chip. Proceedings of 3rd IEEE Asia-Pacific Conference on ASICs. 2002Google Scholar
  16. 16.
    Frank Gürkaynak et al. A 2 Gb/s Balanced AES Crypto-Chip Implementation. GLSVLSI 2004.Google Scholar
  17. 17.
  18. 18.
  19. 19.
    Press release: Mentor Graphics and Calypto Design Systems Announce Customer-Proven Electronic System Level Synthesis and Verification Flow Featuring Catapult C Synthesis and SLEC Sequential Equivalence Checker. Jan 14 2008Google Scholar
  20. 20.
    The Mathworks website. http://www.mathworks.com/
  21. 21.
    Srikanth Jadcherla, Janick Bergeron, Yoshio Inoue, David Flynn. Verification Methodology Manual for Low Power, Synopsys, 2009Google Scholar
  22. 22.
    Atrenta website. http://atrenta.com/
  23. 23.
  24. 24.
    Alexander Maltsev et al. Triangular Systolic Array with Reduced Latency for QR-decomposition of Complex Matrices. ISCAS 2006Google Scholar
  25. 25.
    Adrian Burian, Jarmo Takala, Mikko Ylinen. A fixed point implementation of matrix inversion using Cholesky decomposition. Proceedings of IEEE International Midwest Symposium on Circuits and Systems. Dec 2003Google Scholar
  26. 26.
    Isabelle LaRoche, Sebastien Roy. An efficient regular matrix inversion circuit architecture for MIMO processing. Proceedings of IEEE International Symposium on Circuits and Systems. May 2006Google Scholar
  27. 27.
    Abbas Bigdeli, Morteza Biglari-Abhari, Zoran Salcic, Yat Tin Lai. A New Pipelined Systolic Array-Based Architecture for Matrix Inversion in FPGAs with Kalman Filter Case Study. EURASIP Journal on Applied Signal Processing, 2006Google Scholar
  28. 28.
    Chitranjan K. Sing, Sushma H. Prasad, Poras T. Balsara. ``VLSI Architecture for Matrix Inversion Using Modified Gram-Schmidt Based QR Decomposition’. in Proceedings of International Conference on VLSI Design, pp. 836–841. Jan 2007Google Scholar
  29. 29.
    Johan Eilert, Di Wu, Dake Liu. Efficient Complex Matrix Inversion for MIMO Software Defined Radio. IEEE International Symposium on Circuits and Systems. 2007Google Scholar
  30. 30.
    Perttu Salmela, Adrian Burian, Harri Sorokin, Jarmo Takala. Complex-Valued QR Decomposition Implementation for MIMO Receivers. in Proceedings of ICASSP. Apr 2008Google Scholar
  31. 31.
    A Hardware Algorithm for Computing Reciprocal Square Root. Proceedings of the 15th IEEE Symposium on Computer Arithmetic. 2001.Google Scholar
  32. 32.
    Toshiba Information Systems (Japan) Corporation. Advanced Algorithmic Evaluation for Imaging, Communication and Audio Applications – Eigenvalue Decomposition Using The Catapult® C Algorithmic Synthesis Methodology. April 2008Google Scholar
  33. 33.
    STMicroelectronics presentation at Design Automation Conference 2008. http://communities.mentor.com/mgcx/docs/DOC-1110
  34. 34.
  35. 35.
    Kuang-Hao Lin, Robert C. Chang, Chier-Lin Huang, Feng-Chi Chen, Shih-Chun Lin. “Implementation of QR Decomposition for MIMO-OFDM Detection Systems”. in Proceedings of ICECS. Sep 2008Google Scholar
  36. 36.
    Peter Luethi, Andreas Burg, David Perels, Norbert Felber, Wolfgang Fichtner. “VLSI Imple-mentation of a High-Speed Iterative MMSE QR Decomposition”. in Proceedings of ICECS. 2007.Google Scholar
  37. 37.
    David Perels, Simon Haene, Peter Luethi, Andreas Burg, Norbert Felber, Wolfgang Fichtner, Helmut Bolcskei. “ASIC Implementation of a MIMO-OFDM Transceiver for 192Mbps WLANs”. in Proceedings of ICECS. 2005.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2010

Authors and Affiliations

  1. 1.BeavertonUSA
  2. 2.Tensilica Inc.Santa ClaraUSA

Personalised recommendations