設計者經常僅僅根據所接負載的直流輸入電流要求,冒險使推拉輸出電路的負載達到它的最大直流扇出能力。特別是當設計CMOS總線時這一想法尤其具有誘惑力,因為此時理論上的扇出能力是無限的。實際上重負載的總路線結構會帶來兩個缺點,上升時間將會減慢,而且驅動器件的功耗將會提高。
下例是一個重負載CMOS總線的實際上升時間和功耗計算的例子。
例:CMOS總線的性能
我們正為一臺并行計算機的共享存儲器子系統構造一個大型總線,如圖2.8所示??偩€連接著20個小的CPU,其中任何一個都可能存取這個8位的隨機訪問存儲器(RAM)。整個系統裝配在一個大的電路板上。
該總線是通過阻抗可控的50歐印刷電路走線來實現的,走線長度為10IN。圖2.8顯示出總線的傳播長度遠遠小于74HCT640門電路上的上升時間,因此在總線的兩端都沒有使用端接器。
根據直流扇出系數,我們預期每個總路線驅動器應該能夠很容易地驅動其他20個電路。已知每個收發(fā)器的最大傳播延遲為9NS,我們計劃使總線運行在30NS的周期上(33MHZ)。
為了檢驗這一設計,計算出每一條印刷線路負載電容,并分別與三態(tài)輸出的驅動阻抗相比較,計算出總線的RC上升時間。最后計算每個驅動器內的功耗。
負載電路
當每個驅動器轉換到關閉(OFF)狀態(tài)時,仍然存在負載電容。每個驅動器的這一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是輸出端電壓從低電壓從低電平狀態(tài)升至高電平的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以下。