2024年6月5日发(作者:翦翠丝)
FPGA的逻辑单元与门是什么对应关系2008/10/22 16:09
/ctb/?mods=topicdisplay&forumid=7&posti
d=27
一般而言FPGA等效门数的计算方法有两种,一是把FPGA基本单元(如LUT+FF,
ESB/BRAM)和实现相同功能的标准门阵列比较,门阵列中包含 的门数即为该
FPGA基本单元的等效门数,然后乘以基本单元的数目就可以得到FPGA门数估计
值;二是分别用FPGA和标准门阵列实现相同的功能,从中统 计出FPGA的等效
门数,这种方法比较多的依赖于经验数据。
对 于第一种方法,FPGA包括LUT/FF/RAM等资源,分析各种资源等效门数时,
总原则是等效原则,就是实现相同的功能,在标准门阵列中需要的门数就是 FPGA
该资源等效门数,例如实现一个带寄存器输出的4输入XOR,在FPGA中需要用
一个LUT和1个FF实现,在标准门阵列中一般要用21个与非门实 现,于是1
个LUT+1个FF等效于21个门。对ESB(BRAM),由于用标准门阵列实现1bit
的RAM时一般需要4个门,因此 SB/BARM 做RAM使用时,1bit等效4个门,对
Altera FPGA中一个2048bit的ESB,等效门数为8K。光靠这些数据还不能比较
准确地计算出FPGA的等效门数。因为这只是一种简单情况,实际情况要复 杂很
多。
例如,如果实现的是带寄存器输出地2输入XOR,FPGA也要用1个LUT+FF,而
标准门阵列只需要8个NAND,于是1 个LUT+1个FF只等效于8个门。同时特定
功能的实现,在不同的标准门阵列系列中需要的门数也不一样,因此等效门的计
算只能是个大概的数值。 也就是说对于某一具体型号FPGA的门数估计,与FPGA
资源的用途有密切关系。LUT用于实现2输入XOR和4输入XOR等效门数不一样
(分别为1和 13);FF不带异步清零、复位、时钟使能和带这些端口的等效门
数不同(分别为8和13);ESB(BRAM)做RAM使用时,1bit等效4个门,1个
2048bit的BRAM等效8K门,但是做查找表使用时可能只相当于不到200门。因
此估计FPGA的等效门数需要做更细致的分析。
下面以EP20K1000E为例详细说明FPGA等效门数的估计方法。
(1)计算逻辑阵列的等效门数
估算EP20K1000E的门数时,把FPGA特定资源和LCA300K标准逻辑阵列的门数
(LSI LCA300K Data Book)比较,可以对FPGA等效门做出估计。FPGA一个LUT
+FF等效门数计算如图2所示
即LUT+FF等效于8~21个门,上限和下限分别由实现简单函数、复杂函数分别
界定。
APEX20K 的等效门数也可以根据经验数据获得,把超过100个针对4输入LUT
的设计用FPGA实现,同时用LCA300K gate arrays和Design Compiler实现,
比较相同的设计FPGA所用的LE数目和LCA300K所用的门数可知,每个LE相当
于12个门。EP20K1000E有 38400个LE,于是相当于46万门。
(2)计算ESB的等效门数
RAM中一个bit所需要的门数与RAM的体系结构、工艺、厂商等有关,一般而言,
1bit相当于4个门,Altera也采用这个标准,这样可以方便地估计ESB等效门
数。
计算ESB等效门数也可以采用和LSI LCA300K比较的方法,即通过与实现相同容
量RAM在LCA300K所用的门数相比较,从而得到ESB的每一bit相当于多少门,
从而计算出ESB的等效门数,参考图3。
4gates/bit是一个比较合适的估计,于是EP20K1000E的ESB等效门数为
160 ESBs X 2,048 bits per ESB X 4 gates per bit = 1,310,720 gates,即
约为130万门。
总而言之,对EP20K1000E,LUT+FF等效门数约为46万(经验数值),ESB全用
作RAM时等效门数约为130万,所以最大系统门数为170万。
结论:
FPGA等效门数估计方法可以是把FPGA资源基本单元(如LUT+FF,ESB)和实现
相同功能的标准门阵列相比得到FPGA基本单元等效的门数,然后乘以单元的个
数得到整个FPGA等效门数。也可以是实现很多设计,和用标准门阵列相比,从
中统计出等效门数。
FPGA 的等效门数估计一般分为LUT+FF和ESB(BRAM)两部分,LUT+FF等效于
8~21个门,典型值为12;ESB做RAM使用时,一般相当于4门 /bit,此时估
计出的门数最多,如果ESB做乘积项/LUT则等效门数大大减小,例如对
EP20K1000E,前者为130万,后者为2万。
2024年6月5日发(作者:翦翠丝)
FPGA的逻辑单元与门是什么对应关系2008/10/22 16:09
/ctb/?mods=topicdisplay&forumid=7&posti
d=27
一般而言FPGA等效门数的计算方法有两种,一是把FPGA基本单元(如LUT+FF,
ESB/BRAM)和实现相同功能的标准门阵列比较,门阵列中包含 的门数即为该
FPGA基本单元的等效门数,然后乘以基本单元的数目就可以得到FPGA门数估计
值;二是分别用FPGA和标准门阵列实现相同的功能,从中统 计出FPGA的等效
门数,这种方法比较多的依赖于经验数据。
对 于第一种方法,FPGA包括LUT/FF/RAM等资源,分析各种资源等效门数时,
总原则是等效原则,就是实现相同的功能,在标准门阵列中需要的门数就是 FPGA
该资源等效门数,例如实现一个带寄存器输出的4输入XOR,在FPGA中需要用
一个LUT和1个FF实现,在标准门阵列中一般要用21个与非门实 现,于是1
个LUT+1个FF等效于21个门。对ESB(BRAM),由于用标准门阵列实现1bit
的RAM时一般需要4个门,因此 SB/BARM 做RAM使用时,1bit等效4个门,对
Altera FPGA中一个2048bit的ESB,等效门数为8K。光靠这些数据还不能比较
准确地计算出FPGA的等效门数。因为这只是一种简单情况,实际情况要复 杂很
多。
例如,如果实现的是带寄存器输出地2输入XOR,FPGA也要用1个LUT+FF,而
标准门阵列只需要8个NAND,于是1 个LUT+1个FF只等效于8个门。同时特定
功能的实现,在不同的标准门阵列系列中需要的门数也不一样,因此等效门的计
算只能是个大概的数值。 也就是说对于某一具体型号FPGA的门数估计,与FPGA
资源的用途有密切关系。LUT用于实现2输入XOR和4输入XOR等效门数不一样
(分别为1和 13);FF不带异步清零、复位、时钟使能和带这些端口的等效门
数不同(分别为8和13);ESB(BRAM)做RAM使用时,1bit等效4个门,1个
2048bit的BRAM等效8K门,但是做查找表使用时可能只相当于不到200门。因
此估计FPGA的等效门数需要做更细致的分析。
下面以EP20K1000E为例详细说明FPGA等效门数的估计方法。
(1)计算逻辑阵列的等效门数
估算EP20K1000E的门数时,把FPGA特定资源和LCA300K标准逻辑阵列的门数
(LSI LCA300K Data Book)比较,可以对FPGA等效门做出估计。FPGA一个LUT
+FF等效门数计算如图2所示
即LUT+FF等效于8~21个门,上限和下限分别由实现简单函数、复杂函数分别
界定。
APEX20K 的等效门数也可以根据经验数据获得,把超过100个针对4输入LUT
的设计用FPGA实现,同时用LCA300K gate arrays和Design Compiler实现,
比较相同的设计FPGA所用的LE数目和LCA300K所用的门数可知,每个LE相当
于12个门。EP20K1000E有 38400个LE,于是相当于46万门。
(2)计算ESB的等效门数
RAM中一个bit所需要的门数与RAM的体系结构、工艺、厂商等有关,一般而言,
1bit相当于4个门,Altera也采用这个标准,这样可以方便地估计ESB等效门
数。
计算ESB等效门数也可以采用和LSI LCA300K比较的方法,即通过与实现相同容
量RAM在LCA300K所用的门数相比较,从而得到ESB的每一bit相当于多少门,
从而计算出ESB的等效门数,参考图3。
4gates/bit是一个比较合适的估计,于是EP20K1000E的ESB等效门数为
160 ESBs X 2,048 bits per ESB X 4 gates per bit = 1,310,720 gates,即
约为130万门。
总而言之,对EP20K1000E,LUT+FF等效门数约为46万(经验数值),ESB全用
作RAM时等效门数约为130万,所以最大系统门数为170万。
结论:
FPGA等效门数估计方法可以是把FPGA资源基本单元(如LUT+FF,ESB)和实现
相同功能的标准门阵列相比得到FPGA基本单元等效的门数,然后乘以单元的个
数得到整个FPGA等效门数。也可以是实现很多设计,和用标准门阵列相比,从
中统计出等效门数。
FPGA 的等效门数估计一般分为LUT+FF和ESB(BRAM)两部分,LUT+FF等效于
8~21个门,典型值为12;ESB做RAM使用时,一般相当于4门 /bit,此时估
计出的门数最多,如果ESB做乘积项/LUT则等效门数大大减小,例如对
EP20K1000E,前者为130万,后者为2万。