430 likes | 573 Views
嵌入式系统 An Introduction to Embedded System 第 3 课 PXA255 开发平台( 2 ) 陈文智 浙江大学计算机学院 2009 年 4 月. 回顾. 嵌入式处理器概述 StrongARM 架构处理器 XScale 架构处理器 PXA255 处理器结构与特性 Xsbase255 开发系统. 提纲. ARM 嵌入式处理器 StrongARM 架构处理器 XScale 架构处理器 PXA255 处理器结构与特性 Xsbase255 开发系统.
E N D
嵌入式系统 An Introduction to Embedded System 第3课 PXA255开发平台(2) 陈文智 浙江大学计算机学院 2009年4月
回顾 嵌入式处理器概述 StrongARM架构处理器 XScale架构处理器 PXA255处理器结构与特性 Xsbase255开发系统
提纲 ARM嵌入式处理器 StrongARM架构处理器 XScale架构处理器 PXA255处理器结构与特性 Xsbase255开发系统
XScale微架构处理器的时钟可以达1GHz、功耗1.6W,能达到1200MIPS,是最高端的嵌入式处理器之一XScale微架构处理器的时钟可以达1GHz、功耗1.6W,能达到1200MIPS,是最高端的嵌入式处理器之一 型号:IOP310、IOP321、PXA210 、PXA 25X、 PXA 26X、 PXA 27X 采用7/8级超级流水线 支持多媒体处理技术 指令快存(I-Cache): 32K字节 Intel XScale—采用ARMV5TE • 数据快存(D-Cache) • 微小数据快存(Mini-DCache) • 指令存储器管理单元IMMU • 动态电源管理 • 数据存储器管理单元DMMU • 中断控制器 • 总线控制器 • 1G字节/秒、ECC协议 • 调试(Debug)接口
XScale系统结构---- XScale超级流水线 • PXA255拥有7级超级流水线,主要由主流水线、MAC流水线和内存访问流水线组成。是与SA的最大不同特点之一。
XScale系统结构---- XScale超级流水线 • 主流水线 • F1/F2指令读取 • ID指令译码 • RF寄存器文件/移位级 • X1执行级 • X2执行级 • XWB写回级
XScale系统结构---- XScale超级流水线 • MAC流水线 • 执行所有的乘/累加指令。它执行40位累加寄存器acc0和能把指令值转化成普通的ARM 寄存器值。 • 当MAC在处理一条指令的时候其他的指令不允许进入到M1中,除非原来的指令在下一个周期中处理完成(非流水)。 • MAC单元执行开始于M1,接受2个32位操作数,N个周期后完成并返回寄存器文件。
XScale系统结构---- XScale超级流水线 • 内存访问流水线 • 内存流水线有D1、D2和DWB3级构成,独立完成指令的装载和存储。 • 执行完X1后开始执行D1级,计算有效的存/取地址;在D2级数据cache和小型数据cache返回目的数据;DWB级进行填入缓冲器和写入缓冲器操作。
XScale系统结构---- XScale乘/累加MAC • XScale为了多媒体的应用,支持SIMD • 例如:MIAPH指令,执行2个16x16位乘法,然后与40位累加器相加,即2个32位寄存器可以看作为2对16位寄存器,先高16位相乘并与累加器进行相加;低16位也相乘后与累加器相加,这2个结果相加后再送到寄存器文件中。
XScale系统结构---- 内存管理 • 提供内存访问保护和虚拟地址到物理地址的转换 • 支持指令TLB • 支持数据TLB (Translation Look-aside Buffer,TLB,转换搜索缓存)
XScale系统结构---- 指令Cache • 容量为32K • 32路组相联 • 每路由8个字(32字节)和一位有效位 • (思考:有几组?) • 循环替换算法
XScale系统结构---- 数据Cache • 容量32KB • 32路组相联 • 每路包含32字节和1个有效位,2个dirty位,分别对应低16位字节和高16位字节 • 采用循环替换法
XScale系统结构---- 转移目标缓冲器BTB • BTB由有128入口的直接映像cache构成 • 每个入口由TAG分支地址、DATA数据目标地址和2位历史位组成。
XScale系统结构---- 性能监视 • 提供2个32位性能计数器,对2个独立事件同时监视。 • 1个32位时钟计数器,联合性能计数器记录内核时钟数。 • 当计算突发事件时计数器将监测到一个特定事件的发生; • 当测量持续事件时计数器将记录处理器时钟周期数当指定条件为真时事件发生。 • 所有的这些计数器都有对应的IRQ和FIQ资源。 • XScale的性能监视模块可以通过协处理器CP14的寄存器0-3进行控制。
XScale系统结构---- 电源管理 • XScale合并电源管理和时钟管理来控制时钟和管理电源。 • 控制每一个运行模式的时钟频率和管理不同电源管理模式下的性能与功耗间的优化。
XScale系统结构---- 调试 • 不使用扫描部件,而是通过微小型I cache,并采用调试代理的方式进行。 • 调试单元主要包括: • 通讯控制模块 • 通过JTAG指令来建立目标机和宿主机握手 • 硬件断点模块 • 提供指令和数据断点寄存器,由协处理器控制 • 跟踪缓冲模块 • 对程序历史记录以实现恢复异常和跳转 • 代码下载模块 • 代码下载到I-Cache,调试代理程序实现读/写
提纲 ARM嵌入式处理器 StrongARM架构处理器 XScale架构处理器 PXA255处理器结构与特性 Xsbase255开发系统
PXA255处理器结构与特性 PXA255除了采用XScale内核,还具有以下特点: • 内核工作频率:200MHz、300MHz和400MHz • 系统存储器接口 • 时钟和电源控制器 • DMA控制器 • LCD控制器 • 系统集成模块 • 串行通信口 • 多媒体通信口
PXA255处理器结构与特性 • 时钟模块: • 包括以下5个主要时钟源: • 32.768kHz振荡器 • 3.6864MHz振荡器 • 可编程频率核心PLL • 95.85MHz固定频率的外设PLL • 147.46MHz固定频率PLL • 时钟管理模块包含3个寄存器 • 核时钟设置寄存器CCCR • 时钟允许寄存器CKEN • 振荡器设置寄存器OSCC
PXA255处理器结构与特性 • 电源管理模块 • 运行模式 • 快速模式 • 空闲模式 • 休眠,但仍监视片内片外的中断服务请求。 • 33MHz空闲模式 • 和其他空闲模式的区别:所有的外设单元都不能使用,包括SDRAM、LCD和DMA控制器。 • 睡眠模式 • 处理器内部单元功能关闭,只有实时时钟和电源管理模块继续工作 。
PXA255处理器结构与特性 • GPIO口 • PXA255可以使用和控制的GPIO管脚有81个。 • 使用27个寄存器可以配置这些GPIO管脚的方向(进或出)、管脚功能、管脚的状态(输出)、管脚的高低电平检测(输入)和选择第二功能。 • 许多GPIO管脚的第二功能已经被处理器或外设配置使用。
PXA255处理器结构与特性 • 中断控制器
PXA255处理器结构与特性 • 实时时钟RTC • 使用实时时钟可以配置成频率很广的周期时钟信号,通常RTC设置1Hz信号输出用来当作系统时间的基准。 • 实时时钟芯片是RTC4513。
PXA255处理器结构与特性 • DMA控制器 (DMAC ) • DMAC有16个通道,从通道0到通道15。 • DMA控制器对内存的访问和CPU的运行完全互斥,因此在DMA控制器访问内存时CPU不访问内存。 • DMA控制器在传输数据上要比CPU快得多,它的操作完全由硬件驱动,只要一个时钟周期就可以完成一个字节的传输。
提纲 ARM嵌入式处理器 StrongARM架构处理器 XScale架构处理器 PXA255处理器结构与特性 Xsbase255开发系统
Xsbase255开发系统----硬件资源 • 存储器接口主要分成3类: • SDRAM • SDRAM有4块区域 • 静态FLASH • 静态存储器有6块 • 卡存储器 • 卡存储器有2块
Xsbase255开发系统----硬件资源 • LCD接口 • PXA255处理器内置的LCD控制器支持被动(DSTN)或主动(TFT)模式的显示器,并支持单色或多种的彩色像点格式,支持单屏或双屏显示; • 显示可以达到1024x1024,推荐使用最大值800x600;内置2个专用DMA通道; • Xsbase255系统使用的LCD是6.4’TFT 的彩色显示屏,分辨率是640x480。
Xsbase255开发系统----硬件资源 • 以太网接口 • Xsbase255开发系统采用Cirrus Logic公司CS8900A以太网芯片,是符合IEEE802.3协议的工业标准架构总线的以太网芯片。 • 高度集成了一些常用的部件,如:片内的RAM、10BASE-T传输和接受过滤器、ISA总线接口等。
Xsbase255开发系统----硬件资源 • 音频接口 • PXA255处理器包含AC’97控制单元,支持音频控制器,通过串口传输数字音频、调制调解器、音频输入、控制寄存器和状态信息等。 • Xsbase255外扩了Cirrus Logic CS4299用作音频解码器。
Xsbase255开发系统----硬件资源 • 实时时钟RTC • 当关闭Xsbase255系统电源,RTC4513可以通过一个电池来保持当前的时间。 • 系统外扩了实时时钟芯片RTC4513和一个纽扣电池组成RTC电路 。
Xsbase255开发系统----硬件资源 • 串口 • Xsbase开发系统提供1个全功能的(FF,Full Function)串口,1个蓝牙串口(BT,Bluetooth)和1个标准UART(红外接口)。 • 使用PXA255中的第二功能GPIO引脚。 • 全功能串口支持Modem控制功能,最高波特率为230.4Kb/s。 • 蓝牙串口是一个高速UART,最高波特率为921.6Kb/s。
Xsbase255开发系统----硬件资源 • USB接口 • Xsbase255开发系统有1个USB-Client接口和2个USB-Host接口(其中一个是mini USB接口)。 • USB-Client接口作为USB的从设备,与主设备如宿主机连接,用于下载数据和程序,也可以用作USB网口来使用。 • USB-Host接口作为USB的主设备,用于连接USB外设。
Xsbase255开发系统----硬件资源 • 扩展接口 • 1个PCMCIA接口 • 1个CF卡接口 • 1个MMC卡接口 • 120pin的扩展接口。
Xsbase255开发系统----软件资源 • Flash地址映像
Xsbase255开发系统----软件资源 • SDRAM地址映像
Xsbase255开发系统----软件资源 • Windows CE (4.2 NET )