基于缓冲区的驱动程序架构设计的方法及系统技术方案

技术编号:9935313 阅读:138 留言:0更新日期:2014-04-18 06:49
一种基于缓冲区的驱动程序架构设计的方法,其特征在于,包括缓冲区层驱动程序、逻辑通道层驱动程序、物理通道层驱动程序,基带业务使用缓冲区驱动程序提供的函数接口;缓冲区驱动程序与逻辑通道驱动程序是继承关系,逻辑通道实现缓冲区的函数指针指向的函数,并在逻辑通道创建实例时给缓冲区的函数指针赋值;逻辑通道驱动程序与物理通道驱动程序是组合关系或聚合关系,在一个物理通道上能够支持多个逻辑通道,逻辑通道层驱动程序使用物理通道层驱动程序的操作函数,通过配置函数进行配置;物理通道驱动程序操作的是硬件,完成数据的接收和发送。

【技术实现步骤摘要】
基于缓冲区的驱动程序架构设计的方法及系统
本专利技术涉及移动通信领域,尤其涉及基于缓冲区的驱动程序架构设计的方法及系统。
技术介绍
在移动通信基带业务的数字信号处理(嵌入式)领域,各种基带业务(WIMAX、LTE、UMTS、TD-SCDMA、GSM等)运行在一套驱动程序平台软件上,或者一种基带业务在一套驱动程序平台软件的支持下运行在多种硬件平台上。在现有的处理技术中,为了达到对底层支持多种硬件平台、对高层支持多种基带业务的需求,软件平台需要为每种硬件平台和每种业务处理提供完全定制的驱动程序。当业务需要更换硬件平台时,软件平台(驱动程序软件)中与硬件平台相关的代码就需要进行大幅度的修改。目前在嵌入式领域,还不存在既支持TI硬件平台,又支持Freescale硬件平台及其它硬件平台的的软件平台。在移动通信基带业务的数字信号处理(嵌入式)领域,为了达到对底层支持多种硬件平台、对高层支持多种基带业务的需求,软件平台需要为每种硬件平台和每种业务处理提供完全定制的驱动程序。当业务需要更换硬件平台时,软件平台(驱动程序软件)中与硬件平台相关的代码就需要进行大幅度的修改。这种修改对软件设计、开发、测试、维护带来较大的工作量和风险。由此可见,传统的架构方式使得驱动程序软件(软件平台)在可重用性、可移植性、可配置性、可维护性等方面存在一定的缺陷。在移动通信基带业务的数字信号处理(嵌入式)领域,各种基带业务(WIMAX、LTE、UMTS、TD-SCDMA、GSM等)运行在一套驱动程序平台软件上,或者一种基带业务在一套驱动程序平台软件的支持下运行在多种硬件平台上。例如,通用DSP芯片(如TIDSP、FreescaleDSP、LSIDSP等)或带有DSP处理器核或CPU核的SOC芯片等硬件平台。在传统的处理中,为了达到对底层支持多种硬件平台、对高层支持多种基带业务的需求,软件平台需要为每种硬件平台和每种业务处理提供完全定制的软件。例如,基带业务的版本A运行在TIDSP上,相同基带业务的版本B运行在FreescaleDSP上,为了支持这两套硬件平台,软件平台常采用的架构方案是分别提供两套驱动程序,而且两套驱动程序接口函数也不一致(接口一般设计为依赖硬件,硬件不同,接口函数也不同)。这样导致的后果是,业务版本A如果需要运行在FreescaleDSP硬件平台上或业务版本B需要运行在TIDSP硬件平台上,业务版本A或业务版本B的软件平台中与硬件平台相关的代码就需要进行大幅度的修改,这种修改对软件设计、开发、测试、维护带来较大的工作量和风险。由此可见,传统的软件平台架构方式使驱动程序软件(软件平台)在可重用性、可移植性、可配置性、可维护性等方面存在一定的缺陷。在通用计算机领域,目前有Windows、Linux、Unix等商用或开源操作系统提供统一界面的(比如Linux的VFS接口)、跨平台(支持ARM/X86/MIPS/SPARC/SH等)的软件平台。但在嵌入式领域,例如TI提供的DSP/BIOS平台只支持TI系列的DSP,Freesacle的SmartDSPOS只支持Freescale系列DSP等,目前还不存在既支持TI硬件平台,又支持Freescale硬件平台及其它硬件平台的的软件平台。
技术实现思路
为了解决现有技术中的问题,本专利技术提供了一种基于缓冲区的驱动程序架构设计的方法。本专利技术提供了一种基于缓冲区的驱动程序架构设计的方法,包括缓冲区层驱动程序、逻辑通道层驱动程序、物理通道层驱动程序,基带业务使用缓冲区驱动程序提供的函数接口;缓冲区驱动程序与逻辑通道驱动程序是继承关系,逻辑通道实现缓冲区的函数指针指向的函数,并在逻辑通道创建实例时给缓冲区的函数指针赋值;逻辑通道驱动程序与物理通道驱动程序是组合关系或聚合关系,在一个物理通道上能够支持多个逻辑通道,逻辑通道层驱动程序使用物理通道层驱动程序的操作函数,通过配置函数进行配置;物理通道驱动程序操作的是硬件,完成数据的接收和发送。作为本专利技术的进一步改进,缓冲区包括循环缓冲区、块缓冲区、帧缓冲区以及固定缓冲区,该方法还包括循环缓冲区接口、块缓冲区接口、帧缓冲区接口以及固定缓冲区接口。作为本专利技术的进一步改进,所述循环缓冲区包括读指针、写指针、预读指针、预写指针,所述固定缓冲区每次读写时,指定源地址、目的地址和长度。作为本专利技术的进一步改进,所述块缓冲区具有如下特征:通过读写指针维护该缓冲区;总的块数目必须大于等于2;读取每个块的数据时,返回长度都为该块内有效数据的长度;同一个块,同一时刻支持多次写操作,不支持多次读操作。作为本专利技术的进一步改进,所述帧缓冲区具有如下特征:帧缓冲区使用队列进行管理,队列至少含有消息队列和空闲队列;每个队列元素指向的帧缓冲区大小是相同的;每个队列元素和每个帧缓冲区是绑定的。本专利技术还提供了一种基于缓冲区的驱动程序架构设计的系统,包括缓冲区层驱动程序、逻辑通道层驱动程序、物理通道层驱动程序,基带业务使用缓冲区驱动程序提供的函数接口;缓冲区驱动程序与逻辑通道驱动程序是继承关系,逻辑通道实现缓冲区的函数指针指向的函数,并在逻辑通道创建实例时给缓冲区的函数指针赋值;逻辑通道驱动程序与物理通道驱动程序是组合关系或聚合关系,在一个物理通道上能够支持多个逻辑通道,逻辑通道层驱动程序使用物理通道层驱动程序的操作函数,通过配置函数进行配置;物理通道驱动程序操作的是硬件,完成数据的接收和发送。作为本专利技术的进一步改进,缓冲区包括循环缓冲区、块缓冲区、帧缓冲区以及固定缓冲区,该方法还包括循环缓冲区接口、块缓冲区接口、帧缓冲区接口以及固定缓冲区接口。作为本专利技术的进一步改进,所述循环缓冲区包括读指针、写指针、预读指针、预写指针,所述固定缓冲区每次读写时,指定源地址、目的地址和长度。作为本专利技术的进一步改进,所述块缓冲区具有如下特征:通过读写指针维护该缓冲区;总的块数目必须大于等于2;读取每个块的数据时,返回长度都为该块内有效数据的长度;同一个块,同一时刻支持多次写操作,不支持多次读操作。作为本专利技术的进一步改进,所述帧缓冲区具有如下特征:帧缓冲区使用队列进行管理,队列至少含有消息队列和空闲队列;每个队列元素指向的帧缓冲区大小是相同的;每个队列元素和每个帧缓冲区是绑定的。本专利技术的有益效果是:本专利技术在分析现有的移动通信基带业务(包括WIMAX、LTE、UMTS、TD-SCDMA、GSM等)数据处理特点的基础上,得到四类基于缓冲区的基带业务(包括基于循环缓冲区的业务、基于块缓冲区的业务、基于帧缓冲区的业务、基于固定缓冲区的业务等)。根据这四类缓冲区业务,抽象出四类缓冲区,并基于这四类缓冲区设计出嵌入式软件平台的设备驱动程序架构。本专利技术设计的驱动程序架构为基带业务处理提供了四类抽象的、统一的缓冲区接口,在跨平台移植性、健壮性和可配置性等方面都比传统的驱动程序接口有较大的提高。附图说明图1是本专利技术的基于缓冲区的驱动程序架构图。图2是本专利技术的循环缓冲区结构图。图3是本专利技术的块缓冲区结构图。图4是本专利技术的帧缓冲区结构图。图5是本专利技术的固定缓冲区结构图。具体实施方式对移动通信基带业务(WIMAX、LTE、UMTS、TD-SCDMA、GSM等)数据处理进行分析后,可以发现基带业务处理具有的如下特点:①因为处理器和本文档来自技高网
...
基于缓冲区的驱动程序架构设计的方法及系统

