Version Differences for XXXXでいこう!

Line 1:
    + HDLばかりが設計ツールではない。他のツールは何が有る?  
    + == FPGAとC ==  
       
       
    +  FPGAをプログラム言語であるC言語使って設計したいという要望は古くからありました。回路が複雑になり、より抽象度の記述を求められたのと、ソフトウェアとの協調シミュレーション(Co-simulation)が必要になってきます。しかしソフトウェア言語であるC言語そのままハードウェアの設計に用いるにはいくつかの問題点がありました。  
    +  そこで現在では二つの方法が取られています。  
       
    + * Cにライブラリーを追加して対応する方法。  
    + :利点:コンパイラはCのコンパイラが使用できる。  
    + :欠点:ライブラリーで拡張するため、記述が複雑になる。  
       
    + * C言語をベースに機能を拡張する。  
    + :利点:機能を簡潔に記述できる。  
    + :欠点:コンパイラは専用のものが必要になる。  
       
       
    + === C言語設計と論理合成 ===  
    + C言語で記述した回路をFPGAに展開するには二通りの方法がある。  
    + #VHDLもしくはVerilogに翻訳する。  
    + #直接ネットリストに変換する。  
       
    +  市場の主流は前者であると思われる。前者の方が従来のツールとの親和性がよいので使いやすい。後者の場合、ツールも高価であり、対応の取れていないFPGAベンダーが殆んどなので、現時点では使いにくい。  
       
       
       
    + === C言語での設計ツール ===  
    + *SystemC  
       
    +  C++のクラスライブラリーとして設計されている。そのためコンパイラはGCCが使用できる。<br>  
    +  ライブラリーはこちらからフリーでダウンロードが出来る。<br>  
    +  論理合成は別途ツールが必要  
       
       
    + *Handel-C  
       
    +  ハードウェア記述に適応させるためANCIのC言語を拡張したもの。もともとはオックスフォード大学で研究されていたものが起源。旧版はフリーで入手できたようだが、現在は商用のものしか無いようでagilityが製品を出している。メンター社の[http://www.mentor.com/products/fpga/handel-c/dk-design-suite/ 製品]はこれに基づく。  
       
       
    + *FPGAC  
       
    +  現時点ではフリーのFPGAコンパイラ。C言語からFPGAのネットリストを発生させることができるが、古いテクノロジーしかサポートしていない。VHDLのネットリストを発生させる事が出来る。  
    + FPGACのホームページ->[http://sourceforge.net/projects/fpgac/ FPGA C Compiler]  
       
    + == JAVA言語での設計ツール ==  
    + [http://jhdl.org/ JHDL]  
    + JAVA言語でFPGAの設計しようというフリープロジェクト