RN72NにてRMWV6416Aシリーズの(4M word * 16bit)のSRAMを使用してます。SRAMを使用するのは初めてです。
以下の問題が発生しており、原因と解決方法が分からないためこの問題に心当たりがあれば、教えていただければ幸いです。
CS7にSRAMを接続して、アドレス出力はA0~A22に設定。SRAMのアドレス0x0100 0000に0001を書き込み実行し、成功します。ここからが問題で上記実行で、アドレス0x0104 0000にも0001が書き込まれます。さらにアドレス0x0108 0000にも0001が書き込まれます。さらにアドレス0x01C0 0000にも0001が書き込まれ、0x0100 0000から0x40000の倍数のアドレスに0001が書き込まれ、この規則が続いて0x01FC 0000まで0001が書き込まれます。
アドレス0x0103 FFF0に1111を書き込み実行し成功します。この実行においても、アドレス0x0107 FFF0に1111が書き込まれます。以降、0x0103 FFFFから0x40000の倍数で同時に書き込まれてしまいます。
書き込む値は特に関係なく、同時にSRAMの0x40000の倍数のアドレスに規則的に書かれてしまいます。
また、0x0104 0000に0001を書き込むと同様に0x0100 0000から0x40000の倍数で0001が同時に書き込まれます。
書き込まれる値はe2studioでデバックし、メモリの画面で確認しています。
この現象を解決したく、原因と解決方法にもし心当たりがあれば教えてください。よろしくお願いいたします。
メッセージを頂きありがとうございました。
解決しました。
原因は
A20,A21,A22の端子の接続ミスで、
外部バス制御レジスタ0(RX72NマニュアルPage 954)の使用方法において
私どもの設計で、A16-A23の接続をPC0,PC1,P71,P72,P74,PC5,PC6,PC7にしなければならないところを
A16:PC0
A17:PC1
A18:P71
A19:P72
A20: 誤P94,正P74
A21:誤P95,正PC5
A22:誤P96,正PC6
のように設計していました。
オシロスコープを用いてA20、A21、A22から信号が出てないことが分かり、気づいた次第です。
お知恵を頂き、ありがとうございました。