1460940358-bf3ae8cf-f7e4-4fb9-b38d-c80174e85330

What is claimed is:

1. A method of testing a device configuration having an external data port and at least one internal data port, wherein each data port comprises multiple pads, and wherein the pads of the external and internal data ports support simultaneous bi-directional (SBD) data signaling, the method comprising:
connecting the pads of the external data port to communicate with a tester using unidirectional data signaling;
connecting at least one first internal data port pad to a second internal data port pad; and
setting internal data paths in at least one device of the device configuration to concurrently
route a first write signal received on a first external data port pad to an output driver of the first internal data port pad,
route a second write signal received on a second external data port pad to an output driver of the second internal data port pad,
route a signal received by a receiver of the first internal data port pad to a third external data port pad as a first read signal, and
route a signal received by a receiver of the second internal data port pad to a fourth external data port pad as a second read signal.
2. The method of claim 1, further comprising connecting at least one third internal data port pad to a fourth internal data port pad, and, after routing the first and second write signals, setting internal data paths in at least one device of the device configuration to concurrently:
route a third write signal received on the first external data port pad to an output driver of the third internal data port pad;
route a fourth write signal received on the second external data port pad to an output driver of the fourth internal data port pad;
route a signal received by a receiver of the third internal data port pad to the third external data port pad as a third read signal; and
route a signal received by a receiver of the fourth internal data port pad to the fourth external data port pad as a fourth read signal.
3. The method of claim 1, further comprising connecting at least one third internal data port pad to a fourth internal data port pad, and, as part of setting the internal data path, setting internal data paths in at least one device of the device configuration to concurrently:
route a third write signal received on a fifth external data port pad to an output driver of the third internal data port pad;
route a fourth write signal received on a sixth external data port pad to an output driver of the fourth internal data port pad;
route a signal received by a receiver of the third internal data port pad to a seventh external data port pad as a third read signal; and
route a signal received by a receiver of the fourth internal data port pad to an eighth external data port pad as a fourth read signal.
4. The method of claim 1, wherein the device configuration comprises a single device-under-test having first and second SBD ports:
wherein the first SBD port is designated as the external data port and the second SBD port is designated as the internal data port; and
wherein connecting at least one first internal data port pad to a second internal data port pad comprises externally connecting half of the port pads of the second SBD port respectively to the other half of the port pads of the second SBD port, in a configuration such that no two port pads internally connectable to the same first SBD port are externally connected.
5. The method of claim 1, wherein the device configuration comprises first and second devices, each having first and second SBD ports:
wherein the first device first SBD port and the second device second SBD port are designated as the external data port, and the first device second SBD port and the second device first SBD port are designated respectively as first and second internal data ports;
wherein connecting at least one first internal data port pad to a second internal data port pad comprises interconnecting the pads of the first internal data port, respectively, with the pads of the second internal data port; and
wherein setting internal data paths in the device configuration comprises configuring the first and second devices such that the first and third external data port pads are associated with the first device first SBD port, the second and fourth external data port pads are associated with the second device second SBD port, the first internal data port pad is associated with the first internal data port, and the second internal data port pad is associated with the second internal data port.
6. The method of claim 5, further comprising swapping at least one of the first and second devices to the position of the other device in the device configuration and repeating the steps of claim 5.
7. The method of claim 5, further comprising swapping the positions of the first and second devices in the device configuration and repeating the steps of claim 5.
8. The method of claim 1, wherein the device configuration comprises first and second devices, each having first and second SBD ports, wherein the first device is a known good device (KGD) and the second device is a device under test (DUT):
wherein the KGD first SBD port is designated as the external data port, and the KGD second SBD port and the DUT first and second SBD ports are designated respectively as first, second, and third internal data ports;
wherein connecting at least one first internal data port pad to a second internal data port pad comprises interconnecting the pads of the first internal data port, respectively, with the pads of the second internal data port, and externally connecting half of the port pads of the third internal data port respectively to the other half of the port pads of the third internal data port, in a configuration such that no two port pads internally connectable to the same second internal data port pad are externally connected; and
wherein setting internal data paths in the device configuration comprises configuring the first and second devices such that the first write signal passes from the first external data port pad through a first pad of the first internal data port to a first pad of the second internal data port, through a first pad of the third internal data port to a second pad of the third internal data port, through a second pad of the second internal data port to a second pad of the first internal data port, and exits the fourth external data port pad as the second read signal, and the second write signal passes from the second external data port pad through the second pad of the first internal data port to the second pad of the second internal data port, through the second pad of the third internal data port to the first pad of the third internal data port, through the first pad of the second internal data port to the first pad of the first internal data port, and exits the third external data port pad as the first read signal.
9. The method of claim 1, wherein the device configuration comprises first and second KGDs and one DUT, each having first and second SBD ports:
wherein the first KGD first SBD port and second KGD second SBD port are designated as the external data port, and the first KGD second SBD port, the DUT first and second SBD ports, and the second KGD first SBD port are designated respectively as first, second, third, and fourth internal data ports;
wherein connecting at least one first internal data port pad to a second internal data port pad comprises interconnecting the pads of the first internal data port, respectively, with the pads of the second internal data port, and interconnecting the pads of the third internal data port, respectively, with the pads of the fourth internal data port; and
wherein setting internal data paths in the device configuration comprises configuring the KGDs and the DUT such that the first write signal passes from a first external data port pad on the first KGD, through a first pad of the first internal data port to a first pad of the second internal data port, through a first pad of the third internal data port to a first pad of the fourth internal data port, and exits through a fourth external data port pad on the second KGD as the second read signal, and the second write signal passes from a second external data port pad on the second KGD, through the first pad of the fourth internal data port to the first pad of the third internal data port, through the first pad of the second internal data port to the first pad of the first internal data port, and exits the third external data port pad on the first KGD as the first read signal.
10. The method of claim 9, wherein the method simultaneously tests half of the pads of the second and third internal ports, the method further comprising internally reconfiguring at least the data paths of the first and second KGDs to simultaneously test the other half of the pads of the second and third internal ports.
11. The method of claim 1, wherein the device configuration comprises first, second, third, and fourth KGDs and one DUT, each having first and second SBD ports:
wherein the first KGD first SBD port, second KGD first SBD port, third KGD second SBD port, and fourth KGD second SBD port are designated as the external data port, and the first KGD second SBD port, second KGD second SBD port, DUT first and second SBD ports, third KGD first SBD port, and fourth KGD first SBD port are designated respectively as first, second, third, fourth, fifth, and sixth internal data ports;
wherein connecting at least one first internal data port pad to a second internal data port pad comprises interconnecting half of the pads of the first internal data port, respectively, with half of the pads of the third internal data port, interconnecting half of the pads of the second internal data port to the other half of the pads of the third internal data port, interconnecting half of the pads of the fourth internal data port to half of the pads of the fifth internal data port, and interconnecting the other half of the pads of the fifth internal data port to half of the pads of the sixth internal data port; and
wherein setting internal data paths in the device configuration comprises configuring the four KGDs and the DUT such that all SBD port pads on the DUT are tested simultaneously using a number of write signals equal to the number of SBD port pads on the device under test, wherein each of the KGDs receives one-fourth of the external data port write signals and transmits one-fourth of the external data port read signals, and wherein each KGD communicates SBD data with one-fourth of the SBD port pads on the DUT.
12. A semiconductor device comprising:
a first data port and a second data port, each data port comprising at least first and second pads each supporting simultaneous bi-directional (SBD) data transmission;
a normal data path connecting the first data port with internal circuitry of the device;
a pass-through path connecting the first data port with the second data port in a first correspondence of first-data-port pads to second-data-port pads; and
a test path connecting the first data port with the second data port in a second correspondence of first-data-port to second-data-port pads; and
path select circuitry to select between the pass-through path and the test path.
13. The semiconductor device of claim 12, wherein the pass-through path transmits data received at the first data port first pad to the second data port first pad, and vice-versa, and transmits data received at the first data port second pad to the second data port second pad, and vice-versa.
14. The semiconductor device of claim 13, wherein the test path comprises a first configurable test connection that transmits data received at the first data port first pad to the second data port first pad and transmits data received at the second data port first pad to the first data port second pad.
15. The semiconductor device of claim 14, wherein the test path further comprises a second configurable test connection that transmits data received at the first data port first pad to the second data port second pad and transmits data received at the second data port second pad to the first data port second pad.
16. The semiconductor device of claim 12, wherein the path select circuitry comprises a set of cross-connecting switching elements configurable to allow data to pass between the first data port pads and the second data port pads in a plurality of two-pad to one-pad mappings.
17. The semiconductor device of claim 16, wherein each two-pad to one-pad mapping allows unidirectional data received and transmitted, respectively, on two pads of one of the data ports to be converted to bi-directional data received and transmitted on one pad of the other data port.
18. The semiconductor device of claim 16, wherein the set of cross-connecting switching elements are also configurable according to at least one one-pad to one-pad bi-directional mapping between the first data port pads and the second data port pads.
19. The semiconductor device of claim 16, each data port pad having a corresponding SBD receiver and driver, each receiver connecting to two switched paths to drivers for two data port pads on the opposite data port.
20. The semiconductor device of claim 19, the path select circuitry comprising path-switching elements between the first data port and the second data port, wherein the path select circuitry further comprises a test mode register, the test mode register generating at least one test mode signal to operate path-switching elements.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for hosting multiple Label Distribution Protocol (LDP) Label Switch Router (LSR) instances sharing a common label space at a network element, comprising:
instantiating within a memory at the network element a plurality of LSR instances, each LSR instance having associated with it a respective LSR Identifier (LSR ID) and a common label space identifier (label space ID); and
mapping each LSR ID to a respective IP address at the network element;
wherein each LSR instance is adapted to support a respective LDP session with a LSR at a peer network element;
wherein said network element advertises a multiple LSR hosting capability to other peer network elements.
2. The method of claim 1, wherein said network element is associated with a plurality of different label spaces, said common label space comprising a first of said plurality of different label spaces.
3. The method of claim 2, further comprising repeating said steps of instantiating and mapping to provide thereby multiple LSR instances sharing a second of said plurality of different label spaces.
4. The method of claim 2, wherein each of said plurality of different label spaces has associated with it a respective multiple LSR instances.
5. The method of claim 1, wherein said mapping uses a respective IP address from a pool of IP addresses associated with the common label space.
6. The method of claim 1, further comprising initiating LDP discovery for at least one of said plurality of LSR instances to discover thereby neighboring LSRs at one or more peer network elements.
7. The method of claim 6, further comprising initiating LDP session establishment for one or more discovered LSRs for at least one of said plurality of LSR instances to establish thereby one or more respective LDP sessions.
8. The method of claim 7, further comprising initiating LDP label advertisement for one or more established LDP sessions for at least one of said plurality of LSR instances to advertise thereby one or more respective LDP labels.
9. The method of claim 1, wherein said steps are performed at each of a plurality of peer network elements such that each peer network element supports one or more LSR instances adapted to support LDP sessions with LSR instances of other peer network elements.
10. The method of claim 9, wherein each peer network element capable of hosting multiple LSR instances advertises said multiple LSR hosting capability to other peer network elements.
11. The method of claim 1, wherein said multiple LSR hosting capability is advertised via a LDP Node-ID TLV that uniquely identifies the advertising network element.
12. The method of claim 11, wherein said LDP Node-ID TLV is carried within an Optional Parameters field of a LDP Hello Message.
13. The method of claim 1, further comprising:
at an instantiated LSR at the network element, in response to receiving via a peering session a FEC label mapping matching a FEC label mapping already received by another instantiated LSR at the network element, transmitting a Label Release message via the peering session with a status code indicative of a detected loop condition.
14. The method of claim 1, wherein each instantiated LSR of a network element uses a Hello Message including one or more parameters common to each of the instantiated LSRs of the network element.
15. The method of claim 14, wherein said common parameters of each Hello Message include an identifier of the network element.
16. The method of claim 1, wherein each of a plurality of instantiated LSRs at the network element is used to transport traffic of a respective FEC type to a corresponding LSR instantiated at a peer network element.
17. The method of claim 16, wherein said FEC types comprise any of an IPv4 FEC Element Type, an IPv6 Element Type, a Unicast Element Type, a Multicast Element Type, a PseudoWire Element Type and a MultiCast PseudoWire Element Type.
18. The method of claim 1, wherein at least a portion of the plurality of instantiated LSRs at the network element communicates with a corresponding LSR instantiated at a peer network element to provide thereby a plurality of peering sessions, each peering session using a respective Transport Communication Protocol (TCP) address.
19. The method of claim 18, wherein FEC label mappings exchanged via LDP sessions are disjoint sets.
20. A telecom network element, for hosting multiple Label Distribution Protocol (LDP) Label Switch Router (LSR) instances sharing a common data plane at a network element, comprising a processor configured for:
instantiating within a memory at the network element a plurality of LSR instances, each LSR instance having associated with it a respective LSR Identifier (LSR ID); and
mapping each LSR ID to a respective IP address from a pool of IP addresses associated with the common data plane at the network element;
wherein each LSR instance is adapted to support a respective LDP session with a LSR at a peer network element;
wherein said network element advertises a multiple LSR hosting capability to other peer network elements.
21. A tangible and non-transient computer readable storage medium storing instructions which, when executed by a computer, adapt the operation of the computer to provide a method for hosting multiple Label Distribution Protocol (LDP) Label Switch Router (LSR) instances sharing a common data plane at a network element, the method comprising:
instantiating within a memory at the network element a plurality of LSR instances, each LSR instance having associated with it a respective LSR Identifier (LSR ID); and
mapping each LSR ID to a respective IP address from a pool of IP addresses associated with the common data plane at the network element;
wherein each LSR instance is adapted to support a respective LDP session with a LSR at a peer network element;
wherein said network element advertises a multiple LSR hosting capability to other peer network elements.
22. A computer program product storing computer instructions which, when executed by a processor in a telecom network element, adapt the operation of the telecom network element to provide a method for hosting multiple Label Distribution Protocol (LDP) Label Switch Router (LSR) instances sharing a common data plane at a network element, the method comprising:
instantiating within a memory at the network element a plurality of LSR instances, each LSR instance having associated with it a respective LSR Identifier (LSR ID); and
mapping each LSR ID to a respective IP address from a pool of IP addresses associated with the common data plane at the network element;
wherein each LSR instance is adapted to support a respective LDP session with a LSR at a peer network element;
wherein said network element advertises a multiple LSR hosting capability to other peer network elements.
23. A method for hosting multiple Label Distribution Protocol (LDP) Label Switch Router (LSR) instances sharing a common label space at a network element, comprising:
instantiating within a memory at the network element a plurality of LSR instances, each LSR instance having associated with it a respective LSR Identifier (LSR ID) and a common label space identifier (label space ID); and
mapping each LSR ID to a respective IP address at the network element;
wherein each LSR instance is adapted to support a respective LDP session with a LSR at a peer network element; and
advertising a multiple LSR hosting capability via a LDP Node-ID TLV that uniquely identifies the network element
wherein said network element advertises a multiple LSR hosting capability to other peer network elements.