【技术保护点】
一种基于缓冲区的驱动程序架构设计的方法,其特征在于,包括缓冲区层驱动程序、逻辑通道层驱动程序、物理通道层驱动程序,基带业务使用缓冲区驱动程序提供的函数接口;缓冲区驱动程序与逻辑通道驱动程序是继承关系,逻辑通道实现缓冲区的函数指针指向的函数,并在逻辑通道创建实例时给缓冲区的函数指针赋值;逻辑通道驱动程序与物理通道驱动程序是组合关系或聚合关系,在一个物理通道上能够支持多个逻辑通道,逻辑通道层驱动程序使用物理通道层驱动程序的操作函数,通过配置函数进行配置;物理通道驱动程序操作的是硬件,完成数据的接收和发送。

【技术特征摘要】
1.一种基于缓冲区的驱动程序架构设计的方法,其特征在于,包括缓冲区层驱动程序、逻辑通道层驱动程序、物理通道层驱动程序,基带业务使用缓冲区驱动程序提供的函数接口;缓冲区驱动程序与逻辑通道驱动程序是继承关系,逻辑通道实现缓冲区的函数指针指向的函数,并在逻辑通道创建实例时给缓冲区的函数指针赋值;逻辑通道驱动程序与物理通道驱动程序是组合关系或聚合关系,在一个物理通道上能够支持多个逻辑通道,逻辑通道层驱动程序使用物理通道层驱动程序的操作函数,通过配置函数进行配置;物理通道驱动程序操作的是硬件,完成数据的接收和发送;缓冲区包括循环缓冲区、块缓冲区、帧缓冲区以及固定缓冲区,该方法还包括循环缓冲区接口、块缓冲区接口、帧缓冲区接口以及固定缓冲区接口。2.根据权利要求1所述的方法,其特征在于:所述循环缓冲区包括读指针、写指针、预读指针、预写指针,所述固定缓冲区每次读写时,指定源地址、目的地址和长度。3.根据权利要求1所述的方法,其特征在于,所述块缓冲区具有如下特征:通过读写指针维护该缓冲区;总的块数目必须大于等于2;读取每个块的数据时,返回长度都为该块内有效数据的长度;同一个块,同一时刻支持多次写操作,不支持多次读操作。4.根据权利要求1所述的方法,其特征在于,所述帧缓冲区具有如下特征:帧缓冲区使用队列进行管理,队列至少含有消息队列和空闲队列;每个队列元素指向的帧缓冲区大小是相同的;每个队列元素和每个帧缓冲区是绑定的。...

【专利技术属性】
技术研发人员:蔡铁唐飞伍星
申请(专利权)人:深圳信息职业技术学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1