Title :
Hierarchy and recursion in software and hardware
Author :
Skliarova, Iouliia ; Sklyarov, Valery
Author_Institution :
Dept. of Electron., Telecommun. & Inf., Univ. of Aveiro, Aveiro, Portugal
Abstract :
Advances in microelectronic devices have dissolved the boundary between software and hardware. Since hardware circuits are generally faster and enable significantly broader parallelism to be provided, a number of recent research works are dedicated to high-performance computations in electronic systems without direct use of processing cores which introduce a number of constraints (e.g. pre-defined size of operands, pre-given sets of instructions, limits for concurrency and parallelism, etc.). This paper suggests a regular way enabling methods and functions from general-purpose languages to be converted to hardware implementations. Consequently, such conventional programming techniques as hierarchy, recursion, passing arguments, and returning values were entirely implemented in hardware modules. The resulting circuits are faster than their software alternatives and this is confirmed by examples and numerous experiments from different application areas.
Keywords :
embedded systems; finite state machines; microprocessor chips; programming; software engineering; HFSM model; electronic system; general-purpose language; hardware hierarchy; hardware module; hardware recursion; hierarchical finite state machine; hierarchy technique; high-performance computation; microelectronic device; passing argument technique; programming technique; recursion technique; returning value technique; software hierarchy; software model; software recursion; Field programmable gate arrays; Hardware; Indexes; Integrated circuit modeling; Parallel processing; Software; Unified modeling language; hardware accelerators; hierarchy; programming techniques; recursion; software vs. hardware;
Conference_Titel :
Computing and Networking Technology (ICCNT), 2012 8th International Conference on
Conference_Location :
Gueongju
Print_ISBN :
978-1-4673-1326-1