throbber
USOO8565033B1
`
`(12) United States Patent
`Manohararajah et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 8,565,033 B1
`Oct. 22, 2013
`
`(54) METHODS FOR CALIBRATING MEMORY
`INTERFACE CIRCUITRY
`
`(75) Inventors: Valavan Manohararajah, Scarborough
`(CA); Ivan Blunno, Woodbridge (CA);
`Ryan Fung, Mississauga (CA); Navid
`Azizi, Markham (CA)
`(73) Assignee: Altera Corporation, San Jose, CA (US)
`(*) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 224 days.
`(21) Appl. No.: 13/149,562
`(22) Filed:
`May 31, 2011
`(51) Int. Cl.
`GITC 700
`(52) U.S. Cl.
`USPC ... 365/193:365/129: 365/149; 365/189.011;
`365/189.14; 365/189.05:365/230.06; 365/233.1;
`365/233.13: 365/233.16:365/233.17
`(58) Field of Classification Search
`USPC ........ 365/129, 149, 189.011, 189.14, 189.05,
`365/193,230.06, 233.1, 233.13, 233.16,
`365/233.17
`See application file for complete search history.
`
`(2006.01)
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`7.231,536 B1* 6/2007 Chong et al. .................. T13/400
`7,475,315 B1
`1/2009 Natarajan et al.
`8,117,483 B2 * 2/2012 Welker et al. ................. T13,500
`2007/0239379 A1
`10/2007 Newcomb et al.
`1/2009 Chang et al.
`2009/0031091 A1
`5/2010 Onishi .......................... 365, 193
`2010, 0124131 A1*
`
`2010, 0180 143 A1
`2010/0315119 A1
`2012/0176850 A1*
`2012,02291.86 A1*
`
`7/2010 Ware et al.
`12/2010 Welker et al.
`7/2012 Do et al. ....................... 365, 193
`9/2012 Baba ............................. 327, 161
`
`FOREIGN PATENT DOCUMENTS
`
`WO WO 2011061875 A1 *
`
`5, 2011
`
`OTHER PUBLICATIONS
`
`Burney et al., U.S. Appl. No. 1 1/488, 199, filed Jul. 17, 2005.
`Dastidar et al., U.S. Appl. No. 12/463,358, filed May 8, 2009.
`Fung et al., U.S. Appl. No. 13/149,583, filed May 31, 2011.
`
`* cited by examiner
`Primary Examiner — Fernando Hidalgo
`(74) Attorney, Agent, or Firm — Trey Z Law Group: Jason
`Tsai
`
`ABSTRACT
`(57)
`Integrated circuits may communicate with off-chip memory.
`Such types of integrated circuits may include memory inter
`face circuitry that is used to interface with the off-chip
`memory. The memory interface circuitry may be calibrated
`using a procedure that includes read calibration, write level
`ing, read latency tuning, and write calibration. Read calibra
`tion may serve to ensure proper gating of data strobe signals
`and to center the data strobe signals with respect to read data
`signals. Write leveling ensures that the data strobe signals are
`aligned to system clock signals. Read latency tuning serves to
`adjust read latency to ensure optimum read performance.
`Write calibration may serve to center the data strobe signals
`with respect to write data signals. These calibration opera
`tions may be used to calibrate memory systems Supporting a
`variety of memory communications protocols.
`
`20 Claims, 16 Drawing Sheets
`
`f 23
`
`cAM) AsrATIN
`
`234
`ARANTE WR WONGAA coSA
`error
`Ar", Address conSAN, ANWRNAses
`-23
`RFRN CONRL WREYLINEAA C&NSANTA
`Adress consANANPUsing WRNAsa AN
`JNARESSSRCEHS FR3NE COMANNERA
`-2
`ROR GUARANERAAEL&CATO of CNSATARSS
`-240
`As SCCESSFUL
`EERNME WETER CLE WR
`ArtAWIFT casANWRIT NABLE Stigs
`
`MY
`sije
`
`NTERFACE
`cc:U
`
`stroller
`
`PROKSRAMMABLE
`C3
`Cics
`
`DRESS ARTM
`
`
`
`242
`
`PERFORGARANTEd Write withdAACNSANA"".
`SELECE ARESSBSO (, AND OTHERADRESS
`BTS CONSTAN
`
`PERFORGARANEWRTE WHATACNSTANAT,
`SCAERESS Bilst "t", AN
`HERADDRESS
`is constant
`
`
`
`
`
`
`
`
`
`
`
`Perform controlled write with DATA consTANAT",
`SELECEA)SS3LSE). HiR ONE&MAN
`NTRAAN
`RARSSScCNSAN
`
`-248
`ERFORMGUARANTED ACHECKWEREATAWASWRTTEN
`
`RAWith FFRNSE SINGS FORSECE
`ARSS
`
`AAARSSBS
`8. CABRAE
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 1 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 1 of 16
`
`US 8,565,033 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`rairis
`
`(
`
`)
`
`
`
`
`
`( )
`
`
`
`
`
`PROGRAMASE
`
`(
`
`)
`
`OGC () () OGC
`r
`s a s
`
`V
`
`PROGRAVIASE
`
`(
`
`
`
`)
`
`
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 2 of 26
`
`

