FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

2018-02-01から1ヶ月間の記事一覧

Chiselを使ったビルド環境を作ってTileLinkの検証環境を作ってみる

Chisel で記述された TileLink は環境を構築するのが大変だ。 そこで、ChiselのTileLinkの実装を最大限活用しつつ、TileLinkのバスを使ったSoCモデルを作成して、モデルを作ってみよう。 github.com Chisel → FIRRTL → Verilog で必要なこと とりあえず試行…

TileLinkの仕様まとめ (TL-Uncached Lightweight/TL-Uncached Heavyweight)

TileLinkの3つのレベル TL-UL (TileLink Uncached-Lightweight) 簡易的なTileLink。Get/Putのアクセスのみをサポート。 TL-UH (TileLink Uncached-Heavyweight) Uncachedだが、TL-ULよりは高性能。Multibeat operations/atomic accesses, Hint operationをサ…

「30日でできる!OS自作入門」を読み始めた (2. 3日目)

OS

遅まきながら、「30日でできるOS自作入門」を読み始めた。 30日でできる! OS自作入門作者: 川合秀実出版社/メーカー: 毎日コミュニケーションズ発売日: 2006/03/01メディア: 単行本購入: 36人 クリック: 735回この商品を含むブログ (299件) を見る 3日目は意…

「30日でできる!OS自作入門」を読み始めた (2. 3日目)

OS

遅まきながら、「30日でできるOS自作入門」を読み始めた。 30日でできる! OS自作入門作者: 川合秀実出版社/メーカー: 毎日コミュニケーションズ発売日: 2006/03/01メディア: 単行本購入: 36人 クリック: 735回この商品を含むブログ (299件) を見る 3日目は意…

RISC-Vの連載第3回がインターフェース誌に掲載されました

第1回/第2回の時に書いた記事はこちら。 RISC-Vの連載をInterface誌に寄稿しました(2018年2月号から) RISC-Vの連載第2回がインターフェース誌に掲載されました 第3回掲載分。 RISC-V コップとともに。 なかなか手を動かすところまで進まなくて申し訳ないです…

RISC-VのアウトオブオーダプロセッサBOOMの構成について

