ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

2009-01-01から1年間の記事一覧

お勧めのFPGAボード 2009年版

2008年度版はこちら。 [FPGA]FPGAボードを買うときに気をつけること 2008年版 DE0 今年のお勧めはDE0です。Sim's blogさんの所に良くまとまっているので、私から特に書く事はありません。 http://blog.goo.ne.jp/sim00/e/035bb059d33490929b81c3f8c538281dAC…

基板実装後に必要な手続きまとめ 2009年

http://d.hatena.ne.jp/higepon/20090604/1244126416 ひげぽんさんおめでとうエントリー。 手続き 期限 必要なもの 備考 目視検査 すぐ ルーペ、デジカメ コネクタの向き、部品の実装、半田の状態など 抵抗値測定 すぐ テスター 電源、GND間の抵抗値測定 電…

複数のFPGAに共通のクロックを入れる方法

一つのFPGAに入りきらない大きな回路を複数のFPGAに分割する場合、クロックについてのケアが必要になります。やり方と問題点を整理してみました。クロックの位相ずれは、シミューレションでは出ない場合もあり、時に位相あわせの必要すら忘れがちなので気を…

FPGAを勉強するのに良いサイトの紹介

FPGAの基礎からある程度大きな回路まで、詳しく説明しているサイトを見つけました。http://www.fpga4fun.com/index.htmlここだけで、 FPGAのサンプル回路 チュートリアル ボードの紹介 まで一通り揃っています。 プロジェクトの一覧 fpga4fun.comで説明のあ…

Concepts, Techniques, and Models of Computer Programming

私の本棚にずっと積まれていましたが、なんとか目を通すことができたので感想を。 本の内容 日本語の目次はこちらを。 http://ja.wikipedia.org/wiki/コンピュータプログラミングの概念・技法・モデルタイトルの通り、プログラミングに関しての概念やモデル…

組み込みプロセッサ技術

組み込み用のプロセッサについて素晴らしい本を見つけたので紹介します。 http://www.amazon.co.jp/dp/4789845494 内容 組み込みで使用されるプロセッサについて、基本的な概念から最新の技術まで、幅広くかつ深く説明してある本です。基本を押さえながらも…

Cygwinで動くsparc64クロス環境

cygwinで64bit SPARCのクロス環境を作りました。バイナリ一式はこちらです。 sparc64-elf_2009_2_26.zip ファイルを展開して、/usr/local/sparc64/binに実行ファイルが来るようにコピーし、/usr/local/sparc64/binにパスを通せばOKです。 クロス環境構築時の…

OpenSPARC用ROMファイルを逆アセする方法

Twitterでヘッダーファイルのないテキスト領域の逆アセ方法が分からないとつぶやいたところ、バイナリアンな人達からアドバイスをもらいました。ありがとうございます。http://twitter.com/yusk_/status/1240773710 http://shinh.skr.jp/m/?date=20090223 ob…

OpenSPARCのROM読み出し

WISHBONE I/F s1_coreはテストベンチのトップレベルで、WISHBONEのBusを経由してROMに接続されています。 WISHBONEはOpenCores.orgで推奨されているfreeに使用できるバスの規格です。http://www.opencores.org/projects.cgi/web/wishbone/wishbones1_coreで…

sparc_ifu その2

sparc_ifuの続きです。リセット時のPCの値を決めているtlu_ifu_trappc_w2を追いました。 tlu_ifu_trappc_w2 tlu_ifu_trappc_w2は、tlu(Trap logic unit)の中のtlu_misctl.vにあります。 同じ要領で信号を追っていきます。 dff_ny #(49) dff_trap_pc_w2 ( .di…

sparc_ifu

リセット時のPCの動きを調べるため、ifu(Instruction fetch unit)の中を追って見ました。 パイプラインの最初のフェッチ時のPCはt0pc_fなので、そこから追います。 t0pc_f への代入 sparc_ifu_fdp.vから // F stage thread PC regs; use low power thr flop …

s1_coreのリセットとクロック 続き

s1_coreのリセットの続きです。 sparc core内のリセットとクロック リセット回路とクロックをもう一階層下って整理しました。gclk、cluster_cken、cmp_grst_l、cmp_grst_lが、bw_clk_cl_sparc_cmpに入って、rclkとspc_grst_lを作っています。回路のブロック…

s1_coreのクロックを最適化

FPGAプロトタイピングにおけるゲーテッドクロックの扱い FPGAでプロトタイピングをするときは、クロックをFPGA向けに修正するという作業が入ります。具体的にはASIC向けPLLを、FPGA内蔵PLLに置き換えます。FPGAが複数にまたがりクロック系統が複雑な場合は、…

s1_coreのリセット

s1はオリジナルのT1と違いシンプルなリセット回路が使われています。 hdl\rtl\s1_top\の中にあるrst_ctrl.vがverilogソースです。rst_ctrlでは各ブロックへのリセット信号と、クロックの生成を行っています。リセット関係の信号について、topでの接続を図に…

FPGAプロトのベンチマーク

ベンチマークとは FPGAプロトタイピングを行う場合、一番最初に「ベンチマークを取る」という作業をします。「ベンチマーク」という表現は、一緒に仕事をした人しか使っていなかったので、一般的な言葉かどうかは分かりません。ベンチマークだけでなく、他の…

OpenSparc Code Ijiri

VeritakのたっくさんによるOpenSparcをいじるための素晴らしい環境の紹介です。 Code Ijiriとは まずはshinhさんの所を読んでください。 http://d.hatena.ne.jp/shinichiro_h/20081130#1228038576微妙に動いていないのが丁度良い難易度だと思います。 Verita…

The Cray X-MP/Model 24

久しぶりにまとまった時間が取れたので、Lecture Note in Compluter Science シリーズのThe Cray X-MP/Model 24 : A Case Study in Pipelined Architecture and Vector Processingを読みました。高速化のための割り切りがFPGAにおける回路設計にも役に立ちそ…

ASIC開発におけるFPGAプロトタイピングのメリット

ASICとは OpenSPARC Internalsに面白い資料があったので紹介します。ここまで具体的な商品名と数値が出ている資料は非常に貴重です。Sparcの様な機能がいっぱい詰まった半導体はASICと呼ばれます。一つの半導体の中にCPU、メモリ、バス、周辺I/Oと昔のパソコ…

7章 OpenSPARC T1 の Memory Hierarchy

OpenSPARC Internals からOpenSparc T1のメモリ階層をまとめてみました。パタヘネでは、第7章で出てくる話です。図の一番下にSPARCのcoreがあります。一つのT1チップには、8個のcoreが搭載されています。各coreについて、Iキャッシュが16Kバイト、Dキャッシ…

multi processorでQuartus IIを使う方法

お仕事でQuartusを使っていたのですが、合成/配置配線中のCPUの使用率がMAX50%でDual Coreの半分しか使っていないように見えます。 そんな場合は、オプションでmulti processorを有効にしましょう。Assignments->Settingから、Compilation Process Setting…

コマンドラインからAlteraのjicファイルを作る方法

最近のAltera系のFPGAボードは、jic(JTAG Indirect Configuration )形式のファイルを使う物が増えています。1回、2回ならGUIで作成しても良いのですが、毎回設定をするのが面倒だったり設定忘れがあり困っていました。コマンドラインからjicファイルを作成…

multichannel descriptor

Verilogの規格書を見ていたら面白い機能を見つけました。他の言語で見たことが無い機能なので紹介します。Verilog の$fopenはCのfopenと同じように、ファイル名とファイルタイプを指定して呼び出します。戻り値multichannel descriptorはintegerで受けます。…