cpu等芯片的工作原理是什麼?

ght675361513

cpu全稱中央處理器,它的功能主要是解釋計算機指令以及處理計算機軟件中的數據,對計算機來說能夠識別指令或數據都是以“0”和“1”組成的一串串的數字。



CPU從邏輯上可以劃分成3個模塊,分別是控制單元、運算單元和存儲單元,這三部分由CPU內部總線連接起來

控制單元:控制單元是整個CPU的指揮控制中心,由指令寄存器IR(InstrucTIon Register)、指令譯碼器ID(InstrucTIon Decoder)和操作控制器OC(OperaTIon Controller)等,對協調整個電腦有序工作極為重要。它根據用戶預先編好的程序,依次從存儲器中取出各條指令,放在指令寄存器IR中,通過指令譯碼(分析)確定應該進行什麼操作,然後通過操作控制器OC,按確定的時序,向相應的部件發出微操作控制信號。操作控制器OC中主要包括節拍脈衝發生器、控制矩陣、時鐘脈衝發生器、復位電路和啟停電路等控制邏輯。

運算單元:是運算器的核心。可以執行算術運算(包括加減乘數等基本運算及其附加運算)和邏輯運算(包括移位、邏輯測試或兩個值比較)。相對控制單元而言,運算器接受控制單元的命令而進行動作,即運算單元所進行的全部操作都是由控制單元發出的控制信號來指揮的,所以它是執行部件。

存儲單元:包括CPU片內緩存和寄存器組,是CPU中暫時存放數據的地方,裡面保存著那些等待處理的數據,或已經處理過的數據,CPU訪問寄存器所用的時間要比訪問內存的時間短。採用寄存器,可以減少CPU訪問內存的次數,從而提高了CPU的工作速度。但因為受到芯片面積和集成度所限,寄存器組的容量不可能很大。寄存器組可分為專用寄存器和通用寄存器。專用寄存器的作用是固定的,分別寄存相應的數據。而通用寄存器用途廣泛並可由程序員規定其用途,通用寄存器的數目因微處理器而異。

CPU的工作原理概括如下:


智慧新視界

CPU就是一種數字芯片,它的內部可以看成是很多很多的小開關,既然是開關那麼就只有開和關兩種狀態,對應著二進制位0和1,我們的計算機就只會識別這種0和1的信息,我們在電腦上看到的所有的信息都是由0和1組合轉換而來的。


數字芯片的內部既然是開關,那麼單個的開關電路就是晶體管開關電路了,CPU就是將上億的晶體管電路集成在一塊,通過開關的開啟和斷開來表示各種信息的。CPU內部可以分為控制單元,邏輯單元和存儲單元三大部分,這三個部分相互協調配合,便控制著計算機的各個部件協調工作,所以被稱作為中央處理器。那麼它的主要工作就是讀,解碼,執行,寫回四個基本操作。


首先我們對計算機的各種操作都是通過各種指令的形式送入CPU中的,CPU讀取指令之後首先進行解碼,也就是將指令解讀為一系列的控制行為,這就好比單位領導指揮工作一樣,你負責幹這個,他負責幹那個,然後是執行操作,將各自的工作做完之後,最後要將成果上報,這就是寫回了。



上面講述的只是CPU在執行完一條指令,而通常我們對計算機的每個操作都包含有很多條指令,CPU完成一條指令,會繼續執行下一條指令,這個過程不斷地重複,快速的執行完一條又一條的指令,最終在顯示器上顯示出你要的結果。


電子維修

悟空問答開始走向高端領域了,這提的問題真尖端,氣場不夠都不敢回答,我斗膽回答一下吧。


我也別回答你CPU等芯片的工作原理是什麼了,我就簡單的描述一下,電腦是怎麼工作的吧。首先組成電腦的主要硬件有主板,CPU,內存,硬盤,顯卡,輸入設備(鍵盤鼠標等),輸出設備(顯示器,打印機等等)。電腦想要運行光有硬件也不行呀,都是0101010101電腦自己懂,但是人看著費勁吶,所以就有了操作系統,有了操作系統,就有了操作系統下的軟件(我說的簡單但是實際電腦發展到今天可以寫一部編年史了)。


