Embedded technology study notes (1)

1. Overview of embedded development
1. What is embedded technology?
To introduce embedded technology, we must first talk about single-chip technology. The development technology of single chip microcomputer can be called traditional development, and the hardware is controlled by software written by oneself. This traditional development method has disadvantages:
① Poor software portability Because the principle of hardware is different, the software you write may only be suitable for one type of hardware.
②Developer's ability requirements: If you want to complete the development of single chip microcomputers, you must be familiar with both software and hardware. Moreover, what you design can only be modified and understood by yourself, it is difficult for others to help. So this traditional development will take a long time.
The traditional development is to directly control the hardware with software, and the embedded inserts an operating system between the two. The role of the operating system is to manage resources, including software resources and hardware resources. Equivalent to a housekeeper. Separate software from hardware.
What the embedded technology needs to do is to transplant the operating system on the existing hardware, do upper-layer application development on the operating system, and do lower-layer development on the operating system.
What are the advantages of the operating system as the difference between the two?
①Multi-task mechanism
②Provide rich network protocols
③Provide open source software and libraries
Embedded development also has shortcomings: the operating system requires hardware performance. The better the operating system, the greater the hardware requirements.
Which operating systems can be called embedded operating systems? The operating system that can be transplanted (the code is open source and provides a portable interface) is called an embedded operating system.
2. Embedded development direction (employment direction)
Embedded upper-layer application development
Requirements: a. Proficient in a language
b. Familiar with an operating system (I will see the instructions)
c. Data structure / algorithm
Embedded low-level system software development
Requirements: a. Proficient in C language (all operating system kernels are completed by C language + assembly)
Why choose c language (c language features)? Can directly access the hardware, portability, operating efficiency
Why can c language directly access the hardware? Because the c language has pointer data types, the pointer can operate on the address
b, understand the operating system implementation (will use, will also add / modify functions)
c, familiar with the working principle of the hardware
d, familiar with assembly
embedded system engineer BSP (firmware engineer) Kernel development
3. Types, characteristics and application scenarios of CPU architecture?
First of all, distinguish between architecture and architecture.
Architecture: CPU architecture is a specification that CPU manufacturers assign to CPU products belonging to the same series. The purpose is to distinguish different types of CPU
architectures: the architecture described in computer technology is a Abstract machine, not a concrete machine. Generally, a CPU architecture is composed of an instruction set and some registers. So in a certain sense, instruction set and architecture are synonymous.
There are four modern CPU architectures. Before introducing these four architectures, we must first understand RISC and CISC.
RISC is the abbreviation of Reduced Instruction Set Computer in English, which means reduced instruction set computer. , This instruction set can reduce the complexity of the CPU and allow the production of more powerful CPUs at the same process level, but there are higher requirements for the design of the compiler
CISC is the abbreviation of English Complex Instruction Set Computer, meaning Complex instruction set computers. This instruction set is generally used in early CPUs. Its design purpose is to use minimal machine language instructions to complete the required computing tasks. However, all the instructions of this cpu rely on the logic designed in the cpu to achieve, which will increase the complexity of the cpu structure and the requirements of the cpu process, but it is very beneficial to the development of the compiler
The following is an introduction to the four major CPU architectures
(1) X86
x86 or 80x86 is a general term for a microprocessor architecture first developed and manufactured by Intel Intel. The x86 architecture is an important variable instruction length CISC.
Features: It can effectively shorten the microcode design time of new instructions, allowing designers to achieve upward compatibility of CISC system machines. The new system can use a superset of instructions that includes the earlier system, or it can use the same software used on earlier computers. In addition, the format of the microprogram commands matches the high-level language, so the editor does not have to be rewritten.
Application scenario: suitable for general-purpose computers
(2) ARM
ARM architecture, used to be called Advanced Reduced Instruction Set Machine (Advanced RISC Machine, earlier called: Acorn RISC Machine), is a 32-bit Reduced Instruction Set (RISC) processing It is widely used in many embedded system designs. Today, the ARM family accounts for 75% of all 32-bit embedded processors, making it one of the most 32-bit architectures in the world. ARM processors can be found on many consumer electronics products, from portable devices (PDAs, mobile phones, multimedia players, handheld video games, and computers) to computer peripherals (hard drives, desktop routers) and even He exists in military installations such as missile-mounted computers.
Features: The ARM architecture uses some special technologies to minimize the chip area and reduce power consumption while ensuring high performance. All instructions can be decided whether to be executed according to the previous execution result, thereby improving the execution efficiency of the instruction. Load / store instructions can be used to transfer data in batches to improve data transmission efficiency.
Application scenario: Due to the characteristics of energy saving, the ARM processor is very suitable for the field of mobile communications, in line with its main design goal of low power consumption.
(3) MIPS
MIPS is a very popular RISC processor in the world. MIPS means "Microprocessor without interlocked piped stages" (Microprocessor without interlocked piped stages), and its mechanism is to use software methods to avoid data related problems in the pipeline. It was first developed by a research team led by Professor Hennessy at Stanford University in the early 1980s.
Features: simpler design, shorter design cycle and other advantages, and can apply more advanced technology to develop faster next-generation processors. MIPS is one of the earliest commercial RISC architecture chips. The new architecture integrates all the original MIPS instruction sets and adds many more powerful functions.
Application scenario: used by computer companies to form various workstations and computer systems
(4) PowerPC
PowerPC is a reduced instruction set (RISC) architecture central processing unit (CPU) whose basic design is derived from IBM (International Business Machines Corporation) IBM PowerPC 601 microprocessor POWER (PerformanceOptimized With Enhanced RISC.
Features: good scalability, convenient and flexible
Application scenarios: PowerPC processors have a wide range of implementation, including from high-end server CPUs such as Power4 to the embedded CPU market

Published 14 original articles · Like1 · Visits 477

Guess you like

Origin blog.csdn.net/a1152946932/article/details/104497227