CN117472440B - 芯片控制方法和装置、存储介质及电子设备 - Google Patents
芯片控制方法和装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN117472440B CN117472440B CN202311820657.8A CN202311820657A CN117472440B CN 117472440 B CN117472440 B CN 117472440B CN 202311820657 A CN202311820657 A CN 202311820657A CN 117472440 B CN117472440 B CN 117472440B
- Authority
- CN
- China
- Prior art keywords
- chip
- function
- interface
- interfaces
- management software
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 97
- 238000013507 mapping Methods 0.000 claims abstract description 72
- 230000006870 function Effects 0.000 claims description 462
- 230000008571 general function Effects 0.000 claims description 60
- 230000008569 process Effects 0.000 claims description 36
- 238000004590 computer program Methods 0.000 claims description 16
- 239000004744 fabric Substances 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 2
- 239000000758 substrate Substances 0.000 claims 6
- 239000000523 sample Substances 0.000 claims 4
- 230000000694 effects Effects 0.000 abstract description 2
- 239000010410 layer Substances 0.000 description 117
- 230000003993 interaction Effects 0.000 description 11
- 230000009471 action Effects 0.000 description 9
- 238000013461 design Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000002346 layers by function Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种芯片控制方法和装置、存储介质及电子设备,该方法包括:通过芯片管理软件识别芯片的芯片标识;在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与芯片标识具有映射关系的接口参数,接口参数中封装有访问芯片所需的一组功能函数接口,接口参数中的第i个接口参数中封装有访问第i个芯片标识表示的芯片所需的一组功能函数接口;在芯片管理软件接收到控制指令时,调用接口参数中的组功能函数接口中的至少部分功能函数接口,对芯片执行控制指令所指示的操作。通过本申请,可以解决现有技术中芯片控制方式存在芯片控制的效率较低的问题,达到提高芯片控制效率的技术效果。
Description
技术领域
本申请实施例涉及计算机领域,具体而言,涉及一种芯片控制方法和装置、存储介质及电子设备。
背景技术
二层交换芯片工作在OSI(Open Systems Interconnection model,开放系统互联模型)模型的数据链路层,其内部维护有一个用于记录MAC(Media Access Control,一种用于网络通信的协议)地址和Port(数据端口)的对应关系的MAC-Port映射表,当网络数据包从某一个Port流入时,交换芯片会解析出数据包中的目的MAC地址信息,然后查找MAC-Port映射表,确定数据包需要转发到哪个Port口。
由于交换芯片本身的功能复杂性、硬件上的设计差异、以及各设备需求的考量,目前没有一个通用的软件管理方案,可以适配不同设备的产品。不同芯片,需要切换到不同的软件中进行控制管理。
因此,现有技术中的芯片控制方式,存在芯片控制效率较低的问题。
发明内容
本申请实施例提供了一种芯片控制方法和装置、存储介质及电子设备,以至少解决现有技术中芯片控制方式存在芯片控制效率较低的问题。
根据本申请的一个实施例,提供了一种芯片控制方法,包括:通过芯片管理软件识别第一芯片的第一芯片标识;在具有映射关系的芯片标识集合和接口参数集合中,通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一接口参数,其中,所述第一接口参数中封装有访问所述第一芯片所需的第一组功能函数接口,所述芯片标识集合中包括允许被所述管理软件访问的多个芯片的芯片标识,所述接口参数集合包括与所述多个芯片中的每个芯片具有映射关系的接口参数,所述接口参数中的第i个接口参数中封装有访问第i个芯片标识表示的芯片所需的一组功能函数接口,所述第i个接口参数与所述第i个芯片标识具有映射关系,i为正整数;在所述芯片管理软件接收到第一控制指令的情况下,调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作。
根据本申请的另一个实施例,提供了一种芯片控制装置,包括:第一识别单元,用于通过芯片管理软件识别第一芯片的第一芯片标识;第一获取单元,用于在具有映射关系的芯片标识集合和接口参数集合中,通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一接口参数,其中,所述第一接口参数中封装有访问所述第一芯片所需的第一组功能函数接口,所述芯片标识集合中包括允许被所述管理软件访问的多个芯片的芯片标识,所述接口参数集合包括与所述多个芯片中的每个芯片具有映射关系的接口参数,所述接口参数中的第i个接口参数中封装有访问第i个芯片标识表示的芯片所需的一组功能函数接口,所述第i个接口参数与所述第i个芯片标识具有映射关系,i为正整数;第一执行单元,用于在所述芯片管理软件接收到第一控制指令的情况下,调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本申请,采用通过在单一软件层中包含有多种芯片的功能函数接口的管理软件来管理芯片的方式,通过在单一软件层中封装对应不同类型芯片的功能的功能函数接口,在需要管理软件对芯片进行管理时,基于识别出的芯片类型,获取与该芯片对应的接口参数,在接收到控制指令时,芯片管理软件可以调用对应的功能函数接口中的至少部分功能函数接口,并根据控制指令调用接口参数中的与指令对应的功能函数,从而实现对芯片的控制管理,在使用软件对不同芯片进行管理时,用户无需根据不同芯片类型使用不同的,通过上述方式,上层只需下发所需的控制命令,而不用关心芯片之间管理的差异(芯片的差异上层无感知),芯片管理软件可以将控制命令的执行转换为与待控制的芯片对应的功能函数接口的调用,从而将不同芯片的硬件差异隔离在单一软件层,只要软件层中封装有与芯片对应的功能函数接口,管理软件就可以实现对芯片的管理,进而实现一个通用管理软件对多种不同芯片进行管理的目的,此外,由于在单一软件层中封装对应不同类型芯片的功能的功能函数接口,实现了将不同芯片的硬件差异隔离在单一软件层,可以方便对不同类型的芯片进行独立维护,因此,可以解决现有技术中芯片控制方式存在芯片控制的效率较低的问题,达到提高芯片控制效率的技术效果。
附图说明
图1是根据本申请实施例的一种芯片控制方法的硬件环境示意图。
图2是根据本申请实施例的一种芯片控制方法的流程示意图。
图3是根据本申请实施例的一种芯片控制软件架构的示意图。
图4是根据本申请实施例的一种状态轮转方法的流程示意图。
图5是根据本申请实施例的另一种芯片控制软件架构的示意图。
图6是根据本申请实施例的一种函数调用关系的示意图。
图7是根据本申请实施例的一种硬件初始化层代码执行逻辑的示意图。
图8是根据本申请实施例的另一种芯片控制方法的流程示意图。
图9是根据本申请实施例的一种芯片控制装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“目标”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在服务器设备或者类似的运算装置中执行。以运行在服务器设备上为例,图1是本申请实施例的一种芯片控制方法的服务器设备的硬件结构框图。如图1所示,服务器设备可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述服务器设备还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述服务器设备的结构造成限定。例如,服务器设备还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的芯片控制方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至服务器设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器设备的通信供应方提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种芯片控制方法,图2是根据本申请实施例的芯片控制方法的流程图,如图2所示,该流程包括如下步骤S202至步骤S206。
步骤S202,通过芯片管理软件识别第一芯片的第一芯片标识。
步骤S204,在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与第一芯片标识具有映射关系的第一接口参数,其中,第一接口参数中封装有访问第一芯片所需的第一组功能函数接口,芯片标识集合中包括允许被管理软件访问的多个芯片的芯片标识,接口参数集合包括与多个芯片中的每个芯片具有映射关系的接口参数,接口参数中的第i个接口参数中封装有访问第i个芯片标识表示的芯片所需的一组功能函数接口,第i个接口参数与第i个芯片标识具有映射关系,i为正整数。
步骤S206,在芯片管理软件接收到第一控制指令的情况下,调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
本实施例中的芯片控制方法可以应用到对芯片进行控制管理的场景。这里的芯片可以是二层交换芯片。二层交换芯片工作在OSI模型的数据链路层,其内部维护有一个MAC-Port映射表,用于记录MAC地址和Port口的对应关系,当网络数据包从某一个Port流入时,交换芯片会解析出数据包中的目的MAC地址信息,然后查找MAC-Port映射表,确定数据包需要转发到哪个Port口。二层交换芯片多应用于民用交换机、路由器等产品,在企业级交换机、智能网卡中,有时也会作为CPU(Central Processing Unit,中央处理器)和BMC(Baseboard Management Controller,基板管理控制器)之间的网络管理角色引入。
经过多年技术迭代,当前的二层交换芯片除了基础的数据包转发功能之外,还具备了更加丰富的扩展功能,能够满足更多终端客户的精细化需求,例如支持VLAN(VirtualLocal Area Network,虚拟局域网)划分、MIB counter(Management Information Basecounter,管理信息库中的计数器)、DoS(Denial of Service,拒绝服务)、QoS(Quality ofService,服务质量,指网络和应用程序为了满足业务需求而提供服务的质量)、portisolation(一种通过物理或逻辑手段将网络设备的不同端口隔离开来的技术)等等。
虽然二层交换芯片是一种硬件设备,但它的配置、管理和优化通常需要软件的支持。例如,通过软件可以将交换芯片的端口配置为特定的模式,以满足特定的网络需求。此外,软件还可以监控和管理交换芯片的性能,确保其正常运行。
在二层交换芯片的实际使用过程中,通过软件的支持和配置,可以充分发挥二层交换芯片的性能和功能。例如,芯片的初始化阶段,在开始使用交换芯片之前,通过软件进行必要的初始化设置,如设置芯片的工作模式、端口数量、传输速率等。此外,还可以通过软件进行端口配置,即,根据实际网络需求,通过软件为交换芯片的每个端口配置相应的参数(如,设置端口的传输速率、双工模式、MAC地址等);在交换芯片就进行数据交换过程中,通过软件监控和管理数据交换的过程,确保数据的正确性和可靠性;在芯片使用过程中,通过软件及时检测并处理故障,以保证网络的正常运行;通过软件实时监控交换芯片的性能指标(如,吞吐量、延迟、丢包率等),确保网络的稳定性和性能;以及根据性能监控的结果,如果发现性能问题或瓶颈,通过软件及时进行优化和调整,以提高网络的性能。
由于交换芯片本身的功能复杂性,硬件上的设计差异,以及不同设备需求等因素,目前为止没有一个通用的软件管理方案,可以适配不同类型的芯片。对于不同设备内的不同种类的芯片,往往需要分别基于不同的交换芯片设计不同的软件工具。
考虑到虽然不同设备所对应的不同交换芯片的底层设计,存在明显差异,但由于应用场景的相同性,不同设备的交换芯片在对外呈现的功能层面上,表现出高度的统一性。为了解决上述问题,在本实施例中,可以设置一种通用的芯片管理软件,在单一软件层中封装对应不同类型芯片的功能的功能函数接口,在需要管理软件对芯片进行管理时,基于识别出的芯片类型,获取与该芯片对应的接口参数,进而根据相应控制指令调用接口参数中的与指令对应的功能函数,从而实现对芯片的控制管理,只要软件层中封装有与芯片对应的功能函数接口,管理软件就可以实现对芯片的管理,可以实现一个通用管理软件对多种不同芯片进行管理的目的,此外,由于在单一软件层中封装对应不同类型芯片的功能的功能函数接口,实现了将不同芯片的硬件差异隔离在单一软件层,可以方便对不同类型的芯片进行独立维护。
在本实施例中,芯片标识可以是指芯片型号。识别芯片型号的方式,可以是通过读取芯片ID(Identity document,身份标识号)确定的。在识别到芯片标识之后,可以绑定芯片的静态参数信息进行绑定,静态参数信息可以包括交换芯片型号、port数量/类型、device address(设备地址)、buffer page number(缓冲区页码)等等。在硬件交互过程中,需要依赖这些静态参数信息,确定硬件交互方式。
在本实施例中,与芯片标识具有映射关系的接口参数,可以是封装有访问芯片所需的功能函数接口的数组,也可以是结构体实例。接口参数中封装有一组功能函数接口,可以是指接口参数中记录有一组功能函数的调用接口,也可以是指接口参数中包含有一组功能函数的指针,还可以是指接口参数中记录有一组功能函数的存储地址。
通过识别出的当前管理的芯片的标识,可以确定出与该芯片对应的接口参数,基于当前接收到的控制指令,从接口参数中选择适合该芯片的、且与控制指令对应的功能函数接口,对芯片进行对应的操作。
可选地,上述在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与第一芯片标识具有映射关系的第一接口参数,包括:在接口参数集合中的每个接口参数为结构体实例的情况下,在具有映射关系的芯片标识集合和结构体实例集合中,通过芯片管理软件获取与第一芯片标识具有映射关系的第一结构体实例。
需要说明的是,上述芯片管理软件可以包括一组软件层,如图3所示,一组软件层包括应用逻辑层、硬件初始化层、通用模块层、HAL(Hardware Abstraction Layer,硬件抽象层,即,硬件相关层)以及底层接口层。
上述应用逻辑层,负责解析命令行输入的控制命令及参数,下发实际的执行动作,控制和交换芯片的交互过程,并将最终的执行结果返回给命令行。上述硬件初始化层,负责完成交换芯片型号识别、交换芯片功能函数接口的绑定(以及寄存器访问函数接口的绑定)和交换芯片初始化。上述通用模块层,负责将交换芯片的每个功能逻辑(如,Port,VLan,Strom(分布式实时计算系统),MIB)封装成一个个独立的模块,这一层是硬件无关层,可以根据当前使用的芯片的功能特性,选配对应的功能模块。
上述HAL层中封装有交换芯片对应的全部硬件功能函数接口,并封装成一个函数集(即struct hal_mapper_s结构体实例),如图3所示,HAL层中封装有多个结构体实例(HAL_mapper_A,HAL_mapper_B,HAL_mapper_C,…),不同结构体实例可以对应不同类型的芯片。这里,struct hal_mapper_s(struct是C语言中定义结构体的关键字,mapper表示映射器)为一种结构体名称。如果希望管理软件同时支持多款交换芯片,也可以同时选配多个struct hal_mapper_s结构体实例。如果产品中采用的交换芯片在HAL层找不到对应的struct hal_mapper_s结构体实例,则可以在管理软件中对功能函数接口重新进行配置,并封装好所有的功能函数接口。
上述底层接口层,可以为两个子层,上层为访问交换芯片寄存器的接口层,下层为与交换芯片进行实际交互的硬件接口。上层中封装有用于实现寄存器访问的接口,并封装成一个函数集(即register_operation结构体实例),register_operation(register表示寄存器,operation,表示操作)为一种结构体名称。如图3所示,底层接口层中封装有多种寄存器接口(Register_interface_A,Register_interface_B,Register_interface_C,…),不同寄存器接口可以对应不同类型的芯片。作为与交换芯片进行实际交互的硬件接口,可以包括MDIO(Management Data Input/Output,管理数据输入/输出的协议)、I2C(Inter-Integrated Circuit,一种同步、半双工的通信总线)、SPI(Service Provider Interface,服务提供商接口)等接口。
可选地,对于上述通用模块层、HAL层、底层接口层,可以均采用Kconfig(一种包含交互式的配置界面的配置方式)配置机制,可以根据实际使用的芯片或者芯片所需应用到的产品的实际需要,在通用模块层中灵活裁剪和添加不同的功能模块。例如,若当前芯片所对应的交互接口为MDIO,则只需要将与MDIO接口对应的配置项(如,CONFIG_MDIO_OPERATION)打开,同时将其他类型的接口所对应的配置项(如CONFIG_I2C_OPERATION、CONFIG_SPI_OPERATION)关闭。通过该方式,在管理软件中的底层接口层的硬件接口子层中,可以只把MDIO相关代码加入编译,其他不相关代码全部裁掉不参与编译,从而实现最终生成的可执行文件大小的轻量化。
可选地,上述通过芯片管理软件识别第一芯片的第一芯片标识包括:通过芯片管理软件中的硬件初始化层识别第一芯片的第一芯片标识。
上述通过芯片管理软件获取与第一芯片标识具有映射关系的第一接口参数,包括:通过芯片管理软件中的硬件初始化层获取与第一芯片标识具有映射关系的第一接口参数。
在芯片管理软件接收到第一控制指令的情况下,上述调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,包括:在芯片管理软件中的应用逻辑层接收到第一控制指令的情况下,通过芯片管理软件中的通用模块层调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
需要说明的是,在上述硬件初始层中,还可以获取芯片的使用状态,如图4所示,在管理软件执行时,通过硬件初始层可以将交换芯片的默认状态置为powered(即处于已上电状态),在芯片型号识别完成后,状态轮转至enumerated(即处于设备已识别状态),对结构体实例完成绑定后,状态轮转至attached(即处于软件就绪状态),设备硬件初始化完成后,状态轮转至inited(即处于设备就绪状态)。至此,软硬件资源全部就绪,可进行与交换芯片的正常的数据交互。
此外,管理软件的硬件初始层还可以监控交换芯片的硬件异常状态:abnormal_status1(异常状态1)和abnormal_status2(异常状态2),其中,abnormal_status1,即abnormal_soft(软件异常),表示硬件FIFO(First In First Out,先进先出数据结构)或packet buffer link list(数据包缓冲区链表)阻塞,abnormal_status2,即abnormal_chip(芯片异常),表示交换芯片出现不可自恢复的硬件逻辑异常。对于abnormal_status1,管理软件检测到后,会执行soft reset(软件重置)动作,清空FIFO,重新初始化packetbuffer link list,最后重启自协商过程,soft reset完成后,状态机从结构体实例绑定步骤开始,重新初始化软硬件资源。对于abnormal_status2,管理软件检测到后,执行chipreset(芯片复位)动作,对交换芯片进行整体硬件复位,该动作会清空Lookup table(查询表)和VLAN table(虚拟局域网表),复位所有寄存器到默认值,重新从EEPROM(Electrically Erasable Programmable Read-Only Memory,带电可擦可编程只读存储器)加载固件、最后重启自协商过程,chip reset完成后,状态机从设备识别枚举步骤开始,重新初始化软硬件资源。
其中,上述步骤的执行主体可以为服务器、终端等,但不限于此。
在一个示例性实施例中,调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,包括步骤S11。
S11,在芯片管理软件中包括全局变量、且第一结构体实例被赋值给全局变量的情况下,通过全局变量调用第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
需要说明的是,在前述绑定阶段,可以通过将与第一芯片对应的第一结构体实例赋值给全局变量,完成第一芯片与对应结构体实例中的至少部分功能函数接口的绑定。这里的全局变量可以是在程序中可以被任何函数访问的变量。
上述全局变量可以被设置为在芯片管理软件识别到不同的芯片的情况下被赋值为不同的芯片对应的不同的结构体实例,不同的结构体实例中封装有访问不同的芯片所需的一组功能函数接口。
例如,如图5所示,第一芯片有两个功能(分别为N1和N2),第二芯片有两个功能(分别为N2和N3),两个芯片有相同的功能N2,HAL层可以分别根据两个芯片的功能,封装两个结构体实例(第一结构体实例和第二结构体实例),在第一结构体实例中,封装有与第一芯片的两个功能对应的两个功能函数(F1_1和F1_2),在第二结构体实例中,封装有与第二芯片的两个功能对应的两个功能函数(F2_2和F2_3),在当前识别到第一芯片时,可以将全局变量(Mapper)赋值为第一结构体实例,而在当前识别到第二芯片时,可以将全局变量(Mapper)赋值为第二结构体实例。
可选地,调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,包括:在芯片管理软件中设置有一组功能模块的情况下,在一组功能模块中查找与第一控制指令对应的第一功能模块,并调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,其中,一组功能模块中的每个功能模块中设置有一个或多个通用函数接口,第一功能模块中设置的每个通用函数接口与第一组功能函数接口中的一个功能函数接口对应,一组功能模块中的至少部分通用函数接口被设置为对多个芯片中的至少两个芯片执行相同的操作。
需要说明的是,通用模块层中封装的每个功能模块,可以分别对应一个功能逻辑,即,一个功能模块,可以对应不同芯片中的同一功能,对应地,一个功能模块中的通用函数接口可以被设置为对多个芯片中的至少两个芯片执行相同的操作。一个功能模块中可以仅有一个通用函数接口,也可以有多个通用函数接口,在一个功能模块中封装多个通用函数接口的情况下,该功能模块中的多个通用函数接口用于调用与实现同一功能的多个功能函数。
例如,如图5所示,在管理软件的通用模块层封装有分别与两个芯片的三个功能(N1、N2、N3)对应的三个功能模块(M1、M2、M3),三个功能模块中分别封装有用于调用不同功能函数的通用函数接口(F0_1、F0_2和F0_3)。在当前识别到第一芯片、且需要触发第一芯片的功能N2时,可以将全局变量(Mapper)赋值为第一结构体实例中的功能函数接口F1_2,功能模块M2中的通用函数接口F0_2调用全局变量,即得到HAL层的功能函数接口F1_2。在当前识别到第二芯片、且需要触发第二芯片的功能N2时,可以将全局变量(Mapper)赋值为第二结构体实例中的功能函数接口F2_2,功能模块M2中的通用函数接口F0_2调用全局变量,即得到HAL层的功能函数接口F2_2。
函数调用关系如图6所示,通用模块层的每个函数接口不直接调用HAL层接口,而是通过硬件初始化层完成的绑定,基于初始化好的hal_mapper_t全局指针:MAPPER,间接访问HAL层接口,得到当前需要的HAL层的hal_mapper_database(database表示数组)中封装的hal_mapper_t实例3中的函数接口。
例如,全局变量hal_mapper_t指针MAPPER相关定义如下。
在HAL_mapper绑定阶段,根据已识别到的芯片型号,从全局hal_mapper_database[]数组中查找指定的hal_mapper_t结构体实例,再赋值给全局变量hal_mapper_t指针MAPPER,可以实现通用模块层的函数接口与HAL层的某一hal_mapper_t结构体实例中的函数接口的关联。
可选地,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,包括:执行至少部分通用函数接口的调用指令;在第一接口参数为第一结构体实例、芯片管理软件中包括全局变量、且第一结构体实例被赋值给全局变量的情况下,响应于调用指令,通过全局变量调用第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
在本实施例中,通用模块层的通用函数接口不直接调用HAL层的功能函数接口。调用至少部分功能函数接口对第一芯片执行第一操作,可以是通过通用模块层中的一个功能模块中的至少部分通用函数接口,执行与该通用函数接口对应的调用指令,以通过全局变量调用至少部分功能函数接口。
可选地,在通过芯片管理软件获取与第一芯片标识具有映射关系的第一接口参数之后,上述方法还包括:在第一接口参数为第一结构体实例的情况下,将第一结构体实例赋值给全局变量,其中,全局变量中包括与第一组功能函数接口中的每一个功能函数接口对应的通用函数接口。
可选地,将第一结构体实例赋值给全局变量,包括:在第一结构体实例中封装有访问第一芯片所需的N个功能函数接口的情况下,分别将N个功能函数接口赋值给全局变量中的N个通用函数接口,其中,N个通用函数接口中的第j个通用函数接口被赋值为N个功能函数接口中的第j个功能函数接口,j为小于或等于N的正整数,N为正整数。
例如,以PHY loopback(即芯片回环测试)的功能函数为例,管理软件中的通用模块层的函数接口如下。
以当前使用的交换芯片是RTL8367s(一种芯片型号)为例,上述“MAPPER-> port_macLocalLoopbackEnable_set(port, enable)”最终调用到的是HAL层的hal_rtl8367c_mapper实例中的port_macLocalLoopbackEnable_set函数,所示如下。
通过本实施例,由于在硬件初始化层中基于识别到的芯片型号,将对应的结构体实况里复制给全局变量,实现了通用模块层的函数接口与HAL层的功能函数接口的关联,不需要直接调用HAL层接口就可以实现功能函数接口的调用,可以实现将不同交换芯片的硬件差异隔离在HAL层,方便对不同交换芯片的独立维护。
在一个示例性实施例中,在通过芯片管理软件识别第一芯片的第一芯片标识之前,上述方法还包括步骤S21。
S21,在芯片管理软件中设置一组功能模块,其中,一组功能模块中的一个功能模块与功能集合中的一个功能具有映射关系,功能集合包括多个芯片中的每个芯片所具有的功能的并集,在一组功能模块中的第k个功能模块与功能集合中的第k个功能具有映射关系、且多个芯片中的至少部分芯片具有第k个功能的情况下,第k个功能模块用于对至少部分芯片中具有的第k个功能执行目标操作,k为正整数。
需要说明的是,芯片管理软件的通用模块层中的功能模块是预先封装好的,即,在芯片管理软件编译阶段,根据实际使用需求,在芯片管理软件中设置一组功能模块,一个功能模块可以对应一个功能逻辑。
若芯片管理软件中未封装有与当前芯片的功能逻辑对应的功能模块,可以在芯片管理软件中基于当前芯片的功能逻辑增加新的功能模块。
通过本实施例,在芯片管理软件中,按照一个功能对应一个功能模块的方式,设置功能模块,由于不同芯片之间存在相同的功能,可以降低软件所占用的资源大小。
在一个示例性实施例中,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,包括步骤S31。
S31,在第一芯片具有第k个功能、第一控制指令用于请求对第一芯片具有的第k个功能执行第一操作的情况下,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行第一操作,其中,至少部分通用函数接口对应的至少部分功能函数接口是对第一芯片具有的第k个功能执行第一操作所需的功能函数接口,目标操作包括第一操作。
在本实施例中,在接收到第一控制指令的情况下,可以先确定第一控制指令所对应的芯片功能,进而确定第一芯片的结构体实例中与该芯片功能所对应的功能函数,通过硬件初始层的绑定操作,在通用模块层实现对HAL层中的对应功能函数的间接调用。
在一个示例性实施例中,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行第一操作,包括步骤S41、S42和S43中的之一。
S41,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行功能参数配置操作,其中,第一操作包括功能参数配置操作,功能参数配置操作用于对执行第k个功能所需的参数集合中的至少部分参数进行配置。
S42,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行过程参数获取操作,其中,第一操作包括过程参数获取操作,过程参数获取操作用于在第一芯片执行第k个功能的过程中产生的参数。
S43,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行结果获取操作,其中,第一操作包括结果获取操作,结果获取操作用于获取第一芯片执行第k个功能所得到的结果。
需要说明的是,对第一芯片具有的第k个功能执行的第一操作,可以包括参数的配置、过程的监控、结果的获取等。参数的配置,即功能参数配置操作,用于配置、调整第一芯片执行第k个功能时需要的参数。过程的监控,即,过程参数获取操作,用于监控第一芯片执行第k个功能的过程,根据获取到的过程参数,确定第一芯片对第k个功能的执行状态,以在出现故障时及时检测并处理故障。结果的获取,即结果获取操作,用于确定第一芯片执行第k个功能的执行结果,可以包括指示执行成功或执行失败的信息,以及执行完第k个功能后产生的数据信息等。
通过本实施例,通过调用功能函数接口,对第一芯片执行包括参数配置、参数获取、结果获取等操作,可以实现芯片管理软件对芯片的精准管理,提高芯片在设备中的运行稳定性。
在一个示例性实施例中,上述方法还包括步骤S51-S53。
S51,通过芯片管理软件识别第二芯片的第二芯片标识。
S52,在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与第二芯片标识具有映射关系的第二接口参数,其中,第二接口参数中封装有访问第二芯片所需的第二组功能函数接口。
S53,在芯片管理软件接收到第二控制指令、第二接口参数为第二结构体实例、芯片管理软件中包括全局变量、且第二结构体实例被赋值给全局变量的情况下,通过全局变量调用第二组功能函数接口中的至少部分功能函数接口,对第二芯片执行第二控制指令所指示的第二操作。
需要说明的是,若识别到的芯片标识为第二芯片,可以按照与第一芯片相同的方式,在绑定阶段将全局变量赋值给第二芯片对应的第二结构体实例,从而实现通过芯片管理软件对第二芯片进行管理和控制。
上述第二芯片标识可以与第一芯片标识类似,用于表示芯片的型号。上述第二接口参数也可以与第一接口参数类似,本实施例在此不做赘述。
需要说明的是,在每次接收到控制指令之后,芯片管理软件中的硬件初始化层可以对当前芯片进行识别,并基于识别到的芯片型号,结合控制指令所对应的功能,确定出当前需要绑定的结构体实例及其功能函数接口,并为全局变量重新赋值。
通过本实施例,通过识别出的芯片型号确定全局变量需要赋值的结构体实例,可以在不改变芯片软件管理的情况下,实现对存在差异的不同芯片的管理。
在一个示例性实施例中,调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,包括步骤S61。
S61,调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,确定第一寄存器函数接口,并通过第一寄存器函数接口对第一芯片的第一寄存器执行第一操作,其中,第一寄存器函数接口用于访问第一寄存器。
在本实施例中,芯片管理软件对芯片的控制,可以是通过访问寄存器接口,通过在芯片的寄存器中读取或写入对应参数,实现对芯片的控制。对第一芯片执行第一控制指令所指示的第一操作,可以是指通过第一寄存器函数接口对第一芯片的第一寄存器执行第一操作。
可选地,调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,确定第一寄存器函数接口,包括:在预设的寄存器函数接口集合中确定与第一芯片标识具有映射关系的第一寄存器函数接口,并调用第一组功能函数接口中的至少部分功能函数接口,对第一寄存器函数接口设置目标访问参数,其中,目标访问参数用于对第一芯片的第一寄存器执行第一操作。
需要说明的是,预设的寄存器函数接口集合,可以是指预先设置好的包含有多个register_operation(寄存器_操作)结构体实例的全局数组register_database[](寄存器_数据)。一个register_operation结构体实例可以对应一种芯片。一个register_operation结构体实例中可以封装有多个寄存器函数接口。
通过调用功能函数,可以对寄存器函数接口设置用于执行第一操作的目标访问参数。这里,目标访问参数可以是需要在寄存器中写入的值,也可以是需要从寄存器中读取的参数,还可以是需要对寄存器中的部分值进行修改的参数。
通过本实施例,调用功能函数接口对寄存器函数接口设置与控制指令对应的访问参数,从而实现对寄存器的访问和控制,进而实现对芯片的控制,可以提高对芯片进行控制的效率。
在一个示例性实施例中,通过第一寄存器函数接口对第一芯片的第一寄存器执行第一操作,包括步骤S81。
S71,通过设置有目标访问参数的第一寄存器函数接口对第一芯片的第一寄存器执行第一操作,其中,第一操作为读操作和/或写操作。
需要说明的是,对第一寄存器执行的读操作和/或写操作,可以是与前述实施例中提及的功能参数配置操作、过程参数获取操作以及结果获取操作对应的。
例如,在根据第一控制指令需要对第一芯片执行功能参数配置操作时,对第一寄存器执行的操作,可以是将执行一个功能(例如,第k个功能)所需的参数集合写入寄存器中。在根据第一控制指令需要对第一芯片执行过程参数获取操作时,对第一寄存器执行的操作,可以是从寄存器中读取第一芯片执行一个功能(例如,第k个功能)的过程中产生的参数;在根据第一控制指令需要对第一芯片执行结果获取操作时,对第一寄存器执行的操作,可以是从寄存器中读取第一芯片执行一个功能(例如,第k个功能)所得到的结果。
通过本实施例,通过对寄存器进行读操作或者写操作,可以向芯片发送对应的指令和数据,从而控制芯片的行为,可以在实现对芯片的各个功能的精准管理的同时,提高对芯片的控制效率。
在一个示例性实施例中,在预设的寄存器函数接口集合中确定与第一芯片标识具有映射关系的第一寄存器函数接口之前,上述方法还包括步骤S91。
S81,在芯片管理软件中设置寄存器函数接口集合,其中,寄存器函数接口集合中包括用于访问寄存器集合中的每个寄存器的寄存器函数接口,寄存器集合包括多个芯片中的每个芯片的寄存器。
需要说明的是,寄存器函数接口集合可以与功能函数接口类似,根据实际需求,预先在芯片管理软件的底层接口层中设置好的。在底层接口层中的寄存器接口子层中,可以封装有寄存器层面的接口,不同设备所生产的芯片的寄存器访问方式可以是不同的。管理软件可以基于不同芯片的寄存器访问方式,分别设置成多个register_operation结构体实例,并放入一个全局数组register_database[]里,待实际发起访问寄存器时,根据芯片ID找到对应的register_operation结构体实例,从中调用对应的函数接口,进行访问。
一种芯片对应一个register_operation结构体实例,register_operation结构体实例定义如下。
以第一芯片的型号为RTL8367s为例,在第一芯片所对应的register_operation结构体实例中,MDIO(Management Data Input/Output,管理数据输入输出)读寄存器接口定义如下。
对于RTL8367s芯片来说,一次最基本的寄存器读访问,实际要发起4次MDIO访问才能完成。如果是读OCP PHY(Optical Component Package Physical,光学组件包物理层)寄存器,实际要发起7*4次MDIO访问才可最终返回希望的寄存器数据。
需要说明的是,在软件层面上,芯片管理软件和芯片的交互,是通过访问芯片的寄存器实现的,在硬件层面上,和芯片的实际交互,需要通过芯片的管理接口实现。芯片管理软件的底层接口层中的硬件接口子层,可以负责与芯片的最终交互。由于二层交换芯片的管理接口,一般是MDIO,I2C和SPI,在硬件接口子层中可以设置有分别对应MDIO,I2C和SPI的接口。此外,考虑到存在硬件资源不足,或者CPU侧不支持MDIO,I2C和SPI接口的情况,在硬件接口子层中还可以设置有GPIO(General-Purpose Input/Output,通用输入/输出)模拟MDIO、I2C、SPI协议,从而实现对不同芯片的交互。
通过本实施例,在芯片管理软件中分别根据每种芯片设置对应的寄存器函数接口,可以提高芯片管理软件与不同芯片的交互成功率。
在一个示例性实施例中,在通过芯片管理软件识别第一芯片的第一芯片标识之后,上述方法还包括步骤S91。
S91,通过芯片管理软件向第一芯片发送初始化参数,其中,初始化参数用于对第一芯片进行初始化操作。
需要说明的是,交换芯片的初始化分为两种方式。一种是给交换芯片外挂一个eeprom存储固件,将其需要的初始化参数以固件的形式烧录到eeprom,交换芯片上电时,会自动从eeprom加载固件完成初始化。另一种方式是,不加eeprom,待芯片管理软件启动后,由管理软件向交换芯片下发初始化参数。因此,硬件初始化层是否执行交换芯片初始化动作依赖于硬件设计。
在芯片管理软件的使用过程中,可以根据当前使用到的芯片是否外挂有eeprom存储固件来确定是否需要软件执行芯片的初始化操作。在确定芯片没有外挂eeprom存储固件时,可以通过芯片管理软件向第一芯片发送初始化参数。
初始化参数也可以是通过访问寄存器发送到芯片中的,由于部分类型的交换芯片需要进行初始化的寄存器的数量较多,初始化参数的下发过程可能需要持续秒级单位的较长时间,在本实施例中,可以在芯片管理软件上设置一个超时等待时间,不同交换芯片可以对应有不同的超时等待时间,超时等待时间的具体数值可以根据芯片的参数来确定。从下发初始化参数开始,如果超时等待时间耗尽,芯片管理软件仍未检测到交换芯片处于设备就绪状态,则可以认为设备初始化过程失败。
硬件初始化层代码执行逻辑可以如图7所示,包括设备识别枚举、状态机更新、绑定和/或设备初始化。设备识别枚举,即前述对芯片型号的识别过程,本实施例在此不做赘述。绑定是指HAL_mapper绑定,是指拿到当前使用的交换芯片具体型号之后,根据芯片型号,从全局hal_mapper_database[]数组中找到指定的struct hal_mapper_t结构体实例指针,并将其赋值给全局变量hal_mapper_t,完成绑定。在每完成一个操作之后,就可以进行一次状态机更新,状态机所对应的状态如图4所示,设备初始化,即前述对芯片的初始化过程,本实施例在此不做赘述。
通过本实施例,通过芯片管理软件向芯片发送初始化参数,可以在芯片没有外挂存储固件时,保证芯片初始化的正常进行。
在一个示例性实施例中,上述方法还包括步骤S111-S113。
S101,通过芯片管理软件识别第二芯片的第二芯片标识;
S102,在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与第一芯片标识具有映射关系的第二接口参数,其中,第二接口参数中封装有访问第二芯片所需的第二组功能函数接口;
S103,在芯片管理软件接收到第二控制指令的情况下,调用第二接口参数中的第二组功能函数接口中的至少部分功能函数接口,对第二芯片执行第二控制指令所指示的第二操作。
需要说明的是,在芯片管理软件识别到第一芯片以外的其他芯片的芯片型号的情况下,可以按照前述实施例中对第一芯片进行的操作,确定第二芯片所对应的接口参数,并按照接收到的控制指令对第二芯片进行控制。
可选地,调用第二接口参数中的第二组功能函数接口中的至少部分功能函数接口,对第二芯片执行第二控制指令所指示的第二操作,包括:在芯片管理软件中设置有一组功能模块的情况下,在一组功能模块中查找与第二控制指令对应的第二功能模块,并调用第二功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第二芯片执行第二控制指令所指示的第二操作,其中,一组功能模块中的每个功能模块中设置有一个或多个通用函数接口,第二功能模块中设置的每个通用函数接口与第二组功能函数接口中的一个功能函数接口对应,一组功能模块中的至少部分通用函数接口被设置为对第一芯片和第二芯片执行相同的操作。
需要说明的是,基于第二芯片的芯片型号,在芯片管理软件中执行的动作以及对第二芯片进行的访问和交互,可以是与第一芯片类似的,本实施例在此不做赘述。
通过本实施例,通过一个芯片管理软件,根据识别到的芯片型号,确定对应的结构体实例,从而按照接收到的控制指令完成对对应芯片的控制,无需分别为不同芯片设置不同的管理软件。
下面结合可选示例对本申请实施例中的芯片控制方法进行解释说明。本可选示例中提供了一种通用的二层交换芯片管理软件架构,包括应用逻辑层、硬件初始化层、通用模块层、HAL层和底层接口层。应用逻辑层负责解析命令行输入的控制命令及参数,下发实际的执行动作,控制和交换芯片的交互过程,并将最终的执行结果返回给命令行;硬件初始化层,负责完成交换芯片型号识别、交换芯片操作函数集绑定、以及交换芯片初始化;交换芯片的各硬件功能模块的具体实现位于HAL层中;底层接口层,包括与交换芯片实际交互的硬件接口和访问交换芯片寄存器的接口层。软件整体上采用模块化、面向对象的方式设计思路,保持各功能模块的独立性,便于后续新功能模块的添加以及单个功能模块的维护升级。纵向逻辑上,采用分层设计,相邻层与层之间,下层为上层屏蔽设计细节,将本层负责的功能逻辑封装成实际的函数接口,供给上层,上层为下层提供结构体抽象,供其实例化封装注册。横向逻辑上,每层内部,采用模块化设计,每个逻辑功能独立形成一份代码,相互之间不耦合,方便每个模块的独立维护。
本可选示例中的芯片控制方法的流程可以如图8所示,包括步骤S802-S810。
步骤S802,通过硬件初始化层识别芯片的型号,并识别出的芯片型号,查找对应的结构体实例。
步骤S804,通过硬件初始化层将查找到结构体实例赋值给全局变量指针,完成芯片与结构体实例的绑定。
步骤S806,通用模块层通过绑定阶段初始化号的全局变量指针,间接访问HAL层中与应用逻辑层接收到的控制命令对应的函数接口。
步骤S808,根据芯片型号从底层接口层中获取对应的寄存器函数接口,通过对寄存器的访问,实现对芯片功能的控制。
通过本可选示例,管理软件采用模块化、面向对象的设计结构,为新交换芯片的添加支持,提供了友好的接口,此外,最大程度抽离出交换芯片功能管理的共性部分,将不同交换芯片的差异性屏蔽到单一软件层,实现了通过一个管理软件管理不同类型的芯片。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。
在本实施例中还提供了一种芯片控制装置,该设备用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图9是根据本申请实施例的芯片控制装置的结构框图,如图9所示,该装置包括。
第一识别单元902,用于通过芯片管理软件识别第一芯片的第一芯片标识。
第一获取单元904,用于在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与第一芯片标识具有映射关系的第一接口参数,其中,第一接口参数中封装有访问第一芯片所需的第一组功能函数接口,芯片标识集合中包括允许被管理软件访问的多个芯片的芯片标识,接口参数集合包括与多个芯片中的每个芯片具有映射关系的接口参数,接口参数中的第i个接口参数中封装有访问第i个芯片标识表示的芯片所需的一组功能函数接口,第i个接口参数与第i个芯片标识具有映射关系,i为正整数。
第一执行单元906,用于在芯片管理软件接收到第一控制指令的情况下,调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
在一个示例性实施例中,第一获取单元包括:第一获取模块,用于在接口参数集合中的每个接口参数为结构体实例的情况下,在具有映射关系的芯片标识集合和结构体实例集合中,通过芯片管理软件获取与第一芯片标识具有映射关系的第一结构体实例。
在一个示例性实施例中,第一执行单元包括:第一执行模块,用于在芯片管理软件中包括全局变量、且第一结构体实例被赋值给全局变量的情况下,通过全局变量调用第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
在一个示例性实施例中,第一执行单元包括:第二执行模块,用于在芯片管理软件中设置有一组功能模块的情况下,在一组功能模块中查找与第一控制指令对应的第一功能模块,并调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作,其中,一组功能模块中的每个功能模块中设置有一个或多个通用函数接口,第一功能模块中设置的每个通用函数接口与第一组功能函数接口中的一个功能函数接口对应,一组功能模块中的至少部分通用函数接口被设置为对多个芯片中的至少两个芯片执行相同的操作。
在一个示例性实施例中,第二执行模块包括:第一执行子模块,用于执行至少部分通用函数接口的调用指令;第二执行子模块,用于在第一接口参数为第一结构体实例、芯片管理软件中包括全局变量、且第一结构体实例被赋值给全局变量的情况下,响应于调用指令,通过全局变量调用第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
在一个示例性实施例中,上述装置还包括:赋值单元,用于在通过芯片管理软件获取与第一芯片标识具有映射关系的第一接口参数之后,在第一接口参数为第一结构体实例的情况下,将第一结构体实例赋值给全局变量,其中,全局变量中包括与第一组功能函数接口中的每一个功能函数接口对应的通用函数接口。
在一个示例性实施例中,赋值单元包括:赋值模块,用于在第一结构体实例中封装有访问第一芯片所需的N个功能函数接口的情况下,分别将N个功能函数接口赋值给全局变量中的N个通用函数接口,其中,N个通用函数接口中的第j个通用函数接口被赋值为N个功能函数接口中的第j个功能函数接口,j为小于或等于N的正整数,N为正整数。
在一个示例性实施例中,上述装置还包括:第一设置单元,用于在通过芯片管理软件识别第一芯片的第一芯片标识之前,在芯片管理软件中设置一组功能模块,其中,一组功能模块中的一个功能模块与功能集合中的一个功能具有映射关系,功能集合包括多个芯片中的每个芯片所具有的功能的并集,在一组功能模块中的第k个功能模块与功能集合中的第k个功能具有映射关系、且多个芯片中的至少部分芯片具有第k个功能的情况下,第k个功能模块用于对至少部分芯片中具有的第k个功能执行目标操作,k为正整数。
在一个示例性实施例中,第二执行模块包括:第三执行子模块,用于在第一芯片具有第k个功能、第一控制指令用于请求对第一芯片具有的第k个功能执行第一操作的情况下,调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行第一操作,其中,至少部分通用函数接口对应的至少部分功能函数接口是对第一芯片具有的第k个功能执行第一操作所需的功能函数接口,目标操作包括第一操作。
在一个示例性实施例中,第三执行子模块包括以下之一:第一执行子单元,用于调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行功能参数配置操作,其中,第一操作包括功能参数配置操作,功能参数配置操作用于对执行第k个功能所需的参数集合中的至少部分参数进行配置;第二执行子单元,用于调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行过程参数获取操作,其中,第一操作包括过程参数获取操作,过程参数获取操作用于在第一芯片执行第k个功能的过程中产生的参数;第三执行子单元,用于调用第一功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第一芯片具有的第k个功能执行结果获取操作,其中,第一操作包括结果获取操作,结果获取操作用于获取第一芯片执行第k个功能所得到的结果。
在一个示例性实施例中,上述装置还包括:第二识别单元,用于通过芯片管理软件识别第二芯片的第二芯片标识;第二获取单元,用于在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与第二芯片标识具有映射关系的第二接口参数,其中,第二接口参数中封装有访问第二芯片所需的第二组功能函数接口;第二执行单元,用于在芯片管理软件接收到第二控制指令、第二接口参数为第二结构体实例、芯片管理软件中包括全局变量、且第二结构体实例被赋值给全局变量的情况下,通过全局变量调用第二组功能函数接口中的至少部分功能函数接口,对第二芯片执行第二控制指令所指示的第二操作。
在一个示例性实施例中,第一执行单元包括:第三执行模块,用于调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,确定第一寄存器函数接口,并通过第一寄存器函数接口对第一芯片的第一寄存器执行第一操作,其中,第一寄存器函数接口用于访问第一寄存器。
在一个示例性实施例中,第三执行模块包括:第四执行子模块,用于在预设的寄存器函数接口集合中确定与第一芯片标识具有映射关系的第一寄存器函数接口,并调用第一组功能函数接口中的至少部分功能函数接口,对第一寄存器函数接口设置目标访问参数,其中,目标访问参数用于对第一芯片的第一寄存器执行第一操作。
在一个示例性实施例中,第三执行模块包括:第五执行子模块,用于通过设置有目标访问参数的第一寄存器函数接口对第一芯片的第一寄存器执行第一操作,其中,第一操作为读操作和/或写操作。
在一个示例性实施例中,上述装置还包括:第二设置单元,用于在预设的寄存器函数接口集合中确定与第一芯片标识具有映射关系的第一寄存器函数接口之前,在芯片管理软件中设置寄存器函数接口集合,其中,寄存器函数接口集合中包括用于访问寄存器集合中的每个寄存器的寄存器函数接口,寄存器集合包括多个芯片中的每个芯片的寄存器。
在一个示例性实施例中,上述装置还包括:发送单元,用于在通过芯片管理软件识别第一芯片的第一芯片标识之后,通过芯片管理软件向第一芯片发送初始化参数,其中,初始化参数用于对第一芯片进行初始化操作。
在一个示例性实施例中,第一识别单元包括:识别模块,用于通过芯片管理软件中的硬件初始化层识别第一芯片的第一芯片标识;第一获取单元包括:第二获取模块,用于通过芯片管理软件中的硬件初始化层获取与第一芯片标识具有映射关系的第一接口参数;第一执行单元包括:第四执行模块,用于在芯片管理软件中的应用逻辑层接收到第一控制指令的情况下,通过芯片管理软件中的通用模块层调用第一接口参数中的第一组功能函数接口中的至少部分功能函数接口,对第一芯片执行第一控制指令所指示的第一操作。
在一个示例性实施例中,上述装置还包括:第三识别单元,用于通过芯片管理软件识别第二芯片的第二芯片标识;第三获取单元,用于在具有映射关系的芯片标识集合和接口参数集合中,通过芯片管理软件获取与第一芯片标识具有映射关系的第二接口参数,其中,第二接口参数中封装有访问第二芯片所需的第二组功能函数接口;第三执行单元,用于在芯片管理软件接收到第二控制指令的情况下,调用第二接口参数中的第二组功能函数接口中的至少部分功能函数接口,对第二芯片执行第二控制指令所指示的第二操作。
在一个示例性实施例中,第三执行单元包括:第五执行模块,用于在芯片管理软件中设置有一组功能模块的情况下,在一组功能模块中查找与第二控制指令对应的第二功能模块,并调用第二功能模块中设置的至少部分通用函数接口对应的至少部分功能函数接口,对第二芯片执行第二控制指令所指示的第二操作,其中,一组功能模块中的每个功能模块中设置有一个或多个通用函数接口,第二功能模块中设置的每个通用函数接口与第二组功能函数接口中的一个功能函数接口对应,一组功能模块中的至少部分通用函数接口被设置为对第一芯片和第二芯片执行相同的操作。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (20)
1.一种芯片控制方法,其特征在于,
包括:
通过芯片管理软件识别第一芯片的第一芯片标识;
在具有映射关系的芯片标识集合和接口参数集合中,通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一接口参数,其中,所述第一接口参数中封装有访问所述第一芯片所需的第一组功能函数接口,所述芯片标识集合中包括允许被所述管理软件访问的多个芯片的芯片标识,所述接口参数集合包括与所述多个芯片中的每个芯片具有映射关系的接口参数,所述接口参数中的第i个接口参数中封装有访问第i个芯片标识表示的芯片所需的一组功能函数接口,所述第i个接口参数与所述第i个芯片标识具有映射关系,i为正整数;
在所述芯片管理软件接收到第一控制指令的情况下,调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作;
其中,所述调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作,包括:在所述芯片管理软件中设置有一组功能模块的情况下,在所述一组功能模块中查找与所述第一控制指令对应的第一功能模块,并调用所述第一功能模块中设置的至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作,其中,所述一组功能模块中的每个功能模块中设置有一个或多个通用函数接口,所述第一功能模块中设置的每个通用函数接口与所述第一组功能函数接口中的一个功能函数接口对应,所述一组功能模块中的至少部分通用函数接口被设置为对所述多个芯片中的至少两个芯片执行相同的操作;
其中,所述调用所述第一功能模块中设置的至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作,包括:执行所述至少部分通用函数接口的调用指令;在所述第一接口参数为第一结构体实例、所述芯片管理软件中包括全局变量、且所述第一结构体实例被赋值给所述全局变量的情况下,响应于所述调用指令,通过所述全局变量调用所述第一组功能函数接口中的所述至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作。
2.根据权利要求1所述的方法,其特征在于,
所述在具有映射关系的芯片标识集合和接口参数集合中,通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一接口参数,包括:
在所述接口参数集合中的每个接口参数为结构体实例的情况下,在具有映射关系的所述芯片标识集合和结构体实例集合中,通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一结构体实例。
3.根据权利要求2所述的方法,其特征在于,
所述调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作,包括:
在所述芯片管理软件中包括全局变量、且所述第一结构体实例被赋值给所述全局变量的情况下,通过所述全局变量调用所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作。
4.根据权利要求1所述的方法,其特征在于,
在所述通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一接口参数之后,所述方法还包括:
在所述第一接口参数为第一结构体实例的情况下,将所述第一结构体实例赋值给所述全局变量,其中,所述全局变量中包括与所述第一组功能函数接口中的每一个功能函数接口对应的通用函数接口。
5.根据权利要求4所述的方法,其特征在于,
所述将所述第一结构体实例赋值给所述全局变量,包括:
在所述第一结构体实例中封装有访问所述第一芯片所需的N个功能函数接口的情况下,分别将所述N个功能函数接口赋值给所述全局变量中的N个通用函数接口,其中,所述N个通用函数接口中的第j个通用函数接口被赋值为所述N个功能函数接口中的第j个功能函数接口,j为小于或等于N的正整数,N为正整数。
6.根据权利要求1所述的方法,其特征在于,
在所述通过芯片管理软件识别第一芯片的第一芯片标识之前,所述方法还包括:
在所述芯片管理软件中设置所述一组功能模块,其中,所述一组功能模块中的一个功能模块与功能集合中的一个功能具有映射关系,所述功能集合包括所述多个芯片中的每个芯片所具有的功能的并集,在所述一组功能模块中的第k个功能模块与所述功能集合中的第k个功能具有映射关系、且所述多个芯片中的至少部分芯片具有所述第k个功能的情况下,所述第k个功能模块用于对所述至少部分芯片中具有的所述第k个功能执行目标操作,k为正整数。
7.根据权利要求6所述的方法,其特征在于,
所述调用所述第一功能模块中设置的至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作,包括:
在所述第一芯片具有所述第k个功能、所述第一控制指令用于请求对所述第一芯片具有的所述第k个功能执行所述第一操作的情况下,调用所述第一功能模块中设置的所述至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片具有的所述第k个功能执行所述第一操作,其中,所述至少部分通用函数接口对应的所述至少部分功能函数接口是对所述第一芯片具有的所述第k个功能执行所述第一操作所需的功能函数接口,所述目标操作包括所述第一操作。
8.根据权利要求7所述的方法,其特征在于,
所述调用所述第一功能模块中设置的所述至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片具有的所述第k个功能执行所述第一操作,包括以下之一:
调用所述第一功能模块中设置的所述至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片具有的所述第k个功能执行功能参数配置操作,其中,所述第一操作包括所述功能参数配置操作,所述功能参数配置操作用于对执行所述第k个功能所需的参数集合中的至少部分参数进行配置;
调用所述第一功能模块中设置的所述至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片具有的所述第k个功能执行过程参数获取操作,其中,所述第一操作包括所述过程参数获取操作,所述过程参数获取操作用于在所述第一芯片执行所述第k个功能的过程中产生的参数;
调用所述第一功能模块中设置的所述至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片具有的所述第k个功能执行结果获取操作,其中,所述第一操作包括所述结果获取操作,所述结果获取操作用于获取所述第一芯片执行所述第k个功能所得到的结果。
9.根据权利要求1所述的方法,其特征在于,
所述方法还包括:
通过所述芯片管理软件识别第二芯片的第二芯片标识;
在具有映射关系的所述芯片标识集合和所述接口参数集合中,通过所述芯片管理软件获取与所述第二芯片标识具有映射关系的第二接口参数,其中,所述第二接口参数中封装有访问所述第二芯片所需的第二组功能函数接口;
在所述芯片管理软件接收到第二控制指令、所述第二接口参数为第二结构体实例、所述芯片管理软件中包括全局变量、且所述第二结构体实例被赋值给所述全局变量的情况下,通过所述全局变量调用所述第二组功能函数接口中的所述至少部分功能函数接口,对所述第二芯片执行所述第二控制指令所指示的第二操作。
10.根据权利要求1所述的方法,其特征在于,
所述调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作,包括:
调用所述第一接口参数中的所述第一组功能函数接口中的所述至少部分功能函数接口,确定第一寄存器函数接口,并通过所述第一寄存器函数接口对所述第一芯片的第一寄存器执行所述第一操作,其中,所述第一寄存器函数接口用于访问所述第一寄存器。
11.根据权利要求10所述的方法,其特征在于,
所述调用所述第一接口参数中的所述第一组功能函数接口中的所述至少部分功能函数接口,确定第一寄存器函数接口,包括:
在预设的寄存器函数接口集合中确定与所述第一芯片标识具有映射关系的所述第一寄存器函数接口,并调用所述第一组功能函数接口中的所述至少部分功能函数接口,对所述第一寄存器函数接口设置目标访问参数,其中,所述目标访问参数用于对所述第一芯片的所述第一寄存器执行所述第一操作。
12.根据权利要求11所述的方法,其特征在于,
所述通过所述第一寄存器函数接口对所述第一芯片的第一寄存器执行所述第一操作,包括:
通过设置有所述目标访问参数的所述第一寄存器函数接口对所述第一芯片的第一寄存器执行所述第一操作,其中,所述第一操作为读操作和/或写操作。
13.根据权利要求11所述的方法,其特征在于,
在预设的寄存器函数接口集合中确定与所述第一芯片标识具有映射关系的所述第一寄存器函数接口之前,所述方法还包括:
在所述芯片管理软件中设置所述寄存器函数接口集合,其中,所述寄存器函数接口集合中包括用于访问寄存器集合中的每个寄存器的寄存器函数接口,所述寄存器集合包括所述多个芯片中的每个芯片的寄存器。
14.根据权利要求1至13中任一项所述的方法,其特征在于,
在通过芯片管理软件识别第一芯片的第一芯片标识之后,所述方法还包括:
通过所述芯片管理软件向所述第一芯片发送初始化参数,其中,所述初始化参数用于对所述第一芯片进行初始化操作。
15.根据权利要求1至13中任一项所述的方法,其特征在于,
所述通过芯片管理软件识别第一芯片的第一芯片标识包括:通过所述芯片管理软件中的硬件初始化层识别所述第一芯片的所述第一芯片标识;
所述通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一接口参数,包括:通过所述芯片管理软件中的所述硬件初始化层获取与所述第一芯片标识具有映射关系的所述第一接口参数;
在所述芯片管理软件接收到第一控制指令的情况下,调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作,包括:在所述芯片管理软件中的应用逻辑层接收到所述第一控制指令的情况下,通过所述芯片管理软件中的通用模块层调用所述第一接口参数中的所述第一组功能函数接口中的所述至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作。
16.根据权利要求1至13中任一项所述的方法,其特征在于,
所述方法还包括:
通过所述芯片管理软件识别第二芯片的第二芯片标识;
在具有映射关系的所述芯片标识集合和所述接口参数集合中,通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第二接口参数,其中,所述第二接口参数中封装有访问所述第二芯片所需的第二组功能函数接口;
在所述芯片管理软件接收到第二控制指令的情况下,调用所述第二接口参数中的所述第二组功能函数接口中的至少部分功能函数接口,对所述第二芯片执行所述第二控制指令所指示的第二操作。
17.根据权利要求16所述的方法,其特征在于,
所述调用所述第二接口参数中的所述第二组功能函数接口中的至少部分功能函数接口,对所述第二芯片执行所述第二控制指令所指示的第二操作,包括:
在所述芯片管理软件中设置有一组功能模块的情况下,在所述一组功能模块中查找与所述第二控制指令对应的第二功能模块,并调用所述第二功能模块中设置的至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第二芯片执行所述第二控制指令所指示的所述第二操作,其中,所述一组功能模块中的每个功能模块中设置有一个或多个通用函数接口,所述第二功能模块中设置的每个通用函数接口与所述第二组功能函数接口中的一个功能函数接口对应,所述一组功能模块中的至少部分通用函数接口被设置为对所述第一芯片和所述第二芯片执行相同的操作。
18.一种芯片控制装置,其特征在于,
包括:
第一识别单元,用于通过芯片管理软件识别第一芯片的第一芯片标识;
第一获取单元,用于在具有映射关系的芯片标识集合和接口参数集合中,通过所述芯片管理软件获取与所述第一芯片标识具有映射关系的第一接口参数,其中,所述第一接口参数中封装有访问所述第一芯片所需的第一组功能函数接口,所述芯片标识集合中包括允许被所述管理软件访问的多个芯片的芯片标识,所述接口参数集合包括与所述多个芯片中的每个芯片具有映射关系的接口参数,所述接口参数中的第i个接口参数中封装有访问第i个芯片标识表示的芯片所需的一组功能函数接口,所述第i个接口参数与所述第i个芯片标识具有映射关系,i为正整数;
第一执行单元,用于在所述芯片管理软件接收到第一控制指令的情况下,调用所述第一接口参数中的所述第一组功能函数接口中的至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的第一操作;
其中,所述第一执行单元包括:第二执行模块,用于在所述芯片管理软件中设置有一组功能模块的情况下,在所述一组功能模块中查找与所述第一控制指令对应的第一功能模块,并调用所述第一功能模块中设置的至少部分通用函数接口对应的所述至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作,其中,所述一组功能模块中的每个功能模块中设置有一个或多个通用函数接口,所述第一功能模块中设置的每个通用函数接口与所述第一组功能函数接口中的一个功能函数接口对应,所述一组功能模块中的至少部分通用函数接口被设置为对所述多个芯片中的至少两个芯片执行相同的操作;
其中,所述第二执行模块包括:第一执行子模块,用于执行所述至少部分通用函数接口的调用指令;第二执行子模块,用于在所述第一接口参数为第一结构体实例、所述芯片管理软件中包括全局变量、且所述第一结构体实例被赋值给所述全局变量的情况下,响应于所述调用指令,通过所述全局变量调用所述第一组功能函数接口中的所述至少部分功能函数接口,对所述第一芯片执行所述第一控制指令所指示的所述第一操作。
19.一种计算机可读存储介质,其特征在于,
所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现权利要求1至17中任一项所述的方法。
20.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,
所述处理器执行所述计算机程序时实现权利要求1至17中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311820657.8A CN117472440B (zh) | 2023-12-27 | 2023-12-27 | 芯片控制方法和装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311820657.8A CN117472440B (zh) | 2023-12-27 | 2023-12-27 | 芯片控制方法和装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117472440A CN117472440A (zh) | 2024-01-30 |
CN117472440B true CN117472440B (zh) | 2024-03-29 |
Family
ID=89638255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311820657.8A Active CN117472440B (zh) | 2023-12-27 | 2023-12-27 | 芯片控制方法和装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117472440B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110445831A (zh) * | 2019-06-28 | 2019-11-12 | 深圳市紫光同创电子有限公司 | 一种与fpga通信的主机、fpga接口芯片 |
CN111258550A (zh) * | 2020-01-16 | 2020-06-09 | 深圳市元征科技股份有限公司 | 一种软件架构及软件架构开发方法 |
CN113254296A (zh) * | 2021-06-25 | 2021-08-13 | 上海励驰半导体有限公司 | 芯片slt测试的软件实现方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770433B (zh) * | 2008-12-30 | 2012-01-11 | 意法半导体研发(上海)有限公司 | 通用驱动方法和通用驱动设备 |
-
2023
- 2023-12-27 CN CN202311820657.8A patent/CN117472440B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110445831A (zh) * | 2019-06-28 | 2019-11-12 | 深圳市紫光同创电子有限公司 | 一种与fpga通信的主机、fpga接口芯片 |
CN111258550A (zh) * | 2020-01-16 | 2020-06-09 | 深圳市元征科技股份有限公司 | 一种软件架构及软件架构开发方法 |
CN113254296A (zh) * | 2021-06-25 | 2021-08-13 | 上海励驰半导体有限公司 | 芯片slt测试的软件实现方法及系统 |
Non-Patent Citations (1)
Title |
---|
高性能以太网交换芯片BCM56132的研究与应用;孟芳;邱里鑫;;电视技术;20120630(第S1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117472440A (zh) | 2024-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017152633A1 (zh) | 一种端口绑定实现方法及装置 | |
US10649798B2 (en) | Virtual switching method, related apparatus, and computer system | |
CN111542064B (zh) | 一种用于无线接入网的容器编排管理系统及编排方法 | |
US7574491B2 (en) | Virtual data center for network resource management | |
US9742671B2 (en) | Switching method | |
US8645952B2 (en) | Method for providing location independent dynamic port mirroring on distributed virtual switches | |
US20200382362A1 (en) | Alarm information processing method, related device, and system | |
US20140130046A1 (en) | Communication apparatus and configuration method | |
US10992526B1 (en) | Hyper-converged infrastructure networking configuration system | |
CN109391514B (zh) | 基于高可用性的设备部署方法、服务器、存储介质及装置 | |
US20030196003A1 (en) | I/O bus abstraction for a cluster interconnection fabric | |
US20220045923A1 (en) | Highly-scalable, software-defined, in-network multicasting of load statistics data | |
EP4184323A1 (en) | Performance tuning in a network system | |
CN113472624A (zh) | 一种基于vDPA实现虚拟网络数据包转发的方法及应用 | |
CN108737499A (zh) | 服务器配置方法和装置 | |
KR102684903B1 (ko) | 네트워크 작업 방법, 장치, 설비 및 저장매체 | |
CN113127144B (zh) | 一种处理方法、装置及存储介质 | |
US9898273B1 (en) | Dynamically updating APIS based on updated configuration file of a computing system | |
CN116800616B (zh) | 虚拟化网络设备的管理方法及相关装置 | |
CN117472440B (zh) | 芯片控制方法和装置、存储介质及电子设备 | |
CN113342456A (zh) | 一种连接方法、装置、设备和存储介质 | |
CN108886476B (zh) | 虚拟交换机数据平面和数据平面迁移的多个提供器框架 | |
CN111399972A (zh) | 一种虚拟机抓包的方法、装置及计算机可读存储介质 | |
JP2008287699A (ja) | ネットワーク発見用の拡張可能システム | |
US20230105269A1 (en) | Virtualized network service deployment method and apparatus |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |