为什么说我的大学生活忙呢,同样是大二上学期,除了接触单片机,还接触了赛灵思、Vivado。在软件上模拟了42条指令(MIPS指令集)流水线CPU的实现,使用Mars进行验证。
除了Vivado的综合应用之外,还使用了modelsim。Vivado的综合度高,但是体量大,占用内存大,所以除了使用Vivado进行编译外还可以使用modelsim进行辅助工作。
在模拟示波器中查看dm_4k中Ram的值来判断是否正确,这里给出从0x394(寄存器221)部分值的截图。
在编写模块时,使用always经常出现[Synth 8-91] ambiguous clock in event control。在查阅大量资料后得知,是在always后面的除了clk之外,我们还在上面添加了reset参数。但是reset参数并未得到初始化,所以出现了如上的错误。解决方法就是只使用always@(posedge clk)即可。