Processor Technology in Embedded Systems

Publisher:AngelicHeartLatest update time:2012-03-27 Source: 21ic Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

An embedded system is a system that integrates application programs and operating systems with computer hardware. This system has the characteristics of small software code, high automation, and fast response speed, and is particularly suitable for systems that require real-time and multi-tasking. An embedded device refers to a computer device that uses an embedded system. In a sense, it is indeed a miniaturization of large computing devices. This will certainly lead to a certain degree of relative performance reduction, but it is precisely the miniaturization of the size that brings people incomparable convenience.

1 Embedded Processor Technology

At the heart of an embedded system is an embedded microprocessor. An embedded processor is a computer chip used to provide added functionality in devices other than computers, often in the areas of control and monitoring.

Some embedded processors are hand-me-downs from the desktop market that are obsolete for today's PCs but more than adequate for less demanding tasks. The Z80 and 6502 processors that powered early PCs like the TRS-80, Apple II, and Commodore 64 are still very popular products. Old processors are not going away, they are just becoming embedded. As a result, the embedded microprocessor market is unusually large. At any given moment in the PC market, the performance ratio between the fastest and slowest microprocessors is only about 3:1 at best. In contrast, for 32-bit embedded microprocessors alone, the ratio is 500:1. If you compare 4-bit and 8-bit embedded processors, it's several thousand to one. As these processors get smaller, cheaper, and more powerful, they will find their way into more devices and products.

The widespread application of embedded systems is due to the following four characteristics of embedded microprocessors:

① It has strong support for real-time multitasking, can complete multitasking and has a short interrupt response time, thereby reducing the execution time of internal code and real-time kernel to a minimum.

② It has a powerful storage area protection function. This is because the software structure of the embedded system has been modularized, and in order to avoid the occurrence of erroneous cross-actions between software modules, a powerful storage area protection function needs to be designed. At the same time, this is also conducive to software diagnosis.

③ Scalable processor structure, which can quickly develop high-performance embedded microprocessors that meet the application.

④Embedded microprocessors must have very low power consumption, especially for battery-powered embedded systems used in portable wireless and mobile computing and communication devices, such as those requiring power consumption to be in the mW or even μW level.

1.1 Types of Embedded Processors

1.1.1 Embedded Microprocessor (EMPU)

The basis of embedded microprocessors is the CPU in general-purpose computers. In applications, the microprocessor is assembled on a specially designed circuit board, and only the motherboard functions related to embedded applications are retained, which can greatly reduce the system size and power consumption. In order to meet the special requirements of embedded applications, although the embedded microprocessor is basically the same as the standard microprocessor in terms of function, various enhancements are generally made in terms of operating temperature, anti-electromagnetic interference, reliability, etc.

Compared with industrial control computers, embedded microprocessors have the advantages of small size, light weight, low cost and high reliability. However, the circuit board must include ROM, RAM, bus interface, various peripherals and other devices, which reduces the reliability of the system and has poor technical confidentiality. The embedded microprocessor and its memory, bus, peripherals, etc. are installed on a circuit board, which is called a single-board computer, such as STD-BUS, PC104, etc. In recent years, some companies in Germany and Japan have developed a series of OEM products of embedded computers in the size of "matchbox" business cards.

The current main embedded microprocessors include Am186/88, 386EX, SC400, Power PC, 68000, MIPS, ARM series, etc.

1.1.2 Embedded Microcontroller (MCU)

Embedded microcontrollers are also called single-chip microcomputers. As the name implies, the entire computer system is integrated into one chip. Embedded microcontrollers are generally based on a certain microprocessor core. The chip integrates ROM/EPROM, RAM, bus, bus logic, timer/counter, WatchDog, I/O, serial port, pulse width modulation output, A/D, D/A, Flash, EEPR-OM and other necessary functions and peripherals. In order to meet different application requirements, a series of single-chip microcomputers generally have multiple derivative products. The processor core of each derivative product is the same, and the difference is the configuration and packaging of the memory and peripherals. In this way, the single-chip microcomputer can match the application requirements to the maximum extent, with neither too many nor too few functions, thereby reducing power consumption and cost.

