NJU20300 データシート

NJU20300
暫定版
デジタル電源制御用 DSC
■
概
■
要
NJU20300 は、デジタル電源向けにリアルタイム性の向上を追及し、最適設計
された最大動作周波数 31.25MHz の新日本無線オリジナル DSC(デジタル・シグ
ナル・コントローラ)です。
DSP とマイクロ・コントローラの特徴を合わせたハイブリッド型 16 ビット固
定小数点 DSP コアと、高速 AD 変換機能、柔軟な PWM 機能など周辺回路を含め
た高速応答の実現に向けた機構を備えます。また、プログラマブルなクロック周
波数設定機能、各種スリープ機能などシステム構成や仕事量に応じた消費電力管理
の実現に向けた機構を備えます。また、60MHz 内蔵発振器、LDO 内蔵による単一
電源、コンパレータ用 DAC を持ち、コンパクトな電源システムを構築可能です。
■
外 形
NJU20301FR3
特徴
● DSPコア
・4ステージのインオーダパイプライン
・ハーバードアーキテクチャバス
・4レベルの優先順位付き割込み
・1系統の高速割込み
・16ビット長/32ビット長混在命令
・ロードストアアーキテクチャ
・64ビット長の信号処理命令
(積和演算とメモリアクセスの並列実行)
・パイプラインハザード検出ロジック
・分岐先アドレスバッファ
・2つのハードウェアループ
・2つのデータアドレス生成
・40ビットの算術論理演算
・+16∼-16ビットのシフト
● AD変換
①差動A/D変換器
・10ビット精度6ビット分解能 最大6MSPS
・差動比較型
・4入力/参照 + 内蔵DAC
・PWM波形生成器との同期
②A/D変換器
・10ビット分解能 最大1MSPS
・逐次比較型
・8入力 + 2S/H
・PWM波形生成器との同期
● PWM波形生成
・6出力/3チャンネルPWM出力
・最小1ns分解能出力
・外部イベント連動の出力停止機能
● タイマー
● クロック
・内蔵60MHz発振器、XTAL発振器+PLL選択
● 通信
・UART/I2C/SPI
● メモリ
・プログラム ワンタイムROM(8kW)
・データ/プログラムRAM(2kW
● IOポート・コンパレータ
・12本のIOポート(機能ピンと共用)
・DAC付き20ns遅延コンパレータx2
● 電源
・LDO内蔵
3V単一電源
・デジタル/アナログ 3.0∼3.6V
● 消費電力
・135mW@30MHz
● 動作温度
・周囲温度
-40∼85℃
・ケース表面温度
-40∼100℃
・ジャンクション温度 -40∼105℃
● 構造
・CMOS構造
● 外形
・LQFP48
・プログラムタイマー
・IC/OC/PWM―4チャンネル汎用タイマー
Ver.2011-12-1
-1-
NJU20300
暫定版
パッケージ図
AVSS
AVDD
AN0
AN1
AVSS
AVDD
DVSS
PA4
AVDD
DVDD33
DVSS
48 47 46 45 44 43 42 41 40 39 38 37
36
1
AN6
32
AN3
PB0
6
31
7
LQFP48-R3
LQFP48
AN2
PB1
30
DVSS
PB2
8
29
DVDD33
PB3
9
28
VPP
PB6
10
27
TESTMODE
PB7
11
26
PB4
RESETB
12
25
13 14 15 16 17 18 19 20 21 22 23 24
PB5
OSCO
5
NJU20300
AN4
PA7
OSCI
33
PLLVDD
4
PC0
AN5
PA6
PLLVSS
34
PC1
3
PC2
AN7
PA5
PC3
35
PC4
2
PC5
DVDD18
DVSS
■
VLDOI
VLDOO
DVDD33
■
端子説明
機能入出力端子以外にもデジタル内部電源端子、デジタル入出力用の電源端子、アナログ電源端子、PLL専用電
源端子が必要になります。
注意)
・
3.3V電源とLDO入力であるVLDOI端子はPCB上で太く短く接続する必要があります。1.8V電源とLDO出力である
VLDOO端子も同様にPCB上で太く短く接続する必要があります。
・
LDO出力であるVLDOO端子は1.8Vを出力します。このVLDOO端子からグランドに3.3μFの積層セラミックキャパシ
タを最短で接続する必要があります。
・
全てのGND端子はPCB上での配線をIC近傍で接続して下さい。DVDD18とPLLVDD18はPCB上での配線をIC近傍で接続
してください。VDD33はPCB上での配線をIC近傍で接続してください。
記号) I・・・CMOS入力、O・・・CMOS出力、OD・・・オープンドレイン出力、Z・・・ハイインピーダンス、PU・・・プルアッ
プ抵抗付き
-2-
Ver.2011-12-1
NJU20300
暫定版
端子機能
Ver.2011-12-1
端子番号
記号
I/O(初期状態)
機能
1
VLDOO
-
LDO出力(1.8V)
2
DVDD18
-
内部デジタル電源(1.8V)
3
PA5
I/O(Z)
汎用入出力ポートA
ビット5 コンパレータ0参照入力
4
PA6
I/O(Z)
汎用入出力ポートA
ビット6 コンパレータ1入力
5
PA7
I/O(Z)
汎用入出力ポートA
ビット7 コンパレータ1参照入力
6
PB0
I/O(Z)
汎用入出力ポートB
ビット0
7
PB1
I/O(Z)
汎用入出力ポートB
ビット1
8
PB2
I/O(Z)
汎用入出力ポートB
ビット2
9
PB3
I/O(Z)
汎用入出力ポートB
ビット3
10
PB6
I/O(Z)
汎用入出力ポートB
ビット4
11
PB7
I/O(Z)
汎用入出力ポートB
ビット5
12
RESETB
I/OD(Z)
外部リセット
13
DVSS
-
デジタルグランド
14
DVDD33
-
デジタルIO電源
15
PC5
I/O(Z)
汎用入力ポートC
ビット5
PWMOB[2]出力
16
PC4
I/O(Z)
汎用入力ポートC
ビット4
PWMO[2]出力
17
PC3
I/O(Z)
汎用入力ポートC
ビット3
PWMOB[1]出力
18
PC2
I/O(Z)
汎用入力ポートC
ビット2
PWMO[1]出力
19
PC1
I/O(Z)
汎用入力ポートC
ビット1
PMOB[0]出力
20
PC0
I/O(Z)
汎用入力ポートC
ビット0
PWMO[0]出力
21
PLLVSS
-
PLLアナロググランド
22
PLLVDD
-
PLLアナログ電源
23
OSCI
I
発振器入力
24
OSCO
O
発振器出力
25
PB5
I/O(Z)
汎用入出力ポートB
ビット5
26
PB4
I/O(Z)
汎用入出力ポートB
ビット4
27
TESTMODE
I
テストモード
28
VPP
-
OTP書込み電源
29
DVDD33
-
デジタルIO電源
30
DVSS
-
デジタルグランド
31
AN2
アナログ
A/D変換器
アナログ
入力2
32
AN3
アナログ
A/D変換器
アナログ
入力3
33
AN4
アナログ
A/D変換器
アナログ
入力4
34
AN5
アナログ
A/D変換器
アナログ
入力5
(1.8V)
書込み6.75V/書込み以外0V
-3-
NJU20300
暫定版
■
35
AN7
アナログ
A/D変換器
アナログ
入力7
36
AN6
アナログ
A/D変換器
アナログ
入力6
37
AVSS
-
アナロググランド
38
AVDD
-
アナログ電源
39
AN0
アナログ
A/D変換器
アナログ
入力0
40
AN1
アナログ
A/D変換器
アナログ
入力1
41
AVSS
-
アナロググランド
42
AVDD
-
アナログ電源
43
DVSS
-
デジタルグランド
44
AVDD
-
アナログ電源
45
PA4
I/O(Z)
46
DVDD33
-
デジタル電源
47
VLDOI
-
LDO入力(3.3V)
48
DVSS
-
デジタルグランド
汎用入出力ポートA
ビット4 コンパレータ0入力
電気的特性
絶対最大定格
パラメータ
値
ロジック系外部電源電圧
VDVDDIO33
VSS端子基準
-0.3Vから3.6V
ロジック系内部電源電圧
VDVDD18
VSS端子基準
-0.3Vから1.98V
ロジック入力電圧範囲、VIN
-0.3Vから5.5V
アナログ系入力電圧範囲
AVSS端子基準
-0.3VからAVDD33+0.3V
接合温度(Tj)
-40∼125℃
電気的特性
項目
電圧
-4-
最小
標準
最大
単位
電源電圧-1.8V系(DVDD18)
1.62
1.80
1.98
V
電源電圧-3.3V系(DVDDIO33,AVDD33)
2.97
3.3
3.63
V
ロジック入力ローレベル電圧範囲、VIL
-0.3
-
0.8
V
Ver.2011-12-1
NJU20300
暫定版
周波数
温度
ロジック入力ローレベル電圧範囲、VIH
2
-
DVDIO33
V
ロジック入力リーク電流、Il(VI=0V/3.3V)
-2
-
2
uA
ロジックオフリーク電流、Ioz(Vo==0V/3.3V)
-2
-
2
uA
プルアップ抵抗、RPU
25K
56K
100K
Ω
プルダウン抵抗、RPD
25K
57K
125K
Ω
ロジック出力ローレベル電圧、VOL@下記負荷条件
-
-
0.4
V
ロジック出力ハイレベル電圧、VOH@下記負荷条件
2.4
-
-
V
ロジック出力ローレベル電流、IOL@VOL
5.0
7.5
10
mA
ロジック出力ハイレベル電流、IOH@VOH
7.5
15
25
mA
アナログ入力電圧範囲
-0.3
-
AVDD+0.
3
V
XTAL発振器周波数1
6
-
30
MHz
内蔵発振器周波数
-
60MHz
-
MHz
システムクロック周波数
0
-
62.5
MHz
PLL入力クロック周波数
3.2
20
322
MHz
PLL出力VCO周波数
200
-
500
MHz
動作温度:ジャンクション温度(Tj)3
-40
-
105
℃
周囲温度(Ta)
-40
ー
85
℃
保存温度(OTPROMのデータ保持を除く)
-50
ー
125
℃
保存温度(OTPROMのデータ保持4)
-40
ー
85
℃
1
発振周波数により発振回路と水晶発振子パラメータ選択必要あり
SIIM/PLLのCLKOPTビットを0x00にした条件
3
デバイスの動作保証はジャンクション温度(Tj)で定まる
4
保存可能時間を保証するものではない
2
Ver.2011-12-1
-5-
NJU20300
暫定版
1
NJU20300概要
このNJU20300はデジタル電源制御DSC向けの16ビットのDSPである"XIMO16"をコアとした、制御用DSPマイコン
(DSC)であり、電源制御やモーター制御に必要な基本的なモジュールを内部に持ちます。
このNJU20300の特徴は:
・
デジタル電源やモーター制御などの制御向けLSI
・
DSPコア31.25MHz動作バージョンXIMO16B
・
差動ADC(DAD)-4ch/6-bit/6Msps@最大10bit精度
・
逐次比較型ADC変換(PSATD2)-8ch/10bit/1Msps
・
PWM出力(PSPWM2)-3ch/6出力@最小1ns/2ns分解能
・
アナログコンパレータ(COMP)-非同期x2(応答時間20ns)/同期x1、DAC-10ビットx2
・
通信-I2C,UART,SPI
・
汎用タイマ-時間管理(RTM)、OC/IC/PWM/QEI機能(GPT2)
・
プログラムメモリ-OTP ROM 8kW
・
データメモリ/プログラムメモリ兼用-Dual-Port RAM 2kW
・
48ピンQFPパッケージ
・
内蔵発振器( 62.5MHz)/XTAL発振器(+PLL(最大250MHz))選択
・
3.3V単一電源(LDO内蔵)
・
小型、省消費電力
・
システム制御-クロック/リセット/割り込み/WDT、スリープモードと復帰
・
システム保護機能-クロック監視、PLL動作異常、パワーオン検出、電源電圧監視、ウォッチドッグリセット、
バスエラーモニター、不正割り込み検出
尚、デバッグ専用デバイスでは以下の機能を持ちます。
・
デバッグ-JTAG-IF
・
デバッグ用外部メモリインターフェース機能
外部端子は、機能入出力端子、デジタル内部電源端子、デジタル入出力用の電源端子、アナログ電源端子、PLL
専用電源端子で構成されます。すべての出力端子と入出力端子はリセット端子によりデバイス内のクロックに非同
期でハイインピーダンス状態になります。
-6-
Ver.2011-12-1
NJU20300
暫定版
GPIO
VPP
(TESTMODE)
(RESETB)
(TBD)
(TBD)
SPCK IRQ
SPDA
SPDB
RDYB
EXTCLK
SPI.A
GPIOA
(PORT)[7:0]
GPIOA(SFOUT/DDR)[7:4]
PA4
PA5
PA6
PA7
XIMO16B
TXD
RXD
X
S バス
IRQ
Y
P
バス制御
DMEM
EXTCLK
UART2
POTP
SCL
IRQ
SDA
EXTCLK
MEMS
TEST
TESTMODE
(PC0)
(PC1)
(PC2)
(PC3)
(PC4)
(PC5)
MODE
GPIOB
(PORT)[7:0]
GPTI[3:0]
GPTO[3:0]
GPTC[1:0]
IRQ[4:0]
SPECIAL
IRQ
RESETB
IRQS
GPT2
RTM2
EXTHIRQ
(PB5)
(RESETB)
RESETB
PWRON
IRQ
SIM
EXTCLK0
EXTCLK1
GPIOC(PORT)5:6]
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
GPIOB(SFOUT/DDR)[7:0]
MMI2C
BGV
CLKGEN
LVI.
EXTIRQ0
EXTIRQ1
IRQ[1:0]
IRQS[1:0]
PLL
MONCLK
INTOSC.
PSPWM2
OSC
PWMCO[13:0]
IRQ[7:0]
IRQS[7:0]
PCLK
OSCI
OSCO
VLDOI
PWM00
PWM0B0
PWM01
PWM0B1
PWM02
PWM02B
PWMI0
PWMI1
PWMI2
PWMI3
BG
(AVDD33)
(AVSS33)
LDO
VLDOO
ANAMUX
(AN7)
(AN6)
(AN5)
(AN4)
(AN3
(AN2)
(AN1)
(AN0)
AN7
AN6
AN5
AN4
AN3
AN2
AN1
AN0
EXTCLK
COMP
AN8
AN9
AN10
AN11
COMPI0
COMPR0
COMPI1
COMPR1
IRQ[2:0]
IRQS[2:0]
CTLIN[11:0]
IRQ[4:0]
(PA4)
(PA5)
(PA6)
(PA7)
DAD
CTLIN[6:0]
IRQ[3:0]
PSATD2
COMPO0
COMPOS0
COMPO1
COMPOS1
COMPO2
COMPOS2
HRDG2
AN0
AN1
AN2
AN3
AN4
AN5
AN6
AN7
PWM00
PWM01
PWM02
PWM03
PWM04
PWM05
AN7
AN6
AN5
AN4
AN3
AN2
AN1
AN0
REF3
REF2
REF1
(AN3
(AN2)
(AN1)
(AN0)
(AN6)
(AN5)
(AN4)
AN0
AN1
AN2
AN3
AN4
AN5
AN6
AN7
PC0
PC1
PC2
PC3
PC4
PC5
図1-1: NJU20300 データシートブロック図
Ver.2011-12-1
-7-
NJU20300
暫定版
1.1 機能オプション
NJU2030xシリーズのデバイスは機能オプションとして、内蔵発振器とXTAL外部発振器の発振器選択、LDO使用/不
使用の選択、SLEEP命令実行時のSTOP動作の許可/不許可の選択が可能です。
このNJU20300の機能オプションはSTOP動作の不許可が固定化され、内蔵発振器とXTAL外部発振器の発振器選択、
LDO使用/不使用の選択が可能です。
表 1:機能オプション
機能オプション
オプション
発振器選択
内蔵発振器
XTAL発振器
LDO使用
LDO不使用
LDO使用
SLEEP命令STOP動作
STOP動作不使用
1.1.1動作モード
このデバイスにはテスト動作を示すテストモードと、ユーザー動作を示すユーザーモード及びブートモードがあ
ります。ユーザーモードとブートモードは例外処理ベクタが異なり、ブートモードはデバイス起動時にブートROM
コードを実行するように動作します。(ブートモードのリセットベクタはブートROMコードの先頭アドレスを指し示
します。)
各モードエントリーはTESTMODE端子、RESETB端子とPB端子の状態で定められます。尚、TESTMODE端子がローレベ
ルであるときは、常にユーザーモードでの動作になります。
ブートモード
ブートモードではチップ内蔵されたブートプログラムが実行されMMI2CあるいはUARTを使用して、内部メモリにデ
ータを書き込みます。この端子による起動デバイスの選択はソフトウェアによりGPIOモジュールを通して行われま
す。
RESETB端子の立ち上がり時にTESTMODE端子がハイレベル、PB5端子がハイレベルのときにブートモードとしての動
作になります。このとき、PB5端子がローレベルであるときの動作は保証されません。このとき、PB2端子とPB3端子
により、UARTとMMI2Cの設定をします。尚、ブート動作ではUART2とMMI2CモジュールがPB0端子とPB1端子を使用しま
す。
・
PB2端子とPB3 端子が共にハイレベルであるとマスター動作によるMMI2Cによるブート起動になります。
・
PB2端子がハイレベル、かつ、PB3 端子がローレベルであるとスレーブ動作によるMMI2Cによるブート起動にな
ります。
・
PB2端子がローレベル、かつ、PB3 端子がハイレベルであると、UART2によるブート起動になります。
・
PB2端子とPB3端子がローレベルであると、即座にブートジャンプをします。
-8-
Ver.2011-12-1
NJU20300
暫定版
1.2 アドレスマップとメモリ
このデバイスは64Kワードのアドレス空間のうち、0x0000から0x00ffまでを256ワードのIO空間,0x800から0x0FFF
までをデータ用RAMから成るDRAM、0xE000から0xFFFFまでをプログラム用メモリとして、ユーザープログラムや例外
処理ベクタやブートメモリ空間を持ち、OTPROMやRAMからなるPMEMとします。
図1-2: メモリマップ
P バス
256
2K
0x0000
0x00FF
X バス
Y バス
S バス
IO
(256)
I/O
0x0800
DRAM
0x0FFF
0xE000
POTP
8K
512
0xFCFF
0xFD00
0xFEFF
0xFF00
224
28
4
Ver.2011-12-1
0xFFDF
0xFFE0
0xFFFB
0xFFFC
0xFFFF
BROM
POTP
VRAM
POTP
-9-
NJU20300
暫定版
1.2.1IOレジスタマップ
ペリフェラルモジュールは0x0000から0xffの256ワードのアドレス空間におかれます。バス接続はSバスになりま
す。IO領域レジスタは0x0000からのオフセットアドレスになります。
表 2:IO領域レジスタ
アドレス
モジュール
0x00
SIM
SIMコンフィグ
SIMCFG
0x01
SIM制御0
SIMCTL0
0x02
SIM制御1
SIMCTL1
0x03
生成器制御
SIMCGEN
0x04
COP制御
SIMCOPCL
0x05
COPデータ
SIMCOPDT
0x06
WUT制御
SIMWUT
0x07
内蔵発振器制御
SIMIOSC
0x08
SIM割込み制御0
SIMINT0
0x09
SIM割込み制御1
SIMINT1
0x0a
SIM割込み制御2
SIMINT2
0x0b
SIM割込み制御3
SIMINT3
0x0c
SIM割込み状態
SIMINTS
0x0d
システム例外処理
SIMEXCP
0x0e
バスエラー制御
SIMBEL
0x0f
バスエラーアドレス
SIMBERAD
0x10-1f
(内部使用)
(内部使用)
0x20
メモリコンフィグ
MEMCFG
0x21
メモリ制御0
MEMCTL0
メモリ制御1
MEMCTL1
0x23
メモリ制御2
MEMCTL2
0x24
メモリオプション0
MEMOPT0
0x25
メモリオプション1
MEMOPT1
0x22
MEMS
- 10 -
レジスタ名
0x26-27
(内部使用)
0x28
COMP
(内部使用)
コンパレータ制御0
COMPCTL0
0x29
コンパレータ制御1
COMPCTL1
0x2a
コンパレータDAC0データ
COMP0DAC
Ver.2011-12-1
NJU20300
暫定版
0x2b
0x2c
EXTHIRQ
コンパレータDAC1データ
COMP1DAC
外部高速割込み制御
EXTIRQ
0x2d
(予約)
0x2c-2f
0X30
(予約)
RTM2
RTM制御
RTMCTL
0x31
RTMカウンタA
RTMCTA
0x32
RTMカウンタB
RTMCTB
0x33
RTMチャンネル制御
RTMCHCTL
0x34
RTMチャンネル0比較
RTMCH0
0x35
RTMチャンネル1比較
RTMCH1
0x36
RTMチャンネル2比較
RTMCH2
0x37
RTMチャンネル3比較
RTMCH3
SPIコンフィグ
SPICFG
0x39
SPI制御
SPICTL
0X3a
SPIデータ
SPIDAT
0X38
SPI.A
0x3b
(予約)
0x3c-3f
0x40
(予約)
UART2
UARTコンフィグ0
UARTCFG0
0x41
UARTコンフィグ1
UARTCFG1
0x42
UARTコンフィグ2
UARTCFG2
0x43
UART制御
UARTCTL
0x44
UART状態
UARTSTAT
0x45
UARTデータ
UARTDAT
0x46
UARTLIN0
UARTLIN0
0x47
UARTLIN1
UARTLIN1
I2Cコンフィグ
I2CCFG
0x49
I2Cコンフィグ2
I2CCFG2
0x4a
I2C制御
I2CCTL
0x4b
I2Cステータス
I2CSTA
0x4c
I2Cデータ
I2CDAT
0x48
MMI2C
0x4d-f
0x50
Ver.2011-12-1
(予約)
GPT2
GPT制御0
GPTCTL0
- 11 -
NJU20300
暫定版
0x51
GPT制御1
GPTCTL1
0x52
GPT制御2
GPTCTL2
0x53
-
-
0x54
GPTコンフィグ0
GPTCFG0
0x55
GPTコンフィグ1
GPTCFG1
0x56
GPTコンフィグ2
GPTCFG2
0x57
GPTコンフィグ3
GPTCFG3
0x58
GPTコンフィグ4
GPTCFG4
0x59
GPTコンフィグ5
GPTCFG5
0x5a
GPTカウンタAデータ
GPTCTA
0x5b
GPTカウンタBデータ
GPTCTB
0x5c
GPTチャンネル0データ
GPTCH0DT
0x5d
GPTチャンネル1データ
GPTCH1DT
0x5e
GPTチャンネル2データ
GPTCH2DT
0x5f
GPTチャンネル3データ
GPTCH3DT
ATDコンフィグ
ATDCFG
0x60
0x61
- 12 -
PSATD2
(使用禁止)
0x62
ATD制御0
ATDCTL0
0x63
ATD制御1
ATDCTL1
0x64
ATDチャンネル0
ATDCH0
0x65
ATDチャンネル1
ATDCH1
0x66
ATDチャンネル2
ATDCH2
0x67
ATDチャンネル3
ATDCH3
0x68
ATDチャンネル4
ATDCH4
0x69
ATDチャンネル5
ATDCH5
0x6a
ATDチャンネル6
ATDCH6
0x6b
ATDチャンネル7
ATDCH7
0x6c
ATDチャンネル8
ATDCH8
0x6d
ATDチャンネル9
ATDCH9
0x6e
ATDチャンネル10
ATDCH10
0x6f
ATDチャンネル11
ATDCH11
0x70
ATDチャンネル12
ATDCH12
0x71
ATDチャンネル13
ATDCH13
Ver.2011-12-1
NJU20300
暫定版
0x72
0x73
ATDCH14
ATDチャンネル15
ATDCH15
0x74
(予約)
0x75
(予約)
0x76
(使用禁止)
0x77
(使用禁止)
0x78
ATDデータレジスタ0
ATDDAT0
0x79
ATDデータレジスタ1
ATDDAT1
0x7a
ATDデータレジスタ2
ATDDAT2
0x7b
ATDデータレジスタ3
ATDDAT3
0x7c
ATDデータレジスタ4
ATDDAT4
0x7d
ATDデータレジスタ5
ATDDAT5
0x7e
ATDデータレジスタ6
ATDDAT6
0x7f
ATDデータレジスタ7
ATDDAT7
0x80
DADコンフィグ
DADCFG
0x81
DAD制御
DADCTL
0x82
(使用禁止)
0x83
(使用禁止)
0x84
DADチャンネル0コンフィグ
DAD0CFG
0x85
DADチャンネル1コンフィグ
DAD1CFG
0x86
DADチャンネル2コンフィグ
DAD2CFG
DADチャンネル3コンフィグ
DAD3CFG
0x88
DADチャンネル0制御
DAD0CTL
0x89
DADチャンネル1制御
DAD1CTL
0x8a
DADチャンネル2制御
DAD2CTL
0x8b
DADチャンネル3制御
DAD3CTL
0x8c
DADチャンネル0データ
DAD0DAT
0x8d
DADチャンネル1データ
DAD1DAT
0x8e
DADチャンネル2データ
DAD2DAT
0x8f
DADチャンネル3データ
DAD3DAT
0x87
DAD
0x90-9f
Ver.2011-12-1
ATDチャンネル14
(予約)
- 13 -
NJU20300
暫定版
0xa0
PWMコンフィグ0
PWMCFG0
0xa1
PWMコンフィグ1
PWMCFG1
0xa2
PWMチャンネルコンフィグ00
PWMCCFG00
0xa3
PWMチャンネルコンフィグ10
PWMCCFG10
0xa4
PWMチャンネルコンフィグ20
PWMCCFG20
0xa5
PWMチャンネルコンフィグ30
PWMCCFG30
0xa6
PWMチャンネルコンフィグ01
PWMCCFG01
0xa7
PWMチャンネルコンフィグ11
PWMCCFG11
0xa8
PWMチャンネルコンフィグ21
PWMCCFG21
0xa9
PWMチャンネルコンフィグ31
PWMCCFG31
0xaa
PWMチャンネルコンフィグ02
PWMCCFG02
0xab
PWMチャンネルコンフィグ12
PWMCCFG12
0xac
PWMチャンネルコンフィグ22
PWMCCFG22
0xad
PWMチャンネルコンフィグ32
PWMCCFG32
0xae-b1
- 14 -
PSPWM2
(使用禁止)
0xb2
PWM制御0
PWMCTL0
0xb3
PWM制御1
PWMCTL1
0xb4
PWM割込み制御0
PWMIRQ0
0xb5
PWM割込み制御0
PWMIRQ1
0xb6
PWM状態0
PWMSTAT0
0xb7
PWM状態1
PWMSTAT1
0xb8
PWMチャンネル制御0
PWMCCTL0
0xb9
PWMチャンネル制御1
PWMCCTL1
0xba
PWMチャンネル制御2
PWMCCTL2
0xbb
PWMチャンネル制御3
PWMCCTL3
0xbc
PWM0カウンタデータ
PWMCNT0
0xbd
PWM1カウンタデータ
PWMCNT1
0xbe
PWM2カウンタデータ
PWMCNT2
0xbf
PWM3カウンタデータ
PWMCNT3
0xc0
PWM0データ0
PWM0DAT0
0xc1
PWM0データ1
PWM0DAT1
Ver.2011-12-1
NJU20300
暫定版
0xc2
PWM0データ2
PWM0DAT2
0xc3
PWM0データ3
PWM0DAT3
0xc4
PWM0データ4
PWM0DAT4
0xc5
PWM0データ5
PWM0DAT5
0xc6
PWM0データ6
PWM0DAT6
0xc7
PWM0データ7
PWM0DAT7
0xc8
PWM1データ0
PWM1DAT0
0xc9
PWM1データ1
PWM1DAT1
0xca
PWM1データ2
PWM1DAT2
0xcb
PWM1データ3
PWM1DAT3
0xcc
PWM1データ4
PWM1DAT4
0xcd
PWM1データ5
PWM1DAT5
0xce
PWM1データ6
PWM1DAT6
0xcf
PWM1データ7
PWM1DAT7
0xd0
PWM2データ0
PWM2DAT0
0xd1
PWM2データ1
PWM2DAT1
0xd2
PWM2データ2
PWM2DAT2
0xd3
PWM2データ3
PWM2DAT3
PWM2データ4
PWM2DAT4
0xd5
PWM2データ5
PWM2DAT5
0xd6
PWM2データ6
PWM2DAT6
0xd7
PWM2データ7
PWM2DAT7
0xd4
PSPWM
0xd8-df
(使用禁止)
0xe0
HRDG制御0
HRDGCTL0
0xe1
HRDG制御1
HRDGCTL1
0xe2
HRDG制御2
HRDGCTL2
HRDG制御3
HRDGCTL3
0xe4
HRDG制御4
HRDGCTL4
0xe5
HRDG制御5
HRDGCTL5
0xe6
HRDG制御6
HRDGCTL6
0xe7
HRDG制御7
HRDGCTL7
0xe3
HRDG
Ver.2011-12-1
- 15 -
NJU20300
暫定版
0xe8-ef
0xf0
(予約)
GPIO
ポート0
PORT0
0xf1
ポート1
PORT1
0xf2
ポート出力設定
DDR
0xf3
ポートモジュール出力設定
MODOUT
0xf4
ポート機能
PORTFUNC
0xf5
入力ブリッジ
GPIOBG
0xf6-f7
0xf8-ff
- 16 -
(予約)
(予約)
Ver.2011-12-1
NJU20300
暫定版
2
割り込み
2.1 割り込みベクタ
割り込みベクタは以下に割り付けられます。
表 3:割込み要求モジュールとベクタアドレス
ベクターアドレス
例外処理リソース
例外番号
ユーザーモード
ブートモード
リセット
0
0xFFFF
0xFFEF
DEBUG命令
1
0xFFFE
0xFFEE
不正動作
2
0xFFFD
0xFFED
不正割り込み
3
0xFFFC
0xFFEC
ペリフェラル割込み0
4
0xFFFB
0xFFEB
ペリフェラル割込み1
5
0xFFFA
0xFFEA
ペリフェラル割込み2
6
0xFFF9
0xFFE9
ペリフェラル割込み3
7
0xFFF8
0xFFE8
ペリフェラル割込み4
8
0xFFF7
0xFFE7
ペリフェラル割込み5
9
0xFFF6
0xFFE6
ペリフェラル割込み6
10
0xFFF5
0xFFE5
ペリフェラル割込み7
11
0xFFF4
0xFFE4
ペリフェラル割込み8
12
0xFFF3
0xFFE3
ペリフェラル割込み9
13
0xFFF2
0xFFE2
ペリフェラル割込み10
14
0xFFF1
0xFFE1
ペリフェラル割込み11
15
0xFFF0
0xFFE0
不正動作割込み等のシステム機能ではない、ユーザー機能による割込みソースは全部で24本あります。これらの
割込みソースはモジュール仕様で管理されています。これらの割込みソースを割込み要求入力番号に合わせて、ホ
スト設定によりペリフェラル割込み0から11にマッピングをする必要があります。
に例外処理リソースと割込み要求入力番号、そしてスリープ動作に於ける動作を示します。
シリアル通信関係のモジュール(UART2、MMI2C、SPI.A)はそれぞれ1本づつ計3本の割込みソースを持っていま
すが1本に集約、COMPが持つ3本の割り込みは1本に集約、GPT2が持つ5本の割り込みも1本に集約されます。論理
和回路でこれらの3つの割込みの集約が行われます。
Ver.2011-12-1
- 17 -
NJU20300
暫定版
表 4:例外処理ソース
例外処理リソース
スリープ動作
モジュール
信号
SIM
リセット
○
DEBUG命令
−
不正動作
○
EXTHIRQ
IDLE
不正割り込み
○
外部割込み0
○
DOZE
SIESTA
INTINUMビット
-
-
0
INTINUM[0]
1
INTINUM[1]
○
○
外部割込み1
RTM2
割込み要求
○
-
-
2
INTINUM[2]
UART2,MMI2C,SPI.A
割込み要求
○
-
-
3
INTINUM[3]
GPT
¦割込み要求[4:0]
○
-
-
4
INTINUM[4]
SIM(WUT)
割込み要求
○
○
○
5
INTINUM[5]
COMP
¦割込み要求[2:0]
○
○
○
6
INTINUM[6]
DAD
割込み要求[0]
○
-
-
7
INTINUM[7]
割込み要求[1]
8
INTINUM[8]
割込み要求[2]
9
INTINUM[9]
割込み要求[3]
10
INTINUM[10]
11
INTINUM[11]
割込み要求[1]
12
INTINUM[12]
割込み要求[2]
13
INTINUM[13]
割込み要求[3]
14
INTINUM[14]
割込み要求[4]
15
INTINUM[15]
割込み要求[5]
16
INTINUM[16]
割込み要求[6]
17
INTINUM[17]
割込み要求[7]
18
INTINUM[18]
19
INTINUM[19]
割込み要求[1]
20
INTINUM[20]
割込み要求[2]
21
INTINUM[21]
割込み要求[3]
22
INTINUM[22]
割込み要求[4]
23
INTINUM[23]
24-31
INTINUM[24-31]
PSPWM2
割込み要求[0]
PSATD2
割込み要求[0]
(使用禁止)
3
割込み要
求入力番
号
○
○
-
○
-
-
○
-
-
ブートモード
ブートプログラムはブートモードからブートROMコードを実行することで動作をします。そのブートプログラムは
- 18 -
Ver.2011-12-1
NJU20300
暫定版
MMI2CあるいはUART2を使用して、内部メモリにデータを書き込みます。詳細についてはブートプログラムを参照し
てください。
4
その他の機能
4.1 バスエラー
バスエラーを出力する動作は内部バス制御部とIOバス制御部が行います。バスエラーを検出すると、内部バス制
御部が内部モジュールに対して、バスアクセス強制終了(バスターミネート)要求をアサートし、以下のモジュー
ルのうち、バスアクセスを行っているモジュールはその信号を受けてバスアクセスを強制終了します。
表 5:バスエラーを発生しうるモジュール
モジュール
備考
RTM2
GPT2
PSPWM2
PSATD2
バス制御(SIM)
メモリ(MEMS)
4.2 JTAG
デバイスIDは0x000035a5になります。その内訳は、新日本無線(株)の生産者番号は0x52(バンク6)、バージョン
は0x0と部品番号は0x0003です。
表 6:デバイスID
デバイスID[31:0]
Ver.2011-12-1
ビット位置
[31:28]
[27:12]
[11:1]
[0]
ビット長
4
16
11
1
内容
バージョン
部品番号
生産者番号
固定値
コード
0000
0000 0000 0000 0011
010 1101 0010
1
- 19 -
NJU20300
暫定版
5
SIM(System-Integration-Module)
LSI全体の制御はこのSIM(System-Integration-Module)で行われます。このSIMは内部はクロック制御、割込み
例外制御、リセット制御、テストモードエントリー部からなります。このモジュールにはスキャンパスは使用され
ません。また、このSIMはDSPコアであるXIMO16Bと直に接続されたモジュールになります。
システム保護機能として、クロック監視、PLL動作異常、パワーオン検出、電源電圧監視、ウォッチドッグリセッ
ト、バスエラーモニター、不正割り込みなどがあります。
5.1 電源部
電源制御は3.3Vからデジタル用電源1.8Vを生成するLDO、LVIや内蔵発振器、そしてバッファを通してA/D変換器に
バンドギャップ電圧を生成するBG出力、内部3.3V電源と1.8V電源の電圧監視を行うLVI、1.8Vの電源投入を検出する
PORからなります。
・
LDO回路はVLDOI端子に入力した2.5V以上の電圧から1.8Vの電圧を生成しVLDOO端子に出力します。
・
LVI回路はデジタル用1.8V電源が検出電圧以下になると1.8V用LVIリセット状態を出力、また、アナログ用3.3V
電源が検出電圧以下になると3.3V用LVIリセット状態を出力します。そして、デジタル1.8V電源の電圧検出電圧
以上になると1.8V用LVIリセット状態から抜け、また、アナログ用3.3V電源が検出電圧以下上になると3.3V用LVI
リセット状態から抜けます。この両方のLVIリセット状態から抜けるとLVIリセット解除となります。
このLVIにはヒステリシス動作はありません。
・
PWRON回路は電源投入時にはデジタル回路をパワーオンリセット状態にします。そして、デジタル用1.8V電源が
検出電圧以上になるとパワーオンリセット状態から抜けて動作状態に移行可能にします。LVI回路は内部使用の
BG出力用にバンドギャップ電圧を生成します。
図5-1: 電源部概念図
(内蔵発振器へ)
BG 出力
BGOUTEN ビット
VLDOO
VLDOI
LIV33
LDO
LVI
POR
- 20 -
LVI18
PORON
Ver.2011-12-1
NJU20300
暫定版
5.2 クロック
発振器オプション選択により、SIM外部に接続されるXTALを使用したXTAL発振器、あるいは内蔵発振器でクロック
を生成します。オプション選択により、内蔵発振器あるいはXTAL発振器が発振クロック(gclk)になります。LSI
外部からクロックを入力するには、XTAL発振器オプションを選択し、OSCO端子をオープン、OSCI端子から外部クロ
ックを入力します。
内蔵発振器をオプション選択であればXTAL発振器は停止、XTAL発振器をオプション選択であれば内蔵発振器は停
止状態になります。
発振クロック(gclk)を1/2分周したものが、内部使用する基本クロック(iclk)になります。
発振クロック(gclk)を生成器に入力し逓倍クロックと生成器クロックを生成します。内部がリセット状態にある
ときは生成器は初期化され停止し、CLKSELビットが0x0に設定され、基本クロック(iclk)がメインクロックとなりま
す。ソフトウェアにより生成器を動作開始させ、生成器クロックをメインクロック(mclk)にすることも可能です。
CLKSELビットで基本クロック(iclk)、発振クロック(gclk)、生成器クロックのいずれかから、メインクロック
(mclk)を生成します。メインクロック(mclk)からシステムクロック(suysclk)を生成して、LSI内部に分配されます。
クロック系の特徴
・
DSPコア、メモリ、PWM生成以外の周辺機能用システムクロックと独立したPWM生成クロック
・
動的動作周波数設定可能と各種スリープ動作
・
機能、負荷に応じた消費電力制御が可能
内蔵発振器動作
内蔵
発振器
LSI 全体
マルチプレクサ
マルチプレクサ
基本クロック
メインクロック システムクロック
/2
発振クロック
分周器
システムクロック
動作
生成器
逓倍器
分周器
PSATD2
生成器クロック
逓倍クロック
PLL クロック
内蔵発振クロック
PSPWM2
マルチプレクサ
OSCO
OSCI
XTAL
発振器
XTAL 発振器動作
クロック
モニター
MONCLK
クロックモニター動作へ
図5-2: クロック系統図
Ver.2011-12-1
- 21 -
NJU20300
暫定版
5.2.1発振器
発振器はXTALを使用するXTAL発振器と内蔵RCを使用する内蔵発振器があり、オプションによりどちらかを選択し
ます。尚、生成器の逓倍器(PLL)を使用する際にはXTAL発振器を選択しなくてはなりません。
発振器周波数、内蔵発振器周波数、生成器内のPLLの入力周波数と出力周波数、システムクロック周波数、PLLク
ロック周波数には最大値と最小値を持ちます。
表 7:周波数
リスース
標準(参考)
XTAL発振器
16MHz/20MHHz
内蔵発振器
60MHz
PLL入力
16MHz
PLL出力(pclk)
125MHz
システムクロック
31.25MHz
iclk
16.125MHz
gclk
31.25MHz
XTAL発振器
XTAL発振器オプションを選択すると発振クロック(gclk)はOSCI/OSCOに接続されるXTAL発振器より生成されます。
生成器の逓倍器(PLL)を使用する際にはこのXTAL生成器オプションを選択しなければなりません。
OSCI信号はXTAL発振器入力、または外部クロック入力となります。OSCO信号はXTAL発振器出力となります。また
外部クロックを入力する場合は使用しません。
XTAL発振器が動作を始めクロックを出力し始めた後、安定動作とみなされると、クロックが出力されます。外部
の電源電圧が低下状態、あるいは、内蔵発振器オプションが選択される場合には、XTAL発振器は停止します。
内蔵発振器
内蔵発振器オプションを選択すると、発振クロックgclkは内蔵発振器より生成されます。内蔵発振器が動作を開
始し、安定動作とみなされると、内蔵発振器から発振クロックが出力されます。
外部の電源電圧が低下状態、あるいはXTAL発振器オプション選択では内蔵発振器は停止します。
内蔵発振器は発振周波数をホストレジスタビットの設定で調整することが可能です。
5.2.2生成器
発振クロック(gclk)をPLLにより逓倍、分周器で分周、そして望む周波数の生成器クロックを生成します。リセ
ット状態であるときは生成器は初期化、パワーダウン状態であり、ホストレジスタビットは初期化されます。コー
ルドリセットでは生成器はパワーダウンモードになります。
生成器の逓倍器(PLL)を使用する際にはこのXTAL生成器オプションを選択しなければなりません
リセット状態にあるとき、生成器の動作は停止された状態にあります。リセット復帰後、ホストがソフトウェア
設定で生成器の動作を開始させる必要があります。生成器の動作は停止しているとき、システムは基本クロック
- 22 -
Ver.2011-12-1
NJU20300
暫定版
(iclk)と同じ周波数で動作しています。
ソフトウェアにより生成器を動作させると、OSCクロック周波数を逓倍したPLLクロックを生成します。そして、
このPLL出力のクロックは、1)PSPWM2 2)分周してシステムクロックとして配られ、それぞれの設定に従って動作
クロックを生成します。
5.2.3低消費電力動作
低消費電力動作には生成器の逓倍比と分周比を設定してマスタ−クロックの周波数を変える方法とsleep命令実
行によるスリープ動作による方法があります。
5.2.3.1ソフトウェアによる生成器の設定値変更
生成器内の分周器に対するパラメータ変更による生成クロック信号の周波数変更は、PLLを含む逓倍器の動作には
無関係であるので比較的短い回復時間でクロック出力を開始します。
生成器内の逓倍器に関するパラメータ変更では、逓倍器のPLLの動作を変更することになるので、PLL動作の変更
そして安定後に、クロック出力を開始することになります。このような生成器の設定値変更は動作安定するまで、
生成器クロックは停止されます。
5.2.3.2スリープ動作
SLEEP命令実行したとき、スリープ動作の各状態に移行します。スリープ動作にはSIESTA、DOZE、WAIT、IDLEの各
状態があります。それらのステージでは以下の内部動作をすることにより、消費電力を下げることになります。ス
リープ動作からの復帰はリセットあるいは割り込みからになります。割り込みからの復帰はこのスリープ動作固有
のステートフローを使用しますが、リセットからの復帰はリセットのステートフロー内の動作になります。
スリープ-SIESTA動作では生成器を停止させますが、GENENビットをクリアした生成器停止状態からのスリープ
-SIESTA動作であれば、PLLの電源を遮断された状態になり、一層の低消費電力動作が可能になります。す。
また、スリープ状態からの復帰条件はインテグレーションによって定められます。
リセット
リセット制御部は多種のリセットソースから内部リセットを生成します。これにより、外乱によるシステム保護
を可能にします。リセットソースは内部リセット、発振器、生成器、クロック出力動作に影響を与えます。
リセットソースの種類によって、コールドリセット、エラーリセット、通常リセットの種類の動作があります。
リセットソースは外部端子だけではなく、いくつか存在します。リセット解除後、そのリセット要因を知ることが
出来ます。このリセットソースにより内部動作の停止制御がおこなわれます。ります。内部リセット解除後に、
SOFTRSTビットのセットでソフトウェアリセットを確認出来ます。リセット要因のうち、コールドリセット、クロッ
クモニターリセット、生成器エラーリセット、システムエラーリセット、COP内部リセット、ソフトウェアリセット
はリセット出力RESETOUT信号として外部に出力されます。
リセット端子の接続はインテグレーションによって異なりますが、標準ではリセット出力RESETOUTおよびCOP外部
リセット出力COPOUTは外部リセット入力信号とWired ORで接続され、RESETB端子より入力される外部リセット信号
となります。
COP機能はシステムが正常に動作しているかを検出するハードウェアです。別名WDT(Watch-Dog-Timer)とも呼ば
れます。基本クロック(iclk)を最長224-1(16777215サイクル:1.6Hz @27MHz)間隔で動作チェックをする事が可
能です。バスタイムアウトは内部バスに接続されたペリフェラルはアクセス時間の延長を図ることが出来ます。し
かしながら、なんらかの問題でペリフェラルがバスを開放しないとき、バスタイムアウト時間を超えたときにバス
タイムアウトとして割り込みが発生します。
SIMは基本クロック(iclk)によって動作するタイマ、WUT(Wake Up Timer)を持っています。WUTEビットをセットす
るとこのタイマは動作状態になります。
Ver.2011-12-1
- 23 -
NJU20300
暫定版
例外制御と割り込み
割込みやリセットなどのベクターなどを処理する例外制御部はベクターアドレス生成と割込み制御機能を持ちま
す。ペリフェラルからの割込み要求入力は全部で32本可能です。ソフトウェアの設定により、その割込み要求入力
から12本のペリフェラル割込みを割り当てる必要があります。それらの割込みはそれぞれベクターアドレスと割込
みレベルを設定することが可能です。
高速割込み(FINT)
高速割込み処理では通常割り込みのように例外ベクタを使用せずにあらかじめ設定されたアドレスの内容を実行
先頭アドレスとします。
5.3 動作モードとそのエントリー
デバイスはいくつかの動作モードを持ちます。通常はユーザーモードで動作しますが、プログラムとデータを初
期化する目的で、ユーザーモードに対して異なるベクターを持つブートモードを持ちます。
それらのモードに入るには、TIFM/TRSTB/TCK/TDI信号を使用します。その内容はRESETB信号の立ち上がりで内部
に取り込まれますブートモードではブートメモリ内のブートプログラムが動作して、外部デバイスがペリフェラル
を通して内部RAMにデータを書き込みます。
電源投入、逓倍比、オプション変更、外乱などによって、PLLそのものが安定化時間を必要であるとき、比較的長
い安定化時間が要求されます。このとき、COP動作は自動的に停止状態にあります。
- 24 -
Ver.2011-12-1
NJU20300
暫定版
6
XIMO16Bアーキテクチャ概要
6.1 構成
にコアのブロック図を示します。コアはフロー制御ユニット、命令デコードユニット、データアドレス生成ユニ
ット、データ演算ユニットの4つの部分から構成されます。
フロー制御ユニットでは2つゼロオーバーヘッドループ機構によるループ実行が行なわれます。
命令デコードユニットでは、命令キューによるの可変長命令の整列、命令デコード、分岐命令によるプログラム
フロー制御などが行なわれます。また命令キャッシュとのインターフェイスを持ち、キャッシュへの命令登録、キ
ャッシュからの命令実行を行います。
データアドレス生成ユニットは、ポインタ演算用に2つの16ビットアドレス演算器を持っています。この演算器は
有効アドレス計算及びポインタレジスタ自動更新のために用いられます。命令毎に最大2つのアドレス生成と2つポ
インタレジスタの更新を行なうことが可能です。ポインタレジスタの自動更新ではポストインクリメント/デクリメ
ント、リングバッファ用のモジュロアドレッシング、FFT用のビットリバースアドレッシングをサポートしています。
データ演算ユニットでは、演算器として、1つの40ビット ALU、1つの40ビットバレルシフタ、1つの16ビット乗算
器を持っています。
40ビット ALUでは16/32/40ビットの算術論理演算を行ないます。40ビットバレルシフタでは最大40ビットデータ
の+16∼−16ビットシフトが行なえます。40ビット長の演算では2本の40ビットアキュームレータレジスタによって
演算結果を保持することができます。16ビット乗算器は16ビット × 16ビットの乗算を1サイクルで行い32ビットの
乗算結果を得ることができます。ALUと乗算器は、命令によって同時に使用することができます。1命令内で加減算
と乗算を並列に実行することで1システムクロック毎に1回の積和演算を実行することが可能です。
6.1.1アドレス空間
アドレス空間は16ビットで、ワード長が16ビットです。よって64KWordの空間を持ちます。データアドレス/プロ
グラムアドレスとも同じ論理空間内に存在します。
データメモリとして扱う場合、16ビットワードまたは32ビットロングワードとしてアクセスできます。32ビット
ロングワードとしてアクセスする場合、データは偶数アドレスに整列されている必要があります。
6.1.2バス
コアは統一された1つの論理空間を持ちますが、ハーバード型のアーキテクチャで構成されており、プログラムバ
スとデータバスは分離されています。
プログラムバスは1サイクルあたり16ビット分の命令語をメモリより読み込みます。読み込まれた命令語は命令キ
ューによって整列されます。
データバスはリード/ライト共通の32ビットバスが1つと、リード専用の32ビットバスが1つあります。命令によっ
て、2つのデータバスは同時に使用することができます。
・32ビット リード/ライト共通データバス (Xバス)
・32ビット リードデータバス (Yバス)
・16ビット プログラムバス (Pバス)
Ver.2011-12-1
- 25 -
NJU20300
暫定版
図6-1: コAブロック図
- 26 -
Ver.2011-12-1
NJU20300
暫定版
6.2 コアレジスタ
レジスタユーザモデルをレジスタモデルを示します。
コアのレジスタは16 本の16ビットデータレジスタと8本の16ビットポインタレジスタを中心に構成されています。
このほかに、40ビットのアキュームレータレジスタ2 本、データアドレス生成の設定レジスタ3本x2セット、ハー
ドウェアループ設定レジスタ3本x2セットなどから成ります。
図6-2: レジスタモデル
Ver.2011-12-1
- 27 -
NJU20300
暫定版
表 8:レジスタの種類
種類
- 28 -
機能
リセット時
汎用データレジスタ
d0 - d15
d1.0 - d15.14
d0からd15までの16ビット、16本のレジスタを表します。
不定
通常は16ビットレジスタとして使用されますが、命令によって32ビット、
8本のレジスタとして使用できます。
アキュームレータレジスタ
a0
a0i/a0h/a0l
a1
a1i/a1h/a1l
2本の40ビットレジスタa0/a1を表します。アキュームレータレジスタは8
ビットのa0i/a1i、16ビットのa0h/a1h、16ビットのa0l/a1l、と3つの部
位に分解してアクセスすることができます。
a0i/a1iを読み出す場合は、最上位ビットであるビット7から符号拡張し
た値が得られます。これら上位の8ビットは積和演算などの累加算による
オーバーフローを保持するために用いられます。
不定
ポインタレジスタ
p0 - p5/fp/sp
p0/p1/p2/p3/p4/p5/fp/spの8本の16ビットレジスタを表します。これら
のレジスタはアドレス空間を指示するためのポインタレジスタとして用
いられます。
spはスタックトップを指示するためのポインタとして使用されます。
fpはスタックフレームを指示するためのポインタとして、一部の命令で
特殊な操作、アドレッシングがサポートされています。
p0-5/fp:
不定
ステータスレジスタ
st
cc
stレジスタを表します。ALU/シフト演算での各コンディションコードビ
ット、割込みレベルを表すビットなどから成ります。
ccレジスタはコンディションコードレジスタで、stレジスタの下位8ビッ
トのみを指します。このシンボルでアクセスする場合、上位8ビットの読
み出し/書きこみはできません。
0xC000
動作モードレジスタ
pm
pmレジスタを表します。命令キャッシュやストアバッファの設定ビット
などから成ります。
0x0000
プログラムカウンタレジスタ
pc
実行するプログラムのアドレスを指示します。プログラムフロー制御命
令によって操作されます。
不定
ループカウンタレジスタ
c0/c1
2本の16ビットレジスタc0/c1を表します。ハードウェアループ動作での
ループ回数カウンタとして使用されます。
0x0000
ループスタートレジスタ
s0/s1
2本の16ビットレジスタs0/s1を表します。ハードウェアループ動作での
ループ上限アドレスを指示するレジスタとして使用されます。
不定
ループエンドレジスタ
e0/e1
2本の16ビットレジスタe0/e1を表します。ハードウェアループ動作での
ループ下限アドレスを指示するレジスタとして使用されます。
不定
ポインタモデファイレジスタ
m0/m1
2本の16ビットレジスタm0/m1を表します。通常はポインタレジスタの自
動更新でのステップ値として使用されます。
不定
バッファサイズレジスタ
l0/l1
2本の16ビットレジスタl0/l1を表します。データアドレス生成ユニット
の動作モード設定や循環バッファアドレッシング時のバッファサイズ値
として使用されます。
0x0000
バッファアドレスレジスタ
n0/n1
2本の16ビットレジスタn1/n0を表します。循環バッファアドレッシング
時のバッファの先頭アドレスとして使用されます。
不定
pc内部スタックレジスタ
spc
高速割込み時にpcレジスタの値がコピーされます。
不定
sp:
0xFFDF
Ver.2011-12-1
NJU20300
暫定版
st内部スタックレジスタ
sst
高速割込み時にstレジスタの値がコピーされます。
不定
c0/c1内部スタックレジスタ
sc0/sc1
高速割込み時にc0/c1レジスタの値がコピーされます。
不定
s0/s1内部スタックレジスタ
ss0/ss1
高速割込み時にs0/s1レジスタの値がコピーされます。
不定
e0/e1内部スタックレジスタ
se0/se1
高速割込み時にe0/e1レジスタの値がコピーされます。
不定
6.2.1ステータスレジスタとコンディションコードレジスタ
ステータスレジスタstは16ビット幅のレジスタで、ビット7からビット0は演算のコンディションコードレジスタ
ccで構成されています。このほかに割込みステータスビット、レジスタバンクビットなどがあります。
ビット位置
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
シンボル
I1
I0
FI
EE
-
-
-
B
U
E
S
F
N
V
Z
C
表 9:stレジスタのビット割り当て
ビット 説明
リセット後の値
C
加算命令の場合、キャリーが発生するとセットされ、そうでない場合クリアされます。減算/比較命 0
令の場合ボローが発生するとセットされ、そうでない場合クリアされます。
Z
演算の結果がゼロの場合にセットされ、そうでない場合にクリアされます。
V
演算の結果、オーバーフローが発生するとセットされ、そうでない場合にクリアされます。
0
N
演算結果の最上位ビットがコピーされます。
0
F
演算の結果、オーバーフローが発生するとセットされます。ユーザーが明示的にクリアしない限りク 0
リアされないスティッキービットです。
S
演算の結果、飽和処理が行なわれた場合にセットされます。ユーザーが明示的にクリアしない限りク 0
リアされないスティッキービットです。
E
アキュームレータをディスティネーションとする演算の結果、アキュームレータのビット39からビッ 0
ト31までが全て1または全て0で無い場合にセットされ、そうでない場合にクリアされます。
これは40ビットアキュームレータの値を2の補数とした場合、アキュームレータの拡張ワード部分に
有意なデータが存在しているかどうかを指示します。
U
コンディションコピー命令ccpによってセットまたはクリアされます。
B
レジスタバンクの現在選択されているバンクを表します。
0
EE
エラー例外の発生を表すステータスビットです。
エラー例外を受け付けるとセットされます。
0
FI
高速割込みのステータスを表すビットです。
高速割込みを受け付けるとセットされます。。
0
I0
コアの割込みマスクレベルとして使用されます。
1
I1
コアの割込みマスクレベルとして使用されます。
1
0
0
表 10:stレジスタ内のビット
6.2.1.1コンディションコードレジスタ
コンディションコードレジスタccはstレジスタの下位8ビットで構成されます。このレジスタにはALU/シフタによ
る演算のコンディションが格納されます。
一部の命令はシンボルccによってこのレジスタのみにアクセスすることが可能です。
Ver.2011-12-1
- 29 -
NJU20300
暫定版
6.2.1.2コンディションコード
条件付きブランチ/ジャンプ命令、条件付きレジスタ間転送命令、コンディションコピー命令では以下のコンディ
ションコードを使用できます。
シンボ
ル
condition
真の条件
フィールド
意味
比較命令後
ビットの状態
の意味
zc
b_00000
Z clear
等しく無い
!=
Z=0
zs
b_00001
Z set
等しい
==
Z=1
gt
b_00010
signed greater than
大きい(符号有り)
>
N=V and Z=0
ge
b_00011
signed greater than or eqaul
大きい又は等しい(符号有り)
>=
N=V
N!=V
lt
b_00100
signed less than
小さい(符号有り)
<
le
b_00101
signed less than or equal
小さい又は等しい(符号有り)
<=
N!=V or Z=1
ugt
b_00110
unsigned greater than
大きい(符号無し)
>
C=0 and Z=0
ule
b_00111
unsigned less than or equal
小さい又は等しい(符号無し)
<=
C=1 or Z=1
unsigned greater than or equal (C clear) 大きい又は等しい(符号無し)
>=
C=0
ult/cs b_01001
unsigned less than (C set)
小さい(符号無し)
<
vc
b_01010
V clear
オーバーフロー無し
vs
b_01011
V set
オーバーフロー有り
nc
b_01100
N clear
正又はゼロ
>=0
N=0
< 0
N=1
uge/cc b_01000
C=1
V=0
V=1
ns
b_01101
N set
負
al
b_01111
always
条件無し(常に真)
-
fc
b_10000
F clear
スティッキーオーバーフロー無し
F=0
fs
b_10001
F set
スティッキーオーバーフロー有り
F=1
sc
b_10010
S clear
飽和演算無し
S=0
ss
b_10011
S set
飽和演算有り
S=1
ec
b_10100
E clear
拡張アキュームレータ不使用
E=0
es
b_10101
E set
拡張アキュームレータ使用
E=1
uc
b_10110
U clear
Uビットクリア
U=0
us
b_10111
U set
Uビットセット
U=1
表 11:コンディションコード一覧
- 30 -
Ver.2011-12-1
NJU20300
暫定版
6.2.2pmレジスタ
pm(Processor Mode)レジスタはコア全体の動作モードを切り替える設定ビットから構成されています。命令キャ
ッシュ機能のon/off、ストアバッファのon/off、丸めモードの切り替えビットなどからなります。
ビット位置
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
シンボル
-
-
-
-
-
I64E I32E ICEN N
N
-
-
RM
-
PIOE N
0
SBEN
表 12:pmレジスタのビット割り当て
ビット 説明
リセット後の値
SBEN
0
ストアバッファの設定ビットです。
0:ストアバッファオフ
1:ストアバッファオン
PIOEN ポートマップドI/O動作許可ビットです。データレジスタD8-D15に対するRead/WriteがIOポートにマ 0
ップされます。詳細はインテグレーションの仕様を参照して下さい。
0:通常動作
1:ポートマップドI/Oモード
RM
rnd命令での丸めモードを選択します。
0:四捨五入
1:偶数丸め
0
ICEN
命令キャッシュ動作許可ビットです。
またこのビットがクリアされているとき、キャッシュは初期化されます。
0:キャッシュ不使用
1:キャッシュ使用
0
I32EN 32ビット長命令キャッシュ登録許可ビットです。
0
ICENビットと、このビットがセットされている時、32ビット長の命令が命令キャッシュにキャッシュ
されます。
0:32ビット長命令キャッシュ登録不許可
1:32ビット長命令キャッシュ登録許可
I64EN 64ビット長命令キャッシュ登録許可ビットです。
0
ICENビットと、このビットがセットされている時、64ビット長の命令が命令キャッシュにキャッシュ
されます。
0:64ビット長命令キャッシュ登録不許可
1:64ビット長命令キャッシュ登録許可
表 13:pmレジスタ内のビット
6.2.2.1SBENビット
コアはストアバッファと呼ばれるメモリへの書き込みデータ用一時バッファを持っており、SBENビットをセット
するとストアバッファの動作を有効にします。
ストアバッファはメモリへの遅延書き込みを実現することでバス競合によるコアのパイプラインストールを軽減
することが可能です。ストアバッファを有効にしている場合、データメモリ空間へのアクセスは命令の実行順と異
なる場合があります。
たとえば以下のような命令手続きを実行するとき、
mov.w (0x1000), d0
mov.w d0, (0x1001)
ストアバッファが有効な場合、アドレス0x1000への書き込みは一度ストアバッファに保持され、アドレス0x1001
からの読み出しが先に処理されます。コアのパイプラインはストールしません。
ストアバッファが無効な場合、アドレス0x1000への書き込み終了を待ってからアドレス0x1001からの読み出しが
実行され、その間コアはストールします。この動作は読み書きする相手がメモリである場合、ユーザが特に意識す
る必要はありません。しかしIO領域にマップされるペリフェラルに対するアクセスを行なう場合、バスアクセスの
順序が意味を持つことがあるため注意が必要です。
Ver.2011-12-1
- 31 -
NJU20300
暫定版
以下のケースではSBENビットの状態に関わらずストアバッファを含む書き込みトランザクションが全て処理され
た後に実行されることが保障されます。
・同じアドレスに対するWrite After Read
・movp.w命令によるリードアクセス
・メモリオペランドに対するビット操作命令
6.2.2.2PIOENビット
XIMO16BはデータレジスタD8-D15に対するアクセスをI/Oアクセスにマップする、ポートマップドI/O動作が可能で
す。PIOENビットをセットすると、D8-D15への読み書きがI/Oポートへのアクセスになります。
ポートの割り当てはデバイスのインテグレーションによって異なります。
6.2.2.3RMビット
丸め処理で使用されるビットです。
6.2.2.4ICENビット
XIMO16Bはプログラムバスのデータ幅が16ビットです。32ビット長の命令、64ビット長の命令を実行する際には、
命令フェッチに複数サイクルを使用するため、実行効率が低下します。
XIMO16Bの命令キャッシュ機能は32ビット長命令、及び64ビット長命令を一時バッファにキャッシュすることが可
能です。キャッシュされた命令を実行する場合、命令フェッチのためのサイクルが不要となり、命令実行を高速化
することができます。
ICENビットをセットするとキャッシュ動作が許可され、キャッシュから読み出された命令の実行が可能になりま
す。またICENビットをクリアするとキャッシュされた命令は全て破棄されます。
キャッシュのサイズ、制御方式はデバイスのインテグレーションによって異なります。
6.2.2.5I32ENビット
ICENビットとI32ENビットとがセットされているとき、32ビット長命令のキャッシュ登録動作が有効になります。
プログラムバスから読み出されて実行された32ビット長の命令はキャッシュに登録されます。
6.2.2.6I64ENビット
ICENビットとI64ENビットとがセットされているとき、64ビット長命令のキャッシュ登録動作が有効になります。
プログラムバスから読み出されて実行された64ビット長の命令はキャッシュに登録されます。
6.3 レジスタバンク
コアレジスタの一部はレジスタのバンクをもっています。バンク化されているレジスタはd0 - d15 / a0, a1 / p0
- p5, fp / m0, m1 / l0, l1 / n0, n1レジスタで、それぞれ1つのバンクを持ちます。リセット直後はバンク0の
常態にあります。stレジスタ内のBビットにコアレジスタの現在使用されているバンクの状態が表示されます。
Bビットの値を直接書き換えることで、どちらのバンクのレジスタにもアクセスすることが可能です。ただしバン
ク1(B=1)は高速割込みのサービスルーチンにおけるコンテキストとして使用することを前提としています。このた
め高速割込みの受付時にはBビットは自動的に1にセットされ、レジスタのバンクはバンク1の方向へ切り替わります。
- 32 -
Ver.2011-12-1
NJU20300
暫定版
7
ペリフェラル概要
7.1 メモリ
このデバイスはハーバードアーキテクチャとして同時にアクセス可能なプログラム専用バスと2つのデータ専用
バスを持ちます。メモリ実体としては内蔵RAMで構成されたデータメモリと内蔵OTPで構成されたプログラムメモリ
を持ちます。
このデバイスはデフォルトでセキュリティロック状態にあります。つまり、デバイスがリセット時にはセキュリ
ティロック状態にあります。低消費電力動作であるときに内蔵RAMと内蔵OTPとRAMはスタンバイ動作に入り、いかな
るアクセスも出来ません。
プログラムメモリー
ユーザープログラムメモリは0xe000から0xfcffの領域で約8Kワードのプログラム用OTPメモリ、0xffe0から0xfffb
の28ワードのベクタRAMなどから構成されます。また、OTPの書き込みについては別仕様で定義します。
OTPのアクセス時間が、バスの要求するノンウェイトのアクセス時間に比べて長い場合は、バスアクセスにウェイ
トサイクルを挿入してタイミングを合わせる必要があります。
OTP書込みの際にはVPP端子に標準6.75Vを印加します。OTP書き込みを使用しないときは、VPP端子を0Vにしなくて
はなりません。
ブートプログラムはブートROM内に置かれます。ジャンプテーブルとワークエリア、アドレス0xFD00から0xFEFF
までの512ワードのROMにプログラム、0xFFE0から0xFFEFまでの16ワードにベクターRAMとROMを置きます。ブートプ
ログラムコードの最終命令はジャンプテーブルの先頭アドレスにジャンプします。このジャンプテーブルはデータ
RAM(DRAM)のシステムプログラム領域の先頭アドレス0x0FC0と0x0FC1の2ワードに置かれます。端子の設定により、
UARTあるいはMMICによるブート起動が可能です。
データメモリ
データ用SRAMは0x0800から0x0fffまでの2Kワードの大きさを持ち、32ビット幅の排他的な読み/書き動作を行うX
バスとYバスの2つのポートを持った2ポートRAMになります。また、Xデータバスの書き込みは1ワード(16ビット)
幅あるいは2ワード(32ビット)幅で可能です。
この2Kワード空間のうち、0x0800から0x0FBFはユーザーデータ領域として使用されます。0x0FC0から0x0FFFまで
はシステムプログラム領域と使用され、ユーザーのアクセスは禁止されます。
7.2 タイマー
7.2.1リアルタイマー2
リアルタイマー2はリアルタイム制御用の時間間隔を生成する用途で使用されます。
16ビットのプリスケーラで分周された1/4から1/65536のシステムクロックあるいは外部入力クロックを選択し、
リードライト可能な16ビットのカウンタを2つ使用して任意のカウンタタイミングを生成します。そして2つのカウ
ンタ出力を選択し、16ビットの比較器を持った独立した4つの比較チャンネルを使用して、任意のタイミングで割込
みを発生することが出来ます。
7.2.2汎用タイマー(GPT2)
この汎用タイマーはアウトプットコンペア、インプットキャプチャ、基本的なPWM用途、モーター制御用のQEI動
作に使えるカウンタAとBを持ちます。また、カウンタBはパルスアキュムレータにも使えます。4つのチャンネル部
を持ち、そのチャンネル部はダブルバッファ構造のデータレジスタとロジックコンパレータで構成され、カウンタA
とBに選択接続可能になります。モジュール出力はチャンネル毎に設定可能です。カウンタAとB、外部イベント0と1、
チャンネル0から3の全部で8本の割込みソースから、ホストに対して最大5本の割込み要求を行うことが出来ます。
Ver.2011-12-1
- 33 -
NJU20300
暫定版
最大4本のインプットキャプチャとアウトプットコンペア、パルスアキュムレータ、イベントカウンタ、2つのPWM
出力を構成することが可能です。また、PWM動作であるとき、外部イベント入力のトリガにより出力レベルを即座に
ローレベルにする機能も持ちます。
7.3シリアル
3線式同期通信ペリフェラル(SPI)、非同期通信(UART)、同期通信(MMI2C)の3つのシリアルモジュールを持ち
ます。
7.3.1SPI
このモジュールはSPI(Serial Peripheral Interface)フォーマットを持つ同期型のシリアルインターフェース
になります。SPIフォーマットを持つデバイスと通信可能な機能を持ち、転送速度は最大3.37Mbpsになります。
このモジュールは可変周波数のシステムクロックと外部クロックを使用します。ユーザーがSPIENビットをセット
すると、このモジュールは動作許可になります。このモジュールの最高ビット周波数はマスター/スレーブとも2MHz
になります。このモジュールのシステムクロックは24MHz以上、200MHz以内でなくてはいけません。MSBファースト
の固定長8ビットになり、そのクロックのレベルと位相の選択は可能です。
SPCK端子は入出でSPIクロック、SPDA端子は入出力でSPIデータA入出力、SPDB端子は入出でSPIデータB入出力、
RDYBは入力専用端子でSPIレディに使用されます。SPDA端子とSPDB端子はSPIデータ入力(SDI)とSPIデータ出力(SDO)
信号に接続します。RDYB端子はマスターであるとき、使用されません。スレーブではRDY端子はRDYBENビットをセッ
トすると内部使用されます。また、該当する端子はオープンドレインとして動作をします。各入力端子はシュミッ
トトリガ動作をします。
7.4MMI2Cインターフェースモジュール
このインターフェースはI2C(Inter Integrated Circuit:以後I2C)のフォーマットでマルチマスターとスレーブ
動作をサポートします。
SCL端子は入出でシリアルクロックを示し、SDA端子は入出でシリアルデータ(双方向)を示します。SDL/SDA端子は、
ローレベル出力時にはプルダウン、ハイレベル出力時にはハイインピーダンス状態になります。よって、外部にプ
ルアップ抵抗接続が必要です。また、各入力端子はシュミットトリガ入力です。
SCL端子はマスター動作では出力、スレーブ動作ではアクノレッジサイクルでローレベルに保持するストレッチ動
作を行えます。SDA端子はマスター/スレーブ動作とも,有効データや制御レベルを出力する以外では切断されます。
7.4.1UARTモジュール
このモジュールはUARTフォーマットを持つ非同期型のシリアルインターフェースになります。RXD端子は入力で通
信データ通力、TXD端子は出力で通信データ出力となります。
送信と受信に別々に8バイトのバッファを持っており、そのバッファリングを使用した動作も可能になります。送
信部には送信間隔を制御可能な送信間隔カウンタ、受信部にはボーレート観測用のビット長計測がついています。
送信と受信部の入出力側ではループ動作とシングルワイヤ動作に対応しています。
データ送信では全キャラクタ送信長は1ビット長のSTARTビット、WLSビットで設定される最下位ビット(LSB)か
ら送信される7から8ビット長のデータビット、0から1ビット長のパリティビット、1から2ビット長のSTOPビットの
計9ビットから12ビット長に対応可能です。
データ受信ではSTOPビット長は常に1ビットとみなされ、全キャラクタ受信長は計9ビットから11ビット長になり
ます。
レジスタビットで設定される全キャラクタ転送時間以上RXD端子がローレベルであるときにブレイク検出としま
す。
データ受信期間以外でレジスタビットで設定される全キャラクタ転送時間以上RXD端子がハイレベルであるとき
- 34 -
Ver.2011-12-1
NJU20300
暫定版
にアイドル検出とします。受信バイトがセットやSTOPビットなど受信データビットがハイレベルである期間はアイ
ドル期間とはされません。。
TXD端子を一定期間ローレベルにして、センドブレイクを送ることが出来ます。XD端子を一定期間ハイレベルにし
て、センドアイドルを送ることが出来ます。これらの動作は内部動作に影響を与えません。
LIN動作の補助機能として、LIN動作の開始を示す、ブレーク動作直後の同期バイトの検出とビット周期の計測が
行われます。
7.5電源制御用ペリフェラル
電源制御用ペリフェラルとしては電源制御用A/D変換2、差動A/D変換、電源制御用PWM2、微細遅延器2、コンパレ
ータ3があります。
7.5.1電源制御用A/D変換2(PSATD2)モジュール
このPSATD2モジュールはNJU20300用のA/D変換モジュールであり、アナログ回路で構成されたSARタイプの10ビッ
トA/D変換器で構成されたアナログA/D変換部と、制御あるいは変換データ保管等を行うデジタル回路で構成されま
す。このA/D変換器は入力チャンネル選択とサンプリングで1ADCクロック、変換で11ADCクロックの合計12クロック
でA/D変換を行うことが可能です。
このモジュールはユーザー用の8本のアナログ信号の入力チャンネルとしてAN0からAN7はメイン入力部と奇数チ
ャンネルのAN1,AN3,AN5,AN7はサブ入力部に接続されます。メインとサブ入力回路はそれぞれ マルチプレクサとサ
ンプルホールド(S/H)回路を持ちます。そして、これらのサンプルホールド(S/H)回路出力には1つの変換器が接
続され、変換結果はデータレジスタに格納されます。また、A/D変換タイミング用に12 本の制御入力が使用可能で
す。
4本の内部較正/試験用アナログ端子であるAN8 から11はメイン入力に接続されます。また、サブ入力部は同時サ
ンプル動作のみに使用されます。
また、このモジュールの割り込みは割込み要求0から4の5本持ちます。ADCクロック生成用に外部クロックをEXTCLK
から入力することが出来ます。この外部クロックは、内部でシステムクロックに同期化使用されます。
PSATD2特徴:
・
1Msps/10-bit 逐次比較型ADCコア
・
8chアナログ入力
・
1ch S/H回路+独立1chS/H回路
・
1回変換/メディアン処理/平均変換/連続処理
・
17出力レジスタ
・
変換後データ処理
・
右左ビット詰め
・
オフセット値加減算
・
変換値リミット処理
・
A/D開始トリガ入力
・
ソフトウェアトリガ
・
内部タイマトリガ
・
15制御入力
・
PWM波形に同期した変換
また、このモジュールは割り込みとして、割込み要求0から4の5本持ちます。
Ver.2011-12-1
- 35 -
NJU20300
暫定版
EXTCLK
A/D クロック用
プリスケーラ
アナログ入力
CTLIN[11:0]
(制御入力)
12
IRQ[3:0]
(割込要求)
4
タイマー
AN0
MUX
AN1
S/H
AN2
ATD 制御
AN3
AN4
AN5
変換
AN6
データレジスタ
AN7
CONV
AN8
AN9
AN10
AN11
メイン入力
AN1
AN3
AN5
MUX
アナログ A/D 変換部
S/H
AN7
サブ入力
図7-1: 電源制御用A/D変換器2ブロック図
A/D変換器で使用するクロックはADCクロックと呼びます。このADCクロックは内部システムクロックを設定により
1/1から1/4分周して生成します。また、外部非同期入力信号を内部同期化してADCクロックとしても使用できます。
このペリフェラルは24ビット長のフリーランのタイマーを持ちます。このタイマーはA/D変換の開始タイミングに
使用可能なタイマークロックを生成します。アナログA/D変換部にはメインとサブ側の合計2つのサンプルホールド
(S/H)回路を持ちます。サブS/H回路は同時サンプル動作でのみ使用されます。
ADC変換
このモジュールは全部で8本のアナログ入力チャンネルがあります。それぞれチャンネル毎に変換用の設定が可能
です。複数のチャンネルが同時にA/D変換の要求があると、番号の小さいチャンネルが先に変換されます。A/D変換
が終了ると、変換結果をデータレジスタに格納と同時に入力チャンネル毎が持つ変換終了ビットがセットされます。
このビットがセットしているときにホストに割込を要求できます。1入力チャンネルの変換終了ごとに変換終了ビッ
トがセットされます。
このPSATDモジュールで使用するA/D変換器は逐次比較器型であり、実A/D変換器によるA/D変換期間は最小12ADC
クロックになります。このうち、サンプル期間は最小1ADCクロック、引き続く11ADCクロックで変換を行います。
実A/D変換器にはADCクロックが入力されますが、実A/D変換器が動作中で無いときは、ADCクロックを停止させる
ことが可能です。このクロック停止期間は実A/D変換期間以外になります。
- 36 -
Ver.2011-12-1
NJU20300
暫定版
入力チャンネル毎のA/D変換処理
A/D変換処理は制御入力、ソフトウェアあるいは内部タイマーによるA/D変換開始トリガを使用して変換を開始し
ます。
A/D変換開始トリガによる1チャンネル変換あるいは複数チャンネルの同時サンプル後変換も可能です。また、同
時にA/D変換開始トリガを入力すると、チャンネル間の優先順位による調停により、調停期間にアサートされたチャ
ンネルのうち常に優先順位が高いチャンネルがA/D変換処理に入ります。サブS/H回路は同時サンプルのみに使用さ
れ、チャンネル番号は奇数チャンネルだけを使用します。
このA/D変換方法にはA/D変換開始トリガ1回による1回の変換処理、3回の変換で真ん中データを出力するメディア
ン処理、2回の変換で平均値を出力する栄金処理、A/D変換をし続ける連続処理があります。
A/D変換のS/H時間はソフトウェア設定により設定可能です。また2本のA/D変換開始トリガを使用して、サンプル
ウインドウ動作あるいは非同期サンプルウインドウ動作が可能です。非同期サンプルウインドウ動作を使用すると、
ノイズから逃げるためにPWM波形変化前の位置でS/H回路をクローズすることが可能です。
変換後の処理とデータ
変換されたデータはポストデータ処理、変換データ処理を施して、データレジスタに格納されます。
変換した12ビット幅のデータの読み出しは16ビット幅のデータレジスタの下位位側詰め符号無し、セットすると
上位詰め符号無しを選択できます。A/D変換後のデータは参照データとの加算あるいは減算処理を行い、データ格納
することも可能です。入力チャンネルxの加算と減算の選択、ポスト処理データの12ビットあるいは13ビット格納、
アンダーやオーバーフローの飽和処理を設定します。
ビット幅や飽和処理の設定に関わらず、12ビット演算でのアンダーやオーバーフロー結果はホストビットに内容
を反映します。変換終了にアンダーやオーバーフロー検出を行います。
割込み
このPSATDモジュールはホストに対して最大5本の割込み要求を出来ます。
割込みを発生できるリソースは全部で30 本あります。それぞれの割り込み要求リソースが持つ割込み状態ビット
がデバイスによりセットされ、ホストにより対応する割り込み許可ビットがセットされているとき、モジュール内
リソースからホストに割り込み要求を行うことが出来ます。
デフォルトではすべての割込み要求リソースに対して1本の割込み要求0が使用されます。また、ホストビットを
使用すると割込み要求1から4の4本の割込み要求信号に対して、任意の割込みソースに対して割込み要求を与えるこ
とが出来ます。この設定で使用される割込みソースは割込み要求0から除外されます。
7.5.2差動A/D変換(DAD)モジュール
この差動A/D変換モジュールはアナログ入力に対して参照入力とのアナログ電圧差を最小10ビット精度で6ビット
のデジタルコードに変換する差動A/D変換処理を行います。4チャンネルのアナログ入力と参照入力のペアを持ちま
す。また、この参照入力は外部端子もしくは内部のD/A変換出力を使用します。
このモジュールのハードウェアは差動A/D変換を行う実体A/D変換器、実体D/A変換器、マルチプレクサなどからな
るアナログ回路部と制御するデジタル回路部からなります
このA/D変換器は入力チャンネル選択とサンプリングで1ADCクロック、変換で5ADCクロックの合計6クロックでA/D
変換を行うことが可能です。
4チェンネル分のアナログ入力と参照入力用のマルチプレクサ、そしてその出力にマルチプレクサとサンプルホー
ルド(S/H)回路を持ちます。そして、これらのサンプルホールド(S/H)回路出力には1つの変換器が接続され、変
換結果はデータレジスタに格納されます。
アナログ入力は外部端子から入力され、参照入力は外部端子あるいは内部D/A変換器出力を使用可能になります。
A/D変換の開始は7本の制御入力あるいはソフトウェアによって行います。各チャンネルのA/D変換終了毎に計4本
の割込みを要求することが出来ます。
Ver.2011-12-1
- 37 -
NJU20300
暫定版
DAD特徴:
・
最高8Msps/6-bits(10-bit精度) 差動型ADCコア
・
30MHz動作内蔵6bitD/A変換器
・
4chアナログ入力/参照入力
・
1ch S/H回路
・
1回変換/メディアン処理/平均変換/連続処理
・
チャンネル毎に1出力レジスタ
・
変換後データ処理
・
右ビット詰め
・
オフセット値加減算
・
変換値リミット処理
・
A/D開始トリガ入力
・
ソフトウェアトリガ
・
7制御入力
・
PWM波形に同期した変換
システムクロック
CTLIN[6:0]
(制御入力)
0]
ADC クロック用
プリスケーラ
IRQ[3:0]
(割込要求)
0]
7
4
アナログ入力
AN0
AN1
MUX
+
-
AN2
AN3
参照入力
MUX
実体 A/D 変換器
(差動)
デジタル制御
実体 D/A 変換器
REF1
REF2
REF3
アナログ回路部
図7-2: DADCモジュール内部ブロック
- 38 -
Ver.2011-12-1
NJU20300
暫定版
A/D変換器で使用するクロックはADCクロックと呼びます。このADCクロックは内部システムクロックを設定により
1/1から1/8分周して生成します。
アナログA/D変換部には4セットのアナログ入力と参照入力用マルチプレクサに接続されたサンプルホールド
(S/H)回路を持ちます。
ADC変換
このモジュールは全部で4本のアナログ入力チャンネルがあります。それぞれチャンネル毎に変換用の設定が可能
です。複数のチャンネルが同時にA/D変換の要求があると、番号の小さいチャンネルが先に変換されます。A/D変換
が終了すると、変換結果をデータレジスタに格納と同時に入力チャンネル毎が持つ変換終了ビットがセットされま
す。このビットがセットしているときにホストに割込を要求できます。1入力チャンネルの変換終了ごとに変換終了
ビットがセットされます。
このDADモジュールで使用するA/D変換器は差動型であり、実A/D変換器によるA/D変換期間は最小6ADCクロックに
なります。このうち、サンプル期間は最小1ADCクロック、引き続く5ADCクロックで変換を行います。このS/H時間は
ソフトウェア設定により設定可能です。
実A/D変換器にはADCクロックが入力されますが、実A/D変換器が動作中で無いときは、ADCクロックを停止させる
ことが可能です。このクロック停止期間は実A/D変換期間以外になります。
入力チャンネル毎のA/D変換処理
A/D変換処理は制御入力、あるいは、ソフトウェアによるA/D変換開始トリガを使用して変換を開始します。
同時にA/D変換開始トリガを入力すると、チャンネル間の優先順位による調停により、調停期間にアサートされた
チャンネルのうち常に優先順位が高いチャンネルがA/D変換処理に入ります。
このA/D変換方法にはA/D変換開始トリガ1回による1回の変換処理、3回の変換で真ん中データを出力するメディア
ン処理、2回の変換で平均値を出力する栄金処理、A/D変換をし続ける連続処理があります。
アナログ入力は外部端子から入力されますが、参照入力は外部端子あるいは内蔵DAC出力を選択します。
リファレンスレベルで設定した電圧値を基準に6ビット(64レベル)の変換範囲を設定し、この変換範囲内の電圧
レベルを持つアナログ入力(ANx)を0から63の6ビット幅のデジタル値に変換します。
リファレンスレベルとアナログ入力が一致したときは、A/D変換器の出力は32になります。正方向の最大値では63、
負の最大値は0となります。この出力値は一致出力で0、正方向の最大値が31、負の最大値-32になる設定も可能です。
この1ビット幅はゲインレベルの設定でVRLからVRHを基準に10ビット(=1/1024)精度から8ビット(=/256)、6ビッ
ト(=1/64)まで設定可能です。
変換後の処理とデータ
変換されたデータはポストデータ処理、変換データ処理を施して、データレジスタに格納されます。
割込み
このDADモジュールはホストに対して最大4本の割込み要求を出来ます。
Ver.2011-12-1
- 39 -
NJU20300
暫定版
7.5.3電源制御用PWM2(PSPWM2)モジュール
この制御用(PSPWM)モジュールは電源制御に特化したPWM波形を生成します。このモジュールはPWM波形出力
(PWMOとPWMOB)を6本持ち、イベント入力に使用できる制御入力(PWMI)は3本、割込み要求は6本持ちます。また、
A/D変換器などに対するタイミング出力として使用出来る制御出力(PWMCO)を14本持ちます。
このモジュール出力に微細遅延モジュール(HRDG2)を接続して、微細遅延データを生成することも可能です。
PSPM特徴は:
・
PSPWM(Power Supply PWM)
・
3ch/6PWM出力(2出力/1ch)
・
システムと独立した動作クロック設定 62.5MHz/250MHz
・
全てのPWM出力で、最高2ns精度のPWM波形を生成
・
逓倍クロックを波形生成に使用
・
動作モード
・
1ch毎に設定可能
・
相補付きPWM
・
任意の動作モードでチャネル間リンク
・
イベント動作
・
内蔵コンパレータ出力接続可能
・
Pulse-by-Pulse/PeriodCut Limit他
・
ADC制御トリガ出力
・
15本のPWM同期トリガでADCを制御
- 40 -
Ver.2011-12-1
NJU20300
暫定版
PWMI[3:0]
( 制御入力 )
PSPWM 出力
PWMO[0]
PWMCO[13:0]
(制御出力)
チャンネル部 [0]
割り込み要求 [7:0]
チャンネル部 [1]
PWMOB[0]
PWMO[1]
制御部
PWMOB[1]
出力部
PWMO[2]
チャンネル部 [2]
PWMOB[2]
ホストバス
図7-3: PSPWM全体
PWM波形精度は最大16ビットで最小2nsの分解能を持った波形出力を行うことが可能です。複数のチャンネルを使
用した位相シフト動作や周波数制御による周期変調でも、最小2nsの分解能を持った波形出力が可能です。
選択された制御入力にアクティブなイベントが入力されると、ブランキング用ゲート処理を行わせて、非同期イ
ベント機能であるピリオドカットやデューティカット、またキャプチャ動作を行わせることが可能です。
ホストに対して最大8本の割込み要求を出来ます。割込みを発生できるリソースは全部で28本ありますが、PWMチ
ャンネル毎に4本の割込み要求となります。この全チャンネル合計で12本の割込み要求をホストに対する8本の割込
みに振り分けます。
PWMチャンネル部は全部で3チャンネル分あります。それぞれ、PWMO[x]とPWMOB[x]という2つの出力を持つPWM波形
生成を行うブロックです。
動作方式
基本PWM動作方式にコンプリメンタリ出力を付加した相補付きPWM動作方式はPWMO[x]出力とPWMOB[x]出力の2つの
出力を使用し、カウンタ周期は12ビット、波形出力は16ビット精度で最小2nsの分解能を持ちます。
Ver.2011-12-1
- 41 -
NJU20300
暫定版
ピリオド周期
(12 ビット)
デューティ周期 (12 ビット ])
カウンタ Ax[15:4]
PWMO[x] 波形出力
最小 1ns 分解能
PWMOB[x] 波形出力
図7-4: 相補付きPWM波形
ピリオドカットとデューティカット、キャプチャなどのイベント機能
デューティカットはカウンタは変化せずに出力中の波形を非同期/同期で任意のレベルにします。復帰手段とし
て、ピリオド境界で自動的に復帰するハードウェア復帰と、ソフトウェア操作による手動的に復帰させるソフトウ
ェア復帰という2つの方法があります。そのレベル復帰はピリオド周期のタイミングで行われます。また、動作方
式に依存しますが、デッドタイム付きのデューティカットも可能です。この動作は過電圧や過電流検出による、出
力の遮断などに使用されます。
ピリオドカットはカウンタをクリア、出力中の波形を非同期/同期で任意のレベルにします。これはサイクルバ
イサイクルなどで使用されます。
キャプチャ動作では選択された制御入力がアサートされると、カウンタの内容をレジスタに保持します。
イベント
ピリオド
ハードウェア復帰
ピリオド
出力
ソフトウェア復帰
イベントの継続中 あるいは ソフトウェア復帰手続き
図7-5: デューティカット動作後の復帰手段
PWMチャンネル
PWMチャンネル部ではレジスタとカウンタ動作によるもの6本と制御入力によるもの3本の合計9本の割込みソース
を持つことが可能です。
また、PWM出力はソフトウェアによりレベル設定が可能であり、非同期の外部イベントによる出力レベルの強制設
定なども可能です。
PWMチャンネル動作方式は相補付きPWM、相補付きPWM2、2相PWM、基本PWMの4種類の動作方式が可能です。いず
れかの動作方式を選択、そして他のホストビットで詳細な動作方式を定めます。
- 42 -
Ver.2011-12-1
NJU20300
暫定版
複数チャンネル連携(リンク)動作
0から3の4つのPWMチャンネルに対して、単独PWM動作、そして、複数のチャンネルを同期動作させるチャンネル同
期PWM動作、複数のチャンネルで連携動作を行う位相シフト同期PWM動作をさせることが可能です。それぞれの設定
はPWMチャンネル制御部で行います。位相シフト制御では最小1nsの分解能を持った波形出力を行うことが可能です。
位相シフト制御はマスター側とスレーブ側の2つのPWMチャンネルを使用します。以下にリンク動作を使用した例を
示します:
3相PWM動作では最小1nsの分解能を持った波形出力を行うことが可能です。この動作は位相シフトPWM動作あるい
はチャンネル同期PWM動作を使用して構成できます。
可変周波数制御では最小1nsの分解能を持った波形出力を行うことが可能です。可変周波数によるPWM出力にはデ
ューティを固定比(例えば50%)にして、ピリオドを変化させます。
最小1nsの分解能を持つ2相PWM動作方式を使用すると対称波形を持ったPWM波形を生成することが可能です。この
波形出力でも3相PWM波形出力も可能です。
同一ピリオドを持った複数PWM出力も可能です。
位相シフト制御 PWM
シフト量≧ 0
マスター
相補付き PWM
スレーブ
相補付き PWM
(チャンネルリセットモード)
3 相 PWM
マスター
シフト量≧ 0
相補付き PWM
シフト量≧ 1
スレーブ
相補付き PWM
スレーブ
相補付き PWM
(チャンネルリセットモード)(チャンネルリセットモード)
マニュアル位相 PWM
マスター
相補付き PWM
シフト量≧ 0
スレーブ
相補付き PWM
(チャンネルリセットモード)
スレーブ
シフト量≧ 1
スレーブ
相補付き PWM
相補付き PWM
(チャンネルリセットモード) (チャンネルリセットモード)
位相シフトPWM動作例
Ver.2011-12-1
- 43 -
NJU20300
暫定版
7.5.4高精度遅延生成2(HRDG2)モジュール
PWM生成器は内部のPWMクロックに同期して、数十から数百KHz程度の周波数を持ったPWM波形を出力します。この
ジュールはPWM生成器の出力に接続し、高精度のPWM出力を生成する目的で微細な遅延を持たせます。
このモジュールは6本のPWM出力に対して立ち上がりと立ち上がりに対して微細な遅延を与えて出力します。この
微細な遅延量は前段に接続されたPWM生成器から送られます。
PWM 周期
PWM 生成器出力
PWM クロック
HRDG2 出力
HRDG2 遅延分
HRDG2 遅延分
図7-6: HRDG2出力
このモジュールはPWMクロック周波数範囲内で動作をさせる必要があります。この定められたPWMクロック周波数
範囲内においても、その周波数により保証できる遅延量と分解能は異なります。このPWMクロックの動作周波数の最
大5ビットの分解能を持ちます。この分解能はアナログ遅延素子を使用しているために、温度・電源電圧・製造ばら
つきによりその大きさが異なり、その遅延セルのゲイン設定などで遅延値を制御することにより、使用可能になり
ます。。
この1ビット分解能からHRDG2で使用するPWMクロック周波数と分解能の関係は62.5MHz近辺で動作させるには4ピ
ット分解能、31.25MHzで動作させるには5ピット分解能が設定可能です。
PWM出力はデジタル制御部で立上り/立下り検出、マルチプレクサ選択出力などのデータ処理を経て、複数のPWM
クロック後に同期して、アナログ遅延部に出力されます。そしてアナログ遅延を受けてモジュールの出力されます。
データ処理期間はアナログ遅延器への遅延データの送出などの使われます。
7.5.5コンパレータモジュール
コンパレータモジュールは2 チャンネルの非同期型比較器と1チャンネルの同期型比較器から成ります。それぞれ
のチャンネルは個別に動作をし、このモジュールは2つの10ビットD/A変換器を持ちます。D/A変換器0はチャンネル0
専用、D/A変換器1はチャンネル1と2の共用になります。
チャンネル毎に比較器の同期出力信号と非同期出力信号を持ちます。また、ホストに対する割込み要求数はチャ
ンネル毎に1本づつ、合計3本になります。割込み要求信号は同期信号(IRQ)とスリープ用非同期信号が出力されま
すが、その使用は排他的になります。
- 44 -
Ver.2011-12-1
NJU20300
暫定版
チャンネル 0
アナログ入力
非同期出力 0
非同期型比較器
COMPI0
入力
COMPR0
参照
出力
同期出力 0
MUX
DAC0 設定値
D/A 変換器 0
チャンネル 1
非同期出力 1
非同期型比較器
入力
COMPI1
出力
参照
COMPR1
同期出力 1
MUX
DAC1 設定値
D/A 変換器 1
チャンネル 2
コンパレータクロック
AN0-7
非同期出力 2
1/2
8
入力
同期出力 2
出力
MUX
参照
MUX
3
MUX
同期型比較器
図7-7: コンパレータ部ブロック図
Ver.2011-12-1
- 45 -
NJU20300
暫定版
7.6 その他のペリフェラル
7.6.1外部高速割込み(EXTHIRQ)
外部高速割込みは2本の外部割込入力可能にし、同期化された外部割込み要求とスタンバイ動作復帰用の外部割込
み要求を2セット持ちます。
7.7 汎用入出力ポート
ユーザー用端子を制御します。端子レベルの読み出し、出力ドライブの有無、そして内部モジュール接続機能を
持ちます。内部は端子のドライブや入力機能を持つ端子入出力部、内部モジュールと端子入出力部のブリッジ回路
である端子接続選択部、モジュール用の同期化回路やフィルタなどからなるモジュール入力生成部からなります。
このモジュールが取り扱う外部端子は双方向端子のポートAの4 から7、ポートBとポートC、そしてポートDにな
ります。これらのすべての端子の出力ドライブの有無と出力レベル、そして端子レベルに読み出しを可能にします。
また、それらの端子に内部モジュールの端子のプログラマブル接続可能です。
それぞれの端子は設定/アクセスにより、出力ドライブの有無と出力レベル、端子レベルの読み出し、内部モジュ
ールの出力がホスト設定により設定可能になります。ソフトウェアにより、端子入力としての端子レベルの読み出
し、また端子出力としてに任意のレベルを出力することが出来ます。
7.8 デバッグ
デバッグと出荷検査用のペリフェラルとしてバウンダリスキャンとデバッグ機能を持ちます。
<注意事項>
このデータブックの掲載内容の正確さに
は万全を期しておりますが、掲載内容につ
いて何らかの法的な保証を行うものではあ
りません。とくに応用回路については、製
品の代表的な応用例を説明するためのもの
です。また、工業所有権その他の権利の実
施権の許諾を伴うものではなく、第三者の
権利を侵害しないことを保証するものでも
ありません。
- 46 -
Ver.2011-12-1