`

`U.S. Patent
`
`US 8,565,033 B1
`
`
`
`
`
`
`
`ciwolaevaex,
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 3 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 3 of 16
`
`US 8,565,033 B1
`
`
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 4 of 26
`
`

`

`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 5 of 26
`
`

`

`U.S. Patent
`
`
`
`US 8,565,033 B1
`
`8
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 6 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 6 of 16
`
`US 8,565,033 B1
`
`OO
`
`NREASE Y
`READS & WRES
`
`- O2
`
`REA)
`(CABRAON
`
`
`
`WRE
`EWENG
`
`104.
`
`
`
`108
`
`REA) AENCY
`NNG
`
`
`
`08
`
`NRE
`CABRAON
`
`1C
`
`
`
`RELABLE
`REAS & WRES
`
`
`
`
`
`
`
`
`
`
`
`
`
`F.G. 6
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 7 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 7 of 16
`
`US 8,565,033 B1
`
`
`
`REA CABRAON
`
`SET REASYNC ANCY = MAX
`SE DOf OSPASE = C.
`
`2
`
`2}
`
`CAO KNN AA PATERNS SNG GARANEE ARES
`
`PERFORA, OSENABE CA BRAON TO
`ENSURE CEANOSA. AEC-ES
`
`SCCESS
`
`24
`
`OQIOQS PHASE
`c. JAX
`
`NO
`
`8
`
`NCREMENT DOf OSPASE
`
`ERFO. A REA). Of QS CNRNG O MAXM2
`CiOS MARGN
`
`SCCESS
`
`ADO.NA MEMORY GROUPSO
`BECA BRATE)
`
`CA BRAON
`FA
`
`FIG 7
`
`3.
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 8 of 26
`
`

`

`U.S. Patent
`
`
`
`US 8,565,033 B1
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 9 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 9 of 16
`
`US 8,565,033 B1
`
`
`
`24.
`
`4.
`
`PERFOR READ ES"
`
`READS SCCESSF
`
`- 142
`
`ADS READ-WA BUFFER AENCY UN
`READ SARS O. A
`
`SWEEP DQS Enable TO FND FIRST
`WORKNG PASE
`
`SWEEP DQS Enable TO FIND LAST
`WORKING PHASE (MAYNEED TO INCREMENT
`READ-VAD BUFFER AENCY)
`
`144
`
`6 4.
`
`148
`
`CENTER OQS Enable WHN WORKING RANGE
`
`QS ENABE
`CABRAON
`
`FG. 9
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 10 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 10 of 16
`
`US 8,565,033 B1
`
`
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 11 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 11 of 16
`
`US 8,565,033 B1
`
`
`
`
`
`??ueu SOCI 36ueu OCH
`
`
`
`
`
`~~
`
`${}{}
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 12 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 12 of 16
`
`US 8,565,033 B1
`
`
`
`s
`N
`
`s
`w
`
`s
`
`.
`
`R
`
`ke
`
`2
`..
`ka
`8)
`f
`N
`-------------'
`ac
`N:
`Kr
`t
`so
`e
`ca
`so
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 13 of 26
`
`

`

