NEC ELECTRONICS NEC ELECTRONICS
NEC electronics NEC electronics NEC
ホーム
アプリケーション
製品情報
先端技術
サポート
WEBショップ
ニュース&イベント
会社案内
header
GO
詳細検索機能/特性検索
サイトマップ お問い合わせ

uPD77111ファミリ

目次

    
FAQ-ID = DSP1-nnnn
0001: uPD77110: 上位ワードはメモリ・アドレスの低位/高位?
0002: uPD77110: スタータ・キット製品
0003: uPD77110: 電源投入からプログラム動作までの手順
0004: uPD77110: STOPモード
0005: uPD77110: 17bit以上のシリアル入力
0006: uPD77110: 消費電流
0007: uPD77110: プログラミング
0008: uPD77110: ブート関係
0009: uPD77110: ブートのシーケンス
0010: uPD77110: ホスト・ブートの手順
0011: uPD77110: マイコンの内蔵ROMに DSPのプログラムを保存しておく
0012: uPD77110: 外部メモリのアクセス時間
0013: uPD77110: 外部メモリからのブート・アップ
0014: uPD77110: X/Yメモリ空間について
DSP1
-0001
uPD77110: 上位ワードはメモリ・アドレスの低位/高位?
Q1
データの上位ワードはメモリ・アドレスの低位/高位のどちら側に入るのでしょうか?
 SampleX XRAMSEG INTERNAL
 Samle:  DWL   0x12345678
A1
この場合は、低位側から 0x1234 0x5678 となります。

参照資料: (p.85)
WB77016ユーザーズ・マニュアル(言語編)
この情報はお役にたちましたか?
back to top  

DSP1
-0002
uPD77110: スタータ・キット製品
Q1
開発ツールについてですが、uPD7711xの搭載されたスタータ・キットが販売されていれば入手先を教えてください。
A1
アンドールシステムサポート株式会社
〒140-0004 東京都品川区南品川 2-15-8
TEL : 03-3450-8101
スタータ・キットではありませんが、アンドールシステムサポート(株)から 「ライブラリ・ボード」と言う製品が出ています。製品については右にお問い合わせください。
この情報はお役にたちましたか?
back to top  

DSP1
-0003
uPD77110: 電源投入からプログラム動作までの手順
Q1
uPD77110の電源投入からプログラム動作までの手順を教えてください。
A1
1) まず、割り込み等のベクタ・テーブルを配置する。
2)リブート (0x4000〜0xBFFFにプログラミング) が必要な場合には、
  0x240番地以降にホスト・リブートのパラメータ(R7L, DP3)を設定し、
  Call 0x6 を実行する。
  ホスト・インタフェースからのダウンロードで、指定領域にプログラムが配置される。
3) この命令(Call 0x6)以後の命令から実行する。

詳細は、uPD77111ファミリの ユーザーズ・マニュアル の第4章を参照してください。
この情報はお役にたちましたか?
back to top  

DSP1
-0004
uPD77110: STOPモード
Q1
STOPモード中に CLKIN端子に入力されるクロックを停止することは可能ですが、 このとき WAKEUP端子により STOPモード解除時には、 再度ホスト・インタフェース経由で命令RAMに対してホスト・ブートする必要がありますか。
A1
WAKEUP端子による stopモード解除の場合は、レジスタおよびメモり内容を保持していますので、 再度のブート・アップは不要です。解除後は stop命令の次の命令から実行を再開します。
stop解除の際は、クロックが安定しているかどうかにご注意ください。
クロックが安定に供給された事を確認してから WAKEUP端子を所定の期間有効にしてください。
クロックが不安定なうちに WAKEUPを実行したり、WAKEUPの有効期間が短い場合は内部メモリ、 レジスタの内容が破壊される可能性がありますのでご注意ください。
この情報はお役にたちましたか?
Q2
STOPモード中に CLKIN端子に入力されるクロックを停止することは可能ですか。
可能であれば WAKEUP端子により STOPモード解除時には、WAKEUP信号入力前に最低何クロックの供給が必要ですか? 電源投入時の RESET信号と同じで4クロックでも良いのでしょうか?
また、RESET端子 (ハードウエア・リセット) による解除時には最低何クロックの供給が必要ですか?
電源投入時と同じ 4クロックで良いのでしょうか?
A2
STOPモード時に外部からのクロック供給を停止することは可能です。
この場合、/WAKEUP入力前に必要なクロック数は規定しておりません。
“安定した”クロック供給がされていればOKです。
/RESETによる解除の場合は前回のリセット解除から 4クロック入力されていればそれで構いません。
ただし、この場合も“安定した”クロック供給がされていることが必要となります。
この情報はお役にたちましたか?
back to top  

