2.1.1 通用處理器——ARM
主流的通用處理器(GPP)多采用SoC(片上系統)的芯片設計方法,集成了各種功能模塊,每一種功能都是有硬件描述語言設計程序,然后在SoC內由電流實現的。
中央處理器的體系結構可以分為兩類:
程序指令存儲器和數據存儲器合并在一起的存儲器結構。程序指令存儲地址和數據存儲地址指向同一存儲器的不同物理位置,因此程序指令和數據的寬度相同。
2.哈弗結構。
程序指令和數據分開存儲,質量和數據可以有不同的數據寬度。此外,哈弗結構還采用了獨立的程序總線和數據總線,分別作為CPU和每個存儲器之間的專用通信路徑,具有較高的執行效率。
3.改進的哈弗結構
兩條總線有程序存儲器和數據存儲器分時共用。使用用共用數據總線來完成程序存儲模塊或數據存儲模塊與CPU之間的數據傳輸,共用地址總線來尋址程序和數據。
指令集角度來分,中央處理器有兩類:
1. RISC——精簡指令集計算機
盡量減少指令集、指令單周期執行,但是目標代碼會更大。
2. CISC——復雜指令集計算機
增強指令的能力,減少目標代碼的數量,但是指令復雜,指令周期長。
2.1.2 數字信號處理器——DSP
針對通信、圖像、語音和視頻處理等領域的算法而設計的。
分類:
1. 定點DSP
定點運算模擬浮點運算
2. 浮點DSP
硬件實現浮點運算,單周期完成。浮點運算處理程序高于定點DSP。
分類:
只讀存儲器(ROM)、閃存(Flash)、隨機存取存儲器(RAM)、光/磁介質存儲器。
ROM:
ROM、可編程ROM(PROM)、可擦除可編程ROM(EPROM)和電可擦除可編程ROM(EEPROM)。
Flash:
NOR(或非)、NAND(與非)
NOR Flash和CPU的結構屬于典型的類SRAM接口,不需要額外的控制電流。特點是可芯片內執行(eXecute In Place, XIP),程序可以在NOR內直接運行。
NAND Flash 和CPU的接口必須由相應的控制電路進行轉換,也可以通過地址線或GPIO產生NAND Flash接口的信號。NAND Flash以塊方式進行訪問,不支持芯片內執行。
Flash的編程原理都是只能將1寫成0,而不能將0寫成1.因此在Flash編程之前,必須將對應的塊擦除,擦除的過程就是把所有位寫成1的過程。塊內的所有字節變為0xFF。
RAM:
靜態RAM(SRAM)、動態RAM(DRAM)。
2.3.1 串口
RS-232 、RS-422、RS-485都是串行數據接口標準。
2.3.2 iic
I2C(內置集成電路)總線是由Philips 公司開發的兩線式串行總線
2.3.3 spi
SPI(Serial Peripheral Interface,串行外設接口)總線系統是一種同步串行外設接口,它可以使CPU 與各種外圍設備以串行方式進行通信以交換信息。
2.3.4 usb
USB(通用串行總線)是Intel、Microsoft 等廠商為解決計算機外設種類的日益增加與有限的主板插槽和端口之間的矛盾而于1995 年提出的,它具有數據傳輸率高、易擴展、支持即插即用和熱插拔的優點,目前已得到廣泛應用。
2.3.5 以太網接口
以太網接口由MAC(以太網媒體接入控制器)和PHY(物理接口收發器)組成。MAC 和PHY 之間采用MII(媒體獨立接口)連接。
2.3.6 pci和pci-e
PCI(外圍部件互連)是由Intel 于1991 年推出的一種局部總線,作為一種通用的總線接口標準,它在目前的計算機系統中得到了非常廣泛應用。
2.3.7 sd和sdioSD(Secure Digital)是一種關于Flash 存儲卡的標準,也就是一般常見的SD 記憶卡,在設計上與MMC(Multi-Media Card)保持了兼容。SDHC(SD High Capacity)是大容量SD 卡,支持的容量為32GB。2009 年發布的SDXC(SD eXtended Capacity)則支持2TB 大小的容量。
SDIO(Secure Digital Input and Output Card,安全數字輸入輸出卡)在SD 標準的基礎上,定義了除存儲卡以外的外設接口。
eMMC(EmbeddedMultiMediaCard)是當前移動設備本地存儲的主流解決方案,目的在于簡化手機存儲器的設計。eMMC就是NANDFlash、閃存控制芯片和標準接口封裝的集合,它把NAND和控制芯片直接封裝在一起成為一個多芯片封裝(Multi-Chip Package,MCP)芯片。
2.4 CPLD和FPGA
CPLD(復雜可編程邏輯器件)由完全可編程的與或門陣列以及宏單元構成。
對于驅動工程師而言,我們只需要這樣看待CPLD 和FPGA :如果它完成的是特定的接口和控制功能,我們就直接把它當成由很多邏輯門(與、非、或、D 觸發器)組成的可完成一系列時序邏輯和組合邏輯的ASIC ;如果它完成的是CPU 的功能,我們就直接把它當成CPU。
2.5 原理圖分析
2.6硬件時序分析
2.7 芯片手冊的閱讀方法
2.8儀器儀表的使用
萬用表、示波器、邏輯分析儀