Development of embedded systems-process and Mode

Source: Internet
Author: User
To shorten the development cycle, software and hardware design and development are usually parallel. At present, the embedded development process mainly includes System Requirement Analysis (strict technical requirements are required), architecture design, software and hardware and mechanical system design, system integration, and system testing, and finally obtain the final product.
  1. System Requirement Analysis. Determine the design task and objectives, and extract the design specification as the standard for formal design guidance and acceptance. System requirements are generally divided into functional requirements and non-functional requirements. Functional requirements are basic functions of the system, such as input and output signals and operation methods. non-functional requirements include system performance, cost, power consumption, volume, weight, and other factors.
  2. Architecture design. Describes how the system meets the described functional and non-functional requirements, including the division of hardware, software, and execution devices, as well as the software and hardware selection of the system. A good architecture is the key to successful design. In this step, you often need to select the main chip, determine the RTOS, determine the programming language, and select the development environment (the programming language and development environment are also determined when determining the RTOS) determine test tools and other auxiliary devices.
  3. Hardware/software collaborative design. The system software and hardware are designed in detail based on the architecture. To shorten the product development cycle, the design is usually parallel. Most of the work of embedded system design is focused on software design. The use of object-oriented technology, software component technology, modular design is a common method of modern software engineering.
  4. System integration. Integrate the software, hardware, and execution devices of the system for debugging and identify and improve errors in the unit design process.
  5. System test. Test the designed system to see if it meets the functional requirements specified in the specification. The most characteristic of the development mode of embedded systems is the integrated development of software and hardware. This is because embedded products are a combination of hardware and software, and the software is developed, solidified, and unchangeable for hardware.
The design and development of embedded systems are mostly focused on software. Embedded systems generally adopt the "host machine/target board" development mode in the development process, that is, the use of host machine (PC) A wealth of software and hardware resources and a good development environment and debugging tools to develop the software on the target board, and then generate the target code and executable files through the cross-compilation environment, download the program to the target board through serial port/USB/Ethernet, use the cross debugger to run the program on the monitor, analyze the program in real time, and finally download the program to the target machine to complete the development process. The entire software development process involves the following steps:
  1. Source code writing: write source C/C ++ and assembler programs;
  2. Program Compilation: Compile the program through a dedicated compiler;
  3. Software simulation debugging: Simulate the software running status in the SDK;
  4. Program download: Download to the target board through JTAG, USB, and UART;
  5. Software and Hardware testing and debugging: Joint debugging of programs through JTAG;
  6. Download solidified: The program is correct and downloaded to the product for production.
There are four basic methods for debugging embedded systems:
  1. Simulation debugging: directly debugging on the host, simulating the target runtime environment using the software, mainly debugging the syntax and logic.
  2. Software debugging: the host and target board are connected through an interface (usually a serial port). The debugging interface is provided on the host, and the software to be debugged is downloaded to the target board for running. A prerequisite for this method is to establish communication between the host and the target board.
  3. BDM/JTAG debugging (BDM/JTAG debugger): In addition to the host and target board, this method also requires an additional debugging device, the device is connected to the target board through BDM/JTAG and other debugging interfaces, and is connected to the host through serial port, parallel port, network port or USB. The software to be debugged is downloaded to the target board through the debugging device.
  4. Full simulation debugging (emulator): The simulator completely or partially replaces components on the target board (such as mechanical components or MCU). Therefore, the target system is completely transparent and controllable for developers. Because the simulator is a self-built system, the target board can be connected or not connected during debugging.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.