一种切换模式的方法、片上系统及基站的制作方法

文档序号:10697590阅读:476来源:国知局
一种切换模式的方法、片上系统及基站的制作方法
【专利摘要】本申请实施例公开了一种切换模式的方法、片上系统及基站。本申请实施例片上系统应用于基站,包括中央处理器CPU以及调整工作模式在主模式和从模式之间切换的USB模块,USB模块一端与CPU耦接,USB模块还用于耦接外部USB设备;在USB模块耦接外部USB设备时,CPU用于检测外部USB设备的设备类型,外部USB设备的设备类型包括主设备和从设备;若外部USB设备为主设备,CPU还用于将USB模块的工作模式调整在从模式;若外部USB设备为从设备,CPU还用于将USB模块的工作模式调整在主模式。本申请实施例使基站作为既可以作为主设备,又可以作为从设备,同时通过普通USB数据线与外部USB设备连接,提升了通用性和兼容性。
【专利说明】
一种切换模式的方法、片上系统及基站
技术领域
[0001]本申请涉及通信技术领域,特别涉及一种切换模式的方法、片上系统及基站。
【背景技术】
[0002]通用串行总线(英文全称:Universal Serial Bus,英文简称:USB)模块在基站上广泛应用,通过基站上USB模块与外部设备的对接,可以实现对基站的近端维护、调试加载等功能。
[0003]目前,基站上USB模块与外部设备的对接,其中一个主要方案是插入U盘进行软件升级,其次将调试网口复用到USB接口上,配备定制的“USB转接RJ45”的转接线缆,连接到便携机网口上完成近端维护、调试加载功能。但是通过USB转RJ45线缆连接便携机的方式,一方面配发转接线缆,增加物料成本;另一方面转接线缆定制,容易丢失影响站点维护,且电缆无装配关系,影响生产总装。
[0004]为了解决上述专用线缆问题,后续出现使用包括四个管脚的普通USB数据线(非OTG数据线)连接便携机的USB口,再通过以太网USB驱动,实现网口的功能,便携机通过该普通USB数据线连接基站的USB模块。
[0005]但是,日常使用中,基于便捷性及方案兼容性的考虑,基站USB模块在有些场景下仍需要使用插入U盘实现近端维护等功能,这样要求基站USB模块支持多种设备的识别,既要实现基站USB模块接U盘,此时基站USB模块作为主设备,工作在主模式;又要实现便携机通过普通USB数据线连接基站,此时基站USB模块作为从设备,工作在从模式,而目前没有这方面的兼容设计。

【发明内容】

