用于细粒度可编程门架构的减少引脚数的数字信号处理块制造技术

技术编号:35126431 阅读:13 留言:0更新日期:2022-10-05 09:57
本公开涉及用于细粒度可编程门架构的减少引脚数的数字信号处理块。数字信号处理块具有第一输入端口、第二输入端口、第三输入端口、级联输入端口和输出端口。DSP块可以具有级联输出端口。DSP块可以具有多路复用器,该多路复用器将从第一输入端口、第二输入端口和第三输入端口的级联输入选择性地输出到级联输出端口。DSP块可以通过级联路径连接到另一DSP块。DSP块可以具有可变移位器。DSP块可以具有全宽度加法器和减小宽度输入端口。度加法器和减小宽度输入端口。度加法器和减小宽度输入端口。

【技术实现步骤摘要】
用于细粒度可编程门架构的减少引脚数的数字信号处理块
[0001]相关申请的交叉引用
[0002]本申请要求于2021年3月30日提交的名称为“用于细粒度可编程门架构的减少引脚数的数字信号处理块(DIGITAL SIGNAL PROCESSING BLOCK WITH REDUCED PIN COUNT FOR FINE

GRAIN PROGRAMMABLE GATE ARCHITECTURE)”的美国临时申请第63/168,009号的优先权,该申请通过引用并入本文。


[0003]本文公开的实施例涉及可编程门架构的领域;更具体地,本文公开的实施例涉及可编程门架构中的数字信号处理块。

技术介绍

[0004]现代的现场可编程门阵列(FPGA)结构架构包括可编程逻辑、可编程路由和宏块,如存储器块、数字信号处理(DSP)块、锁相环(PLL)等。DSP块通常提供了数学函数,否则这些数学函数以可编程逻辑低效地实施,可编程逻辑例如是整数乘法和加法,偶尔还是这些函数的浮点版本。
[0005]通常,对于DSP块,有大约3到4个输入集,用作子块,如预加法器、乘法器和主加法器,的输入。对于主加法器,通常一个输入来自乘法器,第二输入直接来自输入引脚。该第二输入通常与加法器具有相同的宽度。乘法器中使用的输入通常具有大约17位到26位的宽度,加法器的输入通常为36位或48位,或者在二合一封装架构中高达64位。
[0006]在经典的岛式可编程门架构上,DSP通过连接块和开关块连接到路由结构,因此DSP的引脚数更多地取决于连接块而不是逻辑元件。对于没有专用开关块并且输出多路复用(也称为复用)内置于每个单独逻辑元件中的细粒度可编程架构,情况并非如此。在此种架构中,每个宏块的逻辑元件的行数决定了每个宏块的最大支持引脚数。在经典架构和细粒度架构的两种情况下,DSP块中较高的引脚数转换成DSP块周围的更重的路由拥塞压力,尤其是对于使用大量DSP的用户设计。
[0007]正是在这种环境中,本公开实施例呈现了技术问题的技术解决方案。

技术实现思路