DSP1
-0005
uPD77110: 17bit以上のシリアル入力
Q1
DSPとA/Dをシリアル・インタフェースで接続します。
A/Dの出力データ長は 20ビットです。下図のタイミングで変換データを取り込めますか?
青と黒のどちらで取り込めるのでしょうか?

A1
SIENを黒のタイミングで "L" にした場合は、16bitのデータを受信します。
SIENを青のタイミングで "L" にしただけでは 20bitのデータ全てを受信できません。それはDSP内部のシリアル・レジスタが 16bit構成となっており、一度に取り扱えるデータが 16bitであるという理由です。従いまして、プログラムで2回に分けて、16bit構成のシリアル・レジスタから取り込めば(転送すれば)20bitのデータ全てを受信できます。



最初の 16bit分が入力され、最終ビット (16bit目) の SCKの立ち下がり時点で SIENがアクティブである場合、ハードウェアとしは、引き続き次の 16bitシリアル・データの入力が行えます。(SIENは青のタイミング)。
なお、uPD7711xの SIEN (あるいはSOEN、以下同) はデータの有効幅を意味しているものではなく、SIENは単に次の 16bitデータの入力 ( SOENは出力、以下同) を許可する信号です。入力の一つ前の部分でのみサンプルしています ( 16bit入出力モードのとき)ので、17bit目の入力時点でインアクティブにしても、次の 16bit分のデータの入力が行われます。

20bitのデータを受信する場合でも、16bitデータを連続して2回受信します(32bit分のSCKが必要)。プログラムにて、その間の最初の 16bitデータ受信直後にシリアル・レジスタから他のレジスタかメモリに転送し、後半の 16bitデータ受信直後にもシリアル・レジスタから他のレジスタかメモリに転送します。そして、最初の16bitと、後半の16bitのうちの 4bitとで 20bitデータとしての取り扱いをすることができます。
この情報はお役にたちましたか?
back to top  

DSP1
-0006
uPD77110: 消費電流
Q1
動作時の消費電力の計算方法を教えてください。
A1
最大電流はデータ・シートに記載のとおりです。
記載しております値は 30nSサイクル動作の時として保証しておりますが、 ほぼ動作周波数と比例するものとして見積もる事が出来ます。
なお、実力値は、おおよそ 0.5mA/MHz として電流値を見積もることが出来ます。
ただし、消費電流はプログラムによって変わりますので、この値は目安でしかありません。
保証値はデータ・シート記載の最大値になります。
この情報はお役にたちましたか?
Q2
STOPモード中に CLKIN端子に入力されるクロックを供給した場合と停止した場合で、 消費電流値はどの位違うでしょうか?
A2
STOPモード中はおおむね 0.3uA/MHz 程度と推定しております。
例えば、20MHzのクロックを入力している場合は 0.3 * 20 = 6uA 程度になります。
この情報はお役にたちましたか?
Q3
CLKIN端子に 8MHzを入力し内部を 40MHz動作 ( PLL 5逓倍)したときの、 3.3V系と 2.5V系毎の最大消費電流値を教えてください。
A3
保証値はデータ・シートに記載の 75mA (33MHz、2.7V動作) です。(出荷時のテスタ選別基準)。
たまたま手元にありました製品での実測値は以下の通りです。なお 8MHz入力 5逓倍は測定しておりません。 だいたいの目安とお考えください。 なお、消費電流は、入力クロックと逓倍の関係で変化はせず、動作クロックのみに影響されます。
従って、逓倍の条件は関係ございません。
以下、ご参考用に実測値を示します。(保証値ではございません)
uPD77110〜uPD77114のIVDD系の消費電流値
 ・動作電圧 :IVDD = 2.5V
 ・動作周波数:33MHz (16.5MHz入力、2逓倍)
 通常動作時の消費電流
  Typ値:15.5mA (公称値:約 0.5mA/MHz @2.5V )
  Max値:34.2mA (約1mA/MHz)
    Typ値は PSI CELP実行時の実測からの見積もりです。
    Max値は電流選別用のプログラム実行時の実測値です。
  IVDDを 2.5V → 2.7V にすると実測上 15% ほど大きくなります。
  動作周波数を 33MHz → 40MHz にすると計算上 20% ほど大きくなります。
