2018-2019-1 20165330 《信息安全系統設計基礎》第四周學習總結
阿新 • • 發佈:2018-10-21
掌握 體系結構 可見 硬件 move 指示 關系 not 邏輯門
學習內容總結
學習目標
- 了解ISA抽象的作用
- 掌握ISA,並能舉一反三學習其他體系結構
學習內容
Y86-64指令
- 程序員可見狀態
- 15個程序寄存器(RF):每個寄存器存儲一個64位的字
- 3個條件碼(CC):保存最近的算術或邏輯指令所造成影響的有關信息
- ZF:零標誌(操作結果為0 ZF=1;結果不為0 ZF=0)
- SF:符號標誌(結果最高位為0 SF=0;結果最高位為1 SF=1)
- OF:溢出標誌(對有符號 結果無溢出 OF=0;結果溢出計算出錯 OF=1)
- 程序狀態(Stat)
數值 名稱 含義 1 AOK 正常操作 2 HLT 遇到執行halt指令 3 ADR 遇到非法地址 4 INS 遇到非法指令 - 程序計數器(PC):存放當前指令的地址
- 內存(DMEM):是很大的字節數組,存放程序或數據
- 15個程序寄存器(RF):每個寄存器存儲一個64位的字
- Y86-64指令
- Y86-64程序寄存器標識符
- 存儲在CPU的一個寄存器文件中
- 不應訪問任何寄存器:用
0xF
表示
- Y86-64指令編碼
- 編碼長度:1字節~10字節
- 編碼組成:
一個單字節的指令指示符
+一個單字節的寄存器指示符
+一個八字節的常數字
- 整數操作指令
OPq
:addq
subq
andq
xorq
- 跳轉指令
jXX
:jmp
jle
jl
je
jne
jge
jg
- 傳送指令
comvXX
:comvle
comvl
comove
cmovne
cmovge
comovq
- 字段fn(功能碼)指明是某個整數操作、數據傳送條件或是分支條件
- Y86-64程序寄存器標識符
邏輯設計與硬件控制語言HCL
- HCL表達式
- AND
&&
、OR||
、NOT!
- 與、或、非三種邏輯門可以用一種與非門或者或非門實現
- AND
- HCL整數表達式
- 情況表達式格式:
[ select 1: expr 1 select 2: expr 2 . select k: expr k ]
- 集合關系:
iexp in{ iexp1,iexp2,...iexpk }
- 算術/邏輯單元(ALU)
Y86-64的順序實現
- 將處理組織成階段
- 取值fetch-->譯碼decode-->執行execute-->訪存memory-->寫回write back-->更新PC update
SEQ硬件結構
- 白色方框表示時鐘寄存器
- 淡藍色方框表示硬件單元
- 灰色圓角矩形表示控制邏輯塊
- 白色圓圈中表示線路的名字
- 中等粗線表示寬度為字長的數據連接
- 細線表示寬度為字節或更窄的數據連接
- 虛線表示單個位的連接
2018-2019-1 20165330 《信息安全系統設計基礎》第四周學習總結