• 沒有找到結果。

第 1 章 嵌入式系统开发入门

1.2 ARM 介绍

ARM 是 Advanced RISC Machines(高级精简指令系统处理器)的缩写,它既是一种微 时钟

复位

中断控 制器

处理器 核

SDRAM 控制器

外部总线 控制器

SDRAM

其他外设

Flash

处理器知识产权(IP)核,也是一个公司的名称。在上节中对 ARM 公司有了大概的介绍,

² ARM7 系列:一般包括 ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ 几种内核。ARM7TDMI 是目前使用最广泛的 32 位嵌入式 RISC 处理器之一,

² ARM9 系列:包含 ARM920T、ARM922T 和 ARM940T 三种类型,主要应用 于无线设备、仪器仪表、安全系统、机顶盒、高端打印机、数字照相机和数字

l 全性能的 MMU,支持 Windows CE、Linux、Palm OS 等多种主流嵌 入式操作系统。

l 支持数据 Cache 和指令 Cache,具有更高的指令和数据处理能力。

² ARM9E 系列:包含 ARM926EJ-S、ARM946E-S 和 ARM966E-S 三种类型。主 要应用于下一代无线设备、数字消费品、成像设备、工业控制、存储设备和网 络设备等领域。

² ARM10E 系列:包含 ARM1020E、ARM1022E 和 ARM1026EJ-S 三种类型。

主要应用于下一代无线设备、数字消费品、成像设备、工业控制、通信和信息 系统等领域。

² SecurCore 系列:包含 SecurCore SC100、SecurCore SC110、SecurCore SC200 和 SecurCore SC210 四种类型,主要应用于一些对安全性要求较高的应用产品 及应用系统,如电子商务、电子政务、电子银行业务、网络和认证系统等领域。

² Intel 的 Xscale:Xscale 处理器是基于 ARMv5TE 架构的解決方案,是一款全 性能、高成本效益比、低功耗的处理器。它支持 16 位的 Thumb 指令和 DSP 指令集,已使用在许多移动电话、个人数字助理和网络产品等场合。

² Intel 的 StrongARM:StrongARM SA-1100 处理器是采用 ARM 架构高度整合的 32 位元 RISC 微处理器。它融合了 Intel 公司的设计和处理技术以及 ARM 架 构的电源效率,采用在软件上相容 ARMv4 架构、同時采用具有 Intel 技术优 点的架构。Intel StrongARM 处理器是便携型通讯产品和消費类电子产品的理 想选择,已成功应用于多家公司的掌上电脑系列[3]。

其中,ARM7、ARM9、ARM9E 和 ARM10 为 4 个通用处理器系列,每一个系列提供一 套相对独特的性能来满足不同应用领域的需求。SecurCore 系列专门为安全要求较高的应用 而设计。Intel 的 Xscale 和 StrongARM 也是应用非常广泛的嵌入式处理器系列。

1.2.2 ARM 处理器的选型

基于 ARM 为内核的处理器已经越来越多,并且种类繁多,在选择开发基于 ARM 的嵌 入式系统时,首要任务就是选择 ARM 微处理器。下面讲述在选择 ARM 微处理器的一般准 则[3]。

1. ARM 微处理器内核的选择

Ø 如果使用 Windows CE 或标准 Linux 等操作系统,就需要选择 ARM720T 以上 带有 MMU 功能的 ARM 晶片。

Ø ARM720T、ARM920T、ARM922T、ARM946T、Strong-ARM 都带有 MMU 功能。

Ø 而 ARM7TDMI 则沒有 MMU,不支持 Windows CE 和标准 Linux,但目前有 uCLinux 等不需要 MMU 支持的操作系统可执行 ARM7TDMI 硬件平台。

2. 系统的工作频率

Ø 系统的工作频率在很大程度上決定了 ARM 微处理器的处理能力。

Ø ARM7 系列微处理器的典型处理速度为 0.9MIPS/MHz,常见的 ARM7 晶片系 统主时钟为 20MHz-133MHz。

