IP Library Granted Patent US 9,665,510
Granted Patent B2
US 9,665,510 · App. 14/580,158 · Granted May 30, 2017

Synchronous bus architecture for digital pre-distortion system

Inventors: Arvind Kaushik (Ghaziabad, IN); Peter Z. Rashev (Calgary, CA); Amrit P. Singh (Ludhiana, IN); Akshat Mittal (Greater Noida, IN)
Assignee: FREESCALE SEMICONDUCTOR, INC.
G06F13/24G06F13/28H03F1/3247Y02B60/1228
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 9,665,510
App. No.
14/580,158
Granted
May 30, 2017
Kind
B2
Abstract

A system for storing pre-distorted output samples in a memory includes a sample counter, a programming interface module, and a comparator. The sample counter counts the pre-distorted output samples, generates a dynamic count value, receives a capture counter status signal, and generates a first count value. The programming interface module receives and outputs the first count value, an offset value, and a capture control signal, and generates a first interrupt signal. The comparator receives the first count value, the offset value, the dynamic count value, and the capture control signal, generates a final value, compares the final value with the dynamic count value, and generates a trigger signal when the final value equals the dynamic count value based on the capture control signal. The trigger signal initiates the storing of the pre-distorted output samples in the memory.

Claims (46)

1. A system for storing a plurality of output samples generated by a digital pre-distorter (DPD) in a memory, comprising:

a sample counter module for counting the plurality of output samples, generating a dynamic count value that is a count of the plurality of output samples, receiving a capture counter status signal, and generating a first count value that is a count of the plurality of output samples based on the capture counter status signal;

a programming interface module connected to the sample counter module for receiving and outputting the first count value, receiving and outputting an offset value and a capture control signal, and generating a first interrupt signal based on the first count value, wherein the first interrupt signal indicates the storing of the first count value and the capture control signal enables the storing of the plurality of output samples in the memory, and wherein the offset value and the first count value are collectively indicative of the dynamic count value at which the storing of the plurality of output samples is initiated; and

a comparator module connected to the programming interface module for receiving the first count value, the offset value, and the capture control signal and to the sample counter module for receiving the dynamic count value, adding the first count value and the offset value for generating a final value, comparing the final value and the dynamic count value, and generating a trigger signal when the final value equals the dynamic count value based on the capture control signal, wherein the trigger signal initiates the storing of the plurality of output samples in the memory.

2. The system of claim 1 , wherein the sample counter module comprises:

a sample counter for counting the plurality of output samples and generating the dynamic count value; and

a multiplexer having a first input terminal connected to the sample counter for receiving the dynamic count value, a second input terminal for receiving the first count value, a select terminal for receiving the capture counter status signal, and an output terminal connected to the programming interface module for outputting the first count value indicative of a count of the plurality of output samples generated based on the capture counter status signal.

3. The system of claim 2 , wherein the programming interface module comprises:

a sample counter status register connected to the output terminal of the multiplexer for receiving and storing the first count value and outputting the first count value to the comparator module;

a sample counter offset register for receiving and storing the offset value and outputting the offset value to the comparator module;

a control register connected to the sample counter status register for receiving the first count value and outputting the first interrupt signal; and

a capture mode control register for receiving the capture control signal, storing a capture control value based on the capture control signal, and transmitting the capture control signal to the comparator module.

4. The system of claim 1 , wherein the sample counter module, the programming interface module, and the comparator module are included in the DPD, and wherein the DPD further comprises a direct memory access (DMA) system for receiving the trigger signal and storing the plurality of output samples in the memory based on the trigger signal.

5. The system of claim 4 , wherein the comparator module comprises:

an adder for receiving the first count value and the offset value and generating a sum of the first count value and the offset value as the final value;

a comparator having a first input terminal connected to the adder for receiving the final value, a second input terminal connected to the sample counter module for receiving the dynamic count value, and an output terminal for generating a comparator output signal; and

an AND gate having a first input terminal connected to the output terminal of the comparator for receiving the comparator output signal, a second input terminal connected to the programming interface module for receiving the capture control signal, and an output terminal for transmitting the trigger signal to the DMA system.

6. The system of claim 5 , wherein the comparator output signal is at logic high state when the dynamic count value equals the final value.

7. The system of claim 4 , wherein the programming interface module further generates a second interrupt signal when the DMA system completes storing the plurality of output samples in the memory.

8. The system of claim 4 , wherein the programming interface module comprises an internal memory for receiving and storing a total count value indicative of a count of the plurality of output samples to be stored by the DMA system in the memory, and wherein the programming interface module generates a second interrupt signal when a count of the plurality of output samples stored by the DMA system in the memory equals the total count value.

