みなさん、いつもお世話になっております。
SDRAMを使用した装置を試作しています。
電源の瞬停や一時的な低下の対策としてマイコンには電源監視ICを外付けしてリセットが入るようにしているのですが、使用しているSDRAMにはリセット入力端子がないため特に対策をしていません。電源が不安定な時に装置の異常動作が発生しており、SDRAMが原因ではないかと考えているのですが、電源が不安定な時(電源復旧後も含め)にSDRAMの動作が不安定(暴走など)になる可能性はありますでしょうか。もし可能性がある場合、そのような状態からの復旧方法はありますでしょうか。
ご存知の方がいらっしゃいましたらお教えください。どうぞ宜しくお願いいたします。
m-ueno さん
SDRAMが不安定とのことで、原因枝があまりにも多いのですが、以前に経験した内容では発振器の不都合でSDARAMのデータ化けが発生したことがありました、SDARAMが不良という触れ込みであったのですが実際には発振子の不都合でした、これを信頼できる他のものに変更したら、良くなりました、m-ueno さんの場合には当てはまらないかもしれませんが。
IKUZOさん
たいへんお世話になっております。
発振子について、信頼できる製品とできない製品はデータシートを見れば判断できることなのでしょうか。お教えください。
どうぞ宜しくお願いします。
たいへんお世話になっております。アドバイスどうもありがとうございます。
周波数が安定しないとSDRAMがデータ化けを起こす可能性があるのですね。
基板パタンや定数によっても安定性が変わるということで、発振子のデータシートだけではなく、実際に測定してみないと分からないですね。
実測したPPMがどの程度であれば安定していると考えられるのでしょうか。
どうぞ宜しくお願いいたします。
これまで使用したのは50PPM前後でしょうか、
これは温度安定性ですので、他に系のジッタ等の問題もあります
ジッタで検索されると、理解しやすいと思います
最近のマイコンでは内部CR発振器を使用できるものも出てきており
その場合ジッタが悪くなりますので逓倍等してSDRAM等の接続は不可能だと思います
ハードウェアを調べてみます。
どうもありがとうございます。
SDRAMに関して内部の動作がクロックでコントロールされ他のデバイスと同期でき高速にできる程度の知識しかありません。よって、投稿を差し控えようかと思ったのですが、水晶振動子に関しては少し情報があります。
PPMは100万分の1を表す単位ではないのですか?温度特性と明確に書かれているのですが、50PPMだと常温周波数偏差ではありませんか?10MHzならの50ppmは±500Hzの製造バラつきがあると言うことでは? 安定性の話とは違うような気がします。狙った周波数とのずれがSDRAM誤動作に関わるかは良く分かりません。
水晶発振回路の安定性は、発振回路全体での負性抵抗と負荷容量と励振電力に大きく依存します。これらは水晶振動子だけでなく発振回路全体での話です。製品開発では、水晶振動子とマイコンとできれば量産基板を水晶振動子メーカ様で評価してもらいます。評価項目やそれぞれの意味合いなどを水晶振動子メーカ様からレクチャを受けたことがありますが、資料や詳細は機密事項に関わる可能性があるので書けません。インターネットを検索したところ、www.tamadevice.co.jp/solution.htm に解説があります。
ここからは余計なつけたしです。SDRAMだと100MHz以上ですよね?発振回路もPLLじゃないですか?基本の水晶発振回路の特性がそのまま影響すると思いますが、クロックは水晶発振回路からではなくてVCOからになります。負荷の影響はほとんどないと思います。このあたりのスピードだとPCBなどもかなり気を使って作らないとうまく動作しないと思います。
kijoさん
マイコン:V850E2/ME3
クロック:セラミック発振子 村田製作所製 CSTCE10M0G55-R0
を使用しています。
発振回路はマイコン内蔵のPLLで、10MHzのクロックを200MHzにしています。
SDRAMのクロックはマイコンのBUSCLK端子のクロックを使用しており、周波数は66MHzです。
PLLだとジッタが悪いということでしょうか。
私の勉強不足で申し訳ないのですが、アドバイスいただければと思います。
まずSDRAM側でのコマンド/データセットアップ時間、ホールド時間は満足できていますか?
次にCPU側でのリードデータセットアップ時間、ホールド時間は満足できていますか?
クロックに鈍りや肩、リンギングはございませんか?
HWから追うならこの辺りからつぶすべきかと思いますよ。
m-uenoさん
SDRAMの解析よりも電源を安定させるのを先にするのが簡単かも。
DRAM系は信号ノイズとかでも簡単にデータが化けちゃうので、なかなか解析が難しいんですよね。 私のセンパイの世代はDRAM系の解析にはデジタルオシロではなくて、わざわざアナログオシロを持ち出していましたね。 アナログオシロの画面に毛布を被せて、CRTに表示される光の点をつぶさに眺めて、時折「出たっ!」という叫び声をあげていました。 関連記事 : ednjapan.com/.../news002.html
解析する際も、オシロスコープのプローブを当てると、それだけで波形やタイミングが変わってきちゃうので、何を見ているのか分からないなんてこともあるんですよね。 その一方で今では、ダンピング抵抗や配線トポロジー、特性インピーダンスなど基板設計をちゃんとしていれば~500MHzくらいまでなら、基板シミュレーションなんかしなくても、問題なく動作するほど枯れている技術なのかなと思います。 ということで、いつ出るか分からないSDRAMの不良解析よりも、コンデンサ追加などで電源を安定化させてみるほうが先なのかなと思います。 電源が安定している状態で、マーチングやウォーキング、ギャロッピングなどのパターンでSDRAMのアクセステストを長期間してみるのがいいと思います。 可能なら恒温槽で温度を-20~60℃とか振るのがいいと思います。(とりあえずサンプル数は3台くらい) これでSDRAMが今回の不具合の原因である可能性が排除できたら、あとはロジック(ソフト)的なバグの可能性を疑うのがいいかもしれません。
みなさん百戦錬磨の技術者ですから、いろいろなアプローチがあるかとあるかと思いますけれども、、、 m-uenoさんの動物的なカン(現場の目)で電源が怪しいと言っているわけですから、そこを尊重してまずは電源から♡
nensuさん、Kirinさん
アドバイスどうもありがとうございます。
SDRAMの不具合原因はたくさんあることが分かりました。
原因と考えられることを地道にひとつ一つ潰していきたいと思います。
どうもありがとうございました。
PLLのジッタに関して書き込めるほどの力を持ってません。負荷容量の変動がPLLの方が少なくなるのではと思っただけです。余分な書き込みでした。
セラミック発振子は、一般的な水晶振動子にある周波数微調整工程がなく、その他の要因も含めて常温周波数偏差は数千PPM程度のようです。温度特性も水晶振動子に比較して2桁以上大きくなります。数値的には掴んでませんが、周波数短期安定性は、水晶振動子の安定に対して、セラミック振動子は常に変動です。V850ハードウエアで村田製作所のセラミック発振子が推奨されてますが、66MHzバスクロックの素がセラミック発振子は少し意外な感じがします。
私の応用は低速のマイコン1個だけで事足りるセットなので、SI(signal Integrity)とかPI(Power Integroty)などは考えてません。100MHzで30%のTr=Tf=3nSはSIとPIの考慮が絶対とは思いますが、66MHzバスはどうなんでしょうか?どのあたりの周波数から、設計にSIやPIなどを考えるのでしょうか?ぜひ、私にもご教授ください。
前にセラロックのジッターを測定したことありまけども、水晶振動子並みにきれいでしたよ。(20ppmくらい?) G13の内蔵HOCOに比べても桁違いに安定してます。
参照 : 「内蔵クロックのジッターはどのくらい?」
セラロックは初期誤差としては0.5%とか大きいですけれども、温度が一定なら安定性はあると思います。
振動子メーカ様の水晶振動子とセラミック振動子の比較資料を引用してます。残念ながら不勉強のため自分自身で検証できない状態です。ちなみに、発振回路の評価を自分で試したことがありますが、難しく思ったデータがとれませんでした。恥ずかしながらアクティブプローブすら思ったように使えないレベルです。
2015/1/20 6:08のm-uenoさんの書き込みに「信頼できる製品とできない製品はデータシートを見れば判断できることなのでしょうか」とありますが、データシート(仕様書)どうりの製品が試作および量産段階で供給されるかが信頼できる製品か信頼できない製品かになります。事前に予想するには、担当営業や営業技術の方々の態度や実績、および、今までの納品での実績で判断します。買う側が信用されていることも重要なことですが、メーカが信頼できない場合は、データシートの項目に抜け漏れや落とし穴があります。不誠実な態度で問い合わせに曖昧な回答しか得られません。ここで参照している資料を提供いただいた振動子メーカ様を私は信頼してます。この書き込みでの水晶振動子とセラミック振動子の周波数短期安定性はそんなレベルの話です。(Kirinさんの計測結果も十分に信用できるんですよ。私は10年以上も前の資料虎の子のように頼っているし、SDRAMの誤動作を主題にした制約の多い掲示板、具体的なメーカ名やSDRAMや振動子の具体的数値も不明ですからね!機密の問題もあるのでこのあたりが限界でしょう。)
マト外れの書き込みの可能性が高いので控えていたのですが、書き込みの流れから不具合をもつ基板ではダンピング抵抗や配線トポロジー、特性インピーダンスなどは考えていないのではと予想してます。北斗のV850E2/ME3マイコン搭載ボードも検討している気配が無いので66MHz程度なら不要なのかもしれません。私は当然考慮すべきレンジだと思ってます。
基板が目の前にあれば、いろいろ想像してデバッグすることができまけども、「掲示板」だと難しいところはありますよね。 ある程度慣れてくると、基板のパターン図を見るだけで良い基板か悪い基板か分かるようになりますし。 「配線のスルーホールが少なくて、見た目のきれいな配線はちゃんと動く!」ですから。
今でこそですけども、 初めてSDRAMを設計した時は、66MHzとかは早かったですね。私もおっかなびっくり設計した覚えがあります。