嵌入式系统设计与实例开发基于32位微处理器与实时操作课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《嵌入式系统设计与实例开发基于32位微处理器与实时操作课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 设计 实例 开发 基于 32 微处理器 实时 操作 课件
- 资源描述:
-
1、1嵌入式系统设计与实例开发嵌入式系统设计与实例开发基于基于3232位微处理器与实时操作系统位微处理器与实时操作系统第七讲第七讲 基于基于ARMARM的硬件系统结构设计的硬件系统结构设计北京航空航天大学北京航空航天大学机器人研究所机器人研究所2本节提要本节提要基于基于ARM的硬件系统体系结构的硬件系统体系结构存储器接口设计存储器接口设计网络接口设计网络接口设计I/OI/O接口设计接口设计人机交互接口设计人机交互接口设计其它通讯接口设计其它通讯接口设计3ARM920T内核结构4S3C2410的内部结构5实验平台的体系结构2410核心资源总线隔离驱动168Pin扩展槽网卡设备LCD驱动音频电路串口设
2、备USB设备PCMCIAIDE/CF卡SD卡接口IO扩展电机等其他资源局部总线扩展总线6读写总线的时序图稳态稳态ReadWrite稳态稳态7本节提要本节提要基于基于ARM的硬件系统体系结构的硬件系统体系结构存储器接口设计存储器接口设计网络接口设计网络接口设计I/OI/O接口设计接口设计人机交互接口设计人机交互接口设计其它通讯接口设计其它通讯接口设计82410的存储器系统的存储器系统 可通过软件选择大小端可通过软件选择大小端 地址空间地址空间:每个每个Bank 128Mbytes(总共总共 1GB)除除 bank0(16/32-bit)外,所有的外,所有的Bank都可以通过编程选择总线都可以通过
3、编程选择总线宽度宽度=(8/16/32-bit)共共 8 个个banksl6个个Bank用于控制用于控制 ROM,SRAM,etc.l剩余的两个剩余的两个Bank用于控制用于控制 ROM,SRAM,SDRAM,etc.7个个Bank固定起始地址;固定起始地址;最后一个最后一个Bank可调整起始地址;可调整起始地址;最后两个最后两个Bank大小可编程大小可编程所有所有Bank存储周期可编程控制;存储周期可编程控制;9S3C2410的存储器配置的存储器配置10Bank6/Bank7地址分布地址分布11Bank0总线宽度配置总线宽度配置12与与2片片8位的位的ROM连接方法连接方法13与与1片片16
4、位的位的ROM连接连接14S3C2410与与2片片8位位FLASH的连接方法的连接方法15与与1片片16M的的SDRAM的连接方法的连接方法16与与2片片16M的的SDRAM的连接方法的连接方法17NAND和NOR性能比较NORNOR和和NANDNAND是现在市场上两种主要的非易失闪存技术是现在市场上两种主要的非易失闪存技术lNORNOR的读速度比的读速度比NANDNAND稍快一些稍快一些lNANDNAND的写入速度比的写入速度比NORNOR快很多快很多lNANDNAND的擦除速度远比的擦除速度远比NORNOR的快的快l大多数写入操作需要先进行擦除操作大多数写入操作需要先进行擦除操作lNAND
5、NAND的擦除单元更小,相应的擦除电路更少的擦除单元更小,相应的擦除电路更少18接口差别lNOR flashNOR flash带有带有SRAMSRAM接口,线性寻址,可以很容易地存接口,线性寻址,可以很容易地存取其内部的每一个字节取其内部的每一个字节lNAND flashNAND flash使用复用接口和控制使用复用接口和控制IOIO多次寻址存取数据多次寻址存取数据lNANDNAND读和写操作采用读和写操作采用512512字节的块,这一点有点像硬盘字节的块,这一点有点像硬盘管理,此类操作易于取代硬盘等类似的块设备管理,此类操作易于取代硬盘等类似的块设备19容量和成本lNAND flashNAN
6、D flash生产过程更为简单,成本低生产过程更为简单,成本低l常见的常见的NOR flashNOR flash为为128KB128KB16MB16MB,而,而NANDNANDflashflash通常有通常有8 8128MB128MBlNORNOR主要应用在代码存储介质中,主要应用在代码存储介质中,NANDNAND适合于数据存储适合于数据存储lNANDNAND在在CompactFlashCompactFlash、Secure DigitalSecure Digital、PC CardsPC Cards和和MMCMMC存储存储卡市场上所占份额最大卡市场上所占份额最大20可靠性和耐用性l在在NAN
7、D中每块的最大擦写次数是中每块的最大擦写次数是100万次,而万次,而NOR的擦写次数是的擦写次数是10万次万次l位交换的问题位交换的问题NAND flash中更突出,需要中更突出,需要ECC纠错纠错lNAND flash中坏块随机分布,需要通过软件标定中坏块随机分布,需要通过软件标定产品量产的问题产品量产的问题21嵌入式系统中应用RAM的情况22本节提要本节提要基于基于ARM的硬件系统体系结构的硬件系统体系结构存储器接口设计存储器接口设计网络接口设计网络接口设计I/O系统设计系统设计人机交互接口设计人机交互接口设计其它通讯接口设计其它通讯接口设计23I/O子系统的层次模型lI/OI/O子系统:
8、子系统:I/OI/O设备、相关的设备驱动程序和设备、相关的设备驱动程序和I/OI/O子系统组成嵌入式子系统组成嵌入式I/OI/O子系统。子系统。lI/OI/O子系统的目标是对子系统的目标是对RTOSRTOS和应用程序员隐藏设备特定的信息,并且对和应用程序员隐藏设备特定的信息,并且对系统的外围系统的外围I/OI/O设备提供一个统一的访问方法。设备提供一个统一的访问方法。设备驱动程序I/O设备硬件RTOSI/O子系统应用程序中断处理程序24从不同角度看I/O系统l从系统软件开发者角度看,从系统软件开发者角度看,I/OI/O操作意味着与设备的通信、操作意味着与设备的通信、对设备编程初始化和请示执行设
9、备与系统之间的实际数据对设备编程初始化和请示执行设备与系统之间的实际数据传输以及操作完成后通知请求者。系统软件工程师必须理传输以及操作完成后通知请求者。系统软件工程师必须理解设备的物理特性,如寄存器的定义和设备的访问方法。解设备的物理特性,如寄存器的定义和设备的访问方法。l从从RTOSRTOS的角度看,的角度看,I/OI/O操作意味着对操作意味着对I/OI/O请求定位正确的设请求定位正确的设备,对设备定位正确的设备驱动程序,并解决对设备驱动备,对设备定位正确的设备驱动程序,并解决对设备驱动程序的请求。有时要求程序的请求。有时要求RTOSRTOS保证对设备的同步访问。保证对设备的同步访问。RTO
10、SRTOS必须进行抽象,对应用程序员隐含设备的特性。必须进行抽象,对应用程序员隐含设备的特性。l从应用程序员角度看,从应用程序员角度看,目标是找到一个简单、统一和精练目标是找到一个简单、统一和精练的方法与系统中出现的所有类型的设备通信。的方法与系统中出现的所有类型的设备通信。25I/O接口的编址方式端口映射1 1)I/OI/O接口独立编址接口独立编址端口映端口映射方式射方式l这种编址方式是将存储器地址这种编址方式是将存储器地址空间和空间和I/OI/O接口地址空间分开接口地址空间分开设置,互不影响。设有专门的设置,互不影响。设有专门的输入指令(输入指令(ININ)和输出指令()和输出指令(OUT
11、OUT)来完成)来完成I/OI/O操作。操作。I/O设备10X00000XFFFFI/O设备2I/O地址空间0X0000系统地址空间0XFFFF主要优点:主要优点:内存地址空间与内存地址空间与I/OI/O接口地址空间分开,互不影响,译码电接口地址空间分开,互不影响,译码电路较简单,并设有专门的路较简单,并设有专门的I/OI/O指令,所以编程序易于区分,且执行时间指令,所以编程序易于区分,且执行时间短,快速性好。短,快速性好。缺点:缺点:只用只用I/OI/O指令访问指令访问I/OI/O端口,功能有限且要采用专用端口,功能有限且要采用专用I/OI/O周期和专周期和专用用I/OI/O控制线,使微处理
12、器复杂化。控制线,使微处理器复杂化。26I/O接口的编址方式内存映射1 1)2 2)I/OI/O接口与存储器统一编址方式接口与存储器统一编址方式内存映射内存映射l这种编址方式不区分存储器地址空间和这种编址方式不区分存储器地址空间和I/OI/O接口地址空间,把所有的接口地址空间,把所有的I/OI/O接口的接口的端口都当作是存储器的一个单元对待,端口都当作是存储器的一个单元对待,每个接口芯片都安排一个或几个与存储每个接口芯片都安排一个或几个与存储器统一编号的地址号。也不设专门的输器统一编号的地址号。也不设专门的输入入/输出指令,所有传送和访问存储器的输出指令,所有传送和访问存储器的指令都可用来对指
13、令都可用来对I/OI/O接口操作。接口操作。I/O设备10X00000XFFFFI/O设备2保留I/O地址空间I/O设备硬件系统地址空间应用使用地址空间应用使用地址空间主要优点:主要优点:访问内存的指令都可用于访问内存的指令都可用于I/OI/O操作,数据处理功能强;同时操作,数据处理功能强;同时I/OI/O接口可与存储器部分共用译码和控制电路。接口可与存储器部分共用译码和控制电路。缺点:缺点:一是一是I/OI/O接口要占用存储器地址空间的一部分;二是因不用专门接口要占用存储器地址空间的一部分;二是因不用专门的的I/OI/O指令,程序中较难区分指令,程序中较难区分I/OI/O操作。操作。27DM
14、A I/ODMA I/ODMA I/OlDMADMA允许设备直接访问内存而不用包含处理器,在数据传输操作开允许设备直接访问内存而不用包含处理器,在数据传输操作开始之前,处理器设置始之前,处理器设置DMADMA控制器,在数据传输期间,读写操作均不控制器,在数据传输期间,读写操作均不通过处理器。通过处理器。lDMADMA传输速度取决于传输速度取决于I/OI/O设备的传输速度、内存设备的速度和设备的传输速度、内存设备的速度和DMADMA控控制器的速度。制器的速度。l通过指定源地址、目的内存地址和传输到通过指定源地址、目的内存地址和传输到DMADMA控制器长度,处理器控制器长度,处理器建立传输操作。建
15、立传输操作。CPUDMA控制器主存储器I/O设备28字符模式设备与块模式设备 根据设备如何处理与系统之间的数据传输方法可将设根据设备如何处理与系统之间的数据传输方法可将设备分为字符模式设备和块模式设备备分为字符模式设备和块模式设备l字符模式设备:允许非结构的数据传输。数据传输典字符模式设备:允许非结构的数据传输。数据传输典型地采用串行的形式,每次一个字节;字符设备通常型地采用串行的形式,每次一个字节;字符设备通常是简单的设备,如串口、键盘等;当系统到设备的传是简单的设备,如串口、键盘等;当系统到设备的传输速率高于设备的处理速率时,设备驱动程序开设缓输速率高于设备的处理速率时,设备驱动程序开设缓
16、冲区,缓存这些数据;冲区,缓存这些数据;l块模式设备:每次传输一个数据块。采用硬件方式控块模式设备:每次传输一个数据块。采用硬件方式控制数据块的大小,有时需要采用固定的传输协议,如制数据块的大小,有时需要采用固定的传输协议,如USBUSB、以太网等设备、以太网等设备29建立通用的I/O接口函数Create()Open()Read()Write()Close()Loctl()Destroy()Driver_Create()Driver_Open()Driver_Read()Driver_Write()Driver_Close()Driver_Loctl()Driver_Destroy()I/OI
17、/O操作操作设备驱动程序设备驱动程序应应 用用设设 备备30I/O接口设计 I/OI/O接口电路也简称接口电路。它是主机和外围设备之接口电路也简称接口电路。它是主机和外围设备之间交换信息的连接部件(电路)。它在主机和外围设备间交换信息的连接部件(电路)。它在主机和外围设备之间的信息交换中起着桥梁和纽带作用。设置接口电路之间的信息交换中起着桥梁和纽带作用。设置接口电路的必要性:的必要性:a)a)解决解决CPUCPU和外围设备之间的时序配合和通信联络问题。和外围设备之间的时序配合和通信联络问题。b)b)解决解决CPUCPU和外围设备之间的数据格式转换和匹配问题。和外围设备之间的数据格式转换和匹配问
18、题。c)c)解决解决CPUCPU的负载能力和外围设备端口选择问题。的负载能力和外围设备端口选择问题。31通用设计原则(I/O设备)lI/O接口接口l接口的概念接口的概念lCPU与外部设备的接口(与外部设备的接口(I/O适配器)适配器)l接口的功能接口的功能l控制控制 l缓冲缓冲l状态状态 l转换转换l整理整理 l程序中断程序中断 32lI/O接口接口l3种寄存器种寄存器l数据寄存器、控制寄存器和状态寄存器数据寄存器、控制寄存器和状态寄存器通用设计原则(I/O设备)数据寄存器状态寄存器控制寄存器I/O接口芯片去I/O设备去CPU33通用设计原则(I/O设备)lI/O设备寻址设备寻址lI/O寻址寻
19、址l定位定位I/O设备内部的寄存器(或一小块存储器)设备内部的寄存器(或一小块存储器)l与存储器共享总线与存储器共享总线l存储器映像法存储器映像法l混合编址混合编址CPU存储器地址总线数据总线读信号写总线译码I/O接口译码34通用设计原则(I/O设备)lI/O设备寻址设备寻址lI/O隔离法隔离法l独立编址独立编址l信号线信号线MERQ/IORQl地址空间地址空间CPU存储器地址总线数据总线读信号写总线I/O接口MERQ/IORQ35lI/O设备的数据输入设备的数据输入/输出输出l输入过程输入过程lCPU把一个地址值放在地址总线上,这一步将选择某一输入设备把一个地址值放在地址总线上,这一步将选择
20、某一输入设备;lCPU等候输入设备的数据成为有效;等候输入设备的数据成为有效;lCPU从数据总线读入数据,并放在一个相应的寄存器中。从数据总线读入数据,并放在一个相应的寄存器中。l输出过程输出过程lCPU把一个地址值放在地址总线上,选择输出设备;把一个地址值放在地址总线上,选择输出设备;lCPU把数据放在数据总线上;把数据放在数据总线上;l输出设备认为数据有效,从而把数据取走。输出设备认为数据有效,从而把数据取走。l究竟什么时候数据才成为有效?通用设计原则(I/O设备)36lI/O设备的定时方式设备的定时方式l简单的外围设备简单的外围设备l机械开关、二极管(无需定时机制,机械开关、二极管(无需
21、定时机制,CPU只要接收或发送数据就可以了只要接收或发送数据就可以了)l慢速或中速的外围设备慢速或中速的外围设备l速度和速度和CPU速度不在一个数量级,或不规则时间间隔操作速度不在一个数量级,或不规则时间间隔操作(键盘键盘)l异步定时方式异步定时方式l中断方式中断方式l查询方式查询方式l高速的外围设备高速的外围设备l以相等的时间间隔操作,采样同步定时方式以相等的时间间隔操作,采样同步定时方式 l时钟脉冲控制时钟脉冲控制 lDMA通用设计原则(I/O设备)37通用设计原则(I/O设备)lI/O控制方式控制方式l低速设备低速设备l程序查询方式程序查询方式l程序中断方式程序中断方式l高速设备高速设备
22、lDMAl通道方式通道方式l外围处理机(外围处理机(PPU)方式)方式38lI/O接口接口l程序查询方式程序查询方式l读操作流程读操作流程1.CPU测试测试I/O设备状态,等待空闲设备状态,等待空闲2.CPU下达读命令,测试状态寄存器下达读命令,测试状态寄存器3.把数据寄存器中的数据读入到把数据寄存器中的数据读入到CPU中中4.重复执行以上各步重复执行以上各步l写操作流程写操作流程1.CPU测试测试I/O设备状态,等待空闲设备状态,等待空闲2.把数据传输到把数据传输到I/O接口芯片的数据寄接口芯片的数据寄存器中存器中3.CPU下达写命令下达写命令4.重复执行以上各步重复执行以上各步通用设计原则
23、(I/O设备)CPUI/O设备39通用设计原则(I/O设备)lI/O接口接口l中断中断l一种实现一种实现CPU和和I/O设备间异步操作的机制设备间异步操作的机制40通用设计原则(I/O设备)lI/O接口接口l中断中断l响应时间(现场保存)响应时间(现场保存)l中断优先级中断优先级l可屏蔽中断可屏蔽中断l不可屏蔽中断不可屏蔽中断l中断向量(地址)中断向量(地址)l固定固定/不固定不固定41CPUPC 设备设备状态寄存器数据寄存器中断请求中断应答数据/地址通用设计原则(I/O设备)中断处理42lI/O接口接口lDMAlI/O设备和存储器直接进行数据传输设备和存储器直接进行数据传输l使用场合使用场合
24、l速度快,适用于数据连续传输的高速设备速度快,适用于数据连续传输的高速设备l基本操作过程基本操作过程l从外围设备发出从外围设备发出DMA请求;请求;lCPU响应请求,把响应请求,把CPU工作改成工作改成DMA操作方式,操作方式,DMA控制器从控制器从CPU接管总线的控制;接管总线的控制;l由由DMA控制器对内存寻址,并执行数据传送的操作;控制器对内存寻址,并执行数据传送的操作;l向向CPU报告报告DMA操作的结束。操作的结束。通用设计原则(I/O设备)43通用设计原则(I/O设备)lI/O接口接口lDMA传输方式传输方式l停止停止CPU访问内存访问内存44通用设计原则(I/O设备)lI/O接口
25、接口lDMA传输方式传输方式l周期挪用周期挪用45通用设计原则(I/O设备)lI/O接口接口lDMA传输方式传输方式lDMA与与CPU交替访问内存交替访问内存46嵌入式软件的开发过程嵌入式软件的开发过程47ARM的JTAG调试结构AngelJTAG48宿主机调试器l宿主机调试器通过固定的协议控制下位机(协议转换器)。比如宿主机调试器通过固定的协议控制下位机(协议转换器)。比如,SDTSDT中通过中通过AngelAngel协议或者第三方调试器所提供的协议协议或者第三方调试器所提供的协议l宿主机调试器只发送宏观的命令,比如:宿主机调试器只发送宏观的命令,比如:程序运行、终止。读内存、程序运行、终止
展开阅读全文