PSoC

PSoC1
「PSoC CapSense」センサーの開発キット

PSoC(ピーソック、Programmable System-on-Chip)とは、サイプレス・セミコンダクター(現:インフィニオン・テクノロジーズ)が開発したマイクロコントローラの製品群である。

概要

製品群はアーキテクチャの違いによって以下のように大きく5種類に分けられる。

  • PSoC1 CY8C2xxxx CPUにM8Cを使用
  • PSoC3 CY8C3xxxx CPUにIntel 8051を使用
  • PSoC4 CY8C4xxxx CPUにARM Cortex M0を使用
  • PSoC5LP CY8C5xLPxxx CPUにARM Cortex M3を使用
  • PSoC6 CY8C6xxxx CPUにARM Cortex M4コアを使用 一部モデルはCortex M0+コアとのデュアルコア構成[1]

他にも、PSoC5LPの前身にあたるPSoC5(CY8C5xxxx)と呼ばれる製品群が存在する。ピン配置や機能はPSoC5LPと互換性があり、メーカーはPSoC5LPへの置き換えを推奨している[2]

マイクロコントローラに加え、「ユーザーモジュール」と呼ばれるブロック構成機能があり、周辺機能を集積できるのが特徴である。

Bluetooth Low Energy

サイプレスは、2014年からBluetooth Low Energyモジュールを搭載したPSoC4 BLE(Bluetooth Smart)の提供を開始した[3]。ユーザーはPSoCの開発環境を利用することによりBLEモジュールを追加できる。 PSoC 6シリーズには、Bluetooth 5規格に準拠したBLEモジュールが追加された[1]

歴史と採用実績

製品としての出荷は2002年に始まった[4]。サイプレスはPSoCを促進するため2002年と2004年に雑誌・Circuit Cellarにて「PSoC Design Challenge」を掲載した[5]

2009年9月にPSoCにPSoC3PSoC5の2ファミリを追加する事を発表した[6]。最大の特徴はCPUコア(コアアーキテクチャ)の一新で、PSoC3は8ビットのIntel 8051を、PSoC5には32ビットのARM Cortex M3を採用し、性能を改良・改善している。なお、当初から存在する初代PSoCは今後もPSoC1として展開される。

2012年12月にPSoC5の消費電力を抑えたPSoC5LPが発表され[7]2013年3月にはPSoC4のファミリが発表された[8]

TiVoや、AppleiPodのホイール部分の静電容量センサーの制御などに利用されている。

テクノロジー

コア(中心部分)とアナログおよびデジタルブロックで構成されており、プログラムと相互に利用できる。

コア

PSoC1のコアには以下の物が含まれている。

ユーザーモジュール

PSoCの特徴の1つとして、他のマイクロコントローラ(マイコン)と異なり「ユーザーモジュール」と呼ばれる機能があげられる。様々なアナログおよびデジタルブロックを使用して、マイコンの周辺に必要な一連の機能を集積・内蔵することができる。初期化処理や割り込み処理などのAPIサブルーチンは開発環境が自動的に作成してくれる。デバイスによって異なるが、最大で16個のデジタルブロックと12個のアナログブロックが利用できる物もある。

デジタルブロックには、デジタルビルディングブロック(DBBxx)とデジタル通信ブロック(DCBxx)の2種類があり、デジタル通信ブロックにはI/Oユーザーモジュール(SPII2CUARTなど)を構成できる。各デジタルブロックは8ビット処理であるが、複数のブロックを組み合わせる事で16・24・32ビットで処理する事ができる。例えば、16ビットのPWMやタイマーはデジタルブロックを2つ接続して処理される。

電源投入時に(ユーザーモジュールを)構成する必要がある点においてはFPGAに似ているが、構成データは内蔵フラッシュメモリーに記憶されており自動的に読み込まれる。PSoC1ではデジタルブロックは既存の物しか使用できず、HDLなどで独自に作成することはできない。ユーザーモジュールの構成は動作中にユーザーモジュールを再構築し、動作・機能を変更することも可能である。

I/Oポート

I/Oポートの機能が固定されている他のマイクロコントローラと異なり、特にデジタル入出力においてはI/Oポートの制約が少ない。PSoCを搭載する基板に合わせて使用するI/Oポートを選択でき、周辺の配線パターンを最適化しやすい。

M8Cプロセッサ

M8Cプロセッサとは、サイプレス・セミコンダクター社が開発した8ビットマイクロプロセッサコアである。ハーバード・アーキテクチャで、93.7kHz~24MHzで動作し、最大4MIPSの性能がある[9]ビッグエンディアンである。

PSoC1のCPUコアとして使用されている。

開発環境

GUIによる数々の開発環境が無償で提供されている。

PSoC Designerの開発画面。 ユーザーモジュールエディタ(上)と、プログラミングエディタ(下)
PSoC Designerの開発画面。
ユーザーモジュールエディタ(上)と、プログラミングエディタ(下)
PSoC Designer、PSoC Creator
統合設計環境である。アセンブラまたはC言語にて開発が行え、コンパイラ(ライセンス込み)も付属している。
PSoC DesignerはPSoC1を、PSoC CreatorがPSoC3・PSoC4・PSoC5をそれぞれサポートしている。
PSoC Express
コードフリーの組込み設計ツール。PSoCの殆どの機能をドラッグ&ドロップのアイコンと論理式でアクセスして利用する事が出来る。
PSoC Programmer
ライター(書き込み装置)を利用してデバイスに書き込む際に利用する。

出典

  1. ^ a b 32-bit Arm® Cortex®-M4 PSoC® 6
  2. ^ PSoC 5
  3. ^ PSoC® 4 BLE (Bluetooth Smart)
  4. ^ ロイター:"Cypress Hits Half-Billion Mark in Shipments of PSoC Programmable System-on-Chip Devices"
  5. ^ Circuit Cellar:PSoC Design Challenge 2002
  6. ^ Cypress Revolutionizes Embedded Design with High Performance, Low Power PSoCR 3 and PSoC 5 Programmable System-on-Chip Architectures
  7. ^ New Cypress PSoCR 5LP Family with ARMR Cortex?-M3 Processor Powers High-Precision Programmable Analog with a Single-Cell Battery, Advancing Embedded Design
  8. ^ Cypress’s PSoCR 4 Architecture Delivers the Industry’s Most-Flexible, Lowest-Power ARMR Cortex?-M0-Based Devices for Embedded Designs
  9. ^ Technical Reference Manual (TRM)(Rev.*H)p.63

外部リンク