IP Library Patent Application 11052461
Patent Application
App. No. 11/052,461

PWM dual store protection

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 None
App. No.
11/052,461
Abstract

A system for protectively storing a variable from a pulse-width modulated (PWM) signal comprises an input module that receives the PWM signal and measures times of rising and falling edges of the PWM signal. A memory module has storage for at least two variables. An arithmetic module performs subtraction and division. A control module communicates with the input module, the memory module, and the arithmetic module, and instructs the arithmetic module to calculate an on time, an off time, a period, a duty cycle, and a complementary percentage. The control module stores the duty cycle and the complementary percentage in the memory module.

Claims (33)

1 . A system for protectively storing a variable from a pulse-width modulated (PWM) signal, comprising:

an input module that receives the PWM signal and measures times of rising and falling edges of the PWM signal;

a memory module that has storage for at least two variables;

an arithmetic module that performs subtraction and division; and

a control module that communicates with said input module, said memory module, and said arithmetic module, and that instructs said arithmetic module to calculate an on time, an off time, a period, a duty cycle, and a complementary percentage,

wherein said control module stores said duty cycle and said complementary percentage in said memory module.

2 . The system of claim 1 wherein said on time is calculated as a time between a rising edge of the PWM signal and an immediately subsequent falling edge of the PWM signal, and said off time is calculated as a time between a falling edge of the PWM signal and an immediately subsequent rising edge of the PWM signal.

3 . The system of claim 1 wherein said on time is calculated as a time between a falling edge of the PWM signal and an immediately subsequent rising edge of the PWM signal, and said off time is calculated as a time between a rising edge of the PWM signal and an immediately subsequent falling edge of the PWM signal.

4 . The system of claim 1 wherein said period is calculated as a time between a falling edge of the PWM signal and an immediately subsequent falling edge of the PWM signal.

5 . The system of claim 1 wherein said period is calculated as a time between a rising edge of the PWM signal and an immediately subsequent rising edge of the PWM signal.

6 . The system of claim 1 wherein said duty cycle is calculated as said on time divided by said period.

7 . The system of claim 6 wherein said complementary percentage is calculated by said arithmetic module to be a numeral one minus said off time divided by said period.

8 . The system of claim 1 wherein said control module performs error handling when said period is outside of a range defined by a first limit and a second limit.

9 . The system of claim 1 wherein said control module performs error handling when an absolute value of a difference between said duty cycle and said complementary percentage is greater than a resolution limit.

10 . The system of claim 9 wherein said resolution limit is calibrated to be larger than a timing resolution of said input module and rounding errors of said arithmetic module.

11 . A method for protectively storing a variable from a pulse-width modulated (PWM) signal, comprising:

determining at least two of an on time, an off time, and a period time, of the PWM signal;

calculating a first parameter of interest from said at least two of an on time, an off time, and a period time;

calculating a second parameter of interest from said at least two of an on time, an off time, and a period time;

storing said first parameter and said second parameter; and

performing a comparison of said first parameter to said second parameter.

12 . The method of claim 11 wherein determining said at least two of an on time, an off time, and a period time, includes measuring rise and fall times of the PWM signal.

13 . The method of claim 11 wherein said comparison is true when said first parameter and said second parameter are within a tolerance of each other, and is false otherwise.

14 . The method of claim 11 further comprising performing error handling if. said comparison is false, and using at least one of said first parameter and said second parameter if said comparison is true.

15 . The method of claim 11 further comprising performing error handling if at least one of said period time and an addition of said on time and said off time is outside of a range defined by a first limit and a second limit.

16 . A system for protectively storing a value from a pulse-width modulated (PWM) signal, comprising:

a receiving module that determines at least two of an on time, an off time, and a period time, based on rising and falling edges of the PWM signal;

a processing module that receives said times from said receiving module, and calculates a first value and a second value; and

a storage module that stores said first value and said second value, and retrieves at least one of said first value and said second value at a later time.

17 . The system of claim 16 wherein said first value is calculated as said on time divided by said period time.

18 . The system of claim 17 wherein said second value is calculated as one minus said off time divided by said period time.

19 . The system of claim 16 wherein said processing module performs error handling when at least one of said period time and an addition of said on time and said off time is outside of a range defined by a first limit and a second limit.

20 . The system of claim 16 wherein said processing module performs error handling when an absolute value of a difference between said first and said second value is greater than a resolution limit.

Assignments (12)
CHANGE OF NAME Recorded Feb 10, 2011
From: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
To: GM GLOBAL TECHNOLOGY OPERATIONS LLC
Reel/Frame 025780/0936 →
SECURITY AGREEMENT Recorded Nov 8, 2010
From: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
To: WILMINGTON TRUST COMPANY
Reel/Frame 025327/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 4, 2010
From: UNITED STATES DEPARTMENT OF THE TREASURY
To: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
Reel/Frame 025245/0442 →
RELEASE OF SECURITY INTEREST Recorded Nov 4, 2010
From: UAW RETIREE MEDICAL BENEFITS TRUST
To: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
Reel/Frame 025311/0770 →
SECURITY AGREEMENT Recorded Aug 28, 2009
From: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
To: UAW RETIREE MEDICAL BENEFITS TRUST
Reel/Frame 023162/0001 →
SECURITY AGREEMENT Recorded Aug 27, 2009
From: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
To: UNITED STATES DEPARTMENT OF THE TREASURY
Reel/Frame 023156/0052 →
RELEASE OF SECURITY INTEREST Recorded Aug 21, 2009
From: CITICORP USA, INC. AS AGENT FOR BANK PRIORITY SECURED PARTIES; CITICORP USA, INC. AS AGENT FOR HEDGE PRIORITY SECURED PARTIES
To: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
Reel/Frame 023127/0468 →
RELEASE OF SECURITY INTEREST Recorded Aug 20, 2009
From: UNITED STATES DEPARTMENT OF THE TREASURY
To: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
Reel/Frame 023124/0429 →
SECURITY AGREEMENT Recorded Apr 16, 2009
From: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
To: CITICORP USA, INC. AS AGENT FOR BANK PRIORITY SECURED PARTIES; CITICORP USA, INC. AS AGENT FOR HEDGE PRIORITY SECURED PARTIES
Reel/Frame 022553/0446 →
SECURITY AGREEMENT Recorded Feb 4, 2009
From: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
To: UNITED STATES DEPARTMENT OF THE TREASURY
Reel/Frame 022201/0610 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2009
From: GENERAL MOTORS CORPORATION
To: GM GLOBAL TECHNOLOGY OPERATIONS, INC.
Reel/Frame 022117/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2005
From: BAUERLE, PAUL A.
To: GENERAL MOTORS CORPORATION
Reel/Frame 016217/0796 →