```python
"""Render a value as fixed-width unsigned binary, nibble-grouped."""


def format_bits(value: int, width: int) -> str:
    if isinstance(value, bool):
        raise ValueError("value must be a non-negative integer")
    if not isinstance(value, int) or value < 0:
        raise ValueError("value must be a non-negative integer")
    if width % 4 != 0 or width > 32:
        raise ValueError("width must be a positive multiple of four and not exceed 32")
    if value >= 1 << width:
        raise ValueError("value does not fit in the specified width")

    binary_str = f"{value:0{width}b}"
    return ' '.join(binary_str[i:i+4] for i in range(0, width, 4))
```