在critical path上,经常需要使用one-hot的方法实现逻辑。要实现同样的逻辑,可以使用n种coding style,但是要保证工具能正确综合到适合的逻辑,还是要养成良好的coding style。看下面的例子。
这种写法比较奇特,但却是可综合的。仔细想想,其实就是if / else if / else。
这种写法也是可综合的。以上的两种写法都需要保证mux的sel是one-hot的,不然运行的结果必然不一样。因为第一种写法实际上是有优先级的,第二种则会把各个选项的结果or起来。以上都是BAD coding style!
要保证整个开发流程比较顺利,我们就要使用好的coding style。从门级的角度去分析,使用一下的方法最稳妥!
用户191366 2009-3-17 10:45
用户194424 2009-3-10 23:57