uPD77110〜uPD77114の EVDD系 の消費電流値(実測値ベース、ご参考)
 ・CLKOUT出力モード
 ・10MHzトグル動作
 ・I/O電源電圧 :3.0V
 ・端子負荷容量 :10pF
 10MHzトグルあたりの CLKOUT端子の消費電流
  2.6mA/pin

以上は、CLKOUT端子を出力して CLKOUT端子のみを動作させたときの値です。
30MHzトグル程度まではだいたい比例します。
1トグルあたりの消費電流は上の値を 10Mで割っていただければ結構です。
1スイングあたりの消費電流でしたらさらに半分にしていただければ結構です。
I/O端子すべてについて積算すると EVDDの消費電流となります。
この情報はお役にたちましたか?
back to top  

DSP1
-0007
uPD77110: プログラミング
Q1
uPD7711xでのプログラムにおいて、
  #define DATA  0y1111111111110000
のように定義されていたとし、プログラムの中で
  r0 = r0 & ~DATA
とした場合、R0レジスタは "0Fh" と ANDをとる事になりますか?
( ~DATA の表記は許されますか?)
またこの様なコーディング規約はどの資料を参照すればよいのでしょうか?
A1
記述は出来ますが、制限事項が存在します。
詳細につきましては、WB77016の CD-ROMの添付文書に「言語仕様としての注意事項」 という形で記載しておりますので、そちらの方を参照してください。
添付文書には「EQU」によるシンボル定義についてのみ記載されていますが、 「#DEFINE」によるシンボル定義についても同様です。

参照資料:
ユーザーズ・マニュアル「WB77016 言語編」
ユーザーズ・マニュアル「uPD77016ファミリ 命令編」
この情報はお役にたちましたか?
back to top  

DSP1
-0008
uPD77110: ブート関係
Q1
開発は uPD77110で行いますが、製品は uPD77112 (マスクROM) を使用する予定です。
P0 = P1= "0" とすば OK でしょうか? また、この時のアプリの起動の方法を教えてください。
A1
uPD77112の 命令RAM へプログラム・コードを HOST BOOT する場合は P0="1"、P1="0"です。
また、全てのプログラムが マスクROM (uPD77112スタンドアローン動作) の場合にはセルフ・ブートとなりますので P0="1"、P1="1" となります。
ブート・アップ後は、0x200番地から、命令コードに従って動作を開始いたします。
なお、製品化された際には uPD77110で記述したリブート・エントリ・プログラムは不必要となります。
この情報はお役にたちましたか?
back to top  

DSP1
-0009
uPD77110: ブートのシーケンス
Q1
ホスト・ブート、ホスト・リブート時のデータの転送において、ホスト側からDMA転送を行いたいのですが、 DSP側の ROMは対応できますか?
また、ブート時の DSP側の ROMはどのように動作するのでしょうか?
A1
ブートのシーケンスは以下の資料に記載してあります。

参照資料: (p.179)
ユーザーズ・マニュアル「uPD77111ファミリ アーキテクチャ編」

ブートROMではこのシーケンスに従ったデータ転送によって転送されたデータを、命令領域に書き込みます。 以下にシーケンスを示します。 それぞれの転送(HOST→DSP)は 下位8ビット→上位8ビット のように、8ビット2回分の転送で行われます。