Compared with embedded microprocessors, the biggest feature of microcontrollers is single-chip design, which greatly reduces the size, thereby reducing power consumption and cost, and improving reliability. Microcontrollers are the mainstream of the current embedded system industry. Microcontrollers generally have rich on-chip peripheral resources that are suitable for control, so they are called microcontrollers.

Embedded microcontrollers are currently the most diverse and numerous. The more representative general series include 8051, P51XA, MCS-251, MCS-96/196/296, C166/167, MC68HC 05/11/12/16, 68300, etc. In addition, there are many semi-general series, such as MCU8XC930/931, C54O, C541 that support USB interface; support I2C, CAN-Bus, LCD and many special MCUs and compatible series. Currently, MCU accounts for about 70% of the market share of embedded systems. It is particularly noteworthy that in recent years, AMD, a well-known manufacturer of X86 microprocessors, calls embedded processors such as Aml86CC/CH/CU Microcontrollers, Motorola also includes PPC505 and PPC555 based on Power PC in the ranks of single-chip microcomputers, and TI also promotes its TMS320C-2XXX series DSP as MCU.

1.1.3 Embedded DSP Processor (EDSP)

DSP processors have specially designed system structures and instructions to make them suitable for executing DSP algorithms, with high compilation efficiency and high instruction execution speed. In terms of digital filtering, FFT, spectrum analysis, etc., DSP algorithms are entering the embedded field in large numbers. DSP applications are transitioning from implementing DSP functions with ordinary instructions in general-purpose single-chip microcomputers to using embedded DSP processors. There are two sources of development for embedded DSP processors: one is that DSP processors have become embedded DSP processors after being monolithic, EMC-modified, and adding on-chip peripherals. TI's TMS320C2000/C5000 and others belong to this category; the other is to add an I)SP coprocessor to a general-purpose single-chip microcomputer or SoC, such as Intel's MCS-296 and Siemens' TriCore. Another factor driving the development of embedded DSP processors is the intelligence of embedded systems, such as various consumer products with intelligent logic, biometric information recognition terminals, keyboards with encryption and decryption algorithms, ADSL access, real-time voice compression systems, virtual reality displays, etc. This type of intelligent algorithm generally has a large amount of calculations, especially vector operations, pointer linear addressing, etc., which are exactly the strengths of DSP processors.

The more representative products of embedded DSP processors are TI's TMS320 series and Motorola's DSP56000 series. The TMS320 series processors include the C2000 series for control, the C5000 series for mobile communications, and the higher-performance C6000 and C8000 series. DSP56000 has now developed into several different series of processors, including DSP56000, DSP56100, DSP56200 and DSP56300. In addition, Philips has also launched the R.E.A.L DSP processor based on the low-cost and low-power technology of reconfigurable embedded DSP structure. It is characterized by dual Harvard structure and dual multiplication/accumulation units, and its application target is consumer products.

1.1.4 Embedded System on Chip (SoC)

With the promotion of EDI, the popularization of VLSI design, and the rapid development of semiconductor technology, the era of realizing more complex systems on one silicon chip has arrived, which is SoC. Various general-purpose processor cores will serve as standard libraries for SoC design companies, and like many other embedded system peripherals, they will become standard devices in VLSI design, described in standard languages ​​such as VHDL, and stored in the device library. Users only need to define the entire application system, and after the simulation passes, they can hand over the design drawings to the semiconductor factory to make samples. In this way, except for some devices that cannot be integrated, most of the entire embedded system can be integrated into one or several chips, and the application system circuit board will become very simple, which is very beneficial for reducing volume and power consumption and improving reliability.

SoC can be divided into two categories: general-purpose and special-purpose. General-purpose series include Siemens' TriCore, Motorola's M-Core, some ARM series devices, and Neuron chips jointly developed by Echelon and Motorola. Special-purpose SoC is generally used in a certain system or a certain type of system and is not known to general users.

1.2 Changes in the Classification of Embedded Processors

There are three categories of universal embedded processors recognized internationally: MCU, DSP and MPU (Micro-Processor Unit). TI once compared processors to cars: DSP is a sports car that pursues speed; MPU is a sedan that pursues a compromise between economy and speed; MCU is a car that meets special purposes.

