efuse_triple_redundant_comparator
Wrap three hard-cell token digest comparators and encode a fail-closed match code.
token_match_o packs {match_n,match_p} for instances 2,1,0. Match=6'b010101, no-match=6'b101010, error=6'b111111 when compute_comparison_vld_i is 1; idle=6'b000000 when valid is 0. Not a majority vote: all three instances must agree with legal differential pairs; any deviation asserts redundancy_fault_o and forces the error code so feature gating fails closed.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
TokenWidth | int | 256 | Token digest width in bits. |
Ports
| Name | Direction | Type | Description |
|---|---|---|---|
compute_comparison_vld_i | input | logic | 1 publishes match codes; 0 forces idle 6'b000000. |
token_digest_i | input | logic [TokenWidth-1:0] | Computed 256-bit token digest. |
token_expected_i | input | logic [TokenWidth-1:0] | Expected 256-bit token digest. |
token_match_o | output | logic [5:0] | Encoded {match_n,match_p}×3 match/fault/idle code. |
redundancy_fault_o | output | logic | High when the three comparators disagree or pair illegally; held low while compute_comparison_vld_i is low. |