いつもお世話になっております。
72855を採用しております。
FAQ1004533にて、V850ファミリの動作について記載がありましたが
SH7280シリーズについて同様の確認をしたく問合せさせて頂きます。
ビット・アクセス命令はリード・モディファイ・ライトの動作となるのでしょうか?
また、その実行処理中に割込みは入るのでしょうか?
Tk_naraさん SHのビットアクセス(リードモディファイライト)はGBR間接アドレッシングなのでバスをつかんだまま直接メモリアクセスするので割り込みは入りません。 アルゴリズムで演算が条件判断などにより複数命令に分割されている場合は、割り込み内で変更した値が、割り込み復帰時に割り込み直前の値に戻ることはあると思います。 その場合は自分で get_imask()/set_imask() で所望の処理を括らないと意図しない結果になるかと思います。
tk_naraさん、こんにちは。NoMaYと申します。ちょっと気になったのですが、随分古い(つい最近新規採用されたとは考え難い)マイコンだと思うのですが、今、これが話題になった理由は何でしょうか?もしかして、既存開発ソフトウェアへの機能追加時のCMMIなりISO9001なりのソースコードレビューで(旧V850ユーザから?)「確認しておくこと」と指摘されてのことだったりしますか?(もしそうだとすると、かふぇルネでは「証拠能力」がちょっと弱いかな、と思ったのです。もちろん、ルネサス社から回答が無かったので「次善の策」でということならば良い(というか止むを得ない)のですが、、、)
tk_naraさん リード・モディファイ・ライトが気になるような微妙な状況がありますか? SHのコーディングでは分岐等に特別の注意が必要で、そう簡単に途中で割り込みを挟むのでしょうか? 関係者でないので内部の詳しいことは分かりませんが、そこら辺りはコンパイラーが最適化なりして 問題なきようにしているのではないでしょうか、詳しく調べて解決したいというのも、どうかと思います。
とても興味はございます。
tk_naraさん、こんにちは。NoMaYです。ちなみに、RXマイコンのソフトウェアマニュアルでは、以下の表で、割り込み受付タイミングが命令実行中の命令にビット操作命令が含まれていない、ことをエビデンスとすることが出来そうですが、SH-2AのソフトウェアマニュアルにもSH7280のハードウェアマニュアルにもそのような表は無いのですよね。RXファミリ RXv2命令セットアーキテクチャ ユーザーズマニュアル ソフトウェア編 より抜粋www.renesas.com/jp/ja/search/keyword-search.html#q=r01us0071r01us0071jj0100_rxv2sm.pdfSH-2A、SH2A-FPU ユーザーズマニュアル ソフトウェア編 より抜粋www.renesas.com/jp/ja/search/keyword-search.html#q=r01us0031r01us0031jj_sh-2a.pdfSH7280グループ、SH7243グループ ユーザーズマニュアル ハードウェア編 より抜粋www.renesas.com/jp/ja/search/keyword-search.html#q=r01uh0229r01uh0229jj_sh7280.pdf[リンク]FAQ 1004533 : ビット・アクセス命令はリード・モディファイ・ライトの動作となるのでしょうか? またその実行処理中に割り込みは入るのでしょうか? (注) V850ファミリのFAQですja.na4.teamsupport.com/knowledgeBase/17795568
NoMaYさん
そもそも、ビット命令(リードモディファイライト)は割り込みによってリードとライトが分離しないようにするためのものなので自明の事としてあえてUMなどには割り込み入りませんと書いていないのかもしれませんね。
NoMaYさん いずれにしても、リードモディファイライトは読んで・書いての2クロック必要ですよねー。 1クロックでリードモディファイライトに対応すると、 トランジスタ数が膨大になるのでチップ屋さんとしてはやりたくない構成ですし。
1命令(≠1クロック)でやるのに意義がある!ということで。
Kirinさん、こんにちは。NoMaYです。> 割り込みによってリードとライトが分離しないようにするためのものなので自明の事として私もそうではないかと思います。このV850のFAQは、(パイプライン動作によってロード/ストア/演算などは)基本的には1命令=1クロックなのだけれども、そんな中でもビットアクセス命令は1クロックでは無いのですよ、というのを言わんが為のFAQなのかなぁ?という気もします、、、このFAQに出てくるV850/SA1やV850E/MS1は初期の製品で、ハードウェアマニュアルのCopyright年から推測するに、1997年頃の製品のようです。(さすがにいつの製品だったかは覚えていないです。) ちなみに、SH-2Aが2006年のよう(en.wikipedia)なので、それよりずっと前の製品ですね。(ja.wikipediaによると、SH-2が1994年、SH2 DSPが1996年、なのですね。)[リンク]en.wikipedia.org/wiki/SuperHen.wikipedia.org/wiki/V850ja.wikipedia.org/wiki/SuperH
tk_naraさん、こんにちは。NoMaYです。必要な情報は得られましたでしょうか?