嵌入式系统 an introduction to embedded system 第 3 课 pxa255 开发平台( 2 )...

43
1 嵌嵌嵌嵌An Introduction to Embedded System 嵌3嵌 PXA255 嵌嵌嵌嵌2 嵌嵌嵌 嵌嵌嵌嵌嵌嵌嵌嵌嵌 2009 嵌 4 嵌

Upload: joie

Post on 14-Jan-2016

169 views

Category:

Documents


5 download

DESCRIPTION

嵌入式系统 An Introduction to Embedded System 第 3 课 PXA255 开发平台( 2 ) 陈文智 浙江大学计算机学院 2009 年 4 月. 回顾.  嵌入式处理器概述  StrongARM 架构处理器  XScale 架构处理器  PXA255 处理器结构与特性  Xsbase255 开发系统. 提纲.  ARM 嵌入式处理器  StrongARM 架构处理器  XScale 架构处理器  PXA255 处理器结构与特性  Xsbase255 开发系统. - PowerPoint PPT Presentation

TRANSCRIPT

1

   嵌入式系统An Introduction to Embedded System

第 3课 PXA255 开发平台( 2)陈文智

浙江大学计算机学院2009 年 4月

2

  回顾

嵌入式处理器概述

StrongARM 架构处理器

XScale 架构处理器

PXA255 处理器结构与特性

Xsbase255 开发系统

3

  提纲

ARM 嵌入式处理器

StrongARM 架构处理器

XScale 架构处理器

PXA255 处理器结构与特性

Xsbase255 开发系统

4

Intel XScale— 采用 ARMV5TE

XScale 微架构处理器的时钟可以达 1GHz 、功耗 1.6W ,能达到 1200MIPS ,是最高端的嵌入式处理器之一

型号: IOP310 、 IOP321 、 PXA210 、 PXA 25X 、 PXA 26X 、 PXA 27X

采用 7/8 级超级流水线 支持多媒体处理技术 指令快存 (I-Cache) : 32K 字节

数据快存 (D-Cache) 微小数据快存 (Mini-DCache) 指令存储器管理单元 IMMU 动态电源管理 数据存储器管理单元 DMMU 中断控制器 总线控制器 1G 字节 / 秒、 ECC 协议 调试 (Debug) 接口

5

6

XScale 系统结构 ---- XScale 超级流水线

PXA255 拥有 7 级超级流水线,主要由主流水线、 MAC 流水线和内存访问流水线组成。是与 SA 的最大不同特点之一。

7

XScale 系统结构 ---- XScale 超级流水线

主流水线 F1/F2 指令读取 ID 指令译码 RF 寄存器文件 / 移位

级 X1 执行级 X2 执行级 XWB 写回级

8

XScale 系统结构 ---- XScale 超级流水线

MAC 流水线 执行所有的乘 / 累加指令。它执行 40 位累加寄存器 acc0 和

能把指令值转化成普通的 ARM 寄存器值。 当 MAC 在处理一条指令的时候其他的指令不允许进入到 M1

中,除非原来的指令在下一个周期中处理完成(非流水)。 MAC 单元执行开始于 M1 ,接受 2 个 32 位操作数, N 个周

期后完成并返回寄存器文件。

9

XScale 系统结构 ---- XScale 超级流水线

内存访问流水线 内存流水线有 D1 、 D2 和 DWB3 级构成,独立完

成指令的装载和存储。 执行完 X1 后开始执行 D1 级,计算有效的存 / 取地

址;在 D2 级数据 cache 和小型数据 cache 返回目的数据; DWB 级进行填入缓冲器和写入缓冲器操作。

10

XScale 系统结构 ---- XScale 乘 / 累加 MAC

XScale 为了多媒体的应用,支持 SIMD 例如: MIAPH 指令,执行 2 个 16x16 位乘法,然

后与 40 位累加器相加,即 2 个 32 位寄存器可以看作为 2 对 16 位寄存器,先高 16 位相乘并与累加器进行相加;低 16 位也相乘后与累加器相加,这 2个结果相加后再送到寄存器文件中。

11

XScale 系统结构 ---- 内存管理

提供内存访问保护和虚拟地址到物理地址的转换 支持指令 TLB支持数据 TLB

(Translation Look-aside Buffer , TLB ,转换搜索缓存 )

12

XScale 系统结构 ---- 指令 Cache

容量为 32K 32 路组相联 每路由 8 个字 (32 字节 ) 和一位有效位 ( 思考:有几组 ?)

循环替换算法

13

XScale 系统结构 ---- 指令 Cache

14

XScale 系统结构 ---- 数据 Cache

