The PCI specification provides for totally software driven initialization and configuration of each device (or target) on the PCI Bus via a separate Configuration Address Space. All PCI devices, except host bus bridges, are required to provide 256 bytes of configuration registers for this purpose.
Does this mean in a USB flash drive for example, besides for the flash memory there are configuration registers?
If so, how are they divided? Are there 256 registers all 1 byte in size? Or maybe 128 registers all 2 bytes in size?