What is the difference between big X and small x when we get red (unknown) signals in QuestaSim? I would assume it to be the same in ModelSim simulation as well.
IEEE Std 1364-1995 § 22.214.171.124 "Unknown and high impedance values" and IEEE Std 1800-2012 § 126.96.36.199 "Unknown and high-impedance values":
- If all bits in a group are at the unknown value, a lowercase x is displayed for that digit.
- If all bits in a group are at a high-impedance state, a lowercase z is printed for that digit.
- If some, but not all, bits in a group are unknown, an uppercase X is displayed for that digit.
- If some, but not all, bits in a group are at a high-impedance state, then an uppercase Z is displayed for that digit, unless there are also some bits at the unknown value, in which case an uppercase X is displayed for that digit.
8'b1111_xxxx => displays as
8'b00x0_1001 => displays as
8'b1010_zzzz => displays as
8'b0z00_0110 => displays as
8'b0zx0_1010 => displays as
8'hXA (unknown has higher display priority over high impedance)
Are you viewing a signal in hex radix? IIRC big 'X' means all the bits of your radix are unknown, while little x means that some but not all of the bits are unknown.
Maybe something like:
4'hX = 4'bxxxx;
4'hx = 4'b000x;
I don't know if this the standard on all simulators, but you could check to confirm by looking at the binary radix.