一种芯片表项的带掩码操作方法及装置转让专利

申请号 : CN201910304500.7

文献号 : CN110032378A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 何志川郭斌赵子苍周杰唐飞

申请人 : 盛科网络(苏州)有限公司

摘要 :

本发明揭示了一种芯片表项的带掩码操作方法及装置,所述方法包括:CPU获取芯片表项未修改前的第一数据值,根据芯片表项中需修改的位域对第一数据值进行修改,得到第二数据值,将需修改的位域转换为对应的掩码,将所述第一数据值与掩码进行逻辑运算得到第三数据值,将所述第三数据值和第二数据值进行逻辑运算,得到目标写入值,CPU将目标写入值通过写入芯片。本发明在CPU写芯片表项时引入掩码机制,避免CPU在写操作过程中对芯片自身控制的位域误操作给覆盖掉,影响CPU写芯片表项的操作精度。

权利要求 :

1.一种芯片表项的带掩码操作方法,其特征在于,包括:

S1,CPU获取芯片表项未修改前的第一数据值;

S2,根据芯片表项中需修改的位域对所述第一数据值进行修改,得到第二数据值;

S3,将需修改的位域转换为对应的掩码,将所述第一数据值与掩码进行逻辑运算得到第三数据值,将所述第三数据值和第二数据值进行逻辑运算,得到目标写入值;所述掩码标识所述芯片表项中需修改的位域;

S4,CPU将所述目标写入值通过写入芯片。

2.根据权利要求1所述的芯片表项的带掩码操作方法,其特征在于,S3中,所述逻辑运算为逻辑与运算或逻辑或运算。

3.根据权利要求1所述的芯片表项的带掩码操作方法,其特征在于,所述掩码根据芯片表项中位域能否修改的信息对应进行赋值。

4.根据权利要求3所述的芯片表项的带掩码操作方法,其特征在于,所述掩码的每一位赋值为第一标识值或第二标识值,所述第一标识值标识对应位域可以进行修改,所述第二标识值标识对应位域不可以进行修改。

5.根据权利要求4所述的芯片表项的带掩码操作方法,其特征在于,所述第一标识值和第二标识值均为二进制数,且赋值所述第一标识值为1,所述第二标识值为0,或者赋值所述第一标识值为0,所述第二标识值为1。

6.根据权利要求1所述的芯片表项的带掩码操作方法,其特征在于,S4,CPU将目标写入值通过驱动接口写入芯片。

7.一种芯片表项的带掩码操作装置,其特征在于,包括:

第一数据值获取单元,用于获取芯片表项未修改前的第一数据值;

第二数据值获取单元,用于根据芯片表项中需修改的位域对所述第一数据值进行修改,得到第二数据值;

目标写入值获取单元,用于将需修改的位域转换为对应的掩码,将所述第一数据值与掩码进行逻辑运算得到第三数据值,将所述第三数据值和第二数据值进行逻辑运算,得到目标写入值;所述掩码标识所述芯片表项中需修改的位域;

目标值写入单元,用于将所述目标写入值写入芯片。

8.根据权利要求7所述的芯片表项的带掩码操作装置,其特征在于,所述掩码根据芯片表项中位域能否修改的信息对应进行赋值。

9.根据权利要求8所述的芯片表项的带掩码操作装置,其特征在于,所述掩码的每一位赋值为第一标识值或第二标识值,所述第一标识值标识对应位域可以进行修改,所述第二标识值标识对应位域不可以进行修改。

10.根据权利要求9所述的芯片表项的带掩码操作装置,其特征在于,所述第一标识值和第二标识值均为二进制数,且赋值所述第一标识值为1,所述第二标识值为0,或者赋值所述第一标识值为0,所述第二标识值为1。

说明书 :

一种芯片表项的带掩码操作方法及装置

技术领域

[0001] 本发明涉及一种芯片表项操作方法,尤其是涉及一种芯片表项的带掩码操作方法及装置。

背景技术

[0002] 在芯片实际工作中,对同一个表项的不同位域,会存在一部分的位域是由芯片自己维护的状态机更新,而一部分位域是需要CPU来更新。传统CPU操作芯片表项的方式,是通过驱动(driver)接口对芯片表项进行读写操作。
[0003] 但是上述这种芯片表项操作方式,由于CPU在操作过程中,无法感知哪些位域是由芯片自身维护的状态机进行更新的,所以CPU在对芯片表项进行写操作过程中,可能会覆盖芯片本身状态机的位域,即导致CPU误操作芯片本身状态机的位域。

发明内容