`U.S. Patent
`
`US 8,565,033 B1
`
`
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 14 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 14 of 16
`
`US 8,565,033 B1
`
`
`
`6
`
`SE RFO. AENCY TO AXV
`
`RECE rC ANCY N REAS For
`A EAS ONE MEMORY GROUP STARTS TO FA
`
`NCREASE AENCY BY ONE O RERN. C.
`WORKENG STATE MAY INCREASE LATENCY BY N
`CYCLES FORADDETIONAL MARGIN)
`
`FA
`
`REAR AENCY NNG
`
`SCCESS
`
`CA BNAON
`A
`
`38
`
`F.G. 14
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 15 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 15 of 16
`
`US 8,565,033 B1
`
`
`
`WRE CABRAON
`
`08
`
`PERFORM, WRTE DOf{S CENTERNGO
`AGN WR. C. Wr OS
`
`22
`
`DEAY DO O. EQUAZE DATA FROM
`REN AA NS
`
`24
`SWEEP DQ TO FIND DQ RANGE (Tsetup)
`
`26
`SWEEP DOS TO FIND DQ RANGE (Thoid)
`
`22)
`
`28
`
`CNR CRS BY DEAYING OC
`SMANEOUS...Y
`
`SCCESS
`
`A
`
`ADDITIONAL MEMORY GROUPS TO
`BECA BRAE)
`
`CABRAON
`A
`
`F.G. 15
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 16 of 26
`
`

`

`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 16 of 16
`
`US 8.565,033 B1
`
`230
`
`COMMAN) CABRAON
`
`PERFORM GARANEE WREW-E HOCNG OAA CONSTAN
`AT "O", ADDRESS CONSTAN AND WRITE ENABE HG
`
`PERFOR, CONTROLE WREBY ODNG OAA CONSTANTA
`* , ADDRESS CONSTANT AND PUSING WRITE ENABLE AND
`COUMNADRESS SEROBE - G- FOR ONE COMMAN NERVA
`
`PERFORM GUARANTEE) READ A OCATION OF CONSTAN ADDRESS
`
`EERMNE WNETER CONTRO ED WRTE AiaS S{CCESSFU
`AND REPEATWT FFEREN CAS AND WRE ENABE SENGS
`
`ADDRESS CASRAON
`
`-232
`
`242
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`PERFORM GUARANTEE) WRE WTH DATA CONSEAN AT "O",
`SELECTED ADDRESS BT SET TO "O", AND OTHER ADDRESS
`BS CONSTAN
`
`PERFORM. GUARANTEED WRTE WITH AIA CONSEAN A "O",
`SELECTED ADDRESS Bi SE 'O'", AND OTHER ADDRESS
`BTS CONSTAN
`
`PERFORM CONTROLLED WR E WITH DAA CONSTANA",
`SECTS). A RESS 8 PUSEO Gh FOR ONE COMMAND
`NERVAL AND OTHER ADDRESS BETS CONSTANT
`
`PERFORM. GUARANTES) READ TO CHECK WHERE DATANAS WREN
`250
`
`REPEAT WH DFFERENT PASE SETNGS FOR SELECED
`AD}RESS B
`
`ADONALARESS BS
`O BE CA BRAE)
`
`FG 16
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 17 of 26
`
`

