在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6608|回复: 3

一个很基本的问题:FPGA的门数是怎么定义的?

[复制链接]
发表于 2007-6-6 23:14:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
现在的资料上都是某某系列的FPGA是几百万门,几十万门等等。那么这些代表什么意义?
如果我要选则fpga的话,怎样根据要实现的系统选择门数?
发表于 2010-1-4 19:34:25 | 显示全部楼层
Limeal 整理、制作、转载
http://www.edacn.com 特约作者deve 原创
FPGA 门数计算方法
FPGA 等效门数的计算方法有两种:
1. 把 FPGA 基本单元(如LUT+FF,ESB/BRAM)和实现相同功能的标准门阵列比较,
门阵列中包含的门数即为该FPGA 基本单元的等效门数,然后乘以基本单元的数目就
可以得到FPGA 门数估计值;
2. 分别用 FPGA 和标准门阵列实现相同的功能,从中统计出FPGA 的等效门数,这种方
法比较多的依赖于经验数据。
对于第一种方法,FPGA 包括LUT/FF/RAM 等资源,分析各种资源等效门数时,总原则
是等效原则,就是实现相同的功能,在标准门阵列中需要的门数就是FPGA 该资源等效门数,
例如实现一个带寄存器输出的4 输入XOR,在FPGA 中需要用一个LUT 和1 个FF 实现,在
标准门阵列中一般要用21 个与非门实现,于是1 个LUT+1 个FF 等效于21 个门。对ESB
(BRAM),由于用标准门阵列实
现 1bit 的RAM 时一般需要4 个门,因此ESB/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 的等效门数需要做更细致的分析。
图 1 显示了EP20K 系列的等效门数等参数
Feature EP20K1000E
Typical Gates 1,000,000
Maximum System Gate 1,770,000
Logic Elements 38,400
Embedded System Blocks 160
Maximum RAM Bits 327,680
Maximum Macrocells 2,560
Maximum I/O Pins 716
图1 EP20K 系列的等效门数
下面以 EP20K1000E 为例详细说明FPGA 等效门数的估计方法。
1.计算逻辑阵列的等效门数
估算 EP20K1000E 的门数时,把FPGA 特定资源和LCA300K 标准逻辑阵列的门数(LSI
LCA300K Data Book)比较,可以对FPGA 等效门做出估计。FPGA 一个LUT+FF 等效门数
计算如图2 所示
Implementations APEX 20K LUT LSI
Gates APEX 20K Register LSI
Gates Total
Simple LCA300K
function Two input AND gate 1 D-Type Flipflop 7 8
Complex
LCA300K function Four XOR gate 13
D-Type Flipflop with
clear, present and clock
enable signal
8 21
图2 一个LUT+FF 等效门数
即 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。
Memory Function Gates Gates per Bit
128×8 single-port SRAM 4,620 4.5
128×16 single-port SRAM 7,980 3.9
128×32 single-port SRAM 14,700 3.6
128×16 dual-port SRAM 8,300 4.1
128×32 dual-port SRAM 14,910 63.6
图3 ESB 的等效门数
从上表可见,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 万。
发表于 2010-1-9 20:15:38 | 显示全部楼层
以前好像是用门数来计算的, 近几年似乎不提了, 直接用基本单元来表示, 比如slice , LE等.
我还查过V5系列是多少万门的(老板要知道, 我跟他说现在不是用这个单位来表示容量了), 不过没有文档说这个, 谁知道, 告诉一声.
发表于 2010-1-9 20:36:49 | 显示全部楼层
好像现在都说多少个le了,或者是slice
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-17 12:30 , Processed in 0.020597 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表