一、處理器簡介
處理器一般指中央處理器。中央處理器(CPU,Central Processing Unit)是一塊超大規模的集成電路,是一臺計算機的運算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計算機指令以及處理計算機軟件中的數據。
中央處理器主要包括運算器(算術邏輯運算單元,ALU,Arithmetic Logic Unit)和高速緩沖存儲器(Cache)及實現它們之間聯系的數據(Data)、控制及狀態的總線(Bus)。它與內部存儲器(Memory)和輸入/輸出(I/O)設備合稱為電子計算機三大核心部件。
處理器主要功能:
處理指令
英文Processing instructions;這是指控制程序中指令的執行順序。程序中的各指令之間是有嚴格順序的,必須嚴格按程序規定的順序執行,才能保證計算機系統工作的正確性。
執行操作
英文Perform an action;一條指令的功能往往是由計算機中的部件執行一系列的操作來實現的。CPU要根據指令的功能,產生相應的操作控制信號,發給相應的部件,從而控制這些部件按指令的要求進行動作。
控制時間
英文Control time;時間控制就是對各種操作實施時間上的定時。在一條指令的執行過程中,在什么時間做什么操作均應受到嚴格的控制。只有這樣,計算機才能有條不紊地工作。
處理數據
即對數據進行算術運算和邏輯運算,或進行其他的信息處理。
其功能主要是解釋計算機指令以及處理計算機軟件中的數據, 并執行指令。在微型計算機中又稱微處理器,計算機的所有操作都受CPU控制,CPU的性能指標直接決定了微機系統的性能指標。CPU具有以下4個方面的基本功能:數據通信,資源共享,分布式處理,提供系統可靠性。運作原理可基本分為四個階段:提取(Fetch)、解碼(Decode)、執行(Execute)和寫回(Writeback)。
處理器工作過程:
CPU從存儲器或高速緩沖存儲器中取出指令,放入指令寄存器,并對指令譯碼。它把指令分解成一系列的微操作,然后發出各種控制命令,執行微操作系列,從而完成一條指令的執行。指令是計算機規定執行操作的類型和操作數的基本命令。指令是由一個字節或者多個字節組成,其中包括操作碼字段、一個或多個有關操作數地址的字段以及一些表征機器狀態的狀態字以及特征碼。有的指令中也直接包含操作數本身。
提取
第一階段,提取,從存儲器或高速緩沖存儲器中檢索指令(為數值或一系列數值)。由程序計數器(Program Counter)指定存儲器的位置。(程序計數器保存供識別程序位置的數值。換言之,程序計數器記錄了CPU在程序里的蹤跡。)
解碼
CPU根據存儲器提取到的指令來決定其執行行為。在解碼階段,指令被拆解為有意義的片段。根據CPU的指令集架構(ISA)定義將數值解譯為指令。一部分的指令數值為運算碼(Opcode),其指示要進行哪些運算。其它的數值通常供給指令必要的信息,諸如一個加法(Addition)運算的運算目標。
解碼線路
執行
在提取和解碼階段之后,緊接著進入執行階段。該階段中,連接到各種能夠進行所需運算的CPU部件。
例如,要求一個加法運算,算術邏輯單元(ALU,Arithmetic Logic Unit)將會連接到一組輸入和一組輸出。輸入提供了要相加的數值,而輸出將含有總和的結果。ALU內含電路系統,易于輸出端完成簡單的普通運算和邏輯運算(比如加法和位元運算)。如果加法運算產生一個對該CPU處理而言過大的結果,在標志暫存器里可能會設置運算溢出(Arithmetic Overflow)標志。
寫回
最終階段,寫回,以一定格式將執行階段的結果簡單的寫回。運算結果經常被寫進CPU內部的暫存器,以供隨后指令快速存取。在其它案例中,運算結果可能寫進速度較慢,但容量較大且較便宜的主記憶體中。某些類型的指令會操作程序計數器,而不直接產生結果。這些一般稱作“跳轉”(Jumps),并在程式中帶來循環行為、條件性執行(透過條件跳轉)和函式。許多指令會改變標志暫存器的狀態位元。這些標志可用來影響程式行為,緣由于它們時常顯出各種運算結果。例如,以一個“比較”指令判斷兩個值大小,根據比較結果在標志暫存器上設置一個數值。這個標志可藉由隨后跳轉指令來決定程式動向。在執行指令并寫回結果之后,程序計數器值會遞增,反覆整個過程,下一個指令周期正常的提取下一個順序指令。
二、內核簡介
內核是操作系統最基本的部分。它是為眾多應用程序提供對計算機硬件的安全訪問的一部分軟件,這種訪問是有限的,并且內核決定一個程序在什么時候對某部分硬件操作多長時間。內核的分類可分為單內核和雙內核以及微內核。嚴格地說,內核并不是計算機系統中必要的組成部分。
內核的優點:
抽象隱藏
內核提供一種硬件抽象的方法來完成對硬件操作,因為這些操作是非常復雜的,硬件抽象隱藏了復雜性,為應用軟件和硬件提供了一套簡潔,統一的接口,使程序設計更為簡單。
源代碼管理
歷史上,從來沒有出現過用于Linux內核的正式的源代碼管理或修正控制系統。實際上,很多開發者實現了他們自己的修正控制器,但是并沒有官方的LinuxCVS檔案庫,讓LinusTorvalds檢查加入代碼,并讓其他人可以由此獲得代碼。修正控制器的缺乏,常常會使發行版本之間存在“代溝”,沒有人真正知道加入了哪些改變,這些改變是否能很好地融合,或者在即將發行的版本中哪些新內容是值得期待的。通常,如果更多的開發者可以像了解他們自己所做的改變一樣了解到那些變化,某些問題就可以得到避免。
非常有必要使用一個實時的、集中的檔案庫來保存對Linux內核的最新更新。每一個被內核接受的改變或者補丁都被作為一個改變集被追蹤。終端用戶和開發者可以保存他們自己的源文件檔案庫,并根據需要可以通過一個簡單的命令用最新的改變集進行更新。對開發者來說,這意味著可以始終使用最新的代碼拷貝。測試人員可以使用這些邏輯的改變集合來確定哪些變化導致了問題的產生,縮短調試所需要的時間。甚至那些希望使用最新內核的用戶也可以直接利用實時的、集中的檔案庫,因為一旦他們所需要的部件或缺陷修復加入到內核中,他們就可以馬上進行更新。當代碼融合到內核時,任何用戶都可以提供關于這些代碼的即時反饋和缺陷報告。
并行開發
隨著Linux內核的成長,變得更加復雜,而且吸引更多開發者將注意 力集中到內核的特定方面的專門開發上來,出現了另一個開發Linux方法的有趣改變。在2.3內核版本的開發期間,除了由LinusTorvalds發行的主要的一個內核樹之外,還有一些其他的內核樹。
在2.5的開發期間,內核樹出現了爆炸式的增長。由于使用源代碼管理工具可以保持開發的同步并行進行,這樣就可能實現開發的部分并行化。為了讓其他人在他們所做的改變被接受之前可以進行測試,有一些開發需要并行化。那些保持自己的樹的內核維護者致力于特定的組件和目標,比如內存管理、NUMA部件、改進擴展性和用于特定體系結構的代碼,還有一些樹收集并追蹤對許多小缺陷的糾正。
這種并行開發模型的優點是,它使得需要進行重大改變的開發者,或者針對一個特定的目標進行大量類似改變的那些開發者可以自由地在一個受控環境中開發,而并不影響其他人所用內核的穩定性。當開發者完成工作后,他們可以發布針對Linux內核當前版本的補丁,以實現到此為止他們所完成的改變。這樣,社區中的測試人員就可以方便地測試這些改變并提供反饋。當每一部分都被證明是穩定的之后,那些部分可以單獨地,或者甚至同時全部地,融合到主要Linux內核中。
代碼覆蓋分析
新工具為內核提供了代碼覆蓋分析的功能。覆蓋分析表明,在一個給定的測試運行時,內核中哪些行代碼被執行。更重要的是,覆蓋分析提示了內核的哪些部分還根本沒有被測試到。這個數據是重要的,因為它指出了需要再編寫哪些新測試來測試內核的那些部分,以使內核可以得到更完備的測試。
大量信息
在為將來的2.6Linux內核進行開的過程中,除了這些自動化的信息管理方法之外,開放源代碼社區的不同成員還收集和追蹤了數量驚人的信息。
例如,在KernelNewbies站點上創建了一個狀態列表,來保持對已經提出的內核新部件的追蹤。這個列表包含了以狀態排序的條目,如果它們已經完成了,則說明它們已經包含在哪個內核中,如果還沒有完成,則指出還需要多長時間。列表上很多條目的鏈接指向大型項目的Web站點,或者當條目較小時,鏈接指向一個解釋相應部件的電子郵件信息的拷貝。
三、芯片簡介
芯片,又稱微電路(microcircuit)、微芯片(microchip)、集成電路(英語:integrated circuit, IC)。是指內含集成電路的硅片,體積很小,常常是計算機或其他電子設備的一部分。
芯片的制造過程:
1、芯片的原料晶圓
晶圓的成分是硅,硅是由石英沙所精練出來的,晶圓便是硅元素加以純化(99.999%),接著是將這些純硅制成硅晶棒,成為制造集成電路的石英半導體的材料,將其切片就是芯片制作具體所需要的晶圓。晶圓越薄,生產的成本越低,但對工藝就要求的越高。
2、晶圓涂膜
晶圓涂膜能抵抗氧化以及耐溫能力,其材料為光阻的一種。
3、晶圓光刻顯影、蝕刻
該過程使用了對紫外光敏感的化學物質,即遇紫外光則變軟。通過控制遮光物的位置可以得到芯片的外形。在硅晶片涂上光致抗蝕劑,使得其遇紫外光就會溶解。這時可以用上第一份遮光物,使得紫外光直射的部分被溶解,這溶解部分接著可用溶劑將其沖走。這樣剩下的部分就與遮光物的形狀一樣了,而這效果正是我們所要的。這樣就得到我們所需要的二氧化硅層。
4、摻加雜質
將晶圓中植入離子,生成相應的P、N類半導體。
具體工藝是是從硅片上暴露的區域開始,放入化學離子混合液中。這一工藝將改變攙雜區的導電方式,使每個晶體管可以通、斷、或攜帶數據。簡單的芯片可以只用一層,但復雜的芯片通常有很多層,這時候將這一流程不斷的重復,不同層可通過開啟窗口聯接起來。這一點類似多層PCB板的制作原理。 更為復雜的芯片可能需要多個二氧化硅層,這時候通過重復光刻以及上面流程來實現,形成一個立體的結構。
5、晶圓測試
經過上面的幾道工藝之后,晶圓上就形成了一個個格狀的晶粒。通過針測的方式對每個晶粒進行電氣特性檢測。一般每個芯片的擁有的晶粒數量是龐大的,組織一次針測試模式是非常復雜的過程,這要求了在生產的時候盡量是同等芯片規格構造的型號的大批量的生產。數量越大相對成本就會越低,這也是為什么主流芯片器件造價低的一個因素。
6、封裝
將制造完成晶圓固定,綁定引腳,按照需求去制作成各種不同的封裝形式,這就是同種芯片內核可以有不同的封裝形式的原因。比如:DIP、QFP、PLCC、QFN等等。這里主要是由用戶的應用習慣、應用環境、市場形式等外圍因素來決定的。
7、測試、包裝
經過上述工藝流程以后,芯片制作就已經全部完成了,這一步驟是將芯片進行測試、剔除不良品,以及包裝。
四、處理器,內核,芯片三個概念的區別
芯片是最大的統稱,只要是包含了各種半導體元件的集成電路都是芯片。
處理器是芯片的一種,指可以執行程序的邏輯機器。電腦里用的CPU其實名字是中央處理器,是處理器的一種。其他還可以有諸如圖像處理器,數字信號處理器等。
內核有多種概念,在計算機硬件方面的內核指處理器的內部核心,包裝在一個元件中的獨立處理單元,稱為core。在計算機軟件方面指操作系統最基本的部分,負責管理系統資源和提供對系統資源的訪問,稱為kernel。芯片包含了CPU 但是工作方式不同 芯片代替不了CPU 因為CPU內部電路都是很多晶體管組成
-
處理器
+關注
關注
68文章
19348瀏覽量
230260 -
芯片
+關注
關注
456文章
50950瀏覽量
424736 -
內核
+關注
關注
3文章
1376瀏覽量
40319
發布評論請先 登錄
相關推薦
評論