ホスト・ブート
 (HOST→DSP)ダミー・データの転送
 (DSP内部) HDTからデータを引き取る
 (HOST→DSP)ブート命令数の転送
 (DSP内部) HDTからデータを引き取る(ここでは命令数をnとする)
 (HOST→DSP)HST設定値の転送
 (DSP内部) HDTからデータを引き取り、HSTに書き込み
        HOSTからのHST設定値に関わらず、HAWEビットは1に設定される
ここからはホスト・リブートと共通
リブートの場合は、ブート命令数(ここではn)とHST(HAWEビットを1)の設定はあらかじめ行っておく必要があります。
 (HOST→DSP)1番目の命令コード(下位16ビット)の転送
 (DSP内部) HDTからデータ(命令コード)を引き取り、命令領域に転送
 (HOST→DSP)1番目の命令コード(上位16ビット)の転送
 (DSP内部) HDTからデータ(命令コード)を引き取り、命令領域に転送
 (HOST→DSP)2番目の命令コード(下位16ビット)の転送
 (DSP内部) HDTからデータ(命令コード)を引き取り、命令領域に転送
 (HOST→DSP)2番目の命令コード(上位16ビット)の転送
 (DSP内部) HDTからデータ(命令コード)を引き取り、命令領域に転送

            :

 (HOST→DSP)n番目の命令コード(下位16ビット)の転送
 (DSP内部) HDTからデータ(命令コード)を引き取り、命令領域に転送
 (HOST→DSP)n番目の命令コード(上位16ビット)の転送
 (DSP内部) HDTからデータ(命令コード)を引き取り、命令領域に転送

            :

  ブート・ルーチンの終了
   ホスト・ブート:0x200番地に分岐
   ホスト・リブート:リブート・ルーチン・コールの次の命令に分岐
DSP内部では、HDTに16ビット分のデータが入力されない限りウエイト状態にあります。
この状態ではDSPは別の処理をすることなく、ひたすらホストからのデータ入力を待っている状態です。
外部(ホスト、DMAコントローラ)から見た場合、DSPが次のデータを引き取れる状態であるかを示すものに、 HWE端子とHWEF(HSTの中のフラグ)があります。
外部からはこの端子の状態を見るか、あるいは HSTレジスタをポーリングしながら、 転送を行えばよろしいかと思います。
ブートおよびリブートでサポートされているのは命令コードの転送のみです。
データRAM領域の初期化が必要な場合は、ブートされたプログラムの中で、 外部からのデータの転送を行っていただく必要があります。
この情報はお役にたちましたか?
back to top  

DSP1
-0010
uPD77110: ホスト・ブートの手順
Q1
ホスト・ブートの手順を説明してください。
A1
次のような手順です (詳細は、uPD77111ファミリの ユーザーズ・マニュアル の第4章を参照)。

(1) リセット(注)時に、端子 P1, P0=01 (ホスト・ブート指定) にする。
(2) 最低、リセット解除前 3入力クロック〜リセット解除後 12入力クロックの間は、ポート入力を保持する。
(3) DSPの /HWE端子か HST (ホスト・ステータス・レジスタ) の HWEFビットをマイコン側から監視しながら、データを転送する。

<転送内容>
(1) ダミー・データ (0x0000)
(2) ブート命令数 (32ビットを 1命令)
(3) HSTの設定値 (HAWEビット以外を設定)
(4) 命令コード
(5) 命令数分だけ、(4)を繰り返す

リセット時のホスト・ブートで、ブートできる領域は 0x200〜0xFFFです。
0x4000〜 の領域のブートは、DSPのプログラム中でリブートを実行します。

(注) リセット
電源投入時はいったんリセットHから4入力クロック・サイクルを確保して L(アクティブ)にします。
そこから 100μs + 2048入力クロック・サイクル以上保持して H (インアクティブ)にします。
これは PLLのロックアップと PLL逓倍率を設定するためです。
電源投入後のリセットは、PLL逓倍率の再設定を行わない限りは 4システム・クロック以上で OKです。
1024システム・クロック以上のリセット幅をいれると、PLLの初期化 (再設定) を行ってしまうので注意が必要です。
PLLを初期化した場合はブート・アップが必要になります (詳細は データ・シート 「4.2 PLLの初期化」参照)。
この情報はお役にたちましたか?
back to top  

