最近在学习有关FPGA方面的知识,在看一些FPGA的datasheet时,看到fan-out和fan-in这样的字眼,乍一看还真不知所云,继续往下看还是云里雾里,于是用Google在线翻译了一下,上面赫然是扇入扇出,不用想,电子设计方面怎么会有这么俗的词,还“扇”呢。刚开始不以为然,后来在求知欲的驱使下,就以扇入扇出为关键字在网上开始艰难搜寻。别说这一找,还真找到不少资料呢,看了网上那些大侠们的解释,我才恍然大悟,原来Google并没有翻译错,而是自己太孤陋寡闻了。下面我将给出我所找到的关于扇入扇出的解释,以下都是来自网络,并非原创:
1.原意:
The number of circuits that can be fed input signals from an output device.
扇出,输出可从输出设备输入信号的电路的数量 。
扇出(fan-out)是定义单个逻辑门能够驱动的数字信号输入最大量的术语。大多数TTL逻辑门能够为10个其他数字门或驱动器提供信号。因而,一个典型的TTL逻辑门有10个扇出信号。
在一些数字系统中,必须有一个单一的TTL逻辑门来驱动10个以上的其他门或驱动器。这种情况下,被称为缓冲器的驱动器可以用在TTL逻辑门与它必须驱动的多重驱动器之间。这种类型的缓冲器有25至30个扇出信号。逻辑反向器(也被称为非门)在大多数数字电路中能够辅助这一功能。
2.在模块化设计中
模块的扇出是指模块的直属下层模块的个数,如图7.8所示。图7.8中,平均的扇出是2。一般认为,设计得好的系统平均扇出是3或4。
图7.8模块的扇出
一个模块的扇出数过大或过小都不理想,过大比过小更严重。一般认为扇出的上限不超过7。扇出过大意味着管理模块过于复杂,需要控制和协调过多的下级。解决的办法是适当增加中间层次。
一个模块的扇入是指有多少个上级模块调用它。扇人越大,表示该模块被更多的上级模块共享。这当然是我们所希望的。但是不能为了获得高扇人而不惜代价,例如把彼此无关的功能凑在一起构成一个模块,虽然扇人数高了,但这样的模块内聚程度必然低。这是我们应避免的。
设计得好的系统,上层模块有较高的扇出,下层模块有较高的扇人。其结构图像清真寺的塔,上面尖,中间宽,下面小。
1.门电路的扇入扇出
扇入系数,是指门电路允许的输入端数目。
一般TTL电路的扇入系数 Nr为1~5,最多不超过8。若芯片输入端数多于实际要求的数目,可将芯片多余输入端接高电平(+5V)或接低电平(GND)。
扇出系数,是指一个门的输出端所驱动同类型门的个数,或称负载能力。
NO=IOLMAX/IILMAX,这是一个通俗的定义一般用在TTL电路的定义中。其中IOLMAX为最大允许灌电流,IILMAX是一个负载门灌入本级的电流。
TTL电路的扇出系数Nc为8~10。
CMOS电路的扇出系数Nc可达20~25。
当然LVTTL和LVCMOS都可进一步验算获得。
Nc表征了门电路的负载能力。
1.TTL電路
TTL的验算是比较好弄的,TTL与TTL之间如下图所示:
由于本身晶体管的转换速度有限,因此对于TTL来说,扇入扇出系数无所谓低频和高频而言。
2.CMOS
扇出系数实质上是根据频率有关的。
因此,扇出系数是根据输出波形识别的时序而定的,随着频率的增加,扇出系数越来越小。
这是因为理论上来说Rdson和Ci都是确定的,根据充放电过程
注意Rdson的能力计算可参考前面的博文
通过计算时间常数,我们可测算
1.10%=>90%的时间,并确认高电平的时间。
2.90%=>10%的时间,并确认低电平的时间。
如果这两个都符合,则可接受。
当然MOS管的输出电容和PCB板的寄生电感和电容,这些因素都会影响实际的效果。