容量 32KB 32 路组相联 每路包含 32 字节和 1 个有效位, 2 个 dirty位,分别对应低 16 位字节和高 16 位字节 采用循环替换法

15

XScale 系统结构 ---- 转移目标缓冲器 BTB

BTB 由有 128 入口的直接映像 cache 构成 每个入口由 TAG分支地址、 DATA 数据目标地址和 2 位历史位组成。

16

XScale 系统结构 ---- 性能监视

提供 2 个 32 位性能计数器,对 2 个独立事件同时监视。 1 个 32 位时钟计数器,联合性能计数器记录内核时钟数。

当计算突发事件时计数器将监测到一个特定事件的发生; 当测量持续事件时计数器将记录处理器时钟周期数当指定条件为真时事件发生。

所有的这些计数器都有对应的 IRQ和 FIQ资源。XScale 的性能监视模块可以通过协处理器 CP14 的寄存器 0-3 进行控制。

17

XScale 系统结构 ---- 电源管理

XScale合并电源管理和时钟管理来控制时钟和管理电源。控制每一个运行模式的时钟频率和管理不同电源管理模式下的性能与功耗间的优化。

18

XScale 系统结构 ---- 调试

不使用扫描部件,而是通过微小型 I cache,并采用调试代理的方式进行。调试单元主要包括: 通讯控制模块

通过JTAG 指令来建立目标机和宿主机握手 硬件断点模块

提供指令和数据断点寄存器,由协处理器控制 跟踪缓冲模块

对程序历史记录以实现恢复异常和跳转 代码下载模块

代码下载到 I-Cache ,调试代理程序实现读 / 写

19

  提纲

ARM 嵌入式处理器

StrongARM 架构处理器

XScale 架构处理器

PXA255 处理器结构与特性

Xsbase255 开发系统

20

PXA255 处理器结构与特性

21

PXA255 处理器结构与特性

PXA255 除了采用 XScale 内核,还具有以下特点: 内核工作频率: 200MHz 、 300MHz 和 400MHz 系统存储器接口 时钟和电源控制器 DMA 控制器 LCD 控制器 系统集成模块 串行通信口 多媒体通信口

22

PXA255 处理器结构与特性

时钟模块: 包括以下 5 个主要时钟源:

32.768kHz振荡器 3.6864MHz振荡器 可编程频率核心 PLL 95.85MHz固定频率的外设 PLL 147.46MHz固定频率 PLL

时钟管理模块包含 3 个寄存器 核时钟设置寄存器 CCCR 时钟允许寄存器 CKEN 振荡器设置寄存器 OSCC

23

PXA255 处理器结构与特性电源管理模块 运行模式 快速模式 空闲模式

休眠,但仍监视片内片外的中断服务请求。 33MHz空闲模式

和其他空闲模式的区别:所有的外设单元都不能使用,包括 SDRAM 、LCD 和 DMA 控制器。

睡眠模式 处理器内部单元功能关闭,只有实时时钟和电源管理模块继续工作 。

24

PXA255 处理器结构与特性

GPIO 口 PXA255 可以使用和控制的 GPIO 管脚有 81 个。 使用 27 个寄存器可以配置这些 GPIO 管脚的方向

( 进或出 ) 、管脚功能、管脚的状态 (输出 ) 、管脚的高低电平检测 (输入 ) 和选择第二功能。

许多 GPIO 管脚的第二功能已经被处理器或外设配置使用。

25

PXA255 处理器结构与特性

中断控制器

26

PXA255 处理器结构与特性

实时时钟 RTC 使用实时时钟可以配置成频率很广的周期时

钟信号,通常 RTC设置 1Hz信号输出用来当作系统时间的基准。

实时时钟芯片是 RTC4513 。

27

PXA255 处理器结构与特性

DMA 控制器 (DMAC ) DMAC 有 16 个通道,从通道 0 到通道 15 。 DMA 控制器对内存的访问和 CPU 的运行完全互斥,因此在 DMA 控制器访问内存时 CPU 不访问内存。

DMA 控制器在传输数据上要比 CPU 快得多,它的操作完全由硬件驱动,只要一个时钟周期就可以完成一个字节的传输。

28

  提纲

ARM 嵌入式处理器

StrongARM 架构处理器

XScale 架构处理器

PXA255 处理器结构与特性

Xsbase255 开发系统

29

Xsbase255 开发系统

30

Xsbase255 开发系统 ---- 硬件资源 项目 描述

处理器 Intel XScale PXA255 400MHz

SDRAM Samsung 64Mbyte

Flash Intel strata flash 32MByte

