計算機是什么呢?——簡而言之,可以看成是一個“自動干活的設(shè)備”。說起來并不復(fù)雜,我們一一拆解一下這句話。首先“設(shè)備”很好理解,不用多解釋。“干活”也好理解,就是要能實現(xiàn)一定的功能?!?/span>自動”是啥意義呢?——就是在初始人為干預(yù)結(jié)束后,設(shè)備能自動運行,也就是說,機器能自己存儲并執(zhí)行某種預(yù)設(shè)的“指令”。按照這個理解,我們基本就可以得到計算機的組成了:負責干活的設(shè)備和負責存儲的設(shè)備。我們把前者叫做CPU,后者叫做RAM。當然還需要一些輔助設(shè)備將這兩個東西連接起來,簡要模型如下:
前面說了,RAM的作用是存儲數(shù)據(jù),我們知道,要存儲信息,至少要有兩個狀態(tài),且都必須是穩(wěn)定的,我們把這樣的器件稱為雙穩(wěn)態(tài)器。最簡單的雙穩(wěn)態(tài)器組成非常簡單——兩個非門串聯(lián)反饋在一起,如下圖所示:
經(jīng)過簡單分析這個電路,很容易發(fā)現(xiàn):上圖中紅色部分信號既可以是高電平,也可以是低電平!也就是說,原來電路上是高電平的話,就一直維持在高電平,原來低電平的話,就一直維持在低電平-----這個電路有兩個穩(wěn)定狀態(tài),也就是有最簡單的記憶功能。 大家都知道,觸發(fā)器是現(xiàn)代電子技術(shù)中一個非常核心的器件,其實觸發(fā)器的本質(zhì)就是通過兩個非門串聯(lián)反饋在一起的雙穩(wěn)態(tài)器。 但是呢,基于兩個非門串聯(lián)反饋在一起的雙穩(wěn)態(tài)器有一個缺點:
狀態(tài)一旦確定了之后就不再變化了,也就是說,我們沒有辦法改變這個系統(tǒng)的記憶,因為沒有控制接口。
這當然難不倒我們,我們可以自己加上,比如,可以用兩個與非門來代替非門,這樣就可以增加兩個控制端:
當然,也可以用或非門來代替非門,感興趣的可以自己試一下。
如果將上圖的與非門翻轉(zhuǎn)180°,就會變成下面的圖:
有沒有一種似曾相識的感覺?沒錯,這就是RS觸發(fā)器,它有四種狀態(tài):
a=1,b=1,為保持狀態(tài),也就是退化為兩個非門的反饋串聯(lián);
a=0,b=1或a=1,b=0,就會控制記憶和輸出;
a=0,b=0,o和ō 都是1,應(yīng)避免出現(xiàn)該種狀態(tài),我們稱之為非法態(tài)。(o表示輸出(output),ō 表示反向輸出) 有兩個bug: 能夠控制記憶,但是有非法狀態(tài);
整個系統(tǒng)不受控,一直在工作,當輸入端變化時,輸出端也跟著變化。
我們可以在輸入端再增加兩個或門,這樣的話,中間這個輸入引腳為1的話,電路處于保持狀態(tài),就自動屏蔽外部輸入,也就是老子不干活了。只有中間這個引腳為0的時候,才工作。
這樣就就解決了第二個bug,但是依然有存在非法態(tài)的可能,怎么干掉呢?
既然中間引腳解決了保持記憶的問題,那我們最后只要保證輸入的兩個引腳不同,就可以避免全0的情況,加個非門不就完事了?兩個輸入永遠不會同時為0。
這就是電平型D觸發(fā)器。 前面我們說了,只有當s=0時,輸出才等于輸入,系統(tǒng)才開始干活,我們更習(xí)慣s=1時干活,這樣也好辦,再加一個非門。同時,我們把表示a改為i,意為input。
這樣顯得略臃腫,我們知道:
即: 這樣左上方的或門就可以變?yōu)?/span>與非門,所以有:
同時,我們又知道:
即 所以,此時: 可以進一步簡化成4個與非門的形式。
這就是1位寄存器了。簡寫形式如下:
1位寄存器 其功能是: 當s=1時,o=i;當s=0時,o保持原來的狀態(tài)。
免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!