FC2カウンター FPGAの部屋 ISEからEDKを内部制御用プロセッサとして使いたい
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ISEからEDKを内部制御用プロセッサとして使いたい

ISEからEDKを内部制御用プロセッサとして使いたいというニーズがあるので、使いたいと思っている。ISEのHDLで作った複数のモジュールを強調動作させるのに、ステートマシンの代わりのシーケンサとして使いたいと思っている。簡単な動作はステートマシンですばやく、複雑な動作の場合は内部制御用プロセッサ(またはシーケンサ)を使えると、結果として最大動作周波数を高く出来るのではないかと思っている。
そこで、EDKの使い方を覚えながら、ISEからEDKを内部制御用プロセッサとして使う用途を探ってみようと思った。
FPGAはVirtex2proでPowerPCも使えるので、microblaze との比較もしてみる。やることとしては、ISEでEDKのプロジェクトをAdd Sourceして、その上にHDLをかぶせてトップとすることだ。
まずはMicroBlazeからやってみる。このボードでは、リファレンスクロックは133.33MHzで、各HDLモジュールに供給してるクロックも133.33MHz なので、プロセッサのバスクロックはその他のモジュールと同じ133.33MHzで動いて欲しい。そうでないとクロックドメインを乗せ換える必要があり、異なるクロックに同期させようとするとレイテンシが伸びてしまう。これが重要なポイントとなる。
MicroBlazeの場合、ISEでEDKのプロジェクトをつくり、BSBでシステムの設定をするが、下の図のようにMicroBlaze のバスクロックに133.33MHzの選択肢がない。
MicroBlaze_seq_1_081223.png

133.33MHzでバスが動作しないのでは、とりあえずだめそうだ。

次にPowerPCでやってみた。133.33MHz リファレンスクロックだけど、PowerPCがPLLを持っていて、バススピードとPowerPCのクロックは同一でなくても良いはず。とりあえずPowerPCの動作クロックを133.33MHzにしてみた。数のようにバスクロックは最大66.67MHzだった。こりゃだめだ。
PowerPC_seq_1_081223.png

PowerPCの動作クロックは、100MHz, 266.66MHz に変更できるが、その時のバスクロックは、最大100MHzで、133MHzにはならなかった。どうやらPowerPCもだめそうだ。
ちょっと最初から残念な結果になってしまったが、この問題は別にシーケンサとして動作するものを探すか、自分で作ろうと思う。
  1. 2008年12月23日 21:23 |
  2. EDK
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/988-813d1fc7
この記事にトラックバックする(FC2ブログユーザー)