Research on Windows CE embedded Navigation System (Hardware Design 1)

Source: Internet
Author: User
1.1 ARM microprocessor selection 1.1.1 ARM microprocessor Series

Currently, ARM microprocessor is composed of the following series. Other processors based on the ARM architecture, apart from the common features of the ARM architecture, each ARM microprocessor has its own characteristics and application fields.

L ARM7 Series

L arm9-series

L arm9e Series

L arm10e Series

L securcore Series

L inter XScale

L Inter's strongarm

Among them, ARM7, arm9e, arm10e are four general-purpose processor series, each of which provides a set of relatively unique performance to meet the needs of different application fields. Among them, the securcore series is specially designed for applications with high security requirements. Here we will take a closer look at the features and application fields of the four processors, arm9e, arm10e, and arm10e.

1. ARM7 microprocessor Series

The series microprocessor is a low-power 32-bit Proteus processor. It is most suitable for consumer products with high price and power consumption requirements. The series microprocessor has the following features;

L embedded ICE-RT logic, debugging and development is more convenient.

L low power consumption, suitable for products with high power consumption requirements, such as portable products.

L provides a three-level pipeline structure of 0.9 MIPS/MHz.

L high program code density and 16-bit thumb instruction set.

L extensive support for operating systems, including Windows CE, Linux, and Palm OS.

L The command system is compatible with the arm9e series, arm9e series, and arm10e series to facilitate product upgrades.

L The clock speed can reach up to 130 MIPS, and the high-speed computing capability can be competent for most complex applications.

The main application fields of the ARM7 series microprocessor are: industrial control, internet devices, network and data devices, mobile phones, and other multimedia and embedded applications. The ARM7TDMI, ARM7TDMI-S, arm720t, and arm7ej Series Microprocessor includes the following types. Among them, arm7tmdi is currently the most widely used 32-bit embedded CPU, which is a low-end ARM processor.

2. arm9-microprocessor Series

The arm9-series microprocessor provides the best performance in terms of high performance and low power consumption. Has the following features;

L 5-level pipeline structure, higher instruction execution efficiency.

L provides a Harvard structure of 1.1 MIPS/MHz.

L supports 32-bit arm instruction sets and 16-bit thumb instruction sets.

L supports 32-bit high-speed AMBA bus interfaces.

L full-performance MMU, supporting Windows CE, Linux, Palm OS and other mainstream embedded operating systems.

The arm9-series microprocessor is applicable to wireless devices, instruments, security systems, set-top boxes, high-end printers, digital cameras, digital cameras, and other fields.

3. arm9e microprocessor Series

The arm9e series microprocessor is a comprehensive processor. It uses a single processor kernel to provide solutions for microcontroller, DSP, and Java application systems, greatly reducing the chip area and system complexity. The arm9e Series Microprocessor provides enhanced DSP processing capabilities and is suitable for applications that require simultaneous use of DSP and microcontroller. The main features of arm9e series microprocessor are as follows;

L supports DSP instruction sets and is suitable for high-speed digital signal processing.

L 5-level integer assembly line, higher instruction execution efficiency.

L supports 32-bit arm instruction sets and 16-bit thumb instruction sets.

L supports 32-bit high-speed AMBA bus interfaces.

L supports vfp9 floating point coprocessor.

L full-performance MMU, supporting Windows CE, Linux, Palm OS and other mainstream embedded operating systems.

L MPU supports real-time operating systems.

L supports data cache and command cache, with higher command and data processing capabilities.

L The clock speed can reach up to 300 MIPS.

The arm9e Series Microprocessor consists of three types: ARM926EJ-S, ARM946E-S, and ARM966E-S for different applications.

4. arm10e microprocessor Series

The arm10e Series Microprocessor features high performance and low power consumption. Thanks to the new architecture, the performance of arm10e series microprocessor is improved by nearly 50% compared with the same arm9's devices at the same clock frequency, at the same time, arm10e series microprocessor uses two advanced energy-saving methods, making its power consumption extremely low. The main features of arm10e series microprocessor are as follows;

L supports DSP instruction sets and is suitable for high-speed digital signal processing.

L 6-level integer assembly line, higher instruction execution efficiency.

