Font Size: a A A

The Design And Implementation On Automatic Test Platform Of FPGA Software

Posted on:2019-11-05Degree:MasterType:Thesis
Country:ChinaCandidate:X Y LiFull Text:PDF
GTID:2428330566469520Subject:Electronics and Communications Engineering
Abstract/Summary:PDF Full Text Request
Field Programmable Gate Array(FPGA)is a programmable "universal chip".With the help of all kinds of FPGA development software(EDA tool),the internal logic blocks of FPGA are compiled and connected to implement various functional circuits through simulation,test and verification according to the design requirements.The flexible working mode of FPGA greatly saves a huge cost of repeated tapeout verification.It is very suitable for the development of exploratory chip whch is likely to be an important hardware solution for artificial intelligence.With the rapid development and application of FPGA,its supporting software of EDA's development is emerging and its functions are constantly enriched and perfected.The coming of the era of software industrialization exacerbates the complexity and scale of software.People's demanding of software quality and development cycle is becoming a powerful driving force for the development of software testing technology.Software testing enables developers to monitor the quality of software in real time in the process of FPGA software development,optimizing and adjusting it at any time,which can greatly improve the efficiency of software development.Aiming at the demand of low cost and high efficiency software automation testing system,the paper will devotes to design and develop a reliable,fast and orderly Test Management Platform(TMP)for FPGA software.In this paper,the basic theory of FPGA software automation testing is introduced in detail firstly.And the structure,working mechanism and advantages of the common software automation testing framework are studied in detail.Then the mainstream information system architecture of the software automation testing platform and the message oriented middleware are analyzed in detail.In the end,based on the requirement analysis of FPGA software automation testing platform,the design and implementation of FPGA software automation testing platform based on RabbitMQ message middleware is finished.The design and development of 5 functional modules,such as the RabbitMQ message middleware and the system core execution engine,are completed.The main research work and innovations of this paper are as follows:(1)Develop a system testing framework as well as information management and transmission plan of the platform.On the basis of in-depth study of platform related testing technology,a hybrid test framework suitable for the system development is designed.The B/S information system architecture is adopted to implement the the two terminal information management scheme with front-end visual setup and the back-end implementation.The RabbitMQ is designed as multi queues to achieve efficient and reliable transmission of test resources.(2)Design the overall framework of FPGA software automated testing platform.According to the analysis of system requirements,the overall architecture of the platform is formulated,and the platform is divided into five main modules: Web pages end,CMD interface,database,message middleware and system core executive engine.On the basis of the modules' function research,the technical route of module realization is established.(3)Implement the optimization of the message transmission mode.The red and black tree algorithm is used to optimize the RabbitMQ task queue which makes the test resources are ordered in order of priority,so that the high level test task can be processed in a timely and fast way.The using of the algorithm makes the order of the queue is guaranteed and the priority problem of the test is solved.(4)Design and develop a system core executive engine for testing task management and execution.In the paper,the problem of low efficiency of single thread,low utilization of CPU and contending resources for test task are solved by using the inheritance Thread class method in Java.The non blocking algorithm based on read write lock is used to solve the problem of multithread security and synchronization.Thread pool technology is used to solve the problem of creating and destroying threads.The multi thread based non blocking concurrent queue algorithm designed and implemented in the paper,combined with the speed lifting scheme based on thread monitoring,greatly improved the efficiency of the system test.(5)Complete system function test and benefit analysis.The paper build a system test environment,publish test tasks at the end of the test plan website,analyze and summarize the effectiveness and reliability of the platform through the execution effect of the core executive engine,the result and the machine state web pagesThe test results show that the FPGA software automatic test platform developed in the paper can realize the function of parallel testing of multiple software by task scheduling,greatly shortens the running time of single test case and software version test cycle,and the overall test efficiency is 50% less than that of manual test.Compared with the traditional manual test,the accuracy,speed,stability and reliability of the test have been greatly improved.The research and development results of the paper have a certain value of engineering application.
Keywords/Search Tags:FPGA, EDA tools, RabbitMQ, system core executive engine, automatic test platform
PDF Full Text Request
Related items