Abstract
In this paper, methods for increasing the efficiency of VLSI development based on the method of architecture-independent design are proposed. The route of high-level VLSI synthesis is considered. The principle of constructing a VLSI hardware model based on the functional-flow programming paradigm is stated. The results of the development of methods and algorithms for the transformation of functional-parallel programs into programs in HDL languages that support the design process of digital chips are presented. The principles of assessment are considered and the classes of resources required for the analysis of design solutions are identified. Reduction coefficients and methods of their calculation for each resource class are introduced. An algorithm for calculating the reduction coefficients and estimating the required resources is proposed. An algorithm for converting parallelism is proposed, taking into account the specified constraints of the target platform. A mechanism for the exchange of metrics with an architecture-dependent level is developed. Examples of the reduction of parallelism for the FPGA platform and practical implementation of FFT algorithms in the Virtex® UltraScale FPGA basis are given. The developed methods and algorithms make it possible to use the method of architecture-independent synthesis for transferring VLSI projects to various architectures by changing the parallelism of the circuit and equivalent transformations of parallel programs. The proposed approach provides many options for hardware solutions for implementation on various target platforms.
REFERENCES
Bhatt, T.M. and McCain, D., Matlab as a development environment for FPGA design, Proc. 42nd Annu. Design Automation Conference, Anaheim, Calif., 2005, New York: Association for Computing Machinery, 2005, vol. 42, pp. 607–610. https://doi.org/10.1145/1065579.1065737
Electronic Design Automation for IC System Design, Verification, and Testing, Lavagno, L., Markov, I.L., Martin, G., and Scheffer, L.K., Eds., Boca Raton, Fla.: CRC Press, 2017, 2nd ed. https://doi.org/10.1201/b19569
Navabi, Z., System-Level Design and Modeling: ESL Using C/C++, SystemC and TLM-2.0, Springer, 2015.
Vivado Design Suite User Guide. High-Level Synthesis. UG902. http://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_1/ug902-vivado-high-level-synthesis.pdf.
Yuan, Z., Ma, Yu., Bian, J., and Zhao, K., Automatic enhanced CDFG generation based on runtime instrumentation, Proc. 2013 IEEE 17th Int. Conf. on Computer Supported Cooperative Work in Design (CSCWD), Whistler, Canada, 2013, IEEE, 2013, pp. 92–97. https://doi.org/10.1109/cscwd.2013.6580945
Bosilca, G., Bouteiller, A., Danalis, A., Faverge, M., Herault, T., and Dongarra, J.J., PaRSEC: Exploiting heterogeneity to enhance scalability, Comput. Sci. Eng., 2013, vol. 15, no. 6, pp. 36–45. https://doi.org/10.1109/mcse.2013.98
Danalis, A., Bosilca, G., Bouteiller, A., Herault, T., and Dongarra, J., PTG: An abstraction for unhindered parallelism, 2014 Fourth Int. Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing, New Orleans, 2014, IEEE, 2014, pp. 21–30. https://doi.org/10.1109/wolfhpc.2014.8
Levin, I.I. and Dordopulo, A.I., Resource-independent programming of hybrid reconfigurable computer systems, Proc. Russian Supercomputing Days, 2017, pp. 714–723.
Levin, I.I., Dordopulo, A.I., Pisarenko, I.V., and Melnikov, A.K., An approach to architecture-independent programming of computing systems based on the aspect-oriented Set@l language, Izv. Yuzhnogo Fed. Univ. Tekh. Nauki, 2018, no. 3, pp. 48–56. https://doi.org/10.23683/2311-3103-2018-3-46-58
Nepomnyaschy, O.V., Ryzhenko, I.N., and Legalov, A.I., The method of architecturally independent high-level synthesis of VLSI, 2018, no. 8, pp. 38–47. https://doi.org/10.23683/2311-3103-2018-8-38-47
Legalov, A.I., Functional language for creation of architectural independent parallel programmes, Vychisl. Tekhnol., 2005, vol. 10, no. 1, pp. 71–89.
Legalov, A.I., Vasilyev, V.S., Matkovskii, I.V., and Ushakova, M.S., A toolkit for the development of data-driven functional parallel programmes, Parallel Computational Technologies. PCT 2018, Sokolinsky, L. and Zymber, M., Eds., Communications in Computer and Information Science, vol. 910, Cham: Springer, 2018, pp. 16–30. https://doi.org/10.1007/978-3-319-99673-8_2
Vasilev, V.S., Legalov, A.I., and Zykov, S.V., Transformation of functional dataflow parallel programs into imperative programs, Autom. Control Comput. Sci., 2022, vol. 56, no. 7, pp. 815–827. https://doi.org/10.3103/S0146411622070239
Nepomnyashchiy, O.V. and Ryzhenko, I.N., The method of high-level synthesis and software toolkit for description algorithm of VLSI, Programmnaya Ingeneria, 2020, vol. 11, no. 1, pp. 34–39. https://doi.org/10.17587/prin.11.34-39
Vivado Design Suite User Guide. Using the Vivado IDE UG893. https://www.xilinx.com/support/documentation/sw_manuals/xilinx2020_2/ug893-vivado-ide.pdf.
Funding
This work was supported by ongoing institutional funding. No additional grants to carry out or direct this particular research were obtained.
Author information
Authors and Affiliations
Corresponding authors
Ethics declarations
The authors of this work declare that they have no conflicts of interest.
Additional information
Translated by S. Avodkova
Publisher’s Note.
Allerton Press remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
About this article
Cite this article
Ryzhenko, I.N., Nepomnyaschy, O.V., Legalov, A.I. et al. Methods for Changing Parallelism in the Process of High-Level VLSI Synthesis. Aut. Control Comp. Sci. 57, 696–705 (2023). https://doi.org/10.3103/S014641162307012X
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.3103/S014641162307012X