iT邦幫忙

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

技術 Day 30 - 尾聲,以及完賽心得。

最後一天,如同昨天說的,今天至少會把IMA三個extension的test全部通過。 RV64M TEST首先我們先試著透過原先建立好的環境試著跑看看RV64M...

鐵人賽 Software Development DAY 29

技術 Day 29 - Debug, RV64I Test Pass

Regression tool modify & log system 昨天演到RV64I執行時有遇到諸多bug,我們重新修改debug log及scr...

鐵人賽 Software Development DAY 28

技術 Day 28 - 真正執行risc-v test、跑過第一支elf、及regression環境

今天的任務就是要把RISC-V Test跑起來,然後看有哪些錯誤。 RISC-V TEST Pass/Fail判斷 首先我們觀察RISC-V Test發現他最後...

鐵人賽 Software Development DAY 27

技術 Day 27 - RISC-V M Extension , 簡單來說...就是乘除

RISC-V M Extension 與昨天介紹的A Extension不同,M Extension很好理解,就是乘法和除法的指令。之前在介紹I-instruc...

鐵人賽 Software Development DAY 26

技術 Day 26 - RISC-V Atomic指令,確保數據一致的指令

RISC-V A-extension RISC-V的A-extension指的是atomic instruction extension,而atomic ins...

鐵人賽 Software Development DAY 23

技術 Day 23- System Instruction,與特權系統相關的指令們

System Instruction System Instruction指的是跟系統息息相關的指令,例如前面有敘述過的CSR指令,又或者是今天要介紹的ecal...

鐵人賽 Software Development DAY 12

技術 Day 12 - ELF Loader (1 / 2)

