Patent US5713005A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5713005A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for pipelining data in an integrated circuit

Assignee: SK Hynix Inc
•
Filing: 1995-02-10
•
Granted: 1998-01-27
•
Expires: 2015-02-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for pipelining data is used in a synchronous integrated memory circuit in which a read cycle is initiated by a first clock received on a clock input. The data associated with the read cycle propagates asynchronously through the memory to produce data which is then input to the pipeline circuit. The apparatus includes steering circuitry with precise timing for steering the data produced in the read cycle into an asserted one of several branches of a register. Selection circuitry is used to select for output the data which has been stored in the asserted branch upon receipt of a subsequent clock. The subsequent clock is one which occurs a programmable number of clocks after the first clock.

Inventors

  • 👤 Robert J. Proebsting

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 13:22
CPC Classifications
G; G06; G06F; G06F1/00; G11; G11C; G11C7/00; G11C7/22; G11C7/06; G11C7/10; G11C7/1015; G11C7/1039; G11C7/1051; G11C7/1072

Claims Analysis

Total Claims: 74
Claim 1
Independent Claim 146 words
An integrated circuit having a data path with an output, comprising: a clock input coupled to receive a clock signal; a register having a plurality of branches for storing data; a steering circuit having an input coupled to a data line that carries data, said steering circuit being coupled to said register and sequentially steering said data into selected ones of said plurality of branches of said register in response to a first signal triggered by said clock signal; and a branch selection circuit coupled to said register, said branch selection circuit sequentially coupling data stored in selected branches of said plurality of branches to the output in response to a second signal triggered by said clock signal, wherein, a second data starts propagating through the data path after a first data starts propagating through the data path but before said first data reaches the output.
Claim 2
Dependent Claim 146 words
An integrated circuit having a data path with an output, comprising: a clock input coupled to receive a clock signal; a register having a plurality of branches for storing data; a steering circuit having an input coupled to a data line that carries data, said steering circuit being coupled to said register and sequentially steering said data into selected ones of said plurality of branches of said register in response to a first signal triggered by said clock signal; and a branch selection circuit coupled to said register, said branch selection circuit sequentially coupling data stored in selected branches of said plurality of branches to the output in response to a second signal triggered by said clock signal, wherein, a second data starts propagating through the data path after a first data starts propagating through the data path but before said first data reaches the output.
Claim 3
Dependent Claim 15 words
The circuit of claim 1 wherein said data is in the form of a pulse.
Claim 4
Dependent Claim 38 words
The circuit of claim 1 wherein each of said branches further includes a first and a second latch, wherein said first latch is responsive to a logic "1" and said second latch is responsive to a logic "0".
Claim 5
Dependent Claim 24 words
The circuit of claim 1 further comprising a memory array having addressable data storage locations, said memory array being coupled to said data line.
Claim 6
Dependent Claim 13 words
The circuit of claim 4 wherein said memory array comprises random access memory.
Claim 7
Dependent Claim 12 words
The circuit of claim 4 wherein said memory array comprises non-volatile memory.
Claim 8
Dependent Claim 35 words
The circuit of claim 1 further comprising a counter coupled to said steering circuit and said branch selection circuit, said counter producing an output count, said output count changing in response to said clock signal.
Claim 9
Dependent Claim 143 words
The circuit of claim 7 wherein a first count state from said counter is generated by a first event of said clock signal, said first count state causing said steering circuit to steer said first data into said selected one of said plurality of branches of said register; a second count state from said counter is generated by a second event of said clock signal, said second count state causing said steering means to steer said second data into a second selected one of said plurality of branches of said register; a third count state from said counter is used by said selection circuit to select for output said first data stored in said selected branch; and a fourth count state from said counter is used by said selection circuit to select for output said second data stored in said second selected branch.
Claim 10
Dependent Claim 21 words
The circuit of claim 8 wherein said third count state occurs at the same clock cycle as said second count state.
Claim 11
Dependent Claim 20 words
The circuit of claim 8 wherein said third count state occurs at some clock cycle after said second count state.
Claim 12
Dependent Claim 17 words
The circuit of claim 7 wherein said counter is a self-starting wrap-around counter having a clock input.
Claim 13
Dependent Claim 29 words
The circuit of claim 11 wherein said counter changes an output count in response to an edge of a signal applied to a gate terminal of a single transistor.
Claim 14
Dependent Claim 18 words
The circuit of claim 12 wherein said gate terminal of said single transistor couples to said clock input.
Claim 15
Dependent Claim 38 words
The circuit of claim 13 wherein said single transistor couples to a plurality of nodes and causes a change in output count by pulling one of said plurality of nodes to a logic level without an opposing pull.
Claim 16
Dependent Claim 114 words
The circuit of claim 7 wherein a first steer count state from said counter is generated by a first event of said clock signal, said first steer count state causing said steering circuit to steer data into said selected one of said plurality of branches of said register, and a first select count state from said counter is generated by a subsequent event of said clock signal, said first select count state causing said branch selection circuit to select for output said data stored in said selected one of said plurality of branches, said subsequent event of said clock cycle occurring some number of clock cycles after said first event of said clock signal.
Claim 17
Dependent Claim 13 words
The circuit of claim 15 wherein said number of clock cycles is one.
Claim 18
Dependent Claim 13 words
The circuit of claim 15 wherein said number of clock cycles is two.
Claim 19
Dependent Claim 15 words
The circuit of claim 15 wherein said number of clock cycles may be programmably set.
Claim 20
Dependent Claim 19 words
The circuit of claim 15 wherein said number of clock cycles may be programmably set as one or two.
Claim 21
Dependent Claim 20 words
The circuit of claim 15 wherein said number of clock cycles may be programmably set as zero, one or two.
Claim 22
Dependent Claim 16 words
The circuit of claim 15 wherein said number of clock cycles may be greater than one.
Claim 23
Dependent Claim 19 words
The circuit of claim 15 wherein said number of clock cycles may be programmable set as greater than one.
Claim 24
Dependent Claim 133 words
The circuit of claim 15 wherein said steering circuit comprises a plurality of logic circuits corresponding to said plurality of branches of said register, wherein each one of said plurality of logic circuits comprises: a first logic sub-circuit having a first input receiving data from said data line and a second input receiving a steer count state from said counter, said first logic sub-circuit performing one of a logical AND or NAND function on said data and said steer count state; and a second logic sub-circuit having a first input receiving data-bar, said data-bar being a complement of said data, and a second input receiving said steer count state from said counter, said second logic sub-circuit performing one of a logical AND or NAND function on said data-bar and said steer count state.
Claim 25
Dependent Claim 55 words
The circuit of claim 23 wherein each branch of said register comprises: a first latch coupled to an output of a first logic sub-circuit of a corresponding logic circuit of said steering circuit; and a second latch coupled to an output of a second logic sub-circuit of said corresponding logic circuit of said steering circuit.
Claim 26
Dependent Claim 35 words
The circuit of claim 24 wherein each one of said first latch and said second latch in each branch of said register further comprises a reset transistor having an input coupled to a reset signal.
Claim 27
Dependent Claim 79 words
The circuit of claim 25 wherein said register comprises first and second branches and said steering circuit comprises first and second logic circuits respectively coupled to said first and second branches, and wherein, said first logic circuit receives said first steer count state as an input, and said second logic circuit receives a second steer count state as an input, said second steer count state being generated by a second event of said clock signal after said first event.
Claim 28
Dependent Claim 66 words
The circuit of claim 26 wherein said register further comprises a third branch and said steering circuit further comprises a third logic circuit respectively coupled to said third branch, and wherein, said third logic circuit receives as an input a third steer count state from said counter, said third steer count state being generated by a third event of said clock signal after said second event.
Claim 29
Dependent Claim 151 words
The circuit of claim 26 wherein said branch selection circuit comprises first and second logic circuits respectively coupled to said first and second branches of said register, wherein each one of said first and second logic circuits comprises: a first logic sub-circuit having a first input receiving an output of a first latch in a corresponding branch, and a second input receiving a select count state from said counter, said first logic sub-circuit performing one of a logical AND or NAND function on said output of said first latch and said select count state; and a second logic sub-circuit having a first input receiving an output of a second latch in said corresponding branch, and a second input receiving said select count state from said counter, said second logic sub-circuit performing one of a logical AND or NAND function on said output of said second latch and said select count state.
Claim 30
Dependent Claim 59 words
The circuit of claim 28 wherein said first logic circuit in said selection circuit receives said first select count state occurring one clock cycle after said first event of said clock signal, and said second logic circuit in said selection circuit receives a second select count state occurring two clock cycles after said first event of said clock signal.
Claim 31
Dependent Claim 154 words
The circuit of claim 27 wherein said branch selection circuit comprises first, second and third logic circuits respectively coupled to said first, second and third branches of said register, wherein each one of said first, second and third logic circuits comprises: a first logic sub-circuit having a first input receiving an output of a first latch in a corresponding branch, and a second input receiving a select count state from said counter, said first logic sub-circuit performing one of a logical AND or NAND function on said output of said first latch and said select count state; and a second logic sub-circuit having a first input receiving an output of a second latch in said corresponding branch, and a second input receiving said select count state from said counter, said second logic sub-circuit performing one of a logical AND or NAND function on said output of said second latch and said select count state.
Claim 32
Dependent Claim 85 words
The circuit of claim 30 wherein said first logic circuit in said selection circuit receives said first select count state occurring two clock cycles after said first event of said clock signal, said second logic circuit in said selection circuit receives a second select count state occurring three clock cycles after said first event of said clock signal, and said third logic circuit in said selection circuit receives a third select count state occurring four clock cycles after said first event of said clock signal.
Claim 33
Dependent Claim 231 words
A memory circuit comprising: an array of addressable memory cells for storing data; a data line coupled to said array of memory cells; a clock input coupled to receive a clock signal, a first edge of said clock signal initiating a first read cycle to supply an output data on said data line; a register having a plurality of branches for storing data; a counter producing a plurality of steer count states and select count states, said plurality of steer count states and select count states changing with cycles of said clock signal; a steering circuit coupled to said register and said data line, said steering circuit further receiving said plurality of steer count states, said steering circuit steering said output data into a selected one of said plurality of branches of said register; and selection circuitry, driven by said plurality of select count states, for selecting for output said output data stored in said selected branch, wherein, said steering circuit steers a first output data into a first branch of said register in response to a first steer count state triggered by said first edge of said clock signal, and said selection circuity selects said first output data for output in response to a first select count state triggered by a second edge of said clock signal occurring a number of cycles after said first edge of said clock signal.
Claim 34
Dependent Claim 231 words
A memory circuit comprising: an array of addressable memory cells for storing data; a data line coupled to said array of memory cells; a clock input coupled to receive a clock signal, a first edge of said clock signal initiating a first read cycle to supply an output data on said data line; a register having a plurality of branches for storing data; a counter producing a plurality of steer count states and select count states, said plurality of steer count states and select count states changing with cycles of said clock signal; a steering circuit coupled to said register and said data line, said steering circuit further receiving said plurality of steer count states, said steering circuit steering said output data into a selected one of said plurality of branches of said register; and selection circuitry, driven by said plurality of select count states, for selecting for output said output data stored in said selected branch, wherein, said steering circuit steers a first output data into a first branch of said register in response to a first steer count state triggered by said first edge of said clock signal, and said selection circuity selects said first output data for output in response to a first select count state triggered by a second edge of said clock signal occurring a number of cycles after said first edge of said clock signal.
Claim 35
Dependent Claim 38 words
The circuit of claim 32 wherein each of said branches further includes a first and a second latch, wherein said first latch is responsive to a logic "1" and said second latch is responsive to a logic "0".
Claim 36
Dependent Claim 20 words
The circuit of claim 33 wherein said first and second latches are reset at the start of a read cycle.
Claim 37
Dependent Claim 16 words
The circuit of claim 32 further comprising disable circuitry for disabling an output of said circuit.
Claim 38
Dependent Claim 26 words
The disable circuitry of claim 35 wherein each of said branches are prevented from being selected for output when the output of said circuit is disabled.
Claim 39
Dependent Claim 35 words
The circuit of claim 32 further comprising a timing circuit controlling a timing of said plurality of steer count states in relation to a timing of outputting of a data pulse on said data line.
Claim 40
Dependent Claim 25 words
The circuit of claim 37 wherein said first steer count state is a pulse of longer duration than said data pulse on said data line.
Claim 41
Dependent Claim 42 words
The circuit of claim 37 further comprising a sense amplifier having a strobe input, and an output coupled to said data line, wherein said sense amplifier generates said data pulse on said data line by being strobed based upon said delay signal.
Claim 42
Dependent Claim 23 words
The circuit of claim 37 wherein said data pulse is a narrow pulse relative to the minimum cycle time of said memory circuit.
Claim 43
Dependent Claim 44 words
The circuit of claim 32 wherein said steering circuit further comprises: a latency choice input for choosing between a latency of two and a latency of three; and path selection means, responsive to said latency choice, for selecting a path for said steering signal.
Claim 44
Dependent Claim 13 words
The circuit of claim 41 wherein said path selection means comprises a multiplexor.
Claim 45
Dependent Claim 30 words
The circuit of claim 41 wherein for latency choice of two said number of cycles equals 1, and for a latency choice of three said number of cycles equals 2.
Claim 46
Dependent Claim 13 words
The circuit of claim 41 wherein said counter cycles between three count states.
Claim 47
Dependent Claim 18 words
The circuit of claim 41 further comprising an additional circuit for outputting data with a latency of one.
Claim 48
Dependent Claim 18 words
The circuit of claim 45 wherein said steering circuit is disabled when a latency of one is chosen.
Claim 49
Dependent Claim 20 words
The circuit of claim 45 wherein said additional circuit is disabled when a latency of two or greater is chosen.
Claim 50
Dependent Claim 175 words
An integrated circuit comprising: a clock input adapted to receive a clock signal; a counter generating steer count states and select count states in response to said clock signal; a register having first, second and third branches for storing data; a steering circuit having a first input receiving data from a data line and first, second and third steer control inputs respectively receiving steer count states from said counter, said steering circuit being coupled to said register and sequentially steering data into a selected one of said first, second and third branches of said register in response to said steer count states from said counter; and a branch selection circuit having first, second and third data inputs respectively coupled to outputs of said first, second and third branches of said register, and first, second and third select control inputs respectively receiving select count states from said counter, said branch selection circuit coupling data stored in a selected branch of said first, second and third branches to an output node in response to said clock signal.
Claim 51
Dependent Claim 175 words
An integrated circuit comprising: a clock input adapted to receive a clock signal; a counter generating steer count states and select count states in response to said clock signal; a register having first, second and third branches for storing data; a steering circuit having a first input receiving data from a data line and first, second and third steer control inputs respectively receiving steer count states from said counter, said steering circuit being coupled to said register and sequentially steering data into a selected one of said first, second and third branches of said register in response to said steer count states from said counter; and a branch selection circuit having first, second and third data inputs respectively coupled to outputs of said first, second and third branches of said register, and first, second and third select control inputs respectively receiving select count states from said counter, said branch selection circuit coupling data stored in a selected branch of said first, second and third branches to an output node in response to said clock signal.
Claim 52
Dependent Claim 114 words
The circuit of claim 48 wherein a first data is generated by a first event of said clock signal, said first data is steered by said steering circuit into said first branch of said register in response to a first steer count state, said first steer count state being triggered by said first event of said clock signal, and said first data is selected for output by said branch selection circuit in response to a first select count state, said first select count state being generated by a second event of said clock signal, said second event of said clock signal occurring a number of cycles after said first event of said clock signal.
Claim 53
Dependent Claim 44 words
The circuit of claim 49 wherein said counter further comprises programming circuitry receiving at an input program information, and wherein said number of cycles is programmably set by said programming circuitry to one of 0, 1, and 2 in response to said program information.
Claim 54
Independent Claim 151 words
A method for pipelining data in a synchronous memory system having a data path with an output, a register with a plurality of branches for storing data, and a clock input receiving a clock signal, the method comprising the steps of: receiving a first clock edge on said clock input, said first clock edge initiating a first read cycle producing first data; propagating said first data through the data path; steering said first data produced by said first read cycle into a first one of said plurality of branches of said register; receiving a second clock edge on said clock input, said second clock edge initiating a second read cycle producing second data; propagating said second data through the data path before said first data reaches the output; and steering said second data produced by said second read cycle into a second one of said plurality of branches of said register.
Claim 55
Independent Claim 151 words
A method for pipelining data in a synchronous memory system having a data path with an output, a register with a plurality of branches for storing data, and a clock input receiving a clock signal, the method comprising the steps of: receiving a first clock edge on said clock input, said first clock edge initiating a first read cycle producing first data; propagating said first data through the data path; steering said first data produced by said first read cycle into a first one of said plurality of branches of said register; receiving a second clock edge on said clock input, said second clock edge initiating a second read cycle producing second data; propagating said second data through the data path before said first data reaches the output; and steering said second data produced by said second read cycle into a second one of said plurality of branches of said register.
Claim 56
Dependent Claim 68 words
The method of claim 51 wherein said system further comprises: a wrap-around counter having at least three outputs, one of which is asserted during a given cycle; and a disable circuit receiving a disable signal, said disable circuit having at least three outputs; wherein said at least three outputs of said disable circuit follow said at least three outputs of said counter unless said disable signal is asserted.
Claim 57
Dependent Claim 38 words
The method of claim 51 wherein each of said branches further includes a first and a second latch, wherein said first latch is responsive to a logic "1" and said second latch is responsive to a logic "0".
Claim 58
Dependent Claim 25 words
The method of claim 53 wherein said first and second latches of a particular branch are reset before data is steered into said particular branch.
Claim 59
Dependent Claim 23 words
The method of claim 51 further comprising the step of: selecting, upon receipt of said second clock edge, said first data for output.
Claim 60
Dependent Claim 23 words
The method of claim 55 further comprising the step of: disabling said first data for output upon receipt of a third clock edge.
Claim 61
Dependent Claim 82 words
The method of claim 51 further comprising the steps of: receiving a third clock edge on said clock input, said third clock edge initiating a third read cycle producing third data; propagating said third data in the data path before said first data reaches the output; steering said third data produced by said third read cycle into a third one of said plurality of branches of said register; and selecting, by receipt of said third clock signal, said first data for output.
Claim 62
Dependent Claim 23 words
The method of claim 57 further comprising the step of: disabling, upon receipt of a fourth clock edge, said first data for output.
Claim 63
Independent Claim 113 words
A method for pipelining data in a circuit having a data path with an output, the method comprising the steps of: initiating propagation of a first data along the data path; initiating propagation of a second data along the data path after initiating propagation of said first data and before said first data reaches the output; steering said first data into a first storage element; steering said second data into a second storage element after said step of steering said first data; selecting said first data in said first storage element for output; and selecting said second data in said second storage element for output after said step of selecting said first data.
Claim 64
Independent Claim 113 words
A method for pipelining data in a circuit having a data path with an output, the method comprising the steps of: initiating propagation of a first data along the data path; initiating propagation of a second data along the data path after initiating propagation of said first data and before said first data reaches the output; steering said first data into a first storage element; steering said second data into a second storage element after said step of steering said first data; selecting said first data in said first storage element for output; and selecting said second data in said second storage element for output after said step of selecting said first data.
Claim 65
Dependent Claim 29 words
The method of claim 59 wherein said first storage element and said second storage element are located at substantially the same location at the output of the data path.
Claim 66
Dependent Claim 59 words
The method of claim 59 wherein said steps of initiating propagation of a first data and steering said first data are triggered by a first edge of a clock signal, and said steps of initiating propagation of a second data and steering said second data are triggered by a second edge of said clock signal after said first edge.
Claim 67
Dependent Claim 46 words
The method of claim 61 wherein said step of selecting said first data is triggered by an edge of said clock signal occurring a number of cycles after said first edge of said clock signal, wherein said number is one of 0, 1, 2, or greater.
Claim 68
Dependent Claim 72 words
The method of claim 61 further comprising the steps of: initiating propagation of a third data along the data path after initiating propagation of said second data and before said second data reaches the output; steering said third data into a third storage element after said step of steering said second data; and selecting said third data in said second storage element for output after said step of selecting said second data.
Claim 69
Dependent Claim 34 words
The method of claim 63 wherein said steps of initiating propagation of a third data and steering said third data are triggered by a third edge of said clock signal after said second edge.
Claim 70
Dependent Claim 46 words
The method of claim 64 wherein said step of selecting said first data is triggered by an edge of said clock signal occurring a number of cycles after said first edge of said clock signal, wherein said number is one of 0, 1, 2, or greater.
Claim 71
Dependent Claim 46 words
The method of claim 65 wherein said step of selecting said second data is triggered by an edge of said clock signal occurring a number of cycles after said first edge of said clock signal, wherein said number is one of 0, 1, 2, or greater.
Claim 72
Dependent Claim 190 words
In a memory circuit having a data path with an output, a method for pipelining data comprising the steps of: initiating a first read cycle triggered by a first edge of a clock signal, said first read cycle generating a first read data; propagating said first read data through the data path; initiating a second read cycle triggered by a second edge of said clock signal after said first edge, said second read cycle generating a second read data before said first read data reaches the output; propagating said second read data through the data path; steering said first read data into a first storage element; steering said second read data into a second storage element after said step of steering said first read data; selecting said first read data in said first storage element for output, said step of selecting said first read data being triggered by said second edge of said clock signal; and selecting said second read data in said second storage element for output, said step of selecting said second read data being triggered by a third edge of said clock signal after said second edge.
Claim 73
Dependent Claim 190 words
In a memory circuit having a data path with an output, a method for pipelining data comprising the steps of: initiating a first read cycle triggered by a first edge of a clock signal, said first read cycle generating a first read data; propagating said first read data through the data path; initiating a second read cycle triggered by a second edge of said clock signal after said first edge, said second read cycle generating a second read data before said first read data reaches the output; propagating said second read data through the data path; steering said first read data into a first storage element; steering said second read data into a second storage element after said step of steering said first read data; selecting said first read data in said first storage element for output, said step of selecting said first read data being triggered by said second edge of said clock signal; and selecting said second read data in said second storage element for output, said step of selecting said second read data being triggered by a third edge of said clock signal after said second edge.
Claim 74
Dependent Claim 29 words
The method of claim 67 wherein said second storage element is disposed at substantially the same location near the output in the data path as said first storage element.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-01-26 2001-07-28 2002-01-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-01-26 2005-07-28 2006-01-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-01-26 2009-07-28 2010-01-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag