プログラム可能な集积回路FPGAの设计

FPGA(现场可编程门阵列)はユーザが构成をプログラムできる集积回路で,高速なデジタル处理を必要とされるところで使用されています。

FPGAには次のようなメリットがあります。

  • 逐次处理であるソフトウェア处理と比较して,FPGAではデジタル回路で并列处理を行うことができるため高速な处理が可能
  • 回路の仕様変更が容易なので,设计を试行错误できる
  • 设计したらコンパイル后すぐに実机动作させられるため,ソフトウェア·ハードウェアの设计を同时に行うことが可能
  • マスクが不要なためイニシャルコストが安い

FPGAの内部はLUT(查找表),フリップフロップ,积和演算専用回路,メモリ,I / Oバッファなどで构成されており,必要に応じてプログラムすることでこれらのリソースの选択や配线を行い,所望の处理を実现できるようになっています。この处理内容は电源投入时に毎回ROMから読み込まれるため,仕様変更にも柔软に対応することが出来ます。

FPGAにはCPUを内蔵することが可能で,そのプログラムによってCPUコアを构成するソフトコアCPUと,FPGA内に予めハードウェア回路として的ARM Cortex-AやCortex-M的などのCPUコアを内蔵しているハードコアCPUとがあります。后者は特に的SoC FPGAや可编程的SoCと呼ばれており,コンパクト化やBOMコスト低减などのメリットがあります。

FPGA设计では,古くは回路図入力で行われていましたが,现在はハードウェア记述言语(HDL,例:VHDL,的Verilog HDLなど)を使ってRTL(Regisiter传输级)の抽象度で设计するのが主流となっています。しかし近年,抽象度を上げて效率的に设计を行う高位设计手法が考案されており,元々ソフトウェア用のプログラミング言语であるç言语の动作记述によるFPGA设计手法や,ブロック线図を用いて记述したアルゴリズムモデルによるFPGA设计手法などが普及して来ています。これら高位のFPGA设计を行うためのツールとして,HDL编码器とHDL验证があります.HDL编码器を使用すると,Simulink的制品による金宝appブロック线図モデルからVHDL / Verilog HDL语言を自动生成し,短期间でFPGA设计することが出来るようになります.HDL验证はHDLとFPGAの机能検证を行うためのツールで,高抽象度のMATLABプログラムまたはブロック线図による金宝appSimulink的モデルを利用して,效率的に入力信号と期待値の生成を行うことで,検证时间の削减に贡献します。

金宝appSimulink中は信号生成,可视化·解析机能をはじめ,信号处理,通信,画像处理,制御など各种アプリケーション分野に特化した机能ブロックを提供し,アルゴリズム开発とシミュレーションを円滑に行える环境です。そのため,Simulink的モデルからHDL生成を行うHDL编码器と,HDLの検证を行うHDL验证を用いることで,アルゴリズム开発からFPGA设计と検证の作业を円滑に进めることができます。

参考:HDL编码器制品ページHDL验证制品ページ