iT邦幫忙

risc-v相關文章
共有 131 則文章
鐵人賽 Software Development DAY 22

技術 予焦啦!Golang 執行緒與作業系統執行緒

本節是以 Golang 上游 6a79f358069195e1cddb821e81fab956d9a0c7d1 為基準做的實驗 予焦啦!昨日以前的第三章解決...

鐵人賽 Software Development DAY 21

技術 予焦啦!實作上下文機制

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!今天我們就來驗收前兩...

鐵人賽 Software Development DAY 20

技術 予焦啦!Golang 當中的訊號(signal)機制

予焦啦!正如 Golang 自己維護了記憶體管理機制(競技場、記憶體抽象層、垃圾回收、...)般,讓 ethanol 核心取用 RISC-V 硬體功能的部分可以...

鐵人賽 Software Development DAY 19

技術 予焦啦!scratch 控制暫存器

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!上下文(contex...

鐵人賽 Software Development DAY 18

技術 予焦啦!RISC-V 的計時器中斷機制

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!在前兩天的斷章當中,...

鐵人賽 Software Development DAY 17

技術 予焦啦!問題分析

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!正式進入下半場之前,...

鐵人賽 Software Development DAY 16

技術 予焦啦!參數與環境變數

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!經過了第零章確保開發...

鐵人賽 Software Development DAY 15

技術 予焦啦!Golang 記憶體初始化

本節是以 Golang 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!在昨日基本地完成 sysA...

鐵人賽 Software Development DAY 14

技術 予焦啦!Ethanol 記憶體映像規劃

本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 本節所對應的修補當中,有些...

鐵人賽 Software Development DAY 8

技術 RISC V::中斷與異常處理 -- PLIC 介紹

本文目標 認識 PLIC, IRQ 與 ISR 綜合先前所學,應用在實際案例上 進入正題 PIC PIC (Programmable Interrupt C...

鐵人賽 Software Development DAY 13

技術 予焦啦!裝置樹(DTB)解析

本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!昨日打通了 thro...

鐵人賽 Software Development DAY 7

技術 RISC V::中斷與異常處理 -- 中斷篇

你可曾想過現今的電腦是如何同時運行多個應用程式?又或是單核心電腦如何做到多工?為銜接之後的議題,我們需要先認識 RISC-V CPU 中的中斷機制。 複習: C...

鐵人賽 Software Development DAY 6

技術 RISC V::中斷與異常處理 -- 異常篇

一般在修讀 Operating System 時,都會學習到 Interrupt 的概念,此外,電腦在運作時也會碰到大大小小的問題。你可曾好奇電腦是如何排除這些...

鐵人賽 Software Development DAY 12

技術 予焦啦!虛擬記憶體啟用後的除錯

本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!昨日啟用了虛擬位址的...

鐵人賽 Software Development DAY 11

技術 予焦啦!在 ethanol 中啟用虛擬記憶體

本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!昨日直接瞄準一組虛擬...

鐵人賽 Software Development DAY 5

技術 RISC V::RV32I 指令介紹

本文目標 學習 RV32I 進入正題 RV32I 是 32-bit 的基本整數指令集,該指令集會使用到 32 個暫存器 (x0-x31),且一共有 47 道...

鐵人賽 Software Development DAY 4

技術 RISC V::關於基本暫存器

本文目標 認識暫存器 建立 Callee save 與 Caller save 的觀念 了解呼叫慣例 進入正題 下圖列舉了 RISC-V 處理器中的通用暫存...

鐵人賽 Software Development DAY 10

技術 予焦啦!RISC-V 虛擬記憶體機制簡說

本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!昨日最後觀察到的錯誤...

鐵人賽 Software Development DAY 4

技術 組譯器與連結器 (下)

本文目標 了解連結器與常見的連結方式 Lazy-binding 建立對 elf file format 的基本認知 連結器的用途 連結器讓我們能夠對各個獨立...

鐵人賽 Software Development DAY 9

技術 予焦啦!BSS 初始化

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!昨日不幸地卡在一個...

鐵人賽 Software Development DAY 3

技術 組譯器與連結器 (上)

本文目標 理解 RISC-V 基礎指令集 假指令 (pseudo instruction)、擴展指令集 組譯器與組合語言 組譯器 組譯器 (Assemble...

鐵人賽 Software Development DAY 8

技術 予焦啦!使用 GDB 推進

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!回顧昨日,我們從...

鐵人賽 Software Development DAY 1

技術 透過 RISC-V 模擬器搞懂指令管線化

本文目標 理解處理器在各個 stage 會有何種行為 Pinpline 的概念 現代處理器面臨的挑戰 追蹤原始碼 進入正題 本篇文章藉由閱讀 rv32emu...

鐵人賽 Software Development DAY 1

技術 一次搞懂 ISA、CISC 與 RISC

1945 年 6 月 30 日,Von Neumann 與他的工作夥伴因為曼哈頓工程中使用到了大量的運算,所以採用了當時最先進的電腦 Mark I 和 ENIA...

鐵人賽 Software Development DAY 1

技術 參賽前言 & 系列文規劃

大家好,我是 Ian,因為一些原因,我在年初的時候接觸到嵌入式系統開發與系統軟體實作。在這一年來也寫了許多文章記錄學習歷程,希望這篇系列文可以激起讀者對 CS...

鐵人賽 Software Development DAY 7

技術 予焦啦!前期分析

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 回顧昨日,我們發現過去一直...

鐵人賽 Software Development DAY 6

技術 予焦啦!使用暫存器除錯

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!回顧第零章,我們有...

鐵人賽 Software Development DAY 5

技術 予焦啦!支援 RISC-V 權限指令與暫存器

本節是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c854d2a 為基準做的實驗。 予焦啦!回顧昨日,當我們期...

鐵人賽 Software Development DAY 3

技術 予焦啦!產出可執行檔

本節是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c854d2a 為基準做的實驗。 本日的內容資料很多,但或...