<自己动手写CPU>碰到的问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangyanhe/article/details/52472908

1.在实现第一条指令ori的时候,读端口1,2的读操作使用的是组合逻辑,而写端口使用的为时序逻辑.作者特别强调了这一点.可是我不清楚这是为什么?问题的关键是在组合逻辑和时序逻辑的区分吗??   套用书本上的话
组合逻辑的输出仅与当前的输入有关而时序逻辑的输出不但与输入有关,还和系统上一个状态有关?
不过并不十分明白这句话在实际中代表着什么原文可见http://imgtec.eetrend.com/blog/3264  这个问题的代码在module regfile中


2.书第86页为了实现除4操作,使用了移位.  
inst <= inst_mem[addr['InstMemNumLog2+1:2]];
InstMemNumLog2 已经定义为17    addr定义为18位.
addr 初始为[17:0]  该操作得到addr[18:2] 不明白代码的加一是干嘛用的??



书的原文可见http://imgtec.eetrend.com/blog/3276  在module inst_rom


猜你喜欢

转载自blog.csdn.net/zhangyanhe/article/details/52472908