(TTL電路與CMOS電路的接口)
電路設計時,你可以不懂集成電路的內部結構,但是初學者必須掌握電平轉換設計理論及其基本方法,否則,你的電路將“罷工”。以下主要是參考閻石教授主編的《數字電子技術基礎》編輯的,最後一部分我寫了一點實際工作中遇到的電平匹配案例。希望此文對初學者有所幫助。
無論是TTL電路驅動CMOS電路還是CMOS電路驅動TTL電路,驅動門必須爲負載門提供合乎標準的高、低電平和足夠的驅動電流,也就是必須滿足下列各式(表1)
驅動門 負載門 |
V(OH(min)) ≥ V(IH(min)) |
V(OL(max)) ≤ V(IL(max)) |
I(OH(max)) ≥ n I(IH(max)) |
I(OL(max)) ≥ m I(IL(max)) |
其中n和m分別爲負載電流中I(IH),I(IL)的個數。
爲便於比較對照,下表中列出了TTL和CMOS兩種電路輸出電壓、輸出電流、輸入電壓、輸入電流的參數。(表2)
|
TTL 74系列 |
TTL 74LS系列 |
CMOS* 4000系列 |
高速CMOS 74HC系列 |
高速CMOS 74HCT系列 |
VOH(min)/V |
2.4 |
2.7 |
4.6 |
4.4 |
4.4 |
VOL(max)/V |
0.4 |
0.5 |
0.05 |
0.1 |
0.1 |
IOH(max)/mA |
-0.4 |
-0.4 |
-0.51 |
-4 |
-4 |
IOL(max)/mA |
16 |
8 |
0.51 |
4 |
4 |
VIH(min)/V |
2 |
2 |
3.5 |
3.5 |
2 |
VIL(max)/V |
0.8 |
0.8 |
1.5 |
1 |
0.8 |
IIH(max)/uA |
40 |
20 |
0.1 |
0.1 |
0.1 |
IIL(max)/mA |
-1.6 |
-0.4 |
-0.0001 |
-0.0001 |
-0.0001 |
*系CC4000系列CMOS門電路在VDD=5V時的參數。
一. 用TTL電路驅動CMOS電路
1.用TTL電路驅動4000系列和74HC系列CMOS電路
從上表中的數據可以看出,無論是74系列TTL電路做驅動門還是74LS系列TTL電路做驅動門,都能在n,m大於1的情況下滿足
V(OL(max)) ≤V(IL(max)),I(OH(max)) ≥ n I(IH(max)),I(OL(max)) ≥m I(IL(max)),但是不滿足V(OH(min)) ≥V(IH(min))。所以,必須將TTL電路輸出高電平提升到3.5V以上。
最簡單的解決方法是在TTL電路的輸出端與電源之間接入上拉電阻R.
在CMOS電路的電源電壓較高時,它所要求的VIH(min)值將超過推拉式輸出結構TTL電路輸出端能夠承受的電壓。例如CMOS電路在VDD=15V時,要求VIH(min)=11V。因此,TTL電路輸出的高電平必須大於11V。在這種情況下,應採用集電極開路輸出結構的TTL門電路(OC門)作爲驅動門。OC門輸出端三極管的耐壓較高,可達30V以上。
另一種解決方法是使用帶電平偏移的CMOS門電路實現電平轉換。
2.用TTL電路驅動74HCT系列CMOS門電路
爲了能方便地實現直接驅動,又生產了74HCT系列高速CMOS電路。通過改進工藝和設計,使74HCT系列的VIH(min)值降至2V。由表2可知,將TTL電路的輸出直接接到74HCT系列電路的輸入端時,表2中的所有式全滿足。
二. 用CMOS電路驅動TTL電路
1. 用4000系列CMOS電路驅動74系列TTL電路
由表2中的數據可知,表1中的前三個式子均滿足,唯獨第四個式子滿足不了,因此,需要擴大CMOS門電路輸出低電平時吸收負載電流的能力。常用的方法如下:
第一種方法:將同一封裝內的門電路並聯使用。
第二種方法:在CMOS電路的輸出端增加一級CMOS驅動器,例如可以選用同相輸出的驅動器CC4010,當VDD=5V時它的最大負載電流IOL≥3.2mA,足以同時驅動兩個74系列的TTL門電路。此外,也可以選用漏極開路的CMOS驅動器,如CC40107當VDD=5V時,CC40107輸出低電平時的負載能力爲IOL≥16mA, 能同時驅動十個74系列的TTL門電路。
第三種方法:使用分立器件的電流放大器實現電流擴展。
2. 用4000系列CMOS電路驅動74LS系列TTL電路
從表2可以看出,表1中的各式均滿足。所以可將CMOS電路的輸出與74LS系列門電路的輸入直接連接。但如果n>1,則仍需要採用上面講到的這些方法才能連接。
3.用74HC/74HCT系列CMOS電路驅動TTL電路
根據表2的數據可知,無論負載門是74系列TTL電路還是74LS系列TTL電路,都可以直接用74HC或74HCT系列CMOS門驅動。可驅動負載門的數目可從表2中的數據求出。