推拉输出电路的动态功耗
设计者经常仅仅根据所接负载的直流输入电流要求,冒险使推拉输出电路的负载达到它的最大直流扇出能力。特别是当设计CMOS总线时这一想法尤其具有诱惑力,因为此时理论上的扇出能力是无限的。实际上重负载的总路线结构会带来两个缺点,上升时间将会减慢,而且驱动器件的功耗将会提高。 下例是一个重负载CMOS总线的实际上升时间和功耗计算的例子。 例:CMOS总线的性能 我们正为一台并行计算机的共享存储器子系统构造一个大型总线。总线连接着20个小的CPU,其中任何一个都可能存取这个8位的随机访问存储器(RAM)。整个系统装配在一个大的电路板上。 该总线是通过阻抗可控的50欧印刷电路走线来实现的,走线长度为10IN。总线的传播长度远远小于74HCT640门电路上的上升时间,因此在总线的两端都没有使用端接器。 根据直流扇出系数,我们预期每个总路线驱动器应该能够很容易地驱动其他20个电路。已知每个收发器的最大传播延迟为9NS,我们计划使总线运行在30NS的周期上(33MHZ)。 为了检验这一设计,计算出每一条印刷线路负载电容,并分别与三态输出的驱动阻抗相比较,计算出总线的RC上升时间。最后计算每个驱动器内的功耗。 负载电路 当每个驱动器转换到关闭(OFF)状态时,仍然存在负载电容。每个驱动器的这一I/O负载电容在手册中都被制造商标明为10PF。我们有20个负载,所以负载电容总共为200PF。加上底板印刷线路的电容2PF/IN,可以得到: 74HCT640的输出电阻 在SIGNETICS的高速CMOS数据手册上列出了以下指标(两个驱动晶体管中上端的情况是最差的): VCC=4.5V VOH=3.84V I输出=6.0MA HCT总线驱动器上端的输出电阻: RC上升时间 当输出从低电平转换到高电平时,充电时间常数约等于驱动器输出电阻乘以输出负载电容。 TRC=(110欧)*(220PF)=24NS 数值TRC是输出端电压从低电压从低电平状态升至高电平的63%时所需的时间。升至高电平的90%时所需的时间是TRC的两倍多一点。一个简单RC电路的10~90%上升时间是RC乘积的2.2倍: 我们本以为驱动器的最大传播迟为9NS,而实际的延迟变成了53NS!如果该总线运行在33MHZ上,数据信号在下一比特到来前将没有足够的时间上升或下降到满幅值。我们把总线频率降至16MHZ,以便让数据单元获得更多的间隔时间。 每个驱动器的功耗 VCC=5.5V(最差的情况时的供电电压) C=220PF(负载电容) F时钟=16MHZ(降低后的时钟频率) F数据=8MHZ(最差的数据周期,是时钟频率的1/2) 计算每个驱动器的功耗: 再乘以单个器件封装内的驱动器数目8,即可得到一个封闭器件的总功耗: P总=8*0.053=0.424W 一片20个引脚的塑料封装芯片消耗的能量还会更多。上面例子中的总线设计是不切实际的,因为上升时间太慢,并且驱动器的功耗太高。我们必须将该总线的工作频率降低到16MHZ以下。
|