2017-01-01から1ヶ月間の記事一覧
しばらくFreeRTOSをRISC-Vの自作ISSや、Spikeシミュレータで動作させることが出来ず悩んでいたのだが、いつの間にかSpike-ISSに以下のオプションが追加されているのを発見した。 $ spike --help spike: unrecognized option --help usage: spike [host optio…
TOEIC受けてきた。毎年1度は受験するようにしているのだが、今回は比較的大きな会場だったのだが、音響もしっかりしている分、聞き取りにくいということは無かった。 去年の春からTOEICは新形式になっており、一応勉強はしていたのだがやはり時間配分や問題…
アジャイルサムライ−達人開発者への道−作者: Jonathan Rasmusson,西村直人,角谷信太郎,近藤修平,角掛拓未出版社/メーカー: オーム社発売日: 2011/07/16メディア: 単行本(ソフトカバー)購入: 42人 クリック: 1,991回この商品を含むブログ (255件) を見る ア…
前回の続き。RISC-Vエミュレータであるriscvemuのコンパイルオプションを調べていたのだが、やっと意味が分かってきた。 riscvemuのディレクトリにはjs/が入っており、RISC-VのJavascriptエミュレータが入っている。 最初はC言語からこのJavascript記述を呼…
RISCVEMUは高速RISC-Vエミュレータだが、その実装の仕組みを探っていると、どうやら2つのビルドモードがありそうだということが分かった。 msyksphinz.hatenablog.com RISCVEMUはLinuxも立ち上げることが出来る高速エミュレータだが、その実装の仕組みを探っ…
setjump(), longjump()について基本的なことを調査するために、まずは以下のページなどを読んで勉強した。 http://www.nurs.or.jp/~sug/soft/super/longjmp.htm (制限はあるが)どのような場所からでも、setjump()を実行した場所に戻ってくることが出来る。こ…
FreeRTOSの話題の続き。前回FreeRTOSのRISC-V版を少しエミュレータで試してみたものの、何も動作せずに終わっていたのだった。 (そしてそれを特に原因究明せず放置していた。) msyksphinz.hatenablog.com それではあまりにもつまらないので、自作ISSを使って…
RISC-VのUC Berkeley実装であるRocketChip/BOOMはエミュレーション時にVerilatorを使用している。 基本的な命令トレースなどは出力することが出来るが、波形を出力するためのオプションが存在する。 make CONFIG=BOOMConfig output/rv64ui-p-add.vcd テスト…
megamouth.hateblo.jp 読んだ。すごく良い記事だと思った。エンジニアの試行回路をトレースされているようで、読みながら「分かるーーー!!」ってなってしまった。 (僕の知る限り)新しいプロジェクトが始まるとき、不完全なものを作ろうとするエンジニアな…
最近までハードウェア設計における慣性遅延と伝播遅延について知らなかったのでメモ。 VHDLでは、明確に慣性遅延と伝播遅延についての文法があるらしい。Verilogでは結構ややこしい。 まずは例題 以下のようなVerilogを記述した。それぞれinertial_ff, trans…
そういえばFreeRTOSの勉強をする前に、Zynqについても基本的なアドレスマップについてちゃんと調査したことがなかった。 Zynqのアドレスマップは、Xilinxの資料を調べると以下のようになっていた。 Zynq-7000 All Programmable SoC Technical Reference Manu…
以前、FreeRTOSを調査したときは、RISC-Vのターゲットとして調査したものだった。ところが、調査を進めると普通にFreeRTOSはZynqチップにも移植されており、Cortex-A9でも動作させることが出来るらしい。 msyksphinz.hatenablog.com 今回はRTOSの勉強の最初…
msyksphinz.hatenablog.com 前回の記事で、Bitnami Redmineの構築方法を確立したため、桜インターネットのVPSサービスを利用して、個人開発用のRedmineを構築した。 Redmineは開発の項目だけでなく、いろんなプロジェクト、例えばマラソンとか、資格試験の勉…
riscv.org The Linley Group Announces Winners of Annual Analysts' Choice Awards The Linley Group - The Linley Group Announces Winners of Annual Analysts' Choice Awards まあ私は関係者でもなんでもないんだけど、おめでとうございます。 Linley Gr…
引き続き、QEMUの論文を読んでいく。dyngenトランスレータの基本は分かったので、実装の詳細について説明を読み進めていこう。 QEMU, a Fast and Portable Dynamic Translator, Fabrice Bellard http://archives.cse.iitd.ernet.in/~sbansal/csl862-virt/201…
いろんな事情でQEMUについて勉強したくなったので、QEMUとはいったいどういう機構で動いているのか、簡単に勉強できる文章を探していたのだが、以下のような論文を見つけた。 QEMU, a Fast and Portable Dynamic Translator, Fabrice Bellard http://archive…
自分の趣味の開発や、趣味のプロジェクトの進捗管理のためにRedmineを構築する。 これまでもRedmineを使っていたのだが、サーバのレンタルを止めてしまいRedmineも止めていたのだった。 Redmineの構築はいつもステップが多くて面倒なのだが、今回はBitnami R…
前回Clarviの調査ということで概要を把握したのだが、SystemVerilogを実行できるシミュレータを持っていなかったため、シミュレーションが実行できなかった。 msyksphinz.hatenablog.com ところがその後各方面から「Modelsim Altera starter editionを使えば…
RISC-Vのメーリングリストを読んでいて知ったのだが、FreeRTOSという無償のリアルタイム向けOSがあるらしい。これをRISC-V向けに移植している人がいるそうだ。 www.freertos.org RISC-Vへの移植が進められており、Privilege v.1.9への移植版が公開されていた…
Twitterでvengineerさんに教えてもらった教育用RISC-V実装、Clarviについて簡単に調査してみた。 Clarviは大学が教育用に作成したRISC-Vプロセッサで、もちろんRISC-Vの仕様に完全に準拠しているわけではないが、非常にコンパクトな実装と、教育用に簡単な拡…
RISC-VにおけるテストセットのPass/Fail判定 過去の記事でも少し解説したが、RISC-Vではriscv-testsというテストパタンセットが用意されている。 msyksphinz.hatenablog.com パタンの説明では、どうやら0x8000_1000への書き込みでもってパタンの終了を判定し…
msyksphinz.hatenablog.com 前回の性能解析でそもそもバグとして残っていた部分だが、アウトオブオーダプロセッサが実行中の命令というのはリオーダバッファで管理されており、もちろんこのリオーダバッファが溢れるような状態になると命令の発行を中止しな…
Reserved Writes Ignored, Reads Ignore Values (WIRI) WIRIビットフィールドの例 Reserved Writes Preserve Values, Reads Ignore Values (WPRI) WPRIビットフィールドの例 Write/Read Only Legal Values (WLRL) WLRLビットフィールドの例 Write Any Values…
ずいぶん昔の話だが、TensorFlowがWindowsに対応した。どうやらコマンドプロンプト経由でインストールする形式のようだ。 今回初めてTensorFlowをWindowsに導入してみたので、その手順を記録しておく。 msys2経由でのWindows版TensorFlowは難しい(不可能だっ…
訳あってRISC-Vの特権レジスタ群の仕様を読み込んでいるのだが、Privilege Instructionの仕様書をしっかり読むとなかなか面白い。 Chapter-2のControl and Status Registers(CSR)ではCSRレジスタ群についてまずは簡単に分類がされているのだが、いろんなこと…
しっかりした文章や、マニュアルなどを作成してpdfやhtmlとして公開したい場合や他人に見てもらいたい場合、いくつかの方法が存在する。 LaTeX : それなりに昔から使われている文章整形ツール。非常に美麗な文章が作成できる。数式などもお手の物。ただし作…
あけましておめでとうございます。本年も、本ブログをよろしくおねがい致します。 昨年は、 RISC-Vをベースとした自作ISS/RTL設計 Vivado-HLSの勉強 技術翻訳で文書2本を翻訳 など、様々なことに手を出した一年でした。 今年の目標として、 ZedBoardを用いて…