以太网 CS8900A 10BaseT

声卡 AC’97 Stereo audio

显示 LG TFT LCD 6.4”( 640 * 480)

触摸屏 ADS7843 touch screen

USB Host 2 Slot

USB Slave 1 Slot

PCMCIA 1 Slot

实时时钟 Real time clock RTC4513

红外 HDSL3600

CF 1 Slot

MMC 1 Slot

31

Xsbase255 开发系统 ---- 硬件资源

存储器接口主要分成 3类: SDRAM

SDRAM 有 4块区域 静态 FLASH

静态存储器有 6块 卡存储器

卡存储器有 2块

32

Xsbase255 开发系统 ---- 硬件资源

LCD 接口 PXA255 处理器内置的 LCD 控制器支持被动 (DST

N)或主动 (TFT)模式的显示器,并支持单色或多种的彩色像点格式,支持单屏或双屏显示;

显示可以达到 1024x1024 ,推荐使用最大值 800x600 ;内置 2 个专用 DMA 通道;

Xsbase255系统使用的 LCD 是 6.4’TFT 的彩色显示屏,分辨率是 640x480 。

33

Xsbase255 开发系统 ---- 硬件资源

以太网接口 Xsbase255 开发系统采用 Cirrus Logic公司 CS890

0A 以太网芯片,是符合 IEEE802.3 协议的工业标准架构总线的以太网芯片。

高度集成了一些常用的部件,如:片内的 RAM 、 10BASE-T传输和接受过滤器、 ISA 总线接口等。

34

Xsbase255 开发系统 ---- 硬件资源

音频接口 PXA255 处理器包含 AC’97 控制单元,支持音频

控制器,通过串口传输数字音频、调制调解器、音频输入、控制寄存器和状态信息等。

Xsbase255外扩了 Cirrus Logic CS4299 用作音频解码器。

35

Xsbase255 开发系统 ---- 硬件资源

实时时钟 RTC 当关闭 Xsbase255系统电源, RTC4513 可以通过

一个电池来保持当前的时间。 系统外扩了实时时钟芯片 RTC4513 和一个纽扣电池组成 RTC 电路 。

36

Xsbase255 开发系统 ---- 硬件资源

串口 Xsbase 开发系统提供 1 个全功能的( FF , Full Functi

on )串口, 1 个蓝牙串口( BT , Bluetooth )和 1 个标准 UART (红外接口)。

使用 PXA255 中的第二功能 GPIO引脚。 全功能串口支持 Modem控制功能,最高波特率为 230.

4Kb/s 。 蓝牙串口是一个高速 UART ,最高波特率为 921.6Kb/s 。

37

Xsbase255 开发系统 ---- 硬件资源

USB 接口 Xsbase255 开发系统有 1 个 USB-Client 接口和 2

个 USB-Host 接口 ( 其中一个是mini USB 接口 ) 。 USB-Client 接口作为 USB 的从设备,与主设备如宿主机连接,用于下载数据和程序,也可以用作 USB网口来使用。

USB-Host 接口作为 USB 的主设备,用于连接 USB外设。

38

Xsbase255 开发系统 ---- 硬件资源

扩展接口 1 个 PCMCIA 接口 1 个 CF卡接口 1 个 MMC卡接口 120pin 的扩展接口。

39

Xsbase255 开发系统 ---- 软件资源项 目 描 述

操作系统 Linux 2.4.18 kernel

Bootloader Blob for PXA255

设备驱动 网口: CS8900 Ethernet

音频: AC’97 streo audio

显示: LCD Frame buffer

触摸屏: ADS7843 touch screen

USB主 /从: USB Host

PCMCIA(CF driver included)

实时时钟 RTC4513(Real Time Clock)

红外端口: IrDA

MMC卡:MMC

串口驱动: Serial Port

键盘: KeyBoard Drivers

文件系统 JFFS2

图形用户界面 Tiny X server

工具链 GNU for PXA255

调试工具 GDB Server for PXA255

40

Xsbase255 开发系统 ---- 软件资源

Flash 地址映像FLASH (32M 32bit)

Root Filesystem

Kernel Image

Reserved

Bootloader

0x0200 0000

0x001C 0000

0x000C 0000

0x0004 0000

0x0000 0000

30 MByte

1MByte

512KByte

256KByte

41

Xsbase255 开发系统 ---- 软件资源

SDRAM 地址映像SDRAM (64M 32bit)

Root Filesystem

0xA400 0000

0xA000 0000

64 MByte

42

Xsbase255 开发系统 ---- 软件资源

Windows CE ( 4.2 NET )