Methods for change parallelism in process of high-level VLSI synthesis
Modelirovanie i analiz informacionnyh sistem, Tome 29 (2022) no. 1, pp. 60-72.

Voir la notice de l'article provenant de la source Math-Net.Ru

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 transformation 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 have been 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 has been developed. Examples of parallelism reduction for the FPGA platform and practical implementation of FFT algorithms in the Virtex$^{\mathrm{\circledR}}$ 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.
Keywords: parallel computing, dataflow, functional programming, high-level synthesis
Mots-clés : VLSI.
@article{MAIS_2022_29_1_a4,
     author = {I. N. Ryzhenko and O. V. Nepomnyaschy and A. I. Legalov and V. V. Shaidurov},
     title = {Methods for change parallelism in process of high-level {VLSI} synthesis},
     journal = {Modelirovanie i analiz informacionnyh sistem},
     pages = {60--72},
     publisher = {mathdoc},
     volume = {29},
     number = {1},
     year = {2022},
     language = {ru},
     url = {http://geodesic.mathdoc.fr/item/MAIS_2022_29_1_a4/}
}
TY  - JOUR
AU  - I. N. Ryzhenko
AU  - O. V. Nepomnyaschy
AU  - A. I. Legalov
AU  - V. V. Shaidurov
TI  - Methods for change parallelism in process of high-level VLSI synthesis
JO  - Modelirovanie i analiz informacionnyh sistem
PY  - 2022
SP  - 60
EP  - 72
VL  - 29
IS  - 1
PB  - mathdoc
UR  - http://geodesic.mathdoc.fr/item/MAIS_2022_29_1_a4/
LA  - ru
ID  - MAIS_2022_29_1_a4
ER  - 
%0 Journal Article
%A I. N. Ryzhenko
%A O. V. Nepomnyaschy
%A A. I. Legalov
%A V. V. Shaidurov
%T Methods for change parallelism in process of high-level VLSI synthesis
%J Modelirovanie i analiz informacionnyh sistem
%D 2022
%P 60-72
%V 29
%N 1
%I mathdoc
%U http://geodesic.mathdoc.fr/item/MAIS_2022_29_1_a4/
%G ru
%F MAIS_2022_29_1_a4
I. N. Ryzhenko; O. V. Nepomnyaschy; A. I. Legalov; V. V. Shaidurov. Methods for change parallelism in process of high-level VLSI synthesis. Modelirovanie i analiz informacionnyh sistem, Tome 29 (2022) no. 1, pp. 60-72. http://geodesic.mathdoc.fr/item/MAIS_2022_29_1_a4/

[1] T. M. Bhatt, D. McCain, “Matlab as a Development Environment for FPGA Design”, Design Automation Conference, Proceedings 42nd, 2005, 607–610

[2] L. Lavagno, I. L. Markov, G. Martin, L. K. Scheffer, Electronic Design Automation for IC System Design, Verification, and Testing, CRC Press, 2017

[3] Z. Navabi, System-Level Design and Modeling: ESL Using C/C++, SystemC and TLM-2.0, Springer, 2015

[4] 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

[5] Z. Yuan, Y. Ma, J. Bian, K. Zhao, “Automatic enhanced CDFG generation based on runtime instrumentation”, IEEE 17th International Conference on Computer Supported Cooperative Work in Design (CSCWD), 2013, 92–97

[6] G. Bosilca, A. Bouteiller, A. Danalis, M. Faverge, T. Herault, J. J. Dongarra, “PaRSEC: Exploiting Heterogeneity to Enhance Scalability”, IEEE Computing in Science and Engineering, 15:6 (2013), 36–45 | DOI

[7] A. Danalis, G. Bosilca, A. Bouteiller, T. Herault, J. Dongarra, “PTG: An Abstraction for Unhindered Parallelism”, Proceedings of the Fourth International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing, 2014, 21–30 | DOI

[8] I. I. Levin, A. I. Dordopulo, “Resource-independent programming of hybrid reconfigurable computer systems”, Proceedings of Russian Supercomputing Days, 2017, 714–723

[9] I. I. Levin, A. I. Dordopulo, I. V. Pisarenko, A. K. Melnikov, “An approach to architecture-independent programming of computing systems based on the aspect-oriented Set@l language”, Proceedings of the Southern Federal University. Technical sciences, 197:3 (2018), 46–57

[10] O. V. Nepomnyaschy, I. N. Ryzhenko, A. I. Legalov, “The method of architecturally independent high-level synthesis of VLSI”, Proceedings of the Southern Federal University. Technical sciences, 202:8 (2018), 38–47

[11] A. I. Legalov, “Functional language for creation of architectural independent parallel programmes”, Computational Technologies, 10:1 (2005), 71–89 | Zbl

[12] A. I. Legalov, V. S. Vasilyev, I. V. Matkovskii, M. S. Ushakova, “A toolkit for the development of data-driven functional parallel programmes”, International Conference on Parallel Computational Technologies, Springer, 2018, 16–30 | DOI

[13] V. Vasilev, A. I. Legalov, S. V. Zykov, “The System for Transforming the Code of Dataflow Programs into Imperative”, Modeling and Analysis of Information Systems, 28:2 (2021), 198–214 | DOI | MR

[14] O. V. Nepomnyaschy, I. N. Ryzhenko, “The method of high-level synthesis and so?ware toolkit for description algorithm of VLSI”, Software Engineering, 11:1 (2020), 34–39

[15] Vivado Design Suite User Guide. Using the Vivado IDE UG893 http://www.xilinx.com/support/documentation/sw_manuals/xilinx2020_2/ug893-vivado-ide.pdf