五、基于ARM的嵌入式系统硬件结构设计37907.pptx
《五、基于ARM的嵌入式系统硬件结构设计37907.pptx》由会员分享,可在线阅读,更多相关《五、基于ARM的嵌入式系统硬件结构设计37907.pptx(139页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1嵌入式系统设计与实例开发嵌入式系统设计与实例开发基于基于3232位微处理器与实时操作系统位微处理器与实时操作系统第七讲第七讲 基于基于ARMARM的硬件系统结构设计的硬件系统结构设计2本节提要本节提要1 13 32 25 54 46 6基于基于ARM的硬件系统体系结构的硬件系统体系结构存储器接口设计存储器接口设计网络接口设计网络接口设计I/OI/O接口设计接口设计人机交互接口设计人机交互接口设计其它通讯接口设计其它通讯接口设计3S3C44B0/S3C2410时钟电源管理时钟电源管理lS3C44B0的电源管理有五种模式:正常模式,低速模式,空闲模的电源管理有五种模式:正常模式,低速模式,空闲模
2、式,停止模式和式,停止模式和LCD的的SL空闲模式。空闲模式。lS3C2410的电源管理模块有四种活动模式:正常模式,低速模式,的电源管理模块有四种活动模式:正常模式,低速模式,休眠模式和断电模式。休眠模式和断电模式。4S3C44B0/S3C2410时钟管理时钟管理 l1时钟结构:时钟结构:lS3C44B0的时钟发生器模块的时钟发生器模块 5l2时钟源的选择:时钟源的选择:l控制模式引脚(控制模式引脚(OM3和和OM2)与)与S3C44B0/S3C2410时钟源选择时钟源选择的结合关系如表的结合关系如表9-18所示。所示。OM3:2状态通过查阅状态通过查阅OM3和和OM2引引脚在脚在nRESE
3、T上升沿时的值内部锁存的。上升沿时的值内部锁存的。67l3PLL(锁相环)(锁相环)l内置时钟发生器的内置时钟发生器的S3C44B0 PLL/S3C2410MPLL是一个以频率与是一个以频率与相位输入信号的基准的同步输出信号的电路。相位输入信号的基准的同步输出信号的电路。8l4上电复位:上电复位:l晶振开始振荡数毫秒后,当晶振开始振荡数毫秒后,当S3C44B0OSC(S3C2410:XTlpll)时钟稳定后)时钟稳定后nRESET得到释放,得到释放,PLL开始根据默认的开始根据默认的PLL配置进行运作。配置进行运作。lPLL在上电复位后变得不稳定,所以在上电复位后变得不稳定,所以Fin代替代替
4、Fpllo(S3C2410:Mpll)在)在S/W(S3C2410:软件)更新软件)更新PLLCON的配置前直接反的配置前直接反馈到馈到Fout。l用户在复位后想使用用户在复位后想使用PLLCON寄存器的默认值,也需要通过寄存器的默认值,也需要通过S/W(S3C2410:软件)写入相同的值给软件)写入相同的值给PLLCON寄存器。寄存器。9上电复位时钟锁定上电复位时钟锁定 10l在正常模式下的操作,如果用户希望通过写在正常模式下的操作,如果用户希望通过写PMS值的方法改变频值的方法改变频率,率,PLL锁定时间会自动写入。在锁定时间里,时钟不支持内部模锁定时间会自动写入。在锁定时间里,时钟不支持
5、内部模块。块。11S3C44B0/S3C2410电源管理电源管理lS3C44B0/S3C2410电源管理模块通过控制系统时钟,实现减少电源管理模块通过控制系统时钟,实现减少系统的电源功耗。系统的电源功耗。lS3C44B0的方法与的方法与PLL,时钟控制逻辑,外设时钟控制以及唤醒,时钟控制逻辑,外设时钟控制以及唤醒信号相关。信号相关。1213S3C44B0 电源管理状态机电源管理状态机14本节提要本节提要1 13 32 25 54 46 6基于基于ARM的硬件系统体系结构的硬件系统体系结构存储器接口设计存储器接口设计网络接口设计网络接口设计I/OI/O接口设计接口设计人机交互接口设计人机交互接口
6、设计其它通讯接口设计其它通讯接口设计15S3C44B0/S3C2410存储控制器存储控制器l存储器是嵌入式系统的重要组成部分,在嵌入式开发中,存储器是嵌入式系统的重要组成部分,在嵌入式开发中,扩展存储器是重要的一步。扩展存储器是重要的一步。S3C44B0和和S3C2410的存的存储器控制器提供访问外部存储器所需要的存储器控制信储器控制器提供访问外部存储器所需要的存储器控制信号,便于扩展外部存储器。号,便于扩展外部存储器。16S3C44B0的存储器配置的存储器配置17Bank6/Bank7地址分布地址分布18ROM接口接口l 4片片8位位ROM存储器接口存储器接口 19l16位位ROM存储器接口
7、存储器接口20lSDRAM接口接口l单片单片16位位SDRAM存储器接口存储器接口 21与与2片片16M的的SDRAM的连接方法的连接方法22S3C44B0/S3C2410存储器接口存储器接口23NAND和NOR性能比较NORNOR和和NANDNAND是现在市场上两种主要的非易失闪存技术是现在市场上两种主要的非易失闪存技术lNORNOR的读速度比的读速度比NANDNAND稍快一些稍快一些lNANDNAND的写入速度比的写入速度比NORNOR快很多快很多lNANDNAND的擦除速度远比的擦除速度远比NORNOR的快的快l大多数写入操作需要先进行擦除操作大多数写入操作需要先进行擦除操作lNANDN
8、AND的擦除单元更小,相应的擦除电路更少的擦除单元更小,相应的擦除电路更少24接口差别lNOR flashNOR flash带有带有SRAMSRAM接口,线性寻址,可以很容易地存接口,线性寻址,可以很容易地存取其内部的每一个字节取其内部的每一个字节lNAND flashNAND flash使用复用接口和控制使用复用接口和控制IOIO多次寻址存取数据多次寻址存取数据lNANDNAND读和写操作采用读和写操作采用512512字节的块,这一点有点像硬盘字节的块,这一点有点像硬盘管理,此类操作易于取代硬盘等类似的块设备管理,此类操作易于取代硬盘等类似的块设备25容量和成本lNAND flashNAND
9、 flash生产过程更为简单,成本低生产过程更为简单,成本低l常见的常见的NOR flashNOR flash为为128KB128KB16MB16MB,而,而NANDNANDflashflash通常有通常有8 8128MB128MBlNORNOR主要应用在代码存储介质中,主要应用在代码存储介质中,NANDNAND适合于数据存储适合于数据存储lNANDNAND在在CompactFlashCompactFlash、Secure DigitalSecure Digital、PC CardsPC Cards和和MMCMMC存储存储卡市场上所占份额最大卡市场上所占份额最大26可靠性和耐用性l在在NAND
10、中每块的最大擦写次数是中每块的最大擦写次数是100万次,而万次,而NOR的的擦写次数是擦写次数是10万次万次l位交换的问题位交换的问题NAND flash中更突出,需要中更突出,需要ECC纠错纠错lNAND flash中坏块随机分布,需要通过软件标定中坏块随机分布,需要通过软件标定产品量产的问题产品量产的问题27嵌入式系统中应用RAM的情况28本节提要本节提要1 13 32 25 54 46 6基于基于ARM的硬件系统体系结构的硬件系统体系结构存储器接口设计存储器接口设计网络接口设计网络接口设计I/O系统设计系统设计人机交互接口设计人机交互接口设计其它通讯接口设计其它通讯接口设计29I/O子系
11、统的层次模型lI/OI/O子系统:子系统:I/OI/O设备、相关的设备驱动程序和设备、相关的设备驱动程序和I/OI/O子系统组成嵌入式子系统组成嵌入式I/OI/O子系统。子系统。lI/OI/O子系统的目标是对子系统的目标是对RTOSRTOS和应用程序员隐藏设备特定的信息,并且对和应用程序员隐藏设备特定的信息,并且对系统的外围系统的外围I/OI/O设备提供一个统一的访问方法。设备提供一个统一的访问方法。30从不同角度看I/O系统l从系统软件开发者角度看,从系统软件开发者角度看,I/OI/O操作意味着与设备的通信、操作意味着与设备的通信、对设备编程初始化和请示执行设备与系统之间的实际数据传对设备编
12、程初始化和请示执行设备与系统之间的实际数据传输以及操作完成后通知请求者。系统软件工程师必须理解设输以及操作完成后通知请求者。系统软件工程师必须理解设备的物理特性,如寄存器的定义和设备的访问方法。备的物理特性,如寄存器的定义和设备的访问方法。l从从RTOSRTOS的角度看,的角度看,I/OI/O操作意味着对操作意味着对I/OI/O请求定位正确的设备,请求定位正确的设备,对设备定位正确的设备驱动程序,并解决对设备驱动程序的对设备定位正确的设备驱动程序,并解决对设备驱动程序的请求。有时要求请求。有时要求RTOSRTOS保证对设备的同步访问。保证对设备的同步访问。RTOSRTOS必须进行必须进行抽象,
13、对应用程序员隐含设备的特性。抽象,对应用程序员隐含设备的特性。l从应用程序员角度看,从应用程序员角度看,目标是找到一个简单、统一和精练的目标是找到一个简单、统一和精练的方法与系统中出现的所有类型的设备通信。方法与系统中出现的所有类型的设备通信。31I/O接口的编址方式端口映射1 1)I/OI/O接口独立编址接口独立编址端口映端口映射方式射方式l这种编址方式是将存储器地址这种编址方式是将存储器地址空间和空间和I/OI/O接口地址空间分开接口地址空间分开设置,互不影响。设有专门的设置,互不影响。设有专门的输入指令(输入指令(ININ)和输出指令)和输出指令(OUTOUT)来完成)来完成I/OI/O
14、操作。操作。主要优点:主要优点:内存地址空间与内存地址空间与I/OI/O接口地址空间分开,互不影响,译码电接口地址空间分开,互不影响,译码电路较简单,并设有专门的路较简单,并设有专门的I/OI/O指令,所以编程序易于区分,且执行时间指令,所以编程序易于区分,且执行时间短,快速性好。短,快速性好。缺点:缺点:只用只用I/OI/O指令访问指令访问I/OI/O端口,功能有限且要采用专用端口,功能有限且要采用专用I/OI/O周期和专周期和专用用I/OI/O控制线,使微处理器复杂化。控制线,使微处理器复杂化。32I/O接口的编址方式内存映射1 1)2 2)I/OI/O接口与存储器统一编址方式接口与存储器
15、统一编址方式内存映射内存映射l这种编址方式不区分存储器地址空间和这种编址方式不区分存储器地址空间和I/OI/O接口地址空间,把所有的接口地址空间,把所有的I/OI/O接口的接口的端口都当作是存储器的一个单元对待,端口都当作是存储器的一个单元对待,每个接口芯片都安排一个或几个与存储每个接口芯片都安排一个或几个与存储器统一编号的地址号。也不设专门的输器统一编号的地址号。也不设专门的输入入/输出指令,所有传送和访问存储器的输出指令,所有传送和访问存储器的指令都可用来对指令都可用来对I/OI/O接口操作。接口操作。主要优点:主要优点:访问内存的指令都可用于访问内存的指令都可用于I/OI/O操作,数据处
16、理功能强;同时操作,数据处理功能强;同时I/OI/O接口可与存储器部分共用译码和控制电路。接口可与存储器部分共用译码和控制电路。缺点:缺点:一是一是I/OI/O接口要占用存储器地址空间的一部分;二是因不用专门接口要占用存储器地址空间的一部分;二是因不用专门的的I/OI/O指令,程序中较难区分指令,程序中较难区分I/OI/O操作。操作。33DMA I/ODMA I/ODMA I/OlDMADMA允许设备直接访问内存而不用包含处理器,在数据传输操作开允许设备直接访问内存而不用包含处理器,在数据传输操作开始之前,处理器设置始之前,处理器设置DMADMA控制器,在数据传输期间,读写操作均不控制器,在数
17、据传输期间,读写操作均不通过处理器。通过处理器。lDMADMA传输速度取决于传输速度取决于I/OI/O设备的传输速度、内存设备的速度和设备的传输速度、内存设备的速度和DMADMA控控制器的速度。制器的速度。l通过指定源地址、目的内存地址和传输到通过指定源地址、目的内存地址和传输到DMADMA控制器长度,处理器控制器长度,处理器建立传输操作。建立传输操作。34字符模式设备与块模式设备 根据设备如何处理与系统之间的数据传输方法可将设根据设备如何处理与系统之间的数据传输方法可将设备分为字符模式设备和块模式设备备分为字符模式设备和块模式设备l字符模式设备:允许非结构的数据传输。数据传输典型字符模式设备
18、:允许非结构的数据传输。数据传输典型地采用串行的形式,每次一个字节;字符设备通常是地采用串行的形式,每次一个字节;字符设备通常是简单的设备,如串口、键盘等;当系统到设备的传输简单的设备,如串口、键盘等;当系统到设备的传输速率高于设备的处理速率时,设备驱动程序开设缓冲速率高于设备的处理速率时,设备驱动程序开设缓冲区,缓存这些数据;区,缓存这些数据;l块模式设备:每次传输一个数据块。采用硬件方式控制块模式设备:每次传输一个数据块。采用硬件方式控制数据块的大小,有时需要采用固定的传输协议,如数据块的大小,有时需要采用固定的传输协议,如USBUSB、以太网等设备、以太网等设备35建立通用的I/O接口函
19、数Create()Open()Read()Write()Close()Loctl()Destroy()Driver_Create()Driver_Open()Driver_Read()Driver_Write()Driver_Close()Driver_Loctl()Driver_Destroy()I/OI/O操作操作设备驱动程序设备驱动程序应应 用用设设 备备36I/O接口设计 I/OI/O接口电路也简称接口电路。它是主机和外围设备之接口电路也简称接口电路。它是主机和外围设备之间交换信息的连接部件(电路)。它在主机和外围设备间交换信息的连接部件(电路)。它在主机和外围设备之间的信息交换中起着
20、桥梁和纽带作用。设置接口电路之间的信息交换中起着桥梁和纽带作用。设置接口电路的必要性:的必要性:a)a)解决解决CPUCPU和外围设备之间的时序配合和通信联络问题。和外围设备之间的时序配合和通信联络问题。b)b)解决解决CPUCPU和外围设备之间的数据格式转换和匹配问题。和外围设备之间的数据格式转换和匹配问题。c)c)解决解决CPUCPU的负载能力和外围设备端口选择问题。的负载能力和外围设备端口选择问题。37通用设计原则(I/O设备)lI/O接口接口l接口的概念接口的概念lCPU与外部设备的接口(与外部设备的接口(I/O适配器)适配器)l接口的功能接口的功能l控制控制 l缓冲缓冲l状态状态 l
21、转换转换l整理整理 l程序中断程序中断 38lI/O接口接口l3种寄存器种寄存器l数据寄存器、控制寄存器和状态寄存器数据寄存器、控制寄存器和状态寄存器通用设计原则(I/O设备)数据寄存器状态寄存器控制寄存器I/O接口芯片去I/O设备去CPU39通用设计原则(I/O设备)lI/O设备寻址设备寻址lI/O寻址寻址l定位定位I/O设备内部的寄存器(或一小块存储器)设备内部的寄存器(或一小块存储器)l与存储器共享总线与存储器共享总线l存储器映像法存储器映像法l混合编址混合编址CPU存储器地址总线数据总线读信号写总线译码I/O接口译码40通用设计原则(I/O设备)lI/O设备寻址设备寻址lI/O隔离法隔
22、离法l独立编址独立编址l信号线信号线MERQ/IORQl地址空间地址空间CPU存储器地址总线数据总线读信号写总线I/O接口MERQ/IORQ41lI/O设备的数据输入设备的数据输入/输出输出l输入过程输入过程lCPU把一个地址值放在地址总线上,这一步将选择某一输入设备把一个地址值放在地址总线上,这一步将选择某一输入设备;lCPU等候输入设备的数据成为有效;等候输入设备的数据成为有效;lCPU从数据总线读入数据,并放在一个相应的寄存器中。从数据总线读入数据,并放在一个相应的寄存器中。l输出过程输出过程lCPU把一个地址值放在地址总线上,选择输出设备;把一个地址值放在地址总线上,选择输出设备;lC
23、PU把数据放在数据总线上;把数据放在数据总线上;l输出设备认为数据有效,从而把数据取走。输出设备认为数据有效,从而把数据取走。l究竟什么时候数据才成为有效?通用设计原则(I/O设备)42lI/O设备的定时方式设备的定时方式l简单的外围设备简单的外围设备l机械开关、二极管(无需定时机制,机械开关、二极管(无需定时机制,CPU只要接收或发送数据就可以了)只要接收或发送数据就可以了)l慢速或中速的外围设备慢速或中速的外围设备l速度和速度和CPU速度不在一个数量级,或不规则时间间隔操作速度不在一个数量级,或不规则时间间隔操作(键盘键盘)l异步定时方式异步定时方式l中断方式中断方式l查询方式查询方式l高
24、速的外围设备高速的外围设备l以相等的时间间隔操作,采样同步定时方式以相等的时间间隔操作,采样同步定时方式 l时钟脉冲控制时钟脉冲控制 lDMA通用设计原则(I/O设备)43通用设计原则(I/O设备)lI/O控制方式控制方式l低速设备低速设备l程序查询方式程序查询方式l程序中断方式程序中断方式l高速设备高速设备lDMAl通道方式通道方式l外围处理机(外围处理机(PPU)方式)方式44lI/O接口接口l程序查询方式程序查询方式l读操作流程读操作流程1.CPU测试测试I/O设备状态,等待空闲设备状态,等待空闲2.CPU下达读命令,测试状态寄存器下达读命令,测试状态寄存器3.把数据寄存器中的数据读入到
25、把数据寄存器中的数据读入到CPU中中4.重复执行以上各步重复执行以上各步l写操作流程写操作流程1.CPU测试测试I/O设备状态,等待空闲设备状态,等待空闲2.把数据传输到把数据传输到I/O接口芯片的数据寄接口芯片的数据寄存器中存器中3.CPU下达写命令下达写命令4.重复执行以上各步重复执行以上各步通用设计原则(I/O设备)CPUI/O设备45通用设计原则(I/O设备)lI/O接口接口l中断中断l一种实现一种实现CPU和和I/O设备间异步操作的机制设备间异步操作的机制46通用设计原则(I/O设备)lI/O接口接口l中断中断l响应时间(现场保存)响应时间(现场保存)l中断优先级中断优先级l可屏蔽中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM 嵌入式 系统 硬件 结构设计 37907
限制150内