`

`US 8,565,033 B1
`
`1.
`METHODS FOR CALIBRATING MEMORY
`INTERFACE CIRCUITRY
`
`BACKGROUND
`
`Programmable integrated circuits are a type of integrated
`circuit that can be configured by a user to implement custom
`logic functions. In a typical scenario, a logic designer uses
`computer-aided design (CAD) tools to design a custom logic
`circuit. When the design process is complete, the CAD tools
`generate configuration data. The configuration data is loaded
`into a programmable integrated circuit to configure the device
`to perform desired logic functions.
`In a typical system, a programmable integrated circuit,
`memory devices, and other electronic components are
`mounted on a printed circuitboard. The programmable inte
`grated circuit includes memory interface circuitry that is used
`to relay data back and forth between the programmable inte
`grated circuit and the memory devices (i.e., the memory inter
`face circuitry is used to read data from and write data into the
`memory devices). When performing Such memory read and
`write operations, the timing of control and data signals is
`critical.
`Because programmable integrated circuits can be config
`ured in many different ways and are installed on many differ
`ent types of boards, the lengths of circuit board traces cou
`pling the programmable integrated circuit to the memory
`devices can vary from one system to another. As a result, it is
`generally not possible to know in advance exactly how data
`and clock paths between a programmable integrated circuit
`and a given memory device will perform. In some systems,
`the data and clock paths may have one set of timing charac
`teristics, whereas in other systems the data and clock paths
`may have a different set of timing characteristics.
`Mismatch (or skew) between the data and clock paths may
`result in degraded setup and hold times. In modern high speed
`memory interface circuitry that use double data rate (DDR)
`transfers (i.e., a data transmission scheme in which data
`toggles on both rising and falling edges of the clock) a small
`amount of skew will result in faulty data transfer during read
`and write operations.
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`SUMMARY
`
`2
`mand signal before a second memory device receives the read
`command signal. The memory interface may be configured to
`send write data (DQ) and data strobe (DQS) signals to the first
`memory device before sending write DQ/DQS signals to the
`second memory device.
`The memory interface circuitry may be calibrated at the
`startup of an integrated circuit to ensure reliable read and
`write operations. Memory interface circuitry calibration pro
`cedures may include read calibration, write leveling, read
`latency tuning, and write calibration. These steps are merely
`illustrative and are not intended to limit the scope of the
`present invention. If desired, these steps may be performed in
`any suitable order. In one suitable embodiment, read latency
`tuning need not be performed. In another suitable embodi
`ment, read calibration is performed before write leveling,
`read latency tuning, and write calibration, whereas write lev
`eling is performed before write calibration.
`Read calibration may serve to calibrate a data strobe enable
`signal and to center the data strobe (DQS) signals with respect
`to the read data (DQ) signals. Calibrating the data strobe
`enable signals ensures that a properly gated DQS reaches the
`capture circuits (e.g., to filter out undesirable glitches in
`DQS). Centering read DQ/DQS involves aligning rising and
`falling edges of the DQS signals to the center of the read DQ
`windows to provide improved read margins (i.e., to provide
`equal setup and hold times) for the different memory devices.
`If desired. DQ/DQS calibration may also involve aligning
`DQS to the edges of the read DQ window.
`Write leveling may serve to align the write data strobe
`signals associated with the different memory devices to the
`system clock (e.g., to align the rising edges of write DQS with
`the rising edges of the reference clock). Aligning the DQS
`signals during write operations may allow data to be properly
`written into the respective memory groups.
`Read latency tuning involves configuring the read-syn
`chronization (read-sync) buffers to optimize for performance.
`The read-sync buffers may be used to provide an adjustable
`read latency. A maximum round trip delay (e.g., the amount of
`time elapsed since the launch of a read command to the time
`read data signals arrive at the read-sync buffer associated with
`the memory device last to receive the read command) may be
`measured during read latency tuning. The read-sync buffers
`may be configured to provide a read latency that is at least one
`cycle greater than the maximum round trip delay, at least two
`cycles greater than the maximum round trip delay, etc.
`Write calibration may serve to align the DQS signal to the
`center of the write DQ window to provide improved write
`margins (i.e., to provide equal setup and hold times) for the
`different memory devices.
`During at least Some of these calibration operations, delay
`may be introduced using programmable delay chains to pro
`vide 50 ps step delays (as an example), using delay-locked
`loops to provided phase delays (e.g., delays that are equal to
`any Suitable fraction of a clock cycle), using buffer circuits to
`provide additional latency (e.g., delays that are equal to an
`integer multiple of a clock cycle), or using other configurable
`delay elements to provide desired tuning accuracy.
`These calibration procedures may be used to calibrate
`memory systems Supporting a variety of memory communi
`cations protocols such as double data rate (DDR), quad data
`rate (QDR), reduced-latency dynamic RAM, and other
`memory communications protocols.
`Further features of the present invention, its nature and
`various advantages will be more apparent from the accompa
`nying drawings and the following detailed description.
`
`Integrated circuits such as programmable integrated cir
`cuits having memory interface circuitry are provided. The
`memory interface circuitry may be used to communicate with
`off-chip memory devices (sometimes referred to as memory
`groups) that are mounted on a circuit board. The memory
`devices and the circuitboard to which the memory devices are
`mounted may collectively be referred to as a memory module.
`Data and data strobe signals may be transmitted between the
`memory devices and the memory interface circuitry. The
`memory interface circuitry may provide system-level control
`signals (e.g., a reference clock signal, address signal, and
`command signal) to the memory devices.
`During read operations, the memory interface circuitry
`may send appropriate system control signals to the memory
`module to read data out of the memory devices. The memory
`devices may output read data and associated data strobe sig
`nals. The read data may be latched using capture circuits and
`may be stored in read-synchronization buffers prior to out
`putting data in parallel.
`During write operations, the memory interface circuitry
`may send appropriate system control signals to the memory
`module to write data into the memory devices. Consider a
`scenario in which a first memory device receives a read com
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 18 of 26
`
`

`

