PowerPC简介及编程要点.doc

上传人:sk****8 文档编号:3520467 上传时间:2019-06-01 格式:DOC 页数:16 大小:145KB
下载 相关 举报
PowerPC简介及编程要点.doc_第1页
第1页 / 共16页
PowerPC简介及编程要点.doc_第2页
第2页 / 共16页
PowerPC简介及编程要点.doc_第3页
第3页 / 共16页
PowerPC简介及编程要点.doc_第4页
第4页 / 共16页
PowerPC简介及编程要点.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、PowerPC 简介及编程一,PowerPC 芯片PowerPC 是早期 Motorola 和 IBM 联合为 Apple 的 MAC 机开发的 CPU 芯片,商标权同时属于 IBM 和 Motorola,并成为他们的主导成品.IBM 主要的 PowerPC 产品有 PowerPC604s(深蓝内部的 CPU), PowerPC750,PowerPCG3(1.1GHz).Motorola 主要有 MC 和 MPC 系列.尽管他们产品不一样,但都采用 PowerPC 的内核.这些产品大都用在嵌入式系统中. Motorola 的 MPC860 简介MPC860 PowerQUICC (Quad I

2、ntegrated Communications Controller) 内部集成了微处理器和一些控制领域的常用外围组件, 特别适用于通信产品. 包括器件的适应性, 扩展能力和集成度等. MPC860 PowerQUICC 集成了两个处理块. 一个处理块是嵌入的 PowerPC 核, 另一个是通信处理模块( CPM, Communications Processor Module), 通信处理模块支持四个串行通信控制器(SCC, Serial Communication Controller), 实际上它有八个串行通道: 四个SCC,两个串行管理控制器 (SMC, Serial Managem

3、ent Channels), 一个串行外围接口电路 ( SPI, Serial Peripheral Interface ) 和一个 I2C( Inter-Integrated Circuit ) 接口. 由于 CPM 分担了嵌入式 PowerPC 核的外围工作任务, 这种双处理器体系结构功耗要低于传统的体系结构的处理器. 单出口, 嵌入式 PowerPC 核 32 比特版本(与 PowerPC 结构定义完全兼容)32x32 位通用寄存器(GPRs, General Purpose Registers) o 4K 数据 Cache 和 4K 指令 Cache, 分别带有一个 MMU. o 存储

4、管理单元(MMU)32-输入翻译后备缓冲器 ( TLBs ) o 32 位数据,地址线 存储控制器(八个存储体) o 单线存储模块无逢接口,静态随即存取存储器(RAM), EPROM, FLASH MEMORY 或 DRAM 等。 o DRAM 控制器可编程支持绝大多数不同大小和速度的存储器 o 不同码组长度 32K 至 256M 四个 16 位定时器或两个 32 位定时器. 系统集成单元 ( SIU, Sytstem Intergration Unit ) 主要包括: o 软件看门狗 o 中断定时器 o PowerPC 时基和实时时钟 (RTC, Real Time Clock ) o 复位

5、控制器 o JTAG 1149.1 测试口 中断系统包括 7 根外部中断请求线, 12 个具有中断能力的管脚, 16 个内部中断源. 中断优先级可编程 通信处理器模块(CPM)主要包括: o RISC 控制器 o 5 K 字节双口 RAM o 16 个串行 DMA (SDMA) 通道 o 三个平行 I/O 寄存器 四个波特率独立的发生器, 可以连接到任意一个 SCC 和 SMC, 并允许运行中改变. 支持自动波特率 四个串行通信控制器 (SCC) ,支持以太网, HDLC/SDLC, HDLC 总线(用以实现基于 HDLC 的局域网)、AppleTalk, 7 号信令系统, UART、BISY

6、NC, 比特流透明传输, 基于帧的透明传输 (CRC 可选), 支持 PPP (Point to Point Protocol)的异步 HDLC 等标准协议 两个串行管理控制器 (SMC), UART 方式或透明传输, 含 GCI(General Circuit Interface)控制器, 可以连到时分复用通道 一个串行外围接口电路( SPI ), 是 MC68302 SCP 的扩展, 支持主从模式, 支持同一总线上多主操作 一个 I2C ( Inter-Integrated Circuit ) 接口,支持主从模式, 支持多主环境 单插座 PCMCIA-异步终端适陪器(ATA)接口 o 单