Now, with the increasing demand for processing speed and more complex data being processed, dual-core and multi-core processors have emerged, usually DSP+RISC cores, such as Infineon's TriCore (CISC+RISC+DSP) and Philips' Trimedia. With the rise of some large application markets, some new terms have emerged, such as communication processors for network and communication equipment (emerged around 2000), media processors required for video and audio streams of digital cameras, digital video recorders, etc. (emerged in 2003), and application processors on smart phones (emerged in 2004).

Since some processors need not only speed but also control functions, the combination of DSP and MCU has emerged, focusing on the motor control market. For example, Freescale's DSP uses its MCU control technology; Microehip also launched this product in February 2004, called DSC (Digital Signal Controller).

In order to meet the needs of multi-core and SoC design, some manufacturers specialize in supplying processor core IP, which mainly include 16-bit, 32-bit, and 64-bit cores, and soft cores and hard cores. The multi-core market has broad development space. At the Electronic Summit 2004 in the United States, Dr. Chris Rowen, president of Tensilica, which makes 64-bit RISC IP, said that in the next 10 years, a chip will need thousands of processor cores, and 1012 operations will be completed per second.

2 Development of embedded processor chips

2.1 General development process

Although there are thousands of off-the-shelf chips to choose from, many designers need unique features. So they develop their own embedded chips, called application-specific integrated circuits.

The designer starts by licensing an embedded microprocessor core from a company and then adding his own application-specific features. For example, for a digital camera processor, he might add a controller to the charge-coupled device chip. Another example is for an Internet-enabled home appliance processor, an Ethernet interface might be added. The designer then hands his design over to a "foundry," a company that owns a "factory" (a chip manufacturing plant) and sells some of the manufacturing volume to other companies. Major foundries include United Microelectronics, TSMC, and IBM Microelectronics.

For some designers, even this flexibility isn't enough. They can find companies that license highly customizable embedded microprocessor cores. Using these cores, new machine-level instructions can be developed for special purposes. For a digital camera processor, an instruction that increases the compression rate of JPEG images is valuable. For an MP3 music player, an instruction that speeds up the audio decompression rate is equally useful. The custom design is then shipped to a "foundry" for production.

Unlike general-purpose computers, the hardware and software of embedded systems must be designed efficiently, tailored to the needs of the system, and redundancy must be eliminated. The system strives to achieve higher performance on the same silicon chip area, so that it can be more competitive in the selection of processors for specific applications. Embedded processors must tailor and add chip configurations to meet the specific needs of users in order to achieve ideal performance; however, they are also restricted by the user's order quantity. Therefore, different processors are aimed at different users, which may be general users, industry users, or single users.

The development of embedded processors also reflects stability. A system generally exists for 8 to 10 years. An architecture and its related on-chip peripherals, development tools, library functions, and embedded application products are a complex knowledge system. Users and semiconductor manufacturers will not easily give up a processor.

2.2 Embedded System Development Tools

Embedded processors are complex high-tech systems. It is not easy to master and develop all functions in a short period of time. However, market competition requires products to be launched quickly. This contradiction requires embedded processors to have development tool platforms that are easy to master and use, so as to improve the time-investment return rate of users and programmers. Faced with hundreds of processors, selection is a problem. Learning and mastering the processor structure and its application requires more time. Therefore, an overall solution based on development tools and technical consulting is urgently needed. In addition to being able to develop all the functions of the processor, a good development tool should also be user-friendly.

Embedded system development tool platforms mainly include the following categories.

2.2.1 Real-time online simulation system

In today's highly developed computer-aided design, the real-time online simulation system (InCircuit Emulator, ICE) is still the most effective development tool for debugging embedded application systems. ICE can firstly conduct principle verification of the application program through actual execution to eliminate design logic errors that are difficult for humans to find. Another main function of ICE is to simulate the real-time execution of the microcontroller in the application system to find and eliminate abnormal execution behaviors caused by hardware interference, etc. In addition, the advanced ICE has a complete tracking function, which can continuously record the actual state changes of the application system, the reaction of the microcontroller to the state changes, and the response of the application system to the control in a video recording form for analysis, and optimize the control process during the analysis. It is difficult to establish an accurate and effective digital model for many electromechanical systems, or it requires a lot of manpower to establish the model. At this time, using the tracking function of ICE to record and analyze the system is a fast and effective method.

