CPUの中に小さなCPUが入っていたり、IC内にCPUが入ってるのなに?

  • このエントリーをはてなブックマークに追加

たとえば、TIのCC1310というCPUがあります。

http://www.tij.co.jp/product/jp/CC1310

このページのなかにブロック図がありますが、この中に「Cortex M3」と「Cortex M0」という二つのCPUが見えます。

 

「なるほど、デュアルコアCPUなのかな?」

 

そういう風に言うこともできるかもしれませんが、開発者からすると扱えるのは「Cortex M3」だけです。

Cortex M3の横には「Flash」と書いてあるのに、Cortex M0の横には「ROM」と書いてあります。

つまり、開発者はM3のプログラムを作って書き換えることはできるのですが、M0のプログラムは書き換えることが出来ません。

 

「じゃあ、M0はなんのためにあるの?」

 

普通はそう思います。

実はこれ、無線部の制御をしている裏のCPUなのです。

M3から無線部に「電波を出せ!」とか言うと、M0がそのメッセージを受け取って実際に無線を出力しているわけです。

言ってしまえば、M0は「ただの制御回路」として動いています。

無線の制御をする専門の回路を組んでもいいのですが、メーカとしてはそれは大変だったのでしょう。

専門の回路の代わりに小さなCPUを組み込んでそこにメーカがプログラムを書き込んで、制御回路の代わりをさせているわけです。

 

このパターン、最初見ると混乱しますが、じつはちょくちょくあります。

例えば、NXPというメーカのRFID(非接触カード)の読み書きを行うICなども、外から見るとただのICなのに中には小さなCPUが入っていたりします。

こんな風に、制御回路の代わりにCPUが入っている部品はちょくちょくあるのです。

最初に見ると驚くと同時に「自分でプログラムを書き換えられるのかな」と思ってしまうものですが、そういう性質のものではありません。

 

以上、小田切でした。

  • このエントリーをはてなブックマークに追加

Warning: extract() expects parameter 1 to be array, string given in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 314

Warning: Illegal string offset 'title' in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 318

Warning: Cannot assign an empty string to a string offset in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 318

Warning: Illegal string offset 'content' in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 320

Warning: Cannot assign an empty string to a string offset in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 320

Warning: Illegal string offset 'button_text' in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 322

Warning: Cannot assign an empty string to a string offset in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 322

Warning: Illegal string offset 'button_url' in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 323

Warning: Cannot assign an empty string to a string offset in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 323

Warning: Illegal string offset 'button_cvtag' in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 324

Warning: Cannot assign an empty string to a string offset in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 324

Warning: Illegal string offset 'image' in /home/kisukunanato/kairo-consulting.com/public_html/blog/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 332

SNSでもご購読できます。