System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 布尔函数重构求解方法、装置、计算机设备及存储介质制造方法及图纸_技高网

布尔函数重构求解方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:41951769 阅读:6 留言:0更新日期:2024-07-10 16:39
本发明专利技术涉及现场可编程门阵列技术领域,公开了布尔函数重构求解方法、装置、计算机设备及存储介质,应用于FPGA,包括:获取第一初始查找表、第二初始查找表及约束条件;计算得到第二初始查找表的余子式;遍历第一初始查找表的输入信号与第二初始查找表的输入信号,记录第一初始查找表与第二初始查找表的共享输入信号;确定第一目标查找表与第二目标查找表的输入信号个数分布及对应的输入信号组合;将每一输入信号个数分布及输入信号个数分布对应的输入信号组合输入不同的线程;对各线程进行求解,得到所有的第一目标查找表与第二目标查找表的组合,本发明专利技术提升了对FPGA芯片的关键路径延时的优化的运行速度及运行效率,减少了内存消耗。

【技术实现步骤摘要】

本专利技术涉及现场可编程门阵列,具体涉及布尔函数重构求解方法、装置、计算机设备及存储介质


技术介绍

1、布尔函数重构常见于fpga领域,fpga芯片使能过程中为实现关键路径延时的优化,常常需要通过改变两个连续lut(查找表)的输入信号排列方式,由于每一个lut本身就代表一个n(n一般为6或以下)输入单输出的布尔函数,对输入信号排列方式的改变本质上也就是对布尔函数进行了重构。

2、相关技术中,对fpga芯片的关键路径延时的优化可以通过布尔函数重构实现,布尔函数重构可以自动生成所有可能的连续的查找表组合。然而,在对fpga芯片的关键路径延时的优化过程中需要构建二维向量,所需的存储空间大,且排除无关输入组合需要额外的步骤,对fpga芯片的关键路径延时的优化存在运行效率低的问题,难以满足对fpga芯片的关键路径延时的优化的需求。


技术实现思路

1、有鉴于此,本专利技术提供了一种布尔函数重构求解方法、装置、计算机设备及存储介质,以解决现有对fpga芯片的关键路径延时的优化存在运行效率低的问题。

2、第一方面,本专利技术提供了一种布尔函数重构求解方法,应用于fpga,方法包括:

3、获取第一初始查找表、第二初始查找表及约束条件,第一初始查找表的输出信号作为第二初始查找表其中一个的输入信号,约束条件用于对第一目标查找表与第二目标查找表的输入信号的数量分别进行限制,以及至少一个目标输入信号通过预定的输入端口输入,至少一个目标输入信号为所第一目标查找表中的一个或多个输入信号,和/或,至少一个目标输入信号为第二目标查找表中的一个或多个输入信号;第一目标查找表的输出信号作为到第二目标查找表其中一个的输入信号;

4、基于第一初始查找表的输出信号、与输出信号对应的第二初始查找表的输入的比特位、预先构建的掩码表、第二初始查找表的真值表、第二初始查找表的输入信号的个数,计算得到第二初始查找表的余子式;

5、分别遍历第一初始查找表的输入信号与第二初始查找表的输入信号,记录第一初始查找表与第二初始查找表的共享输入信号;

6、基于第一初始查找表的输入信号、第二初始查找表的输入信号与约束条件,确定第一目标查找表与第二目标查找表的输入信号个数分布及输入信号个数分布对应的输入信号组合;

7、将每一输入信号个数分布及输入信号个数分布对应的输入信号组合输入不同的线程;

8、基于第二初始查找表的余子式、第一初始查找表与第二初始查找表的共享输入信号,对各线程进行多线程求解,得到所有的第一目标查找表与第二目标查找表的组合,以利用所有的第一目标查找表与第二目标查找表的组合实现fpga关键路径延时的优化。

9、在本专利技术中,对fpga芯片的关键路径延时的优化通过基于一定的限制条件,对输入的连续查找表输出符合限定条件的所有可能的输入信号重排列的连续查找表组合,便于用户进行集成;输出所有可能的输入信号重排列的连续查找表组合,便于用户进行优解选取。通过借助余子式进行真值表的表达,所有基本操作均采用位运算实现,除必要队列存储外所有中间变量均采用对应位数的整型变量存储,在实践中相较于一般对fpga芯片的关键路径延时的优化方法,在内存资源相同的情况下可成倍提升对fpga芯片的关键路径延时的优化的运行速度。在并行数量相同的情况下可成数量级减少对fpga芯片的关键路径延时的优化的内存消耗。相较于现有的对fpga芯片的关键路径延时的优化方法,在存储上,该对fpga芯片的关键路径延时的优化的布尔函数重构求解器无需构建二维向量,仅采用不同位宽的整型值进行中间存储,从而成数量级减少存储空间;运行效率上,该对fpga芯片的关键路径延时的优化的布尔函数重构求解器以位运算作为基本操作方法,同时采用多线程手段,多种求解同步进行。与此同时,还支持无关输入组合计算,无需额外步骤,进一步提高了对fpga芯片的关键路径延时的优化的效率。

10、在一种可选的实施方式中,基于第一初始查找表的输出信号、与输出信号对应的第二初始查找表的输入的比特位、预先构建的掩码表、第二初始查找表的真值表、第二初始查找表的输入信号的个数,计算得到第二初始查找表的余子式,包括:

