定義 ISA 包含定義以下東西:
- 處理器狀態: 暫存器和內存。暫存器一般又分通用暫存器、條件碼、程式計數器和狀態碼。狀態碼紀錄程序是正常運行還是有異常發生。
- 指令集和其編碼: 指令集定義的指令操作處理器狀態。一般有底下幾類: 傳送 (move),算術運算,跳轉,條件傳送,call,棧操作指令 (push/pop) 和 halt。
- 編程規範: 例如 calling convention。
- 異常處理
$ wget http://csapp.cs.cmu.edu/public/sim.tar; tar xvf sim.tar; cd sim # 註解掉 Makefile 裡面底下幾行,不用 GUI。 # TKLIBS=-L/usr/lib -ltk -ltcl # TKINC=-isystem /usr/include $ make
術語
-
- Branch Target Buffer (BTB)
- Return Address Stack (RAS)
-
-
- 去除指令之間的相依性。
-
- 負責 in-order commit。
-
- 處理器 (一般稱 IP)、內存和之間的連接 (interconnect)。
-
- ARM SOC Bus。
-
- 為 interconnect 的一種方式,有別於傳統的 bus,點和點之間用 switch 直接或間接互連。
-
- 點和點之間直接互連。比 NOC 耗錢,但較快速。
-
- MMU 是處理器內部的硬件,負責虛擬地址和物理地址的翻譯,同時也在 TLB 缺失的時候負責查詢頁表。
-
- Physically indexed, physically tagged (PIPT) caches
- Virtually indexed, virtually tagged (VIVT) caches
-
- Level-triggered
- Edge-triggered
-
During normal operation, the computer regularly restarts the watchdog timer to prevent it from elapsing, or "timing out". If, due to a hardware fault or program error, the computer fails to restart the watchdog, the timer will elapse and generate a timeout signal.
- 正常情況下,應該要重設 watchdog timer。如果因為軟硬體錯誤,導致 watchdog timer 未被重設,一定時間過後,watchdog timer 會發出 timeout signal,一般會導致系統重置 (reset)。