GreenPAK先行開発ボードを動かしてみる

目次
- はじめに
- 開発ソフトウェアのダウンロード・インストール
- ハードウェアのセットアップ
- プロジェクトの作成と実行(Counter with Clock Enable)
- プロジェクトの作成と実行(LED_String_with_Direction)
- まとめ
1. はじめに
GreenPAKは、ルネサスエレクトロニクス製(2021年に買収したDialog Semiconductor社の
製品)、ミックスドシグナルのプログラマブルデバイスです。
GreenPAKファミリには、パワーオンリセット、アナログコンパレータ、レベルシフト、 フリップフロップ等いろいろな種類のコンポーネントを内蔵したデバイスファミリーがあり、 ユーザーが使いたい機能を持ったデバイスを選んで、コンポーネントをカスタマイズして使うことのできる デバイスです。
Go Configure™Software Hubという無償のソフトウェアを使って、すべてのデバイスの設計を行えます。
手始めにこのソフトウェアのインストールを行い、簡単な回路をインプリメントして動かしてみます。
準備するもの
・PC(Windows 10 pro 64bit)+インターネット環境
・開発キット SLG4DVKINTRO
開発キット SLG4DVKINTRO
開発キット SLG4DVKINTROには、GreenPAK Advanced Development Board とそのソケットコネクタに 接続して使う GreenPAK ADV. Bord Dip Adapter およびそのアダプターのDIP20のソケットにさすGreenPAK デバイスが実装してある5種類10個のDIPボード(SLG46120V-DIP、SLG46721V-DIP、SLG46620V-DIP、SLG46537V-DIP、 SLG46826V-DIP 各2枚)、 GreenPAK Advanced Development BoardとホストPCをつなぐUSBケーブルが同梱されていました。
GreenPAKのマニュアルは、日本語マニュアルも少しありますが英国のベンダーなのでほとんどが英語です。
とりあえずこのキットのユーザーガイド(GreenPAK Advanced Development Platform User Manual [UM-GP-002]) を参考にしてやってみます。
GreenPAKファミリには、パワーオンリセット、アナログコンパレータ、レベルシフト、 フリップフロップ等いろいろな種類のコンポーネントを内蔵したデバイスファミリーがあり、 ユーザーが使いたい機能を持ったデバイスを選んで、コンポーネントをカスタマイズして使うことのできる デバイスです。
Go Configure™Software Hubという無償のソフトウェアを使って、すべてのデバイスの設計を行えます。
手始めにこのソフトウェアのインストールを行い、簡単な回路をインプリメントして動かしてみます。
準備するもの
・PC(Windows 10 pro 64bit)+インターネット環境
・開発キット SLG4DVKINTRO

