Device Addresses

DeviceAddresses are 16-bits wide, must be pre-assigned, and must be unique for each MediaLB Device. Of the 16-bits, DeviceAddress (DA) bits 15 through 9 and the LSB are always zero. Only the eight bits DA[8:1] vary. At the request of the EHC, DeviceAddresses can be scanned for by the MediaLB Controller to dynamically determine which Devices exist on MediaLB. DeviceAddresses are only used with the MLBScan command in the System Channel and are never assigned to physical channels. Once a Device is found, the ChannelAddresses used in normal operation can be assigned.

MediaLB Devices are encouraged to support dynamic configuration, where a preset DeviceAddress is used to assign the ChannelAddresses for each logical channel. Dynamic configuration avoids collisions of ChannelAddresses on different Devices.

To minimize collisions of DeviceAddresses, programmable Devices should assign the DeviceAddress via firmware. For non-programmable Devices, it is strongly recommended to have only the upper bits fixed, and have the lower bits configurable via pins on the Device. Having the lower bits configurable via pins minimizes collisions with other manufacturer’s Devices, as well as allows multiple instances of the same Device to coexist on the same MediaLB bus.

Table 1. DeviceAddress Grouping
Device Addresses Range Device Type
0x0002..0x017E Reserved
0x0180..0x0186 4 External Host Controller Processors
0x0188..0x018E 4 General Processors
0x0190..0x0196 Reserved
0x0198..0x019E Reserved
0x01A0..0x01A6 4 Digital Signal Processors
0x01A8..0x01AE Reserved
0x01B0..0x01B6 4 Decoder Chips
0x01B8..0x01BE Reserved
0x01C0..0x01C6 4 Encoder Chips
0x01C8..0x01CE Reserved
0x01D0..0x01DE 8 Digital-to-Analog Converters (DACs)
0x01E0..0x01E6 Reserved
0x01E8..0x01EE Reserved
0x01F0..0x01FC 7 Analog-to-Digital Converters (ADCs)