11、基于第一初始查找表的输出信号的输出值及与输出信号对应的第二初始查找表的输入比特位,对掩码表进行初始化,得到初始掩码;

12、利用初始掩码、第二初始查找表的真值表、比特位以及第二初始查找表的输入信号的个数进行位运算,得到第二初始查找表的余子式。

13、在该方式中,通过利用第一初始查找表的输出信息,对掩码表进行初始化,利用初始化掩码,通过位运算得到第二初始查找表的余子式,有着极高的运行效率,在连续对多组第一初始查找表与第二初始查找表的组合进行求解时,优势更为明显。

14、在一种可选的实施方式中,利用初始掩码、第二初始查找表的真值表、比特位以及第二初始查找表的输入信号的个数进行位运算,得到第二初始查找表的余子式,包括:

15、利用初始掩码与第二初始查找表的真值表进行按位与运算,得到中间值;

16、利用第二初始查找表的输出信号连接到第二初始查找表的输入信号的比特位与第二初始查找表的输入信号的个数,结合初始掩码,对中间值进行循环求解,得到循环后的中间值;

17、对循环后的中间值进行移动,得到第二初始查找表的余子式。

18、在该方式中,通过初始掩码表,与第二初始查找表的真值表进行按位与运算,循环求解并进行移动处理,得到第二初始查找表的余子式,便于后续利用第二初始查找表的余子式进行计算。

19、在一种可选的实施方式中,基于第二初始查找表的余子式、第一初始查找表与第二初始查找表的共享输入信号,对各线程进行多线程求解,得到所有的第一目标查找表与第二目标查找表的组合,包括:

20、基于第一初始查找表与第二初始查找表的共享输入信号,确定第一目标查找表与第二目标查找表的共享输入信号;

21、基于第一目标查找表与第二目标查找表的共享输入信号,对第一目标查找表进行无关输入组合构建,得到第一目标查找表的无关输入组合;

22、以及基于第一目标查找表与第二目标查找表的共享输入信号,对第二目标查找表进行无关输入组合构建,得到第二目标查找表的无关输入组合;

23、基于第一目标查找表的输入信号组合、第二目标查找表的输入信号组合、与第一目标查找表的无关输入组合,以及第二目标查找表的无关输入组合,构建第二目标查找表的余子式;

24、检查构建第二目标查找表的余子式是否成功;

25、在构建第二目标查找表的余子式成功时,基于第二目标查找表的余子式,构建第一目标查找表的真值表;

26、基于第二目标查找表的余子式以及与第一目标查找表的真值表,生成第二目标查找表的真值表,将第一目标查找表的输入信号个数分布及输入信号个数分布对应的输入信号组合、第二目标查找表的输入信号个数分布及输入信号个数分布对应的输入信号组合本文档来自技高网...

【技术保护点】

1.一种布尔函数重构求解方法,其特征在于,应用于FPGA,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述基于所述第一初始查找表的输出信号、与所述输出信号对应的所述第二初始查找表的输入的比特位、预先构建的掩码表、所述第二初始查找表的真值表、所述第二初始查找表的输入信号的个数,计算得到所述第二初始查找表的余子式,包括:

3.根据权利要求2所述的方法,其特征在于,所述利用所述初始掩码、所述第二初始查找表的真值表、比特位以及所述第二初始查找表的输入信号的个数进行位运算,得到所述第二初始查找表的余子式,包括:

4.根据权利要求1所述的方法,其特征在于,所述基于所述第二初始查找表的余子式、所述第一初始查找表与所述第二初始查找表的共享输入信号,对各所述线程进行多线程求解,得到所有的所述第一目标查找表与所述第二目标查找表的组合,包括:

5.根据权利要求4所述的方法,其特征在于,所述检查构建所述第二目标查找表的余子式是否成功,包括:

6.根据权利要求5所述的方法,其特征在于,所述基于所述无关输入组合掩码,判断所述第二目标查找表对应的独立的余子式的个数是否小于等于2,包括:

7.一种布尔函数重构求解装置,其特征在于,所述装置包括:

8.一种计算机设备,其特征在于,包括:

9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至6中任一项所述的布尔函数重构求解方法。

10.一种计算机程序产品,其特征在于,包括计算机指令,所述计算机指令用于使计算机执行权利要求1至6中任一项所述的布尔函数重构求解方法。

...

【技术特征摘要】

1.一种布尔函数重构求解方法,其特征在于,应用于fpga,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述基于所述第一初始查找表的输出信号、与所述输出信号对应的所述第二初始查找表的输入的比特位、预先构建的掩码表、所述第二初始查找表的真值表、所述第二初始查找表的输入信号的个数,计算得到所述第二初始查找表的余子式,包括:

3.根据权利要求2所述的方法,其特征在于,所述利用所述初始掩码、所述第二初始查找表的真值表、比特位以及所述第二初始查找表的输入信号的个数进行位运算,得到所述第二初始查找表的余子式,包括:

4.根据权利要求1所述的方法,其特征在于,所述基于所述第二初始查找表的余子式、所述第一初始查找表与所述第二初始查找表的共享输入信号,对各所述线程进行多线程求解,得到所有的所述第一目标查找表...

【专利技术属性】
技术研发人员:请求不公布姓名
申请(专利权)人:苏州异格技术有限公司
类型:发明
国别省市:

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

1