開発キット SLG4DVKINTRO
開発キット SLG4DVKINTROには、GreenPAK Advanced Development Board とそのソケットコネクタに 接続して使う GreenPAK ADV. Bord Dip Adapter およびそのアダプターのDIP20のソケットにさすGreenPAK デバイスが実装してある5種類10個のDIPボード(SLG46120V-DIP、SLG46721V-DIP、SLG46620V-DIP、SLG46537V-DIP、 SLG46826V-DIP 各2枚)、 GreenPAK Advanced Development BoardとホストPCをつなぐUSBケーブルが同梱されていました。
GreenPAKのマニュアルは、日本語マニュアルも少しありますが英国のベンダーなのでほとんどが英語です。
とりあえずこのキットのユーザーガイド(GreenPAK Advanced Development Platform User Manual [UM-GP-002]) を参考にしてやってみます。
2. 開発ソフトウェアのダウンロード・インストール
GreenPAKファミリーの開発は、GreenPAK Designer というソフトウェアを使って行います。
まずは、このソフトウェアをルネサスエレクトロニクスのwebサイトからダウンロードしてインストールします。
GreenPAK™プログラマブルデジアナ混載製品 → Tools & Resources → Go Configure™ Software Hub → ダウンロードから自分の環境にあったパッケージを選択してダウンロードします。
私の環境は、windows 10 Pro 64 ビットなので Go Configure Software Hub Windows (64-bit)を 選択します。
ダウンロードのためには、メールアドレスを登録してルネサスアカウントの作成が必要です。
約255MBのgo-configure-sw-hub-vx.xx.xxx-win64.zip(xは、バージョンを表す数字)を任意の場所に解凍して、setup.exeを実行し、 必要なライブラリーをインストールして,Lisence Agreementを承諾すれば、インストールが始まり、 successfullyで終われば、完了です。
スタートから、Go Configure Software Hub (64-bit)をクリックして立ち上げてみます。
Welcome画面が出ます。
Go Configure Software Hub の Welcome画面 Developをクリックすると、開発ツールの初期画面に切り替わります。
この画面から開発するGreenPAKファミリ の情報にアクセスしたり、デバイスを 選択し、新規プロジェクトを開始したり、 既存プロジェクトを呼び出したりできます。 (GreenPAK Designer User Gudeの 7頁以降に、このソフトウエアの機能の 詳細な説明があります)
ソフトウェアのセットアップは以上です。
まずは、このソフトウェアをルネサスエレクトロニクスのwebサイトからダウンロードしてインストールします。
GreenPAK™プログラマブルデジアナ混載製品 → Tools & Resources → Go Configure™ Software Hub → ダウンロードから自分の環境にあったパッケージを選択してダウンロードします。
私の環境は、windows 10 Pro 64 ビットなので Go Configure Software Hub Windows (64-bit)を 選択します。
ダウンロードのためには、メールアドレスを登録してルネサスアカウントの作成が必要です。
約255MBのgo-configure-sw-hub-vx.xx.xxx-win64.zip(xは、バージョンを表す数字)を任意の場所に解凍して、setup.exeを実行し、 必要なライブラリーをインストールして,Lisence Agreementを承諾すれば、インストールが始まり、 successfullyで終われば、完了です。

スタートから、Go Configure Software Hub (64-bit)をクリックして立ち上げてみます。
Welcome画面が出ます。

Go Configure Software Hub の Welcome画面 Developをクリックすると、開発ツールの初期画面に切り替わります。

この画面から開発するGreenPAKファミリ の情報にアクセスしたり、デバイスを 選択し、新規プロジェクトを開始したり、 既存プロジェクトを呼び出したりできます。 (GreenPAK Designer User Gudeの 7頁以降に、このソフトウエアの機能の 詳細な説明があります)
ソフトウェアのセットアップは以上です。
3. ハードウェアのセットアップ
このキットのユーザーマニュアルに、2つのプロジェクト(5.1 Project: Counter with Clock Enable,
5.2 Project: LED String with Direction)が載っておりますのでその回路をハードウエアにインプリメントして動かしてみます。
各プロジェクトの詳細の説明は、次のドキュメントをご参照ください。
5.1 Project: Counter with Clock Enable → GreenPAK Advanced Development Platform User Manual [UM-GP-002]の15/42~
5.2 Project: LED String with Direction → GreenPAK Advanced Development Platform User Manual [UM-GP-002]の25/42~
これらは、SLG46721をターゲットとしたプロジェクトなので、キットのデバイスでSLG46721Vのターゲット基板を使います。
先行開発ボードにアダプタをさしてデバイス基板を実装する GreenPAK Advanced Development Boardの20ピンコネクタ(SV1)に、GreenPAK ADV. Bord Dip Adapter をさしこんで、20ピンのDIPのソケットにSLG46721Vをさします。
( SLG46721V の1ピンマーク●を1番ピンに合わせて、逆接続に注意してください。)
※購入した時点では、GreenPAK ADV. Bord Dip Adapter についているゴムのスペーサが、 MCUに干渉してボードが傾いてしまいます。ゴム足を干渉しないように1ピンの近くに 付けかえたほうがいいと思います。
付属のUSB mini-B ケーブルでPCと接続すると、USBを通してPCから電源が供給されて、 白色LEDが点灯します。
各プロジェクトの詳細の説明は、次のドキュメントをご参照ください。
5.1 Project: Counter with Clock Enable → GreenPAK Advanced Development Platform User Manual [UM-GP-002]の15/42~
5.2 Project: LED String with Direction → GreenPAK Advanced Development Platform User Manual [UM-GP-002]の25/42~
これらは、SLG46721をターゲットとしたプロジェクトなので、キットのデバイスでSLG46721Vのターゲット基板を使います。