操作系統是什麼呢?操作系統可以理解為連接各個電腦硬件的神經網絡,如果你從輸入設備輸入了張三李四,CPU收到電平信號了,然後開始翻譯成010101,然後再給輸出設備,輸出設備接到010101後,開始按照既定的方案去運行(這個既定方案可以想象成驅動)。如果你從輸入設備輸入的數據需要保存的話,那麼CPU就會接到輸入設備的電平信號後,開始翻譯成010101,再存到硬盤的小格子裡。


上述描述了CPU、硬盤、輸出設備和輸入設備是怎麼工作的,還剩下主板、內存和顯卡。主板的英文名字是motherboard,這名字多形象,母親板。把操作系統比喻成連接各個電腦硬件的神經網絡,那麼主板就是連個各個主要硬件的骨骼,因為主板還一個英文名字叫mainboard。


一說到顯卡,讓我想起了intel製造的最早的i740顯卡,重點是intel發佈完i740顯卡之後,發佈的這款有著PCI-E接口的處理器,早期的電腦沒有顯卡,但是當人們有了一點點顯示需求的時候才有了i740,但是固執的intel發展i740的時候,慢慢的就又回到了CPU領域,可能intel認為,看看我intel的CPU什麼都可以幹,你顯卡不過就是一個輔助CPU打雜的,顯卡就是不必要的存在。顯然可能intel的想法是狹隘的,當科技發展日新月異的時候,人們對顯示的精細需求越來越旺盛的時候,顯卡也藉此機會自成一排,這才有了AMD和Nvidia。顯卡的工作就是把輸入設備的010101比CPU更快的完成,然後再傳給顯示設備,簡言之,顯卡的活CPU可以幹,但是時間會很久,這時間久了,用戶體驗就差了。


最後說說這個內存,內存起到緩衝和數據交換作用。 當CPU在工作時,需要從硬盤等外部存儲器上讀取數據,但由於硬盤這個"倉庫"太大,加上離CPU也很"遠",運輸"原料"數據的速度就比較慢,導致CPU的工作效率大打折扣!舉個例子,以3GHz的CPU為例,電流每秒鐘可以振盪30億次,每次耗時大約為0.33納秒。光在1納秒的時間內,可以前進30釐米。也就是說,在CPU的一個時鐘週期內,光可以前進10釐米。因此,沒有內存的情況下,如果硬盤等外部存儲器距離CPU超過5釐米,就不可能在一個時鐘週期內完成數據的讀取,這還沒有考慮硬件的限制和電流實際上達不到光速等限制,所以為了解決這個問題,人們便在CPU與外部存儲器之間,建了一個叫做內存的硬件裝置。這就是內存的由來。更詳細的內容可以關注我,然後查看我的作品《Intel殺回獨立顯卡領域》。


芯片的工作原理,就是二極管的特性,開和關就是1和0,1和0是機器識別的語言,開和關就是人類識別的語言。我覺得,芯片的工作原理就是人與機器相互理解的過程,能力有限,不知道這樣的回答你會不會滿意呢?


MrCanned

我也斗膽來回答一下,通俗一點的回答一下。



1.首先,我們要明確,電腦最底層的硬件交互是基於波形的數字信號,也就是我們常說的二進制,0和1狀態。機器只懂這個。

2.為了應對不同的處理需求,處理器內部要編寫指令集來完成對應的指令操作然後輸出結果。所以不同的處理器有著不同的指令集,更專注處理不同的數據。

3.有了指令集,就要上升到彙編層面了,也就是怎麼通過編譯,讓軟件執行的程序硬件看得懂, 所以有了編譯器,用於解釋我們程序想表達的機器能懂的語言。

4.高級語言,像java,c語言都是高級語言,這些程序不是直接執行就有效的,要通過編譯器再進行解釋,直到機器懂得執行你的指令,執行完再輸出你要的結果。

所以通俗地說,就是這樣。


分享到:


相關文章: