System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用于电路的二进制数的前导零个数确定方法和电路技术_技高网

用于电路的二进制数的前导零个数确定方法和电路技术

技术编号:40601312 阅读:6 留言:0更新日期:2024-03-12 22:05
本申请公开了一种用于电路的二进制数的前导零个数确定方法、电路以及电子设备。该方法包括:获取总数字串,总数字串中从首数字到尾数字依次包含目标二进制数中从高位到低位的所有数字;确定多个子数字串,子数字串包含总数字串中的部分数字,部分数字在总数字串中相邻。对多个子数字串进行编码,以确定多个子数字串各自对应的编码值,编码值表征其对应的子数字串中的数字的值是否包含1。基于多个子数字串对应的编码值确定目标二进制数的前导零个数。利用本申请的方法,可以减少利用电路确定二进制数的前导零个数的耗时和出错风险,为后续计算提供更多时间和安全的裕量,有利于进一步提升芯片的性能。

【技术实现步骤摘要】

本申请涉及计算领域,特别涉及用于电路的二进制数的前导零个数确定方法、电路以及电子设备。


技术介绍

1、在计算领域,例如设计、使用计算单元时,往往需要确定二进制数的前导零的个数。在现有技术中,通常对二进制数从高位到低位逐位判断来确定二进制数前导零的个数。例如,设计逻辑电路,实现从二进制数的最高位至最低位逐次检测该位的值是否是1,如果是1则停止检测,如果是0则继续检测下一位。这种方法虽然逻辑简单,但因为后一步的操作依赖于前一步是否发现1,所以通常只能串行执行,这使得检测耗时较长。以及,在此过程中一旦碰到意外事件(例如电路故障、断电、读写冲突、存取失败等),将不得不从头再来。由于现有技术耗时太长,这将导致出意外的概率变大,致使健壮性不佳。为此,希望提出一种计算速度快、健壮性强的用于电路的方法来确定二进制数前导零的个数。


技术实现思路

1、鉴于此,本申请提供了一种用于电路的二进制数的前导零个数确定方法、电路、以及包括其的电子设备,其能够缓解或克服上面提到的部分或全部缺陷以及其他可能的缺陷。

2、根据本申请的一个方面,提供了一种用于电路的二进制数的前导零个数确定方法,该方法包括:获取总数字串,总数字串中从首数字到尾数字依次包含目标二进制数中从高到低所有位的数字;确定多个子数字串,子数字串包含总数字串中的部分数字,部分数字在总数字串中相邻;对多个子数字串进行编码,以确定多个子数字串各自对应的编码值,编码值表征其对应的子数字串中的数字的值是否包含1;以及,基于多个子数字串对应的编码值确定目标二进制数的前导零个数。

3、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,基于多个子数字串各自对应的编码值确定目标二进制数的前导零个数包括:基于多个子数字串各自对应的编码值确定结果数字串,结果数字串以二进制形式表示目标二进制数的前导零个数;并且结果数字串的每个数分别基于多个子数字串中至少部分子数字串对应的编码值确定。

4、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中确定多个子数字串包括:确定n组子数字串,其中第i组子数字串中的每个子数字串包含2i-1个数字,且第i组子数字串中的第j个子数字串的尾数字和第j+1个子数字串的首数字在总数字串中间隔2i-1个数字,且第i组子数字串中的第1个子数字串的首数字与总数字串的首数字相同;并且,i、j、n都是正整数。

5、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中对多个子数字串进行编码,以确定多个子数字串各自对应的编码值包括:对多个子数字串中的每个执行以下步骤:响应于子数字串包含的数字的值全是0,确定该子数字串的编码值是0;响应于子数字串包含的数字的值包含1,确定该子数字串的编码值是1。

6、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中基于多个子数字串各自对应的编码值确定结果数字串包括:确定结果数字串的长度,结果数字串的长度与多个子数字串的组数相同,且满足等式:

7、2n-1≤m<2n

8、其中,n是结果数字串的长度,m是总数字串的长度。以及,确定结果数字串中每个数字的值包括:针对结果数字串中每个数字,执行如下步骤:基于从第n组子数字串到第k组子数字串中各数字串的编码值确定结果数字串中第k个数字的值,其中m、k都是正整数,结果数字串中第k个数字指从结果数字串中的尾数字至首数字方向上的第k个数字。

