クロック発生回路について

こんばんは。

クロック発生回路の機能について幾つか疑問がありますので、

投稿させて頂きます。

 

1.サブシステム・クロックに関して

ハードウェアマニュアルには「XT1端子, XT2端子に32.768 kHzの発振子を接続することにより,f XT = 32.768 kHzのクロックを発振させることができます。」と記載があります。

またリアルタイム・クロックの章を読むと、

「サブシステム・クロック(fSUB = 32.768 kHz)を選択時のみ,年,月,曜日,日,時,分,秒のカウントができます。」と記載があります。

なぜ、fSUBを選択時のみ時間計測のカウントができるのでしょうか?(なぜそのようにRL78の機能は設計されているのでしょうか?)

→高速オンチップオシレータを利用するほうが高い周波数でより高精度にカレンダー計測できるのではないでしょうか。

 

2.オプションバイトで設定する高速オンチップオシレータの周波数について

周波数の設定に限らずですが、オプションバイトの設定値はCS+上でモニタすることはできないのでしょうか?

→SFRの表示ウインドウのように確認する手段はありませんか?

  • チョコです。

    >→高速オンチップオシレータを利用するほうが高い周波数でより高精度にカレンダー計測できるのではないでしょうか。

    RL78の高速オンチップオシレータは周波数の精度が±1%と内蔵クロックとしては精度は高いのですが,時計として使用するには精度が不足しています。外部でセラミック振動子を用いても±0.1%以下程度と考えてください。それに対して水晶発振子を使うとPPMオーダーまで追い込めます。このことから,32.768KHzの水晶発振子が時計用のサブクロックとして使用されています。

    >なぜ、fSUBを選択時のみ時間計測のカウントができるのでしょうか?

    32.768KHzの水晶発振子が時計用のクロック・ソースとして一般的(2の15乗が32768でバイナリー・カウンタで分周するだけで1秒を発生できる)なので,これに対応した構成になっています。一部の,自動車用のRL78では高い周波数のクロック(当然外部発振クロック)が使えるものもあるようですが,RL78としては,32.768KHzの水晶発振子が標準です。

    また,サブシステム・クロックでの動作を行うと消費電力を低減することができます。さらに,サブシステム・クロックでHALTモードにすると1μA以下の動作電流となります。

    >オプションバイトの設定値はCS+上でモニタすることはできないのでしょうか?

    オプションバイトはコードフラッシュメモリの0x000C0~0x000C3番地に割り当てられているので,メモリとして見られます。クロックの設定は0x000C2番地なので,下記の例では0xE8となっています。この例はRL78/G13なので,HSモードで32MHzということになります。

  • チョコ様

    クロックの話はとても納得できました。
    ありがとうございます。
    オプションバイトはやはりメモリウインドウを見るしかないのですね。。
  • チョコです。
    クロックの設定だけなら,オプションバイトの0x000C2番地の下位3ビットはHOCODIVレジスタの下位3ビットの初期値としてみることができますよ。
  • 「どうしてクロックがあれこれあるの?」ってのは確かに。
    「システムクロックだけあれば良いじゃん。最高速度で水晶で突っ走れ」と思いますもん。
    WDTのクロックやらサブやらオンチップやらシステムクロックやら、しかも速度を変えられるし・・・

    どういう風に使い分けるべきなのか、どう言うときに何を使うのか。
    「CPUにはなんでこんなに色んなクロックがあるのか」
    教えて頂ければ有り難いです。
  • Mooさん
    最近私もアナログのウェブセミナーで知りましたが、PLL等を一般に使用するシステムクロックはジッターといって周波数の不均衡がいろいろ障害になることがあるようです、ですからPLL等の機能を通さずに高精度の水晶で発振器一段で構成するのが無難ということのようです、高精度を求めるとつまり回路が複雑になり費用もおおくなりますが、簡単な一段の回路は高精度に作りやすいということで、目覚まし時計から高機能マイコンまで様々なところで32.768KHzの水晶発振子は使用されています、これにより1か月で数秒の誤差までになっています以上です、わたしは専門家でないのですが最近の勉強の復習。
  • IKUZOさん。
    そういうわけでしたか。
    自分などはもう単純に理由も考えず「時計には32.768KHz」としか認識してませんでした。
    この頃は水晶を使わずに、セイコーかEPSONかどこかの校正済みのRTCが¥500程度で売ってるので、これのFOUTをCPUに突っ込んだりもします。
    たかがクロックでも色々工夫されてて、使う方は結構難しいです。
    PLLを通すと弊害があることなども、ちっとも知りませんでした。
  • 少し古いのですが、某水晶振動子メーカのハンドブックのセラミックレゾネータと水晶振動子の参考情報として
                  セラミックレゾネータ   水晶振動子    備考
      周波数範囲     16~60MHz        0.8~120MHz
      周波数室温偏差  ±3000E-6~5000E-6   ±7E-6~100E-6
      周波数温度偏差  ±1000E-6         ±4E-6        -10~60℃
      起動時間      15μS            600μS        HCU04,16MHz,CL8pF
    を見たことがあります。多くの装置で累積動作時間を計る場合などにはセラミックレゾネータだと要求を満たせないと思います。ふた昔ほど前はセラミックでのシリアル通信でも不安がありました。しかし、水晶振動子は価格と起動時間で少し不利です。R8Cに搭載されている通信用にキャリブレーションされた内部クロックは画期的です。また、R8C・RL78・RXなどでリセット回路やクロック回路が内蔵されたことで、余分なマージンが不要になり、コストが安くて起動時間の早いシステムができるのもありがたいです。コストですが、10銭違ったら大騒ぎです。水晶振動子でも数十円なので500円は論外になります。

    ところで、水晶振動子の評価にオシロスコープやスペクトラムアナライザーやネットワークアナライザーが使われます。2000年代初期に3万円チョットのGigaStと言う趣味向けのスペアナアダプタに飛びついたのですが、ネットワークナナライザーアダプターは20万円ほどで見送ってました。ここ数年で大きな変化があり、LTDZと言うスペアナアダプタが5000円以下、nanoVNAと言うネットワークアナライザーが7000円以下で入手できます。恐るべきチャイナパワーです。趣味の水晶振動子の評価も可能なのではと思います。

    【追加】自分自身が読み返してみてもステマになっているようにも見えます。シミュレーションやインターネット検索だけでなく手を動かして計測してみると理解が速いことと、中国を甘く見てはいけないとの気持ちでした。

  • >10銭違ったら大騒ぎです
    自分は試作品と言うかデモ用のプロトタイプを作るのが仕事なので、あまり金額が分からなくて。
    でも量産を考えたら10銭はでかいんでしょうね。
    「どのCPUを選び、どんな発振子を使うか」で利益が大きく変わるような仕事をしたことが無いので、¥500の発振子を遠慮無く使ってますが(せいぜい数個単位です)、お許しを。

    スペアナが数千円ってのは驚きました。
    趣味でスペアナを持てる時代になってるんですね。

    ネットワークアナライザーって、自分なんかはLANのパケットを見る道具だと思ってました。
    改めて検索してはじめて機能を知りました。
    昔みたいにグリッドディップメーターなんて使わないんですよね(^^;

    >中国を甘く見てはいけないとの気持ちでした。
    これは間違いないと思います。
    一緒に仕事をしてる仲間に中国人がいるのですが、優秀です。優秀ですよ!
    日本の大学で勉強していて、研修で仕事場に来たのですが、とても素晴らしい人です。
    優秀だし性格も良いし、気が合います。
    中華と言えば、酷いバッテリーを売ってたり、インチキ部品を売ってる人も確かに居ます。
    でも凄い奴も間違いなく居ますね。