求助,case语句和资源使用的问题
时间:10-02
整理:3721RD
点击:
问大家一个问题
在verilog中,假设inter匹配在3‘d1,3'd2,3'd6,3'd7这几个case上时,对应的操作内容相同,请问有么有什么办法?
我现在的做法就是没有3’dX上都写一遍一样的内容,感觉这个方法很笨,求指导
case(inter)
3‘d1:
3'd2:
3'd3:
.
.
.
3'd7
endcase
还有一个问题,在如上的case,每个3’dX开头都有相同的if ( ) else ,内容和语句格式,请问,这样在综合时,是综合出一个比较的器,还是每个case都有一个?
在verilog中,假设inter匹配在3‘d1,3'd2,3'd6,3'd7这几个case上时,对应的操作内容相同,请问有么有什么办法?
我现在的做法就是没有3’dX上都写一遍一样的内容,感觉这个方法很笨,求指导
case(inter)
3‘d1:
3'd2:
3'd3:
.
.
.
3'd7
endcase
还有一个问题,在如上的case,每个3’dX开头都有相同的if ( ) else ,内容和语句格式,请问,这样在综合时,是综合出一个比较的器,还是每个case都有一个?
don't worry about that.
synthesizer will optimize logic by less gate count.
case 综合出来的逻辑要小一些:
case 的逻辑没有优先级
而if else if。 实际是优先case
第一个问题不太清楚,你可以试一试把相同得处理放在一起,然后测试仪下就知道了嘛
第二个问题不太清楚你是什么意思
1,
2,
3:
这儿样写
意思是说,如果case条件的
1:
2:
3:
4:
5:
如果在满足这些条件时,做了同样的操作,也就是在每个条件的代码都是一样的,那么综合时会不会在资源上有什么优化,
第二问的意思,其实是建立在第一问上,因为如果每个条件的执行代码是一样的,那么第二问就可以肯定是可以省去资源,而不是,每个条件的代码,综合时都会综合出各自的逻辑、