9、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中基于从第n组子数字串到第k组子数字串中各子数字串的编码值确定结果数字串中第k个数字的值包括:基于从第n组子数字串到第k组子数字串中各数字串的编码值,确定第k组子数字串中是否包含总数字串的首一数字,首一数字是总数字串中从首数字至尾数字方向的第一个值为1的数字;响应于第k组子数字串中包含总数字串的首一数字,确定结果数字串中第k个数字的值是0;以及,响应于第k组子数字串中未包含总数字串的首一数字,确定结果数字串中第k个数字的值是1。

10、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中确定第k组子数字串中是否包含总数字串的首一数字包括:对第k组子数字串中的每个子数字串执行首一检测步骤,以确定总数字串的首一数字是否被包含在第k组子数字串的子数字串中;响应于第k组子数字串中的子字符串包含总数字串的首一数字,确定第k组子数字串中包含总数字串的首一数字。以及,首一检测步骤包括:从第n组子数字串到第k组子数字串中确定至少一个参考子数字串,该至少一个参考子数字串包含总数字串中从总数字串首数字到待测子数字串首数字之间的所有数字;响应于至少一个参考子数字串的编码值全部是0且目标子数字串的编码值是1,确定总数字串的首一数字被包含在待测子数字串中。

11、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中至少一个参考子数字串不包含总数字串中从待测子数字串首数字到总数字串尾数字之间的数字。

12、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中确定第k组子数字串中是否包含总数字串的首一数字进一步包括:响应于第k组子数字串的所有子数字串中都不包含总数字串的首一数字,确定第k组子数字串中不包含总数字串的首一数字。

13、根据本申请的一些实施例的用于电路的二进制数的前导零个数确定方法,其中基于多个子数字串各自对应的编码值确定目标二进制数的前导零个数进一步包括:将结果数字串表示的二进制数转化为预期进制的数,作为目标二进制数的前导零个数。

14、根据本申请的一个方面,提供了一种二进制数的前导零个数确定电路,其包括编码装置和输出确定装置。编码装置被配置成接收目标二进制数并从中获取总数字串,总数字串中从首数字到尾数字依次包含目标二进制数中从高到低所有位的数字。编码装置被进一步配置成根据总数字串确定多个子数字串,子数字串包含总数字串中的部分数字,部分数字在总数字串中相邻。编码装置被进一步配置成对多个子数字串进行编码,以确定多个子数字串各自对应的编码值,编码值表征其对应的子数字串中的数字的值是否包含1。输出确定装置被配置成基于多个子数字串对应的编码值确定目标二进制数的前导零个数。

15、根据本申请的一些实施例的二进制数的前导零个数确定电路,其中输出确定装置被配置成:基于多个子数字串各自对应的编码值确定结果数字串,结果数字串以二进制形式表示目标二进制数的前导零个数;并且结果数字串的每个数分别基于多个子数字串中至少部分子数字串对应的编码值确定。

16、根据本申请的一些实施例的二进制数的前导零个数确定电路,其中编码装置被进一步配置成从总数字串中节选n组子数字串,其中第i组子数字串中的每个子数字串包含2i-1个数字,且第i组子数字串中的第j个子数字串的尾数字和第j+1个子数字串的首数字在总数字串中间隔2i-1个数字,且第i组子数字串中的第1个子数字串的首数字与总本文档来自技高网...

【技术保护点】

1.一种用于电路的二进制数的前导零个数确定方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述基于所述多个子数字串各自对应的编码值确定所述目标二进制数的前导零个数包括:

3.根据权利要求2所述的方法,其特征在于,所述确定多个子数字串包括:

4.根据权利要求3所述的方法,其特征在于,所述对所述多个子数字串进行编码,以确定所述多个子数字串各自对应的编码值包括:对所述多个子数字串中的每个执行以下步骤:

5.根据权利要求4所述的方法,其特征在于,所述基于所述多个子数字串各自对应的编码值确定结果数字串包括:

6.根据权利要求5所述的方法,其特征在于,所述基于从第N组子数字串到第k组子数字串中各子数字串的编码值确定所述结果数字串中第k个数字的值包括:

7.根据权利要求6所述的方法,其特征在于,所述确定第k组子数字串中是否包含所述总数字串的首一数字包括:

8.根据权利要求7所述的方法,其特征在于,所述至少一个参考子数字串不包含总数字串中从待测子数字串首数字到总数字串尾数字之间的数字。

9.根据权利要求7所述的方法,其特征在于,所述确定第k组子数字串中是否包含所述总数字串的首一数字进一步包括:

10.根据权利要求2所述的方法,其特征在于,所述基于所述多个子数字串各自对应的编码值确定所述目标二进制数的前导零个数进一步包括:

11.一种二进制数的前导零个数确定电路,其特征在于,所述确定电路包括编码装置和输出确定装置;