ICE is not only a software and hardware debugging tool, but also a tool for improving and optimizing system performance indicators. High-end ICE tools (such as products from Nohau, USA) can tailor functions according to user investment, and can also be configured with various grades of real-time logic tracers (Trace), real-time image memory (Shadow RAM) and real-time program efficiency analysis (PPA) according to needs.

2.2.2 High-level language compilers

As a general high-level language, C language has greatly improved the work efficiency of embedded system engineering, giving full play to the increasingly improved performance of embedded processors and shortening the time for products to enter the market. In addition, C language is easy to transplant and modify, making product upgrades and inheritance faster. More importantly, programs written in C language are easy to communicate between different developers, thus promoting the industrialization of embedded system development.

Different from the C language compiler in general computers, the C language compiler in embedded systems is specially optimized to improve the compilation efficiency. The code length and execution time of an excellent embedded system C compiler are only 5% to 20% longer than the same function program written in assembly language. The difference in compilation efficiency is one of the important bases for distinguishing the performance of embedded system C compilers. The remaining 5% to 10% efficiency difference of C compilers can be fully compensated by the high speed, large memory space and early market entry of modern microcontrollers.

The instruction speed of new microcontrollers is constantly improving, and the memory space is also increasing accordingly, reaching or even exceeding the microprocessors in current general-purpose computers, creating conditions for embedded system engineering to adopt the C++ language, which has never been used in the past. The powerful class and inheritance functions of the C++ language make it easier to implement complex program functions. However, in order to support complex syntax, the efficiency of code generation in the C++ language is inevitably reduced. For this reason, the Embedded C++ Technical Committee established in Japan in early 1995, after several years of research, formulated the EC++ standard for reducing code size for embedded applications. EC++ retains the main advantages of C++, provides upward compatibility with C++, and meets some special requirements for embedded system design. Tasking, a leading company in embedded high-level language compilers, is a member of the EC++ Technical Committee and the first company to launch EC++ products.

The introduction of C/C++/EC++ into embedded systems has gradually eliminated the differences between embedded development and development of personal computers and minicomputers. Many experiences, methods and even library functions in software engineering can be transplanted to embedded systems. The use of high-level languages ​​in embedded development has also enabled the division of labor between hardware development and software development. It is no longer necessary to be proficient in system hardware and corresponding instruction set assembly to engage in embedded software development.

The development of another high-level language, Java, is dramatic. Java was originally designed for device-independent embedded systems and to improve program inheritance, but the code generated by Java-based embedded development tools is more than 10 times longer than that of embedded C compilers. Therefore, EC++ is likely to remain the mainstream of embedded systems for some time to come.

2.2.3 Source Program Simulator

Source program simulator is a test tool that simulates the execution of source programs written in a certain embedded processor core by software means on a widely used work platform with complete human-computer interface, such as a minicomputer and a PC. Simple simulators can execute source programs line by line through instruction interpretation, allocate virtual storage space and peripherals for programmers to check; advanced simulators can use the computer's external interface to simulate the I/O electrical signals of the processor. There is a huge price gap between simulator tools of different grades and functions. The simulator software is independent of the processor hardware and is generally integrated with the compiler in the same environment. It is an effective source program inspection and testing tool. However, it is worth noting that the simulator is, after all, a processor that simulates the operation of another processor, and it is likely to be quite different from the actual processor in terms of instruction execution time, interrupt response, timer, etc. In addition, it cannot simulate the actual execution of the embedded system in the application system like ICE.

Conclusion

Embedded systems are computers embedded directly into application systems and are the final product of information technology. The core of embedded systems is embedded processors. Embedded systems are one of the most important economic growth points for the information industry to move towards the knowledge economy era of the 21st century. It is an industry that cannot be monopolized and is full of opportunities and challenges for China's information industry. The world is diverse, especially in the post-PC era - ubiquitous computing will make embedded processors spread to every corner that people can imagine. Therefore, each processor has a reason to exist and a direction to expand. This should especially attract the attention of the Chinese information industry.

Reference address:Processor Technology in Embedded Systems

Previous article:Design of CAN Node Based on ARM Processor
Next article:Serial communication program design based on VHDL

Latest Industrial Control Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号