たなかです。 なにやら召喚されている模様です。(しゅるしゅるしゅる>(煙の音です。 > 分と言うことになります。3052-25MHzでしたら遅延は80nsとなります。 > > 上記の手法が下記のMPUに適応可能か否かの検証はたなかさんにお任せします。 > > > http://www.necel.com/nesdis/image/U15862JJ3V0UD00.pdf えーとあのーリンク切れています。 なにやら、16ビットアクセスでおこまりのご様子でありましたので 拝見いたしたところなんとわたくしの名前がでてまして お邪魔いたした次第です。 16ビットでデータ出力したらそのときの16ビット同時に出力したいとの事 ですね。 先ほどのメールを見ますと廣田さんの回答で解決したみたいだったのですが 一応指名された手前私も一案提出しておきます(激しい突っ込みをお願い致します。 なにか私、こんなキャラになりつつの傾向ですが・・・) ・私も実はデータの処理をどのようにするかを把握していませんが、 とりあえず、データの出力結果をラッチする方向で検討します。 (ただの拡張I/Oですが・・・・・汗) H8には外部ポートがあり、このポートにアドレス24bit データが16ビットあります。 ここでデータの16ビット出力が可能ではあるのですが、このデータは CPUのハードウェアマニュアル、基本動作タイミングをみてみ分かる通り データの出力は3ステート つまり20Mhzとかで動作するH8などは数50nsのオーダであります。 またこのデータは3ステートのアクセスサイクル中にしかデータは 出力されないのでいずれにしても、CPUのデータをラッチする機構が 必要となります。長々と書きましたが、これにはCPLDなどの プログラマブルICを使います。 以下参考例のPLDですが、実際に使うとなると大変ですので 開発キットなどを購入して、一通りの動作をマスターされてからでないと つらいと思います。 ・参考の回路ではハイライト信号でデータをラッチしていますが、 別に16bitの場合に限り、ロウライト、ハイライト、どちらの信号で ラッチしてもかわりません。 //拡張I・OのPLD(Verilogですが・・・・ module sub_io(a,d,xcs,xrd,xhwr,reset,ex16out //in input [1:0]a; inout [15:0]d; input xcs; input xrd; input xhwr; input reset; output [15:0]ex16out //input signal from h8 always @(posedge xhwr or posedge xreset ) //reset if(xreset) begin ex16out = 0; end else if (!xcs) begin case (a) 0: ex16out= d; //Motor Com endcase end endmodule