No.3ベストアンサー
- 回答日時:
ワンチップマイコンはCPU/ROM/RAM/PIO/SIO等が集積されたもので、いわば「PCと入出力ポートをワンチップにしたようなもの」です。
プログラムを書いてそれを実行することで入出力を制御します。プログラムによる制御ですので、制御の速度(反応時間)はプログラムの実行速度で制限されます。プログラムの実行速度はクロックの関数になります。そのかわり、外部にインテリジェントなコントローラ(例えばUSBコントローラやNIC)を接続して制御するのはとても楽です。
FPGAやCPLDは「ブレッドボード上に汎用ロジックICや演算器やメモリや入出力ロジックを載せたもの」をブレッドボードごとワンチップにしたようなものです。
ロジックセルや演算器を直接接続するので、制御の速度(反応時間)はロジックセルや演算器や「接続」(スイッチネットワーク)の遅延時間で制限され、必ずしもクロックの関数とはなりません。(通常、入力と出力はクロックで同期を取りますが、内部を全面的に同期回路設計する必要はありません。自信があれば非同期設計も可能。)
そのかわり、外部にインテリジェントなコントローラを接続して制御するのはちょっと大変です。そのためだけに、FPGA/CPLD内に「小型CPU」を作成して制御を分担させることもあるくらいです。
例えばPCIバス(クロックが33MHz)に接続する拡張カードを作成するため、PCIバスの制御を必要としているとします。
ワンチップマイコンでこれを制御しようとするとどれだけのクロックが必要でしょうか。PCIバス1クロック分の制御にプログラム10ステップを要し、1ステップの実行にマイコンの1クロックを要するとすれば(かなり控えめな見積もりですが)、マイコンのクロックはPCIバスクロックの10倍、すなわち330MHzが必要ということになります。これは非現実的です。
FPGAやCPLDであれば、大規模な演算を要する制御手順(たとえばパリティの計算)を除けば、PCIバス1クロック分の制御は「PCIバス1クロック分の時間」があれば十分足ります。パリティの計算でも2~3クロックあれば足りるでしょう(高速品種やパリティ生成器を搭載した品種であれば1クロックでもOK)。
同じワンチップソリューションでも、PCIバス程度の速度の場合ワンチップマイコンは非現実的、FPGA/CPLDは現実的ということになります。
実際のところ、いわゆるPIC程度の速度では反応時間が1ミリ秒前後より短くなると苦しくなり、ワンチップマイコン全般でも10マイクロ秒以下だと一部の高速品種や専用回路を持つ品種でないと無理ということになるようです。
この回答へのお礼
お礼日時:2005/08/03 08:18
素人にとてもわかり易く教えていただいてありがとうございます。演算周期の速度に依存することがよくわかりました。どうもありがとうございました。
No.2
- 回答日時:
No.1
- 回答日時:
PICは、MICROCHIP社の製品で、
http://www.microchip.com/stellent/idcplg?IdcServ …
H8は日立が、現在は、Renesas
http://japan.renesas.com/fmwk.jsp?cnt=corpotate_ …
の製品です。
これらは、プログラムで動きます。
一方、fpgaやcpldはプログラミングで回路を作りこむ形だと思います。
http://e-words.jp/w/FPGA.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PLC間の信号のやりとりについて...
-
EnumとType
-
MS-DOS のソフトをWindows XPで...
-
04K-S525の検品方法を教えてく...
-
VBでUSBポートからの入力を制御...
-
Matlab
-
Picマイコンについて質問します...
-
マイコンボード上のポートと端...
-
USBからの電源供給をコントロー...
-
PIC16F1827でPCとシリアル接続
-
マイコンを使った時のセンサー...
-
家電のcpu
-
制御系とアプリ系
-
ディスプレイ上で起こる2重表...
-
ゲーミングPCでの質問です ゲー...
-
HDMIとHDの違いはなんですか? ...
-
目を左右別々に動かす
-
Cpkのk(偏り)値をExcelで出す...
-
ZCTの比率について
-
基盤のランドが剥がれた・・・
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PLC間の信号のやりとりについて...
-
USBからの電源供給をコントロー...
-
VBでUSBポートからの入力を制御...
-
AVRマイコンの未使用ピンの処理...
-
シーケンスのプログラムについ...
-
EnumとType
-
Visual BasicでGP-IBの通信を制...
-
PIC16F1827でPCとシリアル接続
-
H8マイコンの端子の数字の端子...
-
PCのUSBバスパワーの制御
-
Visual Basic 6.0のShell関数
-
家電のcpu
-
MATLABでサーボモータを制御す...
-
マイコンボード上のポートと端...
-
C++でLEDを点灯させるプログラム
-
picマイコンより簡単に扱えるマ...
-
コンピューターでラジコン操作?
-
arduinoで複数のサーボを動かし...
-
arduinoでミスト機を自作したい
-
パラレルポート
おすすめ情報