Abstract
In highly-integrated electronic circuits designs, power reduction must be properly addressed. The standardized ways of power-intent specification are unbearable in modern complex designs, since they extensively prolong the time-to-market of products. In this article, we propose a simplified method of designing energy-efficient systems at the register-transfer level, which is fully compatible with the existing design flow and industrial automation tools. The power-intent specification is abstract enough to be easily integrated into the HDL model, which also simplifies its maintainability. A connection to later design-flow stages (i.e. lower abstraction levels) is achieved by automated synthesis, which translates the simplified specification into the standard means, supported by the existing professional design-automation tools. The benefit of the proposed design method is speed-up of the development process, reduced number of possible power-intent errors, and easier energy-efficient systems design. Such design can be utilized by all designers, even those, which were unable to utilize the standard means due to high complexity. The experiments using 10 000 power-intent specification samples have shown that the proposed specification method is approximately 23-times less complex (in terms of lines of code) than the standard method. Moreover, it is able to achieve the same power-consumption reduction, while requiring much less designer effort.
Similar content being viewed by others
Notes
Power sources are specified as a command line arguments, as they have no real backing in the HDL model.
For an example in Fig. 6, the order is: NORMAL, \({C_{1}P_{2}}, {C_{1}P_{3}}, {C_{2}P_{2} (internal)}, {2}\), \({C_{2}P_{3}}, {C_{3}P_{3} (internal)}\), and 3.
References
Vassighi A, Sachdev M (2006) Thermal runaway in integrated circuits. IEEE Trans Device Mater Reliab 6(2):300–305. https://doi.org/10.1109/TDMR.2006.876577
IEEE (2019) IEEE standard for design and verification of low-power, energy-aware electronic systems. IEEE Std 1801–2018:1–548. https://doi.org/10.1109/IEEESTD.2019.8686430
Silicon Integration Initiative (2014) Si2 Common Power Format. Si2
Panda PR (2010) Power-efficient system design. Springer, New York
Lackey DE, Zuchowski PS, Bednar TR, Stout DW, Gould SW, Cohn JM (2002) Managing power and performance for system-on-chip designs using voltage islands. In: Proceedings of the 2002 IEEE/ACM international conference on computer-aided design, ACM, New York, NY, USA, ICCAD ’02, pp 195–202. https://doi.org/10.1145/774572.774601
Macko D, Jelemenská K, Čičák P (2018) Simplifying low-power SoC top-down design using the system-level abstraction and the increased automation. Integration 63:101–114. https://doi.org/10.1016/j.vlsi.2018.06.001
Gagarski K, Petrov M, Moiseev M, Klotchkov I (2016) Power specification, simulation and verification of SystemC designs. In: 2016 IEEE east-west design & test symposium (EWDTS), IEEE, pp 1–4. https://doi.org/10.1109/EWDTS.2016.7807731
Qamar A, Muslim FB, Iqbal J, Lavagno L (2017) LP-HLS: automatic power-intent generation for high-level synthesis based hardware implementation flow. Microprocess Microsyst 50:26–38. https://doi.org/10.1016/j.micpro.2017.02.002
Peterson D, Bringmann O (2019) Fully-automated synthesis of power management controllers from UPF. In: Proceedings of the 24th Asia and South Pacific design automation conference, pp 76–81. https://doi.org/10.1145/3287624.3287664
Kalsing A, Fesquet L, Aktouf C (2019) A methodology for automated consistency checking between different power-aware descriptions. In: Große D, Vinco S, Patel H (eds) Languages, design methods, and tools for electronic system design: Selected contributions from FDL 2017, Lecture Notes in Electrical Engineering. Springer International Publishing, Cham, pp 107–127. https://doi.org/10.1007/978-3-030-02215-0_6
IEEE (2018) IEEE standard for SystemVerilog–unified hardware design, specification, and verification language. IEEE Std 1800-2017 (revision of IEEE Std 1800-2012) pp 1–1315. https://doi.org/10.1109/IEEESTD.2018.8299595
Takamaeda-Yamazaki S (2015) Pyverilog: a python-based hardware design processing toolkit for Verilog HDL. In: Sano K, Soudris D, Hübner M, Diniz PC (eds) Applied reconfigurable computing, Lecture Notes in Computer Science. Springer. pp 451–460
Cummings CE (2008) Clock domain crossing (CDC) design & verification techniques using SystemVerilog
Boutaud F (2003) Glitch free clock select switch. US Patent 6(600), 345
Mahmud R (2003) Techniques to make clock switching glitch free. https://www.eetimes.com/techniques-to-make-clock-switching-glitch-free/
Groma M (2020) pm\_genie: A Simplified power intent synthesis tool. https://doi.org/10.5281/zenodo.4284351
Usselmann R (2018) Floating point unit. OpenCores, https://opencores.org/projects/fpu
Wang H, Zhang Y, Li X, Chen L, Wen Z, Zhang K, Wang M (2013) A configurable fault-tolerant glitch-free clock switching circuit. In: 2013 IEEE 56th international midwest symposium on circuits and systems (MWSCAS), pp 537–540. https://doi.org/10.1109/MWSCAS.2013.6674704
Macko D, Jelemenská K (2014) Self-managing power management unit. In: 17th international symposium on design and diagnostics of electronic circuits systems. IEEE, pp 159–162, https://doi.org/10.1109/DDECS.2014.6868781
Škuta M, Macko D, Jelemenská K (2020) Automation of dynamic power management in FPGA-based energy-constrained systems. IEEE Access 8:165894–165903. https://doi.org/10.1109/ACCESS.2020.3022955
Bachrach J, Vo H, Richards B, Lee Y, Waterman A, Avižienis R, Wawrzynek J, Asanović K (2012) Chisel: constructing hardware in a scala embedded language. DAC Des Autom Conf 2012:1212–1221. https://doi.org/10.1145/2228360.2228584
SpinalHDL (2019) SpinalHDL core. GitHub. https://github.com/SpinalHDL/SpinalHDL
Asanović K, Avizienis R, Bachrach J, Beamer S, Biancolin D, Celio C, Cook H, Dabbelt D, Hauser J, Izraelevitz A, Karandikar S, Keller B, Kim D, Koenig J, Lee Y, Love E, Maas M, Magyar A, Mao H, Moreto M, Ou A, Patterson DA, Richards B, Schmidt C, Twigg S, Vo H, Waterman A (2016) The rocket chip generator. technical report UCB/EECS-2016-17, EECS Department, University of California, Berkeley
Macko D (2018) Contribution to automated generating of system power-management specification. In: 2018 IEEE 21st international symposium on design and diagnostics of electronic circuits systems (DDECS), pp 27–32. https://doi.org/10.1109/DDECS.2018.00012
Lima MSMD, Santos PLA, Araújo CCD (2015) An architecture model for harvesting-aware applications in FPGA. In: 2015 IEEE international conference on autonomic computing, pp 153–154. https://doi.org/10.1109/ICAC.2015.19
Macko D, Jelemenská K, Čičák P (2017) Verification of power-management specification at early stages of power-constrained systems design. J Circuits Syst Comput 26(08):1740002. https://doi.org/10.1142/S0218126617400023
Acknowledgements
This publication has been written thanks to support of the Ministry of Education, Science, Research and Sport of the Slovak Republic (Incentives for Research and Development, Grant No.: 2018/14427:1-26C0) and the ESET Research Centre.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix A: Example model
Appendix A: Example model
The full source code of the converter module with the simplified power intent specification used in the experiments is provided in Listing 1. The power intent using the standard means resulted from the synthesis using the implemented tool is provided in Listing 2 for the Verilog output and in Listing 3 for the UPF output.
Rights and permissions
About this article
Cite this article
Groma, M., Macko, D. Simplified introduction of power intent into a register-transfer level model. Des Autom Embed Syst 25, 297–324 (2021). https://doi.org/10.1007/s10617-021-09254-w
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10617-021-09254-w