12.根据权利要求11所述的前导零个数确定电路,其特征在于,所述输出确定装置被配置成:

13.根据权利要求12所述的前导零个数确定电路,其特征在于,所述编码装置被进一步配置成从所述总数字串中节选N组子数字串,其中第i组子数字串中的每个子数字串包含2i-1个数字,且第i组子数字串中的第j个子数字串的尾数字和第j+1个子数字串的首数字在总数字串中间隔2i-1个数字,且第i组子数字串中的第1个子数字串的首数字与总数字串的首数字相同;其中,i、j、N都是正整数。

14.根据权利要求13所述的前导零个数确定电路,其特征在于,所述编码装置被进一步配置成:

15.根据权利要求13所述的前导零个数确定电路,其特征在于,所述编码装置包含多个或运算电路,所述或运算电路包含多个或运算单元,所述或运算电路对子数字串的所有数字进行或运算,并将或运算的结果确定为所述子数字串的编码值。

16.根据权利要求13所述的前导零个数确定电路,其特征在于,所述输出确定装置进一步包括长度确定电路,所述长度确定电路被配置成根据所述总数字串的长度确定所述结果数字串的长度,所述结果数字串的长度与所述多个子数字串的组数相同,且满足等式:

17.根据权利要求14所述的前导零个数确定电路,其特征在于,所述输出确定装置包括N个数值判断电路,所述N个数值判断电路与所述结果数字串的N个数字分别对应,所述N个数值判断电路中的第k个数值判断电路被配置成:

18.根据权利要求17所述的前导零个数确定电路,其特征在于,所述N个数值判断电路中的第k个数值判断电路包括p个首一检测子电路和检测输出子电路,其中,p是第k组子数字串中数字串的个数;

19.根据权利要求18所述的前导零个数确定电路,其特征在于,所述p个首一检测子电路中的第h个首一检测子电路被进一步配置成:

20.根据权利要求19所述的前导零个数确定电路,其特征在于,所述至少一个参考子数字串不包含总数字串中从所述第h个子数字串首数字到总数字串尾数字之间的数字。

21.根据权利要求20所述的前导零个数确定电路,其特征在于,所述p个首一检测子电路中的第h个首一检测子电路被进一步配置成:

22.根据权利要求12所述的前导零个数确定电路,其特征在于,所述输出确定装置进一步包括进制转换模块,其被配置成:

23.一种电子设备,包括如权利要求11-22中任一项所述的前导零个数确定电路。

...

【技术特征摘要】

1.一种用于电路的二进制数的前导零个数确定方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述基于所述多个子数字串各自对应的编码值确定所述目标二进制数的前导零个数包括:

3.根据权利要求2所述的方法,其特征在于,所述确定多个子数字串包括:

4.根据权利要求3所述的方法,其特征在于,所述对所述多个子数字串进行编码,以确定所述多个子数字串各自对应的编码值包括:对所述多个子数字串中的每个执行以下步骤:

5.根据权利要求4所述的方法,其特征在于,所述基于所述多个子数字串各自对应的编码值确定结果数字串包括:

6.根据权利要求5所述的方法,其特征在于,所述基于从第n组子数字串到第k组子数字串中各子数字串的编码值确定所述结果数字串中第k个数字的值包括:

7.根据权利要求6所述的方法,其特征在于,所述确定第k组子数字串中是否包含所述总数字串的首一数字包括:

8.根据权利要求7所述的方法,其特征在于,所述至少一个参考子数字串不包含总数字串中从待测子数字串首数字到总数字串尾数字之间的数字。

9.根据权利要求7所述的方法,其特征在于,所述确定第k组子数字串中是否包含所述总数字串的首一数字进一步包括:

10.根据权利要求2所述的方法,其特征在于,所述基于所述多个子数字串各自对应的编码值确定所述目标二进制数的前导零个数进一步包括:

11.一种二进制数的前导零个数确定电路,其特征在于,所述确定电路包括编码装置和输出确定装置;

12.根据权利要求11所述的前导零个数确定电路,其特征在于,所述输出确定装置被配置成:

13.根据权利要求12所述的前导零个数确定电路,其特征在于,所述编码装置被进一步配置成从所述总数字串中节选n组子数字串,其中第i组子数字串中的每个子数字串包含2i-1个数字,且第i组子数字串中的第j个子数字串的尾数字和第j+1个子数字串的首数字在总数字串中间隔2i-1个数字...

【专利技术属性】
技术研发人员:请求不公布姓名
申请(专利权)人:摩尔线程智能科技北京有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1