Reading OpenSBI part3
Wednesday, March 17, 2021
前回 は、_relocate_doneまで読んだ。 続きから読み進めていく。 …
Reading OpenSBI part2
Tuesday, March 16, 2021
前回 はOpenSBIの移植を行った。 今回はOpenSBIの実装を読んでいこうと思う。 アセンブリはあまり読みたくないので、できるかぎり飛ばしていく。 …
Reading OpenSBI part1
Tuesday, March 16, 2021
Reading OpenSBI RISC-VのSBI実装の一つである、OpenSBIを読んでいく。 今開発しているシステムでは、OpenSBIからLinux Kernelをロードし、制御を移しているため、理解しておきたい。 …
Booting linux kernel on my RISC-V part1
Tuesday, March 16, 2021
概要 前回 ビルドしたLinuxを用いてシミュレーションを行った。 しかし、例外が発生し、処理が進まない。 今回は、原因を追求してみようと思う。 …
Building Linux kernel for my RISC-V SoC(RV32X SoC)
Tuesday, March 16, 2021
概要 自作のRISC-V SoC向けのLinuxカーネルのビルドフローをメモとして残す。 アーキテクチャはRV32IMAである。 特権モードは(M, S, U)をサポートしており、SV32ページングを実装している。 クロスコンパイラとしてriscv32-unknown-linux-gnu-gcc(version 10.1.0)がインストールされていることとする。 …
Next Synthesis Language
Monday, March 15, 2021
高位合成言語NSL NSLで自作のRISC-Vプロセッサを開発している。 NSLリファレンス NSLチュートリアル 開発には高位合成言語NSLを用いている。 NSLでは、Verilog HDL, VHDL, System-Cに変換でき、ステートマシンやパイプラインなどCPU開発に向いた専用の構文が用意されている。 単相同期を前提に設計されているため、クロックを明示する必要がない(m_clockとp_resetが自動で生成される)。 宗教上の理由よりNSLを使い始めたわけであるが、シンプルで可読性も高く、かなり使いやすいので、Verilog HDLなどで開発する気が起きない。 ライセンスは非商用の教育用途のものを用いており、2000行の制限がある。 商用には使わないし、 分割コンパイルをすれば、2000行を超えることはほぼないので、十分である。 …
Getting started with hugo
Monday, March 15, 2021
Hugoを使ってみる. モチベーション 今までは、紙ベースのノートに情報をまとめていたが、 検索ができない 画像貼り付けがめんどうくさい コピペができない など不便な点がいくつかあった。 そこで、データとして情報を集約していきたいと考えた。 いろいろ調べているうちに、hugoが簡単そうであったため導入してみた。 Markdownで記述ができ、静的ページに変換する仕組みのようである。 以下に導入と簡単な使用方法をまとめておく。 …