Those bits aren't that magic... they are the 4-bit 'byte enables' for the 32-bit data values.
Then, possibly renaming the 'd_out_ctrl ' signal to something including 'byte enable' would make the code easier to figure out. =)
The context isn't that clear because of it being a code snippet, but having BYTE_ENABLE_0000 and BYTE_ENABLE_1111 isn't really that helpful... They are labelled "ctrl" because the 1 signifies "control symbols" vs "data symbols" in the protocol.
While excessively using constants to absurd levels is not helpful at all, your interpretation of writing constants here is pretty odd. To put it lightly.
Would be a bit like, say, having a constant that is supposed to be the max value of some variable, that would be say 100, and defining the constant as "VALUE_100 = 100" instead of "VALUE_MAX = 100", or something like that. If you get the idea.
Since those are byte enables, here, if I wanted to define constants, I would likely name them BYTE_ENABLE_8, BYTE_ENABLE_16, etc... instead. Makes more sense. IMHO.
They are labelled "ctrl" because the 1 signifies "control symbols" vs "data symbols" in the protocol.
Yeah, to each their choice of signal/variable naming. This is more an art than a science, and relatively subjective. To relate to what I just wrote above. But if the signal doesn't control anything else than byte enables, then I'd personally stick to my view.