先行開発ボードにアダプタをさしてデバイス基板を実装する GreenPAK Advanced Development Boardの20ピンコネクタ(SV1)に、GreenPAK ADV. Bord Dip Adapter をさしこんで、20ピンのDIPのソケットにSLG46721Vをさします。
( SLG46721V の1ピンマーク●を1番ピンに合わせて、逆接続に注意してください。)
※購入した時点では、GreenPAK ADV. Bord Dip Adapter についているゴムのスペーサが、 MCUに干渉してボードが傾いてしまいます。ゴム足を干渉しないように1ピンの近くに 付けかえたほうがいいと思います。

付属のUSB mini-B ケーブルでPCと接続すると、USBを通してPCから電源が供給されて、 白色LEDが点灯します。
4. プロジェクトの作成と実行(Counter with Clock Enable)
ユーザーマニュアルに載っている2つのプロジェクト(5.1 Project: Counter with Clock Enable,
5.2 Project: LED String with Direction)をマニュアルに沿って作成、実行してみます。
Project: Counter with Clock Enableは、主にデジタルコンポーネントで構成した回路 Project: LED String with Directionは、アナログコンパレータのコンポーネントを使用した回路の例になっています。
1.プロジェクトCounter with Clock Enable の作成と実行
[GreenPAK Advanced Development Platform User Manual [UM-GP-002]の15/42~24/42]
プロジェクトの回路は、CNT_INから入力したクロックパルスをCNT_ENの入力の論理レベルで カウントするかどうかをコントロールするだけの簡単なサンプルプロジェクトです。
(1) プロジェクトCounter with Clock Enable の作成
プロジェクトで使用するデバイスは、SLG46721Vですので、 ①開発ツールの初期画面のフィルター欄に“SLG46721”と入力し、②SLG46721Vをダブルクリックします。
Project settingsのOperating conditonsを
画面のようにセット(▲をクリック)してOKします。
SLG46721VのGreenPAK DesignerのGUIの初期画面に切り替わります。
まず初めに、このプロジェクトに必要なブロックを選択します。
選択は、メインワークエリアでブロック を選択して消すこともできますが、上図赤枠のComponents Listでチェックを外すことで簡単に行えます。
(2) プロジェクトに必要なComponents の呼び出し
まずI/O PADsでこのプロジェクトで使用する
3ピン(PIN2, PIN3 , PIN20 )以外のI/Oピンの
チェックを外します。
それから、回路に必要な ブロックにチェックを入れて、メインワークエリアに ブロックを呼び出します。
次に呼び出した各ブロックのプロパティを編集し、機能を設定します。
(3) 電源、グランド、入出力ピンの設定
各ピンやブロックを選択すると、そのピンやブロックのPROPATYが、画面左側の赤枠の部分に 表示されます。
VDDとGNDはデフォルトのままにして、PIN2,PIN3,PIN20を次のように設定します。
Applyをクリックすることで、ワークエリアのシンボルが機能設定に従って変わります。
(4) 各ブロックの設定
2-bit LUT4, 2-bit LUT5, 14-bit CNT1/DLY1を次のように設定します。
(5) 各ブロックの配置と接続
各ピンやブロックをワイヤリングしやすいように配置します。
をONにして各ピンやブロックを配線します。
接続ノードをクリックするとそこから配線可能なノードが緑色にハイライト表示されます。
その中から配線するノードを選択してクリックすると、自動でルーテングして接続されます。
配線が完了したら、各ピンを選択して
をクリックし、各ピンに名前を付けます。
回路エントリーの完成です。
(6)デバッグ
エントリーした回路を、ボード上のチップにロードして動作確認を行います。
GreenPAK Advanced Development Board を USBでPCに接続して、
をクリックします。
Development Platform Selector で GreenPAK Advanced Development Board を選択します。
Emulation をクリックすると、プロジェクトのコードがボード上のチップにロードされて、 テストできるようになります。
※SLG46721は、NVM内蔵のOTPデバイスで、電源投入時にNVMの内容をレジスタ(バッファー)に 読み出し、その内容でチップが構成されるようです。
Emulation 機能では、NVMにデータを書き込む のでなく、このレジスタ(バッファー)に直接チップ構成を書き込むために、OTPデバイスでも Emulationの回数制限はないようです。
オンボードテストでは、デバイスのピンに、ボード上の回路からいろいろな回路を接続してデバイスの 動作を確認することができます。
このプロジェクトでは、VDDにSignal generator を接続して3.3Vを 、CNT_IN(ピン2)に、 Logic generator を接続して、クロックパルスを供給します。
CNT_EN(ピン3)には、プッシュボタン を接続してロジックレベルを切り替えて動かします。
出力CNT_OUT(ピン20)には、Bufferd LEDを接続して、出力論理レベルをLEDの点滅で観測できます。
接続、設定できるシグナルソースの詳細については、 GreenPAK Advanced Development Platform User Manual [UM-GP-002]のFigure12.Pin Signsl Source/Loading Schematics または、 GreenPAK Designer User Guide の 6.GreenPAK Debug Tool をご参照ください。
ワークエリア内のVDDにデフォルトで接続してある“S”のところをダブルクリックします。
電源に3.3Vを連続して供給する設定になっています。
そのままにして
をクリックしてSignal Wizard
を閉じます。
Signal WizardのLogic Generator SettingのHigh time,Low timeを500msに変更して、Applyを クリックします。
をクリックして閉じます。
出力(CNT_OUT)をモニターするために、PIN 20のLEDをクリックして、Bufferd LEDを有効にします。
(TP20のLEDが点灯します)
デバッグの準備ができましたので、実行します。
Debugging Controls の Start All をクリックして
すべてのシグナルソースをスタートさせます。
PIN 3に設定したボタンをクリックすると下記のシーケンスで、TP2 ,TP3のLEDが点灯し、回路動作を確認できます。
TP2,TP3 ,TP20 には、各ノードの信号がひきだされていますので、 計測器等を接続して観測できます。
(7)プロジェクトの保存
Stop All をクリックして動作を停止させ、Emulation をクリックして、エミュレーションを抜けます。
をクリックしてデバッグを終了します。
Fileメニューの Save as… でプロジェクトの保存を行います。
プロジェクトファイルは、xxxx.gp3 の拡張子で保存され、以降はこのファイルを呼び出して編集、 デバッグなどを行うことができます。
Project: Counter with Clock Enableは、主にデジタルコンポーネントで構成した回路 Project: LED String with Directionは、アナログコンパレータのコンポーネントを使用した回路の例になっています。
1.プロジェクトCounter with Clock Enable の作成と実行
[GreenPAK Advanced Development Platform User Manual [UM-GP-002]の15/42~24/42]