ELF今天要來實作ELF Loader,那什麼是ELF呢,我們又為什麼要做ELF Loader呢?ELF指的是可執行與可鏈結格式(Executable and...

鐵人賽 Software Development DAY 8

技術 Day 8 - Another Little RISC-V ISA Simulator

Another Little RISC-V ISA Simulator Another Little RISC-V ISA Simulator(ALISS)是我...

鐵人賽 Software Development DAY 7

技術 Day 7 -番外篇 : 評價模擬器的六大指標

評價模擬器 在介紹模擬器種類時有和大家科普模擬器根據目的不同會有不同的實現方式,而這些實現方式也會影響模擬器的模擬速度,模擬經度,模擬準確度等,因此在最後下了一...

鐵人賽 Software Development DAY 3

技術 Day 3 - 處理器的模擬器

處理器為什麼需要模擬器呢? 在前面的章節我們有簡單介紹模擬器與仿真器的不同,同時也說明了根據不同的使用場景我們該如何選擇使用模擬器或者是仿真器。不過話說回來,為...

鐵人賽 Software Development DAY 1

技術 Day 1 - 從什麼是模擬器開始的起點

提到模擬器,大家會想到什麼呢? 我想應該大部分的人直覺會先想到的是手機模擬器吧,只要在Google搜尋輸入模擬器,最先看到的無非是各大手機模擬器品牌的廣告,內容...

技術 [OS自學筆記] 於ubuntu 安裝 xv6-riscv

重新複習operating system,但卻發現nachos真的太舊了,還只能安裝在32位元的linux上,因此轉向改裝xv6-riscv。 在64位元Ubu...

鐵人賽 IT管理
專案開發的鳥事 系列 第 34

技術 如何運用RISC-V趨勢賺錢 (下)

前言: (其實可以跳過去)本篇是 RISC-V 晶心科6533 大陸唯一的希望 (上)的延伸文章,即然我們都知道 RISC-V 是正在高速成長的題材,那如何運用...

鐵人賽 IT管理
專案開發的鳥事 系列 第 33

技術 RISC-V 晶心科6533 大陸唯一的希望 (上)

本文我寫的很豐富,每個段落是給不同背景的讀者閱讀,讀者可以依照背景不同跳著閱讀。 前言: (其實可以跳過去)我之前是個傳統的台灣人,如果我發現一個特別的技術、商...

技術 Day-30 Switch Thread 中 lock 的設計,sleep 和 wakeup 概念

前言 前面我們看到了整個 Switch Thread 的運作,首先會有 Timer Interrupt 產生 trap,接著 yield() 會將 Proce...

鐵人賽 Software Development DAY 28

技術 Day-27 C 語言, 變數範圍, volatile, inline

前言 在研讀 xv6 專案程式碼的過程,我們可能會看到各種 C 語言的修飾字以及相關用法,諸如 static, extern, violiate 等等,我們將...

鐵人賽 Software Development DAY 27

技術 Day-26 xv6 Switch Thread, yield, sched

前言 昨天我們簡單的介紹了 Thread 的一些基本概念,以及 Thread 是如何進行切換的,最後通過一個簡單的實驗去證明 compute bound th...

鐵人賽 Software Development DAY 26

技術 Day-25 xv6 Thread, Switch Thread

前言 在這一篇文章中,我們將會介紹何謂 Thread,和 Process 之間有什麼樣的區別,前面介紹的 Thread 和 Process 的差別是理論上的差...

鐵人賽 Software Development DAY 25

技術 Day-24 xv6 Process, Init Process

前言 前面我們提到了 Process 的概念,我們知道一個位於 user space 執行中的程式為 Process,而 Process 有虛擬記憶體的概念,...

鐵人賽 Software Development DAY 24

技術 Day-23 Spinlock 在 UART 使用與實作

前言 前面我們介紹了多 Process 會遇到的 race condition 的問題,以及如何使用 lock 的機制進行處理,後面提到了 xv6 中 Spi...

鐵人賽 Software Development DAY 29

技術 DAY29: RISC-V: perf(三) sscofpmf

tags: 鐵人賽 前言 今日天氣不錯,就讓我們正式開始介紹 Sscofpmf 這個 extension 吧。 介紹 現有的 Privilege SPEC 已經...

鐵人賽 Software Development DAY 23

技術 Day-22 Race Condition, Spin Lock

前言 如果一個應用程式想要使用多個 CPU 的核心 (thread),並且使用了 System call,將會觸發 trap,而多個核心使用 System c...

鐵人賽 Software Development DAY 28

技術 DAY:28 perf(二)在risc-v上的限制

tags: 鐵人賽 0.前言 好的,昨天已經簡單介紹了perf的使用方法,那今天來介紹一些深度的一些問題,也就是過去risc-v架構上使用perf會有一些限制,...

鐵人賽 Software Development DAY 22

技術 Day-21 UART Driver Bottom

前言 繼續前面 UART TOP 的部分,下面將介紹 UART Bottom 的部分,也就是關於 Interrupt 的處理,並從 Interrupt 的處理...

鐵人賽 Software Development DAY 27

技術 Day27: 你所應該知道的 perf 介紹及使用

tags: 鐵人賽 0. 前言 今天開始聊聊perf,不免俗當然要介紹一下perf是甚麼?perf可以用在哪?perf要怎麼使用?都會在接下來的幾天慢慢介紹,另...

鐵人賽 Software Development DAY 26

技術 DAY26: RISC-V: riscv is getting MSI

tags: 鐵人賽 前言 今日的這篇是參考了某個國外網站做的統整,筆者認為挺不錯的,因此也翻譯之後做整理 overview MSI 不需要 interrupt...

鐵人賽 Software Development DAY 21

技術 Day-20 UART Driver TOP

前言 前面我們知道在 xv6 啟動後,Shell 會輸出 $ 到 Console 上,而我們可以追蹤產生 $ 的行為了解 UART 的運作,以及介紹一下 Dr...

鐵人賽 Software Development DAY 25

技術 DAY25: RISC-V: MSI ID & page table

tags: 鐵人賽 Identification of incoming MSIs for a virtual machine IOMMU 必須識別來自設備 M...

鐵人賽 Software Development DAY 20

技術 Day-19 Page Fault Lazy Page Allocation Implementation

前言 在前面我們介紹了 page fault 以及 lazy page allocation 的概念,而我們在 usertrap() 中通過 scause C...

鐵人賽 Software Development DAY 24

技術 DAY24: RISC-V: Memory-resident interrupt file

tags: 鐵人賽 正文開始 IOMMU 可以選擇性的支援 memory resident interrupt file(以下簡稱 MRIF),如果實作了,使用...