0
マイコードに:上記のコードでのVerilog - 遅延SPIマスタースレーブインタフェースの実装上部モジュール(SPIマスタスレーブ)用
module top(en,en_s,sclk,data_rg,tr_rg,rst,s_rst,ss_bar,rcv_rg,m_data_rg);
input [7:0] data_rg,tr_rg;
input en,en_s,sclk,rst,s_rst,ss_bar;
output [7:0] rcv_rg,m_data_rg;
ms m1(.en(en),.data_rg(data_rg),.sclk(sclk),.rst(rst),.miso(miso),.mosi(mosi),.ss_bar(ss_bar),.rcv_rg(rcv_rg));
slv m2(.en_s(en_s),.tr_rg(tr_rg),.ss_bar(ss_bar),.sclk(sclk),.s_rst(s_rst),.mosi(mosi),.miso(miso),.m_data_rg(m_data_rg));
initial
$display ("Transmitter data %d, %d",data_rg,tr_rg);
endmodule
、マスターモジュールが最初に実行されますと、スレーブが実行されます。今、私はインターフェイスの遅れに直面しています。全二重でなければなりません。 SPIマスタスレーブの
遅延後にモジュールをインスタンス化することはできません。インスタンス化モジュールとは、ボードにハードウェアを追加することを意味します。このハードウェアは、実世界のシナリオでは並行して動作します。だからどこに遅延を追加したいのですか?インスタンス化(不可能)またはモジュール自体(いくつかのカウンターを使用して行うことができます)にありますか? – sharvil111
私は遅延を追加したくありません.....私はそれを望んでいます、なぜスレーブが8パルスでマスターのデータを受信する9 clkパルスでマスターの後ろの理由がスレーブのデータを受け取りますか?どこで –