我试图了解以下情况:
typedef enum logic [2:0] {
ONE, TWO, THREE, FOUR, FIVE
} enum_t;
带有enum_t
类型 in case 表达式的 case 语句:
enum_t case_expression;
logic [2:0] result;
case (case_expression)
ONE: result = 3'b000;
TWO: result = 3'b001;
THREE: result = 3'b010;
FOUR: result = 3'b011;
FIVE: result = 3'b100;
endcase
我不确定或不清楚以下内容:
- 没有
default case
声明可以result
吗?这case_expression
是一个enum
只有 5 个有效值的值。但是它是3位。那么综合工具将如何评估这个逻辑呢?它会推断闩锁吗? - 所有案例项目都是互斥的。那么我可以在这里使用
unique
关键字来帮助综合工具优化设计吗?
我在合成方面没有太多经验。因此,我将不胜感激任何反馈。谢谢!