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 (302, 303, 304, 305, 306, 307, 308, 309, 310) 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 (302, 303, 304, 305, 306, 307, 308, 309, 310), each unit (302, 303, 304, 305, 306, 307, 308, 309, 310) connected to a single unit (302, 303, 304, 305, 306, 307, 308, 309, 310) above in the branch and a single unit (302, 303, 304, 305, 306, 307, 308, 309, 310) below in the branch, whereby each unit (302, 303, 304, 305, 306, 307, 308, 309, 310) routes communications to and from individually addressable entities above that unit (302, 303, 304, 305, 306, 307, 308, 309, 310) in its branch, the tree-based structure further comprising crosslinks (319, 320, 321, 322, 323, 324) connecting corresponding units (302, 303, 304, 305, 306, 307, 308, 309, 310) of adjacent branches at the same hierarchical level as each other, the method comprising: sending a discovery message; receiving discovery responses from the units (302, 303, 304, 305, 306, 307, 308, 309, 310), each discovery response identifying the number of individually addressable entities in that unit (302, 303, 304, 305, 306, 307, 308, 309, 310) and those units (302, 303, 304, 305, 306, 307, 308, 309, 310) in the branch above that unit (302, 303, 304, 305, 306, 307, 308, 309, 310); 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 (308, 309) 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 (302, 303, 304, 305, 306, 307, 308, 309, 310), each discovery response identifying the number of individually addressable entities in that unit (302, 303, 304, 305, 306, 307, 308, 309, 310) and those units (302, 303, 304, 305, 306, 307, 308, 309, 310) in the branch above that unit (302, 303, 304, 305, 306, 307, 308, 309, 310); 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 (308, 309) 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.