中央處理器(CPU,Central Processing Unit)是一塊超大規(guī)模的集成電路,是一臺(tái)計(jì)算機(jī)的運(yùn)算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計(jì)算機(jī)指令以及處理計(jì)算機(jī)軟件中的數(shù)據(jù)。中央處理器主要包括運(yùn)算器(算術(shù)邏輯運(yùn)算單元,ALU,Arithmetic Logic Unit)和高速緩沖存儲(chǔ)器(Cache)及實(shí)現(xiàn)它們之間聯(lián)系的數(shù)據(jù)(Data)、控制及狀態(tài)的總線(Bus)。它與內(nèi)部存儲(chǔ)器(Memory)和輸入/輸出(I/O)設(shè)備合稱為電子計(jì)算機(jī)三大核心部件。
本文主要介紹繼電器是如何組成cpu的,具體的跟隨小編一起來(lái)了解一下。
一、從電池、開(kāi)關(guān)和繼電器開(kāi)始
上圖左上角是一個(gè)很普通的電路,由電池、開(kāi)關(guān)電流表和燈泡組成。這個(gè)是初中物理學(xué)過(guò)的。上圖右上角是對(duì)左上角電路的簡(jiǎn)單變形,用VCC代替了電池,用接地符號(hào)實(shí)現(xiàn)了回路。相當(dāng)于把電池拆開(kāi)來(lái)畫了。電路功能是一樣的。本文此后的電路圖一般都采用VCC和接地表示電源。因?yàn)槟銜?huì)發(fā)現(xiàn)只有這樣的畫法能夠讓我們方便理解之后的電路圖。
然后往下看,第三個(gè)電路圖,那個(gè)圈圈里圈著個(gè)K的藍(lán)色的東西,表示的是繼電器。當(dāng)繼電器左側(cè)有電流通過(guò)時(shí),右側(cè)的電路就斷開(kāi);反之則聯(lián)通。(對(duì)應(yīng)地,也有那種左側(cè)有電流通過(guò)時(shí),右側(cè)的電路就聯(lián)通;反之則斷開(kāi)的繼電器,稍后會(huì)用到)這個(gè)電路想讓你知道的是,可以用繼電器實(shí)現(xiàn)這樣的功能:控制左側(cè)的電路的通斷,即可改變右側(cè)電路的通斷。換個(gè)方式說(shuō),就是左側(cè)的電路通斷情況決定了右側(cè)的電路的通斷情況。再往抽象了說(shuō),就是左側(cè)電路代表了“輸入”(Input)這個(gè)概念,右側(cè)電路代表了“輸出”(Output)這個(gè)概念。繼電器則代表了“計(jì)算”(或者“算法”、“處理”等)(CPU)這個(gè)概念。硬件就是用這種電器設(shè)備的固有物理性質(zhì)提供了最初的計(jì)算能力。
再往下看第四個(gè)電路圖,它和第三個(gè)的區(qū)別就在于用VCC和接地符號(hào)代替了電池。初次看電路,我們有必要經(jīng)歷一次從電池到VCC和接地符號(hào)的過(guò)渡。以后的電路圖,我們將直接使用VCC和接地符號(hào),請(qǐng)務(wù)必在此處適應(yīng)這樣的畫法。
然后是最下邊這個(gè)電路。和第四個(gè)電路相比,它用一個(gè)“非門”的符號(hào)代替了“繼電器、右側(cè)電路電源和繼電器的接地”這三個(gè)符號(hào)。也就是說(shuō)一個(gè)“非門”實(shí)際上就是“繼電器、右側(cè)電路電源和繼電器的接地”這三個(gè)東西的組合,而且畫的時(shí)候省略了電源和接地符號(hào)。
之前在學(xué)校里學(xué)數(shù)字電路,我就是想不明白邏輯門的電源在哪兒,整個(gè)電路的通路在哪兒,所以一直學(xué)不好。現(xiàn)在有個(gè)這個(gè)電路圖,感覺(jué)一切豁然開(kāi)朗。
二、用繼電器做個(gè)與門
剛剛我們用繼電器做出了“非門”。可以看到只要用一個(gè)繼電器就可以了。與門的電路如下圖所示。
與門由兩個(gè)繼電器(這兩個(gè)繼電器用的都是跟做非門的繼電器通斷情形相反的那種)構(gòu)成,只有當(dāng)兩個(gè)繼電器左側(cè)都通電時(shí),右側(cè)電路才能聯(lián)通。這樣就實(shí)現(xiàn)了“與”的功能。“與門”的符號(hào)是一個(gè)躺著封口的U形。
注:本文里我做的電路圖片都是GIF格式的,你可以在瀏覽器里看到隨著開(kāi)關(guān)的開(kāi)閉,輸入和輸出電路上的燈泡是如何變化的。每個(gè)圖上都有(http://bitzhuwei.cnblogs.com)標(biāo)識(shí)我的博客地址,不過(guò)每個(gè)GIF圖的最后一幀都去掉了這個(gè)標(biāo)識(shí)。這樣,看到一幀沒(méi)有標(biāo)識(shí)的時(shí)候,就知道下一幀將是GIF圖的第一幀了。
三、用繼電器做個(gè)或門
“非門”、“與門”做出來(lái)了,“或門”也就不難理解了,直接上圖大家體會(huì)吧。(導(dǎo)線交叉的地方,如果有個(gè)紅點(diǎn),表示是聯(lián)通的,否則就是互不相干的)“或門”的符號(hào)像一個(gè)子彈。
四、用繼電器做個(gè)異或門
“異或門”的功能是:左側(cè)的兩個(gè)輸入電路一個(gè)聯(lián)通另一個(gè)不聯(lián)通時(shí),右側(cè)電路聯(lián)通;否則右側(cè)電路不聯(lián)通。這次先畫符號(hào),大家可以先自己嘗試用繼電器畫“異或門”,鍛煉一下思維,然后再向下看答案。
答案揭曉!“異或門”的實(shí)現(xiàn)如下圖所示。乍看很復(fù)雜,其實(shí)是有邏輯的。最右邊的兩個(gè)繼電器其實(shí)是一個(gè)“或門”,最左邊兩個(gè)繼電器是兩個(gè)“非門”,中間兩上兩下共四個(gè)繼電器,是兩個(gè)“與門”。這樣就好理解了。AB兩個(gè)輸入電路為A通、B不通的時(shí)候,整個(gè)“異或門”會(huì)通過(guò)下方的路線使燈泡亮;若A不通、B通,則會(huì)通過(guò)上方的線路使燈泡亮。其他情況燈泡都不會(huì)亮。
五、振蕩器
振蕩器能夠不斷地輸出0、1、0、1、0、1、0、1……這樣的信號(hào)。這種東西雖然一時(shí)說(shuō)不上有什么用,不過(guò)一定是有用到的時(shí)候的。振蕩器做起來(lái)也簡(jiǎn)單得離譜。看下圖所示電路。
把非門的輸出端連到輸入端上。當(dāng)輸出為1時(shí),輸入也就成了1,那么輸出就得變成0;然后輸入也跟著變成0,這樣輸出又變回了1。循環(huán)翻轉(zhuǎn)無(wú)休無(wú)止。振蕩器能翻轉(zhuǎn)多快,就看繼電器的反應(yīng)有多快了。(現(xiàn)代計(jì)算機(jī)用晶體管代替了繼電器,晶體管比繼電器翻轉(zhuǎn)速度快得多,所以能夠得到的頻率更高,計(jì)算機(jī)的速度更快。而且晶體管比繼電器省電)話說(shuō)multisim12仿真的翻轉(zhuǎn)速度也夠可以的,本人截圖也費(fèi)了不少勁。
順便給一個(gè)用繼電器做振蕩器的實(shí)際應(yīng)用的例子:上學(xué)的時(shí)候上下課的鈴聲就是用繼電器做的振蕩器完成的。0101信號(hào)用錘子敲打鐵盔表達(dá)了出來(lái)。
六、加法器
剛剛約定了,用1和0表示電路的通斷。電路只有通斷這兩種狀態(tài),所以計(jì)算機(jī)只用0和1來(lái)表示數(shù),這就是二進(jìn)制啊。關(guān)于二進(jìn)制和十進(jìn)制的內(nèi)容別人寫得太多了,我就不提啦。要計(jì)算兩個(gè)多位二進(jìn)制數(shù)的和,可以分別計(jì)算各個(gè)數(shù)位上的結(jié)果,而各個(gè)數(shù)位的計(jì)算方法又是相同的,即“被加數(shù)+加數(shù)=》和的值+進(jìn)位的值”。這用邏輯門表示如下圖。
A和B表示加數(shù)和被加數(shù),C表示前一位計(jì)算的進(jìn)位的值,C1燈泡表示本次計(jì)算的進(jìn)位的值,S1燈泡表示本次計(jì)算的和的值。我找了半天,也沒(méi)在multisim12里找到一位二進(jìn)制數(shù)的加法器件的符號(hào),大家看這個(gè)圖就可以了。
要計(jì)算多位數(shù),把單位數(shù)加法器首尾相連就可以了,如下圖所示。這兩張圖是從《穿越計(jì)算機(jī)的迷霧》中拿來(lái)的。如果侵權(quán),請(qǐng)告訴我,不然我就偷個(gè)懶不自己畫啦。