• ベストアンサー

FPGA?マイコン?

FPGAとマイコンは何が違うのですか? FPGAはマイコンの中に入っている集積回路のことですか? マイコンはCPU・メモリ・ポートがあればマイコン? マイコンには必ずFPGAが入っているのですか? パソコンでC言語等で記述して、特定の動作をさせることができるのはFPGAのようなPLDがマザーボード上にあるからですか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

FPGAは、ユーザーによる回路定義ファイルを焼き付けることによって、 ロジック回路そのものが作れるものです。 (専用チップを安価に作れるというのがメリットです) このため、ターゲットとするシステムはマイクロコンピュータに限定されません。 一方、マイコンは、回路そのものは固定であり、 搭載しているROMやフラッシュRAM中のプログラムの記載通りに、 マイコンが用意している命令(回路)を動かすということしかできません。

tskdam
質問者

お礼

ありがとうございます。 できたらFPGAの利点、マイコンの利点なんかも教えてもらいたいです。。。

その他の回答 (3)

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.4

マイコンは、動かすのにプログラムが必要です。 マイコンは、プログラムをメモリから読んできて、それを解釈して、実行します。プログラムを変更すれば、動作が変わります。 FPGAは、プログラム自体を回路に作りこんでしまう、というイメージと言えばいいですかね。 なんで、マイコンに必要な、「プログラムをメモリから読み込んでくる」ていうのと「解釈する」ていうのを、すっ飛ばして、いきなり、「実行」できます。 なんで、マイコンよりもずっと高速に動作します。 一応、ASIC設計者(ASIC=カスタムLSIだと思いますが)の立場として言えば、 処理速度 ASIC>>>FPGA>>>マイコン です。普通に何も考えずに作っても、FPGAとマイコンの性能差と同程度(あるいはそれ以上)の差が、FPGAとASICにはあります。 最新のFPGAで数百MHzで動く回路を作るのはかなり大変ですが、ASICなら、同じRTLで何も考えなくてもGHzで動く回路を簡単に作れます。

tskdam
質問者

お礼

参考になりました。 ありがとうございます。

回答No.3

セットに要求されている速度性能と、どの程度の量産数が見込めるかで なにを選ぶかが変わります。 ざっくりいうと、 処理速度  カスタムLSI>ASIC>FPGA>>>>マイコン 設計開発コスト  マイコン>FPGA>>>>ASIC>>カスタムLSI 量産効果(大量生産に向くもの)  カスタムLSI>>ASIC>>>>FPGA>マイコン ですかね。

tskdam
質問者

お礼

ありがとうございます。

回答No.1

厳密な意味での説明ではないけど(質問の「マイコン」の定義が曖昧なので、CPUキットを「マイコン」と仮定して) >FPGAとマイコンは何が違うのですか? 後述。 >FPGAはマイコンの中に入っている集積回路のことですか? CPUとしてFPGAが使われているのであれば、そうとも言える。 >マイコンはCPU・メモリ・ポートがあればマイコン? 一概には言えない。 この質問ではそう仮定して回答している。 >マイコンには必ずFPGAが入っているのですか? いいえ。 >パソコンでC言語等で記述して、特定の動作をさせることができるのはFPGAのようなPLDがマザーボード上にあるからですか? 違う。 すべての処理を行うのはCPU(MPUやPICもここでは含める) CPUは電子回路の集合であり、その機能は固定されている。 普通のプログラムは、そのCPUに対してどのように動作するかを指示する命令が記述されている。 対して「FPGA」は専用のプログラムを使用し、内部の電子回路を組みかえることにより、さまざまな機能をもったCPUを実現するもの。 その為、CPUを作成する前段階として、CPUの機能の検証に使用したりする場合もある。

tskdam
質問者

お礼

参考になります。ありがとうございます。 しかしまだ今いちピンときません(;_;)