プロジェクトの回路は、CNT_INから入力したクロックパルスをCNT_ENの入力の論理レベルで カウントするかどうかをコントロールするだけの簡単なサンプルプロジェクトです。
(1) プロジェクトCounter with Clock Enable の作成

プロジェクトで使用するデバイスは、SLG46721Vですので、 ①開発ツールの初期画面のフィルター欄に“SLG46721”と入力し、②SLG46721Vをダブルクリックします。


SLG46721VのGreenPAK DesignerのGUIの初期画面に切り替わります。
まず初めに、このプロジェクトに必要なブロックを選択します。
選択は、メインワークエリアでブロック を選択して消すこともできますが、上図赤枠のComponents Listでチェックを外すことで簡単に行えます。
(2) プロジェクトに必要なComponents の呼び出し

それから、回路に必要な ブロックにチェックを入れて、メインワークエリアに ブロックを呼び出します。
次に呼び出した各ブロックのプロパティを編集し、機能を設定します。
(3) 電源、グランド、入出力ピンの設定
各ピンやブロックを選択すると、そのピンやブロックのPROPATYが、画面左側の赤枠の部分に 表示されます。

VDDとGNDはデフォルトのままにして、PIN2,PIN3,PIN20を次のように設定します。



Applyをクリックすることで、ワークエリアのシンボルが機能設定に従って変わります。

