A method of reconfiguring an addressing mechanism in a system-on-chip comprising system circuitry and monitoring circuitry for monitoring the system circuitry , the monitoring circuitry comprising units connected in a tree-based structure for routing communications through the system-on-chip, the tree-based structure comprising branches extending from a root unit at the base of the tree-based structure, each branch comprising a plurality of units , each unit connected to a single unit above in the branch and a single unit below in the branch, whereby each unit routes communications to and from individually addressable entities above that unit in its branch, the tree-based structure further comprising crosslinks connecting corresponding units of adjacent branches at the same hierarchical level as each other, the method comprising: sending a discovery message; receiving discovery responses from the units , each discovery response identifying the number of individually addressable entities in that unit and those units in the branch above that unit ; in response to not receiving a response from one or more units , determining that one of those units is defective; enabling a crosslink between a first unit in the same branch as the defective unit and a second unit in an adjacent branch, the crosslink being enabled between the branch unit above the defective unit in the same branch as the defective unit and a corresponding unit in an adjacent branch; sending a further discovery message; receiving a further discovery response from the second unit identifying the number of individually addressable entities in that second unit , those units in the branch above that second unit , the first unit , and those units in the branch above the first unit ; and reconfiguring the address of the crosslink so as to cause a subsequent communication to an individually addressable entity in the defective unit's branch to be routed via the adjacent branch and the crosslink , thereby bypassing the defective unit . sending a discovery message; receiving discovery responses from the units , each discovery response identifying the number of individually addressable entities in that unit and those units in the branch above that unit ; in response to not receiving a response from one or more units , determining that one of those units is defective; enabling a crosslink between a first unit in the same branch as the defective unit and a second unit in an adjacent branch, the crosslink being enabled between the branch unit above the defective unit in the same branch as the defective unit and a corresponding unit in an adjacent branch; sending a further discovery message; receiving a further discovery response from the second unit identifying the number of individually addressable entities in that second unit , those units in the branch above that second unit , the first unit , and those units in the branch above the first unit ; and reconfiguring the address of the crosslink so as to cause a subsequent communication to an individually addressable entity in the defective unit's branch to be routed via the adjacent branch and the crosslink , thereby bypassing the defective unit . <EOS>