IP Library Granted Patent US 7,779,197
Granted Patent B1
US 7,779,197 · App. 11/382,475 · Granted Aug 17, 2010

Device and method for address matching with post matching limit check and nullification

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,779,197
App. No.
11/382,475
Granted
Aug 17, 2010
Kind
B1
Abstract

A device and method are disclosed for performing a limit address check validation in a switching device. The device includes a data selector circuit that is enabled to select the content of an address register in an array of address registers, and a comparator electrically coupled to the data selector circuit and enabled to take a first input from the data selector circuit and target address as a second input from a communication packet. The method includes receiving the target address, seeking and locating a matching address in an array of base address registers, directing the packet to the port associated with the matching address, determining the target address to be a valid address by comparing the target address with a limit address associated with the matching base address, and nullifying the match if the target address is greater than the limit address.

Claims (31)

1. A limit address check validation device in a communication packet switching device, the communication packet switching device comprising a switch core and an array of base address registers, each base address register in the array of base address registers comprising a base address, a limit address and a port identifier and the communication packet comprising a target address indicating a port, the limit address check validation device comprising:

a data selector circuit to select a limit address associated with a matching base address register in the array of base address registers; and

a comparator electrically coupled to the data selector circuit, the comparator to compare the target address of the communication packet to the selected limit address to determine if the target address is a valid address, the comparison performed after the communication packet has been routed to the port identifier of the switch core associated with the matching base address register, and upon comparison, if it is determined that the target address of the communication packet is not a valid address, the comparator to nullify the routing of the communication packet.

2. The limit address check validation device described in claim 1 , further comprising a buffer for storing the limit address contained in the matching base address register wherein the buffer is electrically coupled to the array of base address registers.

3. The limit address check validation device described in claim 1 , wherein the data selector circuit is a multiplexer.

4. The limit address check validation device described in claim 1 , wherein the base address registers in the array of base address registers are sorted in a descending order.

5. The limit address check validation device described in claim 4 , wherein, the matching base address register is identified as the largest base address that is less than or equal to the target address of the communication packet.

6. The limit address check validation device described in claim 1 , wherein the data selector circuit selects the limit address based on the matching base address register output provided by an address matching device in the switching device.

7. The limit address check validation device described in claim 1 , wherein the data selector circuit receives an input from each of the base address registers in the array of base address registers.

8. The limit address check validation device described in claim 1 , wherein the communication packet is routed to the port associated with the matching base address register by routing the port identifier associated with the matching base address register to the switch core.

9. The limit address check validation device described in claim 1 , wherein it is determined that the target address of the communication packet is not a valid address when the target address is determined to be greater than the limit address associated with the matching base address register.

10. A switching device for switching a communication packet, comprising:

a switch core enabled to direct the routing of the communication packet;

a plurality of communication ports, each of the communication ports electronically coupled to the switch core and to an external electronic device, each of the ports associated with a base address and a limit address and a port identifier;

an array of base address registers, wherein content in the array of base address registers includes the base address and the limit address and the port identifier;

a base address matching logic circuit to select a matching base address register in the array of base address registers and to route the communication packet to the port identified by the port identifier associated with the matching base address register;

a limit check validation circuit for comparing a selected limit address associated with the matching base address selected by the base address matching logic circuit to a target address in the communication packet, said limit check validation circuit to compare the target address to the selected limit address to determine if the target address is a valid address, the comparison performed after the communication packet has been routed to the port identified by the port identifier associated with the matching base register, and upon comparison, if it is determined that the target address of the communication packet is not a valid address, the limit check validation circuit to nullify the routing of the communication packet.

11. The switching device described in claim 10 , wherein the limit check validation circuit is enabled to transmit a nullify signal to the switch core if the target address is greater than the selected limit address.

12. The switching device described in claim 10 , wherein the communication packet is a PCI Express packet.

13. The switching device described in claim 10 wherein the switching device is a serial switch.

14. In a switching device, a method for address matching, comprising:

receiving a target address in a communication packet;

seeking a matching address from a set of sorted base addresses in an array of base address registers, each base address register associated with a port in the switching device;

locating the matching address in the array of base address registers;

directing the communication packet to a port associated with the matching address;

determining whether the target address is a valid address after the communication packet has been directed to the port associated with the matching address; and

nullifying the directing of the communication packet if the target address is not a valid address.

15. The method for address matching described in claim 14 , wherein locating the matching address in the array of base address registers comprises selecting the numerically largest base address, in the set of sorted base addresses, that is numerically less than or equal to the target address.

16. The method for address matching described in claim 14 , wherein determining whether the target address is a valid address comprises comparing the target address in the communication packet with the selected limit address associated with the matching address.

17. The method for address matching described in claim 14 wherein the switching device is implemented in a system conforming to PCI Express standards.

18. The switching device described in claim 10 , wherein it is determined that the target address of the communication packet is not a valid address when the target address of the communication packet is determined to be greater than the selected limit address associated with the matching base address register.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded May 29, 2018
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MICROSEMI STORAGE SOLUTIONS, INC.; MICROSEMI STORAGE SOLUTIONS (U.S.), INC.
Reel/Frame 046251/0271 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2016
From: PMC-SIERRA US, INC.
To: MICROSEMI STORAGE SOLUTIONS (US), INC.
Reel/Frame 038016/0493 →
PATENT SECURITY AGREEMENT Recorded Feb 3, 2016
From: MICROSEMI STORAGE SOLUTIONS, INC. (F/K/A PMC-SIERRA, INC.); MICROSEMI STORAGE SOLUTIONS (U.S.), INC. (F/K/A PMC-SIERRA US, INC.)
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037689/0719 →
RELEASE OF SECURITY INTEREST Recorded Feb 1, 2016
From: BANK OF AMERICA, N.A.
To: PMC-SIERRA, INC.; PMC-SIERRA US, INC.; WINTEGRA, INC.
Reel/Frame 037675/0129 →
SECURITY INTEREST IN PATENTS Recorded Aug 6, 2013
From: PMC-SIERRA, INC.; PMC-SIERRA US, INC.; WINTEGRA, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 030947/0710 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING AND RECEIVING PARTIES PREVIOUSLY RECORDED ON REEL 030832 FRAME 0604. ASSIGNOR(S) HEREBY CONFIRMS THE CONVEYING PARTY DATA: INTEGRATED DEVICE TECHNOLOGY, INC. TECEIVING: PMC-SIERRA US, INC. Recorded Jul 23, 2013
From: INTEGRATED DEVICE TECHNOLOGY, INC.
To: PMC-SIERRA US, INC.
Reel/Frame 030919/0040 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2013
From: PMC-SIERRA US, INC.
To: INTEGRATED DEVICE TECHNOLOGY, INC.
Reel/Frame 030832/0604 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2006
From: NORRIE, MR. CHRISTOPHER I. W.; FONG, MR. LAMBERT
To: INTEGRATED DEVICE TECHNOLOGY, INC.
Reel/Frame 017594/0109 →