[go: up one dir, main page]

CN119336148A - 一种外设管理设备及系统 - Google Patents

一种外设管理设备及系统 Download PDF

Info

Publication number
CN119336148A
CN119336148A CN202411370042.4A CN202411370042A CN119336148A CN 119336148 A CN119336148 A CN 119336148A CN 202411370042 A CN202411370042 A CN 202411370042A CN 119336148 A CN119336148 A CN 119336148A
Authority
CN
China
Prior art keywords
universal bus
module
state
peripheral
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202411370042.4A
Other languages
English (en)
Inventor
张充
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202411370042.4A priority Critical patent/CN119336148A/zh
Publication of CN119336148A publication Critical patent/CN119336148A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3253Power saving in bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

本申请公开了计算机技术领域内的一种外设管理设备及系统。本申请提供的外设管理设备以处理器作为主控,并利用外设控制器包括的控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口,对至少两个通用总线接口连接的至少两个通用总线设备进行数据传输的管理,实现了多通用总线设备的有序管理;并且,在必要情况下,可以将暂时不工作的通用总线设备进行挂起,以进行节能,能够降低设备功耗。应用于服务器时,能降低USB外设对服务器功耗的影响。

Description

一种外设管理设备及系统
技术领域
本申请涉及计算机技术领域,特别涉及一种外设管理设备及系统。
背景技术
目前,服务器能够从USB外设中获取数据,并能够将本地数据传输至USB外设,二者之间频繁的数据传输会增加服务器功耗,影响服务器稳定性。并且,服务器与USB外设之间并非是不间断的传输数据,在不传输数据的情况下,USB外设也会增加服务器功耗。
因此,如何降低USB外设对设备功耗的影响,是本领域技术人员需要解决的问题。
发明内容
有鉴于此,本申请的目的在于提供一种外设管理设备及系统,以降低USB外设对设备功耗的影响。其具体方案如下:
第一方面,本申请提供了一种外设管理设备,包括:处理器和外设控制器;所述处理器和所述外设控制器通过目标总线连接;
所述外设控制器包括:控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口;
所述处理器,用于通过所述目标总线控制所述至少两个通用总线接口连接的至少两个通用总线设备;
所述控制模块,用于在检测到任意通用总线接口连接的通用总线设备时,为当前通用总线设备分配对应的目标地址,并根据所述目标地址生成对应的端点号;通过不同通用总线设备对应的端点号区分不同通用总线设备;
所述数据分析模块,用于根据数据有效状态位确认任意通用总线接口连接的通用总线设备的传输数据包是否有效;
所述收发模块,用于根据不同通用总线设备的数据传输方式、收发状态机以及所述数据分析模块输出的数据有效信号,控制数据的收发操作;
所述时钟模块,用于若在预设时长内未检测到任意通用总线接口连接的通用总线设备传输的帧起始包,且确认相应通用总线设备的总线信号无效,则确定该通用总线设备为挂起状态。
可选地,所述外设控制器还包括:状态控制模块;
相应地,所述状态控制模块,用于控制设备状态;所述设备状态包括:上电状态、默认状态、已配置地址状态、已配置信息状态以及挂起状态;
相应地,所述状态控制模块,用于当检测到任意通用总线接口连接的通用总线设备的设备复位信号有效时,控制相应通用总线设备进入所述上电状态;
若在所述上电状态下,检测到有效的总线信号,则控制相应通用总线设备进入所述默认状态;
若在所述上电状态下,检测到无效的总线信号且接收到所述时钟模块发送的挂起确认消息,则控制相应通用总线设备进入所述挂起状态;
在所述默认状态下,发送可分配消息至所述控制模块,以使所述控制模块执行地址分配操作;若所述控制模块完成地址分配操作,则控制相应通用总线设备进入所述入已配置地址状态;若所述控制模块未完成地址分配操作,则检测总线信号的有效性和挂起确认消息,以确认是否控制相应通用总线设备进入所述挂起状态;
在所述已配置地址状态下,若检测到相应通用总线设备的信息已配置消息,则控制相应通用总线设备进入所述已配置信息状态;
在所述挂起状态下,若检测到相应通用总线设备的唤醒信号,则控制相应通用总线设备进入所述默认状态。
可选地,所述外设控制器还包括:数据选择模块;
相应地,所述数据选择模块,用于确定任意通用总线接口连接的通用总线设备的传输数据包的类型;所述类型包括:令牌包、帧起始包、数据包以及握手包。
可选地,所述外设控制器还包括:校验模块;
相应地,所述校验模块,用于对任意通用总线接口连接的通用总线设备的传输数据包进行校验。
可选地,所述外设控制器还包括:寄存器模块;
相应地,所述寄存器模块,用于分别记录所述至少两个通用总线接口连接的至少两个通用总线设备的设备信息。
可选地,所述外设控制器还包括:握手模块;
相应地,所述握手模块,用于确定任意通用总线接口连接的通用总线设备的数据传输方式;所述数据传输方式包括:全速传输方式和低速传输方式。
可选地,所述外设控制器还包括:安全模块;
相应地,所述安全模块包括:
加密加速器,用于对任意通用总线接口连接的通用总线设备的传输数据包进行加密,并加速传输。
第二方面,本申请提供了一种外设管理系统,包括:至少一个上述任一项所述的外设管理设备;不同外设管理设备连接同一基板管理控制器。
可选地,所述基板管理控制器内置于服务器。
可选地,所述服务器连接有至少一个加速卡。
通过以上方案可知,本申请提供了一种外设管理设备,包括:处理器和外设控制器;所述处理器和所述外设控制器通过目标总线连接;所述外设控制器包括:控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口;所述处理器,用于通过所述目标总线控制所述至少两个通用总线接口连接的至少两个通用总线设备;所述控制模块,用于在检测到任意通用总线接口连接的通用总线设备时,为当前通用总线设备分配对应的目标地址,并根据所述目标地址生成对应的端点号;通过不同通用总线设备对应的端点号区分不同通用总线设备;所述数据分析模块,用于根据数据有效状态位确认任意通用总线接口连接的通用总线设备的传输数据包是否有效;所述收发模块,用于根据不同通用总线设备的数据传输方式、收发状态机以及所述数据分析模块输出的数据有效信号,控制数据的收发操作;所述时钟模块,用于若在预设时长内未检测到任意通用总线接口连接的通用总线设备传输的帧起始包,且确认相应通用总线设备的总线信号无效,则确定该通用总线设备为挂起状态。
可见,本申请提供的外设管理设备以处理器作为主控,并利用外设控制器包括的控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口,对至少两个通用总线接口连接的至少两个通用总线设备进行数据传输的管理,实现了多通用总线设备的有序管理;并且,在必要情况下,可以将暂时不工作的通用总线设备进行挂起,以进行节能,能够降低设备功耗。应用于服务器时,能降低USB外设对服务器功耗的影响。
相应地,本申请提供的一种外设管理装置、设备及介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种外设管理设备示意图;
图2为本申请公开的一种USB通信示意图;
图3为本申请公开的另一种外设管理设备示意图;
图4为本申请公开的一种外设控制器示意图;
图5为本申请公开的一种电子设备示意图;
图6为本申请提供的一种服务器结构图;
图7为本申请提供的一种终端结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实例,都属于本申请保护的范围。
目前,服务器能够从USB外设中获取数据,并能够将本地数据传输至USB外设,二者之间频繁的数据传输会增加服务器功耗,影响服务器稳定性。并且,服务器与USB外设之间并非是不间断的传输数据,在不传输数据的情况下,USB外设也会增加服务器功耗。为此,本申请提供了一种外设管理方案,能够降低USB外设对设备功耗的影响。
参见图1所示,本申请实施例公开了一种外设管理设备,包括:处理器和外设控制器;处理器和外设控制器通过目标总线(如APB)连接;外设控制器包括:控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口。
处理器,用于通过目标总线控制至少两个通用总线接口连接的至少两个通用总线设备。
控制模块,用于在检测到任意通用总线接口连接的通用总线设备时,为当前通用总线设备分配对应的目标地址,并根据目标地址生成对应的端点号;通过不同通用总线设备对应的端点号区分不同通用总线设备。
数据分析模块,用于根据数据有效状态位确认任意通用总线接口连接的通用总线设备的传输数据包是否有效。
收发模块,用于根据不同通用总线设备的数据传输方式、收发状态机以及数据分析模块输出的数据有效信号,控制数据的收发操作。
时钟模块,用于若在预设时长内未检测到任意通用总线接口连接的通用总线设备传输的帧起始包,且确认相应通用总线设备的总线信号无效,则确定该通用总线设备为挂起状态。
本实施例提供的外设管理设备以处理器作为主控,并利用外设控制器包括的控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口,对至少两个通用总线接口连接的至少两个通用总线设备进行数据传输的管理,实现了多通用总线设备的有序管理;并且,在必要情况下,可以将暂时不工作的通用总线设备进行挂起,以进行节能,能够降低设备功耗。应用于服务器时,能降低USB外设对服务器功耗的影响。
在一种示例中,外设控制器还包括:状态控制模块;相应地,状态控制模块,用于控制设备状态;设备状态包括:上电状态、默认状态、已配置地址状态、已配置信息状态以及挂起状态;相应地,状态控制模块,用于当检测到任意通用总线接口连接的通用总线设备的设备复位信号有效时,控制相应通用总线设备进入上电状态;若在上电状态下,检测到有效的总线信号,则控制相应通用总线设备进入默认状态;若在上电状态下,检测到无效的总线信号且接收到时钟模块发送的挂起确认消息,则控制相应通用总线设备进入挂起状态;在默认状态下,发送可分配消息至控制模块,以使控制模块执行地址分配操作;若控制模块完成地址分配操作,则控制相应通用总线设备进入已配置地址状态;若控制模块未完成地址分配操作,则检测总线信号的有效性和挂起确认消息,以确认是否控制相应通用总线设备进入挂起状态;在已配置地址状态下,若检测到相应通用总线设备的信息已配置消息,则控制相应通用总线设备进入已配置信息状态;在挂起状态下,若检测到相应通用总线设备的唤醒信号,则控制相应通用总线设备进入默认状态。
在一种示例中,外设控制器还包括:数据选择模块;相应地,数据选择模块,用于确定任意通用总线接口连接的通用总线设备的传输数据包的类型;类型包括:令牌包、帧起始包、数据包以及握手包。
在一种示例中,外设控制器还包括:校验模块;相应地,校验模块,用于对任意通用总线接口连接的通用总线设备的传输数据包进行校验。
在一种示例中,外设控制器还包括:寄存器模块;相应地,寄存器模块,用于分别记录至少两个通用总线接口连接的至少两个通用总线设备的设备信息。
在一种示例中,外设控制器还包括:握手模块;相应地,握手模块,用于确定任意通用总线接口连接的通用总线设备的数据传输方式;数据传输方式包括:全速传输方式和低速传输方式。
在一种示例中,外设控制器还包括:安全模块;相应地,安全模块包括:加密加速器,用于对任意通用总线接口连接的通用总线设备的传输数据包进行加密,并加速传输。
需要说明的是,当USB(Universal Serial Bus,通用串行总线)设备插入USB接口后,主机服务器检测到D+/D-线上的电压,确认有设备连接。若为USB3.0设备,即设备为高速时,管脚D+会上拉,主机通过判断该管脚的高低电平检测其为高速设备。设备接入USB接口,等待主机产生复位信号后,将设备上的所有寄存器与其状态值恢复为默认值,此时完成USB设备的初始化。初始化完成后,主机发送令牌包(Token)开始请求传输过程,如果请求声明中有数据传输,则确认数据过程,最后通过状态过程,结束一次通信,具体请参见图2。
通信过程中,一个USB事务分为三个包,分别为令牌包、数据包与握手包,令牌包指名了该事务的传输的类型,包括目标设备的地址和端点;数据包为该传输过程中的数据,握手包对该传输的结果进行反馈。一个完整的USB传输包有以下组成部分:起始包为、同步域、传输数据包、结束包;传输数据包中一般包括:PID、地址、帧号、数据和CRC校验。
在一种示例中,选用RISC-V处理器和APB(Advanced Peripheral Bus,外围总线)连接外设控制器。外设控制器中设如下几个模块:USB收发模块、USB寄存器模块、CRC校验模块、USB时钟模块和USB的数据处理模块,具体请参见图3。
请参照图3,USB收发模块负责与USB设备传输,将产生的数据与主机通信。数据通过收发模块传输至USB外设系统后,USB数据处理模块与CRC校验模块对传输来的USB数据进行数据处理与CRC校验。根据USB数据类型的不同,该模块负责进行帧首识别、PID的产生与校验、CRC产生与校验和握手分组处理等功能。基于USB所对应的事件以及端点相关事件生成信号产生中断,主要包括USB复位、帧头包的传输、数据传输有误等信号。
在传输过程中,USB外设所传输来的数据会被存储至USB外设系统里的寄存器子模块中,例如每个USB端点类型和状态将会被存储在相应的端点寄存器里。而USB外设所传输来的状态信息解析后会被控制寄存器存储。当目前状态为正常传输状态时,USB外设系统正常工作;而当该系统识别到USB外设处于休眠状态,则会被挂起相应USB外设,若没有任何USB外设工作,则挂起外设控制器及其连接的各USB外设,进入低功耗模式。当有中断发生时,USB设备中的中断源和中断状态等信息存储在中断寄存器中,除此之外,中断寄存器还根据需要可以清除未处理的中断状态表示跳过该中断的处理。
时钟模块会产生一个与帧开始报文同步的时钟脉冲,时钟脉冲产生后,如果3ms内USB设备中没有数据传输,则将系统全局挂起进入至低功耗模式。
USB传输中,首先识别有效的令牌分组,进行相关的数据传输。在数据传输过程中,端点与缓冲区的数据交换由USB内部的16位寄存器实现。传输完成后,根据传输方向发送或接收握手分组与主机通信,并触发与端点相关的中断。USB模块可通过写控制寄存器置于挂起模式,即低功耗模式,以降低功耗。低功耗模式下,USB模块时钟减慢或停止,可通过检测数据传输或连接中断源到唤醒引脚,立即恢复时钟系统或启动/停止时钟。
更为具体的,请参见图4,外设控制器中可设更多模块,包括:USB数据选择模块、USB时钟发生模块、USB状态模块、USB数据分析模块、USB接收和发送模块、CRC校验模块、USB控制模块、USB寄存器模块以及USB握手模块。图4所示4个通道可分别传输时钟信号、复位信号、数据信号和控制信号。
请参照图4,根据服务器所插入的USB外设不同,USB数据选择模块确定相应USB传输的数据包种类,当检测到传输使能为高位时,USB传输开始,首先确定所传输包的种类,分为令牌包、SOF包、数据包以及握手包。每一种包有不同的PID,USB识别到不同的PID时,即能确定包的类型以及传输方式。等到整个USB传输完成后,返回握手信号至服务器,再传输CRC校验位,表示传输完成。
USB时钟发生模块检测USB模块的采样点和传输点,以及作为帧定时器和计算SOF包丢失计数。当USB采样到SOF包时,采样当前计数值,作为1ms的标准计数值。而若SE0状态保持了120个时钟周期,则当作复位信号处理,USB进入复位状态;当三个SOF包丢失,即一段时间内未识别到服务器中USB外设工作,系统会转换至J状态,USB外设会被挂起,进入挂起状态,此时必须主机发出唤醒信号,USB设备才可以由挂起状态被激活。
USB状态模块定义了USB中所有状态。该模块由状态机实现,所定义的状态有设备上电状态、设备默认状态、已配置地址状态、已配置状态以及挂起状态。当复位信号有效时,设备进入上电状态,在上电状态下,设备检测总线复位信号,若复位信号有效,则进入设备默认状态,若无效则进入挂起状态。在设备默认状态下,设备会响应设备和配置描述符的要求,若此时分配了唯一的地址,则进入已配置地址状态,若没有分配则进入挂起状态。在已配置地址状态下,会配置USB设备,若配置好则进入已配置状态,若挂起信号有效则进入挂起状态,若此时复位则进入设备上电状态。在挂起状态下,设备则会根据不同的信号进入到已配置状态或已配置地址状态以及设备默认状态。
USB数据分析模块是将USB数据选择模块选择完成后的包类型进行传输,该模块的硬件电路由状态机完成。当USB已经接收到PID数据时,USB开始传输数据。当接收的状态位为0时,检测数据分析模块是否有效,若有效则检测发送信号或者接收信号状态,当该状态位有效则开始数据传输,根据不同的PID,USB将发送或接收不同的包。
USB接收和发送模块负责USB的发送和接收。在发送模块的实现里,将定义8种状态,分别为IDLE、SOP、DATA、EOP1、E0P2、WAIT、WAIT1以及WAIT2状态。当USB处于复位状态或发送使能为低时,USB的状态为IDLE状态,此时发送成功位为低位,USB发送无效。若USB未处于复位状态且发送使能有效,则USB开始发送。首先USB将会转至SOP状态,开始传输数据,USB分别转至DATA状态以及EOP状态,最后进入等待态,表示USB发送完成。接收模块的实现与发送模块类似。
CRC校验模块是对于USB外设发送和接收时的CRC校验。CRC校验即循环冗余校验(Cyclic Redundancy Check),基于一组数据会计算一组校验码,该校验码用来核对数据传输过程中是否有错误或者传输过程中被更改。在CRC校验中,将要进行校验的数据为被除数,选取合适除数做模2除法,得到的余数为CRC校验值。
USB控制模块控制USB哪个端点进行传输。端点配置完成后,识别到不同的USB外设设备,USB外设系统解析后会产生不同的PID,根据PID的不同,USB将传输不同的数据包,实现与主机的通信。其中,每一个USB设备连接到主机时,会被分配至一个唯一的地址,该地址被解析后得到一个确定的标识符,为端点号。USB外设系统识别到这些端点号后会确认此端点来自哪个设备,并对这些设备进行初始化配置,根据不同设备来确认不同的数据包传输方式。此外,如果服务器上外设一段时间没有响应的话,控制模块会控制USB外设进入到挂起模式。
USB寄存器模块寄存整个USB模块中的数据、控制位和状态。USB握手模块中定义了USB全速和低速传输,根据传输方式的不同,所对应的时钟也不相同,确定传输方式之后,USB外设系统进行发送和接收操作。
本实施例采用RISC-V架构处理器和APB总线挂载USB外设,在不需要USB传输时,可将USB外设模块挂起进入至低功耗模式,能够有效克服传统ARM架构下USB功耗高、电路复杂的缺点,并将其应用于服务器的USB数据传输中,能够降低服务器功耗。
下面对本申请实施例提供的一种外设管理系统进行介绍,下文描述的一种外设管理系统与本文描述的其他实施例可以相互参照。
本申请实施例公开了一种外设管理系统,包括:至少一个上述任一实施例所述的外设管理设备;不同外设管理设备连接同一基板管理控制器。
在一种示例中,基板管理控制器内置于服务器。
在一种示例中,服务器连接有至少一个加速卡。
本示例中,外设管理设备包括:处理器和外设控制器;处理器和外设控制器通过目标总线连接;外设控制器包括:控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口。
处理器,用于通过目标总线控制至少两个通用总线接口连接的至少两个通用总线设备。
控制模块,用于在检测到任意通用总线接口连接的通用总线设备时,为当前通用总线设备分配对应的目标地址,并根据目标地址生成对应的端点号;通过不同通用总线设备对应的端点号区分不同通用总线设备。。
数据分析模块,用于根据数据有效状态位确认任意通用总线接口连接的通用总线设备的传输数据包是否有效。
收发模块,用于根据不同通用总线设备的数据传输方式、收发状态机以及数据分析模块输出的数据有效信号,控制数据的收发操作。
时钟模块,用于若在预设时长内未检测到任意通用总线接口连接的通用总线设备传输的帧起始包,且确认相应通用总线设备的总线信号无效,则确定该通用总线设备为挂起状态。
在一种示例中,外设控制器还包括:状态控制模块;相应地,状态控制模块,用于控制设备状态;设备状态包括:上电状态、默认状态、已配置地址状态、已配置信息状态以及挂起状态;相应地,状态控制模块,用于当检测到任意通用总线接口连接的通用总线设备的设备复位信号有效时,控制相应通用总线设备进入上电状态;若在上电状态下,检测到有效的总线信号,则控制相应通用总线设备进入默认状态;若在上电状态下,检测到无效的总线信号且接收到时钟模块发送的挂起确认消息,则控制相应通用总线设备进入挂起状态;在默认状态下,发送可分配消息至控制模块,以使控制模块执行地址分配操作;若控制模块完成地址分配操作,则控制相应通用总线设备进入已配置地址状态;若控制模块未完成地址分配操作,则检测总线信号的有效性和挂起确认消息,以确认是否控制相应通用总线设备进入挂起状态;在已配置地址状态下,若检测到相应通用总线设备的信息已配置消息,则控制相应通用总线设备进入已配置信息状态;在挂起状态下,若检测到相应通用总线设备的唤醒信号,则控制相应通用总线设备进入默认状态。
在一种示例中,外设控制器还包括:数据选择模块;相应地,数据选择模块,用于确定任意通用总线接口连接的通用总线设备的传输数据包的类型;类型包括:令牌包、帧起始包、数据包以及握手包。
在一种示例中,外设控制器还包括:校验模块;相应地,校验模块,用于对任意通用总线接口连接的通用总线设备的传输数据包进行校验。
在一种示例中,外设控制器还包括:寄存器模块;相应地,寄存器模块,用于分别记录至少两个通用总线接口连接的至少两个通用总线设备的设备信息。
在一种示例中,外设控制器还包括:握手模块;相应地,握手模块,用于确定任意通用总线接口连接的通用总线设备的数据传输方式;数据传输方式包括:全速传输方式和低速传输方式。
在一种示例中,外设控制器还包括:安全模块;相应地,安全模块包括:加密加速器,用于对任意通用总线接口连接的通用总线设备的传输数据包进行加密,并加速传输。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种外设管理系统,可以将暂时不工作的通用总线设备进行挂起,以进行节能,能够降低设备功耗。应用于服务器时,能降低USB外设对服务器功耗的影响。
下面对本申请实施例提供的一种电子设备进行介绍,下文描述的一种电子设备与本文描述的其他实施例可以相互参照。本实施例所述的电子设备可以前述实施例所述的任意功能模块,如:处理器、控制模块、数据分析模块、收发模块、时钟模块等。
参见图5所示,本申请实施例公开了一种电子设备,包括:
存储器501,用于保存计算机程序;
处理器502,用于执行所述计算机程序,以实现上述任意实施例公开的方法。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:通过目标总线控制至少两个通用总线接口连接的至少两个通用总线设备。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:在检测到任意通用总线接口连接的通用总线设备时,为当前通用总线设备分配对应的目标地址,并根据目标地址生成对应的端点号;通过不同通用总线设备对应的端点号区分不同通用总线设备。。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:根据数据有效状态位确认任意通用总线接口连接的通用总线设备的传输数据包是否有效。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:根据不同通用总线设备的数据传输方式、收发状态机以及数据分析模块输出的数据有效信号,控制数据的收发操作。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:若在预设时长内未检测到任意通用总线接口连接的通用总线设备传输的帧起始包,且确认相应通用总线设备的总线信号无效,则确定该通用总线设备为挂起状态。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:控制设备状态;设备状态包括:上电状态、默认状态、已配置地址状态、已配置信息状态以及挂起状态;相应地,状态控制模块,用于当检测到任意通用总线接口连接的通用总线设备的设备复位信号有效时,控制相应通用总线设备进入上电状态;若在上电状态下,检测到有效的总线信号,则控制相应通用总线设备进入默认状态;若在上电状态下,检测到无效的总线信号且接收到时钟模块发送的挂起确认消息,则控制相应通用总线设备进入挂起状态;在默认状态下,发送可分配消息至控制模块,以使控制模块执行地址分配操作;若控制模块完成地址分配操作,则控制相应通用总线设备进入已配置地址状态;若控制模块未完成地址分配操作,则检测总线信号的有效性和挂起确认消息,以确认是否控制相应通用总线设备进入挂起状态;在已配置地址状态下,若检测到相应通用总线设备的信息已配置消息,则控制相应通用总线设备进入已配置信息状态;在挂起状态下,若检测到相应通用总线设备的唤醒信号,则控制相应通用总线设备进入默认状态。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:确定任意通用总线接口连接的通用总线设备的传输数据包的类型;类型包括:令牌包、帧起始包、数据包以及握手包。
在一种示例中,外设控制器还包括:校验模块;相应地,校验模块,用于对任意通用总线接口连接的通用总线设备的传输数据包进行校验。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:分别记录至少两个通用总线接口连接的至少两个通用总线设备的设备信息。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:确定任意通用总线接口连接的通用总线设备的数据传输方式;数据传输方式包括:全速传输方式和低速传输方式。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:对任意通用总线接口连接的通用总线设备的传输数据包进行加密,并加速传输。
进一步的,本申请实施例还提供了一种电子设备。其中,上述电子设备既可以是如图6所示的服务器,也可以是如图7所示的终端。图6和图7均是根据一示例性实施例示出的电子设备结构图,图中的内容不能被认为是对本申请的使用范围的任何限制。
图6为本申请实施例提供的一种服务器的结构示意图。该服务器具体可以包括:至少一个处理器、至少一个存储器、电源、通信接口、输入输出接口和通信总线。其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行,以实现前述任一实施例公开的外设管理中的相关步骤。
本实施例中,电源用于为服务器上的各硬件设备提供工作电压;通信接口能够为服务器创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统、计算机程序及数据等,存储方式可以是短暂存储或者永久存储。
其中,操作系统用于管理与控制服务器上的各硬件设备以及计算机程序,以实现处理器对存储器中数据的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序除了包括能够用于完成前述任一实施例公开的外设管理方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据除了可以包括应用程序的更新信息等数据外,还可以包括应用程序的开发商信息等数据。
图7为本申请实施例提供的一种终端的结构示意图,该终端具体可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
通常,本实施例中的终端包括有:处理器和存储器。
其中,处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器还可以包括AI(ArtificialIntelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器可以包括一个或多个计算机非易失性存储介质,该计算机非易失性存储介质可以是非暂态的。存储器还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器至少用于存储以下计算机程序,其中,该计算机程序被处理器加载并执行之后,能够实现前述任一实施例公开的由终端侧执行的外设管理方法中的相关步骤。另外,存储器所存储的资源还可以包括操作系统和数据等,存储方式可以是短暂存储或者永久存储。其中,操作系统可以包括Windows、Unix、Linux等。数据可以包括但不限于应用程序的更新信息。
在一些实施例中,终端还可包括有显示屏、输入输出接口、通信接口、传感器、电源以及通信总线。
本领域技术人员可以理解,图7中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件。
下面对本申请实施例提供的一种非易失性存储介质进行介绍,下文描述的一种非易失性存储介质与本文描述的其他实施例可以相互参照。
一种非易失性存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的外设管理方法。其中,非易失性存储介质为计算机可读的非易失性存储介质,其作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统、计算机程序及数据等,存储方式可以是短暂存储或者永久存储。
下面对本申请实施例提供的一种计算机程序产品进行介绍,下文描述的一种计算机程序产品与本文描述的其他实施例可以相互参照。
一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现前述公开的外设管理方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的非易失性存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种外设管理设备,其特征在于,包括:处理器和外设控制器;所述处理器和所述外设控制器通过目标总线连接;
所述外设控制器包括:控制模块、数据分析模块、收发模块、时钟模块以及至少两个通用总线接口;
所述处理器,用于通过所述目标总线控制所述至少两个通用总线接口连接的至少两个通用总线设备;
所述控制模块,用于在检测到任意通用总线接口连接的通用总线设备时,为当前通用总线设备分配对应的目标地址,并根据所述目标地址生成对应的端点号;通过不同通用总线设备对应的端点号区分不同通用总线设备;
所述数据分析模块,用于根据数据有效状态位确认任意通用总线接口连接的通用总线设备的传输数据包是否有效;
所述收发模块,用于根据不同通用总线设备的数据传输方式、收发状态机以及所述数据分析模块输出的数据有效信号,控制数据的收发操作;
所述时钟模块,用于若在预设时长内未检测到任意通用总线接口连接的通用总线设备传输的帧起始包,且确认相应通用总线设备的总线信号无效,则确定该通用总线设备为挂起状态。
2.根据权利要求1所述的外设管理设备,其特征在于,所述外设控制器还包括:状态控制模块;
相应地,所述状态控制模块,用于控制设备状态;所述设备状态包括:上电状态、默认状态、已配置地址状态、已配置信息状态以及挂起状态;
相应地,所述状态控制模块,用于当检测到任意通用总线接口连接的通用总线设备的设备复位信号有效时,控制相应通用总线设备进入所述上电状态;
若在所述上电状态下,检测到有效的总线信号,则控制相应通用总线设备进入所述默认状态;
若在所述上电状态下,检测到无效的总线信号且接收到所述时钟模块发送的挂起确认消息,则控制相应通用总线设备进入所述挂起状态;
在所述默认状态下,发送可分配消息至所述控制模块,以使所述控制模块执行地址分配操作;若所述控制模块完成地址分配操作,则控制相应通用总线设备进入所述入已配置地址状态;若所述控制模块未完成地址分配操作,则检测总线信号的有效性和挂起确认消息,以确认是否控制相应通用总线设备进入所述挂起状态;
在所述已配置地址状态下,若检测到相应通用总线设备的信息已配置消息,则控制相应通用总线设备进入所述已配置信息状态;
在所述挂起状态下,若检测到相应通用总线设备的唤醒信号,则控制相应通用总线设备进入所述默认状态。
3.根据权利要求1所述的外设管理设备,其特征在于,所述外设控制器还包括:数据选择模块;
相应地,所述数据选择模块,用于确定任意通用总线接口连接的通用总线设备的传输数据包的类型;所述类型包括:令牌包、帧起始包、数据包以及握手包。
4.根据权利要求1所述的外设管理设备,其特征在于,所述外设控制器还包括:校验模块;
相应地,所述校验模块,用于对任意通用总线接口连接的通用总线设备的传输数据包进行校验。
5.根据权利要求1所述的外设管理设备,其特征在于,所述外设控制器还包括:寄存器模块;
相应地,所述寄存器模块,用于分别记录所述至少两个通用总线接口连接的至少两个通用总线设备的设备信息。
6.根据权利要求1所述的外设管理设备,其特征在于,所述外设控制器还包括:握手模块;
相应地,所述握手模块,用于确定任意通用总线接口连接的通用总线设备的数据传输方式;所述数据传输方式包括:全速传输方式和低速传输方式。
7.根据权利要求1至6任意一项所述的外设管理设备,其特征在于,所述外设控制器还包括:安全模块;
相应地,所述安全模块包括:
加密加速器,用于对任意通用总线接口连接的通用总线设备的传输数据包进行加密,并加速传输。
8.一种外设管理系统,其特征在于,包括:至少一个如权利要求1至7任一项所述的外设管理设备;不同外设管理设备连接同一基板管理控制器。
9.根据权利要求8所述的外设管理系统,其特征在于,所述基板管理控制器内置于服务器。
10.根据权利要求9所述的外设管理系统,其特征在于,所述服务器连接有至少一个加速卡。
CN202411370042.4A 2024-09-29 2024-09-29 一种外设管理设备及系统 Pending CN119336148A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202411370042.4A CN119336148A (zh) 2024-09-29 2024-09-29 一种外设管理设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202411370042.4A CN119336148A (zh) 2024-09-29 2024-09-29 一种外设管理设备及系统

Publications (1)

Publication Number Publication Date
CN119336148A true CN119336148A (zh) 2025-01-21

Family

ID=94265789

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202411370042.4A Pending CN119336148A (zh) 2024-09-29 2024-09-29 一种外设管理设备及系统

Country Status (1)

Country Link
CN (1) CN119336148A (zh)

Similar Documents

Publication Publication Date Title
US10997093B2 (en) NVME data processing method and NVME device
US7529862B2 (en) System for providing access of multiple data buffers to a data retaining and processing device
US6070204A (en) Method and apparatus for using universal serial bus keyboard to control DOS operations
CN108268414B (zh) 基于spi模式的sd卡驱动器及其控制方法
CN111651384B (zh) 寄存器的读写方法、芯片、子系统、寄存器组及终端
CN112765082B (zh) 多主机仲裁方法、装置和可读存储介质
WO2022213865A1 (zh) 计算机设备、虚拟化加速设备、数据传输方法及存储介质
CN111737173A (zh) I2c总线通信控制方法、装置、系统及可读存储介质
CN112100090A (zh) 数据访问请求处理方法、装置、介质及内存映射控制器
US7093118B2 (en) System and method for external bus device support
CN112639755A (zh) 从机到从机直接通信
CN113849238B (zh) 数据通信方法、装置、电子设备及可读存储介质
CN114048465B (zh) 一种堆栈状态检测方法、装置、设备及存储介质
CN118409712B (zh) 一种raid卡管理系统、方法、设备、产品及介质
CN119336148A (zh) 一种外设管理设备及系统
CN116610601A (zh) 一种数据传输装置及其控制方法、装置、介质
CN117076364A (zh) 一种risc-v的usb控制系统、方法、设备及介质
CN111399771A (zh) 一种mcs存储系统的协议配置方法、装置及设备
CN114924802B (zh) 基于bmc和bios的系统启动方法、装置设备及介质
KR20170073266A (ko) 시리얼 인터페이스를 사용하는 저장 장치의 작동 방법과 이를 포함하는 데이터 처리 시스템의 작동 방법
CN115756322A (zh) 数据存储方法、装置、电子设备及存储介质
CN116089124A (zh) 一种仿真系统通信方法、装置、介质
US20040103229A1 (en) Bus management techniques
US6405260B2 (en) Data transmission method and apparatus for interfacing between main system and microcomputer
CN112052132A (zh) 通过sdio接口调试外挂芯片的方法、装置、设备和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination