學習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的效率是一樣的。 4月嵌入式、物聯網,智能硬件新班多多,歡迎有志青年們來信盈達學習技術, 所有課程包學會!包就業!!包你滿意!!! 信盈達開設以下課程,所有課程均可免費體驗:(周末班,全日制班均可) 一.嵌入式arm+linux (多項目,重實戰,保就業) 二.單片機項目實戰班(完成了一個單片機項目你還想做第二個) 三.JAVA (助你升職加薪,走向人生巔峰) 四.電子設計班(電子行業的入門基礎課程) 五.PCB畫板班 (硬件工程師必會的電路板繪制課程) 六.Cortex m4 系列課程 (時下中低端產品的主流開發芯片) 七.Cortex A9,linux驅動 (開發高端產品,拿高工資) 想了解更多的課程,歡迎咨詢宋老師QQ3524659088 Tel17317951908 深圳 上海 北京 廣州 南京 南寧 鄭州 濟南同步學習 |