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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 16118|回复: 10

[讨论] 经常看到电路规模用“几万门、十万门、百万门”描述,那么这个“门”到底指的是什么?

[复制链接]
发表于 2012-1-25 21:21:55 | 显示全部楼层 |阅读模式

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

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

x
经常看到电路规模用“几万门、十万门、百万门。。。。”描述,那么这个“门”到底指的是什么:反相器?与非门?晶体管?有没有个权威的解释?
发表于 2012-1-26 10:14:14 | 显示全部楼层
面积为X2的一个NAND gate
发表于 2012-1-26 12:00:16 | 显示全部楼层
不是X2的吧,应该是X1的吧。
总面积(一般会排除sram,模拟部分)除以X1的2输入的nand的面积,等到的就是等效门数。
 楼主| 发表于 2012-1-27 17:13:14 | 显示全部楼层
学习了,不知道在哪些教科书上有介绍?印象中好像都没有具体说过这内容。
发表于 2012-1-28 11:41:55 | 显示全部楼层
你看书不够仔细,很多书上都会说这个等效门的概念~~~~
 楼主| 发表于 2012-1-28 22:15:38 | 显示全部楼层
估计我看错书了

另外找到一篇帖子:
FPGA的最终面积不但和要实现的功能有关,而且和不同人的不同设计方法有关,比如同样一个buffer,用block memory 和 coregen 的方法可能面积很省,但是如果直接用RTL编码产生,而且不幸没有综合成blockmem而是综合成了一大堆的寄存器和LUT则面积会很大,大到不可想象(我有个这样的经历)。所以要在设计前就估计出面积不太可行。除非公司开发的产品有很强的延续性,那样的话可以根据原来的项目进行近似的推算,这是可能的。
那么在ISE里面如何看到自己设计的部分的面积呢。
1. 在ISE项目中打开“view design summary”。
2. 在右侧design summary窗口中选择“detailed reports”中的“map report”。
3. 出现如下所示的内容。我们分析一下。
Design Summary
--------------
Logic Utilization:
1. FPGA资源利用率
Number of Slice Flip Flops:      11,555 out of 178,176    6%
Slice内部FF寄存器利用率:6%
Number of 4 input LUTs:          21,446 out of 178,176   12%
4输入LUT利用率:12%
Logic Distribution:
2. 被使用的FPGA资源分布情况
Number of occupied Slices:                       16,079 out of  89,088   18%
占用的Slice数目:18%。
为什么Slice利用率是18%而上面的LUT利用率是12%呢?简单说明一下。假如一个Slice有两个LUT,片内总共有100个单位的Slice, 也即有200个单位的LUT,那么如果我们的设计使用了24个单元的LUT,而这些LUT分布在18个Slice里面时,恰好就是现在的这种情况了。即 Slice利用率18% (18/100),LUT利用率12%(24/200)。
Number of Slices containing only related logic:  16,079 out of  16,079  100%
Slice里面只有互相相关的逻辑,这种Slice所占比例:100%
Number of Slices containing unrelated logic:          0 out of  16,079    0%
Slice里面有互不相关的逻辑,这种Slice所占比例:0%
    *See NOTES below for an explanation of the effects of unrelated logic
Total Number of 4 input LUTs:         25,027 out of 178,176   14%
3. 4输入LUT的利用率:14%
Number used as logic:             21,446
设计用LUT数目:21446
Number used as a route-thru:         787
布线路由用LUT:787
Number used for Dual Port RAMs:    2,596
双端口RAM用LUT:2596
(Two LUTs used per Dual Port RAM)
每个双端口RAM由两个LUT构成
Number used as 16x1 RAMs:             64
用做16x1RAM的LUT:64
Number used as Shift registers:      134
用做shift register的LUT:134
4. 其他
Number of bonded IOBs:              495 out of     960   51%
Number of BUFG/BUFGCTRLs:             8 out of      32   25%
  Number used as BUFGs:                8
  Number used as BUFGCTRLs:            0
Number of FIFO16/RAMB16s:            19 out of     336    5%
  Number used as FIFO16s:              0
  Number used as RAMB16s:             19
Number of DCM_ADVs:                   2 out of      12   16%
Number of BSCAN_VIRTEX4s:             1 out of       4   25%

Number of RPM macros:           12
5. 等效门数
Total equivalent gate count for design:  1,681,068
这是一个168万门的设计。
Additional JTAG gate count for IOBs:  23,760
附:6. 等效门数的意义
本文在edacn.net发布以后,很多人回帖或者发信给我询问我等效门数的意义。我想这个问题不能一句话说完,就逐一做一下说明吧。
(1). 等效门数是对ASIC实现的大概估计。这里包含了两个意思:一呢是对ASIC实现的估计,也就是说ASIC实现的时候是在168万门左右的数量级;二呢是个大概估计,所以要强调的是等效门数仅供参考,和最后真正的ASIC结果可能会相去甚远,比如可能是100万门,也可能是300万门,甚至我们无法理解的数目。
(2). 等效门数的单位是二输入的NAND和NOR,这一点未经确认,但是有这样的印象,因为在CMOS工艺里面NAND、NOR、NOT和XOR是基本的门结构。
(3). 对ISE是否足够智能要保持怀疑。比如我们的设计中用到了一个BlockMem,ISE在计算等效门的时候可能不会区分这个blockmem是被用作了RAM,ROM,还是异步FIFO。但是这些不同的应用在ASIC的时候,综合出来的结果是不同的。在deepchip ESNUG里贴了这样的内容,可以参考一下(原文见:http://www.deepchip.com/items/0356-05.html):
       Frag      Virtex ASIC equivalent gates
---------------------------------------------------
  4-input LUT            6
  4-input ROM           32
  3-input LUT           na
  16x1 RAM              64
  32x1 RAM             128
  16 Shift Reg LUT      64
  CLB flop               8
  CLB latch              5
  IOB flop               8
  IOB latch              5
  IOB Sync latch        na
  TBUF                   3
  Block RAM         16,384
  BSCAN                 48
  Clk DLL            7,000
  F5 MUX                 3
  F6 MUX                 3
  MUXCY                  3
  XORCY                  3

(4). ASIC厂商和工艺的不同决定了等效门数只会是个general的参考数。不同的工艺在综合相同结构的时候,产生的门数也会不同,但是ISE的报告里面没有提及这一点,足见这是一个参考用得数据,且不可当真。
(5). 等效门数的意义在于:一、作为增量设计时的参考,评估新模块的大小和在全系统中占有的比例;二、可以用等效门数作为“一阶估计”,预测大致的ASIC规模比如1XXX万门的设计就当作是1000门左右的设计。
最后,切记,等效门数并不等于最后ASIC的门数,而且可能很不等效。
发表于 2015-7-28 22:35:38 | 显示全部楼层
gate count 的定义应该是每个foundry厂定的吧 你像TSMC就是说gate是两个cmos和两个pmos组成的逻辑就是一个gate
如果有误请及时纠正 我也学习xuexi
谢谢大家
发表于 2015-7-29 14:54:31 | 显示全部楼层
gate count 是指的晶体管的数量,有的地方也用1个2输入nand的面积来评估die size.
都差不多,最终具体的体现还是集体管的数量。1个2输入nand会使用四个晶体管。
发表于 2015-7-30 09:25:28 | 显示全部楼层
学习了
发表于 2016-1-13 17:16:53 | 显示全部楼层
一般而言,4个管子组成一个等效门。所以,说一颗芯片n万门,那就是有nx4个管子!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-11-5 16:26 , Processed in 0.024373 second(s), 8 queries , Gzip On, Redis On.

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