- 嵌入式C語言自我修養:從芯片、編譯器到操作系統
- 王利濤編著
- 649字
- 2021-04-30 22:14:28
第2章 計算機體系結構與CPU工作原理
嵌入式開發很大一部分工作跟底層緊密相關,如系統移植、BSP開發、驅動開發等,和芯片、硬件打交道的地方比較多。筆者認為,要想成為一名真正的嵌入式工程師,除了要精通C語言編程,還要對計算機原理和系統結構、CPU工作原理、ARM匯編語言、硬件電路等基礎知識和理論有一定的掌握。掌握了CPU的工作原理,可以更好地理解指令到底是如何執行的;掌握計算機的工作原理和系統結構,可以更好地理解程序的編譯、鏈接、安裝和運行機制;掌握一門匯編語言,可以從底層的角度去看C語言,可以幫助我們更好地理解C語言。我們編寫的C程序,最終都會轉換成CPU所支持的二進制指令,而匯編語言又是這些指令集的助記符,通過反匯編代碼,我們可以更加深刻地理解編譯器的特性和C語言的語法。如果你有幸在芯片原廠從事嵌入式研發工作,可能還要和一幫IC工程師、硬件工程師打交道,和他們一起解決芯片、硬件電路中的各種問題。為了更好地和他們溝通,你可能還需要對半導體知識、IC行業的專業術語有一定的了解,如邏輯綜合、前端設計、后端設計、仿真驗證、tap-out、Die等。
從事嵌入式開發的朋友可能來自不同專業,專業背景和知識體系各不相同。基于這個現實背景,本章打算從半導體工藝開始,給大家科普一下CPU的制造過程,科普一下一款處理器是如何從一堆沙子變成市場上銷售的芯片的,以及CPU的工作原理和計算機體系結構的相關知識。預期目標是希望通過本章的學習,讓大家對半導體工藝、芯片、CPU、指令集、微架構、計算機系統架構、總線與地址等有一個完整的認知框架,為后續的學習打下基礎。
推薦閱讀