ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
Main Menu
Tweet
Facebook
Line
:-?
フラット表示 前のトピック | 次のトピック
投稿者 スレッド
webadm
投稿日時: 2006-6-15 20:55
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3094
少し工夫
単純に32bitフルコンペアだと同一のアドレスクラス内に複数のアドレスがあった場合、共通するバイトを比較する論理を生成するのは無駄である。

なので少し工夫してツリー状にCASEを分岐させることにする。

CASE IP[31..24] IS
WHEN H"7d" =>
CASE IP[23..16] IS
WHEN H"f5" =>
CASE IP[15..8] IS
WHEN H"51" =>
CASE IP[7..0] IS
WHEN H"92" =>
FILTER=VCC;
WHEN OTHERS =>
FILTER=GND;
END CASE;
WHEN OTHERS =>
FILTER=GND;
END CASE;
WHEN H"f7" =>
CASE IP[15..8] IS
WHEN H"73" =>

こんな感じ。

コンパイルしてみると、全比較よりも所要LE数はぐっと減って3,179となった。これだと1ランク規模の小さいCycloneでも入るが、これがBGAパッケージだったりする。最近はI/Oピン数を稼ぐためにBGAが主流だね。

あとは更に論理が少なくてすむようにするには比較データを外部のROMやRAMに置くしかない。でもあまり判定に時間がかかると、判定が出た頃にはとっくにパケットが通りすぎてしまう。現状では遅延は30ns程度なので実用レベル。
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
   デザインのウォーミングアップ仕上げ webadm 2006-3-20 1:00
     仕上げた結果 webadm 2006-3-20 21:10
       仕上げの感想 webadm 2006-3-21 23:10
         7セグメントLEDデコーダー内蔵版もできた webadm 2006-3-22 22:05
           いよいよ製作開始と思ったら webadm 2006-4-2 2:14
             Max+plus IIでもFLEX10Kは使える webadm 2006-4-2 2:48
             先行手配した部品が届いた webadm 2006-4-9 1:01
               FPGAまわりの回路図作成にとりかかる webadm 2006-4-15 21:30
                 部品ライブラリから作らないといけない webadm 2006-4-15 23:38
                   あともう少し webadm 2006-4-19 0:31
                     部品を載せ忘れていた webadm 2006-4-21 2:01
                       図面完成 webadm 2006-4-22 9:32
                         FPGAのピンアサインではまる webadm 2006-4-23 21:01
                           いよいよ万年時計基板製作開始 webadm 2006-5-5 20:59
                             やっとLEDスイッチボード製作完了 webadm 2006-5-7 14:02
                               ダイナミック点灯テスト webadm 2006-5-8 11:25
                                 またしても原因はハンダ付け不良だった webadm 2006-5-9 2:00
                                   FPGAボードも組み上がった webadm 2006-5-12 12:41
                                     火入れしてみた結果 webadm 2006-5-13 2:49
                                       メタステーブルとかではなさそうな気がする webadm 2006-5-13 14:44
                                         条件付きでPassive Serialでのダウンロードは出来た webadm 2006-5-15 2:46
                                           誤動作の例 webadm 2006-5-15 4:25
                                             また一つの事実が明らかに webadm 2006-5-15 5:47
                                               やはり電源とグランドの引き回しが悪いのか webadm 2006-5-17 0:29
                                                 とりあえず万年時計としての動作確認 webadm 2006-5-17 0:49
                                                   自作FPGAボード挙動不審のまとめ webadm 2006-5-20 19:28
                                                     純正ByteBlaster IIだとJTAGが正常に使える時がある webadm 2006-5-20 20:17
                                                       更に驚くべき事実が発覚 webadm 2006-5-20 22:49
                                                         純正でも再現性が悪い事実 webadm 2006-5-20 23:27
                                                           とおもったら今度はまともになった webadm 2006-5-20 23:42
                                                             今度は魔法の手出現 webadm 2006-5-21 4:37
                                                               一転して問題は収束の方向へ向かう webadm 2006-5-21 5:11
                                                                 ぬか喜びだった webadm 2006-5-21 5:54
                                                                   Verilog HDLではまる webadm 2006-5-28 4:38
                                                                     まっさらなディレクトリから始めればVerilog HDLも問題なかった webadm 2006-5-28 19:25
                                                                       verilog HDL版の万年カレンダー時計 webadm 2006-5-30 20:34
                                                                         AHDLとVerilog HDLの比較 webadm 2006-5-31 12:50
                                                                           VHDLでもはまる webadm 2006-6-3 14:26
                                                                             Config ROMでの動作確認はどうしたものか webadm 2006-6-10 14:04
                                                                               15.974MHzのキンセキのオシレーターの謎 webadm 2006-6-11 13:35
                                                                                 Re: 15.974MHzのキンセキのオシレーターの謎 webadm 2006-6-11 15:02
                                                                                   BTTFごっこ webadm 2006-6-12 4:39
                                                                                     NICTのコンテスト webadm 2006-6-15 1:45
                                                                                       FPGAベースIPパケットフィルター webadm 2006-6-15 4:05
                                                                                         AHDLでフィルタリング判定論理書いてみた webadm 2006-6-15 10:15
                                                                                           EP1C6T144C6に入るみたいだ webadm 2006-6-15 18:18
                                                                                           » 少し工夫 webadm 2006-6-15 20:55
                                                                                               とどのつまりCAM(Content Adressable Memory)だな webadm 2006-6-16 0:59
                                                                                                 CACHEメモリでも良い webadm 2006-6-16 5:08
                                                                                                   とりあえず2wayなら webadm 2006-6-18 16:51

投稿するにはまず登録を
 
ページ変換(Google Translation)
サイト内検索