(4) 各ブロックの設定
2-bit LUT4, 2-bit LUT5, 14-bit CNT1/DLY1を次のように設定します。

(5) 各ブロックの配置と接続
各ピンやブロックをワイヤリングしやすいように配置します。



接続ノードをクリックするとそこから配線可能なノードが緑色にハイライト表示されます。
その中から配線するノードを選択してクリックすると、自動でルーテングして接続されます。

配線が完了したら、各ピンを選択して


回路エントリーの完成です。

(6)デバッグ
エントリーした回路を、ボード上のチップにロードして動作確認を行います。
GreenPAK Advanced Development Board を USBでPCに接続して、


Development Platform Selector で GreenPAK Advanced Development Board を選択します。


Emulation をクリックすると、プロジェクトのコードがボード上のチップにロードされて、 テストできるようになります。
※SLG46721は、NVM内蔵のOTPデバイスで、電源投入時にNVMの内容をレジスタ(バッファー)に 読み出し、その内容でチップが構成されるようです。
Emulation 機能では、NVMにデータを書き込む のでなく、このレジスタ(バッファー)に直接チップ構成を書き込むために、OTPデバイスでも Emulationの回数制限はないようです。


オンボードテストでは、デバイスのピンに、ボード上の回路からいろいろな回路を接続してデバイスの 動作を確認することができます。
このプロジェクトでは、VDDにSignal generator を接続して3.3Vを 、CNT_IN(ピン2)に、 Logic generator を接続して、クロックパルスを供給します。
CNT_EN(ピン3)には、プッシュボタン を接続してロジックレベルを切り替えて動かします。
出力CNT_OUT(ピン20)には、Bufferd LEDを接続して、出力論理レベルをLEDの点滅で観測できます。
接続、設定できるシグナルソースの詳細については、 GreenPAK Advanced Development Platform User Manual [UM-GP-002]のFigure12.Pin Signsl Source/Loading Schematics または、 GreenPAK Designer User Guide の 6.GreenPAK Debug Tool をご参照ください。

ワークエリア内のVDDにデフォルトで接続してある“S”のところをダブルクリックします。

電源に3.3Vを連続して供給する設定になっています。
そのままにして



Signal WizardのLogic Generator SettingのHigh time,Low timeを500msに変更して、Applyを クリックします。


出力(CNT_OUT)をモニターするために、PIN 20のLEDをクリックして、Bufferd LEDを有効にします。
(TP20のLEDが点灯します)

デバッグの準備ができましたので、実行します。

PIN 3に設定したボタンをクリックすると下記のシーケンスで、TP2 ,TP3のLEDが点灯し、回路動作を確認できます。

TP2,TP3 ,TP20 には、各ノードの信号がひきだされていますので、 計測器等を接続して観測できます。
(7)プロジェクトの保存
Stop All をクリックして動作を停止させ、Emulation をクリックして、エミュレーションを抜けます。



Fileメニューの Save as… でプロジェクトの保存を行います。
プロジェクトファイルは、xxxx.gp3 の拡張子で保存され、以降はこのファイルを呼び出して編集、 デバッグなどを行うことができます。
5. プロジェクトの作成と実行(LED_String_with_Direction)

回路説明
プロジェクトは、SIGNALから入力した正弦波を3個のアナログコンパレータで3レベルの内部 リファレンス電圧と比較し結果をそれぞれのピンに出力する回路になっています。
各出力は、DIRECTIONの論理で反転できるようになっています。

コンパレータの非反転入力には、内部設定したバイアス電圧が、反転入力には、SIGNALに入力した 正弦波が入力されますので、出力ピンに現れる波形は、DIRECTIONピンの論理によって、上図のようになります。
(1) プロジェクトLED String with Direction の作成
プロジェクトで使用するデバイスは、プロジェクト“Counter with Clock Enable と同じくSLG46721V ですので、作成については、5,6頁を参照してください。
(2) プロジェクトに必要なComponents の呼び出し