`3
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a diagram of an illustrative programmable inte
`grated circuit in accordance with an embodiment of the
`present invention.
`FIG. 2 is a diagram of illustrative memory interface cir
`cuitry in accordance with an embodiment of the present
`invention.
`FIG. 3 is a diagram of illustrative memory interface cir
`cuitry operating in write leveling mode in accordance with an
`embodiment of the present invention.
`FIG. 4 is a diagram showing an exemplary memory read
`operation in accordance with an embodiment of the present
`invention.
`FIG. 5 is a diagram showing an exemplary memory write
`operation in accordance with an embodiment of the present
`invention.
`FIG. 6 is a flow chart of illustrative steps involved in cali
`brating memory interface circuitry in accordance with an
`embodiment of the present invention.
`FIG. 7 is a flow chart of illustrative steps involved in per
`forming read calibration in accordance with an embodiment
`of the present invention.
`FIG. 8 is an exemplary timing diagram during data strobe
`enable calibration in accordance with an embodiment of the
`present invention.
`FIG. 9 is a flow chart of illustrative steps involved in per
`forming data strobe enable calibration in accordance with an
`embodiment of the present invention.
`FIG. 10 is an exemplary timing diagram during data strobe
`enable calibration in accordance with an embodiment of the
`present invention.
`FIG. 11 is a diagram showing illustrative steps involved in
`performing read data strobe centering in accordance with an
`embodiment of the present invention.
`FIG. 12 is a timing diagram showing illustrative steps
`involved in performing write leveling in accordance with an
`embodiment of the present invention.
`FIG. 13 is an exemplary diagram showing data skew during
`memory read operations in accordance with an embodiment
`of the present invention.
`FIG. 14 is a flow chart of illustrative steps involved in
`performing read latency tuning in accordance with an
`embodiment of the present invention.
`FIG. 15 is a flow chart of illustrative steps involved in
`performing write calibration in accordance with an embodi
`ment of the present invention.
`FIG. 16 is a flow chart of illustrative steps involved in
`performing system control signal calibration in accordance
`with an embodiment of the present invention.
`
`DETAILED DESCRIPTION
`
`Embodiments of the present invention relate to integrated
`circuits that contain memory interface circuitry. The memory
`interface circuitry may be used to interface with off-chip
`memory Such as random-access memory (RAM). The inte
`grated circuits may be digital signal processors, microproces
`sors, application specific integrated circuits, or other Suitable
`integrated circuits. With one Suitable arrangement, the inte
`grated circuits that communicate with memory are program
`mable integrated circuits such as programmable logic device
`integrated circuits or other programmable integrated circuits
`that contain programmable circuitry. The programmable cir
`cuitry can be programmed using configuration data. Pro
`grammable integrated circuits are typically operated in a
`diverse set of system environments. As a result, these inte
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 8,565,033 B1
`
`4
`grated circuits tend to benefit from adjustable timing capa
`bilities of the memory interface circuitry.
`FIG. 1 shows a diagram of an illustrative programmable
`integrated circuit. As shown in FIG. 1, device 10 may have
`input-output (I/O) circuitry 12 for driving signals off of
`device 10 and for receiving signals from other devices via
`input-output pins 14. Interconnection resources 16 Such as
`global and local vertical and horizontal conductive lines and
`buses may be used to route signals on device 10. Intercon
`nection resources 16 include fixed interconnects (conductive
`lines) and programmable interconnects (i.e., programmable
`connections between respective fixed interconnects). Pro
`grammable logic 18 may include combinational and sequen
`tial logic circuitry. For example, programmable logic 18 may
`include look-up tables, registers, and multiplexers. The pro
`grammable logic 18 may be configured to perform a custom
`logic function. The programmable interconnects associated
`with interconnection resources may be considered to be a part
`of programmable logic 18.
`Programmable logic 18 contains programmable elements
`20. Programmable elements 20 may be based on any suitable
`programmable technology, Such as fuses, antifuses, electri
`cally-programmable read-only-memory technology, ran
`dom-access memory cells, mask-programmed elements, etc.
`As an example, programmable elements 20 may be formed
`from memory cells. During programming, configuration data
`is loaded into the memory cells usingpins 14 and input-output
`circuitry 12. The memory cells are typically random-access
`memory (RAM) cells. Because the RAM cells are loaded
`with configuration data, they are sometimes referred to as
`configuration RAM cells (CRAM).
`Programmable element 20 may be used to provide a static
`control output signal for controlling the State of an associated
`logic component in programmable logic 18. The output sig
`nals generated by elements 20 are typically applied to gates of
`metal-oxide-semiconductor (MOS) transistors (sometimes
`referred to as pass gate transistors).
`The circuitry of device 10 may be organized using any
`Suitable architecture. As an example, logic 18 of program
`mable device 10 may be organized in a series of rows and
`columns of larger programmable logic regions, each of which
`contains multiple Smaller logic regions. The logic resources
`of device 10 may be interconnected by interconnection
`resources 16 Such as associated vertical and horizontal con
`ductors. These conductors may include global conductive
`lines that span substantially all of device 10, fractional lines
`Such as half-lines or quarter lines that span part of device 10,
`staggered lines of a particular length (e.g., Sufficient to inter
`connect several logic areas), Smaller local lines, or any other
`Suitable interconnection resource arrangement. If desired, the
`logic of device 10 may be arranged in more levels or layers in
`which multiple large regions are interconnected to form still
`larger portions of logic. Other device arrangements may use
`logic that is not arranged in rows and columns.
`Device 10 may communicate with off-chip memory such
`as memory module 22. Memory module 22 may be a memory
`device sometimes referred to as a single in-line memory
`module (SIMM) or a dual in-line memory module (DIMM).
`Device 10 may be configured to communicate with at least
`two memory modules 22, at least four memory modules 22,
`etc. As shown in FIG. 2, device 10 may include memory
`interface circuitry 24 that serves to relay information between
`memory module 22 and logic circuits 18 that are internal to
`device 10. Memory interface circuitry 24 may include
`memory interface circuit 26, sequencer 30, memory control
`ler 28, multiplexer 32, and other peripheral circuitry.
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 19 of 26
`
`

`

