指示
您可以在 http://arm1.s3f.ru 以及本地觀看模擬器(為此,複製儲存庫並使用儲存庫根目錄中的任何本機 Web 伺服器)。
若要捲動,請使用 WASD,要縮放,請使用滾輪或 Z/X。不幸的是,目前無法進行拖放操作。
建置並運行程式碼
程式碼範例位於 https://github.com/qanper/arm1_playground。
收集的帶有電傳打字機輸出和演示的範例位於此存儲庫中。
對於組裝,您將需要 arm-none-eabi 工具鏈。
在p_c
分支中有一個彙編 C 程式碼的範例和電傳打字機輸出的示範。 (此組件也可從連結 http://arm1.s3f.ru/tty_example.bin 取得)。使用 make 進行構建,然後從模擬器頁面中選擇 build/test.bin 檔案。使用向上箭頭按鈕重新啟動處理器,然後按播放按鈕。我建議按快速按鈕以加快渲染速度(在這種情況下,模擬運行不會超時)。
p_arch
分支包含演示主處理器節點操作的彙編程式碼範例。取消對感興趣標籤的調用的註釋並使用build.sh
進行構建,然後將 bin 檔案上傳到模擬器頁面上。
在master
分支中有一個帶有可視化功能的演示範例(打開“顯示”選項卡即可查看)。該組件也可以在 http://arm1.s3f.ru/demo_example.bin 上找到
推介會
可在儲存庫和 http://arm1.s3f.ru/presentation.pdf 中取得
來源清單
Wikichip 上有關架構的基本文章:https://en.wikichip.org/wiki/acorn/microarchitectures/arm1
處理器說明:http://www.bitsavers.org/pdf/acorn/ARM_Evaluation_Sys_Aug86.pdf
Ken Shirriff 的一堆文章 http://www.righto.com/search/label/arm?max-results=80
- 關於編碼器(http://www.righto.com/2016/01/more-arm1-processor-reverse-engineering.html)和計數器(http://www.righto.com/2016/01/counting-bits ) - in-hardware-reverse.html) 用於 ldm/stm 操作;
- 關於條件執行控制邏輯(它接受標誌並接受一條指令並授予執行權限):http://www.righto.com/2016/01/conditional-instructions-in-arm1.html,這裡關於標誌的形成(也關於操作模式):http://www.righto.com/2016/02/the-arm1-processors-flags-reverse.html
- 指令排序器/解碼器:http://www.righto.com/2016/02/reverse-engineering-arm1-instruction.html
- 微碼 http://www.righto.com/2016/02/reverse-engineering-arm1-processors.html
來自 Dave's Hacks 的大量文章 http://daveshacks.blogspot.com/search/label/arm?max-results=20
- ALU http://daveshacks.blogspot.com/2015/12/inside-alu-of-armv1-first-arm.html
- 關於逆變器中的暫存器、暫存器管理和短路的設計http://daveshacks.blogspot.com/2015/12/inside-armv1-register-bank.html http://daveshacks.blogspot.com/2015/12 / inside-armv1-register-bank-register.html
- 資料匯流排佈局 http://daveshacks.blogspot.com/2015/12/inside-armv1-read-bus.html http://daveshacks.blogspot.com/2016/01/inside-armv1-read-bus-b- alu-輸出-bus.html
- Shift控制圖及相關指令http://daveshacks.blogspot.com/2016/01/inside-armv1-decoding-barrel-shifter.html
- ALU控制電路http://daveshacks.blogspot.com/2016/01/inside-arm1v-alu-control-logic.html
- 有關微碼的更多資訊:http://daveshacks.blogspot.com/2016/01/inside-armv1-instruction-decoding-and.html
感激
這是我的 http://www.visual6502.org/sim/varm/armgl.html 模擬器的分支。我對Visual 6502
團隊的開發表示非常感謝。
如果您也對處理器模擬印象深刻,您可以在http://visual6502.org/donate_cash.html 頁面上向這些人捐款。