jessie9940509 发表于 2011-12-21 19:32:17

夏宇闻老师,各位前辈高人,FPGA 与DSP并口通信的问题

夏宇闻老师,各位前辈高人:
我正在做FPGA 与DSP并口通信,就是把FPGA 当做SRAM一样的读写,但是仿真不对,麻烦给看看代码,哪里的问题呢?


module CommandOperate(resetcommandmainprocess,
                                          DSP_DATA,DSP_ADDR,dsp_we,dsp_rd,cs_fpga,
                                          LED1);
input              resetcommandmainprocess;
input                 dsp_we,dsp_rd,cs_fpga;
inoutDSP_DATA;
input       DSP_ADDR;
output                LED1;//LED2;
/////////////////////////////////////////
reg       Reg_LED1;//Reg_LED2;
reg       rd_data;

        always @(posedge dsp_rd or posedge resetcommandmainprocess )
                begin
                        if (resetcommandmainprocess) begin
                                rd_data<= 16'bzzzz_zzzz_zzzz_zzzz;
       
                        end
                        else if (( DSP_ADDR == 5'b11000)&&(cs_fpga == 0))
                               rd_data<= Reg_LED1;
            else rd_data<= 16'bzzzz_zzzz_zzzz_zzzz;

                end
assign DSP_DATA=rd_data ;               
///////////////////////////////////////////////
always @(posedge dsp_we or posedge resetcommandmainprocess)
                begin
                        if (resetcommandmainprocess)begin
                               Reg_LED1<=16'h0000;
                               end
                        else if(( DSP_ADDR == 5'b11000)&&(cs_fpga == 0))
                               Reg_LED1<= DSP_DATA;

                end
assign LED1=1'b1;//Reg_LED1;                               
endmodule

jessie9940509 发表于 2011-12-21 19:33:03

在线等待,已经搞了两天了。

jessie9940509 发表于 2011-12-21 22:05:23

module CommandOperate(
                    DSP_RSTn,//Inputs from MAX811
                                RDn,
                                WEn, //from DSP2812
                                DSP_DATA,
                                DSP_ADDR,
                                CS0AND1n,
/////////////////////////////////////////
                                LD
                                );
////////////////////////////////////////////
input               DSP_RSTn;//Inputs from MAX811
input                        RDn;
input                        WEn; //from DSP2812
inout                        DSP_DATA;
input                        DSP_ADDR;
input                        CS0AND1n;
/////////////////////////////////////////
output                        LD;
////////////////////////////////////////////////////////
regLED;
///////////////////////
reg rd_data;
///////////////////////////////////////////////////
always @(posedge RDn or posedge DSP_RSTn )
                begin
                        if (DSP_RSTn) begin
                                rd_data <= 16'bzzzzzzzzzzzzzzzz;
       
                        end
                        else if (( DSP_ADDR == 13'b0000000000001)&& (CS0AND1n == 0 ))
                               rd_data<=LED;
            else rd_data <= 16'bzzzzzzzzzzzzzzzz;

                end
assign DSP_DATA=rd_data;
///////////////////////////////////////////////
always @(posedge WEn or posedge DSP_RSTn )
                begin
                        if (DSP_RSTn) begin
                                LED <= 0;
                        end
                        else if (( DSP_ADDR == 13'b0000000000001 )&& (CS0AND1n == 0 ))
                               LED<= DSP_DATA;
                end

assign LD=LED;                                                                                               
endmodule
这是最新的代码,还是不行,第二次读数据,就错了,data上面的数据没有了,不对了

jessie9940509 发表于 2011-12-21 22:06:19

就是这样,LD是我要的数据

至芯兴洪 发表于 2011-12-23 20:09:07

你的数据流乱起八糟的,由于你的代码有问题,数据存在冲突,当然没有数据

白开水的噩梦 发表于 2011-12-25 14:34:51

感觉你写的很混乱

suifeng0868 发表于 2011-12-25 16:13:14

你直接用内部的核不就行了,Quartus里面有内部RAM核可以调用啊。

suifeng0868 发表于 2011-12-25 16:13:28

你直接用内部的核不就行了,Quartus里面有内部RAM核可以调用啊。
页: [1]
查看完整版本: 夏宇闻老师,各位前辈高人,FPGA 与DSP并口通信的问题