BOOM(Berkeley Out-of-order Machine)には、基本的に以下の3種類の構成方式がある。 BOOMの情報源 情報源というか、githubくらいしか情報がないのである。 ucb-bar.github.io 図. BOOMv2のマイクロアーキテクチャ (https://content.riscv.org/wp-content/upl…

RISC-V BOOM2 を改造してSoC環境を構築する (1. BOOM2 のブートの仕組み解析)

BOOM (Berkeley Out-of-Order Machine) は、UCBが開発して管理(現在はRISC-VでHPC/AIの参入を発表しているEsperanto?)しているRISC-Vのアウトオブオーダプロセッサだ。 BOOM (Berkeley Out-of-Order Machine) について これまで、BOOMについては以下のような…

Freedom E300 Everywhere を改造して外部SRAMからプログラムをロードして実行する

RISC-V の実装であるFreedom E300 Everywhere を改造して、外部にSRAMを接続してそこにプログラムを置き、RISC-V Rocket-Chipからプログラムをフェッチして実行できるようにする。 オリジナルの構成では、Freedom E300 EverywhereではQSPIが乗っていた部分を…

「30日でできる!OS自作入門」を読み始めた (1. 0日目、1日目、2日目)

OS

遅まきながら、「30日でできるOS自作入門」を読み始めた。 といっても実は私が高校生くらいの時に購入して、GUIをいじりだしたあたりで挫折した記憶のある書籍である。 今回満を持してリベンジである。 30日でできる! OS自作入門作者: 川合秀実出版社/メーカ…

量子プログラミング言語Q#の勉強 (5. 2量子ビットのSWAPを書いてみる)

量子プログラミング言語 Q# を使って量子コンピュータについて勉強しようプロジェクト、量子コンピュータの論理演算の仕組みが少しずつ分かってきたので、次は自分でプログラムを書いてみたい。 幸いなことに、前回の記事にて、2つの量子ビットの状態を入れ…

量子プログラミング言語Q#の勉強 (4. 量子テレポーテーション)

Microsoft Q# Programmingのガイドには、最初のサンプルプログラムとして量子テレポーテーションが登場している。 これは量子回路で表現すると、以下のようになっている。うん、訳が分からん。 Quantum circuits | Microsoft Docs via kwout 色々と資料を読…

Freechips Project Rocket-Core と SiFive Freedom E300 Everywhere Rocket-Core のブートシーケンス

RISC-Vの実装であるRocket-Chipは、RISC-Vの最新使用に追従しているため最初に見るべきデザインとしてはよくできているが、 Chiselで記述されており(初心者には)可読性が低い。 外部のSoCプラットフォームについて情報がない ことから、なかなかオリジナルの…

8th RISC-V Workshopはスペイン・バルセロナで開催・発表の募集が開始されました

第8回のRISC-V WorkshopのCall for Paperのアナウンスがありました。 日付 : 2018年5月7日 - 10日 場所 : バルセロナ・スーパーコンピューティング・センター (スペイン・バルセロナ) 発表形式 : 25分または12分 8th RISC-V Workshop Call for Papers - RISC…

量子プログラミング言語Q#の勉強 (3. Bell状態から量子の状態を測定するサンプルプログラム)

Quantum Development Kit | Microsoft via kwout 量子プログラミングの何たるかについて、MicrosoftのQ#プログラミング言語のチュートリアルを読みながら進めている。 量子プログラミングについて少しわかってみたので、一番最初のサンプルプログラムを読み…

TileLinkの仕様まとめ (TL-UL)

TileLinkの3つのレベル TL-UL (TileLink Uncached-Lightweight) 簡易的なTileLink。Get/Putのアクセスのみをサポート。 TL-UH (TileLink Uncached-Heavyweight) Uncachedだが、TL-ULよりは高性能。Multibeat operations/atomic accesses, Hint operationをサ…

SiFiveのFreedom E300 Platformを単体でカスタマイズできるようにする (4. TileLinkの解析とコンフィグレーション設定)

RISC-Vの実装であるRocket-Chipは、RISC-Vの最新使用に追従しているため最初に見るべきデザインとしてはよくできているが、 Chiselで記述されており(初心者には)可読性が低い。 外部のSoCプラットフォームについて情報がない ことから、なかなかオリジナルの…

CARRV 2018: Computer Architecture Research with RISC-V

Second Workshop on Computer Architecture Research with RISC-V (CARRV 2018) | carrv.github.io via kwout Second Workshop on Computer Architecture Research with RISC-V (CARRV 2018) | carrv.github.io 2018年の研究者向けRISC-V Workshopのウェブサ…

SiFiveのFreedom E300 Platformを単体でカスタマイズできるようにする (3. SRAMモジュールを作成して接続、テストパタンで動作を確認する)

RISC-Vの実装であるRocket-Chipは、RISC-Vの最新使用に追従しているため最初に見るべきデザインとしてはよくできているが、 Chiselで記述されており(初心者には)可読性が低い。 外部のSoCプラットフォームについて情報がない ことから、なかなかオリジナルの…

SiFiveのFreedom E300 Platformを単体でカスタマイズできるようにする (2. バスのマップと新しいモジュールの追加)

RISC-Vの実装であるRocket-Chipは、RISC-Vの最新使用に追従しているため最初に見るべきデザインとしてはよくできているが、 Chiselで記述されており(初心者には)可読性が低い。 外部のSoCプラットフォームについて情報がない ことから、なかなかオリジナルの…

調べ物をしたりまとめたりする場合には Vivaldi ウェブブラウザが超絶便利だと言う話

ブラウザといえば、Internet Explorer(Edge?)か、Chromeである。 しかし、Chromeはどんどん遅くなっていき不便、ほかにいろいろ無いかなと探した結果、今はVivaldiに落ち着いている。 Vivaldi Community – Free webmail, blogging platform and tech forum. …

SiFiveのFreedom E300 Platformを単体でカスタマイズできるようにする (1. 全体構造からブートROMへのリクエストまでの仕組み)

RISC-Vの実装であるRocket-Chipは、RISC-Vの最新使用に追従しているため最初に見るべきデザインとしてはよくできているが、 Chiselで記述されており(初心者には)可読性が低い。 外部のSoCプラットフォームについて情報がない ことから、なかなかオリジナルの…

「Mastering Bitcoin」を読む (第8章 マイニングとコンセンサス 2.)

「Mastering Bitcoin」を読んでいる。いよいよマイニングだ。 Bitcoinのマイニングは、どのような仕組みで、どのような計算をしているのかについて解説している。 最終的にマイニングしたブロックをブロックチェーンに接続し、それをどのようにしてビットコ…

「Mastering Bitcoin」を読む (第8章 マイニングとコンセンサス)

「Mastering Bitcoin」を読んでいる。いよいよマイニングだ。 Bitcoinのマイニングは、どのような仕組みで、どのような計算をしているのかについて解説している。 ただし、このプロセスを踏むことによって、なぜマイナーが不正を行っていないことの証明にな…

999ドルでマルチコア RISC-Vプロセッサが手に入る (HiFive Unleashed 発表)

SiFiveが提供するRISC-V IPコア、昨年8月のHotChipsで、SiFive初のRISC-VマルチコアIP UC54-MCが発表されてから約半年、やっとリリースが告知された。 SiFive のマルチコア RISC-V チップ & 評価ボード HiFive Unleashed が発表された!すばらしい! HiFive …

「Mastering Bitcoin」を読む (第5章 トランザクション)

「Mastering Bitcoin」を読んでいる。今回はトランザクションについて。 Bitcoinのトランザクションはどのような仕組みになっているのかを解説している。 個人的には、スタックベースのスクリプト言語を使っているというのが非常に面白い。 ビットコインとブ…

「Mastering Bitcoin」を読む (第4章 鍵、アドレス、ウォレット)

ビットコインとブロックチェーン:暗号通貨を支える技術作者: アンドレアス・M・アントノプロス,今井崇也,鳩貝淳一郎出版社/メーカー: エヌティティ出版発売日: 2016/07/14メディア: 大型本この商品を含むブログ (7件) を見る 関連記事 「Mastering Bitcoin」…

「Mastering Bitcoin」を読む (第1章 イントロダクション・第2章 ビットコインの仕組み)

世の中ではビットコインをはじめとする仮想通貨がブームとなっているが、正直その仕組みが分かっておらず、手を出すのが怖い。 まあクレジットカードの仕組みを知らないとクレジットカードが使えないというわけでもなく、世の中のインフラには乗っかっている…

【翻訳】RISC-V ISAにまつわる11の作り話(誤解・勘違い・神話?)

riscv.org で紹介されていた、"11 Myths About the RISC-V ISA" が少し面白かったので紹介。 RISC-V についてあまりわかっていない人のために、ありがちな誤解を解くための記事? なかなか面白いので、翻訳してみた。 ここで取り上げられているような、ひど…

量子コンピュータ向けのMicrosoftの新言語「Q#」の勉強 (2. 複数量子ビットの処理)

Multiple qubits | Microsoft Docs via kwout Q#、というか、量子コンピュータについて勉強するためには、Microsoft のドキュメントを読むのがよさそうだ。 今回は複数の量子ビットについて。 行列の計算が分かっていれば、多少はついていける。なるほど、テ…