[0004] 本发明的目的在于克服现有技术的缺陷,提供一种芯片表项的带掩码操作方法及装置。
[0005] 为实现上述目的,本发明提出如下技术方案:一种芯片表项的带掩码操作方法,包括:
[0006] S1,CPU获取芯片表项未修改前的第一数据值;
[0007] S2,根据芯片表项中需修改的位域对所述第一数据值进行修改,得到第二数据值;
[0008] S3,将需修改的位域转换为对应的掩码,将所述第一数据值与掩码进行逻辑运算得到第三数据值,将所述第三数据值和第二数据值进行逻辑运算,得到目标写入值;所述掩码标识所述芯片表项中需修改的位域;
[0009] S4,CPU将所述目标写入值通过写入芯片。
[0010] 优选地,S3中,所述逻辑运算为逻辑与运算或逻辑或运算。
[0011] 优选地,所述掩码根据芯片表项中位域能否修改的信息对应进行赋值。
[0012] 优选地,所述掩码的每一位赋值为第一标识值或第二标识值,所述第一标识值标识对应位域可以进行修改,所述第二标识值标识对应位域不可以进行修改。
[0013] 优选地,所述第一标识值和第二标识值均为二进制数,且赋值所述第一标识值为1,所述第二标识值为0,或者赋值所述第一标识值为0,所述第二标识值为1。
[0014] 优选地,S4,CPU将目标写入值通过驱动接口写入芯片。
[0015] 本发明还揭示了另外一种技术方案:一种芯片表项的带掩码操作装置,包括:
[0016] 第一数据值获取单元,用于获取芯片表项未修改前的第一数据值;
[0017] 第二数据值获取单元,用于根据芯片表项中需修改的位域对所述第一数据值进行修改,得到第二数据值;
[0018] 目标写入值获取单元,用于将需修改的位域转换为对应的掩码,将所述第一数据值与掩码进行逻辑运算得到第三数据值,将所述第三数据值和第二数据值进行逻辑运算,得到目标写入值;所述掩码标识所述芯片表项中需修改的位域;
[0019] 目标值写入单元,用于将所述目标写入值写入芯片。
[0020] 本发明的有益效果是:本发明在CPU写芯片表项时引入掩码机制,避免CPU在写操作过程中对芯片自身控制的位域误操作给覆盖掉,影响CPU写芯片表项的操作精度。

附图说明

[0021] 图1是本发明方法的流程示意图。

具体实施方式

[0022] 下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。
[0023] 本发明所揭示的一种芯片表项的带掩码操作方法及装置,在CPU写芯片表项时引入掩码机制,避免对芯片自身控制的位域误操作。
[0024] 如图1所示,本发明实施例所揭示的一种芯片表项的带掩码操作方法,包括:
[0025] S1,CPU获取芯片表项未修改前的第一数据值。
[0026] 具体地,因CPU操作芯片最小单位为4Byte,但多数情况下单次操作只对芯片部分位域做修改,芯片其他位域需要保持原始值不变,故需要获取芯片表项位域未修改前的原始值,此处记为data0,即第一数据值。
[0027] S2,根据芯片表项中需修改的位域对上述第一数据值进行修改,得到第二数据值。
[0028] 具体地,CPU预先知道芯片表项中哪些位域需要修改,哪些位域不需要修改,所以可以根据预先知道的芯片表项中需修改的位域,对第一数据值进行修改,记为data1,即第二数据值。
[0029] S3,将需修改的位域转换为对应的掩码,将所述第一数据值与掩码进行逻辑运算得到第三数据值,将所述第三数据值和第二数据值进行逻辑运算,得到目标写入值;其中,掩码标识上述芯片表项中需修改的位域。
[0030] 具体地,为了避免CPU操作芯片表项时误操作芯片本身状态机的位域,本发明引入掩码机制,即用掩码(mask)标识芯片表项哪些位域需要修改,哪些位域不需要修改,不需要修改的位域则为原值,反之,修改掩码标识的需要修改的位域。
[0031] 掩码的位数与芯片表项的位数相对应,每一位赋值为第一标识值或第二标识值,其中,第一标识值标识对应位域可以进行修改,第二标识值标识对应位域不可以进行修改。实施时,第一标识值和第二标识值可采用二进制数标识,且赋值第一标识值为1,同时第二标识值为0,或者赋值第一标识值为0,同时第二标识值为1。
[0032] 将上述第一数据值和掩码进行逻辑运算,得到第三数据值,将第三数据值和第二数据值进行逻辑运算,得到目标写入值。本实施例中,第一数据值和掩码进行的是逻辑与运算,即,第三数据值=data0&mask,第三数据值和第二数据值进行的是逻辑或运算,当然可不限于采用逻辑与、或运算,可根据需要选择其他逻辑运算。
[0033] S4,CPU将上述目标写入值通过写入芯片。
[0034] 本实施例中,CPU将上述运算得到的目标写入值,通过驱动接口写入芯片。
[0035] 本发明实施例所揭示的一种芯片表项的带掩码操作装置,包括:
[0036] 第一数据值获取单元,用于获取芯片表项未修改前的第一数据值;
[0037] 第二数据值获取单元,用于根据芯片表项中需修改的位域对所述第一数据值进行修改,得到第二数据值;
[0038] 目标写入值获取单元,用于将需修改的位域转换为对应的掩码,将所述第一数据值与掩码进行逻辑运算得到第三数据值,将所述第三数据值和第二数据值进行逻辑运算,得到目标写入值;所述掩码标识所述芯片表项中需修改的位域;
[0039] 目标值写入单元,用于将所述目标写入值写入芯片。
[0040] 其中,第一数据值获取单元、第二数据值获取单元、目标写入值获取单元和目标值写入单元的工作原理分别对应上述步骤S1~S4,可参见上述描述。
[0041] 本发明在CPU写芯片表项时引入掩码机制,避免CPU写操作时过程中芯片自身控制的位域有更新,而S4的写操作将芯片自身的状态机更新给覆盖掉;同时也避免CPU对芯片自身控制的位域做更新。
[0042] 其中,上述芯片不局限于ASIC(Application Specific Integrated Circuit,专用集成电路)芯片,还包括FPGA(Field-Programmable Gate Array,现场可编程门阵列)或NP(网络处理器)等。
[0043] 本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。