タグ

ブックマーク / j-7system.blog.ss-blog.jp (5)

  • VHDLいろいろ: 如是我聞~これからFPGAの話をしよう~

    今更感あるけども、VHDLで特定用途で便利な記述ネタを。 ●コンポーネント宣言を省略する use work.all; を追加すると読み込んだエンティティのコンポーネント宣言を省略できる。VHDLの悪名の半分はこれで解消。 注意点はModelSimではコンパイル順で認識するので、ソースファイルの順番に依存してしまう。Quartusでは全てのファイルを読み込んでから評価するみたいなので同じプロジェクト内のソースであればどこでも参照できる。 ●LPMやMegafunctionを直接インスタンスする library altera_mf; use altera_mf.altera_mf_components.all; library lpm; use lpm.lpm_components.all; を追加しておくと、コンポーネント宣言を省略してLPMやMegafunctionのマクロをインスタンスで

    VHDLいろいろ: 如是我聞~これからFPGAの話をしよう~
  • マイニングマシンの予備研究(その2): 如是我聞~これからFPGAの話をしよう~

    前回のエントリではBitcoinの概要と、マイニングのメイン処理になるSHA-256処理部について書いた。 今回はその続きとして、実際の採掘の処理部をどう設計したものか思索してみる。 まず、前回OpenCoresから持ってきたSHA-256コアの続きから。 結論から言えばこのコアは実装に問題がありすぎたので全部作り直した。ただし、大元のテストベンチとテストデータの入手元としては非常に有用だったのでそこは誤解無きよう。ゴールが明確であるというのはとても重要なことなのだ。 その中で仕様を変更した点が大きく3つ。 ・ラウンド関数の入出力をレジスタードに変更 ・メッセージ入力を256ビットパラレルから32ビット単位のシリアルへ変更 ・制御信号を丸ごと変更 この結果、ハッシュ演算結果が出るのに1クロック余分にかかるようになったが、各モジュール間できっちりパイプライン化されたので配置配線で有利になって

    マイニングマシンの予備研究(その2): 如是我聞~これからFPGAの話をしよう~
  • マイニングマシンの予備研究: 如是我聞~これからFPGAの話をしよう~

    最近ひときわ話題に上ることがおおくなったBitcoin。 詳しくはウィキペディアなりを参照していただくとして、この仮想通貨はSHA-256というハッシュ関数を使って取引のチェーンを組むという構造になっている。 SHA-256は元のブロックから、生成されるハッシュ値を推測するのが非常に困難だと言われており、特定のビット列を持つハッシュ値を得ようとすると、事実上の総当たりをすることになる。 この、特定のハッシュ値を得ることがマイニング、いわゆる「採掘」だ。 Bitcoinのマイニングについては既に専用のASICリグが登場している有様で、ぶっちゃけ採掘に投入するリソースではリターンが赤字になることが証明されている。 儲けたいならBitcoin採掘よりも仮想通貨間トレードの方がよい。 このへんはnyatlaさんが詳しいのでこちらを参照されたい。 → nyatla@hatena blog - 3日間

    マイニングマシンの予備研究: 如是我聞~これからFPGAの話をしよう~
  • MAX10デバイスを使う場合の注意まとめ(その1): 如是我聞~これからFPGAの話をしよう~

    さて、先月からMAX10デバイスを一通り使ってみて、途中基板を速攻で起こす羽目になったりしてプチ修羅場な状況だったのだけども、なんとか収束してきたのでMAX10を使うにあたってのまとめをしてみよう。 MAX10はラインナップ上いくつかのバリエーションがあるものの、ここでは全部網羅することはできないので、MAX10 evalボードおよびSODALITE基板で採用の10M08SAE144C8GESに限って話をすすめることにします。それ以外のデバイスについては適宜データシートを参照のこと。 → オンライン資料:MAX 10 FPGA 1.コンパイル編 まずQuartusIIでのコンパイルから。 MAX10はまだQuartusIIでは正式に対応している状態ではなく、14.0のアップデートパッチ(Update2)による暫定対応となっています(正式対応は14.1で、これは来週のALTERAサーバーメン

    MAX10デバイスを使う場合の注意まとめ(その1): 如是我聞~これからFPGAの話をしよう~
  • 諸行無常と因縁生起: 如是我聞~これからFPGAの話をしよう~

  • 1