L supports 32-bit arm instruction sets and 16-bit thumb instruction sets.

L supports 32-bit high-speed AMBA bus interfaces.

L supports vfp10 floating point coprocessor.

L full-performance MMU, supporting Windows CE, Linux, Palm OS and other mainstream embedded operating systems.

L supports data cache and command cache, with higher command and data processing capabilities

L The clock speed can reach up to 400 MIPS.

L embedded parallel read/write components.

Arm10e series microprocessor is mainly used in the next generation of wireless devices, digital consumer goods, imaging equipment, industrial control, communication and information systems, and other fields. The arm10e Series Microprocessor consists of three types: arm1020e, arm1022e, and ARM1026EJ-S for different applications.

1.1.2 comparison between s3c2440a and S3C2410A

S3c2440a is a dedicated chip designed mainly for handheld devices. It features low power consumption and high-speed processing and computing capabilities. To reduce system consumption, 2440 uses the following components: 2440 Based on the ARM920T kernel, 0.13um CMOS standard unit and storage unit complex, its power consumption and small, simple, and stable design are very suitable for products with high power requirements. When selecting a chip, I cannot weigh the value between s3c2440a and S3C2410A for a while. After comparing the parameters in various aspects, I chose s3c2440a. The following describes the parameter comparison between s3c2440a and S3C2410A;

1. the maximum frequency is different.

The value of S3C2410A is 200 m, and that of s3c2440a is 400 m. When we use these two processors, the clock speed is usually different, and this is different, not only affects the running speed, the most important thing is that it will affect the clock of some peripherals (such as serial ports). If the clock of these peripherals is incorrect, problems will occur. For example, in the memory bus settings, the clock speed of 2410 and 2440 is different, and the clock speed required by the bus timing is also different.

2. calculation formulas for mpll and upll are different [17]

The mpll of s3c2440a is twice that of S3C2410A. The mpll Calculation of s3c2440a is different from that of upll. The following formula shows the S3C2410A output clock frequency (mpll/upll) relative to the reference input clock frequency (FIN;

PLL control register (mpllcon and upllcon)

(M/U) PLL = (M * fin)/(p * 2 S)

M = (mdiv + 8), P = (pdiv + 2), S = sdiv

The following formula compares the s3c2440a output clock frequency mpll with the reference input clock frequency fin;

Mpll control register

Mpll = (2 * m * fin)/(p * 2 ^ s)

M = (mdiv + 8), P = (pdiv + 2), S = sdiv

The following formula shows the output clock frequency upll of s3c2440a relative to the reference input clock frequency fin;

Upll control register

Upll = (M * fin)/(p * 2 ^ s)

M = (mdiv + 8), P = (pdiv + 2), S = sdiv

3. The CPU needs to change from the fast bus mode to the asynchronous mode with different conditions

(1) S3C2410A

If hdivn = 1, the CPU bus mode has to be changed from the fast bus mode to the asynchronous bus mode using following instructions.

Procedure List 4 convert 1 S3C2410A to asynchronous model code

Mmu_setasyncbusmode

MRC P15, 0, R0, C1, C0, 0

ORR r0, R0, # r1_nf: Or: r1_ia

MCR P15, 0, R0, C1, C0, 0

(2) s3c2440a

If hdivn is not 0, the CPU bus mode has to be changed from the fast bus mode to the asynchronousbus mode using following instructions (S3C2440 does not support synchronous bus mode ).

Program list 4 slave 2 s3c2440a convert code to asynchronous model

Mmu_setasyncbusmode

MRC P15, 0, R0, C1, C0, 0

ORR r0, R0, # r1_nf: Or: r1_ia

MCR P15, 0, R0, C1, C0, 0

4. Other comparisons

L s3c2440a adds the ac'97 encoding and decoder interface compared with S3C2410A.

L s3c2440a adds a new camera interface and camera interface compared with S3C2410A.

L s3c2440a has more available I/O ports than S3C2410A, with 13 DPJ port groups added.

L The serial port structure of s3c2440a and S3C2410A is almost the same, but the serial port FIFO of S3C2410A is 16 bytes, while that of s3c2440a is 64 bytes. Due to the different FIFO depth, the definitions of the single-digit in the ufstat register are inconsistent.

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.