學習ARM裸機,是一件復雜事情,入門的概念性和基礎性知識必須要了解到,以便于后面的知識的理解。 ARM概念 ARM首先是一個公司,這家公司設計CPU并向各個CPU制造商授權許可,所以ARM公司是一家CPU設計公司。同時,ARM也是ARM公司主導設計的CPU系列的簡稱。 ARM版本區分 ARM版本號可以分為三類: · 內核版本號,例如ARMv5,ARMv7,ARMv7a,ARMv8a…… · Soc版本號,例如Cortex-A8,Cortex-A9... · 芯片型號,例如2410,2440,6410,S5PV210... Soc Soc是System on Chip的簡寫,即片上系統。Soc主要包括了CPU中央處理器以及各種外設模塊,CPU和外設通過集成電路被安置在一個芯片中。 現在已經沒有純粹的CPU了,都是SoC ARM賣的內核其實就是CPU(當然還需要總線),各種外設是半導體廠商自己添加的。 單片機和嵌入式的區別 平臺區別: 主流的單片機平臺有51,PIC,STM32,AVR,MSP430, 主流的嵌入式平臺有ARM,PPC,MIPS 資源,價格,應用領域 單片機片上資源有限,價格低,應用領域大多為小家電,終端設備。 嵌入式片上資源豐富,價格高,應用領域廣泛,基本可以適用于任何領域。 開發模式 單片機一般都是裸機開發,程序規模較小,只有在比較高端的芯片上才會使用RTOS 嵌入式開發一般都會使用嵌入式系統 技術特征 單片機主要使用C語言和簡單的匯編,而且C語言和標準C略有不同,很少使用C語言的高級特性, 嵌入式比較復雜,一般會進行分層設計和開發,分為底層,應用層,不同的成冊可能使用不同的開發語言,例如C++與Java,較多使用C語言的高級特性 CPU設計原理和總線 CPU主要包括運算器,控制器,存儲器通過總線與Flash與內存連接。 總線就類似于CPU中的道路,數據通過總線在CPU和外設之間傳輸,CPU也通過內部總線與SOC中的其他外設連接,例如UART設備,內部總線由于在芯片內部,抗干擾能力強,運算速度更快。 總線分為兩種,地址總線和數據總線: 地址總線用于傳輸地址,CPU通過地址總線尋址,告訴設備要取的數據在哪個地址中,地址總線的位數決定了尋址范圍 數據總線用于傳輸數據,CPU通過數據總線與外部交換信息,將設備要的數據通過該總線發送給對方,數據總線的位數決定了CPU單次通信能交換的信息數量 總線的速度決定了CPU和外設互換信息的速度 CPU的地址總線和數據總線的位數可以不同,CPU的位數就指的是數據總線的位數 32位CPU的尋址范圍是4G所以最多支持4G內存,數據總線是32位的,那么傳輸一個int和傳輸一個char的效率是一樣的。 以下課程可免費試聽C語言、電子、PCB、STM32、Linux、FPGA、JAVA、安卓等。 想學習的你和我聯系預約就可以免費聽課了。 宋工企鵝號:35--24-65--90-88 Tel/WX:173--17--95--19--08 |