26.11.2014 Views

System Management Bus (SMBus) Specification, version 2.

System Management Bus (SMBus) Specification, version 2.

System Management Bus (SMBus) Specification, version 2.

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>System</strong> <strong>Management</strong> <strong>Bus</strong> (SM<strong>Bus</strong>) <strong>Specification</strong> Version <strong>2.</strong>0<br />

The device decodes the two internal flags as described in the following table:<br />

Address Valid (AV Flag) Address Resolved (AR Flag) Meaning<br />

Cleared<br />

Cleared<br />

The device does not have a valid slave address<br />

and will participate in the ARP process. This is<br />

the POR state for a device that doesn’t support<br />

the PSA or if it does it has not previously been<br />

assigned a slave address.<br />

Cleared Set Illegal state!<br />

Set<br />

Cleared<br />

The device has a valid slave address but must<br />

still participate in the ARP process.<br />

Set<br />

Set<br />

The device has a valid slave address that has<br />

been resolved by the ARP Master. The device<br />

will not respond to the “General Get UDID”<br />

command. However, it could subsequently<br />

receive an “Assign Address” command and<br />

would change its slave address accordingly.<br />

Table 8: Device decodes of AV and AR flags<br />

5.6.3.13. Enumeration rules<br />

Any device may enumerate the bus provided that the device is intelligent and capable of doing so.<br />

Additionally, the enumerating device must provide “snooping” capabilities to guarantee that multiple<br />

devices aren’t enumerating/ARPing at the same time. An enumerator must adhere to the following rules:<br />

1. If an enumerator sees a “Prepare to ARP” or “Get UDID” command it must immediately stop<br />

enumerating.<br />

<strong>2.</strong> An enumerator must monitor the bus for ARP commands for at least 2 seconds before beginning the<br />

enumeration process with the “Prepare to ARP” command.<br />

3. If an enumerator sees an unassigned address then it must issue a host notify command and stop<br />

enumerating.<br />

5.6.3.14. Example scenarios<br />

The ARP can be illustrated by the following examples. Note that the UDID values are simple examples for<br />

illustrative purposes. They do not necessarily represent legal values.<br />

Example 1<br />

In this scenario assume the following:<br />

• The ARP Master has already exited its reset state and has run the ARP. The Used Address Pool does<br />

NOT contain the values 1001 000, 1001 001, … 1001 111.<br />

• New Device A has a UDID of 0x8123456789ABCDEF0000000000000000, does support the<br />

Persistent Slave Address and was previously assigned the slave address 1001 001. Its Address Valid<br />

flag is set but its Address Resolved flag is cleared.<br />

• New Device B has a UDID of 0xF123456789ABCDE00000000000000000 and does not support the<br />

Persistent Slave Address. Its Address Valid and Address Resolved flags are cleared.<br />

• New Device C has a UDID of 0xF123456789ABCDE10000000000000000 and does not support the<br />

Persistent Slave Address. Its Address Valid and Address Resolved flags are cleared.<br />

• All devices exit their power on reset state at the same time.<br />

SBS Implementers Forum 50

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!