I/O PADs でこのプロジェクトで使用する5ピン(PIN2, PIN6 , PIN15 , PIN17 , PIN19 )以外の I/Oピンのチェックを外します。
それから、回路に必要なブロック(EXNOR用に2-bit LUT 3個、 アナログコンパレータ A CMP 3個)にチェックを入れて、メインワークエリアにブロックを呼び出します。
次に呼び出した各ブロックのプロパティを編集し、機能を設定します。
(3) 電源、グランド、入出力ピンの設定
VDDとGNDはデフォルトのままにします。
PIN2を次のようにDigital inputに設定します。

Applyをクリックすることで、ワークエリアのシンボルが機能設定に従って変わります。

PIN6は、下記のようにを次のようにAnalog input/outputに設定します。

Applyをクリックすることで、ワークエリアのシンボルが機能設定に従って変わります。

PIN15,PIN17,PIN19は、下記のようにを次のようにDigital outputに設定します。

入出力ピンを出力設定で使う場合は、OEをPOR に接続する必要があるので、出力設定すると、 PORコンポーネントが自動で現れて結線されます。
(4) 各ブロックの設定



A CMP0, A CMP1, A CMP2 を次のように設定します。



(5) 各ブロックの配置と接続
各ピンやブロックをワイヤリングしやすいように配置します。



A CMP0,A CMP1,A CMP2は、電源をPORに配線すれば、Propaties で設定してある配線が接続されます。

回路エントリーの完成です。
(6)デバッグ
エントリーした回路を、ボード上のチップにロードして動作確認を行います。
GreenPAK Advanced Development Board を USBでPCに接続して、


Development Platform Selector で GreenPAK Advanced Development Board を選択します。


Emulation をクリックすると、プロジェクトのコードがボード上のチップにロードされて、 テストできるようになります。


このプロジェクトでは、VDDにSignal generator を接続して3.3Vを 、SIGNAL(ピン6)に、 Signal generator を接続して、正弦波を供給します。 CNT_EN(ピン2)には、プッシュボタンを 接続してロジックレベルを切り替えて動かします。
3つの出力LED_A(ピン15)、 LED_B(ピン17)、 LED_C(ピン19)、には、Bufferd LEDを 接続して、出力論理レベルをLEDの点滅で観測できます。
接続、設定できるシグナルソースの詳細については、 GreenPAK Advanced Development Platform User Manual [UM-GP-002]のFigure12.Pin Signsl Source/Loading Schematics または、 GreenPAK Designer User Guide の 6.GreenPAK Debug Tool をご参照ください。



PIN6に接続した Signal generator の“S”のところをダブルクリックします。

上記のように正弦波を供給する設定にして


Button を接続します。

Buttonが表示されます。
出力(LED_A, LED_B, LED_C )をモニターするために、 PIN 15, PIN 17, PIN 19のLEDをクリックして、 Bufferd LEDを有効にします。


回路説明のタイムチャートのタイミングで、 TP15 ,TP17 ,TP19の LEDが点灯し、回路動作を 確認できます。
PIN 2に設定したボタンをクリックするとLEDの点滅の仕方が変わります。
TP15 ,TP17 ,TP19 には、各ノードの信号がひきだされていますので、計測器を接続して観測 できます。

6. まとめ

先行開発ボードを使うことで、短時間でアナログミックスド デバイスのカスタムプロジェクトを作成し、デジタル機能や アナログ機能の検証を効率的に行うことができます。
GreenPAKファミリーには、このほかにも、オペアンプやPLL,発振回路,LDO等 様々なコンポーネントが用意してあります。
またデバイスによって使用できるコンポーネントの構成が異なります。
回路をインプリメントするためのデバイスの選定や、試作を行う際には、この先行開発ボードを使う メリットは大きいと思います。
またGo Configure™Software Hubには、まだ数多くの機能があるようです。
次回は、それらの機能を説明するとともに、回路例などを具体的なプロジェクトとともに 説明していきます。
この記事を書いた人
田代 将文(九州技術課)
論理設計など主にデジタル関連の仕事をしてきました
趣味は電子工作をしたり音楽を聴くことです
新しいものにチャレンジすることが好きです