7、PCMCIA 插座 o 八储存或有效输入/输出 (I/O)窗口 Performance Frenquency (MHz)TIMER Data BusAddress BusExt IntterruptsInt InterruputsWatchdog PACKING52MIPS 40MHz40 Four 16-Bit Timers or Two 32-Bit Timers8/16/32 32 12 16 Software WatchdogBGA357IBM 的 PowerPC405GP 芯片简介 编程示例可参见 系统初始化 PCI 设备初始化和网络分析32 位 RISC 嵌入式 CPU,内核主频达

8、到 200MHz PC-100,动态随即存储接口(Synchronous DRAM Interface). 100MHz 外围设备总线(External Peripheral Bus) Flash ROM/Boot ROM 接口 支持 8-16-32 位 SRAM 和外设 8 个 Devices 支持外部控制 DMA-,支持外设, 内部 UART 和内存,4 个通道PCI 总线接口-可设置同步,异步内置时钟以太网(Ethernet)-支持 10/100Mbps 全双工(Full-duplex)媒介独立接口(Medium Independent Interface(MII)可编程中断控制器(Pr

9、ogrammable Interrupt Controller)-支持来自不同资源的中断 支持 24 个中断,7 个外部中断,17 个内部中断 边沿触发或上下沿触发 . CPU 一次只能处理一个中断, 共有 18 个中断优先级(priority order)32 位地址线可达 4GB 的寻址空间主要控制器包括: SDRAM 存储控制器,外部设备总线控制器(EBC),DMA 控制器,UART,IIC 总线接口,通用寄存器控制器(General Purpose I/O Controller),通用中断控制器(Universal Interrupt Controller, UIC), JTAG.两个

10、总线分别支持不同的外设 64 位,100M Processor Local Bus(PLB),支持 high performance 外设 32 位,50M On-chip Perpheral Bus(OPB),支持 less performance-critical 外设 先进的功能 PCI 接口 内部集成以太网口(Ethernet port on-chip) Code pack decompression to improve code density 驱动 PowerPC405GP 的 PowerPC405B3 内核包括 200MHz CPU 内核 内存管理单元(Memory Manna

11、nagement Unit,MMU) 16K 指令缓村(instruction caches) 和 8K 数据缓存(data caches) Multiply-Accumulate (MAC)功能 计时器(Timers) 调试,JTAG 和 Trace debug logic 内核带有 4K 的 SRAM 一个 64 位累加计时器, 由 CPU 时钟驱动三个计时器:可编程内部计时器 (Programmable Internal Timer,PIT),固定内部计时器(Fix Internal Timer,FIT),看门狗计时器(Watch Dog Timer,WDT)二,VxWorks 装入 P

12、owerPC 的过程RISCWatch 是一套软件和硬件开发工具, 主要为 IBM PowerPC 600/700 系列微处理器和 IBM PowerPC 400 系列嵌入式处理器提供软硬件, 开发, 调试. 开发板 JTAG 口 (一般开发版都会甩出一个 JTAG 接口供开发调试用 ) 连出一个 2*8 针的接头与 RISCWatch 的仿真器端相连, 仿真器另一端通过网络连到装有 RISCWatch 软件的 PC 机. 不同种类的处理器 JTAG 管脚的定义不同, 所以和 2*8 针的接头连接也不同 , 具体连结方法参见 RISCWatch 用户手册. 通过软件和一个配套的硬件仿真器将 V

13、xWorks image 写入 512K 的 Flash Socket. RISCWatch 一端接板子上的 JTAG 接口, 另一端接网络 Network. RISCwatch 的执行过程顺序: 初始化 RAM-清理 ROM-写 VxWorks image .bin 到 FlashRom用 RISCwatch 装入 VxWorks 的操作过程1.运行 RISCwatch: 打开 file-command file-flashwri.cmd 2.开启 Normal 初始化 RAM, 在编辑框中键入 run, 开始向 FlashRom 中写入Bootrom.bin,写入完成,键入 stop,至此

14、写入完成系统复位后, VxWorks 运行,讲程序写入 RAM 中的各个地址RISCwatch 中的文件定义文件 rwppc.env: 可更改,如 chip type, PC405GP 等文件 : 可以察看,改变,如 IP 地址,load., .out, .bin文件 flashprog.c: 输出生成 .out, 是写 flash Rom 的文件, 写入 .bin三,调试工具及调试方法底层驱动调试 RISCWATCH 是一种很好的调试工具,观察内存情况及程序运行.通过计算机串口与处理器 UART 相连,设置计算机的超级终端(Hyper Terminal), 通过超级终端察看硬件情况(寄存器设

15、置,数据等)和程序运行情况,当然程序重要加入向 UART 送出数据的指令,用 Beep 报警也是经常用的.这种调试方法是用于底层调试硬件,找出硬件存在的问题.VxWorks 在 Tornado Shell 不能正常运行前,也是采取这种方法来调试程序,不过一般不是硬件问题,而是 BSP 中存在的问题,需要根据硬件,修改 BSP.以上是 Shell 不能正常运行是所采取的方法,Shell 正常运行后,Shell 是最好的调试工具.上层应用程序调试跟踪Tornade2.0 中 Debuger 和 Shell 是最好的调试工具,可以单步执行跟踪程序运行,观察内存情况和系统资源情况.其中 Shell 的

16、功能要好于 Debuger,不过Debuger 操作较为容易,直观.四,内存映射MPC860 的内存资源(如寄存器等)映射在一个连续的 16K Block 存储区内,可通过SPR 中的 Internal Map Memory Register(IMMR)进行解析对 Memory Registers 操作的几种方式Indirectly Access Registers Via Memory-通过指定的 I/O 寄存器(I/O port)对一个寄存器操作,如 PCI 部分 I/O 操作示例如下:PCI 地址 I/O 寄存器: PCICFGADR 0xEEC00000PCI 数据 I/O 寄存器:

17、PCICFGDATA 0xEEC00004具体操作方法:将所要读写的寄存器地址写入 PCI 地址 I/O 寄存器 PCICFGADR,从 PCI 数据 I/O 寄存器 PCICFGDATA 读出数据,这个数据就是写入地址的寄存器的数据.RegAddr = 0x80000000 | (offset|BusDevFunc) RegAddr 寄存器地址, 0x80000000 PCI core Address, offset 寄存器偏移量/* 写 RegAddr 到 PCI I/O 地址寄存器 PCICFGADR*/sysPciOutLong(PCICFGADR, RegAddr);/* 从 PCI

18、 I/O 数据寄存器读 RegAddr 数据 data*/data = (unsigned int)sysPciInByte(PCICFGDATA | (offset Directly Access Registers Via Memory-直接对寄存器操作Indirectly Access Registers Via DCR-同上,Directly Access Regesters Via DCR-同上,五,PowerPC 内核定义双处理器结构既提供了程序运行的通用处理器,又提供了用于通信用处的特殊通信处理器(CPM).32 位 PowerPC 结构特点o 32 个 32 位通用寄存器 (

19、GPRs ) o 寄存器支持用户级指令集 (不包括浮点指令),包括 integer exception register (XER ),condition register(CR),link register(LR),counter register ( CTR ) o 时间加减及寄存器 o 管理级寄存器,与 PowerPC 定义兼容 o Configuration-Machine Status Register ( MSR ) o Exception model-Save/restore registers 0 and 1 (SRR0 and SRR1), DSI status regist

20、er ( DSISR ), data address register ( DAR ) o PowerPC 减量器 o PowerPC 时基和 实时时钟(RTC) 地址映射 名称 内存物理地址 备注SDRAM 0x000000000x7FFFFFFFPCI 0x800000000xEF5FFFFFInternal Peripherals 0xEF6000000xEFFFFFFFUART . .External Peripherals 0xF00000000xFF7FFFFFNVRAM/RTC 0xF00000000xF0001FFF (8K)下画线为片选Keybord/Mouse 0xF01000000xF0100001 下画线为片选FPGA_INT_ST. 0xF03000000xF0300000 下画线为片选FPGA_INT_EN. 0xF03000010xF0300001 下画线为片选Socket Flash 0xFFF800000xFFFFFFFF 512KSRAM 0xFFF000000xFFF7FFFF 512K(可通过 Swich 与Socket Flash 切换) 中断优先级(Exception Priority)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。