最近看到一個關(guān)于上下拉電阻的問題,發(fā)現(xiàn)不少人認為上下拉電阻能夠增強驅(qū)動能力。
隨后跟幾個朋友討論了一下,大家一致認為不存在上下拉電阻增強驅(qū)動能力這回事,因為除了OC輸出這類特殊結(jié)構(gòu)外,上下拉電阻就是負載,只會減弱驅(qū)動力。
但很多經(jīng)驗肯定不是空穴來風,秉承工程師的鉆研精神,我就試著找找這種說法的來源,問題本身很簡單,思考的過程比較有趣~
二極管邏輯
今天已經(jīng)很難看到二極管邏輯電路了,其實用性也不算高,不過因為電路簡單,非常適合用來理解基本概念。
一個最簡單的二極管與門如下圖所示。與門實現(xiàn)邏輯與操作Y=A&B,即A或者B任意為L的時候,輸出Y為L,只有當A和B都為H時,Y才為H。
基本二極管與門
假設(shè)二極管無導通壓降,在這個電路中,二極管充當了單向開關(guān)的角色,當A和B等于VDD時,兩根二極管反向截至,Y被電阻上拉到VDD,這是Y就是H;當A或者B任意一端為GND時,二極管導通,因為二極管導通時電阻很小,遠小于上拉電阻,所以Y被拉到了GND,即邏輯L。
至于二極管或門,只要把二極管轉(zhuǎn)一下,再把電阻從拉到VDD改成拉到GND就可以了,非常簡單。
基本二極管或門
基本原理
你看,在這么原始的邏輯電路中就已經(jīng)出現(xiàn)了上下拉電阻,這里面的原理也非常簡單粗暴:利用開關(guān)的閉合(電阻為0)和開啟(電阻無窮大)的特性,配合電阻,就可以輕松實現(xiàn)兩種電壓的輸出。
這種電路還有一個變形,就是用恒流源取代電阻,一方面集成電路工藝,恒流源比電阻更容易獲得,另一方面恒流源的驅(qū)動能力也更好。
根據(jù)開關(guān)和電阻(或恒流源)的相對位置,有以下基本電路:即開關(guān)接到GND(L)或開關(guān)接到VDD(H)。
這幾種電路都是由開關(guān)的閉合或開啟決定了VOUT是VDD還是GND。
開關(guān)的相對位置不同,還決定了電路在某一狀態(tài)下的驅(qū)動能力:開關(guān)的導通電阻為0,可視為驅(qū)動力無窮大,可是電阻(或恒流源)的驅(qū)動能力呢,只有VDD/R(或者恒流I),這就導致了電路在輸出H或L的時候驅(qū)動能力不對稱(換一個說法,就是電路在輸出H或者L的時候,輸出阻抗不一樣)。
除了驅(qū)動能力的問題,這種單開關(guān)加電阻的模式還會帶來靜態(tài)功耗的問題,因為只要開關(guān)閉合,不管外部有沒有負載,都會消耗電流。
既然開關(guān)的驅(qū)動力比電阻強,那么能不能把電阻也換成開關(guān)?恭喜你,發(fā)現(xiàn)了現(xiàn)代CMOS邏輯電路的基本單元:倆互補的開關(guān)。這樣不管輸出H還是輸出L,驅(qū)動能力都是無窮大!好的,這時候上下拉電阻就不見了。
這樣兩個開關(guān)的電路還多出來了一種狀態(tài):當兩個開關(guān)都開啟時,VOUT即不是VDD也不是GND,而是一個懸空的狀態(tài)(即高阻態(tài),Hi-Z),這時候外部給什么信號它就是什么狀態(tài)。這樣又出現(xiàn)了一個新的邏輯門大類:三態(tài)邏輯門。