- 嵌入式Linux與物聯網軟件開發:ARM處理器開發自學教程
- 朱有鵬 韓霆編著
- 776字
- 2023-12-21 16:56:04
1.4 CPU和SoC的區別及外圍設備的概念
1.4.1 CPU和SoC的區別
CPU是計算機的運算和控制核心。CPU包括兩部分,一部分是運算器,另一部分是控制器。
單片系統(System on Chip,SoC)是用于完成一個具體的功能的集合。把系統的功能集成在一個芯片上就是SoC,其中包含CPU、存儲器、各種外圍設備(又稱外部設備,簡稱外設)等。
下面通過圖1-1、圖1-2來直觀地了解CPU與SoC的區別。

圖1-1

圖1-2
早期的系統如圖1-1所示,底板由一塊印制電路板(Printed Circuit Board,PCB)組成,這個系統全部的功能都集中在一塊PCB上實現。在芯片剛研制出來的時候,由于當時半導體工藝的限制,其集成度是非常低的,內存和外圍設備等都沒有集成到芯片內部,想要組成一個系統,就需要將CPU、內存、通信接口等通過PCB走線在PCB上實現,所以這種系統看起來會很龐大。我們見到的老式電子設備上面就有非常多的這樣的芯片,這其實就是在PCB上實現的。
SoC如圖1-2所示,底板由一個芯片組成,這個系統是在一個芯片上實現的。隨著半導體工藝的不斷進步,我們可以把之前放在PCB上的許多芯片都集成在一個芯片里,然后形成能實現具體功能的SoC。
以上就是CPU與SoC最本質的差別。隨著時代的發展,現在市場上已經幾乎沒有純粹的CPU了,大多都是SoC。
1.4.2 外圍設備
外圍設備簡稱外設,一般是指連在CPU以外的硬件設備。這是在CPU發展過程中遺留下來的概念。芯片處于CPU階段的時候,系統需要外接各種設備(如串行端口,簡稱串口)才能實現功能,所以這些CPU之外的設備統稱為外設。雖然現在芯片的發展處于SoC階段,大部分實現系統功能的設備都集成到了芯片內部,但是這個概念延續了下來,所以我們一般把集成到芯片內部的設備稱為“內部外設”。現在仍有在外部的外設,例如網卡、音頻編解碼器等,我們一般把它們稱為“外部外設”。目前芯片的發展方向之一就是將所有外設集成到內部。
學習裸機開發就是學習SoC的內核(CPU,表現為匯編指令集)和各種外設的應用,我們會在下文為大家詳細介紹各種外設。