|
如下:有主模块,TOP,有子模块,SPI
我现在要仿真SPI模块,发现Quartus II 9.0自带的仿真无法找到SPI相关节点,而TOP可以,如图,后来搜了一下,
网上说只能仿真顶层模块,子模块输入输出不能仿真,那咋弄?
大家平时写程序时顺序是咋样的?
我个人认为的肯定是先写子模块,然后验证,没问题再写其它子模块,完了之后再一点点顶层完善
是不是我这个软件版本太低了?要換最新的版本?
还是要下载专门的仿真软件?
求指点,
- module top(clk,rst,spi_clk,spi_in,spi_out,spi_cs,sf_ok,sf_clk);
- input clk; //50Mhz输入
- input rst; //复位
- input spi_clk; //SPI通讯时钟
- input spi_in; //数据输入
- input spi_out; //数据输出
- input spi_cs; //片选
- input sf_ok; //执行完毕,OK
- output sf_clk; //
- spi (rst,spi_clk,spi_in,spi_out,spi_cs);
- endmodule
- module spi(rst,spi_clk,spi_in,spi_out,spi_cs);
- input rst; //复位
- input spi_clk; //SPI通讯时钟
- input spi_in; //数据输入
- input spi_out; //数据输出
- input spi_cs; //片选
- reg[7:0] buffer;
- always @ (negedge spi_clk) //rst下降沿,CS下降沿准备,CLK上升沿读取数据
- begin
- if(rst==0 || spi_cs==1) //寄存器复位
- begin
- buffer<=8'd0;
- end
- else
- begin
- buffer={buffer[6:0],spi_in};
- end
- end
- endmodule
复制代码 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|