基于OMAP5912的开发应用_第1页
基于OMAP5912的开发应用_第2页
基于OMAP5912的开发应用_第3页
基于OMAP5912的开发应用_第4页
基于OMAP5912的开发应用_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

嵌入式系统设计,第九章是基于OMAP5912的开发和应用,主要内容,9.1 map5912的结构和特点,9.2基于OMAP5912的硬件平台设计,9.3基于OMAP5912的软件系统设计,9.1 map5912的结构和特点。OMAP5912处理器是由TI广泛使用的TMS 320 c 55 DSP内核和ARM926EJ-S微处理器组成的低功耗、高性能的双核应用处理器。C55x系列可为低功耗应用提供实时多媒体处理支持;ARM926能够满足控制和接口的处理需求。9.1内核ARM926EJ-S内核是一个32位的RISC处理器,以ARM9为核心,并配有Thumb扩展。它可以处理32位或16位指令以及8位、16位和32位数据。9 . 1 . 1内核,这种新的高性能、低功耗微体系结构使用协处理器CP15来增强体系结构。系统中的控制寄存器可以通过读写协处理器CP15访问内存管理单元、缓存和读写缓存控制器。该微体系结构围绕着ARM内核提供:指令和数据存储器管理单元、指令、数据和写缓冲器、性能监控、调试和JTAG单元、协处理器接口、MAC协处理器和内核存储器总线。9.1.2TMS320C55x内核的主要特点是:有一个64位8位高速缓存队列,两个17位17位乘法和累加单元,一个40位算术逻辑单元,一个16位算术逻辑单元,一个40位桶形移位器和四个40位加法器。此外,还有12条独立总线,即:3条数据读取总线、2条数据写入总线、5条数据地址总线、1条程序读取总线和1条程序地址总线。此外,还有用户可以配置的空闲域。9.1.2TMS320C55x内核,内核主要由四个单元组成:指令缓冲单元(I单元)、程序流单元(P单元)、地址数据流单元(A单元)、数据操作单元(D单元)、9.1OMAP5912的结构和特点,以及9.1.3内存管理内存通信流量控制器。以下简称为TC)管理微处理器、数字信号处理器、直接内存存取和本地总线对OMAP5912系统存储资源(如静态随机存取存储器、特别动态随机存取存储器、闪存、只读存储器等)的访问。)。其主要功能是保证处理器能够高效地访问外部存储区域,避免瓶颈现象,降低片上处理速度。9.1.3内存管理,微处理器子系统用于控制内存管理单元、系统直接内存访问控制器、微处理器外设总线桥和一些外设。图9-1内存映射、9.1映射5912结构和特征、9.1.4直接内存访问控制器(DMA)直接内存访问控制器(DMA)可以实现存储空间中不同位置之间的数据传输,无需微处理器干预。这种数据传输的数据源和数据目的地可以是片上存储器、片外存储器和各种系统外围设备,它们伴随着微处理器操作。利用直接内存存取,可以减少系统传输大量数据时微处理器的工作量。9.1.4直接内存访问控制器(DMA),DMA通道基于硬件,因此也称为物理通道。每个通道由一组配置寄存器控制。软件可用于设置传输参数,如数据长度、数据源地址和目的地址。这些物理通道配置寄存器位于微处理器的存储空间中。所有物理通道都是并行操作的,并且可以并行传输多组数据,每组数据占用一个通道。如果几个通道使用同一个DMA端口,它们将时分复用这个端口。9.1.4直接内存访问控制器(DMA),图9-3DMA传输基本流程,9.1映射5912结构和功能,9.1.5时钟和电源管理OMAP5912微处理器提供2个振荡器来帮助管理电源损耗。在设计系统时,12兆赫兹的振荡输入可以在待机模式下直接关闭,只留下32千赫兹的振荡器来维持系统运行。这样,不仅可以保证系统的运行和需要维护的外围设备的正常运行(例如,用户可以通过键盘等输入设备唤醒整个系统),而且可以很容易地关闭大部分接口设备,达到控制功耗的目的。9.1OMAP5912结构和特点,9.1.6外围控制模块1。微处理器专用外设包括定时器、看门狗定时器和中断处理器。这三种标准外设只能通过访问ARM926专用总线(TIPB)来提供操作系统和应用程序所需的管理功能。9.1OMAP5912结构和特性,2。微处理器的通用外设主要包括摄像头接口、MPU输出、微线接口、USB接口等。这些设备只能由微处理器和微处理器配置的系统内存控制器访问。因为该总线可以被系统DMA控制器访问,所以它被称为公共总线。数字信号处理器无法访问该总线上的外设。9.1.6外围控制模块,3。DSP专用外设包括定时器、看门狗定时器和中断处理器。4.DSP通用外设包括2个多通道缓冲串行端口和2个多通道串行端口,可由DSP和DSPDMA直接访问。这些外设也可以通过MPUI接口由微处理器和系统存储器存取,但MPUI接口必须相应地配置。9.1.6外围控制模块,5。共享外设系统的共享外设包括:邮箱模块,可以实现DSP和微处理器之间基于中断的信号交换;串行端口。8个通用定时器;3个通用异步收发器;I2C总线的主从接口:多通道缓冲串行端口;多媒体卡和标准接口;64通用功能输入输出(GPIO);32千赫同步时钟。主要内容,9.1OMAP5912结构和特点9.2基于OMAP5912的硬件平台设计9.3基于OMAP5912的软件系统设计,9.2基于OMAP5912的硬件平台设计,OMAP5912的ARM926内核主要负责提供操作系统、用户界面和高级应用程序,实时多任务调度管理,以及DSPCSSx控制和通信。DSP内核适用于语音应用所需的实时信号处理功能,主要负责实现复杂的多媒体信号处理。解码后的信号经过数模转换和功率放大,再输出到耳机等输出设备。9.2基于OMAP5912的硬件平台设计,由于OMAP平台的低功耗,9.2.1电源管理模块对电源管理模块提出了更高的要求。OSK开发板采用德州仪器推出的手持式高集成度大功率集成电路芯片TPS65010。该产品性能水平高,功率转换效率高达97%。与其他分立解决方案相比,TPS65010可以大大减少占用的电路板空间。9.2基于OMAP5912的硬件平台设计,9.2.2由于存储模块最终将离线运行,所有程序将固化到FLASH中,包括中断向量表、初始化代码、引导代码、系统应用程序、显示菜单的字体。在硬件开发阶段,可以通过跳线将一个内存并行连接到闪存的存储空间,这样就可以通过CCS将程序直接加载到内存中,从而避免在调试中断和启动过程中反复修改烧写闪存的操作。9.2.2内存模块,1。FlashMemoryOMAP5912可以支持两个NORFLASH芯片。OSK开发板采用2微米MT28F128J3芯片,单芯片容量16MB。OMAP5912有24条地址线A1-A24可用。9.2.2内存模块,2。DDRSDRAM DDR可以在一个时钟周期内完成只能在两个周期内完成的任务,所以从理论上讲,相同速率的DDR存储器的性能是SDRAM的两倍。可以选择工作电压为1.8V的低功耗DDRSDRAM芯片。在OSK发展委员会中,三星的K4X56163PE-L(F)G被选中。该芯片的容量为32MB,工作频率为100兆赫兹。9.2基于OMAP5912的硬件平台设计,9.2.3音频处理模块音频处理模块在硬件上采用基于IIS总线的音频系统架构。国际声音总线,也称为I2S,是飞利浦提出的一种串行数字音频总线协议。音频电路包括两个音频输入(linein和micin)和一个音频输出(headphoneout)。9.2.3音频处理模块TLV320AIC23(以下简称AIC23)是德州仪器推出的一款具有模拟功能的高性能立体声音频编解码器。它内置耳机输出放大器,支持两种输入模式(两种模式之一)下的麦克风和线路输入,并可对输入和输出进行可编程增益调整。AIC23的模数转换和数模转换元件高度集成在芯片中。采用先进的-过采样技术,可在8K至96K的频率范围内提供16、20、24和32位采样。模数转换器和数模转换器的输出信噪比分别可达90dB和100dB。9.2基于OMAP5912的硬件平台设计,9.2.4外设接口1。CF卡接口CF卡有两种规格:型和型,前者厚3毫米,后者厚一倍,但容量也增加了。9.2.4外围接口,2。以太网接口,图9-7LAN91C 96内部结构,9.2.4外围接口,3。以太网接口JTAG/多ICE仿真调试接口:OMAP提供JTAG信号,由SN74LVC244AGQN缓冲并连接到外部接口。USB接口:OMAP5912的USB主机控制器提供低速(1.5兆位/秒)和全速(12兆位/秒)传输速率。主要内容9.1OMAP5912结构和特点9.2硬件平台设计基于OMAP5912 9.3软件系统设计基于OMAP5912 9.3.1软件体系结构OMAP5912系统图98软件体系结构OMAP5912系统框图和OMAP5912系统9.3.1软件体系结构为了满足跨平台需求,系统在驱动程序之上建立了硬件抽象层(HAL)。通过对硬件的抽象描述,可以降低与底层硬件的耦合度。即使底层硬件发生了变化,只要有一个合适的驱动程序,整个系统架构就可以不变地运行。这主要是为将来的系统扩展和移植做准备。9 . 3 . 1系统软件体系结构,系统服务是指位于语言层的一组接口及其操作,为应用程序提供语言调用。其功能类似于DOS下的INT21H指令,提供中断服务程序。只要应用程序请求操作系统的帮助,系统服务就会被调用。这一层还包括对系统语言库的支持。9.3基于OMAP5912的软件系统设计,9.3.2嵌入式Linux系统的启动过程Linux操作系统在嵌入式系统中越来越流行,基于Linux的嵌入式PDA和手机产品层出不穷。一般来说,嵌入式Linux系统的启动可以分为四个层次。引导加载器Linux内核文件系统用户应用程序,9.3.2嵌入式Linux系统引导程序,在嵌入式系统中,通常没有像BIOS这样的固件程序(有些嵌入式CPU可能有一个短的引导程序,如TIMSC1210等。),因此整个系统加载引导任务完全由引导加载程序完成。例如,在基于XScalecore的嵌入式系统中,当系统加电或复位时,它通常在地址0 x00000000开始执行,并且系统的引导加载程序通常安排在该地址。9.3基于OMAP5912、9 . 3 . 3引导加载程序及其移植的软件系统设计简单地说,引导加载程序是在操作系统内核运行之前运行的一个小程序,相当于电脑主板上的BIOS,是最低级别的引导软件。通过这个小程序,我们可以初始化硬件设备并建立内存空间的映射图,从而使系统的软件和硬件环境达到一个合适的状态,从而为最终调用操作系统内核准备好正确的环境。引导加载程序及其移植1 .引导加载程序在嵌入式系统中非常重要。在正常情况下,需要引导加载程序来启动计算机操作系统。主要原因是大多数计算机系统现在都使用“易失性”半导体存储器作为存储器,如电子动态随机存取存储器、动态随机存取存储器、动态随机存取存储器等。用于个人电脑系统。一旦断电,内存中的操作系统映像就会消失。因此,操作系统只能存储在非易失性存储介质上,并且操作系统映像只能在系统通电时加载到存储器中进行操作。9 . 3 . 3引导加载程序及其移植,事实上,大多数嵌入式系统仍然使用引导加载程序,而不是允许可执行映像在本地的EEPROM或闪存中执行。一般来说,这是出于几个考虑:效率考虑、操作系统的多样性、存储位置与执行位置的分离、调试/调试考虑、嵌入式系统的独特开发模式、9 . 3 . 3引导程序及其移植,以及2。引导程序的相关概念。通常,引导加载程序主要在硬件上实现,尤其是在嵌入式系统中。因此,在嵌入式世界中构建一个通用的引导程序几乎是不可能的。尽管如此,我们仍然可以总结一些引导加载程序的一般概念来指导用户特定的引导加载程序的设计和实现:9 . 3 . 3引导加载程序及其迁移。引导加载器支持的中央处理器和嵌入式系统板引导加载器的安装介质用于控制引导加载器的设备或机制。引导加载程序的操作模式。用于引导加载程序和主机之间文件传输的通信设备,以及协议引导加载程序、9 . 3 . 3引导加载程序及其迁移的启动过程。3.移植引导加载程序在嵌入式领域移植操作系统的关键是移植引导加载程序和移植操作系统内核硬件的相关部分。设计和实现一个好的僵尸程序将大大提高操作系统移植的稳定性,大大加快操作系统移植的周期。9 . 3 . 3引导加载程序及其移植,(1)引导加载程序移植中的关键问题处理器异常内存初始化,9 . 3 . 3引导加载程序及其移植,(2)U-BOOT移植引导加载程序是系统通电后运行的第一个代码。通常,当系统启动时,它只运行很短的时间,但是对于嵌入式系统,它是一个非常重要的系统组件。当我们使用单片机或操作系统如C/OS时,一般只需要在初始化中央处理器和其他硬件设备后直接加载程序,而不需要构建单独的引导加载程序。然而,从某种意义上来说,构建或移植一个引导加载程序是所有Linux系统的一项基本任务。9.3基于OMAP5912的软件系

温馨提示

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

评论

0/150

提交评论