1 实现在top.v联合tb_top.v仿真实现了129个寄存器的连续写操作
2 基于工程"D:\FPGAproject\0_basic\spi_LMK04821\prj\prj\prj.xpr"
一些问题 1 在modelsim看仿真波形时,发现了一个问题,tb文件里sys_clk是20MHz,但是这个sys_clk是要给clock wizard ip提供输入的,这里有错误。要改sys_clk为50MHz的,并且检查clkout是不是20MHz
spi_master0_driver.v驱动不修改,增加lmk_cfg_ctrl.v,再用top.v包住两者
lmk_cfg_ctrl.v的功能有2点:
通过状态机fsm,时间24bit的有间隔写操作
局限性:使用readmemh命令获取文件很鸡肋
$readmemh("D:/FPGAproject/0_basic/spi_LMK04821/doc/lmk_init.txt",reg_array);
LMK04828时钟配置教程https://www.cnblogs.com/jzhucas/p/19160493
这个对SYNC SYSREF的讲解比较清楚,也讲TICSPro的配置https://blog.csdn.net/gzy0506/article/details/128892058
1 优化通用SPI驱动
spi_master.v驱动只发8bit
在spi_master.v的上层做spi_cs片选的控制,思考cs不放在spi_master.v里那么“时钟”怎么分?这样做可行吗?
增加fifo,灵活控制一次spi_cs下的连续发送字节数
本文章使用limfx的vscode插件快速发布