Ø ARM9 系列微处理器的典型处理速度为 1.1MIPS/MHz,常见的 ARM9 的系统 主时钟为 100MHz-233MHz,ARM10 最高可以达到 700MHz。

3. 晶片內部存储体的容量

Ø 大多数的 ARM 微处理器晶片內部存储体的容量都不太大。

Ø 如 ATMEL 的 AT91F40162 就具有最高 2MB 的晶片內部存储空间。

4. 晶片內部周围电路选择

Ø 如 USB 接口、IIS 接口、IIC 接口、LCD 控制器、键盘接口、RTC、ADC 和 DAC、DSP 等,设计者应该分析系统的需求,尽可能采用晶片內部周围电路 完成所需的功能,这样既可以简化系统的设计,同时提高系统的可靠性。

除了上面介绍的四个方面准则之外,还有许多其它的因素考虑,比如价格、兼容性等等。

总之,根据设计的需求选择一款适合自己系统的 ARM 处理器是非常重要的。

1.2.3 S3C2410 微处理器介绍

S3C2410 是三星电子开发的一种 32 位 RISC 微处理器,它是基于 ARM920T 内核开发

的。S3C2410 是面向低价格、低功耗和高性能的手持设备和小型设备而设计。S3C2410 的具 体特点有以下[4]:

l 系统管理

Ø 支持小端/大端方式

Ø 地址空间:128M 字节每一个 Bank(总共 1G 字节)

Ø 每个 BANK 可编程为 8/16/32 位数据总线 Ø BANK0 到 BANK6 采用固定起始地址和大小 Ø BANK7 具有可编程的 BANK 起始地址和大小 Ø 共 8 个存储器 BANK

Ø 前 6 个存储器 BANK 用于 ROM、SRAM 和其他

Ø 另外两个存储器 BANK 用于 ROM、SRAM 和同步 DRAM Ø 支持等待信号用以延长总线周期

Ø 支持掉电时的 SDRAM 自刷新模式

Ø 支持不同类型的 ROM 引导(NOR/NAND Flash、EEPROM 和其他)。

l S3C2410 的 SoC 芯片集成单元

Ø 内部 1.8V,存储器 3.3V,外部 I/O3.3V,16KB 数据 CACHE,16KB 指令 CACHE,

MMU

Ø 内置外部存储器控制器(SDRAM 控制和芯片选择逻辑)

Ø LCD 控制器,一个 LCD 专用 DMA Ø 4 个带外部请求线的 DMA

Ø 3 个通用异步串行端口(IrDA1.0, 16-Byte Tx FIFO, and 16-Byte Rx FIFO),2 通道 SPI

Ø 一个多主 I2C 总线,一个 I2S 总线控制器

Ø SD 主接口版本 1.0 和多媒体卡协议版本 2.11 兼容 Ø 两个 USB HOST,一个 USB DEVICE(VER1.1)

Ø 4 个 PWM 定时器和一个内部定时器 Ø 看门狗定时器

Ø 117 个通用 I/O Ø 24 个外部中断

Ø 电源控制模式:标准、慢速、休眠、掉电 Ø 8 通道 10 位 ADC 和触摸屏接口

Ø 带日历功能的实时时钟 Ø 芯片内置 PLL

Ø 设计用于手持设备和通用嵌入式系统

Ø 16/32 位 RISC 体系结构,使用 ARM920T CPU 核的强大指令集 Ø 带 MMU 的先进的体系结构支持 WinCE、EPOC32、Linux

Ø 指令缓存(CACHE)、数据缓存、写缓冲和物理地址 TAG RAM,减小了对主存储 器带宽和性能的影响

Ø ARM920T CPU 核支持 ARM 调试的体系结构

Ø 内部先进的位控制器总线(AMBA)(AMBA2.0,AHB/APB)

其中,S3C2410 的芯片结构图 1.3 所示:

图 1.3 S3C2410 芯片结构