CN116776781A - 一种寄存器参数的管理方法、系统、设备及存储介质 - Google Patents
一种寄存器参数的管理方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN116776781A CN116776781A CN202311034885.2A CN202311034885A CN116776781A CN 116776781 A CN116776781 A CN 116776781A CN 202311034885 A CN202311034885 A CN 202311034885A CN 116776781 A CN116776781 A CN 116776781A
- Authority
- CN
- China
- Prior art keywords
- register
- read
- data
- configuration instruction
- reading
- 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.)
- Granted
Links
- 238000007726 management method Methods 0.000 title claims description 24
- 238000012545 processing Methods 0.000 claims abstract description 146
- 238000000034 method Methods 0.000 claims abstract description 58
- 238000004891 communication Methods 0.000 claims description 31
- 238000006243 chemical reaction Methods 0.000 claims description 19
- 238000012546 transfer Methods 0.000 claims description 14
- 238000005538 encapsulation Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004806 packaging method and process Methods 0.000 claims description 8
- 238000013461 design Methods 0.000 abstract description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 239000002245 particle Substances 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
本申请公开了一种寄存器参数的管理方法、系统、设备及存储介质,应用于数字电路设计技术领域,解决了传统方案中寄存器参数配置时耗费中央处理器大量时间与性能的问题,应用于预设的控制装置中,包括:在中央处理器将待配置寄存器数据写入至第一存储空间之后,接收中央处理器发送的写配置指令;基于写配置指令中携带的待配置寄存器数据在第一存储空间中的地址信息,从第一存储空间中读取出待配置寄存器数据;基于写配置指令中携带的应用信息,将读取的待配置寄存器数据输出至相应应用的接口,以使得待配置寄存器数据被写入至相应的寄存器中。本申请的方案有利于释放中央处理器的性能,不会出现耗费中央处理器大量的时间与性能的情况。
Description
技术领域
本发明涉及数字电路设计技术领域,特别是涉及一种寄存器参数的管理方法、系统、设备及存储介质。
背景技术
在数字IC(Integrated Circuit,集成电路),FPGA(Field Programmable GateArray,现场可编程门阵列)等数字电路设计中,CPU(Central Processing Unit,中央处理器)经常需要为算法核心配置一系列的寄存器参数,例如对于图1的FPGA加速器结构而言,上位机中的CPU通过PCIe(Peripheral Component Interconnect express,高速串行计算机扩展总线标准)总线的bar空间配置,完成算法核心所需要的各个寄存器参数的配置,又如对于图2的SoC(System on Chip,系统级芯片)内部,由CPU通过内部总线配置算法核心所需要的各个寄存器参数。
当需要配置的模块或算法的寄存器参数较少时,CPU的性能不会受到太大影响,与各个寄存器参数对应的地址空间也够用,但是,当寄存器参数需要大量配置时,由于目前的方案中,是由CPU逐个配置寄存器,因此需要耗费CPU大量的时间与性能。
综上所述,如何有效地实现寄存器参数的配置,不会出现耗费CPU大量的时间与性能的情况,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种寄存器参数的管理方法、系统、设备及存储介质,以有效地实现寄存器参数的配置,不会出现耗费CPU大量的时间与性能的情况。
为解决上述技术问题,本发明提供如下技术方案:
一种寄存器参数的管理方法,应用于预设的控制装置中,所述控制装置与中央处理器通信连接,所述寄存器参数的管理方法包括:
在所述中央处理器将待配置寄存器数据写入至第一存储空间之后,接收所述中央处理器发送的写配置指令;
基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据;
基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中。
在一种实施方式中,所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息包括:所述待配置寄存器数据在所述第一存储空间中的初始地址、所述待配置寄存器数据的写数据量;
被写入至所述第一存储空间中的所述待配置寄存器数据,为所述中央处理器按照指定顺序写入至所述第一存储空间中的所述待配置寄存器数据;
相应的,基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据,包括:
基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的初始地址和所述待配置寄存器数据的写数据量,从所述第一存储空间中顺序读取出所述待配置寄存器数据。
在一种实施方式中,所述写配置指令中携带的应用信息包括:写目的地址、目的应用的身份标识;
相应的,基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中,包括:
基于所述写配置指令中携带的目的应用的身份标识,确定出所述目的应用的接口;
将读取的所述待配置寄存器数据输出至所述目的应用的接口,并将所述写目的地址作为所述待配置寄存器数据被写入的初始地址,以使得所述待配置寄存器数据被顺序写入至相应的寄存器中。
在一种实施方式中,在基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口之后,还包括:
当所述待配置寄存器数据写入完成时,将自身的写状态寄存器置为第二状态,以使得所述中央处理器通过所述写状态寄存器的状态确定出所述待配置寄存器数据写入完成之后,由所述中央处理器控制所述写状态寄存器恢复为默认的第一状态。
在一种实施方式中,接收所述中央处理器发送的写配置指令,包括:
通过第一协议转换装置,接收所述中央处理器发送的写配置指令。
在一种实施方式中,从所述第一存储空间中读取出所述待配置寄存器数据,包括:
通过存储控制器,从所述第一存储空间中读取出所述待配置寄存器数据。
在一种实施方式中,所述控制装置中设置有寄存器单元;
相应的,接收所述中央处理器发送的写配置指令,包括:
接收所述中央处理器发送的写配置指令,并利用所述寄存器单元存储所述写配置指令中携带的内容。
在一种实施方式中,所述控制装置中设置有寄存器转命令码单元和数据读取单元;
相应的,基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据,包括:
基于所述寄存器单元中存储的所述写配置指令中携带的内容,利用所述寄存器转命令码单元生成相应的写命令码;
基于所述写命令码,利用所述数据读取单元从所述第一存储空间中读取出所述待配置寄存器数据。
在一种实施方式中,所述控制装置中设置有先入先出存储单元,以通过所述先入先出存储单元存储从所述第一存储空间中读取出的所述待配置寄存器数据。
在一种实施方式中,所述控制装置中设置有协议封装单元和仲裁单元;
相应的,基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中,包括:
利用所述协议封装单元将所述写命令码和所述先入先出存储单元的输出数据封装为设定协议的写操作,并发送至所述仲裁单元;
利用所述仲裁单元,将所述写操作输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中。
在一种实施方式中,所述控制装置与所述中央处理器直接通信连接,或者通过直接数据存取桥与所述中央处理器间接通信连接。
在一种实施方式中,所述控制装置与所述中央处理器集成在同一系统级芯片中,或者,所述控制装置与所述中央处理器分别设置在不同芯片中,所述控制装置与所述中央处理器通过总线通信连接。
在一种实施方式中,还包括:
接收所述中央处理器发送的读配置指令;
基于所述读配置指令中携带的应用信息,从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取;
将读取的所述读配置指令所指向的待读取寄存器数据反馈至所述中央处理器。
在一种实施方式中,所述读配置指令中携带的应用信息包括:读目的地址、目的应用的身份标识、以及读数据量;
相应的,基于所述读配置指令中携带的应用信息,从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取,包括:
基于所述读配置指令中携带的目的应用的身份标识,确定出所述目的应用的接口;
将所述目的应用的接口作为读取接口,将所述读目的地址作为所述待读取寄存器数据被读取的初始地址进行数据的顺序读取,当读取的数据量等于所述读数据量时,完成了所述读配置指令所指向的所述待读取寄存器数据的读取。
在一种实施方式中,在基于所述读配置指令中携带的应用信息,从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取之后,还包括:
当所述读配置指令所指向的待读取寄存器数据读取完成时,将自身的读状态寄存器置为第二状态,以使得所述中央处理器通过所述读状态寄存器的状态确定出所述读配置指令所指向的所述待读取寄存器数据读取完成之后,由所述中央处理器控制所述读状态寄存器恢复为默认的第一状态。
在一种实施方式中,接收所述中央处理器发送的读配置指令,包括:
通过第一协议转换装置,接收所述中央处理器发送的读配置指令。
在一种实施方式中,所述控制装置中设置有寄存器单元;
相应的,接收所述中央处理器发送的读配置指令,包括:
接收所述中央处理器发送的读配置指令,并利用所述寄存器单元存储所述读配置指令中携带的内容。
在一种实施方式中,所述控制装置中设置有寄存器转命令码单元、协议封装单元以及仲裁单元;
基于所述寄存器单元中存储的所述读配置指令中携带的内容,利用所述寄存器转命令码单元生成相应的读命令码;
利用所述协议封装单元将所述读命令码封装为设定协议的读操作,并发送至所述仲裁单元;
基于所述读操作,利用所述仲裁单元从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取。
在一种实施方式中,将读取的所述读配置指令所指向的待读取寄存器数据反馈至所述中央处理器,包括:
在利用所述仲裁单元从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取之后,将读取的所述待读取寄存器数据存储在所述寄存器单元中的读数据寄存器中;
将所述读数据寄存器中存储的所述待读取寄存器数据反馈至所述中央处理器。
一种寄存器参数的管理系统,应用于预设的控制装置中,所述控制装置与中央处理器通信连接,所述寄存器参数的管理系统包括:
写配置指令接收模块,用于在所述中央处理器将待配置寄存器数据写入至第一存储空间之后,接收所述中央处理器发送的写配置指令;
读取模块,用于基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据;
写执行模块,用于基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中。
一种寄存器参数的管理设备,应用于预设的控制装置中,所述控制装置与中央处理器通信连接,所述寄存器参数的管理设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述所述的寄存器参数的管理方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的寄存器参数的管理方法的步骤。
应用本发明实施例所提供的技术方案,由预设的控制装置来实现寄存器参数的写入,有效地分担了中央处理器的工作。具体的,预设的控制装置与中央处理器通信连接,中央处理器只需要负责将待配置寄存器数据写入至第一存储空间,并且发送写配置指令给该控制装置即可。控制装置接收了中央处理器发送的写配置指令之后,由于写配置指令中携带有待配置寄存器数据在第一存储空间中的地址信息,因此,可以据此从第一存储空间中读取出待配置寄存器数据。读取之后,再基于写配置指令中携带的应用信息,可以将读取的待配置寄存器数据输出至相应应用的接口,以使得待配置寄存器数据被写入至相应的寄存器中,即,由控制装置执行各个寄存器参数的配置。
此外,传统方案中是由中央控制器逐个完成各个寄存器参数的配置,每次配置完一个寄存器参数之后,需要一定延迟之后再开始配置下一个寄存器参数,导致耗时较长,本申请的方案中,中央处理器将全部的待配置寄存器数据写入至第一存储空间,是连续性的操作,耗时较短,不会影响中央控制器的性能。
综上所述,本申请的方案可以有效地实现寄存器参数的配置,并且通过控制装置分担了中央处理器的工作,因此有利于释放中央处理器的性能。不会出现耗费中央处理器大量的时间与性能的情况。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为传统的FPGA的场合中CPU通过PCIe总线配置寄存器参数的示意图;
图2为传统的SoC的场合中CPU通过内部总线配置寄存器参数的示意图;
图3为本发明中一种寄存器参数的管理方法的实施流程图;
图4为本发明一种具体实施方式中控制装置与中央处理器连接的示意图;
图5为本发明一种具体实施方式中的控制装置的架构示意图;
图6为本发明中一种寄存器参数的管理系统的结构示意图;
图7为本发明中一种寄存器参数的管理设备的结构示意图;
图8为本发明中一种计算机可读存储介质的结构示意图。
具体实施方式
本发明的核心是提供一种寄存器参数的管理方法、系统、设备及存储介质,有利于释放中央处理器的性能。不会出现耗费中央处理器大量的时间与性能的情况。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图3,图3为本发明中一种寄存器参数的管理方法的实施流程图,该寄存器参数的管理方法可以应用于预设的控制装置中,控制装置与中央处理器通信连接,该寄存器参数的管理方法可以包括以下步骤:
步骤S301:在中央处理器将待配置寄存器数据写入至第一存储空间之后,接收中央处理器发送的写配置指令。
具体的,本申请的方案中设置了控制装置,来协助中央处理器实现寄存器参数的管理。
所设置的控制装置需要与中央处理器通信连接,可以是直接通信连接也可以是间接通信连接,所采用的通信协议也可以有多种,能够使得控制装置完成其功能即可,并不影响本发明的实施,例如在后文的图4的实施方式中,控制装置便是与中央处理器间接通信连接。
控制装置自身的具体结构也可以根据实际需要进行设定和调整,只要能够实现本申请的功能要求即可。
本申请的方案中,当需要进行寄存器的写配置时,中央处理器需要将待配置寄存器数据写入至第一存储空间,可以理解的是,待配置寄存器数据,表示的便是需要写入至相应应用的寄存器中的参数数据,从而实现相应算法核心的寄存器参数配置。
第一存储空间的具体类型也可以根据实际需要进行设定和调整,能够进行待配置寄存器数据的存储即可,例如在实际应用中,考虑到板内的存储空间有限,因此通常可以使用板外的存储空间,例如图4的实施方式中采用的是板外的DDR SDRAM(Double Data RateSynchronous Dynamic Random Access Memory双倍速率同步动态随机存储器)的存储空间作为步骤S301中所需要的第一存储空间,DDR具有稳定性高,传输速率高,容量较大等优点。
中央处理器将待配置寄存器数据写入至第一存储空间之后,会发送写配置指令给控制装置。
步骤S302:基于写配置指令中携带的待配置寄存器数据在第一存储空间中的地址信息,从第一存储空间中读取出待配置寄存器数据。
控制装置在接收到中央处理器发送的写配置指令之后,便可以按照写配置指令的要求,实现相应的算法核心的寄存器参数配置,即,将第一存储空间中的待配置寄存器数据写入到由写配置指令所指定的寄存器中。
控制装置在接收到中央处理器发送的写配置指令之后,从第一存储空间中读取出待配置寄存器数据,因此可以理解的是,写配置指令中需要携带有待配置寄存器数据在第一存储空间中的地址信息,从而使得控制装置能够成功地完成待配置寄存器数据的读取。
此外还可以理解的是,对于所读取的待配置寄存器数据,控制装置后续会将其写入至寄存器中,实际应用中,待配置寄存器数据的数据量可能较小,控制装置一次性就可以读取完毕,但是,待配置寄存器数据的数据量也可能较大,控制装置无法存储下完整的待配置寄存器数据,则控制装置例如可以持续性地读取,即一边读取待配置寄存器数据,一边将读取的内容输出至相应应用的接口从而写入至寄存器中,或者控制装置可以分批次地读取,均不影响本发明的实施,只要能够成功地完成待配置寄存器数据的读取并且写入至相应寄存器即可。
步骤S303:基于写配置指令中携带的应用信息,将读取的待配置寄存器数据输出至相应应用的接口,以使得待配置寄存器数据被写入至相应的寄存器中。
对于从第一存储空间中读取出待配置寄存器数据,需要基于写配置指令中携带的应用信息,确定出待配置寄存器数据所对应的应用,以及需要写入的地址,从而可以将读取的待配置寄存器数据输出至该应用的接口上,进而将待配置寄存器数据写入至相应的寄存器中。
由上文描述可以看出,上述流程中,中央处理器只需要将待配置寄存器数据写入至第一存储空间,并且发送写配置指令至中央处理器即可,因此本申请的方案有利于释放中央处理器的性能。
在传统方案中,当寄存器参数需要大量配置时,由中央处理器逐个配置寄存器,除了需要耗费中央处理器大量时间与性能之外,由于在传统方案中,所配置的各个寄存器,需要与中央处理器的PCIe bar空间地址一一对应,因此会出现地址空间不足的情况。即寄存器参数需要大量配置时,占用地址总线空间过多,例如一种场合中,需要配置5000个寄存器参数,则在PCIe bar空间,中央处理器需要分配5000个地址,例如称为地址A1至地址A5000,与5000个寄存器一一对应,很容易造成中央处理器地址空间不足的情况。
而在本发明的一种实施方式中,通过中央处理器与控制装置的配合,无论需要进行多少寄存器参数的配置,写配置指令中只需要携带有源初始地址和写目的地址这2项地址即可,使得只需要占用很少的地址空间。
具体的,在本发明的一种具体实施方式中,写配置指令中携带的待配置寄存器数据在第一存储空间中的地址信息包括:待配置寄存器数据在第一存储空间中的初始地址、待配置寄存器数据的写数据量;
被写入至第一存储空间中的待配置寄存器数据,为中央处理器按照指定顺序写入至第一存储空间中的待配置寄存器数据;
相应的,步骤S302可以具体包括:
基于写配置指令中携带的待配置寄存器数据在第一存储空间中的初始地址和待配置寄存器数据的写数据量,从第一存储空间中顺序读取出待配置寄存器数据。
该种实施方式中,仍然以需要配置5000个寄存器参数为例,即对于待配置寄存器数据,后续需要通过5000个寄存器来进行存储。该种实施方式中,中央处理器将待配置寄存器数据写入至第一存储空间时,需要按照指定顺序写入,这样使得后续也可以按序读取出待配置寄存器数据,并且可以理解的是,待配置寄存器数据在第一存储空间中所占据的存储区域应当是连续的。
中央处理器需要记录下待配置寄存器数据的数据量,以及待配置寄存器数据在第一存储空间中的初始地址,也可以称为源初始地址,并将这两项信息通过写配置指令发送给控制装置。这样使得控制装置在执行步骤S302时,通过源初始地址和数据量,便可以从第一存储空间中顺序读取出待配置寄存器数据。
并且如上文的描述,由于在将待配置寄存器数据写入至第一存储空间时,是按照指定顺序写入,执行步骤S302时,也是从源初始地址开始,按照地址顺序依次读取,即从第一存储空间中顺序读取出待配置寄存器数据,使得后续也可以按照顺序完成该例子中的5000个寄存器参数的配置。
在本发明的一种具体实施方式中,写配置指令中携带的应用信息可以包括:写目的地址、目的应用的身份标识;
相应的,步骤S303可以包括:
基于写配置指令中携带的目的应用的身份标识,确定出目的应用的接口;
将读取的待配置寄存器数据输出至目的应用的接口,并将写目的地址作为待配置寄存器数据被写入的初始地址,以使得待配置寄存器数据被顺序写入至相应的寄存器中。
该种实施方式中,可以基于写配置指令中携带的目的应用的身份标识,即基于目的应用的ID,确定出目的应用的接口,目的应用也就是待配置寄存器数据所对应的应用,或者称为待配置寄存器数据所对应的算法核心,图4中示出的接口0至接口n便可以表示算法核心0至算法核心n。
确定出了目的应用的接口之后,如上文的描述,由于是按序读取出待配置寄存器数据,因此,可以从写目的地址开始,按照顺序完成待配置寄存器数据的写入。此处描述的写目的地址,也就是待配置寄存器数据被写入的初始地址,即待配置寄存器数据需要被写入的首个寄存器的地址。
综上可以看出,以需要配置5000个寄存器参数为例,写配置指令中携带有:待配置寄存器数据在第一存储空间中的初始地址,例如称为B1、待配置寄存器数据的写数据量、写目的地址,例如称为C1、以及目的应用的身份标识。可以看出,相较于传统方案中,中央处理器需要分配地址A1至地址A5000,该种实施方式中,中央处理器所发送的写配置指令中携带有B1和C1这两个地址数据即可,配合上文描述的其他规则,便实现了5000个寄存器参数的配置,因此,本申请的方案中,不会出现传统方案中的地址空间不足的情况。
此外可以看出,上述实施方式中,中央处理器将待配置寄存器数据写入至第一存储空间时,是从源初始地址开始,进行顺序的连续性的操作,因此,中央处理器将待配置寄存器数据写入至第一存储空间的耗时很短,不会影响中央控制器的性能。
并且,上述实施方式中,控制装置从源初始地址开始,读取出待配置寄存器数据之后,控制装置确定出目的应用的接口,然后是从写目的地址开始,按照顺序完成待配置寄存器数据的连续性的写入,这种连续性写入的方式,使得该过程的耗时也很短。因此,该种实施方式中的方案可以极大地降低写配置的总耗时。
在本发明的一种具体实施方式中,在基于写配置指令中携带的应用信息,将读取的待配置寄存器数据输出至相应应用的接口之后,还可以包括:
当待配置寄存器数据写入完成时,将自身的写状态寄存器置为第二状态,以使得中央处理器通过写状态寄存器的状态确定出待配置寄存器数据写入完成之后,由中央处理器控制写状态寄存器恢复为默认的第一状态。
该种实施方式考虑到,待配置寄存器数据写入完成时,为了使得中央处理器能够及时获知该情况,控制装置可以将自身的写状态寄存器置为第二状态,例如将自身的写状态寄存器置为1,表示待配置寄存器数据写入完成。而中央处理器查询到该写状态寄存器的状态为1时,便可以确定本次的寄存器配置结束,因此,可以控制写状态寄存器恢复为默认的第一状态,例如控制写状态寄存器清为0。
此外在实际应用中,写配置指令中可以携带有相关信息,使得控制装置据此决定是否要选择自身的1个寄存器作为该种实施方式的写状态寄存器并将其置为第二状态,即中央控制器可以决定是否需要该种实施方式中的反馈功能。
此外,部分场合中,写配置指令中可以携带有写启动的标记,以使得控制装置据此确定出已经接收到了完整的写配置指令,进而可以执行后续的写配置流程。
在本发明的一种具体实施方式中,步骤S301中描述的接收中央处理器发送的写配置指令,可以具体包括:
通过第一协议转换装置,接收中央处理器发送的写配置指令。
该种实施方式考虑到,中央处理器发送写配置指令时,通常可以基于AXI(Advanced Extensible Interface,高级扩展接口)之类的协议发送,例如一种场合中,中央处理器可以通过AXI-Lite协议发送写配置指令。而控制装置在完成其功能时,通常采用的是APB(Advanced Peripheral Bus,高级外设总线)之类的协议,即控制装置所使用的协议与中央处理器所使用的协议通常是不同的,对此,该种实施方式中便设置了第一协议转换装置来实现协议的转换,便于控制装置有效地接收中央处理器发送的写配置指令。
例如一种具体场合中,中央处理器通过AXI-Lite协议发送写配置指令,第一协议转换装置则是AXI-Lite转APB的装置,使得控制装置可以接收APB协议的写配置指令。
在本发明的一种具体实施方式中,步骤S302中描述的从第一存储空间中读取出待配置寄存器数据,可以具体包括:
通过存储控制器,从第一存储空间中读取出待配置寄存器数据。
如上文的描述,第一存储空间的具体类型可以根据实际需要进行设定和调整,通常可以采用的是DDR SDRAM,具有稳定性高,传输速率高,容量较大等优点。
该种实施方式则进一步的考虑到,存储控制器可以方便地进行DDR的读写,因此,该种实施方式中设置了存储控制器,控制装置与存储控制器连接,从而通过存储控制器从第一存储空间中读取出待配置寄存器数据。
此外可参阅图4,由于设置了存储控制器,因此中央处理器在将待配置寄存器数据存入第一存储空间时,也可以基于存储控制器来实现,较为方便。
实际应用中,存储控制器例如可以采用AXI-MM协议,是DDR芯片颗粒的控制器,该装置可以将DDR颗粒的一系列复杂操作转化为AXI-MM操作,方便用户读写DDR颗粒。
在本发明的一种具体实施方式中,控制装置与中央处理器直接通信连接,或者通过直接数据存取桥与中央处理器间接通信连接。
该种实施方式考虑到,控制装置与中央处理器通信连接时,可以是直接通信连接,也可以是间接通信连接,以保障方案的灵活性,而采用间接通信连接的方案时,该种实施方式中,控制装置可以基于直接数据存取桥,即基于DMA(Direct Memory Access,直接数据存取)桥,与中央处理器间接通信连接。由于设置了直接数据存取桥,有利于提高中央处理器的数据读写效率。
在图4的实施方式中便设置了直接数据存取桥。
在本发明的一种具体实施方式中,控制装置与中央处理器集成在同一系统级芯片中;
或者,控制装置与中央处理器分别设置在不同芯片中,控制装置与中央处理器通过总线通信连接。
该种实施方式中,支持控制装置与中央处理器集成在同一系统级芯片中这种芯片内部异构的设计,也支持控制装置与中央处理器分别设置在不同芯片中,并通过总线通信连接的这种异构设计,例如二者通过PCIe总线通信连接,为PCIe接口异构。可以看出,该种实施方式提高了本申请方案的灵活性。
图4的实施方式中,控制装置与中央处理器集成在同一系统级芯片中,此外在部分场合中,控制装置与中央处理器也可以均集成在FPGA中,或者将控制装置设置在FPGA中,而中央处理器例如通过PCIe总线与该FPGA通信连接,均不影响本发明的实施。
在本发明的一种具体实施方式中,控制装置中可以设置有寄存器单元;
相应的,步骤S301中描述的接收中央处理器发送的写配置指令,可以具体包括:
接收中央处理器发送的写配置指令,并利用寄存器单元存储写配置指令中携带的内容。
该种实施方式考虑到,对于中央处理器发送的写配置指令,控制装置可以利用寄存器单元有效地存储写配置指令中携带的内容。可以理解的是,单个寄存器的存储空间通常不足以存储写配置指令中携带的内容,因此寄存器单元中可以包括多个寄存器。
可参阅图5,为一种具体实施方式中的控制装置的架构示意图,图5的实施方式中,控制装置中便设置有寄存器单元,从而利用寄存器单元存储写配置指令中携带的内容。
在本发明的一种具体实施方式中,控制装置中设置有寄存器转命令码单元和数据读取单元;
相应的,步骤S302可以具体包括:
基于寄存器单元中存储的写配置指令中携带的内容,利用寄存器转命令码单元生成相应的写命令码;
基于写命令码,利用数据读取单元从第一存储空间中读取出待配置寄存器数据。
该种实施方式中考虑到,通过命令码的方式,可以有效地实现数据读取,因此,为了从第一存储空间中读取出待配置寄存器数据,该种实施方式会基于寄存器单元中存储的写配置指令中携带的内容,利用寄存器转命令码单元生成相应的写命令码。
可以理解的是,写命令码可以反映出待配置寄存器数据在第一存储空间中的地址信息,从而使得数据读取单元可以基于写命令码,从第一存储空间中读取出待配置寄存器数据。例如一种场合中,数据读取单元基于AXI-MM协议与存储控制器通信连接,进而实现与双倍速率同步动态随机存储器的通信。
在本发明的一种具体实施方式中,控制装置中设置有先入先出存储单元,以通过先入先出存储单元存储从第一存储空间中读取出的待配置寄存器数据。
如上文的描述,控制装置需要从第一存储空间中,从源初始地址开始,按照待配置寄存器数据的数据量,顺序地读取出的待配置寄存器数据。FIFO(First Input FirstOutput,先入先出)存储单元能够有效地实现该目的,因此,该种实施方式中,控制装置中设置有先入先出存储单元,起到缓存的效果,从而通过先入先出存储单元存储从第一存储空间中读取出的待配置寄存器数据,以便后续将先入先出存储单元中的数据顺序地发送至目的应用的接口,完成各寄存器参数的配置。
在本发明的一种具体实施方式中,控制装置中设置有协议封装单元和仲裁单元;
相应的,步骤S303可以包括:
利用协议封装单元将写命令码和先入先出存储单元的输出数据封装为设定协议的写操作,并发送至仲裁单元;
利用仲裁单元,将写操作输出至相应应用的接口,以使得待配置寄存器数据被写入至相应的寄存器中。
该种实施方式考虑到,控制装置通常需要通过不同应用的接口,连接至不同的算法核心,因此,对于需要输出的数据,将其与写命令码一起封装之后,写命令码中能够反映出应用信息,使得仲裁单元便可以据此确定出相应应用的接口,即确定出目的应用的接口,从而进行写操作的输出,完成寄存器参数配置。
并且该种实施方式中,可以利用协议封装单元将写命令码和FIFO的输出数据封装为设定协议的写操作,例如封装为APB协议的写操作,从而有效地实现目的应用的寄存器参数配置。实际应用中,各个目的应用通常均采用的是APB协议,即该种实施方式描述的设定协议可以是APB协议,当然,其他具体场合中,可以根据实际需要进行协议的调整,并不影响本发明的实施。
在本发明的一种具体实施方式中,还可以包括:
步骤一:接收中央处理器发送的读配置指令;
步骤二:基于读配置指令中携带的应用信息,从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取;
步骤三:将读取的读配置指令所指向的待读取寄存器数据反馈至中央处理器。
上文是以目的应用的寄存器参数配置为例进行说明,即上文描述的是写配置的流程,而该种实施方式中,基于本申请的控制装置,还能够实现读配置的流程,进一步地提高了本申请方案的灵活性以及应用范围。
具体的,由于是读配置,因此控制装置可以接收中央处理器发送的读配置指令,读配置指令中需要携带有应用信息,使得控制装置可以知道应当从哪一个应用的接口,进行读配置指令所指向的待读取寄存器数据的读取。
控制装置读取了读配置指令所指向的待读取寄存器数据之后,便可以反馈至中央处理器,完成了读配置的流程。
在本发明的一种具体实施方式中,读配置指令中携带的应用信息可以包括:读目的地址、目的应用的身份标识、以及读数据量;
相应的,上述步骤二可以具体包括:
基于读配置指令中携带的目的应用的身份标识,确定出目的应用的接口;
将目的应用的接口作为读取接口,将读目的地址作为待读取寄存器数据被读取的初始地址进行数据的顺序读取,当读取的数据量等于读数据量时,完成了读配置指令所指向的待读取寄存器数据的读取。
与上文的写配置流程同理,该种实施方式中,在进行读配置的流程时,也不会造成中央处理器地址空间不足的情况。
具体的,以需要读取某个应用的5000个寄存器参数配置为例,读配置指令中携带的应用信息,只需要包括读目的地址、目的应用的身份标识、以及读数据量即可。
在读取时,控制装置基于读配置指令中携带的目的应用的身份标识,便可以确定出目的应用的接口,即控制装置基于目的应用的ID,便可以确定出应当是从哪一个接口处进行数据读取。
确定出了目的应用的接口之后,将目的应用的接口作为读取接口,便可以将读目的地址作为待读取寄存器数据被读取的初始地址,进行数据的顺序读取,当读取的数据量等于读数据量时,说明读配置指令所指向的待读取寄存器数据被全部读取完毕。
在本发明的一种具体实施方式中,在基于读配置指令中携带的应用信息,从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取之后,还可以包括:
当读配置指令所指向的待读取寄存器数据读取完成时,将自身的读状态寄存器置为第二状态,以使得中央处理器通过读状态寄存器的状态确定出读配置指令所指向的待读取寄存器数据读取完成之后,由中央处理器控制读状态寄存器恢复为默认的第一状态。
该种实施方式考虑到,待读取寄存器数据被读取完成时,为了使得中央处理器能够及时获知该情况,控制装置可以将自身的读状态寄存器置为第二状态,例如将自身的读状态寄存器置为1,表示待读取寄存器数据被全部读取到了控制装置中。而中央处理器查询到该读状态寄存器的状态为1时,便可以确定待读取寄存器数据被全部读取到了控制装置中,便可以允许控制装置将读取的读配置指令所指向的待读取寄存器数据反馈至中央处理器,与此同时,中央控制器可以控制读状态寄存器恢复为默认的第一状态,例如控制读状态寄存器清为0。
此外在实际应用中,读配置指令中可以携带有相关信息,使得控制装置据此决定是否要使用种实施方式中的反馈功能。
此外,部分场合中,读配置指令中可以携带读启动的标记,以使得控制装置据此确定出已经接收到了完整的读配置指令,进而可以执行后续的读配置流程。
在本发明的一种具体实施方式中,上述步骤一描述的接收中央处理器发送的读配置指令,可以包括:
通过第一协议转换装置,接收中央处理器发送的读配置指令。
与上文同理,中央处理器发送读配置指令时,通常可以基于AXI之类的协议发送,控制装置在完成其功能时,通常采用的是APB之类的协议,即控制装置所使用的协议与中央处理器所使用的协议通常是不同的。对此,该种实施方式中便设置了第一协议转换装置来实现协议的转换,便于控制装置有效地接收中央处理器发送的读配置指令。例如第一协议转换装置可以是AXI-Lite转APB的装置。
在本发明的一种具体实施方式中,控制装置中设置有寄存器单元;
相应的,接收中央处理器发送的读配置指令,包括:
接收中央处理器发送的读配置指令,并利用寄存器单元存储读配置指令中携带的内容。
与上文同理,对于中央处理器发送的读配置指令,控制装置可以利用寄存器单元有效地存储读配置指令中携带的内容。可以理解的是,单个寄存器通常不足以存储读配置指令中携带的内容,因此寄存器单元中可以包括多个寄存器。
在本发明的一种具体实施方式中,控制装置中设置有寄存器转命令码单元、协议封装单元以及仲裁单元;
基于寄存器单元中存储的读配置指令中携带的内容,利用寄存器转命令码单元生成相应的读命令码;
利用协议封装单元将读命令码封装为设定协议的读操作,并发送至仲裁单元;
基于读操作,利用仲裁单元从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取。
该种实施方式中考虑到,通过命令码的方式,可以有效地实现数据读取,因此,为了从目的应用的寄存器中,读取出读配置指令所指向的待读取寄存器数据,该种实施方式会基于寄存器单元中存储的读配置指令中携带的内容,利用寄存器转命令码单元生成相应的读命令码。
与上文同理,可以利用协议封装单元将读命令码封装为设定协议的读操作,并发送至仲裁单元,例如封装为APB协议的读操作,进而由仲裁单元基于读操作的内容,从相对应的应用的接口进行读配置指令所指向的待读取寄存器数据的读取。
在本发明的一种具体实施方式中,上述步骤三可以具体包括:
在利用仲裁单元从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取之后,将读取的待读取寄存器数据存储在寄存器单元中的读数据寄存器中;
将读数据寄存器中存储的待读取寄存器数据反馈至中央处理器。
该种实施方式考虑到,寄存器单元中具有多个寄存器,因此,可以将读取的待读取寄存器数据存储在寄存器单元中的读数据寄存器中,进而再将读数据寄存器中存储的待读取寄存器数据反馈至中央处理器,完成读配置的流程。
此外,实际应用中,当寄存器单元的存储空间不足时,与上文同理,可以采用分批次地反馈,或者持续性地反馈的方式,能够将读配置指令所指向的待读取寄存器数据的全部数据内容,按照顺序反馈给中央处理器即可。
应用本发明实施例所提供的技术方案,由预设的控制装置来实现寄存器参数的写入,有效地分担了中央处理器的工作。具体的,预设的控制装置与中央处理器通信连接,中央处理器只需要负责将待配置寄存器数据写入至第一存储空间,并且发送写配置指令给该控制装置即可。控制装置接收了中央处理器发送的写配置指令之后,由于写配置指令中携带有待配置寄存器数据在第一存储空间中的地址信息,因此,可以据此从第一存储空间中读取出待配置寄存器数据。读取之后,再基于写配置指令中携带的应用信息,可以将读取的待配置寄存器数据输出至相应应用的接口,以使得待配置寄存器数据被写入至相应的寄存器中,即,由控制装置执行各个寄存器参数的配置。
此外,传统方案中是由中央控制器逐个完成各个寄存器参数的配置,每次配置完一个寄存器参数之后,需要一定延迟之后再开始配置下一个寄存器参数,导致耗时较长,本申请的方案中,中央处理器将全部的待配置寄存器数据写入至第一存储空间,是连续性的操作,耗时较短,不会影响中央控制器的性能。
综上所述,本申请的方案可以有效地实现寄存器参数的配置,并且通过控制装置分担了中央处理器的工作,因此有利于释放中央处理器的性能。不会出现耗费中央处理器大量的时间与性能的情况。
相应于上面的方法实施例,本发明实施例还提供了一种寄存器参数的管理系统,可与上文相互对应参照。
可参阅图6,该寄存器参数的管理系统可以应用于预设的控制装置中,控制装置与中央处理器通信连接,寄存器参数的管理系统包括:
写配置指令接收模块601,用于在中央处理器将待配置寄存器数据写入至第一存储空间之后,接收中央处理器发送的写配置指令;
读取模块602,用于基于写配置指令中携带的待配置寄存器数据在第一存储空间中的地址信息,从第一存储空间中读取出待配置寄存器数据;
写执行模块603,用于基于写配置指令中携带的应用信息,将读取的待配置寄存器数据输出至相应应用的接口,以使得待配置寄存器数据被写入至相应的寄存器中。
在本发明的一种具体实施方式中,写配置指令中携带的待配置寄存器数据在第一存储空间中的地址信息包括:待配置寄存器数据在第一存储空间中的初始地址、待配置寄存器数据的写数据量;
被写入至第一存储空间中的待配置寄存器数据,为中央处理器按照指定顺序写入至第一存储空间中的待配置寄存器数据;
相应的,读取模块602具体用于:
基于写配置指令中携带的待配置寄存器数据在第一存储空间中的初始地址和待配置寄存器数据的写数据量,从第一存储空间中顺序读取出待配置寄存器数据。
在本发明的一种具体实施方式中,写配置指令中携带的应用信息包括:写目的地址、目的应用的身份标识;
相应的,写执行模块603具体用于:
基于写配置指令中携带的目的应用的身份标识,确定出目的应用的接口;
将读取的待配置寄存器数据输出至目的应用的接口,并将写目的地址作为待配置寄存器数据被写入的初始地址,以使得待配置寄存器数据被顺序写入至相应的寄存器中。
在本发明的一种具体实施方式中,还包括写反馈模块,用于:
在基于写配置指令中携带的应用信息,将读取的待配置寄存器数据输出至相应应用的接口之后,
当待配置寄存器数据写入完成时,将自身的写状态寄存器置为第二状态,以使得中央处理器通过写状态寄存器的状态确定出待配置寄存器数据写入完成之后,由中央处理器控制写状态寄存器恢复为默认的第一状态。
在本发明的一种具体实施方式中,写配置指令接收模块601接收中央处理器发送的写配置指令,包括:
通过第一协议转换装置,接收中央处理器发送的写配置指令。
在本发明的一种具体实施方式中,读取模块602从第一存储空间中读取出待配置寄存器数据,包括:
通过存储控制器,从第一存储空间中读取出待配置寄存器数据。
在本发明的一种具体实施方式中,控制装置中设置有寄存器单元;
相应的,写配置指令接收模块601接收中央处理器发送的写配置指令,包括:
接收中央处理器发送的写配置指令,并利用寄存器单元存储写配置指令中携带的内容。
也就是说,该种实施方式中,通过寄存器单元来实现写配置指令接收模块601。
在本发明的一种具体实施方式中,控制装置中设置有寄存器转命令码单元和数据读取单元;
相应的,读取模块602具体用于:
基于寄存器单元中存储的写配置指令中携带的内容,利用寄存器转命令码单元生成相应的写命令码;
基于写命令码,利用数据读取单元从第一存储空间中读取出待配置寄存器数据。
也就是说,该种实施方式中,通过寄存器转命令码单元和数据读取单元实现读取模块602。
在本发明的一种具体实施方式中,控制装置中设置有先入先出存储单元,以通过先入先出存储单元存储从第一存储空间中读取出的待配置寄存器数据。
在本发明的一种具体实施方式中,控制装置中设置有协议封装单元和仲裁单元;
相应的,写执行模块603具体用于:
利用协议封装单元将写命令码和先入先出存储单元的输出数据封装为设定协议的写操作,并发送至仲裁单元;
利用仲裁单元,将写操作输出至相应应用的接口,以使得待配置寄存器数据被写入至相应的寄存器中。
也就是说,该种实施方式中,通过协议封装单元和仲裁单元实现写执行模块603。
在本发明的一种具体实施方式中,控制装置与中央处理器直接通信连接,或者通过直接数据存取桥与中央处理器间接通信连接。
在本发明的一种具体实施方式中,控制装置与中央处理器集成在同一系统级芯片中,或者,控制装置与中央处理器分别设置在不同芯片中,控制装置与中央处理器通过总线通信连接。
在本发明的一种具体实施方式中,还包括读配置模块,用于:
接收中央处理器发送的读配置指令;
基于读配置指令中携带的应用信息,从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取;
将读取的读配置指令所指向的待读取寄存器数据反馈至中央处理器。
在本发明的一种具体实施方式中,读配置指令中携带的应用信息包括:读目的地址、目的应用的身份标识、以及读数据量;
相应的,基于读配置指令中携带的应用信息,从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取,包括:
基于读配置指令中携带的目的应用的身份标识,确定出目的应用的接口;
将目的应用的接口作为读取接口,将读目的地址作为待读取寄存器数据被读取的初始地址进行数据的顺序读取,当读取的数据量等于读数据量时,完成了读配置指令所指向的待读取寄存器数据的读取。
在本发明的一种具体实施方式中,在基于读配置指令中携带的应用信息,从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取之后,还包括:
当读配置指令所指向的待读取寄存器数据读取完成时,将自身的读状态寄存器置为第二状态,以使得中央处理器通过读状态寄存器的状态确定出读配置指令所指向的待读取寄存器数据读取完成之后,由中央处理器控制读状态寄存器恢复为默认的第一状态。
在本发明的一种具体实施方式中,接收中央处理器发送的读配置指令,包括:
通过第一协议转换装置,接收中央处理器发送的读配置指令。
在本发明的一种具体实施方式中,控制装置中设置有寄存器单元;
相应的,接收中央处理器发送的读配置指令,包括:
接收中央处理器发送的读配置指令,并利用寄存器单元存储读配置指令中携带的内容。
在本发明的一种具体实施方式中,控制装置中设置有寄存器转命令码单元、协议封装单元以及仲裁单元;
基于寄存器单元中存储的读配置指令中携带的内容,利用寄存器转命令码单元生成相应的读命令码;
利用协议封装单元将读命令码封装为设定协议的读操作,并发送至仲裁单元;
基于读操作,利用仲裁单元从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取。
在本发明的一种具体实施方式中,将读取的读配置指令所指向的待读取寄存器数据反馈至中央处理器,包括:
在利用仲裁单元从相应应用的接口进行读配置指令所指向的待读取寄存器数据的读取之后,将读取的待读取寄存器数据存储在寄存器单元中的读数据寄存器中;
将读数据寄存器中存储的待读取寄存器数据反馈至中央处理器。
相应于上面的方法实施例,本发明实施例还提供了一种寄存器参数的管理设备以及一种计算机可读存储介质,可与上文相互对应参照。
该寄存器参数的管理设备可以应用于预设的控制装置中,控制装置与中央处理器通信连接,可参阅图7 ,该寄存器参数的管理设备可以包括:
存储器701,用于存储计算机程序;
处理器702,用于执行计算机程序以实现如上述任一实施例中的寄存器参数的管理方法的步骤。
可参阅图8,该计算机可读存储介质80上存储有计算机程序81,计算机程序81被处理器执行时实现如上述任一实施例中的寄存器参数的管理方法的步骤。这里所说的计算机可读存储介质80包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明的保护范围内。
Claims (22)
1.一种寄存器参数的管理方法,其特征在于,应用于预设的控制装置中,所述控制装置与中央处理器通信连接,所述寄存器参数的管理方法包括:
在所述中央处理器将待配置寄存器数据写入至第一存储空间之后,接收所述中央处理器发送的写配置指令;
基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据;
基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中。
2.根据权利要求1所述的寄存器参数的管理方法,其特征在于,所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息包括:所述待配置寄存器数据在所述第一存储空间中的初始地址、所述待配置寄存器数据的写数据量;
被写入至所述第一存储空间中的所述待配置寄存器数据,为所述中央处理器按照指定顺序写入至所述第一存储空间中的所述待配置寄存器数据;
相应的,基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据,包括:
基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的初始地址和所述待配置寄存器数据的写数据量,从所述第一存储空间中顺序读取出所述待配置寄存器数据。
3.根据权利要求2所述的寄存器参数的管理方法,其特征在于,所述写配置指令中携带的应用信息包括:写目的地址、目的应用的身份标识;
相应的,基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中,包括:
基于所述写配置指令中携带的目的应用的身份标识,确定出所述目的应用的接口;
将读取的所述待配置寄存器数据输出至所述目的应用的接口,并将所述写目的地址作为所述待配置寄存器数据被写入的初始地址,以使得所述待配置寄存器数据被顺序写入至相应的寄存器中。
4.根据权利要求1所述的寄存器参数的管理方法,其特征在于,在基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口之后,还包括:
当所述待配置寄存器数据写入完成时,将自身的写状态寄存器置为第二状态,以使得所述中央处理器通过所述写状态寄存器的状态确定出所述待配置寄存器数据写入完成之后,由所述中央处理器控制所述写状态寄存器恢复为默认的第一状态。
5.根据权利要求1所述的寄存器参数的管理方法,其特征在于,接收所述中央处理器发送的写配置指令,包括:
通过第一协议转换装置,接收所述中央处理器发送的写配置指令。
6.根据权利要求1所述的寄存器参数的管理方法,其特征在于,从所述第一存储空间中读取出所述待配置寄存器数据,包括:
通过存储控制器,从所述第一存储空间中读取出所述待配置寄存器数据。
7.根据权利要求1所述的寄存器参数的管理方法,其特征在于,所述控制装置中设置有寄存器单元;
相应的,接收所述中央处理器发送的写配置指令,包括:
接收所述中央处理器发送的写配置指令,并利用所述寄存器单元存储所述写配置指令中携带的内容。
8.根据权利要求7所述的寄存器参数的管理方法,其特征在于,所述控制装置中设置有寄存器转命令码单元和数据读取单元;
相应的,基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据,包括:
基于所述寄存器单元中存储的所述写配置指令中携带的内容,利用所述寄存器转命令码单元生成相应的写命令码;
基于所述写命令码,利用所述数据读取单元从所述第一存储空间中读取出所述待配置寄存器数据。
9.根据权利要求8所述的寄存器参数的管理方法,其特征在于,所述控制装置中设置有先入先出存储单元,以通过所述先入先出存储单元存储从所述第一存储空间中读取出的所述待配置寄存器数据。
10.根据权利要求9所述的寄存器参数的管理方法,其特征在于,所述控制装置中设置有协议封装单元和仲裁单元;
相应的,基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中,包括:
利用所述协议封装单元将所述写命令码和所述先入先出存储单元的输出数据封装为设定协议的写操作,并发送至所述仲裁单元;
利用所述仲裁单元,将所述写操作输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中。
11.根据权利要求1所述的寄存器参数的管理方法,其特征在于,所述控制装置与所述中央处理器直接通信连接,或者通过直接数据存取桥与所述中央处理器间接通信连接。
12.根据权利要求1所述的寄存器参数的管理方法,其特征在于,所述控制装置与所述中央处理器集成在同一系统级芯片中,或者,所述控制装置与所述中央处理器分别设置在不同芯片中,所述控制装置与所述中央处理器通过总线通信连接。
13.根据权利要求1至12任一项所述的寄存器参数的管理方法,其特征在于,还包括:
接收所述中央处理器发送的读配置指令;
基于所述读配置指令中携带的应用信息,从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取;
将读取的所述读配置指令所指向的待读取寄存器数据反馈至所述中央处理器。
14.根据权利要求13所述的寄存器参数的管理方法,其特征在于,所述读配置指令中携带的应用信息包括:读目的地址、目的应用的身份标识、以及读数据量;
相应的,基于所述读配置指令中携带的应用信息,从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取,包括:
基于所述读配置指令中携带的目的应用的身份标识,确定出所述目的应用的接口;
将所述目的应用的接口作为读取接口,将所述读目的地址作为所述待读取寄存器数据被读取的初始地址进行数据的顺序读取,当读取的数据量等于所述读数据量时,完成了所述读配置指令所指向的所述待读取寄存器数据的读取。
15.根据权利要求13所述的寄存器参数的管理方法,其特征在于,在基于所述读配置指令中携带的应用信息,从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取之后,还包括:
当所述读配置指令所指向的待读取寄存器数据读取完成时,将自身的读状态寄存器置为第二状态,以使得所述中央处理器通过所述读状态寄存器的状态确定出所述读配置指令所指向的所述待读取寄存器数据读取完成之后,由所述中央处理器控制所述读状态寄存器恢复为默认的第一状态。
16.根据权利要求13所述的寄存器参数的管理方法,其特征在于,接收所述中央处理器发送的读配置指令,包括:
通过第一协议转换装置,接收所述中央处理器发送的读配置指令。
17.根据权利要求13所述的寄存器参数的管理方法,其特征在于,所述控制装置中设置有寄存器单元;
相应的,接收所述中央处理器发送的读配置指令,包括:
接收所述中央处理器发送的读配置指令,并利用所述寄存器单元存储所述读配置指令中携带的内容。
18.根据权利要求17所述的寄存器参数的管理方法,其特征在于,所述控制装置中设置有寄存器转命令码单元、协议封装单元以及仲裁单元;
基于所述寄存器单元中存储的所述读配置指令中携带的内容,利用所述寄存器转命令码单元生成相应的读命令码;
利用所述协议封装单元将所述读命令码封装为设定协议的读操作,并发送至所述仲裁单元;
基于所述读操作,利用所述仲裁单元从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取。
19.根据权利要求18所述的寄存器参数的管理方法,其特征在于,将读取的所述读配置指令所指向的待读取寄存器数据反馈至所述中央处理器,包括:
在利用所述仲裁单元从相应应用的接口进行所述读配置指令所指向的待读取寄存器数据的读取之后,将读取的所述待读取寄存器数据存储在所述寄存器单元中的读数据寄存器中;
将所述读数据寄存器中存储的所述待读取寄存器数据反馈至所述中央处理器。
20.一种寄存器参数的管理系统,其特征在于,应用于预设的控制装置中,所述控制装置与中央处理器通信连接,所述寄存器参数的管理系统包括:
写配置指令接收模块,用于在所述中央处理器将待配置寄存器数据写入至第一存储空间之后,接收所述中央处理器发送的写配置指令;
读取模块,用于基于所述写配置指令中携带的所述待配置寄存器数据在所述第一存储空间中的地址信息,从所述第一存储空间中读取出所述待配置寄存器数据;
写执行模块,用于基于所述写配置指令中携带的应用信息,将读取的所述待配置寄存器数据输出至相应应用的接口,以使得所述待配置寄存器数据被写入至相应的寄存器中。
21.一种寄存器参数的管理设备,其特征在于,应用于预设的控制装置中,所述控制装置与中央处理器通信连接,所述寄存器参数的管理设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至19任一项所述的寄存器参数的管理方法的步骤。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至19任一项所述的寄存器参数的管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311034885.2A CN116776781B (zh) | 2023-08-17 | 2023-08-17 | 一种寄存器参数的管理方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311034885.2A CN116776781B (zh) | 2023-08-17 | 2023-08-17 | 一种寄存器参数的管理方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116776781A true CN116776781A (zh) | 2023-09-19 |
CN116776781B CN116776781B (zh) | 2023-11-07 |
Family
ID=87991559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311034885.2A Active CN116776781B (zh) | 2023-08-17 | 2023-08-17 | 一种寄存器参数的管理方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116776781B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117435259A (zh) * | 2023-12-20 | 2024-01-23 | 芯瞳半导体技术(山东)有限公司 | Vpu的配置方法、装置、电子设备及计算机可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0106407D0 (en) * | 2001-03-15 | 2001-05-02 | Italtel Spa | A system of distributed microprocessor interfaces toward macro-cell based designs implemented as ASIC or FPGA bread boarding and relative common bus protocol |
CN101187908A (zh) * | 2007-09-27 | 2008-05-28 | 上海大学 | 单芯片多处理器共享数据存储空间的访问方法 |
US20110035580A1 (en) * | 2009-08-06 | 2011-02-10 | Broadcom Corporation | Media access control security management in physical layer |
US20130346700A1 (en) * | 2012-06-21 | 2013-12-26 | Alexander I. Tomlinson | Systems and methods for managing memory |
WO2020233373A1 (zh) * | 2019-05-21 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 一种应用程序的配置文件管理方法及装置 |
CN112257085A (zh) * | 2020-10-22 | 2021-01-22 | 政采云有限公司 | 一种基于区块链的招投标处理方法、系统、设备及介质 |
CN112363763A (zh) * | 2020-11-13 | 2021-02-12 | 山东云海国创云计算装备产业创新中心有限公司 | 数据处理方法、装置及计算机可读存储介质 |
CN112559399A (zh) * | 2020-11-27 | 2021-03-26 | 山东云海国创云计算装备产业创新中心有限公司 | 一种多axi接口的ddr控制器及其控制方法 |
CN114443268A (zh) * | 2020-10-31 | 2022-05-06 | 华为终端有限公司 | 内存管理方法、装置、电子设备以及计算机可读存储介质 |
-
2023
- 2023-08-17 CN CN202311034885.2A patent/CN116776781B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0106407D0 (en) * | 2001-03-15 | 2001-05-02 | Italtel Spa | A system of distributed microprocessor interfaces toward macro-cell based designs implemented as ASIC or FPGA bread boarding and relative common bus protocol |
CN101187908A (zh) * | 2007-09-27 | 2008-05-28 | 上海大学 | 单芯片多处理器共享数据存储空间的访问方法 |
US20110035580A1 (en) * | 2009-08-06 | 2011-02-10 | Broadcom Corporation | Media access control security management in physical layer |
US20130346700A1 (en) * | 2012-06-21 | 2013-12-26 | Alexander I. Tomlinson | Systems and methods for managing memory |
WO2020233373A1 (zh) * | 2019-05-21 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 一种应用程序的配置文件管理方法及装置 |
CN112257085A (zh) * | 2020-10-22 | 2021-01-22 | 政采云有限公司 | 一种基于区块链的招投标处理方法、系统、设备及介质 |
CN114443268A (zh) * | 2020-10-31 | 2022-05-06 | 华为终端有限公司 | 内存管理方法、装置、电子设备以及计算机可读存储介质 |
CN112363763A (zh) * | 2020-11-13 | 2021-02-12 | 山东云海国创云计算装备产业创新中心有限公司 | 数据处理方法、装置及计算机可读存储介质 |
CN112559399A (zh) * | 2020-11-27 | 2021-03-26 | 山东云海国创云计算装备产业创新中心有限公司 | 一种多axi接口的ddr控制器及其控制方法 |
Non-Patent Citations (2)
Title |
---|
崔丹丹;宫永生;: "NVMe高速存储的FPGA实现", 微电子学与计算机, no. 06 * |
李明磊;潘文亮;: "基于SPI接口和FIFO缓冲器的大容量高速实时数据存储方案", 海洋技术, no. 02 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117435259A (zh) * | 2023-12-20 | 2024-01-23 | 芯瞳半导体技术(山东)有限公司 | Vpu的配置方法、装置、电子设备及计算机可读存储介质 |
CN117435259B (zh) * | 2023-12-20 | 2024-03-22 | 芯瞳半导体技术(山东)有限公司 | Vpu的配置方法、装置、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116776781B (zh) | 2023-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103778013B (zh) | 一种多通道Nand Flash控制器及其控制方法 | |
CN105183680B (zh) | 实现PCIe接口转CF卡接口的FPGA芯片及方法 | |
CN106951388A (zh) | 一种基于PCIe的DMA数据传输方法及系统 | |
CN106874224A (zh) | 自动搬运且适应器件的多线SPI‑Flash控制器 | |
CN116776781B (zh) | 一种寄存器参数的管理方法、系统、设备及存储介质 | |
CN110462599A (zh) | 用于循环缓冲器的自主硬件管理的设备和方法 | |
JPS5914778B2 (ja) | デ−タ処理装置 | |
US7725621B2 (en) | Semiconductor device and data transfer method | |
JP6602579B2 (ja) | 半導体装置およびシステム | |
CN111931442B (zh) | Fpga内嵌flash控制器及电子装置 | |
CN101169673A (zh) | 实时时钟芯片接口电路的控制方法及实时时钟控制电路 | |
CN113590520B (zh) | Spi系统自动写入数据的控制方法及spi系统 | |
CN118276772A (zh) | 神经网络的数据处理方法、系统及可读存储介质 | |
US7913013B2 (en) | Semiconductor integrated circuit | |
JP2001282704A (ja) | データ処理装置及びデータ処理方法とデータ処理システム | |
US20030181994A1 (en) | Microprocessor performing efficient external bus access | |
US7350015B2 (en) | Data transmission device | |
JP3942074B2 (ja) | データ入出力装置、メモリ・システム、データ入出力回路およびデータ入出力方法 | |
CN102591820B (zh) | 一种idma总线桥装置 | |
US20130033945A1 (en) | System and method for interfacing burst mode devices and page mode devices | |
EP2799979B1 (en) | Hardware abstract data structure, data processing method and system | |
CN117851313A (zh) | 一种适用于片上网络架构芯片的dma控制系统 | |
JPS6126164A (ja) | デ−タ転送制御方法 | |
JP2000132451A (ja) | メモリ制御回路 | |
JPS61250758A (ja) | 通信制御装置 |
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 |