* [[http://blog.csdn.net/muxiqingyang/article/details/6627096|大话处理器]]
* [[http://www.morganclaypool.com/toc/cac/5/1|Synthesis Lectures on Computer Architecture]]
定義 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
====== 術語 ======
* [[http://blog.mcuol.com/User/AT91RM9200/Article/40353_1.htm|冯·诺依曼结构和哈佛结构]]
* [[wp>Program status word (PSW)]] 或稱 [[wp>Status register]]。
* [[wp>Branch predictor]]
* Branch Target Buffer (BTB)
* Return Address Stack (RAS)
* [[http://blog.csdn.net/muxiqingyang/article/details/6680315|《大话处理器》连载——微架构(9) 分支预测——以古为镜,可以知兴替]]
* [[wp>Out-of-order execution]]
* [[wp>Tomasulo algorithm]]
* [[wp>Register renaming]]
* 去除指令之間的相依性。
* [[wp>Reservation stations]]
* [[wp>Re-order buffer|Re-order buffer (ROB)]]
* 負責 in-order commit。
* [[wp>Memory disambiguation]]
* [[http://www.pcguide.com/ref/mbsys/cache/charTransactional-c.html|Non-Blocking Cache]]
* [[http://blog.csdn.net/muxiqingyang/article/details/6692735|《大话处理器》连载——微架构(12) 指令的相关]]
* [[wp>System-on-a-chip|System On Chip (SOC)]]
* 處理器 (一般稱 [[wp>Semiconductor intellectual property core|IP]])、內存和之間的連接 (interconnect)。
* [[wp>HyperTransport]]
* [[wp>Advanced Microcontroller Bus Architecture]]
* ARM SOC Bus。
* [[wp>Network On Chip|Network On Chip (NOC)]]
* 為 interconnect 的一種方式,有別於傳統的 bus,點和點之間用 switch 直接或間接互連。
* [[wp>Crossbar switch|Crossbar]]
* 點和點之間直接互連。比 NOC 耗錢,但較快速。
* [[wp>Memory management unit|Memory management unit (MMU)]]
* MMU 是處理器內部的硬件,負責虛擬地址和物理地址的翻譯,同時也在 TLB 缺失的時候負責查詢頁表。
* [[wp>CPU cache]]
* Physically indexed, physically tagged (PIPT) caches
* Virtually indexed, virtually tagged (VIVT) caches
* [[wp>Interrupt]]
* Level-triggered
* Edge-triggered
* [[wp>Watchdog timer]]
* 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.
* [[http://forum.eettaiwan.com/FORUM_POST_1000039157_1200047570_0.HTM?jumpto=view_welcomead_forum_1414998319962|請教一下Watch Dog!?]]
* 正常情況下,應該要重設 watchdog timer。如果因為軟硬體錯誤,導致 watchdog timer 未被重設,一定時間過後,watchdog timer 會發出 timeout signal,一般會導致系統重置 (reset)。
====== 文章 ======
* [[http://www.morganclaypool.com/toc/cac/5/1|Synthesis Lectures on Computer Architecture]]
====== 外部連結 ======
* [[http://csapp.cs.cmu.edu/|Computer Systems: A Programmer's Perspective]]
* [[http://csapp.cs.cmu.edu/public/students.html]]
* [[http://www.amazon.cn/Computers-as-Components-Second-Edition-Principles-of-Embedded-Computing-System-Design-Wolf-Wayne/dp/0123743974|Computers as Components, Second Edition: Principles of Embedded Computing System Design]]
* [[http://www.waynewolf.us/]]
* [[http://www.amazon.com/Computer-System-Design-System-Chip/dp/0470643366|Computer System Design: System-on-Chip]]
* [[http://www.csie.ntu.edu.tw/~hungsh/CA/ca.htm|計算機系統結構]]
* [[http://people.ee.duke.edu/~sorin/ece252/|Advanced Computer Architecture I]]
* [[http://booksite.mkp.com/9780123838728/index.php|Computer Architecture: A Quantitative Approach 5e]]
* [[http://www.tektalk.org/2011/10/04/%e5%bc%af%e6%9b%b2%e8%af%84%e8%ae%ba%e8%8d%a3%e8%aa%89%e5%87%ba%e5%93%81%ef%bc%9a%e3%80%8a%e6%b5%85%e8%b0%88cache-memory%e3%80%8b/|淺談 Cache Memory]]
* [[http://www.cast.org.cn/n35081/n11219166/n12620949/n12621051/13019136.html|The Godson Processors: Its Research, Development, and Contributions]]
* [[http://www.ltivs.ilc.edu.tw/kocp/|數位邏輯]]