IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0723280
(2010-03-12)
|
등록번호 |
US-8331359
(2012-12-11)
|
발명자
/ 주소 |
- Kuo, Albert Weichung
- Samuel, Reuven Meyer
- Basu, Debashis
- Vaidyanathan, Arunachalam
- Greene, Spencer
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
0 인용 특허 :
11 |
초록
▼
A network device includes one or more processing units and an external memory. Each of the one or more processing units includes a centralized counter configured to perform accounting for the respective processing unit. The external memory is associated with at least one of the one or more processin
A network device includes one or more processing units and an external memory. Each of the one or more processing units includes a centralized counter configured to perform accounting for the respective processing unit. The external memory is associated with at least one of the one or more processing units and is configured to store a group of count values for the at least one processing unit.
대표청구항
▼
1. A method comprising: receiving, using a counter implemented at least partially in hardware, a request for a count for at least one processing unit, the count being stored in a memory, the counter including: a first table to store one or more pointers to blocks of count values in the memory, anda
1. A method comprising: receiving, using a counter implemented at least partially in hardware, a request for a count for at least one processing unit, the count being stored in a memory, the counter including: a first table to store one or more pointers to blocks of count values in the memory, anda second table to store one or more offset values that identify a location of a count value, within one of the blocks of count values, or a width of the count value;retrieving, using the counter and based on at least one of the first table or the second table, the count from the memory; andupdating, using the counter and based on the received request, the retrieved count. 2. The method of claim 1, where retrieving the count comprises: retrieving a single count value from the memory when the request is associated with a single line of counts; andretrieving at least one block of count values from the memory when the request is associated with a block retrieval. 3. The method of claim 2, further comprising: packetizing the at least one block of counter values after retrieving the at least one block of count values, andcausing the packetized at least one block of counter values to be transmitted to a destination associated with the counter. 4. The method of claim 1, where updating the retrieved count comprises: incrementing the retrieved count to obtain an incremented count, andstoring the incremented count in the memory. 5. The method of claim 1, further comprising: receiving, prior to retrieving the count, at least one update request,where the at least one received update request includes an increment amount; andupdating the count based on the increment amount. 6. The method of claim 1, where the counter includes: a first adder configured to increment counter values, in the memory, by one, anda second adder configured to increment counter values, in the memory, by an increment amount received in the received request,the method further comprising: incrementing the retrieved count using the first adder; andincrementing a second count, retrieved from the memory, using the second adder. 7. The method of claim 1, where the second table stores a value, associated with a second count, indicating whether updating is enabled for the second count, and where the counter is to: receive an update request associated with the second count,determine, based on the value, that updating is enabled for the second count, andupdate the second count based on determining that updating is enabled for the second count. 8. A device, comprising: one or more processing units, at least one processing unit, of the one or more processing units, including a counter; anda memory, associated with the at least one processing unit, to store a plurality of count values for the at least one processing unit,the counter including: a first data structure to store a plurality of pointers to blocks of count values in the memory, anda second data structure to store offset values that identify a location of a count value within one of the blocks of count values, andthe counter to: retrieve, using at least one of the table data structure or the second data structure, a count from the memory. 9. The device of claim 8, where the counter is further to: receive a count retrieval request,retrieve a single count value from the memory when the received count retrieval request is associated with a single line of counts, andretrieve at least one block of count values from the memory when the received count retrieval request is associated with a block retrieval. 10. The device of claim 8, where, when retrieving the count from the memory, the counter is to: receive a request associated with the count, andretrieve the count based on the received request. 11. The device of claim 10, where the received request includes at least one of: a source number that identifies a source of a data unit, oran event number that identifies an event associated with the data unit, andwhere the count is retrieved based on the at least one of the source number or the event number. 12. The device of claim 10, where the counter is further to: increment the retrieved count based on a first amount included in the received request associated with the count,receive a second request associated with a second count,retrieve, based on the received second request, the second count from the memory, andincrement the retrieved second count based on a second amount, different than the first amount, included in the received second request. 13. The device of claim 8, where the received request includes an increment amount that identifies an amount based on which the count is to be incremented, and where the counter is further to: increment the retrieved count based on the increment amount to obtain an incremented count, andstore the incremented count in the memory. 14. The device of claim 8, where the second data structure stores a value, associated with a second count, indicating whether updating is enable for the second count, and where the counter is to: receive an update request associated with the second count,determine, based on the value, that updating is enabled for the second count, andupdate the second count based on determining that updating is enabled for the second count. 15. The device of claim 8, where the memory includes at least one of a saturation region or a roll-over region, where a first count, in the saturation region, is reset when the first count is retrieved by the counter, andwhere a second count, in the roll-over region, is not reset when the second count is retrieved by the counter. 16. A system comprising: a device comprising: one or more processing blocks;a memory to store counter values for at least two of the one or more processing blocks; anda counter comprising data structures to provide a location of the stored counter values in the memory,the data structures including: a first data structure to store one or more pointers to blocks of counter values, of the counter values stored in the memory, anda second data structure to store offset values that identify a location of a counter value within one of the blocks of counter values, and a width of the counter value,the counter being to retrieve, using at least one of the first data structure or the second data structure, a first counter value of the stored counter values, based on a request for the first counter value. 17. The system of claim 16, where, when retrieving the first counter value using at least one of the first data structure or the second data structure, the counter is to: use the first data structure to obtain a pointer, of one or more pointers, to a first block of counter values, of the blocks of counter values, associated with the first counter value, anduse the second data structure to obtain a location of the first counter value in the first block. 18. The system of claim 16, where the data structures further include: a third data structure to store one or more pointers to second blocks of counter values of the counter values stored in the memory,where the first data structure is associated with a roll-over region of the memory, the first blocks of counter values being included in the roll-over region, andwhere the third data structure is associated with a saturated region of the memory, the second blocks of counter values being included in the saturated region. 19. The system of claim 16, where the counter is further to: increment the first counter value, based on an increment amount included in the request for the first counter value, to obtain an incremented first counter value, andstore the incremented first counter value in the memory. 20. The system of claim 16, where the request includes at least one of a source number that identifies a source of a packet or an event number that identifies an event associated with the packet, and where the first counter value is retrieved based on the at least one of the source number or the event number.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.