9. A digital pre-distorter (DPD) for generating and storing a plurality of output samples in a memory, comprising:

a sample counter module for counting the plurality of output samples, generating a dynamic count value that is a count of the plurality of output samples, receiving a capture counter status signal, and generating a first count value that is a count of the plurality of output samples based on the capture counter status signal;

a programming interface module connected to the sample counter module for receiving and outputting the first count value, receiving and outputting an offset value and a capture control signal, and generating a first interrupt signal based on the first count value, wherein the first interrupt signal indicates the storing of the first count value and the capture control signal enables the storing of the plurality of output samples in the memory, and wherein the offset value and the first count value are collectively indicative of the dynamic count value at which the storing of the plurality of output samples is initiated;

a comparator module connected to the programming interface module for receiving the first count value, the offset value, and the capture control signal and to the sample counter module for receiving the dynamic count value, adding the first count value and the offset value for generating a final value, comparing the final value and the dynamic count value, and generating a trigger signal when the final value equals the dynamic count value based on the capture control signal, wherein the trigger signal initiates the storing of the plurality of output samples in the memory; and

a direct memory access (DMA) system for receiving the trigger signal and storing the plurality of output samples in the memory based on the trigger signal, and

wherein the sample counter module comprises:

a sample counter for counting the plurality of output samples and generating the dynamic count value; and

a multiplexer having a first input terminal connected to the sample counter for receiving the dynamic count value, a second input terminal for receiving the first count value, a select terminal for receiving the capture counter status signal, and an output terminal connected to the programming interface module for outputting the first count value indicative of a count of the plurality of output samples generated based on the capture counter status signal.

10. The digital pre-distorter (DPD) of claim 9 , wherein the programming interface module comprises:

a sample counter status register connected to the output terminal of the multiplexer for receiving and storing the first count value and outputting the first count value to the comparator module;

a sample counter offset register for receiving and storing the offset value and outputting the offset value to the comparator module;

a control register connected to the sample counter status register for receiving the first count value and outputting the first interrupt signal; and

a capture mode control register for receiving the capture control signal, storing a capture control value based on the capture control signal, and transmitting the capture control signal to the comparator module.

11. A method for storing a plurality of output samples generated by a digital pre-distorter (DPD) in a memory, comprising:

counting the plurality of output samples;

generating a dynamic count value that is a count of the plurality of output samples;

receiving a capture counter status signal indicative of sampling the dynamic count value;

generating a first count value that is a count of the plurality of output samples based on the capture counter status signal;

generating a first interrupt signal when the first count value is generated;

receiving an offset value and a capture control signal, wherein the offset value and the first count value are collectively indicative of the dynamic count value at which the storing of the plurality of output samples is initiated, and wherein the capture control signal enables the storing of the plurality of output samples in the memory;

adding the first count value and the offset value to generate a final value;

comparing the final value and the dynamic count value; and

generating a trigger signal when the final value equals the dynamic count value based on the capture control signal, wherein the trigger signal initiates the storing of the plurality of output samples in the memory.

12. The method of claim 11 , further comprising receiving the trigger signal and storing the plurality of output samples in the memory based on the trigger signal.

13. The method of claim 12 , further comprising generating a second interrupt signal on completion of storing the plurality of output samples in the memory.

14. The method of claim 12 , further comprising receiving a total count value indicative of a count of the plurality of output samples to be stored in the memory, and generating a second interrupt signal when a count of the plurality of output samples stored in the memory equals the total count value.

Assignments (15)
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 →
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 NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 040626 FRAME: 0683. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME EFFECTIVE NOVEMBER 7, 2016. Recorded Jan 12, 2017
From: NXP SEMICONDUCTORS USA, INC. (MERGED INTO); FREESCALE SEMICONDUCTOR, INC. (UNDER)
To: NXP USA, INC.
Reel/Frame 041414/0883 →
CHANGE OF NAME Recorded Nov 16, 2016
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 040626/0683 →
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 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 5, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037444/0444 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 5, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037444/0535 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037358/0001 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Feb 18, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 035034/0019 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Feb 18, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 035033/0923 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Feb 18, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 035033/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2014
From: KAUSHIK, ARVIND; SINGH, AMRIT P.; MITTAL, AKSHAT; RASHEV, PETER Z.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 034572/0650 →
Continuity (1)
Related Publication 20160179715A1 · Jun 23, 2016