CN102819520A - 具有嵌入式浮点结构的数字信号处理模块 - Google Patents

具有嵌入式浮点结构的数字信号处理模块 Download PDF

Info

Publication number
CN102819520A
CN102819520A CN2012101416918A CN201210141691A CN102819520A CN 102819520 A CN102819520 A CN 102819520A CN 2012101416918 A CN2012101416918 A CN 2012101416918A CN 201210141691 A CN201210141691 A CN 201210141691A CN 102819520 A CN102819520 A CN 102819520A
Authority
CN
China
Prior art keywords
floating
module
input
point operation
arithmetic device
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
Application number
CN2012101416918A
Other languages
English (en)
Other versions
CN102819520B (zh
Inventor
M·朗哈默
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Altera Corp
Original Assignee
Altera Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Altera Corp filed Critical Altera Corp
Publication of CN102819520A publication Critical patent/CN102819520A/zh
Application granted granted Critical
Publication of CN102819520B publication Critical patent/CN102819520B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/509Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Nonlinear Science (AREA)
  • Logic Circuits (AREA)
  • Advance Control (AREA)

Abstract

本发明涉及一种专用处理模块,其包括第一浮点算术操作器级、第二浮点算术操作器级以及在所述专用处理模块内的可配置互连,所述可配置互连用于将信号路由到所述第一和第二浮点算术操作器级中的每一级中并且将信号路由出所述第一和第二浮点算术操作器级中的每一级。在某些实施例中,可配置互连可以被配置为将多个模块输入路由到第一浮点算术操作器级的输入,将模块输入中的至少一个路由到第二浮点算术操作器级的输入,将第一浮点算术操作器级的输出路由到第二浮点算术操作器级的输入,将模块输入中的至少一个路由到另一个这种模块的直接连接输出,将第一浮点算术操作器级的输出路由到直接连接输出,以及将来自另一个这种模块的直接连接输入路由到第二浮点算术操作器级的输入。

Description

具有嵌入式浮点结构的数字信号处理模块
技术领域
本发明涉及可编程集成电路器件,尤其是可编程集成电路器件内的专用处理模块。
背景技术
考虑可编程逻辑器件(PLD)作为集成电路器件的一个例子,由于使用PLD的应用在复杂性方面增加,因此将PLD设计为除了包括通用可编程逻辑资源的模块以外,还包括专用处理模块,这已经变得很普遍。这类专用处理模块可以包括PLD上的密集的电路,这些电路已经部分或全部硬接线以完成一个或更多特定任务,例如逻辑或数学运算。专用处理模块还可以包括一个或更多专用结构,例如可配置的存储器元件阵列。通常实施在这类专用处理模块中的结构的例子包括:乘法器、算术逻辑单元(ALU)、桶式移位器、各种存储器元件(例如,FIFO/LIFO/SIPO/RAM/ROM/CAM和寄存器文件)、AND/NAND/OR/NOR阵列等,或它们的组合。
在PLD上已经提供的一个特别有用类型的专用处理模块是数字信号处理(DSP)模块,数字信号处理模块可以用于处理例如音频信号。这类模块通常也称为乘积累加(“MAC”)模块,因为他们包括执行乘法操作,以及相加和/或累加乘法操作的结构。
例如,由加利福利亚州圣何塞市Altera公司销售的、作为家族一部分的PLD包括DSP模块,每个DSP模块包括多个乘法器。那些DSP模块中的每一个还包括加法器和寄存器,以及允许模块的各个部件以不同方式配置的可编程连接器(例如,多路复用器)。
通常情况下,在这类专用处理模块内的算术操作器(加法器和乘法器)已经是定点操作器。若需要浮点操作器,则用户将利用器件的通用可编程逻辑,或利用专用处理模块内的定点操作器与通用可编程逻辑中的加法逻辑的组合来在专用处理模块外构造它们。
发明内容
根据本发明的实施例,专用处理模块,例如上述的DSP模块,除了在DSP模块内可用的功能以外,可以通过包含浮点加法来增强它。这减少了在专用处理模块外面构建浮点功能的需要。加法功能可以是根据IEEE754-1985标准而全部或部分专用(即“硬逻辑”)实现的加法,并可以用于加法操作、乘加(MADD)操作或向量(点积)操作,它们中的任意一个可以是实数或复数。浮点加法器电路可以被合并到DSP模块中,并且可以独立地访问,或与DSP模块中的乘法器组合使用或甚至是与相邻DSP模块中的乘法器组合使用。
因此,根据本发明的实施例,在可编程集成电路器件上提供了一种专用处理模块。该专用处理模块包括第一浮点算术操作器级(stage)、第二浮点算术操作器级以及在所述专用处理模块内的可配置互连,所述可配置互连用于将信号路由到所述第一和第二浮点算术操作器级中的每一级中并且将信号路由出所述第一和第二浮点算术操作器级中的每一级。还提供了一种包括多个这类专用处理模块的可编程集成电路器件。
在某些实施例中,专用处理模块包括多个模块输入、至少一个模块输出、来自另一个专用处理模块的直接连接输入以及到另一个专用处理模块的直接连接输出。在那些实施例中的某些实施例中,可配置互连被配置为将多个模块输入路由到第一浮点操作器级的输入,将模块输入中的至少一个路由到第二浮点操作器级的输入,将第一浮点操作器级的输出路由到第二浮点操作器级的输入,将模块输入中的至少一个路由到直接连接输出,将第一浮点操作器级的输出路由到直接连接输出,以及将直接连接输入路由到第二浮点操作器级的输入。
附图说明
在结合附图考虑下列详细描述后,本发明的其他特征及其本质和各种优点是显而易见的,在整个附图中,相同的符号指代相同的部件,并且其中:
图1示出包含本发明实施例的示例性专用处理模块的逻辑图;
图1A示出包含本发明实施例的示例性专用处理模块的逻辑图;
图2示出根据本发明实施例的示例性专用处理模块的更加详细的图;
图3示出根据本发明实施例的示例性布置的根据本发明实施例的多个示例性专用处理模块的简化框图;
图4示出根据本发明实施例的被配置为执行点积的示例性专用处理模块的示例性布置;
图5示出类似图4的、在模块外部实现取整的示例性专用处理模块的示例性布置;
图6示出当图4的示例性布置用于实现矢量点积操作时的数据通路的示例性选择;
图7示出根据本发明实施例的示例性专用(dedicated)浮点加法器模块;
图8示出根据本发明实施例的、图7中多个示例性专用浮点加法器模块的示例性布置;
图9示出图8的布置作为三进制加法器树的示例性用途;以及
图10是使用包含本发明的可编程逻辑器件的示例性系统的简化框图。
具体实施方式
图1示出根据本发明实施例的示例性DSP模块100的逻辑图。在该逻辑表现形式中,省略了实现细节以简化讨论,例如寄存器和某些可编程路由特征,例如可以允许特定结构的输出直接路由到模块100之外的多路复用器。另外,在实际的实施例中,某些示出的元件可以被实现不止一次。例如,乘法器101可以实际代表2个或更多乘法器,如前面提到的PLD的
Figure BDA00001618230600031
Figure BDA00001618230600032
家族的DSP模块中那样。
在图1的逻辑表示形式中,浮点加法器102跟着浮点乘法器101。浮点乘法器可以从27×27定点乘法器以及某些加法逻辑来构建,该27×27定点乘法器由Altera公司
Figure BDA00001618230600033
V或
Figure BDA00001618230600034
V可编程器件中提供的DSP模块支持。加法逻辑计算指数,以及特殊条件和错误条件,例如NAN(不是数字)、零(0)和无穷大。可选地,可以提供其他逻辑来将乘法器的结果取整为IEEE754格式。这种取整可以实现为在乘法器结构内最终加法器的一部分(未显示),或当乘法器101的输出是从DSP模块100直接输出时,这种取整可以实现在DSP模块100外的可编程逻辑内。
浮点乘法器101可以以乘法器相加(MADD)模式直接馈送到浮点加法器102,如图1所示。替换地,如图1A所示,乘法器101的输出可以绕过加法器102直接路由到DSP模块的输出,提供多路复用器103以在乘法器101的输出或加法器102的输出之间选择。虽然在其他附图中省略旁路104和多路复用器103以避免使附图变复杂,但是它们应被认为存在于所有示出的乘法器/加法器DSP模块中,包括图1所示的。
图2示出根据本发明实施例的示例性DSP模块200更加详细的图。可选地,可以在浮点乘法器101和浮点加法器102之间提供旁路流水线(未显示)。可选地,也可以在浮点乘法器101和浮点加法器102中的一个或两者内部提供旁路流水线(未显示)。可以从多个源将输入路由到加法器102,所述多个源包括乘法器101的输出、到DSP模块200的输入201中的一个或来自相邻类似DSP模块200的直接连接202。
另外,乘法器101的输出和/或到DSP模块200的输入201中的一个还可以经由直接连接212路由到相邻类似DSP模块200中的加法器(显然,除了在模块200链的末端,每个直接连接202从直接连接212接收输入,而且每个直接连接212提供其输出到直接连接202)。具体地,可以提供多路复用器211来选择输入201或直接连接202作为加法器102的一个输入。类似地,可以提供多路复用器221来选择输入201或乘法器101的输出作为加法器102的另一个输入。可以提供第三多路复用器231来选择输入201或乘法器101的输出作为直接连接212的输出。这样,到加法器102的输入可以是输入201和乘法器101的输出,或者输入201和直接连接202,并且直接连接212可以输出输入201或乘法器101的输出。
在一个实施例中,具有相同的两个输入(输入201和乘法器101的输出)的多路复用器221和多路复用器231共享控制信号,但是其控制是相反的,如在241处所示的,使得若两个多路复用器中的一个选择那两个输入中的一个,则两个多路复用器中的另一个选择那两个输入中的另一个。
根据本发明实施例的多个DSP模块可以布置成行或列,使得利用前面提到的直接连接202/212可以将信息从一个模块馈送到下一个模块,从而生成更多复杂结构。图3示出根据本发明实施例的布置成行300的(没有示出连接202/212)多个示例性DSP模块301。
图4示出根据本发明实施例的被配置为执行点积操作的一行400的5个示例性DSP模块401-405。替换地,该配置中的DSP模块401可以布置成列(未显示)而不改变输入和输出。该图示出了接口信号。在模块401/402和403/404的每一对中,每个模块中的乘法器101连同两个模块中最左边的模块401,403中的加法器102一起实现各自的两个乘法操作的和411,412。这些和411,412通过最左边对中的最右边的加法器(即DSP模块402的加法器102)求和,从而提供4个乘法器的和,其中使用多路复用器211选择输入202以及使用多路复用器221选择输入201(使用例如PLD中模块401-404外部的可编程互连资源已经将相应的输出411/412路由到这些输入)。最右边对中的最右边的加法器(即DSP模块404的加法器102)用于将该四个乘法器的和加到另外一组以DSP模块405开头的四个DSP模块(剩下的未显示)的四个乘法器的和。对于N个乘法器,会有N个加法器,这足以实现点积的加法器树,对于长度为N的一对向量,这是N个乘积操作的和。
相同的DSP模块特征可以用于实现复杂的点积。每个第二对DSP模块将在第一级加法中使用减法而不是加法,其可以由浮点加法器支持(例如,简单的方式是,通过将输入中的一个取负)。其余的加法器树是简单的和结构,类似于前面段落所描述的。
如上面所讨论的,可以在DSP模块的实施例内提供符合IEEE754的取整(rounding),或可以在器件的通用可编程逻辑部分中实现符合IEEE754的取整。图5示出图4的具有在模块外501处(即在器件的通用可编程逻辑部分中)实现取整的示例布置。该取整可以用单级(single level)逻辑实现,其简单到可以是进位传播加法器,后面跟着寄存器。假设(这是经常情况)DSP模块的所有输出必须取整,那么将不需要扰动(disturbance)或再平衡数据通路。
可以在专用逻辑中实现的另一个特征是计算取整值的溢出条件,这可以使用比加法明显少的资源来确定。加法特征可以基于溢出条件计算最终指数值,或特殊条件或错误条件。
对于示出的加法器树实现方法,除了最后一个模块的输出之外的每个DSP模块输出反馈回到另一DSP模块的输入。在某些情况下,输出反馈到同一模块的输入,例如在图4中EF+GH输出412。如在图2中可以看出,可以提供内部总线250来将模块的输出寄存器反馈回到输入寄存器,从而节约器件的通用可编程逻辑部分的路由资源。图6以虚线示出多路复用器211,221,231为前面结合图4描述的点积应用示例而示例性选择的数据通路,其示出了每个模块401-405的加法器102如何将该模块中的乘法器101的乘积以及来自相邻模块的乘积相加。
专用浮点处理模块的另一个实施例是专用浮点加法器模块。这种模块可以是二进制(两个输入操作数)或三进制(三个输入操作数)。图7示出示例性三进制加法器模块700的逻辑框图。与前面描述的DSP模块一样,可以在内部使用或不使用流水线,而且可以在可编程逻辑的内部或外部支持取整。还同DSP模块一样,加法器模块可以布置成行(如图8所示的例子)或布置成列。替换地,加法器模块可以与上述乘法器-加法器DSP模块交错(未显示)。
图9利用标签示出用于如图8布置的模块700的示例性连接,以产生三进制浮点加法器树。三进制加法器树的深度为log3N,其是二进制加法器的一半。在这个例子中,N=9,且四个模块布置成两级(深度=log3(9)=2)。如上面结合图4和图5讨论的,可以在模块的内部或外部提供取整(未显示)。
通过提供专用处理模块,包括专用但可配置的浮点操作器,本发明允许在较少依赖模块外部的可编程逻辑的情况下实现某些操作,例如上述的向量点积。
根据本发明的包含专用处理模块的PLD 90可以用在多种电子设备中。一个可能用途是图10所示的示例性数据处理系统900。数据处理系统900可以包括下列部件中的一个或更多:处理器901;存储器902;I/O电路903;以及外围设备904。这些部件通过系统总线905耦合在一起并安装在电路板906上,电路板906包含于终端用户系统907中。
系统900可以用于多种应用,例如计算机联网、数据联网、仪表仪器、视频处理、数字信号处理或期望使用可编程逻辑或再编程逻辑的优点的任何其他应用。PLD 90可以用于执行多种不同逻辑功能。例如,PLD 90可以被配置为与处理器901协同工作的处理器或控制器。PLD
90还可以用作对系统900中共享资源的访问进行仲裁的判决器。在又一个例子中,PLD 90可以被配置为处理器901和系统900中其他部件之一之间的接口。应当注意的是,系统900仅是示例性的,本发明的真正范围和精神应当由下列权利要求指出。
可以使用多种技术来实现上述PLD 90,这些技术合并到本发明。
应当理解,上述仅说明了本发明的原理,本领域技术人员在不偏离本发明范围和精神的前提下可以做出各种修改。例如,可以在PLD上以任何期望的数量和/或布置来提供本发明的各个元件。本领域技术人员应当理解,可以通过除了所描述的实施例之外的实施例来实施本发明,提供所描述的实施例仅用于说明目的而不是限制目的,本发明仅由下述权利要求来限定。

Claims (23)

1.一种可编程集成电路器件上的专用处理模块,所述专用处理模块包括:
第一浮点算术操作器级;
第二浮点算术操作器级;以及
在所述专用处理模块内的可配置互连,其用于将信号路由到所述第一和第二浮点算术操作器级中的每一级中并且将信号路由出所述第一和第二浮点算术操作器级中的每一级。
2.根据权利要求1所述的专用处理模块,其中:
所述第一浮点算术操作器级包括浮点乘法器;以及
所述第二浮点算术操作器包括浮点加法器。
3.根据权利要求1所述的专用处理模块,其中所述第一和第二浮点算术操作器级中的每一级包括浮点加法器。
4.根据权利要求1所述的专用处理模块,其中:
所述可配置互连包括所述第二浮点算术操作器级的可选旁路;由此:
所述第一浮点算术操作器级的输出可路由出所述专用处理模块。
5.根据权利要求1所述的专用处理模块,其进一步包括:
多个模块输入;
至少一个模块输出;
来自另一个所述专用处理模块的直接连接输入;以及
到另一个所述专用处理模块的直接连接输出。
6.根据权利要求5所述的专用处理模块,其中:
所述可配置互连可被配置为路由以下信号:
将所述模块输入中的至少一些路由到所述第一浮点算术操作器级的输入,
将所述模块输入中的至少一个路由到所述第二浮点算术操作器级的输入,
将所述第一浮点算术操作器级的输出路由到所述第二浮点算术操作器级的输入,
将所述模块输入中的至少一个路由到所述直接连接输出,
将所述第一浮点算术操作器级的输出路由到所述直接连接输出,以及
将所述直接连接输入路由到所述第二浮点算术操作器级的输入。
7.根据权利要求6所述的专用处理模块,其中所述可配置互连包括:
第一多路复用器,用于在所述模块输入之一和所述直接连接输入之间进行选择,作为到所述第二浮点算术操作器级的第一输入;
第二多路复用器,用于在所述模块输入之一和所述第一浮点算术操作器级的输出之间进行选择,作为到所述第二浮点算术操作器级的第二输入;以及
第三多路复用器,用于在所述模块输入之一和所述第一浮点算术操作器级的输出之间进行选择,作为所述直接连接输出。
8.根据权利要求7所述的专用处理模块,其中所述第二多路复用器和所述第三多路复用器共享相反意义上的公共控制信号。
9.根据权利要求6所述的专用处理模块,其中所述可配置互连包括反馈路径,所述反馈路径用于可选地将所述第二浮点算术操作器级的输出路由到所述模块输入中的一个。
10.根据权利要求5所述的专用处理模块,其中所述可配置互连包括反馈路径,所述反馈路径用于可选地将所述第二浮点算术操作器级的输出路由到所述模块输入中的一个。
11.一种可编程集成电路器件,其包括:
多个专用处理模块,所述专用处理模块中的每一个包括:
第一浮点算术操作器级;
第二浮点算术操作器级;以及
在所述专用处理模块内的可配置互连,用于将信号路由到所述第一和第二浮点算术操作器级中的每一级中并且将信号路由出所述第一和第二浮点算术操作器级中的每一级。
12.根据权利要求11所述的可编程集成电路器件,其中:
在所述专用处理模块中相应的每一个中,所述第一浮点算术操作器级包括浮点乘法器;以及
在所述专用处理模块中相应的每一个中,所述第二浮点算术操作器级包括浮点加法器。
13.根据权利要求12所述的可编程集成电路器件,其中:
所述专用处理模块中的至少一个被配置为用于乘法-加法操作。
14.根据权利要求11所述的可编程集成电路器件,其中在所述专用处理模块中相应的每一个中,所述第一和第二浮点算术操作器级中的每一级包括浮点加法器。
15.根据权利要求11所述的可编程集成电路器件,其中:
在所述专用处理模块中相应的每一个中,所述可配置互连包括所述第二浮点算术操作器级的可选旁路;由此:
相应的每一个所述第一浮点算术操作器级的输出可路由出相应的每一个所述专用处理模块。
16.根据权利要求11所述的可编程集成电路器件,其中:
所述专用处理模块中相应的每一个进一步包括:
各自的多个模块输入;
各自的至少一个模块输出;
各自的来自另一个所述专用处理模块的直接连接输入;以及
各自的到另一个所述专用处理模块的直接连接输出。
17.根据权利要求16所述的可编程集成电路器件,其中:
在所述专用处理模块中相应的每一个中,所述可配置互连被配置为路由以下信号:
将所述模块输入中的至少一些路由到所述第一浮点算术操作器级的输入,
将所述模块输入中的至少一个路由到所述第二浮点算术操作器级的输入,
将所述第一浮点算术操作器级的输出路由到所述第二浮点算术操作器级的输入,
将所述模块输入中的至少一个路由到所述直接连接输出,
将所述第一浮点算术操作器级的输出路由到所述直接连接输出,以及
将所述直接连接输入路由到所述第二浮点算术操作器级的输入。
18.根据权利要求17所述的可编程集成电路器件,其中所述专用处理模块中相应的每一个中,所述可配置互连包括:
第一多路复用器,用于在所述模块输入之一和所述直接连接输入之间进行选择,作为到所述第二浮点算术操作器级的第一输入;
第二多路复用器,用于在所述模块输入之一和所述第一浮点算术操作器级的输出之间进行选择,作为到所述第二浮点算术操作器级的第二输入;以及
第三多路复用器,用于在所述模块输入之一和所述第一浮点算术操作器级的输出之间进行选择,作为所述直接连接输出。
19.根据权利要求18所述的可编程集成电路器件,其中在所述专用处理模块中相应的每一个中,所述第二多路复用器和所述第三多路复用器共享相反意义上的相应的公共控制信号。
20.根据权利要求19所述的可编程集成电路器件,其中所述专用处理模块中的至少两个被配置为使用所述多个专用处理模块中的模块的相应直接连接输入和相应直接连接输出进行向量点积操作。
21.根据权利要求19所述的可编程集成电路器件,进一步包括被配置为对所述多个专用处理模块中的模块的输出取整的可编程逻辑部分。
22.根据权利要求17所述的可编程集成电路器件,其中在所述专用处理模块中相应的每一个中,所述可配置互连包括反馈路径,所述反馈路径用于可选地将所述第二浮点算术操作器级的输出路由到所述模块输入中的一个。
23.根据权利要求16所述的可编程集成电路器件,其中在所述专用处理模块中相应的每一个中,所述可配置互连包括反馈路径,所述反馈路径用于可选地将所述第二浮点算术操作器级的输出路由到所述模块输入中的一个。
CN201210141691.8A 2011-05-09 2012-05-09 具有嵌入式浮点结构的数字信号处理模块 Active CN102819520B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161483924P 2011-05-09 2011-05-09
US61/483,924 2011-05-09
US13/187,801 US20120290819A1 (en) 2011-05-09 2011-07-21 Dsp block with embedded floating point structures
US13/187,801 2011-07-21

Publications (2)

Publication Number Publication Date
CN102819520A true CN102819520A (zh) 2012-12-12
CN102819520B CN102819520B (zh) 2019-04-12

Family

ID=46049259

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210141691.8A Active CN102819520B (zh) 2011-05-09 2012-05-09 具有嵌入式浮点结构的数字信号处理模块

Country Status (4)

Country Link
US (1) US20120290819A1 (zh)
EP (1) EP2523095B1 (zh)
JP (1) JP5956820B2 (zh)
CN (1) CN102819520B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106610813A (zh) * 2015-10-21 2017-05-03 阿尔特拉公司 用于在乘法器累加器块中执行乘积级数运算的方法和装置
CN108255777A (zh) * 2018-01-19 2018-07-06 中国科学院电子学研究所 用于fpga的嵌入式浮点型dsp硬核结构
CN109074243A (zh) * 2016-05-03 2018-12-21 阿尔特拉公司 专门处理块中的固定点和浮点算术运算器电路
CN109564585A (zh) * 2016-09-15 2019-04-02 阿尔特拉公司 基于点积的处理元件

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8805916B2 (en) * 2009-03-03 2014-08-12 Altera Corporation Digital signal processing circuitry with redundancy and bidirectional data paths
US8549055B2 (en) 2009-03-03 2013-10-01 Altera Corporation Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9553590B1 (en) * 2012-10-29 2017-01-24 Altera Corporation Configuring programmable integrated circuit device resources as processing elements
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9207908B1 (en) 2013-01-29 2015-12-08 Altera Corporation Digital signal processing blocks with embedded arithmetic circuits
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9507565B1 (en) * 2014-02-14 2016-11-29 Altera Corporation Programmable device implementing fixed and floating point functionality in a mixed architecture
US9747110B2 (en) * 2015-05-20 2017-08-29 Altera Corporation Pipelined cascaded digital signal processing structures and methods
US9904514B1 (en) 2015-10-06 2018-02-27 Altera Corporation Fused floating-point arithmetic circuitry
US10140091B2 (en) 2016-09-27 2018-11-27 Altera Corporation Integrated circuits with specialized processing blocks for performing floating-point fast fourier transforms and complex multiplication
US10108581B1 (en) 2017-04-03 2018-10-23 Google Llc Vector reduction processor
US10970042B2 (en) * 2017-11-20 2021-04-06 Intel Corporation Integrated circuits with machine learning extensions
US11175892B2 (en) 2017-11-20 2021-11-16 Intel Corporation Integrated circuits with machine learning extensions
KR102505205B1 (ko) * 2021-04-29 2023-03-02 포항공과대학교 산학협력단 삼진 논리 회로 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030204706A1 (en) * 2002-04-24 2003-10-30 Kim Jason Seung-Min Vector floating point unit
CN1766775A (zh) * 2005-09-13 2006-05-03 中国电力科学研究院 基于浮点数dsp与fpga的静止无功补偿器的调节板
CN101095103A (zh) * 2004-03-26 2007-12-26 爱特梅尔股份有限公司 双处理器复域浮点数字信号处理片上系统
CN101231632A (zh) * 2007-11-20 2008-07-30 西安电子科技大学 应用fpga进行浮点fft处理的方法
US7567997B2 (en) * 2003-12-29 2009-07-28 Xilinx, Inc. Applications of cascading DSP slices
US7814136B1 (en) * 2006-02-01 2010-10-12 Agate Logic, Inc. Programmable logic systems and methods employing configurable floating point units

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0419105B1 (en) * 1989-09-21 1997-08-13 Texas Instruments Incorporated Integrated circuit formed on a surface of a semiconductor substrate and method for constructing such an integrated circuit
US6052773A (en) * 1995-02-10 2000-04-18 Massachusetts Institute Of Technology DPGA-coupled microprocessors
US6346824B1 (en) * 1996-04-09 2002-02-12 Xilinx, Inc. Dedicated function fabric for use in field programmable gate arrays
US6628140B2 (en) * 2000-09-18 2003-09-30 Altera Corporation Programmable logic devices with function-specific blocks
US7343388B1 (en) * 2003-03-05 2008-03-11 Altera Corporation Implementing crossbars and barrel shifters using multiplier-accumulator blocks
WO2005066832A2 (en) * 2003-12-29 2005-07-21 Xilinx, Inc. Integrated circuit with cascading dsp slices
US8112466B2 (en) * 2004-09-28 2012-02-07 Sicronic Remote Kg, Llc Field programmable gate array
US8090758B1 (en) * 2006-12-14 2012-01-03 Xilinx, Inc. Enhanced multiplier-accumulator logic for a programmable logic device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030204706A1 (en) * 2002-04-24 2003-10-30 Kim Jason Seung-Min Vector floating point unit
US7567997B2 (en) * 2003-12-29 2009-07-28 Xilinx, Inc. Applications of cascading DSP slices
CN101095103A (zh) * 2004-03-26 2007-12-26 爱特梅尔股份有限公司 双处理器复域浮点数字信号处理片上系统
CN1766775A (zh) * 2005-09-13 2006-05-03 中国电力科学研究院 基于浮点数dsp与fpga的静止无功补偿器的调节板
US7814136B1 (en) * 2006-02-01 2010-10-12 Agate Logic, Inc. Programmable logic systems and methods employing configurable floating point units
CN101231632A (zh) * 2007-11-20 2008-07-30 西安电子科技大学 应用fpga进行浮点fft处理的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ALTERA CORPORATION: "《Stratix Ⅲ Device Handbook》", 31 March 2011, article "DSP Blocks in Stratix Ⅲ Device" *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106610813A (zh) * 2015-10-21 2017-05-03 阿尔特拉公司 用于在乘法器累加器块中执行乘积级数运算的方法和装置
CN106610813B (zh) * 2015-10-21 2019-06-28 阿尔特拉公司 用于在乘法器累加器块中执行乘积级数运算的方法和装置
US10613831B2 (en) 2015-10-21 2020-04-07 Altera Corporation Methods and apparatus for performing product series operations in multiplier accumulator blocks
CN109074243A (zh) * 2016-05-03 2018-12-21 阿尔特拉公司 专门处理块中的固定点和浮点算术运算器电路
CN109074243B (zh) * 2016-05-03 2023-11-28 阿尔特拉公司 专门处理块中的固定点和浮点算术运算器电路
CN109564585A (zh) * 2016-09-15 2019-04-02 阿尔特拉公司 基于点积的处理元件
CN109564585B (zh) * 2016-09-15 2023-11-03 阿尔特拉公司 基于点积的处理元件
CN108255777A (zh) * 2018-01-19 2018-07-06 中国科学院电子学研究所 用于fpga的嵌入式浮点型dsp硬核结构
CN108255777B (zh) * 2018-01-19 2021-08-06 中国科学院电子学研究所 用于fpga的嵌入式浮点型dsp硬核结构

Also Published As

Publication number Publication date
EP2523095A3 (en) 2013-04-03
JP5956820B2 (ja) 2016-07-27
EP2523095B1 (en) 2018-03-07
US20120290819A1 (en) 2012-11-15
EP2523095A2 (en) 2012-11-14
JP2012239169A (ja) 2012-12-06
CN102819520B (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
CN102819520A (zh) 具有嵌入式浮点结构的数字信号处理模块
US10318241B2 (en) Fixed-point and floating-point arithmetic operator circuits in specialized processing blocks
CN106610813B (zh) 用于在乘法器累加器块中执行乘积级数运算的方法和装置
US11137983B2 (en) Programmable device implementing fixed and floating point functionality in a mixed architecture
US8495122B2 (en) Programmable device with dynamic DSP architecture
US7480690B2 (en) Arithmetic circuit with multiplexed addend inputs
US7467175B2 (en) Programmable logic device with pipelined DSP slices
US8307023B1 (en) DSP block for implementing large multiplier on a programmable integrated circuit device
US7230451B1 (en) Programmable logic device with routing channels
US9098332B1 (en) Specialized processing block with fixed- and floating-point structures
US8429214B2 (en) Programmable logic systems and methods employing configurable floating point units
US20050144212A1 (en) Programmable logic device with cascading DSP slices
US20050144213A1 (en) Mathematical circuit with dynamic rounding
US9552190B1 (en) Fused floating point datapath with correct rounding
US10140091B2 (en) Integrated circuits with specialized processing blocks for performing floating-point fast fourier transforms and complex multiplication
US7545196B1 (en) Clock distribution for specialized processing block in programmable logic device
CN107045434B (zh) 一种fpga中多功能硬件专用乘法器及fpga芯片
EP3073369B1 (en) Combined adder and pre-adder for high-radix multiplier circuit

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant