國立臺灣師範大學電機工程學系Shih-An LiChen-Chien HsuChing-Chang WongChia-Jun Yu2014-10-302014-10-302011-10-150020-0255http://rportal.lib.ntnu.edu.tw/handle/20.500.12235/32119This paper presents a hardware/software (HW/SW) co-design approach using SOPC technique and pipeline design method to improve design flexibility and execution performance of particle swarm optimization (PSO) for embedded applications. Based on modular design architecture, a Particle Updating Accelerator module via hardware implementation for updating velocity and position of particles and a Fitness Evaluation module implemented either on a soft-cored processor or Field Programmable Gate Array (FPGA) for evaluating the objective functions are respectively designed to work closely together to carry out the evolution process at different design stages. Thanks to the design flexibility, the proposed approach can tackle various optimization problems of embedded applications without the need for hardware redesign. To further improve the execution performance of the PSO, a hardware random number generator (RNG) is also designed in this paper in addition to a particle re-initialization scheme to promote exploration search during the optimization process. Experimental results have demonstrated that the proposed HW/SW co-design approach for PSO algorithms has good efficiency for obtaining high-quality solutions for embedded applications.HW/SW co-designParticle swarm optimization (PSO)System on a programmable chip (SOPC)Field Programmable Gate Array (FPGA)Hardware/Software Co-design for Particle Swarm Optimization Algorithm