[0006]本申请实施例提供了一种切换模式的方法、片上系统及基站,使基站作为既可以作为主设备,又可以作为从设备,具有更大的通用性和兼容性。
[0007]本申请第一方面提供了一种片上系统,应用于基站,所述片上系统包括中央处理器CPU,以及调整工作模式在主模式和从模式之间切换的通用串行总线USB模块,所述USB模块一端与所述CHJ耦接,所述USB模块还用于耦接外部USB设备;
[0008]在所述USB模块耦接外部USB设备时,所述CPU用于检测所述外部USB设备的设备类型,所述外部USB设备的设备类型包括主设备和从设备;
[0009]若所述外部USB设备为主设备,所述CPU还用于将所述USB模块的工作模式调整在从模式;
[0010]若所述外部USB设备为从设备,所述CPU还用于将所述USB模块的工作模式调整在主模式。
[0011 ]结合本申请的第一方面,在本申请第一方面的第一种实现方式中,所述USB模块包括调整USB模块工作模式在主模式和从模式之间切换的USB主从模块、选择器、USB物理层模块以及USB接口,所述USB接口与所述USB物理层模块耦接,所述USB接口用于耦接外部USB设备,所述选择器与所述USB物理层模块和所述USB主从模块耦接;
[0012]所述CTU具体用于在所述外部USB设备为主设备时,用于通过所述选择器将所述USB模块的工作模式调整在从模式;
[0013]所述CTU具体用于在所述外部USB设备为从设备时,用于通过所述选择器将所述USB模块的工作模式调整在主模式。
[0014]结合本申请第一方面的第一种实现方式,在本申请第一方面的第二种实现方式中,所述USB主从模块包括USB主模块和USB从模块,所述选择器分别与所述USB主模块和所述USB从模块耦接;
[0015]所述CPU具体用于在所述外部USB设备为主设备时,用于通过所述选择器选通与所述USB从模块之间的连接,使所述USB模块的工作模式调整在从模式;
[0016]所述CPU具体用于在所述外部USB设备为从设备时,用于通过所述选择器选通与所述USB主模块之间的连接,使所述USB模块的工作模式调整在主模式。
[0017]结合本申请第一方面的第二种实现方式,在本申请第一方面的第三种实现方式中,所述USB主模块包括开放式主机控制接口 OHCI控制器、增强型主机控制器接口EHCI控制器;所述OHCI控制器包括第一寄存器,所述EHCI控制器包括第二寄存器;
[0018]在所述外部USB设备为从设备时,所述CPU还用于确定所述外部USB设备所支持的速度模式;
[0019]若所述外部USB设备支持高速模式,则所述CPU还用于将所述外部USB设备的读写数据路由到所述EHCI控制器;所述USB主模块用于向所述CPU发出设备连接中断消息;所述CPU还用于在耦接的外部双倍速率同步动态随机存储器DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第二寄存器中;
[0020]若所述外部USB设备支持全速模式或低速模式,则所述CPU还用于将所述外部USB设备的读写数据路由到所述OHCI控制器;所述USB主模块用于向所述CPU发出设备连接中断消息;所述CPU还用于在耦接的外部DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第一寄存器中。
[0021]结合本申请第一方面的第三种实现方式,在本申请第一方面的第四种实现方式中,所述USB主模块还包括缓存区;
[0022]所述USB主模块还用于将所述DDR中的描述符获取到所述缓存区中,并对所述描述符进行解析;
[0023]若所述描述符表示需要向所述外部USB设备发送数据,则所述USB主模块还用于从所述DDR中获取需要发送的数据,并向所述外部USB设备发送;
[0024]若所述描述符表示需要从所述外部USB设备中获取数据,则所述USB主模块还用于接收所述外部USB设备发送的数据,存入所述缓冲区,并写到所述描述符内指针指向的DDR空间中。
[0025]结合本申请第一方面的第二种实现方式、第一方面的第三种实现方式或第一方面的第四种实现方式,在本申请第一方面的第五种实现方式中,所述USB从模块包括第三寄存器和直接存储器访问DMA;
[0026]在所述外部USB设备为主设备时,所述USB从模块用于向所述CPU发起连接中断消息,所述CPU在外部DDR内构建相应的描述符,并将所述描述符的入口地址写入到所述第三寄存器中,所述DMA用于根据所述入口地址在所述DDR内获取所述描述符;
[0027]所述DMA还用于在所述DDR中获取相应数据并传输到所述外部USB设备,传输数据完毕后更新所述DDR中的描述符状态,
[0028]或者,
[0029]所述DMA还用于接收到所述外部USB设备发送的数据并回写到所述DDR中,接收数据完毕后更新所述DDR中的描述符状态。
[0030]本申请第二方面提供了一种切换模式的方法,应用于基站中的片上系统,所述片上系统包括调整工作模式在主模式和从模式之间切换的通用串行总线USB模块;
[0031]所述方法包括:
[0032]在所述USB模块耦接外部USB设备时,检测所述外部USB设备的设备类型,所述外部USB设备的设备类型包括主设备和从设备;
[0033]若所述外部USB设备为主设备,将所述USB模块的工作模式调整在从模式;
[0034]若所述外部USB设备为从设备,将所述USB模块的工作模式调整在主模式。
[0035]结合本申请的第二方面,在第二方面的第一种实现方式中,所述USB模块包括调整USB模块工作模式在主模式和从模式之间切换的USB主从模块、选择器、USB物理层模块以及USB接口,所述USB接口与所述USB物理层模块耦接,所述USB接口用于耦接外部USB设备,所述选择器与所述USB物理层模块和所述USB主从模块耦接;
[0036]所述将所述USB模块的工作模式调整在从模式,包括:
[0037]通过所述选择器将所述USB模块的工作模式调整在从模式;
[0038]所述将所述USB模块的工作模式调整在主模式,包括:
[0039]通过所述选择器将所述USB模块的工作模式调整在主模式。
[0040]结合本申请第二方面的第一种实现方式,在本申请第二方面的第二种实现方式中,所述USB主从模块包括USB主模块和USB从模块,所述选择器分别与所述USB主模块和所述USB从模块耦接;
[0041]所述通过所述选择器将所述USB模块的工作模式调整在从模式,包括:
[0042]通过所述选择器选通与所述USB从模块之间的连接,使所述USB模块的工作模式调整在从模式;
[0043]所述通过所述选择器将所述USB模块的工作模式调整在主模式,包括:
[0044]通过所述选择器选通与所述USB主模块之间的连接,使所述USB模块的工作模式调整在主模式。
[0045]结合本申请第二方面的第二种实现方式,在本申请第二方面的第三种实现方式中,所述USB主模块包括开放式主机控制接口 OHCI控制器、增强型主机控制器接口EHCI控制器;所述OHCI控制器包括第一寄存器,所述EHCI控制器包括第二寄存器;
[0046]在所述外部USB设备为从设备时,所述方法还包括:
[0047]确定所述外部USB设备所支持的速度模式;
[0048]若所述外部USB设备支持高速模式,则将所述外部USB设备的读写数据路由到所述EHCI控制器;通过所述USB主模块向所述CPU发出设备连接中断消息;在耦接的外部双倍速率同步动态随机存储器DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第二寄存器中;
[0049]若所述外部USB设备支持全速模式或低速模式,则将所述外部USB设备的读写数据路由到所述OHCI控制器;通过所述USB主模块向所述CPU发出设备连接中断消息;在耦接的外部DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第一寄存器中。
[0050]结合本申请第二方面的第三种实现方式,在本申请第二方面的第四种实现方式中,所述USB主模块还包括缓存区;
[0051 ]所述方法还包括:
[0052]通过所述USB主模块将所述DDR中的描述符获取到所述缓存区中,并对所述描述符进行解析;
[0053]若所述描述符表示需要向所述外部USB设备发送数据,则通过所述USB主模块从所述DDR中获取需要发送的数据,并向所述外部USB设备发送;
[0054]若所述描述符表示需要从所述外部USB设备中获取数据,则通过所述USB主模块接收所述外部USB设备发送的数据,存入所述缓冲区,并写到所述描述符内指针指向的DDR空间中。
[0055]结合本申请第二方面的第二种实现方式、第二方面的第三种实现方式或第二方面的第四种实现方式,在本申请第二方面的第五种实现方式中,所述USB从模块包括第三寄存器和直接存储器访问DMA;
[0056]在所述外部USB设备为主设备时,所述方法还包括:
[0057]通过所述USB从模块向所述CPU发起连接中断消息,在外部DDR内构建相应的描述符,并将所述描述符的入口地址写入到所述第三寄存器中,所述DMA用于根据所述入口地址在所述DDR内获取所述描述符;
[0058]通过所述DMA在所述DDR中获取相应数据并传输到所述外部USB设备,传输数据完毕后更新所述DDR中的描述符状态,
[0059]或者,
[0060]通过所述DMA接收到所述外部USB设备发送的数据并回写到所述DDR中,接收数据完毕后更新所述DDR中的描述符状态。
[0061]本申请第三方面提供了一种基站,包括片上系统SoC和外部双倍速率同步动态随机存储器DDR,所述SoC与所述DDR耦接,所述SoC为上述第一方面提供的任意一种实现方式中的片上系统。
[0062]从以上技术方案可以看出,本申请实施例具有以下优点:
[0063]本申请实施例中应用于基站的片上系统,包括调整工作模式在主模式和从模式之间切换的通用串行总线USB模块,可以根据接入的外部设备类型,切换到不同的工作模式,使基站作为既可以作为主设备,又可以作为从设备,同时通过普通USB数据线与外部USB设备连接,提升了通用性和兼容性。
【附图说明】
[0064]图1为本申请实施例中的架构示意图;
[0065]图2为本申请实施例中片上系统的一个实施例示意图;
[0066]图3为本申请实施例中片上系统的另一个实施例示意图;
[0067]图4为本申请实施例中片上系统的另一个实施例示意图;
[0068]图5为本申请实施例中切换模式的方法的一个实施例示意图。
【具体实施方式】
[0069]本申请实施例提供了一种切换模式的方法、片上系统及基站,使基站作为既可以作为主设备,又可以作为从设备,具有更大的通用性和兼容性。
[0070]如图1所示,为本申请实施例中的一个架构示意图,该示意图为基站中实现USB功能的相关模块的示意图,对基站侧,包括片上系统(英文全称:System on Chip,英文简称:SoC)和双倍速率同步动态随机存储器(英文全称:Double Data Rate SynchronousDynamic Random Access Memory,英文简称:DDR),该SoC用于親接外部通用串行总线(英文全称:Universal Serial Bus,英文简称:USB)设备。
[0071]本申请实施例中首先提供了一种片上系统,该片上系统应用于基站,如图2所示为本发明实施例中片上系统的一个实施例示意图,该片上系统包括中央处理器(CentralProcessing Unit,CHJ),以及调整工作模式在主模式和从模式之间切换的通用串行总线USB模块,所述USB模块一端与所述CPU耦接,所述USB模块还用于耦接外部USB设备;该USB模块同时还可以与DDR耦接。
[0072]在所述USB模块耦接外部USB设备时,所述CPU用于检测所述外部USB设备的设备类型,所述USB模块的设备类型包括主设备和从设备;
[0073]其中,检测所述外部USB设备的设备类型的方式,可以是CPU用于将所述USB模块的工作模式依次调整在主模式、从模式(主模式在前或主模式在后均可),试图和对端外部USB设备按照USB协议交互,来识别对端的设备类型(即为从设备还是主设备),当USB模块在某个模式可以与外部USB设备交互时,即认为外部USB设备为与该模式相反对应的设备,例如,当USB模块在主模式下可以与外部USB设备交互,则认为外部USB设备为从设备。
[0074]若所述外部USB设备为主设备,所述CPU还用于将所述USB模块的工作模式调整在从模式;
[0075]若所述外部USB设备为从设备,所述CPU还用于将所述USB模块的工作模式调整在主模式。
[0076]在图2所示实施例的基础上,进一步,如图3所示,该USB模块包括调整USB模块工作模式在主模式和从模式之间切换的USB主从模块、选择器、USB物理层模块以及USB接口,该USB接口与该USB物理层模块耦接,该USB接口用于耦接外部USB设备,该选择器与该USB物理层模块和该USB主从模块耦接;
[0077]所述CTU具体用于在所述外部USB设备为主设备时,用于通过所述选择器将所述USB模块的工作模式调整在从模式;
[0078]所述CTU具体用于在所述外部USB设备为从设备时,用于通过所述选择器将所述USB模块的工作模式调整在主模式。
[0079]本申请实施例中应用于基站的片上系统,包括调整工作模式在主模式和从模式之间切换的通用串行总线USB模块,可以根据接入的外部设备类型,切换到不同的工作模式,使基站作为既可以作为主设备,又可以作为从设备,并通过普通USB数据线与外部USB设备连接,提升了通用性和兼容性。同时保留U盘直接插入使用便捷性的同时,使用普通USB数据线外接USB主机,作为从设备使用,使用普通USB数据线保证线材易获取,最大程度满足基站应用场景。
[0080]在图3所示实施例的基础上,进一步,如图4所示,该USB主从模块包括USB主模块和USB从模块,选择器分别与该USB主模块和该USB从模块耦接;
[0081 ]所述CPU具体用于在所述外部USB设备为主设备时,用于通过所述选择器选通与所述USB从模块之间的连接,使所述USB模块的工作模式调整在从模式;
[0082]所述CPU具体用于在所述外部USB设备为从设备时,用于通过所述选择器选通与所述USB主模块之间的连接,使所述USB模块的工作模式调整在主模式。
[0083]可选的,本发明实施例中的选择器可以是二选一选择器,或者多选一选择器中使用两个选择端的情形。
[0084]进一步,该USB主模块包括开放式主机控制接口OHCI控制器、增强型主机控制器接口 EHCI控制器;所述OHCI控制器包括第一寄存器,所述EHCI控制器包括第二寄存器;
[0085]在所述外部USB设备为从设备时,所述CPU还用于确定所述外部USB设备所支持的速度模式;CPU确定外部USB设备所支持的速度模式,即检测确定外部USB设备为全速设备、低速设备或者高速设备,该检测确定机制与USB枚举过程中检测设备速度类似,此处不再赘述。
[0086]若所述外部USB设备支持高速模式,则所述CPU还用于将所述外部USB设备的读写数据路由到所述EHCI控制器;所述USB主模块用于向所述CPU发出设备连接中断消息;所述CPU还用于在耦接的外部双倍速率同步动态随机存储器DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第二寄存器中;
[0087]若所述外部USB设备支持全速模式或低速模式,则所述CPU还用于将所述外部USB设备的读写数据路由到所述OHCI控制器;所述USB主模块用于向所述CPU发出设备连接中断消息;所述CPU还用于在耦接的外部DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第一寄存器中。
[0088]可选的,如图4所示,所述USB主模块还包括缓存区;
[0089]所述USB主模块还用于将所述DDR中的描述符获取到所述缓存区中,并对所述描述符进行解析;
[0090]若描述符表示需要向所述外部USB设备发送数据,则所述USB主模块还用于从所述DDR中获取需要发送的数据,并向所述外部USB设备发送;
[0091]若描述符表示需要从所述外部USB设备中获取数据,则所述USB主模块还用于接收所述外部USB设备发送的数据,存入所述缓冲区,并写到描述符内指针指向的DDR空间中。
[0092]可选的,如图4所示,所述USB从模块包括第三寄存器和直接存储器访问(DirectMemory Access,DMA);
[0093]在所述外部USB设备为主设备时,所述USB从模块用于向所述CPU发起连接中断消息,所述CPU在外部DDR内构建相应的描述符,并将描述符的入口地址写入到所述第三寄存器中,所述DMA用于根据所述入口地址在所述DDR内获取所述描述符;
[0094]所述DMA还用于在所述DDR中获取相应数据并传输到所述外部USB设备,传输数据完毕后更新所述DDR中的描述符状态,
[0095]或者,
[0096]所述DMA还用于接收到所述外部USB设备发送的数据并回写到所述DDR中,接收数据完毕后更新所述DDR中的描述符状态。
[0097]本申请实施例中,当SoC上没有插入外部USB设备时,按照预设周期进行轮询检测,在外部USB设备识别成功后,不再进行检测,外部USB设备拔出之后重新启动定时轮询检测。
[0098]需要说明的是,本申请实施例中涉及的USB模块以及其他对应的USB相关模块及设备,例如USB接口、外部USB设备等,既可以支持USBl.0、USB2.0、USB3.0,还可以支持USB3.1,此处不作限定。
[0099]下面结合具体场景对本发明实施例进行介绍。
[0100]I)假设本端(基站侧)为主设备,对端(外部USB设备)为从设备,假设外部USB设备为U盘,将SOC内部的选择器选通USB主模块,按照主设备模式(主模式)识别从设备的枚举过程完成插入设备的识别:
[0101]当从设备U盘插到USB口后,USB主模块先与U盘进行速度协商握手,握手成功之后只要U盘在位,不再轮询识别。
[0102]如果U盘支持High-speed(高速模式),则路由到增强型主机控制器接口(英文全称:Enhanced Host Controller Interface,英文简称:EHCI)控制器;
[0?03]如果U盘支持Ful Ι-speed(全速模式)或者Low-speed (低速模式),则路由到开放式主机控制接口(英文全称:0pen Host Controller Interface,英文简称:0HCI)控制器。然后USB主模块向CPU发出设备连接(Connect)中断,随后CPU在外部DDR构建相应的描述符,并将基地址等信息写入到USB主模块的第一寄存器或第二寄存器中(看路由到EHCI控制器还是OHCI控制器,若路由到OHCI控制器,此处则为第一寄存器,若路由到EHCI控制器,此处则为第二寄存器)。
[0104]USB主模块将DDR中的描述符取到内部Buf f er (缓冲区)中,然后对其进行解析,如果描述符表明是需要向U盘发数据,则需要先从DDR中取需要发送的数据,再对U盘发起OUT传输(即向U盘传输数据);如果描述符表明是需要从U盘中获取数据,则USB主模块先向U盘发起IN操作(即接收U盘传输的数据),然后将回读到数据存入Buffer,再写到描述符内指针指向的DDR空间中。
[0105]当PC之类的主设备插入时,则无法握手成功,通过选择器选通到USB从模块切换为从模式,按照步骤2)描述的进行识别。
[0106]2)假设本端(基站侧)为从设备,对端(外部USB设备)为主设备,以外部USB设备为PC(Personal Computer)为例进行说明;
[0107]将SOC内部的选择器MUX选通USB从模块,配合对端主机设备的枚举过程完成从设备的识别;
[0108]当PC机之类的主设备插入,此时USB从模块向CPU发起连接中断,CPU在DDR内构建相应的描述符,并且将描述符的入口地址写入到USB从模块的第三寄存器中,然后DMA根据这个入口地址去DDR内取描述符,USB2.0Dev ice解析描述符,如果是PC要取USB从模块的数据,则DMA需要去DDR中取数据然后进行传输,传输完毕后更新DDR中的描述符状态;如果是PC向USB从模块发送数据,则DMA需要将接收到的数据回写到DDR中,并且更新DDR中的描述符状态。
[0109]当U盘之类的从设备插到USB口后,则无法握手成功。
[0110]3)无设备插入期间定时轮询检测,重复步骤I和2,设备插入识别主从成功之后不再检测,设备拔出之后重新启动定时轮询检测。
[0111]本申请实施例中还提供一种基站,片上系统SoC和外部双倍速率同步动态随机存储器DDR,所述SoC与所述DDR耦接,所述SoC为如上描述中任一可能的片上系统。
[0112]下面介绍本申请实施例中切换模式的方法的实施例。
[0113]请参阅图5,为本申请实施例中切换模式的方法的一个实施例,该方法应用于基站中的片上系统,所述片上系统包括调整工作模式在主模式和从模式之间切换的通用串行总线USB模块;
[0114]所述方法包括:
[0115]501、在所述USB模块耦接外部USB设备时,检测所述外部USB设备的设备类型;
[0116]其中,所述外部USB设备的设备类型包括主设备和从设备;
[0117]502、若所述外部USB设备为主设备,将所述USB模块的工作模式调整在从模式;
[0118]503、若所述外部USB设备为从设备,将所述USB模块的工作模式调整在主模式。
[0119]可选的,所述USB模块包括调整USB模块工作模式在主模式和从模式之间切换的USB主从模块、选择器、USB物理层模块以及USB接口,所述USB接口与所述USB物理层模块耦接,所述USB接口用于耦接外部USB设备,所述选择器与所述USB物理层模块和所述USB主从丰吴块親接;
[0120]所述将所述USB模块的工作模式调整在从模式,包括:
[0121 ]通过所述选择器将所述USB模块的工作模式调整在从模式;
[0122]所述将所述USB模块的工作模式调整在主模式,包括:
[0123]通过所述选择器将所述USB模块的工作模式调整在主模式。
[0124]可选的,所述USB主从模块包括USB主模块和USB从模块,所述选择器分别与所述USB主模块和所述USB从模块耦接;
[0125]所述通过所述选择器将所述USB模块的工作模式调整在从模式,包括:
[0126]通过所述选择器选通与所述USB从模块之间的连接,使所述USB模块的工作模式调整在从模式;
[0127]所述通过所述选择器将所述USB模块的工作模式调整在主模式,包括:
[0128]通过所述选择器选通与所述USB主模块之间的连接,使所述USB模块的工作模式调整在主模式。
[0129]可选的,所述USB主模块包括开放式主机控制接口OHCI控制器、增强型主机控制器接口 EHCI控制器;所述OHCI控制器包括第一寄存器,所述EHCI控制器包括第二寄存器;
[0130]在所述外部USB设备为从设备时,所述方法还包括:
[0131 ]确定所述外部USB设备所支持的速度模式;
[0132]若所述外部USB设备支持高速模式,则将所述外部USB设备的读写数据路由到所述EHCI控制器;通过所述USB主模块向所述CPU发出设备连接中断消息;在耦接的外部双倍速率同步动态随机存储器DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第二寄存器中;
[0133]若所述外部USB设备支持全速模式或低速模式,则将所述外部USB设备的读写数据路由到所述OHCI控制器;通过所述USB主模块向所述CPU发出设备连接中断消息;在耦接的外部DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第一寄存器中。
[0134]可选的,所述USB主模块还包括缓存区;
[0135]所述方法还包括:
[0136]通过所述USB主模块将所述DDR中的描述符获取到所述缓存区中,并对所述描述符进行解析;
[0137]若描述符表示需要向所述外部USB设备发送数据,则通过所述USB主模块从所述DDR中获取需要发送的数据,并向所述外部USB设备发送;
[0138]若描述符表示需要从所述外部USB设备中获取数据,则通过所述USB主模块接收所述外部USB设备发送的数据,存入所述缓冲区,并写到描述符内指针指向的DDR空间中。
[0139]可选的,所述USB从模块包括第三寄存器和直接存储器访问DMA;
[0140]在所述外部USB设备为主设备时,所述方法还包括:
[0141]通过所述USB从模块向所述CPU发起连接中断消息,在外部DDR内构建相应的描述符,并将描述符的入口地址写入到所述第三寄存器中,所述DMA用于根据所述入口地址在所述DDR内获取所述描述符;
[0142]通过所述DMA在所述DDR中获取相应数据并传输到所述外部USB设备,传输数据完毕后更新所述DDR中的描述符状态,
[0143]或者,
[0144]通过所述DMA接收到所述外部USB设备发送的数据并回写到所述DDR中,接收数据完毕后更新所述DDR中的描述符状态。
[0145]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0146]在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0147]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0148]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0149]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0150]以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种片上系统,其特征在于,应用于基站,所述片上系统包括中央处理器CPU,以及调整工作模式在主模式和从模式之间切换的通用串行总线USB模块,所述USB模块一端与所述CHJ耦接,所述USB模块还用于耦接外部USB设备; 在所述USB模块耦接外部USB设备时,所述CPU用于检测所述外部USB设备的设备类型,所述外部USB设备的设备类型包括主设备和从设备; 若所述外部USB设备为主设备,所述CPU还用于将所述USB模块的工作模式调整在从模式; 若所述外部USB设备为从设备,所述CPU还用于将所述USB模块的工作模式调整在主模式。2.根据权利要求1所述的片上系统,其特征在于,所述USB模块包括调整USB模块工作模式在主模式和从模式之间切换的USB主从模块、选择器、USB物理层模块以及USB接口,所述USB接口与所述USB物理层模块耦接,所述USB接口用于耦接外部USB设备,所述选择器与所述USB物理层模块和所述USB主从模块耦接; 所述CPU具体用于在所述外部USB设备为主设备时,用于通过所述选择器将所述USB模块的工作模式调整在从模式; 所述CPU具体用于在所述外部USB设备为从设备时,用于通过所述选择器将所述USB模块的工作模式调整在主模式。3.根据权利要求2所述的片上系统,其特征在于,所述USB主从模块包括USB主模块和USB从模块,所述选择器分别与所述USB主模块和所述USB从模块耦接; 所述CPU具体用于在所述外部USB设备为主设备时,用于通过所述选择器选通与所述USB从模块之间的连接,使所述USB模块的工作模式调整在从模式; 所述CPU具体用于在所述外部USB设备为从设备时,用于通过所述选择器选通与所述USB主模块之间的连接,使所述USB模块的工作模式调整在主模式。4.根据权利要求3所述的片上系统,其特征在于,所述USB主模块包括开放式主机控制接口 OHCI控制器、增强型主机控制器接口 HlCI控制器;所述OHCI控制器包括第一寄存器,所述EHCI控制器包括第二寄存器; 在所述外部USB设备为从设备时,所述CPU还用于确定所述外部USB设备所支持的速度模式; 若所述外部USB设备支持高速模式,则所述CPU还用于将所述外部USB设备的读写数据路由到所述EHCI控制器;所述USB主模块用于向所述CPU发出设备连接中断消息;所述CPU还用于在耦接的外部双倍速率同步动态随机存储器DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第二寄存器中; 若所述外部USB设备支持全速模式或低速模式,则所述CPU还用于将所述外部USB设备的读写数据路由到所述OHCI控制器;所述USB主模块用于向所述CHJ发出设备连接中断消息;所述CHJ还用于在耦接的外部DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第一寄存器中。5.根据权利要求4所述的片上系统,其特征在于,所述USB主模块还包括缓存区; 所述USB主模块还用于将所述DDR中的描述符获取到所述缓存区中,并对所述描述符进行解析; 若所述描述符表示需要向所述外部USB设备发送数据,则所述USB主模块还用于从所述DDR中获取需要发送的数据,并向所述外部USB设备发送; 若所述描述符表示需要从所述外部USB设备中获取数据,则所述USB主模块还用于接收所述外部USB设备发送的数据,存入所述缓冲区,并写到所述描述符内指针指向的DDR空间中。6.根据权利要求3至5中任一所述的片上系统,其特征在于,所述USB从模块包括第三寄存器和直接存储器访问DMA; 在所述外部USB设备为主设备时,所述USB从模块用于向所述CPU发起连接中断消息,所述CPU在外部DDR内构建相应的描述符,并将所述描述符的入口地址写入到所述第三寄存器中,所述DMA用于根据所述入口地址在所述DDR内获取所述描述符; 所述DMA还用于在所述DDR中获取相应数据并传输到所述外部USB设备,传输数据完毕后更新所述DDR中的描述符状态, 或者, 所述DMA还用于接收到所述外部USB设备发送的数据并回写到所述DDR中,接收数据完毕后更新所述DDR中的描述符状态。7.—种切换模式的方法,其特征在于,应用于基站中的片上系统,所述片上系统包括调整工作模式在主模式和从模式之间切换的通用串行总线USB模块; 所述方法包括: 在所述USB模块耦接外部USB设备时,检测所述外部USB设备的设备类型,所述外部USB设备的设备类型包括主设备和从设备; 若所述外部USB设备为主设备,将所述USB模块的工作模式调整在从模式; 若所述外部USB设备为从设备,将所述USB模块的工作模式调整在主模式。8.根据权利要求7所述的方法,其特征在于,所述USB模块包括调整USB模块工作模式在主模式和从模式之间切换的USB主从模块、选择器、USB物理层模块以及USB接口,所述USB接口与所述USB物理层模块耦接,所述USB接口用于耦接外部USB设备,所述选择器与所述USB物理层模块和所述USB主从模块耦接; 所述将所述USB模块的工作模式调整在从模式,包括: 通过所述选择器将所述USB模块的工作模式调整在从模式; 所述将所述USB模块的工作模式调整在主模式,包括: 通过所述选择器将所述USB模块的工作模式调整在主模式。9.根据权利要求8所述的方法,其特征在于,所述USB主从模块包括USB主模块和USB从模块,所述选择器分别与所述USB主模块和所述USB从模块耦接; 所述通过所述选择器将所述USB模块的工作模式调整在从模式,包括: 通过所述选择器选通与所述USB从模块之间的连接,使所述USB模块的工作模式调整在从模式; 所述通过所述选择器将所述USB模块的工作模式调整在主模式,包括: 通过所述选择器选通与所述USB主模块之间的连接,使所述USB模块的工作模式调整在主模式。10.根据权利要求9所述的方法,其特征在于,所述USB主模块包括开放式主机控制接口OHCI控制器、增强型主机控制器接口 EHCI控制器;所述OHCI控制器包括第一寄存器,所述EHCI控制器包括第二寄存器; 在所述外部USB设备为从设备时,所述方法还包括: 确定所述外部USB设备所支持的速度模式; 若所述外部USB设备支持高速模式,则将所述外部USB设备的读写数据路由到所述EHCI控制器;通过所述USB主模块向所述CPU发出设备连接中断消息;在耦接的外部双倍速率同步动态随机存储器DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第二寄存器中; 若所述外部USB设备支持全速模式或低速模式,则将所述外部USB设备的读写数据路由到所述OHCI控制器;通过所述USB主模块向所述CPU发出设备连接中断消息;在耦接的外部DDR构建相应的描述符,并将所述描述符对应的地址信息写入到所述第一寄存器中。11.根据权利要求10所述的方法,其特征在于,所述USB主模块还包括缓存区; 所述方法还包括: 通过所述USB主模块将所述DDR中的描述符获取到所述缓存区中,并对所述描述符进行解析; 若所述描述符表示需要向所述外部USB设备发送数据,则通过所述USB主模块从所述DDR中获取需要发送的数据,并向所述外部USB设备发送; 若所述描述符表示需要从所述外部USB设备中获取数据,则通过所述USB主模块接收所述外部USB设备发送的数据,存入所述缓冲区,并写到所述描述符内指针指向的DDR空间中。12.根据权利要求8至10中任一所述的方法,其特征在于,所述USB从模块包括第三寄存器和直接存储器访问DMA; 在所述外部USB设备为主设备时,所述方法还包括: 通过所述USB从模块向所述CPU发起连接中断消息,在外部DDR内构建相应的描述符,并将所述描述符的入口地址写入到所述第三寄存器中,所述DMA用于根据所述入口地址在所述DDR内获取所述描述符; 通过所述DMA在所述DDR中获取相应数据并传输到所述外部USB设备,传输数据完毕后更新所述DDR中的描述符状态, 或者, 通过所述DMA接收到所述外部USB设备发送的数据并回写到所述DDR中,接收数据完毕后更新所述DDR中的描述符状态。13.—种基站,其特征在于,包括片上系统SoC和外部双倍速率同步动态随机存储器DDR,所述SoC与所述DDR耦接,所述SoC为如权利要求1至6中任一所述的片上系统。
【文档编号】G06F13/28GK106066842SQ201610369726
【公开日】2016年11月2日
【申请日】2016年5月30日 公开号201610369726.1, CN 106066842 A, CN 106066842A, CN 201610369726, CN-A-106066842, CN106066842 A, CN106066842A, CN201610369726, CN201610369726.1
【发明人】许世峰, 何贵洲, 周光剑
【申请人】上海华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1