|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
FPGA里面有一段写SDRAM的代码如下:
该芯片型号为:MT48LC32B2
- module WR_RD_DSP16_clk(clk,
- DSP_ECLKOUT,
- DSP_ED,
- nWR,
- nRD,
- data
- );
- input clk;//不同时钟域的clk
- input DSP_ECLKOUT;
- inout [15:0] DSP_ED;
- input nWR;
- input nRD;
- output [15:0] data;reg [15:0] data;
- reg [15:0] dsp_data;
- always @(posedge DSP_ECLKOUT)
- if(~nWR)
- dsp_data[15:0]<=DSP_ED[15:0];
- else
- dsp_data[15:0]<=dsp_data[15:0];
- assign DSP_ED[15:0]=(nRD) ? 16'hzzzz:dsp_data[15:0];
- always @(posedge clk)
- data[15:0]<=dsp_data[15:0];
- endmodule
复制代码
其中:
- nWR =~(~DSP_CE& ~DSP_AWE& (DSP_EA[21:2]==20'h00000));
- nRD =~(~DSP_CE& ~DSP_ARE&~DSP_AOE&(DSP_EA[21:2]==20'h00000));
复制代码
请问,能否看出来这是异步还是同步时序,为什么?
另外,这句话是什么作用?
assign DSP_ED[15:0]=(nRD) ? 16'hzzzz:dsp_data[15:0];
谢谢大家! |
|