资源描述
嵌入式技术基础,扬州职业大学 计算机应用教研室,ARM处理器体系结构简要总结,RISC处理器种类比较多,指令长度固定,执行周期固定, 微控制器子类又很多,目前很多较小的嵌入式控制场合都用得是微控制器,比如sim卡,一卡通,电子表等。mips是mips公司研究出的一套体系结构,目前龙芯,聚芯都是基于mips。Alpha是惠普在与康柏电脑公司合并之后拥有Alpha芯片的,在2003年1月推出一款新的Alpha处理器。18月后Alpha芯片正式“退休”。powerpc是ibm,hp等公司合力出的一套,挺复杂,结构严谨,但推广不好,sparc只在sun得到大力支持。arm是目前应用最广泛的一套指令系统,支持多任务,只要是超出单片机能力、x86又太浪费的场合大部分都用arm。90%的智能手机都是arm处理器。,ARM处理器体系结构简要总结,X86处理器工作模式: 实模式 保护模式 虚拟8086模式 arm处理器7工作模式: 用户模式、管理模式、未定义模式、中止模式、 特权模式、irq模式,fiq模式。,ARM处理器体系结构简要总结,用户模式和管理模式: 共用r0-r14通用寄存器,pc寄存器,共用一个cpsr。 未定义模式、中止模式、特权模式、irq模式: 共享用户模式和管理模式的r0-r12,各自专用的r13-r14, pc寄存器,各自专用的cpsr和spsr。 fiq模式: 共享用户模式和管理模式的r0-r7,专用的r8-r14,pc寄存器,专用的cpsr和spsr。 注意pc寄存器是所有模式共享一个。,ARM体系的各种异常的分析,1.复位异常 (1)当内核的nRESET信号被拉低时,ARM处理器放弃正在执行的指令,当nRESET信号再次变高时,ARM处理器进行复位操作; (2)系统复位后,进入管理模式对系统进行初始化,复位后,只有PC(0 x00000000)和CPSR(nzcvqIFt_SVC)的值是固定的,另外寄存器的值是随机的。,ARM体系的各种异常的分析,2.IRQ异常 (1)当CPSR中的相应的中断屏蔽被清除时,内核的nIRQ信号被拉低时可产生IRQ异常; (2)由于ARM处理器的三级流水线结构,当异常发生时,PC的值等于当前执行指令的地址+8(即正确的中断返回地址+4),因此R14保存的值是 中断返回地址+4 ,所以当异常要返回时须执行以下指令: SUBS PC,R14_irq,#4 ;PC=R14 - 4 注意:在SUB指令尾部有个S,并且PC是目标寄存器,所以程序返回时CPSR将自动从SPSR寄存器中恢复; (3)将用户模式下的CPSR保存到SPSR_irq中; (4)设置PC为IRQ异常处理程序的中断入口向量地址,在IRQ模式下该向量地址为0 x00000018。,ARM体系的各种异常的分析,3.FIR异常 (1)当CPSR中的相应F位被清零时,内核的nFIR信号被拉低时可产生FIR异常,FIQ异常是优先级最高的中断 (2)FIQ异常的进入和退出与IRQ异常类似; (3)快速中断模式有8个专用的寄存器,可用来满足寄存器保护的需要,因此从其他模式进入FIQ模式时这些寄存器不用压栈了,提高程序运行的速度,且在中断入口地址的安排上,FIQ处于所有异常入口的最后,这是为了让用户可以从FIQ异常入口处(0 x1c)就开始安排中断服务程序,而不需要再次跳转。,ARM体系的各种异常的分析,4.未定义指令异常 (1)当ARM在对一条未定义指令进行译码时,发现这是一条自己和系统内任何协处理器都无法执行的指令时,就会发生未定义指令异常; (2)由于是在对未定义指令译码时发生异常,所以PC的值等于未定义指令的地址+4(即刚好为中断返回地址),因此R14保存的值是 中断返回地址 ,所以当异常要返回时可执行以下指令: MOVS PC,R14_und,ARM体系的各种异常的分析,5.中止异常 中止表示当前存储器的访问不能完成,是由外部的ABOUT输入信号引起的异常,分为两类: (1) 预取指中止:由程序存储器引起的中止异常; (2) 数据中止:由数据存储器引起的中止异常;,ARM体系的各种异常的分析,5.中止异常 数据存储器引起的中止异常; 预取指中止异常 当程序发生预取指中止时,ARM内核将预取的指令标记为无效,但在指令到达流水线的执行阶段时才进入异常,因此当前PC的值为当前执行指令的地址+8(即正确的中断返回地址+4),因此R14保存的值是 中断返回地址+4 ,所以当修复了产生中止的原因后,不管在什么操作状态,处理器都会执行以下指令 SUBS PC,R14_abt,#4 ;PC=R14 - 4,ARM体系的各种异常的分析,5.中止异常 数据中止异常 当发生数据中止异常时,异常会在“导致异常的指令”执行后的下一条指令时才发生,因此当前PC的值为“导致异常的指令”执行后的下一条指令的地址+8(即正确的中断返回地址+8),因此R14保存的值是 中断返回地址+8,所以当修复了产生中止的原因后,不管在什么操作状态,处理器都会执行以下指令: SUBS PC,R14_abt,#8 ;PC=R14 - 8 注意:LPC2000系列ARM是基于ARM7TDMI内核的,不具有MMU,所以不应该发生中止异常,初学者时常会发生中止异常,大多数是因为编写的程序的问题。,ARM体系的各种异常的分析,6.SWI软件中断异常 (1)所有的任务都是运行在用户模式下的,因此任务只能读CPSR而不能写SPSR。任务切换到特权模式下唯一的途径就是使用一个SWI指令调用,SWI指令强迫处理器从用户模式切换到SVC管理模式,并且IRQ自动关闭,所以软件中断方式常被用于系统调用。 (2)系统调用的具体过程还是看有关uc/os-II等操作系统书,那里比较详细。 (3)SWI处理程序通过执行下面的指令返回: MOVS PC,R14_svc,2010S3C6410的疯狂,主频的极限在哪里?,2008年下半年,三星公司推出S3C6410X芯片,大部分的生产厂家都用的ARM1176JZF-S内核,到现在为止很多都推出了S3C6410芯片的开发板。前面的在完善和创新、后面的加紧脚步在追赶,市场一片火热! 从2009年来看,S3C6410慢慢的走出来。相对ARM9而言,在视频编解码、处理速度、2D/3D的加速等方面有很大的提升。在价值的提升同时,成本也在提升,那么价格同样会比ARM9高出不少。 技术方面,随着各方面的成熟,功能的完善和提高。主频上目前已经有突破1GHZ达到1066MHZ,处理速度方面有很大提升。以及实现多操作系统,方便在各个平台上开发和应用。总之,厂家各自发展方向不一样,但是都有同样的目的,那就是推进6410的普及程度和技术的发展。,嵌入式平板电脑mips方案和X86方案的比较,目前在市场上的平板电脑领域,嵌入式的方案已经越来越多的被应用,取代了传统的X86方案。在这里我们拿嵌入式的MIPS方案和X865方案给大家做下比较分析: 1.高性能、低功耗:整个主板功耗不到1W,仅相当于X86平台的1/30到1/200。MIPS架构的Risc CPU运行效能远超X86。作为一个例子,本平板电脑可在轻松播放高清晰度视频的同时,完成复杂联网下载等计算。,嵌入式平板电脑mips方案和X86方案的比较,2.抗震防冲击:CPU和各种功能电路全部固态设计在一个超小的主板上,采用轻质化元件、全固态安装,没有任何运动部件,没有硬盘等易损部件,彻底避免了X86主板上由于沉重的散热器、脆弱的风扇、硬盘等造成的抗震性能低下问题。 3.散热问题:与X86相比,因为MIPS整体功耗低,基本上不用安装散热片,以及其他的散热装置,而X86反之。,嵌入式平板电脑mips方案和X86方案的比较,4.对病毒免疫:由于本机采用MIPS类型CPU,主板为专用设计,操作系统为嵌入式Linux或Wince,由于和X86架构不同通常的PC机病毒不能在此运行,因此对病毒天然免疫,且本产品操作系统软件直接固化在硬件中,在硬件上保证了不会被破坏。X86的操作系统选用一般PC系统,更容易遭受到病毒的攻击和破坏。 5.成本优势:本产品采用最新的技术进行设计,从而达到了高性能的同时实现低成本的目标,相比传统的工控机、X86一体机等,成本更有优势。,嵌入式平板电脑mips方案和X86方案的比较,6、X86方案一般采用退出商业领域的PC机器来应用于不太复杂的工业应用,机器的寿命会受到一定程度的影响。而MISP方案则是专门为工业控制实际应用量身定做的,更加专业实用。 7、从产品体积来看,X86方案是主机和显示屏分开,体积比较大,而嵌入式MIPS方案则以更小的体积,可以满足一体化设备车间环境和空间的实现应用。,WINCE6.0系统下全面测评S3C6410处理器性能,WINCE6.0系统启动画面(进度条动态显示内核加载进程,WINCE图片可以根据客户需要更换),WINCE6.0系统下全面测评S3C6410处理器性能,WINCE6.0桌面,WINCE6.0系统下全面测评S3C6410处理器性能,全屏视频播放(硬件解码,800X480分辨率,帧率大于30fps),WINCE6.0系统下全面测评S3C6410处理器性能,Mediaplayer音视频播放(硬解码),WINCE6.0系统下全面测评S3C6410处理器性能,多重解码,分屏显示(同时对多种格式解码,并分为4个窗口播放),WINCE6.0系统下全面测评S3C6410处理器性能,摄像头预览和编码(摄像预览同时,可以选择编码为视频H.264/MPEG或图片JPEG格式文件),WINCE6.0系统下全面测评S3C6410处理器性能,3D加速测试(OPENGLES1.1),WINCE6.0系统下全面测评S3C6410处理器性能,3D测试(OPENGLES2.0),WINCE6.0系统下全面测评S3C6410处理器性能,Flash播放测试(流畅),WINCE6.0系统下全面测评S3C6410处理器性能,上网浏览网页,WINCE6.0系统下全面测评S3C6410处理器性能,同时读出CF卡、两路SD卡,ARM SYS6410- WINCE6.0系统特色,开机启动界面上动态进度条显示内核加载进度。 提供两路SD/MMC卡,两路都支持MMC4.0卡,都支持热插拔。 支持CF3.0规格高速CF卡。 注册表切换TV out输出通道(RCA接口或S-VIDEO接口)。 提供4路串行口,并支持注册表切换串口普通模式和红外模式 支持HIVE注册表,系统设置自动保存。 支持Norflash和SD卡启动更新WINCE系统。 USB 2.0 OTG接口高速下载系统映像,提升开发效率。 支持睡眠、唤醒,提供电源管理相关驱动。 带有IDE接口,支持WINCE6.0系统下挂载PATA硬盘,顺利通过120G硬盘读写测试!,
展开阅读全文