DSP1
-0011
uPD77110: マイコンの内蔵ROMに DSPのプログラムを保存しておく
Q1
マイコン ( uPD78F4216A) の内蔵フラッシュROMに、 マイコンのプログラムと一緒に DSP ( uPD77110GC) のプログラムを書き込むことで、 外付けROM を無くしたいと考えます。
マイコンの外付けROM に DSP のプログラムを入れて、 マイコンから DSP にプログラムをロードする方法で正常動作しています。
DSPのワークベンチが出力する HEXファイルはアドレスが 0000 からとなっていますが、 これをマイコンのフラッシュROM の上位アドレス (1D000h) に配置する方法を教えてください。
A1
DSPのワークベンチでは出来ませんので、マイコンのツールで下記の操作を行ってください。
78K4 のディバッガで uPD78F4216A のプログラムをダウンロードし、 さらに DSP の HEX はオフセットをつけてダウンロードすることで 2つのオブジェクトを結合してください。
結合したオブジェクトを新しいオブジェクトとして、保存して頂き、それを使ってフラッシュに書き込んでください。
この情報はお役にたちましたか?
Q2
DSPのプログラムを 78K4 のアドレス、1D000h以降に配置するものとし、 DSPワークベンチの具体的な操作手順を教えてください。
A2
DSPのワークベンチでは処理できません。78K4側で処理してください。
  (1)まず、78K4 のシミュレータまたはディバッガを起動してください。
  (2)78K4のプログラムを正規のアドレスに普通にダウンロードしてください。
  (3)次にに DSPの HEXファイルをダウンロードする為に「ファイル」の
   「ダウンロード」を選択してダウンロードの為のダイアログを開きます。
  (4)ダイアログの「option」の「offset value」が 00000 になっている
   ところを 1D000 に変更します。
  (5)シンボルのチェックを外します。
  (6)ファイル名のところを「*.HEX」に変更します。
  (7)DSPの HEXファイルを選択します
  (8)「OK」をクリックしてダウンロードします。
以上の手順で DSPの HEXファイルを 1D000番地以降にダウンロードできます。
この情報はお役にたちましたか?
back to top  

DSP1
-0012
uPD77110: 外部メモリのアクセス時間
Q1
uPD77110の外部データ・メモリ・アクセス時間規定についての質問です。

データ・シート p.45「スイッチング特性」表の MWRロウ・レベル幅は "tcC * tcDW - 3(ns)" となっていますが、 0ウエイトで行う場合には tcDW に何を代入すればよいのでしょうか?
A1
ノー・ウエイトで外部メモリをアクセスする事はできません。 値がゼロになる使い方はできませんのでウエイトは 1以上でご利用ください。
この情報はお役にたちましたか?
back to top  

DSP1
-0013
uPD77110: 外部メモリからのブート・アップ
Q1
uPD77110では、0000〜00FF のブート・アップROM領域の命令で、 内部の命令RAM領域に外部から書き込むことになると思いますが、 ホスト・ブート、ホスト・リブートでは、ホスト・インタフェース経由で RAMに書き込みとあります。
ホスト・インタフェースには、アドレス線らしきものは、HA0/1 しかなく、 どのように外部メモリを接続すればよいのか不明です。参考回路があればください。
A1
外部メモリだけでブート・アップすることはできません。
ホスト・プロセッサか DMAコントローラをホスト・インタフェースに介して、 そこに接続したメモリからデータを転送します。
回路構成例は、 ユーザーズ・マニュアル・uPD7701xファミリ・アーキテクチャ編 の p.201のようになります。
この情報はお役にたちましたか?
back to top  

DSP1
-0014
uPD77110: X/Yメモリ空間について
Q1
X/Yメモリとは、0000 から FFFF までの空間が 2面あると思って良いのでしょうか?
A1
はい、その認識で結構です。
この情報はお役にたちましたか?
back to top  









































 ご利用にあたって  個人情報保護について  RSS       © 1995-2008  NEC Electronics Corporation