1. 程式人生 > >嵌入式:系統Cpu和記憶體和cache

嵌入式:系統Cpu和記憶體和cache

馮羅伊曼結構:記憶體把地址給cpu,cpu到記憶體取資料
哈佛結構:記憶體分成程式記憶體和資料記憶體,cpu需要指令,先到程式記憶體找。不能自己修復指令,可以同時訪問程式和資料,通過不同埠,可以實現更大頻寬。資料流更大。
ARM(RISC)指令集:
x86(CISC) 指令集:
彙編:與機器指令通常一對一,ADR ,LDR,MOV,AND,STR,ORR,BLE,CMP
偽指令:不能一一對應機器指令
armV7Cortex4:指令語法
大端小端
arm狀態位:psr暫存器 ,n負z零c進v溢q飽
arm資料指令
資料操作變化:asr
arm比較指令:cmp,cmn
arm adr偽指令:
arm控制流:
io裝置的暫存器:
記憶體對映io:peek讀,poke寫
io訪問方式

: 輪詢,uart非同步,

caches和cpus:cpu->cache 控制器->cache
->memory
指令Cache、資料Cache和資料指令混合cache
memory對映到cache中:全相聯,直接對映,路組相聯
多級chche訪問時間:
替換策略:

寫操作:通寫,cache和memory同時寫入,回寫,只有當cache退出時候才寫入memory
儲存管理單元:
地址轉換:段頁地址, TLB
虛擬記憶體
Cortex-M4採用三級流水,取指令 譯碼 執行

延時,吞吐量,

32位系統,能訪問4G記憶體,系統佔用1G,程式自己1G,能用的只有2G ,實際最大隻能1.2G,
cpu,ram,rom,計時器,匯流排,

匯流排:就是電線,cpu連結硬碟的電線,等,
匯流排協議:匯流排控制器控制匯流排,給每一根電線分配地址,便於控制,例如usb bus,彈出usb 行動硬碟。

usb2只有兩根電線,usb3有4根電線,
USB Type-C和Micro-B資料介面,實際上,只是一樣的介面,最多4根線,

時序圖

DMA暫存器:直接儲存器訪問,
計算平臺:鍵盤,按下鍵電流聯通,按鍵消抖動,
led燈,0.7V加電阻減小電壓,
顯示器,7段數碼管,,幀緩衝
觸控式螢幕,包含輸入輸出,上層是adc
定時器,週期性
計時器。,非同步
看門狗,watchdog從timer,監視定時器,一旦觸發,將復位。
ad/da,輸入輸出裝置,訊號採集是模擬轉數字ad,