What is the difference between embedded hardware and software in embedded development?

Embedded means that the software is burned directly into the hardware instead of being installed on external storage media, just like giving a robot a soul, thus facilitating human control. In embedded development, it is divided into embedded hardware and embedded software, most people do not know the difference between embedded hardware and software very well, now for you to say what is embedded hardware and software? And what is the difference between them?

embedded-hardware-and-software

What are embedded hardware and software?

Embedded hardware can be divided into the embedded processor and external devices. The processor is the core of the whole system, responsible for processing all the software programs as well as the signals from external devices. Generally speaking, embedded hardware refers to logic circuits, embedded processors, microcontrollers, storage systems, and hardware design skills.
Embedded software is software designed based on an embedded system, it is also a kind of computer software, also composed of programs and documents, which can be subdivided into three categories: system software, support software, and application software, which is an important part of embedded systems. Embedded software can be divided into two layers, the closest to the hardware is the embedded operating system. The operating system is the interface between hardware and software and is responsible for managing all software and hardware resources of the system. The operating system can also deal with external devices through drivers.

embedded-hardware-and-software

What is the difference between embedded hardware and software?

First, the main body of embedded hardware and software is different

Embedded hardware: a device used to control, monitor or assist in operating machines and devices. The protocol processing module centered on the general-purpose processor is used for the processing of network control protocols
Embedded software: embedded in the hardware operating system and development tools software.

Second, embedded hardware and software content is different

Embedded hardware: as part of the device or equipment, it is a control program stored in ROM embedded processor control board. The signal processing module centered on the digital signal processor (DSP) is used for modulation, demodulation, and digital-to-analog signal conversion.
Embedded software: support software is used to help and support software development, usually including database and development tools, of which the database is the most important.

embedded-hardware-and-software

Third, embedded hardware and software features

Embedded hardware: is composed of an embedded computer system and execution device, the embedded computer system is the core of the whole embedded system, consisting of the hardware layer, middle layer, system software layer, and application software layer. The execution device is also called the controlled object, which can accept the control command issued by the embedded computer system and execute the specified operation or task.
The power consumption, size, cost, reliability, speed, processing power, and electromagnetic compatibility of the embedded processor are constrained by the application requirements. When selecting a processor, consider the processor’s processing speed, technical specifications, the processor’s low power consumption, the processor’s software support tools, whether the processor has built-in debugging tools, and whether the processor supplier provides evaluation boards.
Embedded software: a series of microelectronic chips and devices including microprocessors, timers, microcontrollers, memory, sensors, etc., embedded in the memory of the micro operating system, control application software, together to achieve such tasks as real-time control, monitoring, management, mobile computing, data processing, and other automated processing. And the software running on the embedded system has an embedded operating system, application, driver, and some development tools. But the key to choosing a suitable operating system is to consider which development tools the operating system provides, the difficulty of porting the operating system to the hardware interface, the memory requirements of the operating system, whether the operating system provides drivers for the hardware, whether the operating system is clippable, the real-time nature of the operating system, etc.

Although embedded hardware and software are different, they are also closely related. In embedded development, you need to understand the hardware characteristics of the MCU used, the principle of each peripheral circuit and interface circuit; you also need to dig deeper into the knowledge of MCU core architecture, whether it supports floating point processor/DSP, whether it supports co-processor, instruction data cache, etc.

滚动至顶部