IP Library Granted Patent US 9,318,163
Granted Patent B2
US 9,318,163 · App. 13/789,017 · Granted Apr 19, 2016

Robust memory start-up using clock counter

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,318,163
App. No.
13/789,017
Granted
Apr 19, 2016
Kind
B2
Abstract

In accordance with at least one embodiment, a clock counter on a system (for example, a system-on-a-chip (SOC) or other system) is utilized to count a number of a clock edges of a memory clock within a predefined time based on a predetermined system clock frequency and, therefore, to determine whether the memory clock for a memory array (for example, a non-volatile memory (NVM) array or other memory array) is correct or not. The system is directed to wait until the count is within an expected range before moving to the next step in a start-up procedure. If the maximum allowed start-up time is exceeded, an error signal is sent to the system such that the application can react to it.

Claims (47)

1. A method comprising:

starting a memory clock for a memory array, wherein the memory clock provides a clock signal to control access to data stored in the memory array;

counting a count of memory clock edges of the clock signal of the memory clock using a second clock; and

allowing access to the memory array in response to the count of the memory clock edges being within a predefined range.

2. The method of claim 1 wherein the counting the count of the memory clock edges of the memory clock using the second clock comprises:

counting the count of memory clock edges of the clock signal of the memory clock using a system-on-a-chip (SOC) clock.

3. The method of claim 1 wherein the counting the count of the memory clock edges of the clock signal of the memory clock using the second clock comprises:

counting the count of the memory clock edges of the clock signal of the memory clock within a predefined time duration based on the second clock.

4. The method of claim 1 further comprising:

in response to the count of memory clock edges not being within a predefined range, allowing more time for the count of memory clock edges to be within the predefined range.

5. The method of claim 4 wherein the, in response to the count of memory clock edges not being within the predefined range, allowing more time for the count of memory clock edges to be within the predefined range comprises:

changing an operational parameter of the memory clock.

6. The method of claim 4 wherein the allowing more time comprises:

restarting the memory clock.

7. The method of claim 1 further comprising:

in response to a maximum start-up time having been exceeded, issuing an error status message.

8. The method of claim 1 wherein the allowing access to the memory array in response to the count of the memory clock edges being within the predefined range comprises:

using the memory clock to perform a read operation on the memory array, wherein the memory array is a nonvolatile memory (NVM) array.

9. A method comprising:

starting a non-volatile memory (NVM) clock, wherein proper operation of an NVM is conditioned upon a proper NVM clock frequency of a clock signal of the NVM clock, wherein the clock signal is to control access to data stored in the NVM;

verifying the proper NVM clock frequency using a second clock; and

proceeding with configuration of the NVM after the proper NVM clock frequency has been verified.

10. The method of claim 9 wherein the verifying the proper NVM clock frequency using the second clock comprises:

iteratively counting a NVM clock frequency of the NVM clock using the second clock and comparing the NVM clock frequency to a predefined range.

11. The method of claim 10 wherein the iteratively counting the NVM clock frequency of the NVM clock using the second clock and comparing the NVM clock frequency to the predefined range comprises:

in response to a maximum start-up time having been exceeded, discontinuing the iteratively counting the NVM clock frequency and issuing an error status message.

12. The method of claim 9 further comprising:

in response to lack of verification of the proper NVM clock frequency, allowing more time for the NVM clock frequency to achieve a value within the predefined range.

13. The method of claim 9 further comprising:

in response to lack of verification of the proper NVM clock frequency, iteratively adjusting an operational parameter of the NVM clock.

14. Apparatus comprising:

a non-volatile memory (NVM) cell array;

a NVM clock, the NVM clock coupled to the NVM cell array, the NVM clock providing timing for accessing the NVM cell array;

a second clock; and

a controller, the controller coupled to the NVM cell array, to the second clock, and to the NVM clock, the controller comprising circuitry configured to cause the controller to initiate operation of the NVM clock, to obtain a count of a frequency of a NVM clock based on the second clock, to compare the count to an acceptable range, and, in response to the count being within the acceptable range, to allow access to the NVM cell array to proceed.

15. The apparatus of claim 14 wherein the circuitry further comprises:

circuitry configured to cause the controller to reiterate the obtaining the count of the frequency of the NVM clock based on the second clock in response to the count not being within the acceptable range.

16. The apparatus of claim 15 wherein the circuitry further comprises:

circuitry configured to cause the controller to allow the NVM clock more time for the count of the frequency of the NVM clock to come within the acceptable range in response to the count not being within the acceptable range.

17. The apparatus of claim 15 wherein the circuitry further comprises:

circuitry configured to cause the controller to restart the NVM clock in response to the count not being within the acceptable range.

18. The apparatus of claim 15 wherein the circuitry further comprises:

circuitry configured to cause the controller to adjust an operational parameter of the NVM clock in response to the count not being within the acceptable range.

19. The apparatus of claim 14 wherein the circuitry further comprises:

circuitry configured to cause the controller to obtain the count of a frequency of the NVM clock by counting NVM clock edges of the NVM clock over a duration of time based on the second clock.

20. The apparatus of claim 15 wherein the, in response to the count not being within the acceptable range, the circuitry configured to cause the controller to reiterate the obtaining the count of the frequency of the NVM clock based on the second clock comprises:

circuitry configured to cause the controller to issue an error status message in response to a maximum start-up time having been exceeded.

Assignments (21)
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 →
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 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 →
MERGER Recorded Jan 3, 2017
From: FREESCALE SEMICONDUCTOR, INC.
To: NXP USA, INC.
Reel/Frame 041144/0363 →
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 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 037357/0704 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0744 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0725 →
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 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded May 20, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 030445/0737 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded May 20, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030445/0709 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded May 20, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030445/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2013
From: EGUCHI, RICHARD K.; GUNDERSON, CRAIG D.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 029945/0435 →