`5
`Memory interface circuit 26 may be coupled to memory
`module 22 through paths 34 and 36. During memory read
`operations, data (DQ) signals and data strobe (DQS) signals
`may be conveyed from memory module 22 to memory inter
`face circuit 26 overpath 34. During memory write operations,
`DQ/DQS may be conveyed from memory interface circuit 26
`to memory module 22 over path 34.
`During read and write operations, control signals such as
`clock CLK, address ADDR, and command CMD signals may
`be conveyed from memory interface circuit 26 to memory
`module 22 over path 36. Signal CLK may serve as a system
`reference clock (e.g., a reference clock to which the DQS
`signals, ADDRR, and CMD should be aligned). Signal CMD
`may be configured to a first value to initiate a read operation,
`to a second value to initiate a write operation, to a third value
`during normal operation, and to other values to initiate any
`desired operations. Signal ADDRR specifies the address
`(e.g., a selected bank address in a memory device) from which
`data is read out during read operations and the address to
`which data is written during write operations.
`Memory interface circuit 26 may serve to perform desired
`data rate conversions and to generate signals that meet timing
`requirements specified by the memory protocol currently
`under use. Memory interface circuit 26 may output informa
`tion gathered during read operations on outputline 38. During
`memory interface calibration processes, read data and related
`signals may be routed to sequencer 30. During normal opera
`tion, read data and related signals may be routed to memory
`controller 28. Sequencer 30 may be coupled between memory
`interface circuit 26 and memory controller 28.
`Memory interface circuit 26 may receive write data and
`related information from multiplexer32. Multiplexer 32 may
`have a first input coupled to memory controller 28 and a
`second input coupled to sequencer 30. Multiplexer 32 may be
`configured to route signals from its first input to its output
`during normal operation, whereas multiplexer 32 may be
`configured to route signals from its second input to its output
`during memory interface calibration processes (e.g., memory
`interface circuit 26 may receive information from sequencer
`30 during read/write calibration operations). Sequencer 30
`40
`arranged using the exemplary configuration of FIG. 2 may
`serve to calibrate the interface between memory module 22
`and circuit 26 at the startup of device 10 (e.g., by sending
`control signals over line 44 to make timing adjustments in
`interface circuit 26).
`Memory controller 28 may provide read data to program
`mable logic circuitry 18 overpath 42, whereas programmable
`logic circuitry 18 may provide write data to memory control
`ler 28 over path 40. Memory controller 28 may be configured
`to generate appropriate control signals corresponding to the
`memory protocol currently under use (e.g., circuit 28 may
`handle memory data management to address desired banks,
`rows, and columns and to perform memory refresh). Memory
`controller 28 may also serve to periodically request recalibra
`tion of memory interface circuit 26 by sending command
`55
`signals over path 29. Generally, memory interface circuit 26
`will be controlled predominately by sequencer 30 during
`memory interface calibration procedures, whereas memory
`interface circuit 26 will be controlled predominately by
`memory controller 28 during normal device operation.
`The arrangement of FIG. 2 is merely illustrative and is not
`intended to limit the scope of the present invention. Integrated
`circuits other than programmable integrated circuits may
`include memory interface circuitry 24 that is used to commu
`nicate with one or more memory modules 22.
`65
`As shown in FIG.3, integrated circuit 10, memory module
`22, and other circuit components (e.g., integrated circuit
`
`50
`
`35
`
`45
`
`60
`
`US 8,565,033 B1
`
`10
`
`15
`
`25
`
`30
`
`6
`chips, Surface mount components, etc.) may be mounted on a
`circuit board (e.g., printed circuit board 50). Board compo
`nents may be interconnected by conductive traces and pack
`aging (e.g., sockets into which integrated circuits are
`mounted) formed on board 50.
`Memory module 22 may include a series of memory
`devices, at least some of which is sometimes referred to as a
`memory group. For example, memory module 22 may
`include first memory group 52-1, second memory group
`52-2,..., and N' memory group 52-N. Memory module 22
`may include at least nine memory groups (as an example).
`Each of the memory groups may contain hundreds or thou
`sands of memory cells (e.g., RAM cells). The memory groups
`may communicate with memory interface circuitry through
`respective signal paths. For example, first memory group
`52-1 may communicate with circuitry 24 by sending data and
`data strobe signals (DQ/DQS) over path 34-1, second
`memory group 52-2 may communicate circuitry 24 by send
`ing DQ/DQS over path 34-2, etc.
`In general, memory access operations are not synchronized
`with system-level control signals CLK/CMD/ADDRR. As a
`result, the DQ signals that are received from the memory
`groups are not phase aligned with any known clock signal in
`device 10. It is therefore necessary to provide DQS clock
`signals with the DQ signals, so that the DQS clocks can be
`used to establish propertiming relationships when processing
`the DQ signals. For example, during a read operation,
`memory interface circuitry 24 uses the DQS clocks in cap
`turing data as it is transmitted over paths 34 from memory 22
`(see, e.g., FIG. 2). In general, the operation of each memory
`group is somewhat independent, so memory module 22 gen
`erates a DQS signal for each of the memory groups.
`The DQS signals for the different memory groups are
`generally not phase aligned with each other (e.g., skew may
`be present among the DQS signals). For example, although
`the DQS signal for a first memory group is edge-aligned with
`the DQ signals in the first memory group, the DQS signal for
`the first memory group and the seventh memory group (as an
`example) need not be in phase with each other.
`Memory interface circuitry 24 may send control signals to
`the memory groups through path 36. Memory module 22 of
`FIG.3 may be a type of memory module that exhibits inherent
`non-Zero layout skew (e.g., the control signals on path.36 may
`arrive at each of the memory groups at different times). For
`example, because of the way path 36 is routed, the control
`signals on path 36 may arrive first at memory group 52-1 and
`then arrive at each Subsequent memory group after some
`delay.
`During read operations, appropriate control signals may be
`sent over path 36 to direct the memory groups to output read
`data. Read data may be generated from the memory groups at
`different times depending on when control signals CLK/
`CMD/ADDR arrive at a particular memory group. For
`example, memory group 52-1 may output read data before
`Subsequent memory group 52-2, memory group 52-2 may
`output read data before Subsequent memory group 52-3,
`memory group 52-3 may output read data before Subsequent
`memory group 52-4, etc. Memory interface circuitry 24 may
`therefore receive read data from the different memory groups
`at Staggered times. Memory interface circuitry 24 may
`include buffer circuitry that can be used to equalize the skew
`among the different memory groups.
`During write operations, care needs to be taken when send
`ing the DQ/DQS signals to the respective memory groups.
`Device 10 may, for example, operate in a write leveling mode
`in which the DQ/DQS signals are sent to the respective
`memory groups at predetermined staggered times. For
`
`Micron et al. - Exhibit 1011
`Micron et al. v. Netlist - IPR2022-00236
`Page 20 of 26
`
`

`

`US 8,565,033 B1
`
`10
`
`15
`
`7
`example, DQ/DQS may be sent over path 34-1 to memory
`group 52-1 at a first point in time, whereas DQ/DQS may be
`sent over path 34-2 to Subsequent memory group 52-2 at a
`second point in time that is later than the first point in time
`(e.g., DQ/DQS for each Subsequent memory group may be
`sent after some adjustable amount of delay). Sending
`DQ/DQS from memory interface circuitry 24 to the memory
`groups using this write leveling approach ensures that the
`DQ/DQS signals and the control signals arrive synchronized
`(e.g., that the DQ/DQS signals and the CLK signal are phase
`aligned).
`FIG. 4 is a diagram showing an illustrative signal flow
`during read operations. As shown in FIG. 4, the memory
`groups on memory module 22 may send read signals to cor
`responding memory interface input-output (I/O) circuits 54 in
`memory interface circuit 26. For example, memory group
`52-1 may send DQ signals overline 34-1A to a first I/O circuit
`54 and may send DQS signals over line 34-1B to the first I/O
`circuit 54. Similarly, memory group 52-2 may send DQ sig
`nals over line 34-2A to a second I/O circuit 54 and may send
`DQS signals over line 34-2B to the second I/O circuit 54, and
`SO. O.
`System control signals CLK/ADDR/CMD may be con
`veyed to the memory groups over path 36. As shown in FIG.
`4, memory group 52-1 may output DQ/DQS signals before
`any other memory group, because group 52-1 receiv

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket