嵌入式原理_第2章_第1页
嵌入式原理_第2章_第2页
嵌入式原理_第2章_第3页
嵌入式原理_第2章_第4页
嵌入式原理_第2章_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章嵌入式系统体系结构 2 1ARM处理器系列2 2ARM9微处理器概况及特点2 3ARM9的异常2 4ARM9的寻址方式2 5S3C2410嵌入式微处理器 目前 ARM处理器体系结构的版本有多个 世界上许多电子芯片制造厂商基于不同版本的ARM体系结构生产出了多种系列的ARMCPU 主要有以下系列 ARM7系列 ARM9系列 ARM9E系列 ARM10E系列 SecurCore系列 Intel的StrongARM Intel的Xscale 2 1ARM9处理器系列 2 2ARM9微处理器概况及特点 1 概况ARM9系列微处理器是低功耗的32位RISC结构 最适合要求低成本 低功耗的消费类应用产品 是目前应用最广泛 高性价比的嵌入式处理器 国际许多著名的IT芯片制造公司 基于ARM9处理器核生产了多种微控制器芯片 如三星公司的S3C2410 Atmel公司的AT91RM9200 Intel公司的PXA255 Motorola公司的MC9328 CirrusLogic公司的EP93XX系列 等等 ARM9系列嵌入式微处理器主要有ARM9TDMI ARM9E S等系列 常用的一种ARM920T处理器核是在ARM9TDMI处理器内核基础上 增加了指令Cache和数据Cache 并带有相应的存储器管理单元MMU及CP15等 2 ARM9处理器的特点五级流水线结构 工作模式 存储方式 指令集特点 1 五级流水线结构ARM920T微处理器的指令流水采用了典型的RISC五级流水线结构 将指令执行过程分为取指 译码 执行 访存和写回5个步骤 五级流水线结构采用分离指令cache和数据cache 将每一个指令处理分配到5个时钟周期内 在每一个时钟周期内同时可能有5个指令在执行 消除了指令执行的性能瓶颈 加快了指令执行速度 ARM9体系结构的五级流水线 ARM9中1条指令的执行可以分为如下几个阶段 1 取指 从存储器中取出指令 并将其放入指令流水线 2 译码 对指令进行译码 3 执行 执行运算ALU exe 4 访存 缓冲 数据 如果需要 则访问数据存储器 否则ALU的结果只是简单地缓冲1个时钟周期 以便所有的指令具有同样的流水线流程 5 回写 将指令产生的结果回写到寄存器 包括任何从存储器中读取的数据 ARM9中多条指令的执行情况 ARM920T核内部具有指令缓存和数据缓存 允许处理器同时进行取指和读写数据操作 数据可以是8位 字节 16位 半字 32位 字 字必须以4字节边界对准 半字必须以2字节边界对准 2 ARM9工作模式 ARM9微处理器核共支持7种工作模式 他们的名称及意义如表所示 不同的工作模式下 算术运算及逻辑运算等操作所使用的通用寄存器组不同 控制硬件资源不同 即为不同模式 异常模式 特权模式 ARM9工作模式表 大多数的应用程序运行在用户模式下 当处理器运行在用户模式下时 某些被保护的系统资源是不能被访问的 除用户模式以外 其余的所有6种模式称之为非用户模式 或特权模式 除去用户模式和系统模式以外的5种又称为异常模式 常用于处理中断或异常 以及需要访问受保护的系统资源等情况 ARM9TDMI处理器核的运行 工作 模式改变 通过软件的控制改变通过外部中断或异常处理改变 当某种异常发生时 ARM9TDMI处理器核即进入相应的工作模式 例如 若发生了IRQ中断并响应IRQ中断 则ARM9TDMI核将进入IRQ模式 每种工作模式下均有其附加的某些寄存器 因此 即使有异常情况发生 异常模式下的处理程序也不至于破坏用户模式的数据及状态 3 ARM9的存储方式 ARM920T核允许32位长的地址 它把存储器看成是0地址开始的字节 8位二进制数 的线性组合 即一个地址对应于一个存储字节 其范围是232个字节 存储容量 232 4GB字节 1 存储形式大端存储和小端存储ARM9存储器系统的存储单元与地址的对应方式有两种 一种是大端存储系统 如图2 2所示 另一种是小端存储系统 如图2 3所示 大端存储系统中 字的地址对应的是该字中最高有效字节所对应的地址 半字的地址对应的是该半字中最高有效字节所对应的地址 也就是说 32位数据的最高字节存储在低地址中 而其最低字节则存放在高地址中 小端存储系统中 字的地址对应的是该字中最低有效字节所对应的地址 半字的地址对应的是该半字中最低有效字节所对应的地址 也就是说 32位数据的最高字节存储在高地址中 而其最低字节则存放在低地址中 小端存储模式是ARM9处理器的默认模式 ARM9汇编指令集中 没有相应的指令来选择是采用大端存储系统还是小端存储系统 但可以通过硬件输入引脚来配置它 字对准ARM9的每个地址是对应于一个存储字节而不是一个存储字 但ARM9可以访问存储字 访问存储字时 其地址应该是字对准的 既字地址可以被4整除 半字对准 即字地址可以被2整除 程序中若遇到分支指令大多数是通过把指令中的偏移量加到PC寄存器的值上来计算目的地址 然后把计算结果写回到PC寄存器 此时PC寄存器中的值就不再是顺序的 从而实现了程序分支 目的地址的计算公式如下 目的地址 当前执行的指令地址 8 偏移量 2 I O端口的访问方式 I O端口的访问有两种方式 端口地址和存储器统一编址 即存储器映射方式 I O端口地址与存储器分开独立编址 即I O映射方式 ARM9体系结构使用存储器映射方式实现I O端口的访问 即从存储器映射的I O加载即是输入 而向存储器映射的I O地址存储即是输出 3 内部寄存器 ARM9处理器的内部寄存器 总共有37个32位的寄存器 其中31个用作通用寄存器 6个用作状态寄存器 每个状态寄存器只使用了其中的12位 这37个寄存器根据处理器的状态及其工作模式的不同而被安排成不同的组 程序代码运行时涉及的工作寄存器组是由RAM9微处理器的工作模式确定的 通用寄存器R0 R15称为通用寄存器 其中 R0 R7是不分组的寄存器 R8 R14是根据工作模式进行分组的寄存器 R15是程序计数器 也是不分组的 1 未分组 R0 R7 R15 R16寄存器是不分组的 在所有的工作模式下 它们物理上是同一个寄存器 2 分组 R8 R14是分组寄存器 它们中的每一个寄存器根据当前工作模式的不同 所访问的寄存器实际可能不是同一个物理寄存器 R13寄存器的作用通常是堆栈指针 又称为SP 每种异常模式都有对应于该模式下的R13物理寄存器 R14寄存器可用作子程序链接寄存器 又称为LR LinkRegister 当ARM9处理器执行带链接的分支指令 如 BL指令 时 R14保存R15的值 当异常发生时 相应的寄存器分组R14 svc R14 abt R14 und R14 irq和R14 fiq用来保存R15的返回值 LR寄存器作用示意图 R15寄存器的功能是程序计数器 又称为PC 在ARM状态下 R15寄存器的 1 0 位为0b00 31 2 位是PC的值 CPSR寄存器称为当前程序状态寄存器 又称为R16 在所有处理器模式下 CPSR都是同一个物理寄存器 它保存了程序运行的当前状态 在各种异常模式下 均有一个称为SPSR的寄存器用于保存进入异常模式前的程序状态 即当异常出现时 SPSR中保留CPSR的值 CPSR和SPSR均为32位的寄存器 其格式如下 1 条件码标志N negative Z zero C carry 和V overflow 位称为条件码标志 简称为标志 CPSR中的标志可用于检测以决定指令是否执行 2 控制位程序状态寄存器的最低8位I F T和M 4 0 用做控制位 当异常出现时改变控制位 处理器在特权模式下也可用软件改变 I和F是中断禁止位 I置1时禁止IRQ中断 F置1时禁止FIQ中断 T位T 0时指示ARM执行 T 1时指示Thumb执行 表2 4模式位 M0 M1 M2 M3和M4是模式位 这些位决定处理器的工作模式 如表2 4所示 表中未列出的模式位的组合是不可用的 4 ARM9指令集特点 ARM9的指令集是依据RISC原理而设计的 指令集和相关译码机制较为简单 ARM9的指令系统中有一种16位的指令集 Thumb指令集 16位体系结构与32位体系结构比较而言 在操作32位数据时的性能大约只有32位体系结构的一半 且有效的寻址空间相对较小 而Thumb指令集在32位体系结构中实现了16位指令集 以提供比16位体系结构更高的性能和更高的代码密度 Thumb指令集概况ARM指令集为32位指令集 可以实现ARM架构下所有功能 Thumb指令集是对32位ARM指令集的扩充 它的目标是为了实现更高的代码密度 Thumb指令集实现的功能只是32位ARM指令集的子集 它仅仅把常用的ARM指令压缩成16位的指令编码方式 在指令的执行阶段 16位的指令被重新解码 完成对等的32位指令所实现的功能 Thumb指令的操作是在标准的ARM寄存器下进行的 在ARM指令代码和Thumb指令代码之间可以方便地进行切换 并具有很好的互操作性 在执行时 16位的Thumb指令透明地实时解压缩成32位的ARM指令 并没有明显的性能损失 因此 使用Thumb指令以16位的代码密度可以得到32位处理器性能 从而节省了存储空间和硬件成本 Thumb指令集的16位指令代码长度大约是标准ARM指令代码密度的两倍 因而可以在16位存储系统上运行 ARM指令集与Thumb指令集比较与ARM指令集相比较 在Thumb指令集中 数据处理指令的操作数仍然是32位的 指令地址也为32位 但Thumb指令集为实现16位的指令长度 舍弃了ARM指令集的一些特性 如大多数Thumb指令是无条件执行的 而几乎所有的ARM指令都是有条件执行的 大多数的Thumb数据处理指令的目的寄存器与其中一个源寄存器相同 与全部采用ARM指令集的方式相比 使用Thumb指令可以在代码密度方面改善大约30 但这种改进是以代码的效率为代价的 尽管每个Thumb指令都有相对应的ARM指令 但是 执行相同的功能 需要更多的Thumb指令才能完成 因此 当指令预取需要的时间没有区别时 ARM指令相对Thumb指令具有更好的性能 开发者在进行系统设计的时候需要综合考虑成本 性能和功耗等因素 如果在一个系统中综合使用ARM指令和Thumb指令 充分发挥各自的优点 就能在成本 性能和功耗等因素上取得较好的平衡 两种工作状态 从ARM9处理器核所执行的程序代码的角度来看 有ARM状态和Thumb状态 ARM状态下 处理器核执行32位的 字对齐的ARM指令 在Thumb状态下 处理器核执行16位的 半字对齐的Thumb指令 状态切换在程序的执行过程中 ARM9处理器核可以随时在两种工作状态之间切换 并且处理器工作状态的改变不影响处理器的工作模式和相应寄存器中的内容 ARM处理器核在上电或复位并开始执行程序代码时 应该处于ARM状态 状态切换的情况三种 1 当操作数寄存器的状态位 位0 为1时 可以采用执行BX指令的方法 使ARM处理器从ARM状态切换到Thumb状态 2 当操作数寄存器的状态位 位0 为0时 执行BX指令可以使ARM处理器从Thumb状态切换到ARM状态 3 另外 在处理器进行异常处理时 将PC指针放入异常模式链接寄存器中 并从异常向量地址开始执行程序 也可以使处理器切换到ARM状态 2 3ARM9的异常 只要正常的程序流程被暂时停止 则异常发生 或者说 异常是由内部或外部产生一个引起处理器处理的事件例如 外部中断或处理器执行一个未定义的指令都会引起异常 在处理异常之前 处理器状态必须保留 以便在异常处理程序完成后 原来的程序能够重新执行 同一时刻可能会出现多个异常 ARM支持7种类型的异常处理 如下表 异常出现后处理器强制从异常类型所对应的固定存储器地址开始执行程序 这些存储器地址称为异常向量 exceptionvectors 异常类型表 预取中止 取指令存储器中止 1 复位 处理器上一旦有复位信号输入 ARM处理器立刻停止执行当前指令 复位后 ARM处理器在禁止中断的管理模式下 从地址0 x00000000或0 xFFFF0000开始执行程序 2 未定义指令异常 当ARM处理器执行协处理器指令时 它必须等待任一外部协处理器应答后 才能真正执行这条指令 若协处理器没有响应 就会出现未定义指令异常 另外 试图执行未定义的指令 也会出现未定义指令异常 3 软件中断异常 软件中断异常指令SWI进入管理模式 以请求特定的管理函数 4 预取中止 存储器系统发出存储器中止 abort 信号 响应取指激活的中止标记所取的指令无效 若处理器试图执行无效指令 则产生预取中止异常 若指令未执行 则不发生预取中止 5 数据中止 存储器系统发出存储器中止信号 响应数据访问激活中止标记的数据无效 6 IRQ 中断请求 通过处理器上的IRQ输入引脚 由外部产生IRQ异常 IRQ异常的优先级比FIQ异常的低 当进入FIQ处理时 会屏蔽掉IRQ异常 7 FIQ 快速中断请求 通过处理器上的FIQ输入引脚 由外部产生FIQ异常 异常的优先级 在某时刻可能会同时出现多个异常 ARM处理器则按优先级的高低顺序处理 异常的优先级如表所示 从表中可知 复位异常的优先级最高 未定义异常和软件中断异常的优先级最低 异常向量 异常向量是异常服务程序的入口 在某些ARM的应用中 允许异常向量的位置由32位地址空间低端的正常位置 既0 x00000000 0 x0000001C 移到地址空间高端的另一地址范围0 xFFFF0000 0 xFFFF001C 这些改变后的地址位置称为高端向量 由ImplementationDefined决定是否支持高端向量 如果支持 则在输入硬件配置时 选择是使用正常向量还是高端向量 异常的进入 当处理一个异常时 ARM9完成以下动作 1 将下一条指令的地址保存在相应的LR寄存器中 如果异常是从ARM状态进入 则保存在LR中的是下一条指令的地址 如果异常是从Thumb状态进入 则保存在LR中的是当前PC的偏移量 2 将CPSR复制到相应的SPSR中 3 迫使CPSR模式位M 4 0 的值设置成对应的异常模式值 4 迫使PC从相关的异常向量取下一条指令 5 也可以设置中断禁止位来阻止其他无法处理的异常嵌套 如果在异常发生时处理器是在Thumb状态下 那么当用中断向量地址加载PC时 自动切换进入RAM状态 异常的退出 在完成异常处理后 ARM9完成以下动作 1 将LR寄存器的值减去相应的偏移量 偏移量根据异常的不同而不同 送到PC中 2 将SPSR复制回CPSR中 3 清除中断禁止位标志 下表总结了进入异常处理时保存在相应的R14寄存器中的PC值 以及在退出异常处理时推荐使用的指令 2 4ARM9的寻址方式 寻址方式是根据指令中给出的地址码字段来寻找真实操作数地址的方式 ARM处理器支持的基本寻址方式有以下几种 1 寄存器寻址所需要的值在寄存器中 指令中地址码给出的是寄存器编号 既寄存器的内容为操作数 例如指令 ADDR0 R1 R2 R0 R1 R2 2 立即寻址立即寻址是一种特殊的寻址方式 指令中在操作码字段后面的地址码部分不是操作数地址 而是操作数本身 例如指令 ADDR3 R3 1 R3 R3 1 3 寄存器移位寻址寄存器移位寻址方式是ARM指令集中所特有的 第二个寄存器操作数在与第一个操作数结合之前 选择进行移位操作 例如指令 ADDR3 R2 R1 LSL 3 R3 R2 8 R1 4 寄存器间接寻址指令中的地址码给出某一通用寄存器的编号 在被指定的寄存器中存放操作数的有效地址 而操作数则存放在该地址对应的存储单元中 即寄存器为地址指针 例如指令 LDRR0 R1 R0 R1 5 变址寻址变址寻址就是将基址寄存器的内容与指令中给出的偏移量相加 形成操作数有效地址 变址寻址用于访问基址附近的单元 包括基址加偏移和基址加索引寻址 寄存器间接寻址是偏移量为0的基址加偏移寻址 基址加偏移寻址中的基址寄存器包含的不是确切的地址 基址需加 或减 最大4KB的偏移来计算访问的地址 例如指令 LDRR0 R1 4 R0 R1 4 6 多寄存器寻址一次可以传送几个寄存器的值 允许一条指令传送16个寄存器的任何子集 例如指令 LDMIAR1 R0 R2 R5 R0 R1 R2 R1 4 R5 R1 8 由于传送的数据项总是32位的字 基址R1应该字对准 7 堆栈寻址堆栈是一种按特定顺序进行存取的存储区 这种特定顺序既是 先进后出 或 后进先出 堆栈寻址是隐含的 它使用一个专门的寄存器 堆栈指针 指向一块存储器区域 栈指针所指定的存储单元就是堆栈的栈顶 堆栈可分为两种 向上生长 又称递增堆栈 既地址向高地址方向生长 向下生长 又称递减堆栈 既地址向低地址方向生长 8 块拷贝寻址块拷贝寻址指令是一种多寄存器传送指令 多寄存器传送指令用于把一块数据从存储器的某一位置拷贝到另一位置 块拷贝指令的寻址操作取决于数据是存储在基址寄存器所指的地址之上还是之下 地址是递增还是递减 并与数据的存取操作有关 9 相对寻址相对寻址是变址寻址的一种变通 由程序计数器PC提供基地址 指令中的地址码字段作为偏移量 两者相加后得到操作数的有效地址 偏移量指出的是操作数与当前指令之间的相对位置 子程序调用指令既是相对寻址指令 2 5S3C2410嵌入式微处理器 2 5 1S3C2410及片内外围简介2 5 2S3C2410引脚信号2 5 3S3C2410专用寄存器 2 5 1S3C2410及片内外围简介 S3C2410有两个具体的型号 分别是S3C2410X和S3C2410A A是X的改进型 相对而言具有更优的性能和更低的功耗 S3C2410内含一个ARM920T内核 ARM920内核实现了ARM9TDMI 存储器管理单元MMU 哈佛Cache结构 AMBA总线的集成 MMU用于管理虚拟内存 Cache包括独立的16KB指令Cache和16KB数据Cache 每个Cache由8字长的行组成 S3C2410片内外围设备接口可以分成高速外设和低速外设两种 分别使用AHB总线和APB总线 S3C2410在包含ARM920T内核的同时 提供了丰富的片内外围资源 如图2 14所示 主要片内外围模块有 1个LCD控制器 支持4K色STN和256K色TFT带有触摸屏的液晶显示器 SDRAM控制器 3个通道的UART IrDA1 0 16字节TxFIFO 16字节RxFIFO 4个通道的DMA 4个具有脉冲带宽调制PWM PulseWidthModulation 功能的计时器和1个内部时钟 8个通道的10位ADC 触摸屏接口 集成电路互联IIC InterIntegratedCircuit 总线接口 1个USB主机接口 1个USB设备接口 2个串行外围设备SPI SerialPeripheralInterface 接口 SD接口和多媒体卡MMC MultiMediaCard 接口 117位通用I O口和24通道外部中断源 2 5 2S3C2410引脚信号 1 S3C2410芯片封装 图2 15S3C2410引脚排列底视图 S3C2410采用272脚FBGA FlipchipBallGateArray 封装形式 引脚排列底视图见图2 15所示 2410引脚信号主要有总线控制信号 各类器件及外设接口信号以及电源时钟控制信号等 并且很多引脚都是复用的 关于引脚名称 以引脚号A1为例 图中左下角 A1引脚序号所对应的引脚名称是DATA19 即数据总线的第19位 由于2410芯片引脚众多 限于篇幅 其他各引脚名称不再详述 相关内容可查阅教材附录1 或S3C2410芯片手册 2 S3C2410引脚信号介绍S3C2410引脚信号可分成地址总线 数据总线 各种接口控制信号和电源等 为叙述方便 输入 输出类型用 I O 表示 模拟输入 输出类型用 AI AO 表示 施密特触发用ST表示 电源用 P 表示 1 总线控制类信号 OM 1 0 I 启动方式选择 00 处理器从NandFlash启动 01 处理器从16位宽度的ROM启动 10 处理器从32位宽度的ROM启动 11 处理器为测试模式 ADDR 26 0 O 地址总线 输出对应存储器组的地址 DATA 31 0 I O 数据总线 总线宽度可编程为8位 16位或32位 nGCS 7 0 O 通用片选信号 控制存储器各组的访问 nWE O 写使能 当前总线周期处于写周期时有效 nOE O 输出使能 当前总线周期处于读周期时有效 nXBREQ I 总线保持请求 允许其他总线主控端请求本地总线的控制 nXBACK O 总线保持应答 有效时表示S3C2410已允许其他总线主控端控制本地总线 nWAIT I 等待信号 用来请求延长当前总线周期 低电平表示当前总线周期没有结束 若设计系统时未使用nWAIT信号 则nWAIT接上拉电阻 2 SDRAM SRAM接口信号 nSRAS O SDRRAM行地址选通信号 nSCAS O SDRRAM列地址选通信号 nSCS 1 0 O SDRRAM片选信号 DQM 3 0 O SDRRAM数据屏蔽 掩码信号 SCLK 1 0 O SDRRAM时钟信号 SCKE O SDRRAM时钟使能 nBE 3 0 O 高字节 低字节使能 在16位SRAM中使用 nWBE 3 0 O 写字节使能 3 NANDFlash接口信号 CLE O 命令锁存使能 ALE O 地址锁存使能 nFCE O NANDFlash芯片使能 nFRE O NANDFlash读使能 nFWE O NANDFlash写使能 NCON I NANDFlash配置 若不用NANDFlash控制器 则该引脚接上拉电阻 R nB I NANDFlash准备好 忙信号 若不用NANDFlash控制器 则该引脚接上拉电阻 4 通用I O端口信号 GPn 116 0 I O 通用输入 输出端口 注 某些端口只能用于输出 5 中断接口信号 EINT 23 0 I 外部中断请求 6 DMA接口信号 nXDREQ 1 0 I 外部DMA请求 nXDACK 1 0 O 外部DMA应答 7 定时器接口信号 TOUT 3 0 O 定时器输出 TCLK 1 0 I 外部定时器时钟输入 8 UART接口信号 RxD 2 0 I UART接收数据 TxD 2 0 O UART发送数据 nCTS 1 0 I UART清除发送 nRTS 1 0 O UART请求发送 UCLK I O 时钟信号 9 IIC接口信号 IICSDA I O IIC总线数据 ICSCL I O IIC总线时钟 10 IIS接口信号 IISLRCK I O IIS总线通道选择时钟 IISSDO O IIS总线串行数据输出 IISSDI I IIS总线串行数据输入 IISSCLK I O IIS总线串行时钟 CDCLK O CODEC编解码系统时间 11 USB接口信号 DN 1 0 I O USB主机的DATA 需接15K下拉电阻 DP 1 0 I O USB主机的DATA 需接15K下拉电阻 PDN0 I O USB设备的DATA 需接470K下拉电阻 PDP0 I O USB设备的DATA 需接15K上拉电阻 12 SPI接口信号 SPIMISO 1 0 I O 当SPI配置为SPI的主设备时 SPIMISO是主设备的数据输入线 当SPI配置为SPI的从设备时 SPIMISO是从设备的数据输出线 SPIMOSI 1 0 I O 当SPI配置为SPI的主设备时 SPIMISO是主设备的数据输出线 当SPI配置为SPI的从设备时 SPIMISO是从设备的数据输入线 SPICLK 1 0 I O SPI时钟信号 nSS 1 0 I SPI片选信号 仅用于从设备方式 13 SD存储卡接口信号 SDDAT 3 0 I O SD接收 发送数据 SDCMD I O SD接收响应 发送命令 SDCLK O SD时钟信号 14 ADC接口信号 AIN 7 0 AI A D转换输入 若不使用 引脚需接地 Vref AI 参考电压 15 LCD数据及控制信号 VD 23 0 O LCD数据总线 STN TFT SECTFT LCD PWREN O LCD屏电源使能控制信号 STN TFT SECTFT VCLK O LCD时钟信号 STN TFT VFRAME O LCD帧信号 STN专用 VLINE O LCD行信号 STN专用 VM O 改变行和列的电压极性 STN专用 VSYNC O 垂直同步信号 TFT专用 HSYNC O 水平同步信号 TFT专用 VDEN O 数据使能信号 TFT专用 LEND O 行结束信号 TFT专用 STV O LCD屏控制信号 垂直启动脉冲 三星SECTFT专用 CPV O LCD屏控制信号 垂直移位脉冲 三星SECTFT专用 LCD HCLK O LCD屏控制信号 水平采样时钟 三星SECTFT专用 TP O LCD屏控制信号 源驱动器数据加载脉冲 三星SECTFT专用 STH O LCD屏控制信号 水平启动脉冲 三星SECTFT专用 LCDVF 2 0 O LCD时序控制信号 三星SECTFT或特殊的TFT专用 16 触摸屏接口信号 nXPON O 加X轴开关控制信号 XMON O 减X轴开关控制信号 nYPON O 加Y轴开关控制信号 YMON O 减Y轴开关控制信号 17 JTAG接口信号 nTRST I TAP控制器复位信号 若使用调试器 需接10K上拉电阻 若不使用调试器 通常将nTRST接至nRESET引脚 TMS I TAP控制器模式选择信号 用于控制TAP控制器状态序列 需接10K上拉电阻 TCK I TAP控制器时钟信号 需接10K上拉电阻 TDI I TAP控制器数据输入 用于测试指令和数据的串行输入线 需接10K上拉电阻 TDO O TAP控制器数据输出 用于测试指令和数据的串行输出线 18 复位 时钟和电源控制信号 nRESET ST 复位信号 在处理器电源稳定后 该信号需保持低电平至少4个FCLK周期 nRSTOUT O 复位输出 用于外部设备的复位控制 nRSTOUT nRESET nWDTRST SW RESET PWREN O 2 0V内核电源开关控制信号 nBATT FLT I 电池状态检测 低电压状态时不唤醒掉电模式 OM 3 2 I 时钟信号模式 00b 晶振用于MPLLCLK和UPLLCLK时钟源 01b 晶振用于MPLLCLK时钟源 EXTCLK用于UPLLCLK时钟源 10b EXTCLK用于MPLLCLK时钟源 晶振用于UPLLCLK时钟源 11b EXTCLK用于MPLLCLK和UPLLCLK时钟源 EXTCLK I 外部时钟源 XTIpll AI 内部振荡电路的晶振输入 若不使用 需将其接至3 3V高电平 XTOpll AO 内部振荡电路的晶振输出 若不使用 需将其悬空 MPLLCAP AI 主时钟回路滤波电容 UPLLCAP AI USB时钟回路滤波电容 XTIrtc AI 用于RTC的32 768kHz晶振输入 若不使用 需将其接至高电平 RTCVDD 1 8V XTOrtc AO 用于RTC的32 768kHz晶振输出 若不使用 需将其悬空 CLKOUT 1 0 时钟输出信号 由特殊功能寄存器MISCCR的CLKSEL 1 0 控制 19 电源 VDDalive P s3c2410复位电路和端口状态寄存器 1 8V 2 0V 无论是正常模式还是掉电模式都应供电 VDDi VDDiarm P CPU内核逻辑电源 1 8V 2 0V VSSi VSSiarm P CPU内核逻辑地 VDDi MPLL P MPLL模拟和数字电源 1 8V 2 0V VSSi MPLL P MPLL模拟和数字地 VDDOP P I O端口电源 3 3V VDDMOP P 存储器接口电源 3 3V SCLK达133MHz VSSMOP P I O端口地 VSSOP P 存储器接口地 RTCVDD P RTC电源 1 8V 不支持2 0V和3 3V VDDi UPLL P UPLL模拟和数字电源 1 8V 2 0V VSSi UPLL P UPLL模拟和数字地 VDDA ADC P ADC电源 3 3V VSSA ADC P A DC地 2 5 3S3C2410专用寄存器 S3C2410的地址空间0 x48000000至0 x60000000之间的单元区供专用寄存器使用 用于存放硬件各功能部件的控制命令 状态或数据等 因这些寄存器的功能已作专门规定 故而称为专用寄存器或特殊功能寄存器SFR SpecialFunctionRegister 如 S3C2410的工作频率可达203Mhz 但决不是只工作于该频率 可以通过修改与处理器时钟相关的专用寄存器的值 使处理器工作在不同的频率 我们通常所说的超频就是通过此方法实现的 S3C2410有许多专用寄存器 这些寄存器可按硬件功能部件划分如下 存储器控制器专用寄存器组 USB主设备专用寄存器组 中断控制器专用寄存器组 DMA控制器专用寄存器组 时钟和电源管理专用寄存器组 LCD控制器专用寄存器组 NANDFlash专用寄存器组 UART专用寄存器组 PWM定时器专用寄存器组 USB从设备专用寄存器组 看门狗定时器专用寄存器组 IIC专用寄存器组 IIS专用寄存器组 通用I O口专用寄存器组 RTC专用寄存器组 A D转换器专用寄存器组 SPI专用寄存器组 SD接口专用寄存器组 表2 7存储器控制寄存器 以存储器控制器 MemoryController 专用寄存器组为例 该控制器专用寄存器组共有13个专用寄存器 见表2 7所示 1 总线宽度和WAIT控制寄存器 BWSCON STn 控制存储块n的UB LB引脚输出信号 1 使UB LB与nBE 3 0 相连 用UB LB 0 使UB LB与nWBE 3 0 相连 不用UB LB WSn 使用 禁用存储块n的WAIT状态1 使能WAIT 0 禁止WAITDWn 控制存储块n的数据线宽00 8位 01 16位 10 32位 11 保留 2 BANKn 存储块控制寄存器 n 0 5 Tacs 设置nGCSn有效前地址的建立时间00 0个 01 1个 10 2个 11 4个时钟周期Tcos 设置nOE有效前片选信号的建立时间00 0个 01 1个 10 2个 11 4个时钟周期Tacc 访问周期000 1个 001 2个 010 3个 011 4个时钟100 6个 101 8个 110 10个 111 14个Tcoh nOE无效后片选信号的保持时间00 0个 01 1个 10 2个 11 4个时钟Tcah nGCSn无效后地址信号的保持时间00 0个 01 1个 10 2个 11 4个时钟Tacp 页模式的访问周期00 2个 01 3个 10 4个 11 6个时钟PMC 页模式的配置 PageModeConfiguration 每次读写的数据数00 1个 01 4个 10 8个 11 16个注 00为常规 通用模式 3 BANK6 7 存储器块6 7控制寄存器 MT 设置存储器类型00 ROM或者SRAM 3 0 为Tacp和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论