24小時聯(lián)系電話:18217114652、13661815404
中文
技術(shù)專題
使用Gates和應(yīng)用程序進(jìn)行SR觸發(fā)器設(shè)計
使用Gates和應(yīng)用程序進(jìn)行SR觸發(fā)器設(shè)計
我們將討論數(shù)字電子學(xué)中一種稱為SR觸發(fā)器的基本電路。我們將看到使用NOR和與非門的SR觸發(fā)器的基本電路,其工作表,真值表,時鐘SR觸發(fā)器以及一個簡單的實時應(yīng)用程序。
我們已經(jīng)看到,直到電路現(xiàn)在即多路復(fù)用器,解復(fù)用器,編碼器,解碼器,奇偶發(fā)生器和校驗等被稱為組合邏輯電路。在這些類型的電路中,輸出僅取決于輸入的當(dāng)前狀態(tài),而不取決于輸入或輸出的過去狀態(tài)。
除了較小的傳播延遲外,當(dāng)輸入發(fā)生變化時,組合邏輯電路的輸出會立即發(fā)生變化。
還有另一類電路,其輸出不僅取決于當(dāng)前輸入,還取決于過去的輸入/輸出。這些類型的電路稱為順序邏輯電路。我們?nèi)绾潍@得“過去的輸入/輸出”數(shù)據(jù)?我們必須具有某種“內(nèi)存”才能存儲數(shù)據(jù)供以后使用。可以存儲數(shù)據(jù)并充當(dāng)“存儲器”單元的設(shè)備或電路稱為鎖存器或觸發(fā)器。
注意:術(shù)語“鎖存器”和“觸發(fā)器”將作為同義詞使用,盡管在技術(shù)上它們稍有不同。簡而言之,觸發(fā)器是時鐘控制的鎖存器,即,僅當(dāng)存在時鐘信號(取決于設(shè)計的高電平或低電平)時,輸出才會改變。
什么是觸發(fā)器?
觸發(fā)器是可以存儲1位數(shù)字信息的基本存儲單元。它是一個雙穩(wěn)態(tài)電子電路,即具有兩個穩(wěn)定狀態(tài):高或低。由于觸發(fā)器是雙穩(wěn)態(tài)元件,因此其輸出將保持穩(wěn)定狀態(tài),直到施加外部事件(稱為觸發(fā))為止。
由于它會在施加輸入后很長時間保留輸出(除非進(jìn)行任何更改),因此可以將觸發(fā)器視為可以存儲一個二進(jìn)制位的存儲設(shè)備。
可以使用兩個串聯(lián)的反相器設(shè)計一個簡單的觸發(fā)器,該反相器具有從第二反相器的輸出到第一反相器的輸入的反饋。以下電路顯示了使用反相器的觸發(fā)器。
設(shè)Q 1為輸入,Q 3為輸出。最初,假設(shè)反饋已斷開,并且通過將其接地將Q 1設(shè)為0(邏輯0,LOW,位0)。Q 3也將為0。現(xiàn)在,如果已連接反饋并且輸入Q 1與地面斷開連接,則Q 3仍將繼續(xù)為0。
同樣,如果不對地進(jìn)行運算,如果我們對1重復(fù)相同的過程(邏輯1,高電平,位1),則輸出Q 3保持為1。
這是具有兩個穩(wěn)定狀態(tài)的簡單觸發(fā)器,并保持在特定狀態(tài),因此保持為存儲器,直到發(fā)生外部事件(例如這種情況下的輸入更改)。
SR觸發(fā)器概述
上述基于反相器的觸發(fā)器僅用于理解其工作原理,但由于沒有提供應(yīng)用任何輸入的準(zhǔn)備,因此沒有任何實際用途。這就是NOR和NAND Gate出現(xiàn)的地方。可以使用NOR門來實現(xiàn)上述基于反相器的觸發(fā)器,如下所示。
忽略“R”和“S”值現(xiàn)在,讓我們重繪上述電路在更常規(guī)的形式和重命名Q 2為Q和Q 3為Q。
由此,觸發(fā)器具有兩個輸入:R和S,以及兩個輸出:Q和Q,從圖中可以明顯看出,輸出是相互補充的。讓我們嘗試分析輸入及其對應(yīng)輸出的不同可能性。
這里要注意的重要一點是,對于“或非”門,邏輯“ 1”是主要輸入,如果其任何輸入是邏輯“ 1”(高),則輸出均為邏輯“ 0”(低)。其他輸入。考慮到這一點,讓我們分析上述電路。
情況1:R = 0和S = 0
在第一種情況下,兩個或非門的輸入均為邏輯“ 0”。由于它們都不是主導(dǎo)輸入,因此它們對輸出沒有影響。因此,輸出保留其先前的狀態(tài),即輸出中沒有變化。此條件稱為“保持條件”或“無更改條件”。
情況2:R = 0和S = 1
在這種情況下,“ S”輸入為1,這意味著“或非”門B的輸出將變?yōu)?span>0。結(jié)果,“或非”門A的兩個輸入均變?yōu)?span>0,因此“或非”門A的輸出也因此變?yōu)?span>“ 0”。 Q的值為1(高)。由于輸入S上的“ 1”使輸出切換到其穩(wěn)定狀態(tài)之一并將其設(shè)置為“ 1”,因此S輸入被稱為SET輸入。
情況3:R = 1和S = 0
在這種情況下,“ R”輸入為1,這意味著“或非”門A的輸出將變?yōu)?span>0,即Q為0(低)。結(jié)果,“或非”門B的兩個輸入都變?yōu)?span>0,因此“或非”門B的輸出為1(高)。由于輸入R上的“ 1”使輸出切換到其穩(wěn)定狀態(tài)之一并將其重置為“ 0”,因此R輸入被稱為RESET輸入。
情況4:R = 1和S = 1
禁止此輸入條件,因為它迫使兩個或非門的輸出都變?yōu)?span>0,這違反了互補輸出。即使應(yīng)用了此輸入條件,如果下一個輸入變?yōu)?span>R = 0和S = 0(保持條件),也會在“或非”門之間引起“競爭條件”,從而在輸出端造成不穩(wěn)定或不可預(yù)測的狀態(tài)。
因此,根本不使用輸入條件R = 1和S = 1。
因此,基于上述情況和不同的輸入組合,下表顯示了SR觸發(fā)器的真值表。
[R |
小號 |
問 |
狀態(tài) |
0 |
0 |
最后狀態(tài) |
沒有變化 |
0 |
1個 |
1個 |
放 |
1個 |
0 |
0 |
重啟 |
1個 |
1個 |
沒有申請 (?) |
禁止的 |
SR觸發(fā)器的邏輯符號如下所示:
使用NAND門的SR觸發(fā)器(技術(shù)上講,RS觸發(fā)器)
還可以通過兩個NAND門的交叉耦合來設(shè)計SR觸發(fā)器,但是Hold和Forbidden狀態(tài)相反。它是一個有源低輸入SR觸發(fā)器,因此我們將其稱為RS觸發(fā)器。下圖顯示了使用與非門的SR觸發(fā)器電路
關(guān)于“與非”門的重要一點是,其主要輸入為0,即,如果其任何輸入為邏輯“ 0”,則輸出為邏輯“ 1”,而與其他輸入無關(guān)。僅當(dāng)所有輸入均為1時,輸出才為0。牢記這一點,讓我們看一下基于NAND的RS觸發(fā)器的工作原理。
情況1:R = 1和S = 1
當(dāng)S和R輸入都為HIGH時,輸出保持先前狀態(tài),即,它保存先前數(shù)據(jù)。
情況2:R = 1和S = 0
當(dāng)R輸入為HIGH而S輸入為LOW時,觸發(fā)器將處于SET狀態(tài)。當(dāng)R為高電平時,與非門B的輸出即Q變?yōu)榈碗娖健_@使得與非門A的兩個輸入都變?yōu)榈碗娖剑虼耍c非門A的輸出即Q變?yōu)楦唠娖健?span>
情況3:R = 0和S = 1
當(dāng)R輸入為低電平而S輸入為高電平時,觸發(fā)器將處于復(fù)位狀態(tài)。當(dāng)S為高電平時,與非門A的輸出即Q變?yōu)榈碗娖健_@使得與非門B的兩個輸入都變?yōu)榈停虼耍c非門A的輸出即Q變?yōu)楦摺?span>
情況3:R = 0和S = 0
當(dāng)R和S輸入均為LOW時,觸發(fā)器將處于不確定狀態(tài)。由于S和R的低輸入違反了觸發(fā)器的規(guī)則,即輸出應(yīng)相互補充。因此,觸發(fā)器處于未定義狀態(tài)(或禁止?fàn)顟B(tài))。
下面的真值表總結(jié)了借助NAND門設(shè)計的SR觸發(fā)器的上述工作原理。
[R |
小號 |
問 |
狀態(tài) |
1個 |
1個 |
最后狀態(tài) |
沒有變化 |
1個 |
0 |
1個 |
放 |
0 |
1個 |
0 |
重啟 |
0 |
0 |
沒有申請 (?) |
禁止的 |
使用NAND門的RS觸發(fā)器可通過將輸入反相來轉(zhuǎn)換為具有與常規(guī)SR觸發(fā)器相同的真值表。代替使用反相器,我們可以使用具有公共輸入的NAND門,如下圖所示。
簡單的SR觸發(fā)器的問題在于,它們對控制信號(盡管未在圖中顯示)電平敏感,這使它們成為透明的設(shè)備。為了避免這種情況,引入了門控或時鐘SR觸發(fā)器(每當(dāng)使用術(shù)語SR觸發(fā)器時,它通常是指時鐘SR觸發(fā)器)。時鐘信號使器件對邊緣敏感(因此沒有透明性)。
時鐘SR觸發(fā)器–觸發(fā)器
有兩種類型的時鐘SR觸發(fā)器是可能的:基于NAND和基于NOR。使用“與非”門的時鐘SR觸發(fā)器電路如下所示
該電路是通過在基于NAND的SR觸發(fā)器中添加兩個NAND門而形成的。當(dāng)額外的與非門將輸入反相時,輸入為高電平有效。時鐘脈沖被提供給兩個額外的與非門。
因此,時鐘脈沖的躍遷是該設(shè)備工作的關(guān)鍵因素。假設(shè)它是一個上升沿觸發(fā)的器件,則該觸發(fā)器的真值表如下所示。
鐘 |
[R |
小號 |
問 |
狀態(tài) |
↓或0或1 |
X |
X |
最后狀態(tài) |
不變(保持) |
↑ |
0 |
0 |
最后狀態(tài) |
不變(保持) |
↑ |
0 |
1個 |
1個 |
放 |
↑ |
1個 |
0 |
0 |
重啟 |
↑ |
1個 |
1個 |
沒有申請 (?) |
禁止的 |
通過使用“或非”門也可以實現(xiàn)相同的目的。使用“或非”門的時鐘SR觸發(fā)器的電路如下所示。
該圖顯示了RS觸發(fā)器的結(jié)構(gòu)(由于R與輸出Q相關(guān)聯(lián)),SET和RESET的功能保持不變,即,當(dāng)S為高電平時,Q設(shè)置為1,而當(dāng)R為高電平時,Q為重置為0。
應(yīng)用領(lǐng)域
SR觸發(fā)器是非常簡單的電路,但由于它們的非法狀態(tài)(S和R都很高(S = R = 1)),因此并未在實際電路中廣泛使用。但是它們用于開關(guān)電路,因為它們提供了簡單的開關(guān)功能(在置位和復(fù)位之間)。
一種這樣的應(yīng)用是開關(guān)去抖動電路。SR觸發(fā)器用于消除數(shù)字電路中開關(guān)的機械抖動。
機械彈跳
機械開關(guān)在按下或釋放時,通常需要一些時間并振動幾次,才能穩(wěn)定下來。開關(guān)的這種非理想行為稱為“開關(guān)彈跳”或“機械彈跳”。這種機械彈跳將傾向于在低電壓和高電壓之間波動,這可以通過數(shù)字電路來解釋。
這可能會導(dǎo)致脈沖信號發(fā)生變化,并且這些不需要的脈沖序列將導(dǎo)致數(shù)字系統(tǒng)無法正常工作。
例如,在信號的這個彈跳周期中,輸出電壓的波動非常大,因此寄存器對多個輸入進(jìn)行計數(shù),而不是對單個輸入進(jìn)行計數(shù)。為了消除這種數(shù)字電路的行為,我們使用了開關(guān)去抖動電路,在這種情況下,使用了SR觸發(fā)器。
SR觸發(fā)器如何消除機械彈跳?
基于當(dāng)前狀態(tài)輸出,如果按下設(shè)置或重置按鈕,則輸出將以計數(shù)一個以上信號輸入的方式改變,即電路可能接收到一些不需要的脈沖信號,因此由于機器,在Q處的輸出沒有變化。
當(dāng)按下按鈕時,觸點將影響觸發(fā)器的輸入,并且當(dāng)前狀態(tài)將發(fā)生變化,并且對于任何其他機械開關(guān)彈跳,不會對電路/機器產(chǎn)生進(jìn)一步的影響。如果開關(guān)有任何其他輸入,則不會有任何變化,SR觸發(fā)器將在一段時間后復(fù)位。
因此,只有在SR觸發(fā)器執(zhí)行狀態(tài)更改后(即,僅在接收到單個時鐘脈沖信號之后),才能使用同一開關(guān)。
開關(guān)去抖電路的電路如下所示。
開關(guān)的輸入接地(邏輯0)。每個輸入都有兩個上拉電阻。它們可確保在觸點之間切換時,觸發(fā)器輸入S和R始終為1。
可以使用NOR SR觸發(fā)器構(gòu)建另一個電路。
開關(guān)的輸入連接到邏輯1。每個輸入都有兩個下拉電阻。它們確保當(dāng)開關(guān)在觸點a和b之間時,觸發(fā)器輸入S和R始終為0。
消除機械開關(guān)抖動的常用IC為MAX6816 –單輸入,MAX6817 –雙輸入,MAX6818 –八路輸入開關(guān)去抖動IC。這些IC包含帶有SR觸發(fā)器的必要配置。