Disclosed is an improved start-up/reset calibration apparatus and method for use in a memory device One of a plurality of data paths is bit wise calibrated relative to a clock signal and thereafter others of the plurality of data paths are bit wise aligned to a previously calibrated data path to produce serial and parallel bit alignment on all data paths.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method of calibrating data paths of a memory device, said method comprising: calibrating a first data path of said memory device to align data present on said first data path relative to a clock signal for clocking in data on said first data path; and calibrating a second data path of said memory device to align data present on said second data path relative to said clock signal using calibrated data from said first data path.
2. A method as in claim 1 further comprising calibrating a third data path of said memory device to align data present on said third data path relative to said clock signal using calibrated data from one of said first and second data paths.
3. A method as in claim 2 wherein said third data path is calibrated using calibrated data from said first data path.
4. A method as in claim 2 wherein said third data path is calibrated using calibrated data from said second data path.
5. A method as in claim 1 wherein said first data path is one of a FLAG data path and a data path of a command bus, and the second data path is the other of said FLAG data path and a data path of said command bus.
6. A method as in claim 1 wherein said first data path is a data path of a data bus and said second data path is another data path of said data bus.
7. A method as in claim 1 , wherein said calibration of said second data path comprises comparing calibrated data from said first data path with uncalibrated data from said second data path and adjusting a delay in said second data path to achieve coincidence in calibration data in said first and second data paths.
8. A method as in claim 2 , wherein said calibration of said third data path comprises comparing calibration data from one of said first and second data paths with uncalibrated data from said third signal path and adjusting a delay in said third data path to achieve coincidence in calibration data of said third data path and said one of said first and second data paths.
9. A method as in claim 1 , wherein the calibration of said first data path comprises: generating a repeating first calibration pattern for a period of time; applying said first calibration pattern to said first data path; and using said applied first calibration pattern and said clock signal to adjust a delay element in said first data path to a delay value which produces a reliable detection of said first calibration pattern.
10. A method as in claim 9 , farther comprising setting said delay element to a beginning delay value, using said clock signal to sample an output of said delay element in said first data path and determining if said first calibration pattern is reliably detected at said beginning delay value.
11. A method as in claim 10 , wherein if said first calibration pattern is not reliably detected, said method further comprises changing said delay value in said first data path to another delay value and again sampling the output of said delay element and determining if said first calibration pattern is reliably detected.
12. A method as in claim 11 , wherein if said first calibration pattern is still not reliably detected, said method further comprises repeating the acts of changing the setting of said delay value, sampling and determining until said first calibration pattern is reliably detected.
13. A method as in claim 9 , further comprising setting said adjustable delay element of said first data path to a beginning delay value, sampling the output of said adjustable delay element with said clock signal and determining if said first calibration pattern is reliably detected, and repeating said setting, sampling and determining acts for a plurality of possible delay values to determine which of said possible delay values produce reliable detection of said first calibration pattern.
14. A method as in claim 13 , further comprising choosing as a final setting of said delay element one of said delay values which produces reliable detection of said first calibration pattern.
15. A method as in claim 14 , wherein said final setting is chosen as a delay value which is approximately at a center of those delay values which produced reliable detection of said first calibration pattern.
16. A method as in claim 1 , wherein said calibration method is performed at power-up and reset of said memory device.
17. A method as in claim 9 , wherein said first calibration pattern is a 2 N bit pattern.
18. A method as in claim 9 , wherein said first calibration pattern is a 2 N 1 bit pattern.
19. A method as in claim 9 , wherein said first calibration pattern is a stored pattern.
20. A method as in claim 9 , wherein said first calibration pattern is a generated pattern.
21. A method as in claim 1 , wherein said clock signal clocks data on at least one of a rising or falling edge of said clock signal.
22. A method as in claim 1 , wherein said clock signal clocks data on both rising and falling edges of said clock signal.
23. A method of calibrating a plurality of data paths of a memory device comprising: calibrating a first data path of said memory device to align the timing of data present on said first data path relative to a clock signal for clocking in data on said first data path; and calibrating remaining data paths of said memory device to align data present on each of said remaining data paths with calibrated data on said first data path to achieve serial and parallel alignment of data on said first and remaining data paths.
24. A method as in claim 23 , wherein said remaining data paths are calibrated by comparing uncalibrated data on each of said remaining data paths to calibrated data on said first data path and adjusting a delay element in each of said remaining data paths such that each of said remaining data paths has data thereon aligned with calibrated data on said first data path.
25. A method as in claim 24 , wherein each of said remaining data paths is simultaneously calibrated to said first data path.
26. A method as in claim 23 , wherein at least some of said remaining data paths are calibrated to an immediately precedingly calibrated data path.
27. A method as in claim 26 , wherein each of said remaining data paths is calibrated to an immediately precedingly calibrated data path.
28. A method as in claim 27 , wherein each of said remaining data paths is calibrated by comparing uncalibrated data thereon to calibrated data on an immediately precedingly calibrated data path and adjusting a delay element in said remaining data path such that the data thereon aligns with and matches calibrated data in said immediately precedingly aligned data path.
29. A digital circuit for calibrating incoming data paths of a memory circuit, comprising: an incoming clock signal path on which a clock signal is transmitted; a first data path; a second data path; a control logic circuit connected to align data present on said first data path relative to said clock signal, said control logic circuit further aligning data present on said second data path relative to said clock signal by aligning data present on said second data path with aligned data on said first data path.
30. The digital circuit of claim 29 wherein said control circuit comprises a comparator circuit which compares said aligned data present on said first data path with said data present on said second data path, said control circuit using a result of said comparison to align said data present on said second data path relative to said clock signal.
31. The digital circuit of claim 30 further comprising a first delay element in said first data path, said control logic circuit adjusting a delay value of said first delay element to align data in said first data path relative to said clock signal.
32. The digital circuit of claim 31 further comprising a second delay element in said second data path, said control logic circuit adjusting a delay value of said second delay element in response to said comparison to align data in said second data path relative to said clock signal.
33. The digital circuit of claim 29 , wherein said clock signal clocks in data present on said first and second data paths on at least one of a rising or failing edge of said clock signal.
34. The digital circuit of claim 29 , wherein said clock signal clocks in data present on said first and second data paths on both rising and falling edges of said clock signal.
35. The digital circuit of claim 29 further comprising a third data path, wherein said control logic circuit is connected to align data present on said third data path relative to said clock signal using aligned data from one of said first and second data paths.
36. The digital circuit of claim 35 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said first data path.
37. The digital circuit of claim 35 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said second data path.
38. The digital circuit of claim 36 wherein said control circuit includes a comparator circuit which compares aligned data present on said first data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
39. The digital circuit of claim 37 wherein said control circuit includes a comparator circuit which compares aligned data present on said second data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
40. The digital circuit of claim 39 , wherein said first data path is adjacent said second data path and said second data path is adjacent said third data path.
41. The digital circuit of claim 29 wherein said data present on said first and second data paths is a repeating bit pattern having an even number of bit positions.
42. The digital circuit of claim 41 wherein said bit pattern comprises an additional bit added to a pseudo random odd number bit pattern.
43. The digital circuit of claim 41 wherein said bit pattern is 1111010110010000.
44. The digital circuit of claim 29 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares said aligned data present on said first data path with data present on each of said respective other data paths, said control circuit using a result of each said respective comparison to align data present on each said respective other data path relative to said clock signal.
45. The digital circuit of claim 29 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares previously aligned data present on an adjacent other data path with data present on each of said respective other data paths in sequence, said control circuit using a result of each said respective comparison to subsequently align data present on each said respective other data path relative to said clock signal.
46. The digital circuit of claim 44 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
47. The digital circuit of claim 45 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
48. A semiconductor memory circuit, comprising: a memory module; a memory controller connected to said memory module; and a calibration circuit for calibrating data incoming to said memory module, said calibration circuit comprising: an incoming clock signal path on which a clock signal is transmitted; a first data path; a second data path; a control logic circuit connected to align data present on said first data path relative to said clock signal, said control logic circuit further aligning data present on said second data path relative to said clock signal by aligning data present on said second data path with aligned data on said first data path.
49. The memory circuit of claim 48 wherein said control circuit comprises a comparator circuit which compares said aligned data present on said first data path with said data present on said second data path, said control circuit using a result of said comparison to align said data present on said second data path relative to said clock signal.
50. The memory circuit of claim 49 further comprising a first delay element in said first data path, said control logic circuit adjusting a delay value of said first delay element to align data in said first data path relative to said clock signal.
51. The memory circuit of claim 50 further comprising a second delay element in said second data path, said control logic circuit adjusting a delay value of said second delay element in response to said comparison to align data in said second data path relative to said clock signal.
52. The memory circuit of claim 48 , wherein said clock signal clocks in data present on said first and second data paths on at least one of a rising or falling edge of said clock signal.
53. The memory circuit of claim 48 , wherein said clock signal clocks in data present on said first and second data paths on both rising and failing edges of said clock signal.
54. The memory circuit of claim 48 further comprising a third data path, wherein said control logic circuit is connected to align data present on said third data path relative to said clock signal using aligned data from one of said first and second data paths.
55. The memory circuit of claim 54 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said first data path.
56. The memory circuit of claim 54 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said second data path.
57. The memory circuit of claim 55 wherein said control circuit includes a comparator circuit which compares aligned data present on said first data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
58. The memory circuit of claim 56 wherein said control circuit includes a comparator circuit which compares aligned data present on said second data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
59. The memory circuit of claim 58 , wherein said first data path is adjacent said second data path and said second data path is adjacent said third data path.
60. The memory circuit of claim 48 wherein said data present on said first and second data paths is a repeating bit pattern having an even number of bit positions.
61. The memory circuit of claim 60 wherein said bit pattern comprises an additional bit added to a pseudo random odd number bit pattern.
62. The memory circuit of claim 60 wherein said bit pattern is 1111010110010000.
63. The memory circuit of claim 48 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares said aligned data present on said first data path with data present on each of said respective other data paths, said control circuit using a result of each said respective comparison to align data present on each said respective other data path relative to said clock signal.
64. The memory circuit of claim 48 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares previously aligned data present on an adjacent other data path with data present on each of said respective other data paths in sequence, said control circuit using a result of each said respective comparison to subsequently align data present on each said respective other data path relative to said clock signal.
65. The memory circuit of claim 63 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
66. The memory circuit of claim 64 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
67. A processor-based system, comprising: a processor; an integrated memory circuit connected to said processor, said integrated memory circuit including a calibration circuit comprising: an incoming clock signal path on which a clock signal is transmitted; a first data path; a second data path; a control logic circuit connected to align data present on said first data path relative to said clock signal, said control logic circuit further aligning data present on said second data path relative to said clock signal by aligning data present on said second data path with aligned data on said first data path.
68. The processor-based system of claim 67 wherein said control circuit comprises a comparator circuit which compares said aligned data present on said first data path with said data present on said second data path, said control circuit using a result of said comparison to align said data present on said second data path relative to said clock signal.
69. The processor-based system of claim 68 further comprising a first delay element in said first data path, said control logic circuit adjusting a delay value of said first delay element to align data in said first data path relative to said clock signal.
70. The processor-based system of claim 69 further comprising a second delay element in said second data path, said control logic circuit adjusting a delay value of said second delay element in response to said comparison to align data in said second data path relative to said clock signal.
71. The processor-based system of claim 67 , wherein said clock signal clocks in data present on said first and second data paths on at least one of a rising or falling edge of said clock signal.
72. The processor-based system of claim 67 , wherein said clock signal clocks in data present on said first and second data paths on both rising and falling edges of said clock signal.
73. The processor-based system of claim 67 further comprising a third data path, wherein said control logic circuit is connected to align data present on said third data path relative to said clock signal using aligned data from one of said first and second data paths.
74. The processor-based system of claim 73 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said first data path.
75. The processor-based system of claim 73 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said second data path.
76. The processor-based system of claim 74 wherein said control circuit includes a comparator circuit which compares aligned data present on said first data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
77. The processor-based system of claim 75 wherein said control circuit includes a comparator circuit which compares aligned data present on said second data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
78. The processor-based system of claim 77 , wherein said first data path is adjacent said second data path and said second data path is adjacent said third data path.
79. The processor-based system of claim 67 wherein said data present on said first and second data paths is a repeating bit pattern having an even number of bit positions.
80. The processor-based system of claim 79 wherein said bit pattern comprises an additional bit added to a pseudo random odd number bit pattern.
81. The processor-based system of claim 79 wherein said bit pattern is 1111010110010000.
82. The processor-based system of claim 67 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares said aligned data present on said first data path with data present on each of said respective other data paths, said control circuit using the result of each said respective comparison to align data present on each said respective other data path relative to said clock signal.
83. The processor-based system of claim 67 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares previously aligned data present on an adjacent other data path with data present on each of said respective other data paths in sequence, said control circuit using the result of each said respective comparison to subsequently align data present on each said respective other data path relative to said clock signal.
84. The processor-based system of claim 82 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
85. The processor-based system of claim 83 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
86. An embedded-memory processor-based system, comprising: a processor; a memory circuit formed on a same integrated circuit as said processor, said memory circuit including a calibration circuit comprising: an incoming clock signal path on which a clock signal is transmitted; a first data path; a second data path; a control logic circuit connected to align data present on said first data path relative to said clock signal, said control logic circuit further aligning data present on said second data path relative to said clock signal by aligning data present on said second data path with aligned data on said first data path.
87. The embedded-memory processor-based system of claim 86 wherein said control circuit comprises a comparator circuit which compares said aligned data present on said first data path with said data present on said second data path, said control circuit using a result of said comparison to align said data present on said second data path relative to said clock signal.
88. The embedded-memory processor-based system of claim 87 further comprising a first delay element in said first data path, said control logic circuit adjusting a delay value of said first delay element to align data in said first data path relative to said clock signal.
89. The embedded-memory processor-based system of claim 88 further comprising a second delay element in said second data path, said control logic circuit adjusting a delay value of said second delay element in response to said comparison to align data in said second data path relative to said clock signal.
90. The embedded-memory processor-based system of claim 86 , wherein said clock signal clocks in data present on said first and second data paths on at least one of a rising or falling edge of said clock signal.
91. The embedded-memory processor-based system of claim 86 , wherein said clock signal clocks in data present on said first and second data paths on both rising and falling edges of said clock signal.
92. The embedded-memory processor-based system of claim 86 further comprising a third data path, wherein said control logic circuit is connected to align data present on said third data path relative to said clock signal using aligned data from one of said first and second data paths.
93. The embedded-memory processor-based system of claim 92 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said first data path.
94. The embedded-memory processor-based system of claim 92 wherein said control logic circuit aligns data present on said third data path relative to said clock signal using aligned data from said second data path.
95. The embedded-memory processor-based system of claim 93 wherein said control circuit includes a comparator circuit which compares aligned data present on said first data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
96. The embedded-memory processor-based system of claim 94 wherein said control circuit includes a comparator circuit which compares aligned data present on said second data path with said data present on said third data path, and a logic circuit to align said data present on said third data path relative to said clock signal based on a result of said comparison.
97. The embedded-memory processor-based system of claim 96 , wherein said first data path is adjacent said second data path and said second data path is adjacent said third data path.
98. The embedded-memory processor-based system of claim 86 wherein said data present on said first and second data paths is a repeating bit pattern having an even number of bit positions.
99. The embedded-memory processor-based system of claim 98 wherein said bit pattern comprises an additional bit added to a pseudo random odd number bit pattern.
100. The embedded-memory processor-based system of claim 98 wherein said bit pattern is 1111010110010000.
101. The embedded-memory processor-based system of claim 86 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares said aligned data present on said first data path with data present on each of said respective other data paths, said control circuit using the result of each said respective comparison to align data present on each said respective other data path relative to said clock signal.
102. The embedded-memory processor-based system of claim 86 further comprising a plurality of other data paths and a plurality of respective comparator circuits, wherein each of said respective comparator circuits compares previously aligned data present on an adjacent other data path with data present on each of said respective other data paths in sequence, said control circuit using the result of each said respective comparison to subsequently align data present on each said respective other data path relative to said clock signal.
103. The embedded-memory processor-based system of claim 101 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
104. The embedded-memory processor-based system of claim 102 further comprising a plurality of respective delay elements in said respective other data paths, said control logic circuit adjusting a respective delay value of each said respective delay element in response to each said respective comparison to align data present on each said respective other data path to said clock signal.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
May 12, 2000
August 13, 2002
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.