1 Introduction
2 Working principle of high-speed image processing platform
The schematic diagram of the system structure is shown in Figure 1. After the image data input by the CCD sensor is pre-processed by the FPGA, the data is transmitted to the DSP. The DSP performs real-time image processing on the input data, and sends the processed image through the EMIF interface and saves it to the external SDRAM. Similarly, the FPGA can also read the image data of the external SDRAM and display it in real time through the VGA interface. For a small amount of data streams, such as system parameters or the start and end information of image data transmission, it is implemented through the SPI interface. The DSP subsystem is internally expanded with an SD card interface and a USB host interface, which are mainly used for the storage and transmission of image data. The main interfaces of the FPGA subsystem include: I2C, SPI, UART, PS/2 and VGA interfaces, which are used for system upgrades and debugging to improve the versatility of the system.
3 System Hardware Structure Design
The system hardware design adopts modular design concept, and the whole system is divided into DSP subsystem and FPGA subsystem. The data exchange between the two is realized by dual-port RAM.
3.1 Device Selection
3.2 Interface design between DSP and FPGA
3.3 DSP Subsystem
3.3.1 Power Management Unit
3.3.2 External Memory Interface
[page]
3.3.3 SD card interface
3.3.4 Bootload Circuit
3.4 FPGA Subsystem Composition and Functions
4 System Software Design
4.1 Software Development
The system software design uses TI's CCS3.1 (Code Composer Studio) as the development environment, and uses the DSP/BIOS real-time operating system that comes with CCS for design. Software editing, compilation, debugging, code performance testing, and project management are completed in CCS. By using a series of rich kernel services provided by DSP/BIOS, sophisticated and complex multi-task applications that meet real-time performance requirements can be quickly created. The DSP/BIOS kernel has a cross-platform standard API interface that can be called by user programs and is easy to port. In addition, in addition to supporting multi-threaded scheduling management, these services also support system real-time analysis and data management. The DSP/BIOS kernel has great size scalability. The minimum code size of the kernel image under multi-threaded configuration is only 1 K words, which occupies very little DSP resources.
4.2 Overall design of software system
Based on the hardware platform, the DSP/BIOS real-time operating system kernel in the CCS integrated development environment is used to develop a scalable software system. The system software part adopts modular and hierarchical design ideas. The software structure mainly includes: device driver layer, operating system layer, application program interface (API) layer and application layer. The device driver layer is responsible for the driver design of each module or peripheral related to the hardware; the operating system layer is responsible for the transplantation of the embedded real-time operating system; the application program interface layer completes the system control function, data reading and writing, etc., and realizes hardware independence; the application layer designs the control program related to the system application background. Figure 6 shows the system software operation flow. The software design is mainly divided into the receiving task after CCD image preprocessing, the fast digital image processing task, the logic control task and the image data return task. After the system is powered on, the program first executes the initialization of DSP and DSP/BIOS, then executes the function body and starts the DSP/BIOS operating system. The subsequent tasks are scheduled by the operating system. The image processing software platform constructed with the embedded real-time operating system DSP/BIOS can better meet the real-time requirements of the task, and the structure is stable and compact, and the portability is high.
5 Experimental Results
In order to verify the universality and real-time performance of the system, it is applied to the device detection of a certain type of placement machine, and the following three experiments are carried out: large-capacity data transmission experiment under DMA mode, threshold segmentation test experiment and template matching test experiment. Among them, the large-capacity data transmission experiment under DMA mode transfers the on-chip data to the off-chip SDRAM through DMA mode, and the image size is 600×480 bytes. The threshold segmentation and template matching experiments directly read the image data in the off-chip SDRAM, and perform threshold segmentation and 8×8 template matching experiments on the image respectively. The image processing algorithm uses the image processing library of TI company. IMG threshold() and IMG_mad_8×8(). Set the DSP running clock to 208 MHz, use timer 0 for timing, select channel 0 as the DMA channel, and the image data size is 600×480 bytes. The experimental results are shown in Table 1.
The above experimental data show that when using 600×480 area array CCD data acquisition and requiring each frame image processing time to be limited to within 30 ms, the system can well meet the current system needs.
6 Conclusion
The system can meet the needs of 600×480 area array CCD and ordinary linear array CCD sensors for system processing capabilities, and has strong throughput and real-time performance. Its design innovation lies in that it fully utilizes the powerful computing power and flexible addressing mode of DSP, combines the advantages of FPGA in general interface design and simple signal processing speed, and adopts a software architecture based on DSP/BIOS, making the system highly integrated, low power consumption, and with higher real-time performance and portability.
分页
Previous article:FPGA Implementation of Cascaded Signal Processors
Next article:Embedded Instrument Design to Meet RF Processing Needs
- Huawei's Strategic Department Director Gai Gang: The cumulative installed base of open source Euler operating system exceeds 10 million sets
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- Class AB Audio Amplifier
- Max30102 heart rate blood oxygen sensor measures heart rate problem 2
- Execution process before keil main
- Let's also wink
- I need help from a great God to look at this circuit diagram, thank you very much
- FPGA Global Clock Constraints (Xilinx)
- How to measure BLE power consumption (one of the most viewed app reports)
- Can anyone help explain the authentication process when the NB-IOT card is connected to the telecom network?
- [Erha Image Recognition Artificial Intelligence Vision Sensor] 4. Color recognition and object recognition
- 1. [Learning LPC1768 library functions] LED experiment