文档详情

嵌入式系统3-CPU.ppt

发布:2017-03-07约4.81千字共51页下载文档
文本预览下载声明
CPU 指令系统不等于CPU设计 CPU设计还需要考虑 性能 功耗 I/O 存储 一、输入输出 用户不会购买无I/O的计算机 用户更关心“响应时间”性能 I/O子系统的性能直接影响整个系统的性能 1.寄存器与IO 设备通常有 数据寄存器 状态寄存器 控制寄存器 示例:8251 UART UART:通用异步收发器 进行串行通信 每个字符的传输有起始位0与结束位1 波特率 CPU初始化UART的模式寄存器 波特率 每字符位数 奇偶校验 结束位长度 UART有一个8位寄存器 缓存UART与CPU之间的字符 状态寄存器: 发送器就位信号:Transmitter Ready 发送器空信号:Transmitter Empty 接收器就绪:Receiver Ready 2、输入输出原语 两种途径进行IO编程 IO指令(x86方法) 内存映射(较普通) 内存映射:统一内存编址 1)ARM上的内存映射 DEV1 EQU 0x1000 EQU伪操作 ADR r1, #DEV1 LDR r0, [r1] ;读设备1 MOV r0,#8 STR r0, [r1] ;写设备1 2)Sharc上的内存映射 规定:内存映射IO必须在0x400000开始的外存 I0=0x400000 M0=0 R1=DM(I0,M0) 3、使用IO的方式1 轮询:使用IO的最基本方式 IO与CPU的速度差异 中断:异步 1)轮询 忙等状态 设备忙于写时为1 写事务完成为0 类似操作系统的信号量 2)中断 I/O设备需要CPU控制操作时,才向CPU发中断请求。 CPU在等待设备期间可以处理其他工作 。 ARM中的中断 2种 快速中断请求FIQ 中断请求IRQ 前者优先级高 ARM中断响应流程 保存PC 将CPSR复制到SPSR 强制CPSR的位记录下中断 强制PC指向中断向量 ARM中断结束流程 恢复PC 用SPSR回复CPSR SPSR:保持程序状态寄存器 清除中断禁用标志 ARM需要的最坏时间延时 2cc响应同步外部请求 最多20cc完成当前指令 3cc让数据异常中止 2cc进入中断处理状态 SHARC的中断 3种类型 带优先级的中断 向量化中断请求 可屏蔽中断 每中断调用中断处理子例程 一般指令,外部中断延时4cc 中断处理 输出相应的中断向量地址 Pc压入pc堆栈 根据中断类型将ASTAT或MODE1寄存器压入状态堆栈 改变当前中断屏蔽指针显示当前的中断嵌套状态 RTI指令工作 恢复PC 如果需要,弹出状态堆栈中的内容 清除中断锁存器与屏蔽寄存器相应值 二、管态、异常与陷阱 1)管态 用户态与管态 ARM有管态,SHARC没有 ARM让cpu进入管态命令: SWI CODE_1 通过CPSR指示在管态,后5位为1,处于管态时CPSR的内容用SPSR存贮 2)异常:内部错误 3)陷阱 又称软件中断 ARM中利用SWI进入管态,进入陷阱 SHARC提供3级软件中断,通过设置IRPTL寄存器的几位来激活 三、协处理器 协处理器:附接在CPU上实现部分指令 浮点协处理器 主CPU与协处理器的协调 ARM使用了协处理器 ARM体系结构提供最多16个协处理器 1,2号协处理器可以是浮点协处理器 提供8个80位浮点寄存器,浮点状态寄存器和一个可选的浮点状态寄存器 四、存储系统 内存速度太低 大量使用cache Mmu进行地址转换 1、高速缓存控制器 3、cache性能 4、多级cache 一级cache离cpu最近 片上 二级cache为一级cache提供数据 片外 5、Cache组织形式 直接映象(direct mapped):主存的一块只能对应Cache的一特定行。 J = I MOD m (主存块号) (Cache 总块数) 全关联映象(fully associative): 主存中的一块能对应到Cache中的任意一行 组关联映象(set associative): 主存中的一块能对应到Cache中一个特定组中的任意一行上。若组中有n个块,则称其为 n路组关联。 J(组号) = I MOD G (Cache总组数) 注意:直接映象和全关联映象是组关联的特例: 直接: 直接映象是:1 路组关联 全相联:全相联是:m路组关联 6、映象机构:判定是否命中Cache,如何访问? 标志存储器+数据存储器 每行还有控制位:有效位、修改位(脏位) CPU地址组成:标志+索引+块内偏移 关联程度越高,索引位越小 7、替换策略 随机替换策略(R
显示全部
相似文档