IP Library Granted Patent US 8,909,905
Granted Patent B2
US 8,909,905 · App. 12/377,351 · Granted Dec 9, 2014

Method for performing plurality of bit operations and a device having plurality of bit operations capabilities

Inventors: Eran Glickman (Reshon Letzion, IL); Evgeni Ginzburg (Petah Tikva, IL); Noam Sheffer (Tel Aviv, IL)
Assignee: Freescale Semiconductor, Inc.
G06F9/30018G06F9/3001
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 8,909,905
App. No.
12/377,351
Granted
Dec 9, 2014
Kind
B2
Abstract

A method and a device having a plurality of bit operations capability, the device includes: a first and a second registers and an instruction fetch circuit, and an arithmetic logic unit adapted to: calculate, during a first clock cycle, a position value representative of a position, within a first information vector, of a first bit of information that has a first value; and to multiply the position value by a multiplication factor to provide a first result and to alter the value of the first bit to a second value to provide an updated information vector, during the first clock cycle.

Claims (42)

1. A method for performing a plurality of bit operations; the method comprises:

providing an information vector;

calculating, during a first clock cycle, a position value representative of a position, within the first information vector, of a first bit of information that has a first value;

multiplying, the position value by a multiplication factor to provide a first result and altering the value of the first bit to a second value to provide an updated information vector, during the first clock cycle;

storing, during a second clock cycle, the first result at a first register; and

storing, during a third clock cycle, the updated information vector at a second register.

2. The method according to claim 1 wherein bits of the first information vector represent a validity of data within different memory entries and wherein the multiplying is followed by fetching data stored within a memory entry represented by the first bit.

3. The method according to claim 2 wherein the fetching comprises calculating an address of the memory entry represented by the first bit in response to the first result.

4. The method according to claim 1 wherein the providing is followed by decoding a find first bit, multiply and update vector instruction.

5. The method according to claim 1 wherein the first value is a high value and wherein the altering comprises resetting the first bit.

6. The method according to claim 1 wherein the providing, calculating and multiplying are repeated until the first information vector comprises only bits having the second value.

7. The method according to claim 1 wherein altering the value of the first bit comprises altering only the value of the first bit to the second value.

8. A device having a plurality of bit operations capabilities, the device comprises:

a register file including a first register and a second register, and an instruction fetch circuit;

an arithmetic logic unit adapted to:

calculate, during a first clock cycle, a position value representative of a position, within a first information vector, of a first bit of information that has a first value;

multiply, during the first clock cycle, the position value by a multiplication factor to provide a first result;

alter the value of the first bit to a second value to provide an updated information vector, during the first clock cycle;

store the first result at the first register during a second clock cycle; and

store the updated information vector at the second register during a third clock cycle.

9. The device according to claim 8 wherein bits of the first information vector represent a validity of data within different memory entries and wherein the device is adapted to fetch data stored within a memory entry represented by the first bit.

10. The device according to claim 9 wherein the arithmetic logic unit is adapted to calculate an address of the memory entry represented by the first bit in response to the first result.

11. The device according to claim 8 wherein the device comprises instruction decode circuit adapted to decode a find first bit, multiply and update vector instruction.

12. The device according to claim 8 wherein the device is adapted to calculate and multiply until the first information vector comprises only bits having a second value.

13. The device according to claim 8 wherein the arithmetic logic unit comprises a find first bit logic coupled to a bit update logic and to a multiply logic.

14. The device according to claim 13 wherein the bit update logic is coupled to the first register via two flip-flops and wherein the multiply logic is coupled via a third flip-flop to the second register.

15. The device according to claim 8 wherein in altering the value of the first bit, the arithmetic logic unit is further adapted to alter only the value of the first bit to the second value.

16. A device having a plurality of bit operations capabilities, the device comprises:

a first register, a second register, and an instruction fetch circuit; and

an arithmetic logic unit adapted to:

execute a first instruction to multiply, during a first clock cycle, a first position value by a first multiplication factor to provide a first result;

execute a second instruction to alter, during a second clock cycle, a value of a first bit from a first value to a second value; and

execute a third instruction to:

calculate, during a third clock cycle, a second position value representative of a position within an information vector of a bit of information that has the first value;

multiply, during the third clock cycle, the second position value by a second multiplication factor to provide a second result;

alter, during the third clock cycle, the value of the bit of information to the second value to provide an updated information vector

store the second result at a first register during a fourth clock cycle; and

store the updated information vector at a second register during a fifth clock cycle.

17. The device according to claim 16 wherein bits of the first information vector represent a validity of data within different memory entries and wherein the device is adapted to fetch data stored within a memory entry represented by the first bit of information.

18. The device according to claim 17 wherein the arithmetic logic unit is adapted to calculate an address of the memory entry represented by the first bit in response to the first result.

19. The device according to claim 16 wherein the device comprises instruction decode circuit adapted to decode a find first bit, multiply and update vector instruction.

20. The device according to claim 16 wherein the device is adapted to calculate and multiply until the first information vector comprises only bits having a second value.

Assignments (31)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051145/0184 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051030/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0387 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 040632 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Sep 21, 2017
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 044209/0047 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042762/0145 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042985/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
CHANGE OF NAME Recorded Nov 8, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: NXP USA, INC.
Reel/Frame 040632/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Jul 14, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039361/0212 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0143 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0553 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0793 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →
SECURITY AGREEMENT Recorded Jun 18, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030633/0424 →
SECURITY AGREEMENT Recorded May 13, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 024397/0001 →
SECURITY AGREEMENT Recorded Mar 15, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 024085/0001 →
SECURITY AGREEMENT Recorded May 19, 2009
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 022703/0405 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2009
From: GLICKMAN, ERAN; GINZBURG, EVGENI; SCEFFER, NOAM
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 022318/0293 →
Continuity (1)
Related Publication 20100223444A1 · Sep 2, 2010