[0008]本文描述了DSP块的各种实施例。在一个实施例中,具有DSP块的FPGA具有可通过级联(cascade)路径连接的DSP块。在一个实施例中,DSP块可以被合成以在FPGA中制造。各种实施例具有全宽度加法器和减小宽度输入端口。一个实施例具有可变移位器。
[0009]一个实施例是用于现场可编程门阵列的数字信号处理(DSP)块。DSP块具有第一输入端口、第二输入端口、第三输入端口、级联输入端口和输出端口。输出端口输出DSP块的运算结果。乘法器接收来自第一输入端口的输入和第二输入端口的输入。第一符号扩展块接收乘法器的输出作为输入。第二符号扩展块接收来自第三输入端口的输入。第一多路复用器从第一符号扩展块的输出和第二符号扩展块的输出中选择输出。第二多路复用器从第二
符号扩展块的输出、加法器的锁存输出、零值、一值、第一符号扩展块的输出、级联输入端口和具有移位的级联输入中选择输出。加法器接收第一多路复用器的输出和第二多路复用器的输出作为输入。第一锁存器锁存加法器的输出。
[0010]一个实施例是有形的非暂时性计算机可读介质。介质具有指令,该指令在由处理器执行时,使得处理器执行如下方法。该方法包括将用于制造现场可编程门阵列(FPGA)的电路进行合成。FPGA包括DSP块,该DSP块具有第一输入端口、第二输入端口、第三输入端口、级联输入端口和输出端口。该方法还包括在DSP块中合成乘法器、第一符号扩展块、第二符号扩展块、第一多路复用器、第二多路复用器、加法器和第一锁存器。
[0011]一个实施例是数字信号处理(DSP)块。DSP块具有如下端口,包括第一输入端口、第二输入端口、第三输入端口、级联输入端口、输出端口和级联输出端口。DSP块具有如下块,包括乘法器、第一符号扩展块、第二符号扩展块、第一多路复用器、第二多路复用器、第三多路复用器、加法器、第一锁存器、第二锁存器和可变移位器。
[0012]一个实施例是现场可编程门阵列。FPGA具有第一数字信号处理(DSP)块和第二DSP块。每个DSP块具有第一输入端口、第二输入端口、第三输入端口和输出端口。每个DSP块具有乘法器和加法器。第一DSP块具有级联输入端口和多路复用器,该多路复用器具有来自级联输入端口的输入和包括来自第三输入端口的路径的多条路径。第二DSP块具有级联输出端口和多路复用器,该多路复用器具有至级联输出端口的输出并且选择性地输出来自第一输入端口、第二输入端口和第三输入端口的输入的级联。第一DSP块的级联输入端口和第二DSP块的级联输出端口提供级联路径以用于连接FPGA中的第一DSP块和第二DSP块。
[0013]在一个实施例中,存在多个DSP块,该多个DSP块包括第一DSP块和第二DSP块。每个DSP块具有实例化(instantiation)的第一输入端口、第二输入端口、第三输入端口、输出端口、级联输入端口、级联输出端口、乘法器、加法器和两个多路复用器。
[0014]实施例的其他方面和优点将从下面结合附图的具体实施方式中变得显而易见,附图通过示例的方式示出了所描述的实施例的原理。
附图说明
[0015]通过下面给出的具体实施方式和本专利技术的各种实施例的附图,将更全面地理解本文中描述的实施例,然而,这些实施例不应被认为将本专利技术限制为特定实施例,而是用于说明和理解。
[0016]图1表示典型FPGA中的DSP功能设计,其中端口以全宽度直接连接到运算子。
[0017]图2示出根据一个实施例的在新的引脚数最小化DSP设计中使用符号扩展子块来将减小宽度的输入连接到全宽度运算子。
[0018]图3示出根据一个实施例的使用具有新引入的输入级联模式的相邻DSP通过级联路径对一个当前DSP进行全宽度输入。
[0019]图4示出根据一个实施例的用于新DSP中的独特可变右移位器块的输入C和移位参数之间的共享输入、以及用于更新移位参数寄存器的1位写使能。
[0020]图5示出适于DSP块的实施例的可变移位器的实施例。
[0021]图6示出适于实施例的FPGA的电路合成和制造。
具体实施方式
[0022]本文公开的实施例包括具有减少的引脚数需求的新DSP块设计。在一个实施例中,DSP块设计利用符号扩展子块来将减小宽度的输入连接到全宽度加法器输入。对于直接从输入进行全宽度接入,ABC到级联输出模式通过级联其的A输入端口、B输入端口和C输入端口并且直接驱动级联输出端口,能够使得相邻DSP被用作旁通元件。在一个实施例中,加法器反馈路径是全宽度的,从而保持准确性。1位移位参数寄存器写使能引脚和共享C输入端口用于更新可变右移位器子块的移位参数寄存器,该可变右移位器子对该DSP的一些实施例是独一无二的。在各种实施例中,这将输入引脚需求从移位参数的全宽度降低到仅一位。
[0023]在各种实施例中公开了用于具有减少的引脚数需求的现场本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数字信号处理块即DSP块,用于现场可编程门阵列即FPGA,所述DSP块包括:第一输入端口;第二输入端口;第三输入端口;级联输入端口;输出端口,输出所述DSP块的运算结果;乘法器,接收来自所述第一输入端口的输入和所述第二输入端口的输入;第一符号扩展块,在第一减小宽度路径上接收所述乘法器的输出作为输入并且将所述第一减小宽度路径连接到第一全宽度路径;第二符号扩展块,在第二减小宽度路径上接收来自所述第三输入端口的输入并将所述第二减小宽度路径连接到第二全宽度路径;第一多路复用器,从第一输入组中选择输出,所述第一输入组包括所述第一全宽度路径和所述第二全宽度路径;第二多路复用器,从第二输入组中选择输出,所述第二输入组包括所述第二全宽度路径、加法器的锁存输出、零值、一值、所述第一全宽度路径、来自所述级联输入端口的级联输入、以及具有移位的所述级联输入;所述加法器,接收所述第一多路复用器的输出和所述第二多路复用器的输出作为输入;以及第一锁存器,锁存所述加法器的输出,至少用于所述第二多路复用器的输入。2.根据权利要求1所述的DSP块,其中:减小宽度是相对于全宽度,所述减小宽度和所述全宽度均与位宽度有关;所述加法器具有所述全宽度;所述第一输入端口、所述第二输入端口和所述第三输入端口均具有所述减小宽度;以及所述乘法器被匹配到所述第一输入端口和所述第二输入端口中的每一个的所述减小宽度,并且被匹配到联接所述乘法器与所述第一符号扩展块的所述第一减小宽度路径。3.根据权利要求1所述的DSP块,还包括:级联输出端口;以及第三多路复用器,接收来自所述第一输入端口、所述第二输入端口和所述第三输入端口的输入,并选择性地将来自所述第一输入端口的输入、来自所述第二输入端口的输入和来自所述第三输入端口的输入的级联输出到所述级联输出端口。4.根据权利要求3所述的DSP块,其中:所述级联输出端口提供全宽度输出,用于通过级联路径连接到另一DSP块的输入。5.根据权利要求1所述的DSP块,其中:所述级联输入端口包括全宽度输入,用于通过级联路径连接另一DSP块的输出。6.根据权利要求1所述的DSP块,还包括:第二锁存器,用于锁存来自所述第三输入端口的移位参数;以及可变移位器,根据来自所述第二锁存器的所述移位参数,将来自所述第一锁存器的所述加法器的所述锁存输出移位可变数量的位,并将结果输出提供给所述输出端口。
7.根据权利要求6所述的DSP块,其中:所述第三输入端口用作至所述加法器的路径和至所述可变移位器的路径的公共输入。8.根据权利要求6所述的DSP块,其中,所述可变移位器包括:矩阵,所述矩阵联接到所述第一锁存器的输出;以及第四多路复用器,联接到所述矩阵以根据所述移位参数选择矩阵输出位的子集,以用于所述可变移位器的输出。9.一种承载指令的有形的非暂时性计算机可读介质,所述指令在由处理器执行时,使得所述处理器执行如下方法,包括:合成用于制造现场可编程门阵列即FPGA的电路,所述电路包括具有第一输入端口、第二输入端口、第三输入端口、级联输入端口和输出端口的数字信号处理块即DSP块;以及在所述DSP块中进一步合成乘法器、第一符号扩展块、第二符号扩展块、第一多路复用器、第二多路复用器、加法器和第一锁存器,其中所述乘法器具有来自所述第一输入端口的输入和来自所述第二输入端口的输入,所述第一符号扩展块具有来自所述乘法器的输出的输入,所述第二符号扩展块具有来自所述第三输入端口的输入,所述第一多路复用器具有来自第一输入组的可选输出,所述第一输入组包括所述第一符号扩展块的输出和所述第二符号扩展块的输出,所述第二多路复用器具有来自第二输入组的可选输出,所述第二输入组包括所述第二符号扩展块的输出、所述第一锁存器的输出、零值、一值、所述第一符号扩展块的输出、来自所述级联输入端口的级联输入、以及具有移位的所述级联输入,所述加法器具有来自所述第一多路复用器的输出的输入和来自所述第二多路复用器的输出的输入,所述第一锁存器具有来自所述加法器的输出的输入。10.根据权利要求9所述的计算机可读介质,其中,所述方法还包括:在所述DSP块中进一步合成级联输出端口和第三多路复用器,其中所述第三多路复用器具有至所述级联输出端口的可选输出,所述可选输出包括来自所述第一输入端口的输入、来自所述第二输入端口的输入和来自所述第三输入端口的输入的级联。11.根据权利要求9所述的计算机可读介质,其中,所述方法还包括:在所述DSP块中进一步合成第二锁存器和可变移位器,其中所述第二锁存器具有来自所述第三输入端口的输入以锁存移位参数,所述可变移位器具有来自所述第一锁存器的输出的输入作为所述加法器的结果,根据所述移位参数将所述加法器的结果移位可变数量的位。12.根据权利要求11所述的计算机可读介质,其中,所述进一步合成所述可变移位器...

【专利技术属性】
技术研发人员:何曼和
申请(专利权)人:EFINIX有限公司
类型:发明
国别省市:

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

1