IP Cores Design from Specifications to Production: Modeling, Verification, Optimization, and Protection

  • Khaled Salah Mohamed
Part of the Analog Circuits and Signal Processing book series (ACSP)


As stated earlier in the previous chapter, plug and play IP in SoC design is the recent trend in VLSI design (Fig. 2.1). IP cores life cycle process from specification to production includes four major steps: (1) IP modeling, (2) IP verification, (3) IP optimization, (4) IP protection. These steps are elaborated in Fig. 2.2. In the next sections, we will discuss each step in detail.


Specifications Production Processor ASIC Top-down Down-top Y-chart TLM VHDL Scripting XML DRC Bugs Accelerator Emulation Assertions Formal Coverage Linting FSM 


  1. 1.
  2. 2.
    Rafla NI, Davis, Brett LaVoy (2006) A study of finite state machine coding styles for implementation in FPGAs. 49th IEEE International Midwest Symposium on Circuits and Systems, San JuanGoogle Scholar
  3. 3.
    Roudier T, Moussa I, di Crescenzo P (2003) IP modelling and reuse for system level design. Published for DATEGoogle Scholar
  4. 4.
  5. 5.
    Simpson P, Jagtiani A (2007) How to achieve faster compile times in high-density FPGA. EE TimesGoogle Scholar
  6. 6.
    Ricardo R, Marcelo L, Jochen J (2010) Design of systems on chip: design and test. Springer, DordrechtGoogle Scholar
  7. 7.
    Clive M (ed) (2007) FPGAs: world class design. Newness, BurlingtonGoogle Scholar
  8. 8.
    Hauck S, DeHon A (2008) Reconfigurable computing: the theory and practice of FPGA-based computation. Morgan Kaufmann, BurlingtonGoogle Scholar
  9. 9.
    Maxfield CM (2004) The design warrior’s guide to FPGAs. Newnes, BurlingtonGoogle Scholar
  10. 10.
    Betz V, Rose J, Marquardt A (1999) Architecture and CAD for deep-submicron FPGAs. Kluwer, BostonCrossRefGoogle Scholar
  11. 11.
    Sutherland S, Davidmann S, Flake P (2003) Systemverilog for design: a guide to using systemverilog for hardware design and modeling. Kluwer, NorwellGoogle Scholar
  12. 12.
    Black D, Donovan J, Bunton B, Keist A (2010) SystemC: from the ground up, 2nd edn. Springer, New York. ISBN 978-0-387-69957-8CrossRefGoogle Scholar
  13. 13.
    Goel P, Adhikari S (2014) Introduction to next generation verification language—Vlang. DVCON Conference and Exhibition, MunichGoogle Scholar
  14. 14.
    Schwartz RL, Phoenix T (2008) Learning PERL. O’Reilly Media, SebastopolGoogle Scholar
  15. 15.
  16. 16.
    Ucoluk G, Kalkan S (2007) Introduction to programming concepts with case studies in python. Springer, LondonGoogle Scholar
  17. 17.
  18. 18.
    IEEE 1685-2009 IPXACT. Accessed 18 Feb 2010Google Scholar
  19. 19.
    Kulkarni R (2013) Automated RTL generator. M.Sc. Thesis, San Jose State UniversityGoogle Scholar
  20. 20.
    Axelson J (1997) The microcontroller idea book. Lakeview Research, MadisonGoogle Scholar
  21. 21.
    Sherwani NA (1999) Algorithms for VLSI physical design automation, 3rd edn. Kluwer, BostonGoogle Scholar
  22. 22.
    Sung Kyu L (2008) Practical problems in VLSI physical design automation. Springer, New YorkGoogle Scholar
  23. 23.
    Clein D (2000) CMOS IC layout concepts, methodologies, and tools. Butterworth–Heinemann, NewtonGoogle Scholar
  24. 24.
    Coombs CF Jr (2001) Printed circuits handbook. McGraw-Hill, New YorkMATHGoogle Scholar
  25. 25.
    Masahiro F, Indradeep G, Mukul P (2008) Verification techniques for system-level design. Morgan Kaufmann, San FranciscoGoogle Scholar
  26. 26.
    Khan MA, Pittman RN, Forin A (2010) gNOSIS: a board-level debugging and verification tool. Proceedings of the IEEE Conference on ReConFigurable Computing and FPGAs (ReConFig), Microsoft Research, Redmond. pp 43–48Google Scholar
  27. 27.
  28. 28.
    Pradhan DK, Harris IG (2009) Practical design verification. Cambridge University Press, CambridgeCrossRefGoogle Scholar
  29. 29.
    Singh L, Drucker L, Khan N (2004) Advanced verification techniques: a SystemC based approach for successful. Kluwer, BostonGoogle Scholar
  30. 30.
    Scheffer L, Lavagno L, Martin G (2006) EDA for IC system design, verification, and testing. CRC, Boca RatonGoogle Scholar
  31. 31.
  32. 32.
    Cassel M, Kastensmidt FL (2006) Evaluating one-hot encoding finite state machines for SEU reliability in SRAM-based FPGAs. Proceedings of 12th IEEE International On-Line Testing Symposium (IOLTS 2006), IEEE, Washington, p 6Google Scholar
  33. 33.
  34. 34.
    Bhuvaneswari K, Srinivasa Rao V (2013) Dynamic partial reconfiguration in low-cost FPGAs. Int J Sci Eng Res 4(9):1410–1413MATHGoogle Scholar
  35. 35.
    Drahonovsky T, Rozkovec M, Novak O (2013) Relocation of reconfigurable modules on Xilinx FPGA. Proceedings of the 2013 IEEE 16th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS), IEEE, Karlovy Vary, pp 175–180Google Scholar
  36. 36.
    Partial reconfiguration user guide, Ug702 (v12.3) ed., Xilinx Corporation, October 2012Google Scholar
  37. 37.
    Partial reconfiguration of Xilinx FPGAs using ISE design suite, Xilinx Corporation, July 2012Google Scholar
  38. 38.
    Dunkley R (2012) Supporting a wide variety of communication protocols using partial dynamic reconfiguration. Proc IEEE Autotestcon 2012:120–125Google Scholar
  39. 39.
    Marques N, Rabah H, Dabellani E, Weber S (2011) Partially reconfigurable entropy encoder for multi standards video adaptation. 2011 IEEE 15th International Symposium on Consumer Electronics (ISCE), June 2011, pp 492–496Google Scholar
  40. 40.
    Wang Lie, Wu Fengyan (2009) Dynamic partial reconfiguration in FPGA. Third International Symposium on Intelligent Information Technology Application, IEEE Computer Society, Nanchang, pp 445–448Google Scholar
  41. 41.
    Chakraborty RS, Bhunia S (2008) Hardware protection and authentication through netlist level obfuscation. Proceedings of the 2008 IEEE/ACM International Conference on Computer-Aided Design, San Jose, 10–13 November 2008Google Scholar
  42. 42.
    Chakraborty RS, Bhunia S (2009) HARPOON: an obfuscation-based SoC design methodology for hardware protection. IEEE Trans Comput Aided Des Integr Circuits Syst 28(10):1493–1502CrossRefGoogle Scholar
  43. 43.
    Kainth M, Krishnan L, Narayana C, Virupaksha SG, Tessier R (2015) Hardware-assisted code obfuscation for FPGA soft microprocessors. Proceedings of the 2015 Design, Automation & Test in Europe Conference & Exhibition, DATE, EDA Consortium, San JoseGoogle Scholar
  44. 44.
    Tehranipoor MM, Guin U, Forte D (2015) Counterfeit integrated circuits detection and avoidance. Springer, ChamGoogle Scholar
  45. 45.
  46. 46.

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Khaled Salah Mohamed
    • 1
  1. 1.EmulationMentor GraphicsHeliopolisEgypt

Personalised recommendations