AT91SAM9260数据手册

上传人:ren****ao 文档编号:163828024 上传时间:2022-10-23 格式:DOC 页数:33 大小:218.51KB
返回 下载 相关 举报
AT91SAM9260数据手册_第1页
第1页 / 共33页
AT91SAM9260数据手册_第2页
第2页 / 共33页
AT91SAM9260数据手册_第3页
第3页 / 共33页
点击查看更多>>
资源描述
AT91SAM9260数据手册1、描述AT91SAM9260是以ARM926EJ-S处理器为核心的片上系统,它扩展了快速ROM、RAM以及大量的外设。AT91SAM9260集成了以太网的MAC、一个USB设备端口、一个USB主机控制器。此外,它还集成了几种标准的外设,如USART、SPI、TWI、TimerCounter、同步串行控制器、ADC和多媒体卡接口。AT91SAM9260采用了6层总线矩阵构架,大大增强了6条32位总线的内部带宽。同时它的外部总线接口能支持大量的存储设备。2、方框图该方框图显示了217脚LFBGA封装的所有特征,有些功能在208脚PQFP封装里面是没有的。3、信号描述4、封装与引脚排列5、电源事宜5.1 电源AT91SAM9260有如下几种类型的电源管脚:l VDDCORE 管脚:内核电源,包括处理器、内嵌存储器和外设,电压范围从1.651.95,额定电压为1.8Vl VDDIOM 管脚:外部总线接口I/O口电源;电压范围从1.65V1.95V(1.8V);或3.03.6(3.3),具体的电压范围可有软件确定l VDDIOP0 管脚:外设I/O口线和USB收发器电压;电压范围3.03.6(3.0/3.3)l VDDIOP1 管脚:外设I/O口线,包括图像传感器接口;电压范围1.653.6 (1.8/2.5/3/3.3)l VDDBU 管脚:慢速时钟振荡器和部分系统控制器电源;电压范围1.65V1.95V(1.8V)l VDDPLL 管脚:主时钟和锁相环部件电源;电压范围1.651.95(1.8)l VDDANA 管脚:模数转换器供应电源;电压范围3.03.6(3.3)VDDIOM、VDDIOP0、VDDIOP1,这些电源使得用户能对存储器接口和外设接口设备分配不同的电源。接地引脚GND是VDDCORE、VDDIOM、VDDIOP0、VDDIOP1引脚电源的公共端。VDDBU、VDDPLL、VDDANA采用各自相应的接地管脚:GNDBU、GNDPLL、GNDANA。5.2 功耗 AT91SAM9260在二十五度时,在VDDCORE上的静态电流大约为500uA。当温度上升到85度时,静态电流上升到5mA。在VDDBU管脚上,最大电流不会超过10uA。对于动态功率损耗,AT91SAM9260在典型条件下(1.2V/25C)以最大速率,处理器运行在全速运行状态,VDDCORE电源消耗最大为100mA。5.3 可编程I/O电源 VDDIOM允许两个电压范围。这就使得无论外部存储模块是1.8H还是3.3V时,该设备均能达到其最大速度。SDCK管脚的最高速度为100M,其他信号(包括控制线、地址线、数据线)均不能超过50MHz。(1.8V上有30pF,3.3V上有50pF电容)输入电压范围是由矩阵用户接口(Matrix User Interface)内的芯片配置寄存器(Chip Configuration registers)所决定的。复位时,缺省的电压是3.3V,此时,芯片能同时接受1.8和3.3V的输入,但是如果VDDIOM电源是1.8v,此时该设备就无法达到最高速。因此用户必须在Slow Clock 模式下设置EBI电压范围。6、I/O口线事宜6.1 JTAG端口引脚TMS、TDI和TCK是施密特触发器输入且无上拉电阻TDO和RTCK是输出,输出电压可以达到VDDIO0,且无上拉电阻当JTAGSEL引脚维持高电平(接到VDDBU)时被用作JTAG边界扫描。此引脚集成了一个连接与GNDBU的15K欧姆的下拉电阻。所以正常运行时可以悬空。NTRST信号见6.3所有的JTAG信号均是由VDDIOP0供电的。6.2 测试引脚当测试引脚(TST)维持高电平时被用作生产测试目的。次引脚集成了一个连接与GNDBU的15K的永久下拉电阻,所以正常运行时,该管脚可以悬空。当以高电平驱动此引脚时将导致难以预料的结果。该引脚由VDDBU供电。6.3 复位引脚NRST是一个双向管脚,该管脚的开漏输出集成了一个不可编程上拉电阻。该管脚由VDDIOP0供电。NTRST是一个输入管脚,该管脚对JTAG的Test Access Port进行复位。该管脚对处理器没有影响。如果产品已经集成了上电复位单元,该单元处理了的处理器和JTAG的复位,那么NRST和NTRST可以被悬空。NRST和NTRST均集成了一个到VDDIOP0的上拉电阻。NRST信号嵌于边界扫描中。6.4 PIO控制器所有的I/O口线都集成了一个可编程的上拉电阻,PIO控制器可以对每个I/O口线的上拉电阻进行控制。复位后,所有的I/O口均为输入状态,且上拉电阻使能。除了那些在复位时要求和外部总线接口信号多路复用的I/O口线被使能为外设。具体可参见PIO Controller Multiplexing的“Reset State”栏。6.5 I/O线驱动能力每个PIO管脚均有很强的驱动能力(长期16mA),除了PC4PC31由VDDIOM供电的之外。6.6 掉电逻辑管脚SHDN管脚是一个输出管脚,该管脚由掉电控制器驱动WKUP(唤醒管脚) 是一个输入管脚。它仅接受0VDDBU之间的电压信号。6.7 慢速时钟选择AT91SAM9260的慢速时钟即可由外部的32.768kHz的晶振产生也可由片内RC振荡器产生。表6-1定义了OSCSEL管脚的状态表 6-1 慢速时钟选择OSCSEL慢速时钟启动时间0内部RC240us1外部32.768kHz1200ms7、处理器与体系结构7.1 ARM926EJ-S处理器l 基于ARM v5TEJ体系结构,带Jazelle Java加速技术的RISC处理器l 两套指令集n ARM 高性能32位指令集n Thumb高编码密集度16位指令集l DSP指令扩展l 5级流水线体系结构n 指令获取(F)n 指令解码(D)n 指令执行(F)n 数据存储(M)n 寄存器写(W)l 8K字节的高速数据缓存,8K字节的高速指令缓存n 地址映射方式采用四路组相联的映像和变换方式(Virtually-addressed 4-way Associateve Cache)n 每个Cache块8个字n 采用写通和写回操作n 采用随机替换算法或轮转法更新缓存条目l 写缓冲n 主写缓冲具有16个字的数据缓冲和4个字的地址缓冲n 写回类型的数据Cache具有8个字的入口以及单独的地址入口n Software Control Drainl 标准的ARM V4 和 V5存储器管理部件(MMU)n 节存取权限n 对每四分之一的大页或小页的存取权限能被明确指定n 16个内嵌的域l 总线接口单元(BIU)n AHB请求的仲裁和调度n 分离的主控(针对指令和数据访问)为矩阵系统提供完善的灵活性n 完全分离的地址和数据总线(针对32位的指令接口和32位的数据接口)n 在地址和数据总线上,数据可以是8位、16位或32位的。7.2 总线矩阵l 6层的矩阵,能处理6个主机的请求l 可编程的仲裁策略n 固定优先级的仲裁策略n 循环仲裁策略,包括无缺省主控、最近一次访问的主控设备、固定缺省主控设备l 突发传输策略n 限制间隔(字节数)的突发信号传输n 未定长度的突发信号传输突发操作定义为一个或多个数据传输,由总线主机发起,在地址空间增加时传输宽度保持一致。每次传输增加的地址步长由传输大小决定。l 每个主控提供一个地址解码器n 三个不同的从控可以被指定给每一个解码的存储区域:一个用于内部启动;一个用于外部启动;一个在重映射后 l 启动模式选项n 非易失的启动存储器可以是内部的,也可以是外部的n 根据复位时的BMS引脚的电平决定启动选项l 重映射命令n 允许一个内部SRAM通过重映射代替启动非易失性存储器n 允许异常向量的动态配置处理l 矩阵主机:n ARM926指令n ARM926数据n PDCn USB主DMAn ISI控制器n 以太MACl 矩阵从机n 内部SRAM0 4Kn 内部SRAM1 4Kn 内部ROM/USB主机用户接口n 外部总线接口n 内部外设l 主机访问从机:通常来讲,所有的主机均能访问到所有从机,但有些路径是不通的。7.3 外设DMA控制器l 作为总线矩阵的主机l 在没有处理器干预的情况下从外设转存到任何存储空间或从任何存储空间转存到外设l 下一个指针支持,禁止对缓冲管理进行强制约束l 22个通道7.4 调试和测试特征l ARM926 实时在线仿真器n 两个实时检测点单元n 两个独立的寄存器:调试控制寄存器和调试状态寄存器n 可通过JTAG协议访问的测试存取端口n 调试通信通道l 调试部件n 两线UARTn 调试通信通道中断处理n 芯片ID寄存器l 所有数字引脚上的IEEE1149.1 JTAG边界扫描8、存储器总线矩阵完成的第一级的地址解码。译码将4G的地址空间分成16个256M的区域,区域1区域8通过片选信号EBI_NCS0EBI_NCS7指向EBI。区域0是为内部存储器地址,第二级译码提供1M字节内部存储空间。区域15为外设地址,且提供对高级外设总线(APB)的访问。其它区域未使用,使用它们进行访问时将向发出访问请求的主机发出异常中断。每个主机均有自己的总线与相应的解码器,因此对于不同的主机允许拥有不同的内存映射。但是,为简化映射起见,所有的主机均拥有类似的解码方式对于主机0和主机1(ARM926 指令与数据),在地址0x00映射有三个不同的从机,一个用于内部启动,一个用于外部启动,另一个用于重映射。8.1 内部存储器l 32KB ROMn 全速矩阵总线下,单周期访问l 2块4KB快速SRAMn 全速矩阵总线下,单周期访问 启动策略表8-1简要说明了每个主机的内部内存映射与复位时Remap状态与BMS状态之间的关系。重映射前(REMAP=0)重映射后REMAP=1BMS状态10X0x00ROMEBI-NCS0SRAM0 4K 系统总是从地址0x00启动的,为确保启动方式的最大数量,内存布局可由如下两个参数确定。为便于开发,REMAP允许用户将第一块内部SRAM映射到地址0x00。该操作是在系统启动后通过软件执行的。具体可参见“总线矩阵”一节当REMAP=0时间,BMS允许用户ROM或外部存储器映射到地址0x00。具体由复位状态下的BMS管脚的状态决定。正是由于这个目的,内部存储器的0x000x0FFFFF预留。l BMS=1 ,从内嵌ROM启动n 在低速时钟下启动(片内RC 或 32.768kHz)n 自动波特率检测n 将应用从外部存储器中下载内部SRAM中,并执行n 下载的代码长度决定于内嵌的SRAM长度n 自动进行有效代码检测n 非易失性存储器中的Bootloaderu 连接在NPCS0、NPCS1的SPI DataFlash(SPI0)u 8位或16位 NAND Flashn 如果在外部的非易失性存储器中未检测到有效程序,则采用SAM-BA启动u DBGU上的串行通信u USB设备端口l BMS=0 ,从外部存储器启动n 在低速时钟下启动(片内RC 或 32.768kHz)n 采用静态内存控制器的缺省配置启动,模式采用“字节选择”,16位数据总线,采用片选信号进行读写控制。允许在16位非易失性存储器上启动。n 客户编写的软件必须完成一个完整的配置当在32kHz EBI CS=0(BMS=0)时,为了加速启动过程,用户必须执行以下步骤:l 编程PMC(主振荡器使能或旁路模式)l 编程并启动PLLl 重编程SMC设置,周期,保持,CS0的模式定时寄存器以适应新时钟l 主时钟切换新值8.2 外部存储器外部存储器是通过EBI总线访问的。每个片选信号均有256M字节的访问空间。 外部总线接口l 集成了三个外部存储器控制器n 静态存储器控制器n SDRAM控制器n ECC控制器l NAND Flash 的附加逻辑l 32位数据总线l 26位地址总线(64M)l 8个片选信号,分配如下:n 静态存储控制器(NCS0)n SDRAM或静态存储控制器(NCS1)n 静态存储控制器(NCS2)n 静态存储控制器(NCS3),可选择支持NAND Flashn 静态存储控制器(NCS4NCS5),可选择支持Compact Flashn 静态存储控制器(NCS6NCS7) 静态存储器控制器l 8-,16-,32-bit 数据总线l 多种访问模式n 字节写或字节选择线n 页模式的异步读取(每页432字节)l 各种设备的适应能力n 兼容LCD模块n 针对各个存储器块,可编程的控制信号,包括:启动、脉冲、保持时间l 各种等待状态管理n 可编程等待状态产生n 外部等待请求n 可编程数据流动等待l 支持慢时钟模式 SDRAM 控制器l 支持设备n 标准、低功耗的SDRAM(移动 SDRAM)l 多种配置支持n 2K、4K、8K 行地址内存n 2个或4个内部SDRAM区n 16位或32位数据的SDRAMl 编程性能n 字、半字、字节访问n 到了存储器边界自动分页n 多组Ping-pong访问n 软件确定定时参数化n 自动更新操作,可编程更新速率l 节能能力n 支持自刷新、掉电、深度掉电模式n 故障检测:更新故障中断n 软件上电初始化SDRAMn 支持CAS等待时间(1、2、3个时钟)n 未使用自动预充电命令 纠错码控制器l 通过相应的片选信号触发,跟踪NAND Flash设备的访问l 单位错误纠正以及2位随机错误检测l 在写入时,自动进行汉明码计算n ECC 编码在某个寄存器中l 在读取时,自动进行汉明码计算n 错误报告:包括错误标记、可纠正错误标记以及检测到错误的字地址n 支持8位、16位NAND Flash设备(每页可包含512、1024、2048、4096字节)9、系统控制器系统控制器是由一系列外设组成,这些外设控制了系统的关键部件,如电源、复位、时钟、定时器、中断、看门狗等等。系统控制器的用户界面内嵌了用以配置总线矩阵的寄存器以及用以芯片配置的寄存器。这些芯片配置的寄存器配置了EBI的片选信号与外部内存的电压范围。系统控制器的外设均映射到了最高的16K字节的地址空间,从0xFFFFE800到0xFFFFFFFF。由于,所有的系统控制器的寄存器均映射到了地址空间的最高层。因此,同于哦一个标准的ARM指令,系统控制器的所有寄存器可通过一个指针实现(Load/Store指令)图9-1,显示了系统控制器的方框图,图8-1显示了系统控制器外设用户接口的映射。9.1 方框图9.2 复位控制器l 基于两个上电复位单元n 一个在VDDBU、另一个在VDDCOREl 上次复位的状态,包括正常复位(VDDBU上升)、唤醒复位(VDDCORE 上升)、软件复位、用户复位和看门狗复位。l 控制内部复位和NRST管脚输出n 允许输出复位信号用以复位外部设备9.3 掉电控制器l 掉电和唤醒逻辑n 软件可编程的SHDN管脚n 可通过WKUP引脚电平变化以及RTT(实时定时器)实现唤醒9.4 时钟发生器l 内嵌一个低功耗32.768kHz的低速时钟振荡器以及一个低功耗RC振荡器。具体可通过OSCSEL信号进行选择n 为系统提供了一个永久的低速时钟SLCKl 内嵌主振荡器n 提供了振荡器旁路功能n 支持320MHz的晶振l 内嵌两个PLLn PLLA输出80240MHz时钟n PLLB输出70130MHz时钟n 两者均集成了一个输入分频器用以增加输出精度n PLLB 内嵌有自身的滤波器9.5 电源管理控制器l 提供如下时钟:n 处理器时钟(PCK)n 主控时钟(MCK),为所有的外设和内存提供的时钟n USB设备时钟(UDPCK)n 独立的外部时钟,一般与MCK相同n 2个可编程时钟输出:PCK0、PCK1l 5种灵活的工作模式:n 正常模式(Normal):处理器与外围设备均工作在设定的工作频率n 空闲模式(IDLE):处理器停止运行,等待中断n 慢速模式(SLOW):处理器与外围设备以低频运行n 等待模式(Standby):IDLE与BACKUP模式的混合,外围设备以低速运行,而处理器停止运行以等待中断n 备份模式(Backup):主电源断电,VDDBU以电池供电9.6 周期性间隔定时器l 包括一个20位的周期计数器,其精度小于1usl 包括一个12位间隔覆盖计数器l 适用于实时操作系统、Linux或WindowsCE节拍的生成9.7 看门狗定时器l 16位键保护(Key-protected),只可一次编程的计数器l 为避免软件进行死锁后持续触发看门狗,WDT重新加载必须当计数器指定窗口范围内才能发生。(0WDD)9.8 实时定时器l 32位独立运行的备份计数器l 在低速时钟上集成了16位可编程分频器l 通过掉电控制器,告警寄存器产生了系统的唤醒信号9.9 通用的备份寄存器l 4个32位的通用备份寄存器9.10 增强的中断控制器l 控制ARM处理器的中断线(nIRQ 与 nFIQ)l 32个可独立屏蔽的中断源向量n 中断源0为快速中断(FIQ)n 中断源1为系统外设(PIT、RTT、PMC、DBGU、等等)n 可编程的边沿触发或电平敏感的内部中断n 可编程的正/负边沿触发或高/低电平敏感l 3个外部源以及快速中断信号l 8级优先级控制器n 驱动处理器正常中断n 处理131个中断源的优先级n 高优先级中断可打断低优先级中断的执行l 定向n 优化中断服务程序分支与执行n 每个中断源有一个32位向量寄存器n 中断向量寄存器读取当前相应的中断向量l 保护模式n 禁止自动操作可简化调试l 快速强制n 允许通过处理器快速中断将正常中断源重定向9.11 调试单元l 有两部分功能组成n 2管脚的UARTn 支持调试通信通道(DCC)l 2管脚的UARTn 其实现特征与标准Atmel 的USART 完全兼容n 有通用可编程波特率发生器的独立接收器与发送器n 奇、偶、标志或空校验n 奇偶校验、帧及溢出误差检测n 自动回应、本地回环以及远程回环通道模式n 支持与接收器/发送器相连的两个PDC(Peripheral Data Controller)通道l 支持调试通信通道n 通过ARM处理器的ICE接口,提供了COMMRX和COMMTX信号中断触发的可见性。9.12 芯片IDn Chip ID: 0x019803A2n JTAG ID: 0x05B1303Fn ARM926 TAP ID: 0x0792603F10、外设10.1 用户接口外设被映射到从0xFFFA 0000 到0xFFFC FFFF之间。每个外设占用了16k字节的空间。完整的内存映射图间图8-110.2 标识符号10.2.1 外设中断与时钟控制.1 系统中断中断源1中的系统中断是如下一些中断信号的线或(wired-OR)l SDRAM 控制器l 调试单元l 周期性间隔定时器l 实时定时器l 看门狗定时器l 复位控制器l 电源管理单元这些外设的时钟必须被激活,此外,外设ID 1只有在增强中断控制器中才能被使用.2 外部中断所有的外部中断,包括快速中断FIQ或IRQ0IRQ2,使用各自独立的外设ID。然而这些外设ID没有相关联的时钟控制器。10.3 I/O线的外设复用AT91SAM9260有3个PIO控制器(PIOA、PIOB、PIOC),这些IO线与外设复用。每个PIO控制器控制了32个管脚。每个管脚可具有1个或2个外设的功能(A 或 B)。Table10-2、Table10-3和Table10-4定义了各个PIO口是如何与各个外设进行复用的。注意,某些只有输出功能的外设功能可能在表中重复定义。列“复位状态”指示PIO管脚复位后是处于IO模式或是外设模式。假如是I/O模式,该PIO管脚处于输入状态(上拉使能)。结果,PIO_PSR寄存器中与IO线的对应位复位为0。假如“复位状态”列中是信号的名字,该PIO管脚被指定为该功能,并且PIO_PSR复位为高状态(地址线)。注意,在这种情况下,上拉电阻还是被使能的。10.4 内嵌外设10.4.1 SPI接口 支持与串行外设通信n 外部解码器有四个片选位,最多支持与15个外设通信n 串行存储器,如DataFlash 以及三线EEPROMn 串行外设,如ADC/DAC/LCD控制器、CAN控制器以及传感器n 外部协处理器 主机或从机外设总线接口n 每个片选8位到16位可编程数据长度n 每个片选可编程极性和相位n 每个片选可在连续传输时设置传输延迟,以及时钟与数据之间设置传输延迟n 连续传输可编程延时n 可选择故障模式检测 支持快速传输n 传输波特率可达到MCKn 在与同一设备传输时,片选信号可一直被激活10.4.2 两线接口 支持主机、多主机、从机等各种模式 在从机模式下支持广播呼叫10.4.3 USART 可编程的波特率发生器 59位全双工同步或异步串行通信n 异步模式下1、1.5或2位停止位或同步模式下1或2位停止位n 奇偶校验位产生与错误检测n 帧错误检测、溢出错误检测n MSB或LSB在先n 可选的断点产生与检测n 8或16的过采样接收频率n 可选硬件握手信号RTS-CTSn 可选调制解调信号DTR、DSR、DCD、RIn 接收器超时以及发送器的时间保护(用于于慢速设备通信)n 可选的可地址生成和检测的Multi-drop模式 有驱动器控制信号的RS485 ISO7816(国际智能卡标准),T=0或T=1协议与智能卡的接口连接n NACK处理,有循环与迭代限制的错误计数器 IRDA调制与解调n 通信速率可达到115.2kbps 测试模式n 远程回送、本地回送、自动回复USART包含各种Modem信号的管理(DTR、DSR、DCD、RI)。在AT91SAM9260中,只有USART0实现了这些信号,命名为:DTR0、DSR0、DCD0、RI0。USART1 和 USART2 没有实现所有的Modem信号,只实现了RTS、CTS(RTS1和CTS1、RTS2和CTS2)。因此,在Modem模式下对USART1、USART2、USART3可能会产生不可预知的后果。在这些USART中,与Modem模式相关的命令是无效的,与Modem相关的状态位也是未被激活的。10.4.4 串行同步控制器 提供了应用于音频与电信应用中的串行同步通信链接 包括一个独立的接收器、发送器以及通用时钟分频器 提供了可配置的帧同步和数据长度 接收器和发送器可配置成自动启动,或在检测到帧同步信号的各种事情后启动 接收器和发送器包括一个数据信号、时钟信号以及帧同步信号10.4.5 定时/计数器 两个3个16位定时器通道的模块 每个通道可分别进行编程实现如下功能n 频率测量n 事件计数n 间隔测量n 脉冲生成n 延迟定时n 脉宽调制n 上加、下减能力 每个通道用户可配置,包括n 三个外部时钟输入n 五个内部时钟输入n 两个多功能输入/输出信号 每个模块均有2个全局寄存器作用于三个TC通道10.4.6 多媒体卡接口 一个双通道多媒体卡接口 与多媒体卡标准V3.11兼容 与SD内存卡规范V1.1兼容 与SDIO规范V1.0兼容 卡时钟可达到主时钟的2倍分频 当未使用时内置的电源管理将时钟频率降低 MCI支持两种插槽,n 一种是多媒体卡总线n 另一种是SD内存卡 支持数据流、块与多块数据的读取10.4.7 USB 主机端口 适用于开放的HCI Rev 1.0标准 适用于USB V2.0全速和低速标准 支持低速1.5Mbps和全速12Mbps的设备 在217LFBGA封装中根集线器集成了两个下游USB端口 两个内嵌USB接收器 支持电源管理 在总线矩阵中作为一个主机10.4.8 USB 设备端口 适用于USB2.0全速,波特率达到12M 内嵌USB2.0全速接收器 为端点内嵌2432字节双口RAM 挂起/恢复逻辑 同步与大数据量端点的pingpong模式(两个存储器组) 6个通用的端点n 端点0和3:64字节,无ping-pong模式n 端点1和2:64字节,具有ping-pong模式n 端点4和5:512字节,具有ping-pong模式 集成了PAD上拉电阻10.4.9 以太网MAC 与IEEE 802.3兼容 每秒10M100M的数据吞吐能力 全双工或半双工操作 与物理层接口可为Mii(媒体独立接口)或RMII(简化媒体独立接口) 针对地址、数据、状态与控制寄存器的寄存器接口 DMA接口,可作为存储控制器的主机操作 在发送或接收结束时,可产生中断 28字节的发送FIFO,28字节的接收FIFO 发送时可自动填充并生成CRC校验 地址检查逻辑可识别48位地址码 当所有的有效帧拷贝到存储器中时支持混合模式 支持通过MDIO接口进行物理层管理10.4.10 图像传感器接口 支持ITU-R BT.601/656 8位模式的外部接口 支持ITU-R BT.656-4 SAV 和 EAV同步 横轴、竖轴的分辨率达到2048*2048 预览路径达到640*480 支持YCbCr4:2:2的数据包格式 预览机制以产生更小的图像 可编程的帧捕获率10.4.11 AD转换 4通道ADC 10bit,312K的采样率。逐次逼近型AD -2/+2LSB的积分非线性度;-1/+1LSB的差分非线性度 每个通道可单独使能或禁止 可采用外部参考电压以在低输入电压时获取更高的精度 多种触发源,如硬件/软件触发、外部信号触发、TC0TC2输出TIOA0TIOA2触发 睡眠模式和转换时序。在触发时间能自动苏醒,并在转换接收后自动进入睡眠状态 与数字信号共用4个模拟输入。11、ARM926EJ-S 处理器概述11.1 描述ARM926EJ-S处理器是通用微处理器ARM9 家族的成员。ARM926EJ-S属于5TEJ版ARM构架,针对的是多任务应用。包括全任务管理、高性能、低核心尺寸和低功耗等重要特点。ARM926EJ-S处理器支持32位ARM和16位THUMB指令集,使得用户能在高性能和高代码密度上取得平衡。支持8位Java指令集并且包括使Java字节代码有效执行的功能部件,支持和JIT(JustInTime 编译器)相似的Java性能,这些性能为下一代Java无线和嵌入式的设备提供了有力支持。为了提高DSP性能,还包含了一个增强的乘法器设计。ARM926EJ-S处理器支持ARM调试构架,并包括软硬件调试的辅助逻辑ARM926EJ-S提供一个完整的高性能处理器子系统,包括 ARM9EJ-S 整核 一个内存管理单元(MMU) 独立的指令和数据AMBA AHB总线接口 独立的指令和数据TCM接口11.2 方框图11.3 ARM9EJ-S处理器 ARM9EJ-S 运行状态ARM9EJ-S 处理器能以三种状态运行,每种状态具有其自身的特殊指令集: ARM状态:32位,字对齐ARM指令 THUMB状态:16位,半字对齐的THUMB指令 Jazelle状态:可变长度,字节对齐的Jazelle指令在Jazelle状态下,按字取指状态切换ARM9EJ-S的工作状态可进行切换: 可使用BX和BLX指令实现ARM和THUMB状态的切换,并加载到PC 可使用BXJ指令实现ARM和Jazelle状态之间的切换在ARM状态下,可进入、处理、退出所有的异常。假如在Thumb或Jazelle状态下发生了异常,处理器将进入ARM状态。当异常处理完成后,再返回到Thumb、Jazelle状态。 指令流水线ARM9EJ-S核采用2种流水线来增强指令流转的速度: 5级流水线(5个时钟周期)应用于ARM和Thumb状态,它包括获取、解码、执行、存储和回写5个阶段 6级流水线(6个时钟周期)应用于Jazelle状态,它包括获取、Jazelle/解码(2个时钟周期)、执行、存储和回写6个阶段 内存访问ARM9EJ-S核支持字节(8位)、半字(16位)、字(32位)访问。字的存储必须四字节对齐,半字的存储必须2字节对齐,字节可在任何地方存储。由于流水线自身的特性,一个当前操作所需要的值在放入寄存器(回写)前被之前的指令(译码)使用。ARM9EJ-S控制逻辑将自动检测这种情况并停止内核或停止传输数据。(也即是流水线冲突) Jazelle 技术Jazelle技术使得Java代码可在ARM处理器上得到直接高效的执行。为下一代Jave无线应用和嵌入式设备提供高性能。ARM9EJ-S的JAVE特征可被描述成JVM(JAVA虚拟机)的硬件仿真。Jave模式是除了ARM或Thumb之外的另外一种状态,它执行的是Jave代码。ARM9EJ-S的Jave代码解码逻辑可对95的Jave代码进行解码,并在无任何额外开销的情况下将其转化成为ARM指令。同时,较少使用的代码将被分解成优化序列的ARM指令。这种硬件/软件的分解对于编程者、应用、操作系统来讲均是透明的。所有ARM寄存器在Jazelle状态下得到重复应用,并且所有寄存器在该状态下均有特殊功用。在ARM和Jave状态的切换过程中需要维持最小的中断延时。由于Jave代码执行是可被重启的,因此当发生中断时,该中断将自动触发内核从Jave状态切换到ARM状态。这也就意味着无论是在硬件上还是在软件商,Jave状态下处理中断将没有任何特殊的预备。 ARM9EJ-S 操作模式在所有状态中,有7种操作模式: 用户模式:通常ARM程序执行状态,用以执行大多数的应用程序 快速中断模式:处理快速中断,用于高速的数据传输或通道处理 中断模式:用于处理通常的中断响应 管理者模式:操作系统的一种保护模式 中止模式:数据或指令预取失败后进入 系统模式:操作系统所拥有的一种特权用户模式 未定义模式:未定义指令异常发生后进入模式的切换可在软件控制下执行,也可能被外部中断、异常处理所引发。大部分的应用程序执行在用户模式。非用户模式,如特权模式,是为在处理系统中断或异常时访问被保护资源时才使用的。11.3.7 ARM9EJ-S 寄存器ARM9EJ-S核共有37个寄存器,其中有31个通用32位寄存器,6个32位状态寄存器。ARM包含有16个字节访问寄存器R0R15,以及一个附加寄存器(CPSR当前程序状态寄存器)。寄存器R0R13是通用寄存器用于存放数据和地址。R14用以在执行BL、BLX等跳转指令时存放R15的值。R15作为程序计数器(PC)。CPSR包含条件标志位和当前模式位。在特权模式内(FIQ、管理、中止、IRQ、未定义),特定模式寄存器可用(FIQ模式下的R8到R14,其他模式下R13和R14)。相应的寄存器R14_FIQ、R14_SVC、R14_ABT、R14_IRQ、R14_UND都在发生中断异常或在中断异常内调用BL/BLX指令时存储R15的值。此外,还有一个寄存器叫做程序状态存储寄存器(SPSR),在特权模式下,该寄存器用以保存CPSR的状态,以便异常返回时恢复异常发生前的工作状态。处于软件一致性的考虑,在所有模式下,R13均作为堆栈指针使用。所有上述的寄存器的功能和应用均应服从APCS(ARM过程调用标准)的限制。APCS的限制包括: 对寄存器使用的限制 使用栈的管理 函数调用时的参数传递和结果返回Thumb状态下的寄存器集是ARM状态下寄存器的一个子集,编程者可直接访问: 8个通用功能寄存器R0R7 堆栈指针:SP 链接寄存器LR;(ARM下的R14) PC CSPR对于每种特权模式,具有备份的SP、LR以及SPSR。.1 状态寄存器ARM9EJ-S 内核包括一个CPSR和5个为异常处理而准备的5个SPSR。该程序状态寄存器包括: 最近运算逻辑单元(ALU)的信息 控制中断的使能或禁止 设置处理器的操作模式状态寄存器: 四个ALU标志位:N(负)、Z(零)、C(进位)、V(溢出) 粘着(sticky)溢出位(Q)由特定的乘法与小数运算指令(如QADD、QDADD、QSUB、QDSUB、SMLAxy和SMLAWy)置位,用于实现某些DSP操作。 该Q标志是粘着的,意味着当该Q标志被某一指令置位后,只有当调用MSR指令时才能被清除。指令无法根据该标志进行条件跳转。 CPSR中的J标志指示着ARM9EJ-S核是否处于Jazelle状态:n J=0:处于ARM或Thumb状态,具体由T标志位决定n J-1:处于Jazelle状态。 模式:5位编码确定了当前处理器的模式。.2 异常异常种类以及优先级:ARM9EJ-S支持5种类型的异常,每种异常均驱动ARM9EJ-S进入特权模式,这些异常种类包括: FIQ:快速中断 IRQ:普通中断 Abort:数据或指令预取失败 Undefined:未定义指令 Supervisor:软件中断或复位当异常发生时,R14的备份寄存器和对应模式的SPSR将被用于储存相应状态。在同一时间可发生多个异常,因此ARM9EJ-S根据下述的优先级处理相应的异常: 复位:(最高优先级) 数据中止: FIQ IRQ 预取指中止 BKPT(断点指令)、未定义指令、软件中断(SWI)(最低优先级)其中,BKPT、未定义指令、软件中断异常是互斥的。在中断的优先级序列中也有例外,当FIQ被使能时,数据中止与FIQ同时发生,ARM9EJ-S核将首先进入数据中止处理函数,然后立即进入FIQ处理函数,当FIQ正常返回后,在继续数据中止的异常处理。数据中止必须要比FIQ具有更高的优先级,从而确保捕获任何一个传输错误。异常模式与处理:无论何时,当一个异常发生时,程序必须中断其正常的工作流程,例如处理一个外设中断。当处理一个ARM异常时,ARM9EJ-S核将执行如下一些操作: 保存下一指令的地址到相应的链接寄存器(LR),该寄存器与你即将进入的新模式相关。当异常从以下状态进入时:n ARM/Jazelle状态:ARM9EJ-S拷贝下一条指令的地址到LRn THUMB状态:ARM9EJ-S将PC寄存器的当前值写入LR,偏移一个值后将是异常的正常返回点(具体偏移值与流水线有关) 将CPSR拷贝到相应SPSR 根据异常类型,设置CPSR的模式位 根据异常类型以及异常向量表,设置PC值寄存器R13也是有备份的,为各种异常处理提供各自专用的堆栈指针。ARM9EJ-S也可以设置中断禁止标志,从而阻止难处理的嵌套的异常。当异常处理完成后,异常处理函数将备份的LR寄存器(减去一定偏移后)设置到PC,同时将SPSR设置到CPSR。该偏移值与处理的异常类型有关。该动作同时恢复了PC和CPSR。FIQ模式具有7个私有的寄存器(R8R14)以减少甚至不需要寄存器的保存操作,从而降低上下文切换的额外消耗。预取指令中止异常是中止模式之一,该模式代表着当前存储器的访问无法完成。当预取指令中止异常发生时,ARM9EJ-S核标志该被预取的指令为无效,但直到该指令到达执行阶段才发生异常。假如该指令未被执行(例如一条跳转指令),该异常将不再发生。断点指令(BKPT)是ARM9EJ-S的一条新的特点用于解决预取指令中止的问题。该断点指令通过一条指令产生预取指令中止。断点指令直到进入执行阶段才能产生预取指令中止异常。假如该指令不被执行,该断点将不再发生。11.3.8 ARM 指令集概述ARM指令集分解成为: 分支指令 数据处理指令 状态寄存器传输指令 装载和存储指令 协处理器指令 异常生成指令ARM指令的执行是有条件的,所有指令均包含了4位的条件域 新的ARM指令集 Thumb指令集概述Thumb指令集是ARM指令集的重编码子集。Thumb指令被分成: 分支指令 数据处理指令 装载和存储指令 批量装载和批量存储指令 异常生成指令11.4 CP15协处理器15号协处理器或系统控制协处理器CP15用以配置和控制下列所有项目:(ARM7采用“协处理器”提供一种非侵入式的方法来延伸指令集。协处理器空间逻辑上通常分成16个协处理器,编号从0至15,第15号协处理器(CP15)是保留用作某些常用的控制功能) ARM9EJ-S Cache(指令Cache、数据Cache、写缓冲) TCM(紧耦合存储器接口) MMU(存储器管理单元) 其他系统选项CP15提供了16个额外的寄存器: CP15寄存器访问CP15寄存器只能在特权模式中通过如下指令进行访问: MCR(从ARM寄存器传送到协处理器)指令用以写一个ARM寄存器到CP15 MRC(从协处理器传送到ARM寄存器)指令用以读CP15的值到ARM寄存器其他指令(如CDP、LDC、STC)可能导致一个未定义指令异常11.5 内存管理单元ARM926EJ-S处理器实现了增强ARM V5架构的MMU,以向操作系统Symbian OS 、Window CE、Linux等操作系统提供虚拟内存特性。虚拟内存特性包括内存访问权限控制和虚拟地址到物理地址的转换。1、 快速上下文切换扩展(FCSE)是MMU中的一个附加硬件,FCSE使多个任务可以运行在一个固定的重叠存储器空间中,(各个空间都有独立的虚拟地址,这与操作系统的虚拟地址不一样,操作系统各个进程使用统一的虚拟地址)而在上下文切换时不需要清理或清除Cache或TLB。2、 使用FCSE,虚拟存储管理增加了一次地址转换,FCSE在虚拟地址到达Cache和TLB之前,使用一个特殊的、包含进程ID值的重定位寄存器修改虚拟地址。第一次转换之前的地址称为虚拟地址(VA),把第一次转换之后的虚拟地址称为修改后虚拟地址(MVA)3、 保存在CP15:C13:C0的当前进程ID4、 为了有效使用FCSE,系统使用页表来控制区域的配置和操作,使用域来隔离各个任务。由CPU内核产生的虚拟地址被FCSE(快速上下文变换扩展)用CP15的13号寄存器转换成为修改后虚拟地址(MVA)。MMU利用一个存储于物理存储器中的唯一的两级页表集将MVA转换成物理地址。页表集的每一个入口包括访问权限以及虚拟地址所对应的物理地址。一级转换表包含了4096个入口(由MVA的2031位作为索引)。这些入口包含了一个指向1MB物理存储空间的指针(包括其访问权限、域等信息)、或二级转换表的入口指针(粗页表或细页表)。二级转换表包含了两种子表,粗糙页表和精细页表。粗糙页表包含了大页和小页的指针(包括访问权限)。精细页表的入口包含了大页、小页和微页的指针。MMU包含有: 访问权限控制 Translation Lookaside Buffers(TLBs) 转换表遍历硬件 访问控制逻辑访问控制逻辑控制着转换表每个入口的访问(权限)信息。访问控制逻辑检查两个信息:域和访问许可。域是存储机制访问的主要控制机制。共有15个域。它定义了访问能进行的必要条件。域决定了访问是否被允许或被忽略。二级访问机制是对段、大页、小页和微页的访问控制。段和微页有一个单一访问允许集,而大页和小页可以和4个访问允许集关联,每个子页一个访问允许集。 TLBTLB缓存了转换表的遍历结果,从而避免了每次都需要遍历整个转换表。当TLB包含了MVA的入口,允许此次访问并输出与MVA相关的物理地址。当访问不被允许,MMU通州CPUZ中止。如果TLB不包含MVA的入口,转换表遍历硬件将从物理内存中的转换表中获取转换信息。 转换表遍历硬件转换表遍历硬件用以遍历物理内存中的转换表,获取物理地址与访问允许,并更新TLB。虚拟地址标志为段映射或是页映射决定了硬件遍历的级别是1或是2。共有3种页映射和1种段映射访问。页映射访问有大页、小页、微页三种。转换过程总是从一级遍历启动的,段映射访问只需要1级遍历,而页映射访问需要2级遍历。关于MMU跟多细节,请参考ARM926EJ-S技术参考手册第3章 MMU错误当发生如下一些错误时,MMU可通知CPU中止: 对齐错误(只针对数据访问) 转换错误 域错误 访问权限错误当MMU的访问控制机制检测到相应的条件将自动生成这些错误。如果该错误是内存访问的结果,MMU中止此次访问,并将此次错误通知给CPU内核。MMU将关于错误的状态和地址信息存储于数据错误状态寄存器和错误地址寄存器中。它也将指令获取中产生的错误状态存储于指令错误状态寄存器中。错误状态寄存器(CP15中的寄存器5)指示了数据或预取中止的原因,中止访问的域号。错误地址寄存器(CP15中的寄存器6)保存了导致此次数据中止的MVA。关于MMU错误的更多细节,请参见ARM926EJ-S技术参考手册第3章。11.6 Cache和写缓冲ARM926EJ-S具有8KB的指令缓存(ICache)、8K的数据缓存(DCache)和写缓存。虽然ICache和DCache具有类似的特性,但各自还是有一些特征。Cache采用4组关联(利用MVA进行定位、索引、标志)。每个Cache行的长度是8个字,对于DCache还有2个脏位(dirty bit)。ICache和DCache提供了Cache锁定、Cache污染控制、行替换控制。ARM926EJ-S的缓存支持一种新的特性,叫做(allocate on read-miss),也就是大家所共知的Wraping。此功能特性使得Cache首先读取需要的字,然后再填充Cache行。这就意味着,当发生字未命中时,Cache首先发起AHB访问读取所需字,而不是装载整个Cache行。从而提高了处理器的响应速度。Cache和写缓存是由CP15的1号寄存器(控制)、CP15的7号寄存器(Cache操作)和CP15的9号寄存器(Cache锁定) 指令CacheICache获取处理器执行所需要的指令。ICache可通过向CP15.1.I写1进行使能,也可通过向该位写0进行禁止。当MMU被使能,所有指令的获取将经过转换以及权限检查。假如MMU被禁止,所有的指令获取是可缓存的,将不做任何的保护检查并且物理地址与MVA之间是平面映射的。由于MVA使用的禁止,上下文切换将导致ICache内容的清除或失效。当ICache是禁止的,所有指令的获取将出现在AHB上。复位后,ICache的入口条目是无效的,ICache是禁止的。为了达到更好的性能,应该在复位后尽快将ICache进行使能。 数据Cache(DCache)和写缓冲ARM926EJ-S包含一个DCache和一个写缓冲以减小主内存的带宽和延迟对数据访问性能上的影响。DCache和写缓冲的操作是紧密相连的。.1 数据Cache(DCache)DCache需要MMU被使能。所有的数据访问将服从MMU的转换和权限检查。MMU产生的数据访问中止将不导致行填充或AHB总线上的数据访问。如果MMU被禁止,则所有的数据访问是不进行缓存的,并且没有保护检查而直接出现在AHB总线上。所有的访问是平面映射的VA=MVA=PA。在上下文切换过程中将导致DCache数据清除或失效。在行装载时,DCache保存了行的物理地址标签,该标签将在DCache回写数据到外部内存中使用。这就意味着在整个写回操作过程中,无需MMU干预。DCache的每一行都有2个脏位,1个用于4个字,1个用于后4个字。这些位的置位标识该行的相应字是脏的。假如Cache行在执行填充或清除指令时,这些脏位决定了是否要将相应字写回到内存中。DCache可通过CP15的1号寄存器的C位进行使能或禁止。DCache支持写通和写回操作,具体可通过MMU转换表中的C位和B位决定。DCache具有8个数据,1个地址的写回缓存用于Cache行取出或清除时存储脏数据行的写回数据。写缓冲能保存16字的数据和4个独立的地址。DCache和写缓存是紧密地结合在一起的。他们在各个段中的配置由MMU的转换表中的页描述符中。.2 写缓冲ARM926EJ-S包含的写缓冲具有16个字的数据缓冲和4个字的地址缓冲。写缓冲是用于对某个可缓冲区域进行写操作,包括写通区域或写回区域。写缓冲还可以避免处理在写外部存储器时发生延迟。当需要进行存储时,数据将首先以内核速度写到写缓冲内,然后写缓冲以总线的速度将数据存储到外部存储器中,在这个过程中,ARM9EJ-S的处理器可执行其他任务。DCache和写缓冲可通过配置MMU中各段或各页描述符中的C、B位支持写回区域和写通区域。写通操作:当Cache写命中发生时,DCache首先被更新,然后改更新数据直接写到写缓冲内。当Cache写未命中发生时,DCache通过轮换或其他算法选择一个Cache行,并将其存到写缓冲内。写回操作:当Cache写命中发生
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!