An Implementation of a Dual-Processor System on FPGA

Mohammed Eqbal Eshaq
DOI: https://doi.org/10.48550/arXiv.2302.08322
2023-05-21
Abstract:In recent years, Field-Programmable Gate Arrays (FPGA) have evolved rapidly paving the way for a whole new range of computing paradigms. On the other hand, computer applications are evolving. There is a rising demand for a system that is general-purpose and yet has the processing abilities to accommodate current trends in application processing. This work proposes a design and implementation of a tightly-coupled FPGA-based dual-processor platform. We architect a platform that optimizes the utilization of FPGA resources and allows for the investigation of practical implementation issues such as cache design. The performance of the proposed prototype is then evaluated, as different configurations of a uniprocessor and a dual-processor system are studied and compared against each other and against published results for common industry-standard CPU platforms. The proposed implementation utilizes the Nios II 32-bit embedded soft-core processor architecture designed for the Altera Cyclone III family of FPGAs.
Hardware Architecture
What problem does this paper attempt to address?
Based on the provided text content, the problems that this paper attempts to solve can be summarized as follows: With the continuous development of computer applications, modern applications (especially multimedia applications) have new requirements for processors. Traditional large - scale superscalar architectures perform poorly when dealing with applications of these new trends. To improve the processing capabilities of such new applications, engineers have designed systems that combine general - purpose multi - purpose processors with application - specific integrated circuits (such as GPUs). However, in embedded systems, this solution is not ideal because the two units are placed on different chips and need to communicate via the bus, which will limit performance, increase power consumption and execution time. Therefore, this paper proposes a scheme of a dual - processor system designed and implemented using field - programmable gate array (FPGA) technology. Specifically, the goals of the paper are: 1. **Design an efficient dual - processor system**: Use FPGA technology to design a tightly - coupled dual - processor platform, optimize the use of FPGA resources, and allow the study of problems in actual implementation, such as cache design. 2. **Evaluate system performance**: Through experiments on single - processor and dual - processor systems with different configurations, evaluate the performance of the proposed prototype system and compare it with the published results of industry - standard CPU platforms. 3. **Explore the requirements of modern applications**: In view of the characteristics of modern applications (especially multimedia applications), design a processor architecture that can meet the general - purpose computing requirements and can also efficiently process multimedia data. Through the above goals, the paper aims to solve the efficiency and performance problems existing in current processor architectures when dealing with modern multimedia applications, while providing a flexible and efficient solution.