This US application claims priority under 35 U.S.C. § 119 to Korean Patent Application No. 10-2024-0008511, filed on Jan. 19, 2024 in the Korean Intellectual Property Office, the disclosure of which is incorporated by reference herein in its entirety.
Example implementations described herein relate to memory devices, and more particularly, to impedance calibration circuits and semiconductor memory devices including the same.
As the operating speed of semiconductor memory devices has increased, swing width of signals interfaced between a semiconductor memory device and a memory controller has generally decreased. However, as swing width has decreased, signals transferred between the semiconductor memory device and the memory controller may be more easily distorted by impedance mismatch caused by process, voltage, and temperature (PVT) variations. An impedance calibration operation for adjusting output impedance and/or a termination impedance of the semiconductor memory device may be employed at transmitting and/or receiving stages of the semiconductor memory device. The impedance calibration operation may be referred to as an input/output (I/O) offset cancellation operation or a ZQ calibration operation.
Some examples provide an impedance calibration circuit capable of increasing operating speed.
Some example implementations provide a semiconductor memory device that includes an impedance calibration circuit capable of increasing operating speed.
According to some examples, an impedance calibration circuit includes a calibration controller and a calibration circuit. The calibration controller receives an impedance calibration command and generates a calibration enable signal based on the impedance calibration command. The calibration circuit is connected to an external resistor provided in a board through an impedance pad, and, in response to the calibration enable signal, generates a first reference voltage code when a voltage level of a selected reference voltage becomes the same as a first voltage of a first node coupled to the impedance pad by comparing the first voltage with the selected reference voltage, generates a pull-up control code for driving the first node based on the first reference voltage code, generates a second reference voltage code when the voltage level of the selected reference voltage becomes the same as a second voltage of a second node by comparing the second voltage with the selected reference voltage, and generates a pull-down control code for driving the second node based on the second reference voltage code.
According to some examples, a semiconductor memory device includes an external resistor provided in a board and a plurality of memory dies mounted on the board and commonly connected to the external resistor. Each of the plurality of memory dies includes an impedance calibration circuit connected to the external resistor through an impedance pad. The impedance calibration circuit, in response to an impedance calibration command, by generating a first reference voltage code when a voltage level of a selected reference voltage becomes the same as a first voltage of a first node coupled to the impedance pad by comparing the first voltage with the selected reference voltage, generating a pull-up control code for driving the first node based on the first reference voltage code, generating a second reference voltage code when the voltage level of the selected reference voltage becomes the same as a second voltage of a second node by comparing the second voltage with the selected reference voltage, and generating a pull-down control code for driving the second node based on the second reference voltage code.
According to some examples, an impedance calibration circuit includes a calibration controller and a calibration circuit. The calibration controller receives an impedance calibration command and generates a calibration enable signal based on the impedance calibration command. The calibration circuit is connected to an external resistor provided in a board through an impedance pad, and, in response to the calibration enable signal, generates a first reference voltage code when a voltage level of a selected reference voltage becomes the same as a first voltage of a first node coupled to the impedance pad by comparing the first voltage with the selected reference voltage, generates a pull-up control code for driving the first node based on the first reference voltage code, generates a second reference voltage code when the voltage level of the selected reference voltage becomes the same as a second voltage of a second node by comparing the second voltage with the selected reference voltage, and generates a pull-down control code for driving the second node based on the second reference voltage code. The calibration circuit includes a pull-down driver that is coupled between the first node and a ground voltage, and drives the first node with the first voltage based on the initial pull-down control code, a first comparator circuit that generates a comparison signal by comparing the first voltage with the selected reference voltage, a reference voltage generator that generates a plurality of reference voltages and a control/code generation circuit. The control/code generation circuit selects the selected reference voltage from among the plurality of reference voltages, generates the first reference voltage code based on the first comparison signal, generates the pull-down control code based on the first reference voltage code and provides the pull-down control code to the pull-down driver.
Accordingly, the impedance calibration circuit generates a reference voltage code by constituting a reference voltage loop that excludes a ZQ node coupled to an external resistor and generates a pull-up control code and a pull-down control code based on the reference voltage code. Therefore, RC load of the ZQ node is not associated with an impedance calibration operation and thus, operating speed of the impedance calibration circuit does not decrease even when a number of the memory dies increases.
The above and other features of the present disclosure will be more clearly understood by describing in detail example implementations thereof with reference to the accompanying drawings.
Example implementations of the present disclosure will be described more fully hereinafter with reference to the accompanying drawings. Like reference numerals may refer to like elements throughout this application.
Referring to
The memory controller 30 may control an overall operation of the memory system 20. The memory controller 30 may control an overall data exchange between an external host and the plurality of memory dies 200a˜200k. For example, the memory controller 30 may write data in the plurality of memory dies 200a˜200k or read data from the plurality of memory dies 200a˜200k in response to a request from the host. In addition, the memory controller 30 may issue operation commands to the plurality of memory dies 200a˜200k for controlling the plurality of memory dies 200a˜200k.
The memory controller 30 may transmit, to the memory dies 200a˜200k, control signals such as a clock signal HCLK, a command CMD, an address ADDR, and data signals DQs. The memory controller 30 may also receive the data signals DQs from the memory dies 200a˜200k. The memory controller 30 may transmit a write command, a read command, and an impedance calibration command to each of the memory dies 200a˜200k. Each of the memory dies 200a˜200k may perform a write operation in response to the write command, a read operation in response to the read command, and an impedance calibration operation in response to the impedance calibration command.
In example implementations, each of the plurality of memory dies 200a˜200k may be a nonvolatile memory device. In example implementations, each of the plurality of memory dies 200a˜200k may be a dynamic random access memory (DRAM), such as a double data rate synchronous dynamic random access memory (DDR SDRAM), a low power double data rate synchronous dynamic random access memory (LPDDR SDRAM), or the like.
The plurality of memory dies 200a˜200k may be commonly connected to an external resistor RZQ provided (or, formed) in a board 110. The external resistor RZQ may be connected to a ground voltage VSS. In example implementations, the external resistor RZQ may be connected to a power supply voltage.
The semiconductor memory device 100 may further include a power management integrated circuit (PMIC) 130. The PMIC 130 may generate a power supply voltage VCCQ based on an input voltage (not illustrated) from the memory controller 30 and may provide the power supply voltage VCCQ to the memory dies 200a˜200k.
The memory controller 30 may include a central processing unit (CPU) 40 to control operation of the memory controller 30.
The memory controller 30 may provide an impedance calibration command to each of the memory dies 200a˜200k. Each of the memory dies 200a˜200k may perform an impedance calibration operation in response to the impedance calibration command. Each of the memory dies 200a˜200k, in response to the impedance calibration command, may perform the impedance calibration operation by generating a first reference voltage code when a voltage level of a selected reference voltage becomes the same as a first voltage, which is based on an initial pull-up control code, of a first node coupled to the impedance pad by comparing the first voltage with the selected reference voltage, generating a pull-up control code for driving the first node based on the first reference voltage code, generating a second reference voltage code when the voltage level of the selected reference voltage becomes the same as a second voltage, which is based on the pull-up control code, of a second node by comparing the second voltage with the selected reference voltage, and generating a pull-down control code for driving the second node based on the second reference voltage code.
In
Referring to
The CPU 40 may control an overall operation of the memory controller 30. The CPU 40 may control the ECC engine 50, the on-chip memory 60, the AES engine 70, the host interface 72, the ROM 73 and the memory interface 76. The CPU 40 may include one or more cores (e.g., a homogeneous multi-core or a heterogeneous multi-core). The CPU 40 may be or include, for example, at least one of an image signal processing unit (ISP), a digital signal processing unit (DSP), a graphics processing unit (GPU), a vision processing unit (VPU), and a neural processing unit (NPU). The CPU 40 may execute various application programs (e.g., a flash translation layer (FTL) 61 and firmware) loaded onto the on-chip memory 60.
The on-chip memory 60 may store various application programs that are executable by the CPU 40. The on-chip memory 60 may operate as a cache memory adjacent to the CPU 40. The on-chip memory 60 may store a command, an address, and data to be processed by the CPU 40 or may store a processing result of the CPU 40. The on-chip memory 60 may be, for example, a storage medium or a working memory including a latch, a register, a static random access memory (SRAM), a dynamic random access memory (DRAM), a thyristor random access memory (TRAM), a tightly coupled memory (TCM), etc.
The CPU 40 may execute the FTL 61 loaded onto the on-chip memory 60. The FTL 61 may be loaded onto the on-chip memory 60 as firmware or a program stored in the memory dies 200a˜200k. The FTL 61 may manage mapping between a logical address provided from a host and a physical address of one of the memory dies 200a˜200k and may include an address mapping table manager managing and updating an address mapping table. The FTL 61 may further perform a garbage collection operation, a wear leveling operation, and the like, as well as the address mapping described above. The FTL 61 may be executed by the CPU 40 for addressing one or more of the following aspects of the memory dies 200a˜200k: overwrite-or in-place write-impossible, a life time of a memory cell, a limited number of program-erase (PE) cycles, and an erase speed slower than a write speed.
Memory cells of the memory dies 200a˜200k may have the physical characteristic that a threshold voltage distribution varies due to causes, such as a program elapsed time, a temperature, program disturbance, read disturbance and etc. For example, data stored in the memory dies 200a˜200k becomes erroneous due to the above causes.
The memory controller 30a may utilize a variety of error correction techniques to correct such errors. For example, the memory controller 30a may include the ECC engine 50. The ECC engine 50 may correct errors which occur in the data stored in the memory dies 200a˜200k. The ECC engine 50 may include an ECC encoder 51 and an ECC decoder 53. The ECC encoder 51 may perform an ECC encoding operation on data to be stored in the memory dies 200a˜200k. The ECC decoder 53 may perform an ECC decoding operation on data read from the memory dies 200a˜200k.
The ROM 73 may store a variety of information, needed for the memory controller 30 to operate, in firmware.
The AES engine 70 may perform at least one of an encryption operation and a decryption operation on data input to the memory controller 30a by using a symmetric-key algorithm. Although not illustrated in detail, the AES engine 70 may include an encryption module and a decryption module. For example, the encryption module and the decryption module may be implemented as separate modules. For another example, one module capable of performing both encryption and decryption operations may be implemented in the AES engine 70.
The memory controller 30a may communicate with the host through the host interface 72. For example, the host interface 72 may include Universal Serial Bus (USB), Multimedia Card (MMC), embedded-MMC, peripheral component interconnection (PCI), PCI-express, Advanced Technology Attachment (ATA), Serial-ATA, Parallel-ATA, small computer small interface (SCSI), enhanced small disk interface (ESDI), Integrated Drive Electronics (IDE), Mobile Industry Processor Interface (MIPI), Nonvolatile memory express (NVMe), Universal Flash Storage (UFS), and etc. The memory controller 30a may communicate with the memory dies 200a˜200k through the memory interface 76.
Although
Referring to
The memory cell array 210 may be coupled to the address decoder 330 through a string selection line SSL, a plurality of word-lines WLs, and a ground selection line GSL. In addition, the memory cell array 210 may be coupled to the page buffer circuit 310 through a plurality of bit-lines BLs. The memory cell array 310 may include a plurality of nonvolatile memory cells coupled to the plurality of word-lines WLs and the plurality of bit-lines BLs. The memory cell array 310 may include a plurality of memory blocks BLK1, BLK2, . . . , BLKz. Here, z is an integer greater than two. Each of the plurality of memory blocks BLK1, BLK2, . . . , BLKz may include a plurality of nonvolatile memory cells.
In some example implementations, the memory cell array 210 may be a three-dimensional memory cell array, which is formed on a substrate in a three-dimensional structure (or a vertical structure). In this case, the memory cell array 210 may include vertical cell strings that are vertically oriented such that at least one memory cell is located over another memory cell.
The control circuit 370 may receive the command (signal) CMD and the address (signal) ADDR from the memory controller 30a and control an erase loop, a program loop and a read operation of the memory die 200a based on the command CMD and the address ADDR. The program loop may include a program operation and a program verification operation. The erase loop may include an erase operation and an erase verification operation.
For example, the control circuit 370 may generate control signals CTLs to control the voltage generator 380 and may generate a page buffer control signal PCTL to control the page buffer circuit 310 based on the command CMD. The control circuit 370 may generate a row address R_ADDR and a column address C_ADDR based on the address ADDR. The control circuit 370 may provide the row address R_ADDR to the address decoder 330 and provide the column address C_ADDR to the data I/O circuit 320.
The address decoder 330 may be coupled to the memory cell array 210 through the string selection line SSL, the plurality of word-lines WLs, and the ground selection line GSL. During the program operation or the read operation, the address decoder 330 may determine one of the plurality of word-lines WLs as a selected word-line and determine rest of the plurality of word-lines WLs except for the selected word-line as unselected word-lines based on the row address R_ADDR.
The voltage generator 380 may generate word-line voltages VWLs, which are required for the operation of the memory die 200a, based on the control signals CTLs. The voltage generator 380 may receive a power PWR from the memory controller 30a. The word-line voltages VWLs may be applied to the plurality of word-lines WLs through the address decoder 330.
For example, during the erase operation, the voltage generator 380 may apply an erase voltage to a channel of cell strings of the memory block and may apply a ground voltage to word-lines of a memory block to be erased. During the erase verification operation, the voltage generator 500 may apply an erase verification voltage to the word-lines of the memory block to be erased or sequentially apply the erase verification voltage to word-lines on a word-line basis.
For example, during the program operation, the voltage generator 380 may apply a program voltage to the selected word-line and may apply a program pass voltage to the unselected word-lines. In addition, during the program verification operation, the voltage generator 380 may apply a program verification voltage to the selected word-line and may apply a verification pass voltage to the unselected word-lines. In addition, during the read operation, the voltage generator 380 may apply a read voltage to the selected word-line and may apply a read pass voltage to the unselected word-lines.
The page buffer circuit 310 may be coupled to the memory cell array 210 through the plurality of bit-lines BLs. The page buffer circuit 310 may include a plurality of page buffers. The page buffer circuit 310 may temporarily store data to be programmed in a selected page or data read out from the selected page.
The data I/O circuit 320 may be coupled to the page buffer circuit 310 through a plurality of data lines DLs. During the program operation, the data I/O circuit 320 may receive a data signal DQ from the memory controller 30a through a data I/O pad 301, may convert the data signal DQ into a data and may provide the program data to the page buffer circuit 310 based on the column address C_ADDR received from the control circuit 370. During the read operation, the data I/O circuit 320 may receive a read data, which are stored in the page buffer circuit 310 based on the column address C_ADDR received from the control circuit 370, may convert the data into the data signal DQ and may provide the data signal DQ to the memory controller 30a through the data I/O pad 301.
The data I/O circuit 320 may drive bits of the data DTA based on a pull-up control code PUCD and a pull-down control code PDCD from the impedance calibration circuit 400 (labelled ZQ calibration circuit in the figure) to generate the data signal DQ having a target output high level (VOH) voltage and provide the data signal DQ to the memory controller 30a through the data I/O pad 301.
The impedance calibration circuit 400 may be connected to the external resistor RZQ through an impedance (ZQ) pad 401 and the external resistor RZQ may be coupled to the ground voltage VSS.
The impedance calibration circuit 400 may generate a pull-up control code PUCD and a pull-down control code PDCD during an impedance calibration interval, in response to an impedance calibration command ZQ_CAL from the control circuit 370 and may provide the pull-up control code PUCD and a pull-down control code PDCD to a data output circuit in the data I/O circuit 320.
The impedance calibration circuit 400, in response to the impedance calibration command ZQ_CAL, may perform the impedance calibration operation by generating a first reference voltage code when a voltage level of a selected reference voltage becomes the same as a first voltage, which is based on an initial pull-up control code, of a first node coupled to the impedance pad 401 by comparing the first voltage with the selected reference voltage, generating the pull-up control code PUCD for driving the first node based on the first reference voltage code, generating a second reference voltage code when the voltage level of the selected reference voltage becomes the same as a second voltage, which is based on the pull-up control code PUCD, of a second node by comparing the second voltage with the selected reference voltage, and generating the pull-down control code PDCD for driving the second node based on the second reference voltage code.
Referring to
The data input circuit 325 may receive the data signal DQ from the memory controller 30a, may convert the data signal DQ to a data DTA, and may provide the data DTA to the page buffer circuit 310. The data output circuit 340 may convert data DTA from the page buffer circuit 310 to the data signal DQ and provide the data signal DQ to the memory controller 30a.
The pre-driver 350 may receive the data DTA, may generate a pull-up driving signal PUDS and a pull-down driving signal PDDS based on the pull-up control code PUCD and the pull-down control code PDCD, and may provide the pull-up driving signal PUDS and the pull-down driving signal PDDS to the output driver 360.
For example, when the data DTA is at a high level, the pre-driver 350 may buffer the pull-up control code PUCD and generate the pull-up driving signal PUDS to be substantially the same as the pull-up control code PUCD, and may generate the pull-down driving signal PDDS for turning off all transistors included in a pull-down driver (such as a pull-down driver 363 shown in
Referring to
The pull-up driver 361 may include first through r-th (r is a natural number greater than one) pull-up transistors NU1 through NUr connected between the power supply voltage VCCQ and an output node ON1. Each of the first through r-th pull-up transistors NU1 through NUr may be an n-channel metal oxide semiconductor (NMOS) transistor.
The pull-down driver 363 may include first through r-th pull-down transistors ND1 through NDr connected between the output node ON1 and the ground voltage VSS. Each of the first through r-th pull-down transistors ND1 through NDr may be an NMOS transistor.
When the data DTA is at the high level, the pull-up driver 361 may receive the pull-up driving signal PUDS (e.g., PUDS[1] through PUDS[r]) corresponding to the pull-up control code PUCD from the pre-driver 350 and generate the current determined by the pull-up control code PUCD. The pull-down transistors ND1 through NDr included in the pull-down driver 363 may all be turned off according to the pull-down driving signal PDDS (e.g., PDDS[1] through PDDS[r]).
At this time, when the data DTA is at the high level, the current generated by the pull-up driver 361 may be transmitted to an on-die termination (ODT) resistor RODT_MC in the memory controller 30 via the data I/O pad 301. The data signal DQ that the ODT resistor RODT_MC receives is determined by the current generated by the pull-up driver 361 and the ODT resistor RODT_MC, and has the target VOH voltage that has been adjusted according to the pull-up control code PUCD generated by the impedance calibration circuit 400. The target VOH voltage may be referred to as a reference VOH voltage.
When the data DTA is at the low level, the pull-up transistors NU1 through NUr included in the pull-up driver 361 may all be turned off according to the pull-up driving signal PUDS. The pull-down driver 363 may receive the pull-down driving signal PDDS corresponding to the pull-down control code PDCD from the pre-driver 350 and may have a resistance determined by the pull-down control code PDCD.
At this time, when the data DTA is at the low level, no current is generated by the pull-up driver 361, and therefore, the data signal DQ that the ODT resistor RODT_MC receives has an output low level (VOL) voltage which is substantially the same as the ground voltage VSS.
According to example implementations, the total resistance, e.g., a termination resistance (RTT), of the pull-up driver 361 or the pull-down driver 363 may be changed in response to a particular pull-up or pull-down driving signal PUDS or PDDS. At this time, single loading or double loading can be implemented by changing the number of memory modules inserted into a memory slot and an RTT appropriate to conditions can be selected.
Referring to
The memory controller 30a may receive the data signal DQ from each of the memory dies 200a˜200k, may determine the VOH and VOL voltages, and determine a reference voltage VREF from the VOH and VOL voltages. The memory controller 30a may compare the data signal DQ with the reference voltage VREF and may determine a received data value (e.g., 0 or 1).
Various process-voltage-temperature (PVT) conditions may be applied to each of the memory dies 200a˜200k. The PVT conditions may include non-uniform doping in a wafer process, a voltage drop as current passes through different elements when power is supplied, and a temperature along a path through which a signal passes. AC on-resistance (hereinafter, referred to as “Ron AC”) at the output side of the memory dies 200a˜200k may vary with the PVT conditions, and the VOH voltage of the data signal DQ may vary with the Ron AC.
Various operating frequencies may be applied to each of the memory dies 200a˜200k. When the operating frequency is changed, the VOH voltage of the data signal DQ may vary. Therefore, signal integrity of each of the memory dies 200a˜200k may be enhanced by generating the pull-up control code PUCD and the pull-down control code PDCD according to the PVT conditions (e.g., operating parameters) and the operating frequency, such that the data signal DQ has an optimum VOH voltage.
The impedance calibration circuit 400 may generate the pull-up control code PUCD and the pull-down control codes PDCD for various target VOH voltages, in response to the impedance calibration command ZQ_CAL during the impedance calibration interval.
During a normal operation period, the impedance calibration circuit 400 may provide the data output circuit 360 with the pull-up control code PUCD and the pull-down control code PDCD for the target VOH voltage, and the data output circuit 360 may transmit the data signal DQ to the memory controller 30a based on the pull-up control code PUCD and the pull-down control code PDCD. A mode register set signal may include information about the impedance of the ODT resistor RODT_MC of the memory controller 30a and may include information indicating whether to increase or decrease the VOH voltage of the data signal DQ.
Referring to
In example implementations, the memory cell array 210 in
In example implementations, the second semiconductor layer L2 may include the substrate, and by forming transistors on the substrate and metal patterns for wiring transistors, the peripheral circuit 300 may be formed in the second semiconductor layer L2. After the peripheral circuit 300 is formed on the second semiconductor layer L2, the first semiconductor layer L1 including the memory cell array 210 may be formed, and the metal patterns for connecting word-lines WL and bit-lines BL of the memory cell array 210 to the peripheral circuit 300 formed in the second semiconductor layer L2 may be formed. For example, the word-lines WL may extend in a first horizontal direction HD1 and the bit-lines BL may extend in a second horizontal direction HD2.
As the number of stages of memory cells in the memory cell array 210 increases with the development of semiconductor processes, that is, as the number of stacked word-lines WL increases, an area of the memory cell array 210 may decrease, and accordingly, an area of the peripheral circuit 300 may also be reduced. According to some implementations, to reduce an area of a region occupied by the page buffer circuit 310, the page buffer circuit 310 may have a structure in which a page buffer unit and a cache latch are separated from each other, and may connect sensing nodes included in each of the page buffer units common to a combined sensing node.
A memory block BLKi of
Referring to
The string selection transistor SST may be connected to corresponding string selection lines SSL1, SSL2 and SSL3 (which are denoted as SSL1 to SSL3, hereinafter). The plurality of memory cells MC1 to MC8 may be connected to corresponding word-lines WL1, WL2, WL3, WL4, WL5, WL6, WL7 and WL8 (which are denoted as WL1 to WL8, hereinafter), respectively. The ground selection transistor GST may be connected to corresponding ground selection lines GSL1, GSL2 and GSL3 (which are denoted as GSL1 to GSL3, hereinafter). The string selection transistor SST may be connected to corresponding bit-lines BL1, BL2 and BL3, and the ground selection transistor GST may be connected to the common source line CSL.
Word-lines (e.g., word-line WL1) having the same height may be commonly connected, and the ground selection lines GSLI to GSL3 and the string selection lines SSL1 to SSL3 may be separated.
Referring to
A sectional view taken along a line E-E′ is also illustrated in
The body BD may include P-type silicon and may be an area where a channel will be formed. The pillar PL may further include a cylindrical tunnel insulating layer TI surrounding the body BD and a cylindrical charge trap layer CT surrounding the tunnel insulating layer TI. A blocking insulating layer BI may be provided between the first word-line WL1 and the pillar PL. The body BD, the tunnel insulating layer TI, the charge trap layer CT, the blocking insulating layer BI, and the first word-line WL1 may constitute or be included in a charge trap type transistor that is formed in a direction perpendicular to the substrate SUB or to an upper surface of the substrate SUB. A string selection transistor SST, a ground selection transistor GST, and other memory cells may have the same structure as the first memory cell MC1.
Referring to
The calibration controller 405 may receive the impedance calibration command ZQ_CAL from control circuit 370 in the memory die 200a and may provide a calibration enable signal ZQEN to the oscillator 407 and the calibration circuit 410 in response to the impedance calibration command ZQ_CAL.
The oscillator 407 may generate a clock signal HCLK to the calibration circuit 410 in response to the calibration enable signal ZQEN.
The calibration circuit 410 may be connected to the external resistor RZQ through the impedance pad 401, may generate a first reference voltage code when a voltage level of a selected reference voltage becomes the same as a first voltage, which is based on an initial pull-up control code, of a first node coupled to the impedance pad 401 by comparing the first voltage with the selected reference voltage, may generate the pull-up control code PUCD for driving the first node based on the first reference voltage code, may generate a second reference voltage code when the voltage level of the selected reference voltage becomes the same as a second voltage which is based on the pull-up control code PUCD, of a second node by comparing the second voltage with the selected reference voltage, and may generate the pull-down control code PDCD for driving the second node based on the second reference voltage code. The calibration circuit 410 may provide the pull-up control code PUCD and the pull-down control code PDCD to the output driver 360 in
Referring to
The pull-up driver 411 may be connected between the power supply voltage VCCQ and a first node N11 coupled to the impedance pad 401a, and may drive the first node N11 with a first voltage VPU based on a preset initial pull-up control code. The impedance pad 401a may be connected to the external resistor RZQ and the external resistor RZQ may be connected to the ground voltage VSS.
The reference voltage generator 420 may generate a plurality of reference voltages VREFs and may provide the plurality of reference voltages VREFs to the control/code generation circuit 450.
The control/code generation circuit 450 may provide a selected reference voltage VERF_S to the first comparator circuit 430 and the second comparator circuit 440 by selecting at least a portion from the plurality of reference voltages VREFs.
The first comparator circuit 430 may generate a first comparison signal CS1 by comparing the first voltage VPU at the first node N11 with the selected reference voltage VREF_S and may provide the first comparison signal CS1 to the control/code generation circuit 450.
The control/code generation circuit 450 may generate a first reference voltage code when a voltage level of the selected reference voltage VREF_S becomes the same as the first voltage VPU based on the first comparison signal CS1, may generate the pull-up control code PUCD based on the first reference voltage code, and may provide the pull-up control code PUCD to the pull-up driver 411 and the replica pull-up driver 413.
The replica pull-up driver 413 may be connected between the power supply voltage VCCQ and a second node N12 and may drive the second node N12 with a second voltage VPD based on the pull-up control code PUCD.
The second comparator circuit 440 may generate a second comparison signal CS2 by comparing the second voltage VPD at the second node N12 with the selected reference voltage VREF_S and may provide the second comparison signal CS2 to the control/code generation circuit 450.
The control/code generation circuit 450 may generate a second reference voltage code when a voltage level of the selected reference voltage VREF_S becomes the same as the second voltage VPD based on the second comparison signal CS2, may generate the pull-down control code PDCD based on the second reference voltage code, and may provide the pull-down control code PDCD to the pull-down driver 415.
The pull-down driver 415 may drive the second node N12 based on the pull-down control code PDCD.
The control/code generation circuit 450 may provide the pull-up control code PUCD and the pull-down control code PDCD to the output circuit 340 in
The control/code generation circuit 450 and the first comparator circuit 430 may constitute a first loop LOOP1, may generate the first reference voltage code when the voltage level of the selected reference voltage VREF_S becomes the same as the first voltage VPU, and may generate the pull-up control code PUCD based on the first reference voltage code. In addition, the control/code generation circuit 450 and the second comparator circuit 440 may constitute a second loop LOOP2, may generate the second reference voltage code when the voltage level of the selected reference voltage VREF_S becomes the same as the second voltage VPD, and may generate the pull-down control code PDCD based on the second reference voltage code.
The conventional impedance calibration circuit generates a pull-up control code through a first loop including the pull-up driver 411 and the first node N11 and generates a pull-down control code through a second loop including the second node N12 and the pull-down driver 413. An operating speed of an impedance calibration circuit is determined by an RC load of the first node N11 (i.e., ZQ node) and by an RC load of the second node N12. Because, the first node N11 included in the first loop is coupled to an impedance pad connected to the external resistor RZQ in the conventional impedance calibration circuit, the RC load of the first node N11 increases and thus, the operating speed of the conventional impedance calibration circuit decreases. In addition, the RC load of the first node N11 increases as a number of the memory dies increases.
However, in the calibration circuit 410, because the first loop LOOP1 does not include the first node N11 and the second loop LOOP2 does not include the second node N12, an RC load is not associated with an impedance calibration operation. Therefore, the operating speed of the impedance calibration circuit 400 does not decrease even when a number of the memory dies increases.
Referring to
The selection signal generator 455 may receive the clock signal HCLK and may generate selection signals SEL and inverted selection signals SELB based on the clock signal HCLK. The selection signal generator 455 may include a sequence generator 456, a cycle information generator 460, a signal generator 469 and an inverter 469b.
The sequence generator 456 may generate a plurality of sequence signals SEQ that are sequentially activated, based on the clock signal HCLK. The cycle information generator 460 may generate a plurality of cycle signals CYL associated with the plurality of cycles, based on the plurality of sequence signals SEQ. The signal generator 469 may generate the selection signals SEL based on the plurality of cycle signals CYL. The inverter 469b may generate the inverted selection signals SELB by inverting the selection signals SEL.
The reference voltage selector 470 may output the selected reference voltage VREF_S by selecting at least a portion of the plurality of reference voltages VREFs based on the selection signals SEL and the inverted selection signals SELB during each of a plurality of cycles.
The first reference voltage code generator 475 may receive the first comparison signal CS1, may generate a first reference voltage code RVPUC when the voltage level of the selected reference voltage VREF_S becomes the same as the first voltage VPU based on the first comparison signal CS1 and may provide the first reference voltage code RVPUC to the pull-up code generator 480.
The pull-up code generator 480 may receive the clock signal HCLK and the first reference voltage code RVPUC, may generate the pull-up control code PUCD based on the clock signal HCLK and the first reference voltage code RVPUC and may provide the pull-up control code PUCD to the pull-up driver 411 and the replica pull-up driver 413.
The second reference voltage code generator 475_1 may receive the second comparison signal CS2, may generate a second reference voltage code RVPDC when the voltage level of the selected reference voltage VREF_S becomes the same as the second voltage VPD based on the second comparison signal CS2 and may provide the second reference voltage code RVPDC to the pull-down code generator 480_1.
The pull-down code generator 480_1 may receive the clock signal HCLK and the second reference voltage code RVPDC, may generate the pull-down control code PDCD based on the clock signal HCLK and the second reference voltage code RVPDC and may provide the pull-down control code PDCD to the pull-down driver 415.
Referring to
The D-flipflop 457 may include a data terminal D coupled to the power supply voltage VCCQ, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a first sequence signal SEQ1.
The D-flipflop 458 may include a data terminal D coupled to the output terminal Q of the D-flipflop 457, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a second sequence signal SEQ2.
The D-flipflop 459 may include a data terminal D coupled to the output terminal Q of the D-flipflop 458, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a third sequence signal SEQ3.
Therefore, the sequence generator 456 may generate the first sequence signal SEQ1, the second sequence signal SEQ2 and the third sequence signal SEQ3 which are activated sequentially.
The first sequence signal SEQ1, the second sequence signal SEQ2 and the third sequence signal SEQ3 may be included in the sequence signals SEQ in
Referring to
The NAND gate 461 may output a first cycle signal CYL1 by performing a NAND operation on the power supply voltage VCCQ and the first sequence signal SEQ1. The NAND gate 462 may perform a NAND operation on the first sequence signal SEQ1 and the second sequence signal SEQ2. The NAND gate 463 may perform a NAND operation on the first sequence signal SEQ1 and an output of the NAND gate 462. The inverter 466 may output the second cycle signal CYL2 by inverting an output of the NAND gate 463.
The NAND gate 464 may perform a NAND operation on the second sequence signal SEQ2 and the third sequence signal SEQ3. The NAND gate 465 may perform a NAND operation on the second sequence signal SEQ2 and an output of the NAND gate 464. The inverter 467 may output the third cycle signal CYL3 by inverting an output of the NAND gate 465.
The first cycle signal CYL1, the second cycle signal CYL2 and the third cycle signal CYL3 may be included in the cycle signals CYL in
The signal generator 469 may generate the selection signals SEL based on the first cycle signal CYL1, the second cycle signal CYL2 and the third cycle signal CYL3 and the inverter 469b may output the inverted selection signals SELB by inverting the selection signals SEL.
Referring to
The reference voltage selector 470a may include a plurality of transmission gates TG0, TG1, TG2, TG3, . . . , TG62, TG63. The plurality of transmission gates TG0, TG1, TG2, TG3, . . . , TG62, TG63 may receive the plurality of reference voltages VREF1_0, VREF1_1, VREF1_2, VREF1_3, . . . , VREF1_62, VREF1_63, respectively, and may be commonly connected to an output node NO1.
The plurality of transmission gates TG0, TG1, TG2, TG3, . . . , TG62, TG63 may provide at least one of the plurality of reference voltages VREF1_0, VREF1_1, VREF1_2, VREF1_3, . . . , VREF1_62, VREF1_63 as the selected reference voltage VREF_S at the output node NO1, in response to selection signals SEL0, SEL1, SEL2, SEL3, . . . , SEL62, SEL63 and inverted selection signals SEL0B, SEL1B, SEL2B, SEL3B, . . . , SEL62B, SEL63B.
Referring to
The comparator 431 may output a comparison signal CS11 by comparing the first voltage VPU with a reference voltage VREF1_24. The comparator 432 may output a comparison signal CS12 by comparing the first voltage VPU with a reference voltage VREF1_32. The comparator 433 may output a comparison signal CS13 by comparing the first voltage VPU with a reference voltage VREF1_40.
The encoder 476 may receive the comparison signals CS11, CS12 and CS13 and may generate the first reference voltage code RVPUC by encoding the comparison signals CS11, CS12 and CS13.
The reference voltage selector 470a in
Referring to
The binary division circuit BDC1 may generate a plurality of summed signals SUM7, SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1 based on the clock signal HCLK and the first reference voltage code RVPUC.
The shift register SFR1 may generate bits PUCD1, PUCD2, PUCD3, PUCD4, PUCD5 and PUCD6 of the pull-up control code PUCD sequentially based on the clock signal HCLK and a most significant summed signal SUM7 from the plurality of summed signals SUM7, SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1.
The binary division circuit BDC1 may include a first group of D-flipflops 481, 482, 483, 484, 485, 486 and 487, a plurality of full adders FA11, FA12, FA13, FA14, FA15, FA16 and FA17, a plurality of inverters INV11, INV12, INV13, INV14, INV15 and INV16 and a plurality of multiplexers 488, 489, 490, 491, 492 and 493.
An initial set value of the D-flipflop 481 may be ‘0’ and an initial set value of each of the D-flipflops 482, 483, 484, 485, 486 and 487 may be respective one of ‘1’, ‘0’, ‘0’, ‘0’, ‘0’ and ‘0’ which are the same as respective one of bits of the initial pull-up control code.
Each of the D-flipflops 481, 482, 483, 484, 485 and 486 may include a data terminal D receiving respective one of the summed signals SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1, a clock terminal CK receiving the clock signal HCLK and an output terminal Q. The D-flipflop 487 may include a data terminal D receiving a logic low level ‘0’, a clock terminal CK receiving the clock signal HCLK and an output terminal Q. Therefore, each of the first group of D-flipflops 481, 482, 483, 484, 485, 486 and 487 may output a respective initial set value and then output a respective one of the summed signals SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1 and a logic low level ‘0’ in synchronization of the clock signal HCLK.
Therefore, the first group of D-flipflops 481, 482, 483, 484, 485, 486 and 487 may use the clock signal HCLK and the initial set values which are the same as the bits of the initial pull-up control code.
Each of the plurality of inverters INV11, INV12, INV13, INV14, INV15 and INV16 may invert respective one of bits RVPUC6, RVPUC5, RVPUC4, RVPUC3, RVPUC2 and RVPUC1 of the first reference voltage code RVPUC and may provide respective inverted versions of the bits RVPUC6, RVPUC5, RVPUC4, RVPUC3, RVPUC2 and RVPUC1 to respective one of the plurality of full adders FA12, FA13, FA14, FA15, FA16 and FA17.
The full adder FA17 may output a summed value by summing an output of the inverter INV16 and an output of the D-flipflop 487, and the multiplexer 493 may output one of an output of the full adder FA17 and the output of the D-flipflop 487 as the summed signal SUMI based on the most significant summed signal SUM7. The full adder FA16 may output a summed value by summing an output of the inverter INV15 and an output of the D-flipflop 486, and the multiplexer 492 may output one of an output of the full adder FA16 and the output of the D-flipflop 486 as the summed signal SUM2 based on the most significant summed signal SUM7.
The full adder FA15 may output a summed value by summing an output of the inverter INV14 and an output of the D-flipflop 485, and the multiplexer 491 may output one of an output of the full adder FA15 and the output of the D-flipflop 485 as the summed signal SUM3 based on the most significant summed signal SUM7. The full adder FA14 may output a summed value by summing an output of the inverter INV13 and an output of the D-flipflop 484, and the multiplexer 490 may output one of an output of the full adder FA14 and the output of the D-flipflop 484 as the summed signal SUM4 based on the most significant summed signal SUM7.
The full adder FA13 may output a summed value by summing an output of the inverter INV12 and an output of the D-flipflop 483, and the multiplexer 498 may output one of an output of the full adder FA13 and the output of the D-flipflop 483 as the summed signal SUM5 based on the most significant summed signal SUM7. The full adder FA12 may output a summed value by summing an output of the inverter INV11 and an output of the D-flipflop 482, and the multiplexer 497 may output one of an output of the full adder FA12 and the output of the D-flipflop 482 as the summed signal SUM6 based on the most significant summed signal SUM7. The full adder FA11 may output the most significant summed signal SUM7 by summing ‘0’ and an output of the D-flipflop 481.
The full adder FA17 may provide a carry-out signal COUT1 to the full adder FA16 based on a carry-in signal CIN1, the full adder FA16 may provide a carry-out signal COUT2 to the full adder FA15, the full adder FA15 may provide a carry-out signal COUT3 to the full adder FA14, the full adder FA14 may provide a carry-out signal COUT4 to the full adder FA13, the full adder FA13 may provide a carry-out signal COUT3 to the full adder FA12, and the full adder FA12 may provide a carry-out signal COUT2 to the full adder FA11.
Therefore, the plurality of full adders FA11, FA12, FA13, FA14, FA15, FA16 and FA17 and the plurality of multiplexers 488, 489, 490, 491, 492 and 493 may generate the plurality of summed signals SUM7, SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1 based on the bits RVPUC6, RVPUC5, RVPUC4, RVPUC3, RVPUC2 and RVPUC1 of the first reference voltage code RVPUC and the outputs of the first group of D-flipflops 481, 482, 483, 484, 485, 486 and 487.
The shift register SFR1 may include a second group of D flipflops 494, 495, 496, 497, 498 and 499 which are connected in series. An initial set value of each of the second group of D-flipflops 494, 495, 496, 497, 498 and 499 may be ‘0’.
The D-flipflop 494 may include a data terminal D receiving the most significant summed signal SUM7, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD1 of the pull-up control code PUCD. The D-flipflop 495 may include a data terminal D connected to the output terminal Q of the D-flipflop 494, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD2 of the pull-up control code PUCD.
The D-flipflop 496 may include a data terminal D connected to the output terminal Q of the D-flipflop 495, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD3 of the pull-up control code PUCD. The D-flipflop 497 may include a data terminal D connected to the output terminal Q of the D-flipflop 496, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD4 of the pull-up control code PUCD.
The D-flipflop 498 may include a data terminal D connected to the output terminal Q of the D-flipflop 497, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD5 of the pull-up control code PUCD. The D-flipflop 499 may include a data terminal D connected to the output terminal Q of the D-flipflop 498, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD6 of the pull-up control code PUCD.
The D-flipflop 494 from among the second group of D-flipflops 494, 495, 496, 497, 498 and 499 may output a first bit PUCD1 of the pull-up control code PUCD at the output terminal Q based in the clock signal HCLK and the most significant summed signal SUM7, and each of rest D-flipflops 494, 495, 496, 497, 498 and 499 may have the data terminal D connected to the output terminal Q of a previous D-flipflop and may output corresponding one of the bits PUCD2, PUCD3, PUCD4, PUCD5 and PUCD6 of the pull-up control code PUCD.
The pull-up code generator 480a in
When the reference voltage generator 420 in
A configuration of the pull-down code generator 480_1 may be substantially the same as a configuration of the pull-up code generator 480a of
In
Referring to
The plurality of transmission gates TG0, TG1, TG2, TG3, . . . , TG62, TG63 may provide at least one of the plurality of reference voltages VREF1_0, VREF1_1, VREF1_2, VREF1_3, . . . , VREF1_62, VREF1_63 as the selected reference voltage VREF_S at the first output node NO1, in response to selection signals SEL0, SEL1, SEL2, SEL3, . . . , SEL62, SEL63 and inverted selection signals SEL0B, SEL1B, SEL2B, SEL3B, . . . , SEL62B, SEL63B.
The switch SW1 may be connected between the first output node NO1 and a second output node NO2, the unit gain buffer UBC may be connected to the first output node NO1 and the switch SW2 may be connected between the unit gain buffer UBC and the second output node NO2.
The unit gain buffer UBC may have a positive input terminal coupled to the first output node NO1, a negative input terminal coupled to the switch SW2 and an output terminal coupled to the switch SW2. Output of the unit gain buffer UBC may be provided as the selected reference voltage VREF_S as the second output node NO2 through switching operations of the switches SW1 and SW2.
Referring to
Each of the plurality of second resistors R22 may be connected between nodes N31, N32, N33, . . . , N3j, NO3 between the plurality of first resistors R21. In addition, a first resistor R12 may be connected between the node N31 and the ground voltage VSS.
A first resistance value of each of the plurality of first resistors R21 may be twice a second resistance value of each of the plurality of second resistors R22. Therefore, the reference voltage generator 420b may be referred to as R-2R ladder type.
The reference voltage selector 470c may provide a portion of outputs of the reference voltage generator 420b as the selected reference voltage VREF_S at an output node NO3 based on the selection signals SEL and the inverted selection signals SELB.
Referring to
The encoder 476b may generate switching control signals SCS1, SCS2 and SCS3 and the inverters INV1, INV2 and INV3 may output inverted switching control signals SCS1B, SCS2B and SCS3b by inverting the switching control signals SCS1, SCS2 and SCS3.
The plurality of switches SW21, SW22, SW23, SW24, SW25 and SW26 may complementarily switch adjacent two reference voltages VREF1_0 and VREF1_1, VREF1_2 and VREF1_3, . . . , VREF1_62 and VREF1_63 from among the plurality of reference voltages VREF1_0, VREF1_1, VREF1_2, VREF1_3, . . . , VREF1_62, VREF1_63 in response to the switching control signal SCS1 and the inverted switching control signal SCS1B, the plurality of switches SW31, SW32, SW33 and SW34 may complementarily switch outputs of the switches SW21, SW22, SW23, SW24, SW25 and SW26 in response to the switching control signal SCS2 and the inverted switching control signal SCS2B and the switches SW41 and SW42 may complementarily switch outputs of the switches in the previous stage in response to the switching control signal SCS3 and the inverted switching control signal SCS3B.
A comparator 430b may correspond to the first comparator circuit 430 in
The reference voltage selector 470d, the comparator 430b and the encoder 476b in
Referring to
Each of the plurality of comparators 471, 472 and 473 may compare adjacent two reference voltages VREF1_0 and VREF1_1, VREF1_2 and VREF1_3, . . . , VREF1_62 and VREF1_63 from among the plurality of reference voltages VREF1_0, VREF1_1, VREF1_2, VREF1_3, . . . , VREF1_62, VREF1_63 and the resistors R3 may divide outputs of the plurality of comparators 471, 472 and 473 with a specific ratio and may provide the divided outputs to the encoder 476c, and the encoder 476c may output an interpolated value by interpolating the divided outputs.
A comparator 430c may correspond to the first comparator circuit 430 in
The reference voltage selector 470e, the comparator 430c and the encoder 476c may convert a portion of the plurality of reference voltages VREF1_0, VREF1_1, VREF1_2, VREF1_3, . . . . VREF1_62, VREF1_63 to the first reference voltage code RVPUC by interpolating divided outputs of the comparators 471, 472 and 473 and the reference voltage selector 470e, the comparator 430c and the encoder 476c may be referred to as an interpolating ADC.
Referring to
The subtractor 510 may generate a subtractor code SUBC based on the first reference voltage code RVPUC. The binary division circuit 530 may generate a plurality of summed signals based on the clock signal HCLK and the subtractor code SUBC and may provide a most significant summed signal SUM8 from the plurality of summed signals to the shift register 560.
The shift register 560 may generate the pull-up control code PUCD based on the clock signal HCLK and the most significant summed signal SUM8.
Referring to
The inverter INV21 may invert the ground voltage VSS and may provide an inverted version of the ground voltage VSS to the full adder 512. Each of the plurality of inverters INV22, INV23, INV24, INV25, INV26 and INV27 may invert respective ones of bits RVPUC6, RVPUC5, RVPUC4, RVPUC3, RVPUC2 and RVPUC1 of the first reference voltage code RVPUC and may provide respective inverted versions of the bits RVPUC6, RVPUC5, RVPUC4, RVPUC3, RVPUC2 and RVPUC1 to respective ones of the plurality of full adders 513, 514, 151, 516, 517 and 518.
The full adder 518 may output a summed value by summing an output of the inverter INV27 and ‘0’, and the multiplexer 527 may output one of an output of the full adder 518 and ‘0’ as a bit SUBC1 of the subtractor code SUBC based on a carry-out signal COUT8.
The full adder 517 may output a summed value by summing an output of the inverter INV26 and ‘0’, and the multiplexer 526 may output one of an output of the full adder 517 and ‘0’ as a bit SUBC2 of the subtractor code SUBC based on the carry-out signal COUT8. The full adder 516 may output a summed value by summing an output of the inverter INV25 and ‘0’, and the multiplexer 525 may output one of an output of the full adder 516 and ‘0’ as a bit SUBC3 of the subtractor code SUBC based on the carry-out signal COUT8.
The full adder 515 may output a summed value by summing an output of the inverter INV24 and ‘0’, and the multiplexer 524 may output one of an output of the full adder 515 and ‘0’ as a bit SUBC4 of the subtractor code SUBC based on the carry-out signal COUT8. The full adder 514 may output a summed value by summing an output of the inverter INV23 and ‘0’, and the multiplexer 523 may output one of an output of the full adder 514 and ‘0’ as a bit SUBC5 of the subtractor code SUBC based on the carry-out signal COUT8.
The full adder 513 may output a summed value by summing an output of the inverter INV22 and ‘1’, and the multiplexer 522 may output one of an output of the full adder 513 and ‘1’ as a bit SUBC6 of the subtractor code SUBC based on the carry-out signal COUT8. The full adder 512 may output a summed value by summing an output of the inverter INV21 and ‘1’, and the multiplexer 521 may output one of an output of the full adder 512 and ‘1’ as a bit SUBC7 of the subtractor code SUBC based on the carry-out signal COUT8. The full adder 511 may output the carry-out signal COUT8 by summing ‘0’ and ‘0’.
The full adder 518 may provide a carry-out signal COUT1 to the full adder 517 based on a carry-in signal CIN2, the full adder 517 may provide a carry-out signal COUT2 to the full adder 516, the full adder 516 may provide a carry-out signal COUT3 to the full adder 515, the full adder 515 may provide a carry-out signal COUT4 to the full adder 514, the full adder 514 may provide a carry-out signal COUT5 to the full adder 513, the full adder 513 may provide a carry-out signal COUT6 to the full adder 512, the full adder 512 may provide a carry-out signal COUT7 to the full adder 511 and the full adder 511 may output the carry-out signal COUT8.
Therefore, the subtractor 510 may generate the subtractor code SUBC based on the first reference voltage code RVPUC and the two's complement of the first reference voltage code RVPUC.
Referring to
The shift register 560 may generate bits PUCD1, PUCD2, PUCD3, PUCD4, PUCD5 and PUCD6 of the pull-up control code PUCD sequentially based on the clock signal HCLK and the most significant summed signal SUM8 from the plurality of summed signals SUM8, SUM7, SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1.
The binary division circuit 530 may include a first group of D-flipflops 531, 532, 533, 534, 535, 536, 537 and 538, a plurality of full adders 541, 542, 543, 544, 545, 546, 547 and 548, a plurality of inverters INV31, INV32, INV33, INV34, INV35, INV36 and INV37 and a plurality of multiplexers 551, 552, 553, 554, 555, 556 and 557.
An initial set value of the D-flipflop 531 may be ‘0’, an initial set value of each of the D-flipflops 532, 533, 534, 535, 5363 and 537 may be respective one of ‘1’, ‘0’, ‘0’, ‘0’, ‘0’ and ‘0’ which are the same as respective one of bits of the initial pull-up control code and an initial set value of the D-flipflop 538 may be ‘0’.
Each of the D-flipflops 531, 532, 533, 534, 535, 536 and 537 may include a data terminal D receiving a respective one of the summed signals SUM7, SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1, a clock terminal CK receiving the clock signal HCLK and an output terminal Q. The D-flipflop 538 may include a data terminal D receiving a logic low level ‘0’, a clock terminal CK receiving the clock signal HCLK and an output terminal Q. Therefore, each of the first group of D-flipflops 531, 532, 533, 534, 535, 536, 537 and 538 may output a respective initial set value and then output a respective one of the summed signals SUM7, SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1 and a logic low level ‘0’ in synchronization of the clock signal HCLK.
Therefore, the first group of D-flipflops 531, 532, 533, 534, 535, 536, 537 and 538 may use the clock signal HCLK and the initial set values which are the same as the bits of the initial pull-up control code.
Each of the plurality of inverters INV31, INV32, INV33, INV34, INV35, INV36 and INV37 may invert respective one of bits SUBC7, SUBC6, SUBC5, SUBC4, SUBC3, SUBC2 and SUBC1 of the subtractor code SUBC and may provide respective inverted version of the bits SUBC7, SUBC6, SUBC5, SUBC4, SUBC3, SUBC2 and SUBC1 to respective one of the plurality of full adders 542, 543, 544, 545, 546, 547 and 548.
The full adder 548 may output a summed value by summing an output of the inverter INV37 and an output of the D-flipflop 538, and the multiplexer 557 may output one of an output of the full adder 548 and the output of the D-flipflop 538 as the summed signal SUMI based on the most significant summed signal SUM8. The full adder 547 may output a summed value by summing an output of the inverter INV36 and an output of the D-flipflop 537, and the multiplexer 556 may output one of an output of the full adder 547 and the output of the D-flipflop 537 as the summed signal SUM2 based on the most significant summed signal SUM8.
The full adder 546 may output a summed value by summing an output of the inverter INV35 and an output of the D-flipflop 536, and the multiplexer 555 may output one of an output of the full adder 546 and the output of the D-flipflop 536 as the summed signal SUM3 based on the most significant summed signal SUM8. The full adder 545 may output a summed value by summing an output of the inverter INV34 and an output of the D-flipflop 535, and the multiplexer 554 may output one of an output of the full adder 545 and the output of the D-flipflop 535 as the summed signal SUM4 based on the most significant summed signal SUM8.
The full adder 544 may output a summed value by summing an output of the inverter INV33 and an output of the D-flipflop 534, and the multiplexer 553 may output one of an output of the full adder 544 and the output of the D-flipflop 534 as the summed signal SUM5 based on the most significant summed signal SUM8. The full adder 543 may output a summed value by summing an output of the inverter INV32 and an output of the D-flipflop 533, and the multiplexer 552 may output one of an output of the full adder 543 and the output of the D-flipflop 533 as the summed signal SUM6 based on the most significant summed signal SUM8.
The full adder 542 may output a summed value by summing an output of the inverter INV31 and an output of the D-flipflop 532, and the multiplexer 551 may output one of an output of the full adder 542 and the output of the D-flipflop 532 as the summed signal SUM7 based on the most significant summed signal SUM8. The full adder 541 may output most significant summed signal SUM8 by summing ‘0’ and an output of the D-flipflop 531.
The full adder 548 may provide a carry-out signal COUT1 to the full adder 547 based on a carry-in signal CIN3, the full adder 547 may provide a carry-out signal COUT2 to the full adder 546, the full adder 546 may provide a carry-out signal COUT3 to the full adder 545, the full adder 545 may provide a carry-out signal COUT4 to the full adder 544, the full adder 544 may provide a carry-out signal COUT5 to the full adder 543, the full adder 543 may provide a carry-out signal COUT6 to the full adder 542, the full adder 542 may provide a carry-out signal COUT7 to the full adder 541.
Therefore, the plurality of full adders 541, 542, 543, 544, 545, 546, 547 and 548 and the plurality of multiplexers 551, 552, 553, 554, 555, 556 and 557 may generate the plurality of summed signals SUM8, SUM7, SUM6, SUM5, SUM4, SUM3, SUM2 and SUM1 based on the bits SUBC7, SUBC6, SUBC5, SUBC4, SUBC3, SUBC2 and SUBC1 of the subtractor code SUBC and the outputs of the first group of D-flipflops 531, 532, 533, 534, 535, 536, 537 and 538.
The shift register 560 may include a second group of D flipflops 561, 562, 563, 564, 565 and 566 which are connected in series. An initial set value of each of the second group of D-flipflops 561, 562, 563, 564, 565 and 566 may be ‘0’
The D-flipflop 561 may include a data terminal D receiving the most significant summed signal SUM8, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD1 of the pull-up control code PUCD. The D-flipflop 562 may include a data terminal D connected to the output terminal Q of the D-flipflop 561, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD2 of the pull-up control code PUCD.
The D-flipflop 563 may include a data terminal D connected to the output terminal Q of the D-flipflop 562, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD3 of the pull-up control code PUCD. The D-flipflop 564 may include a data terminal D connected to the output terminal Q of the D-flipflop 563, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD4 of the pull-up control code PUCD.
The D-flipflop 565 may include a data terminal D connected to the output terminal Q of the D-flipflop 564, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD5 of the pull-up control code PUCD. The D-flipflop 566 may include a data terminal D connected to the output terminal Q of the D-flipflop 565, a clock terminal CK receiving the clock signal HCLK and an output terminal Q outputting a bit PUCD6 of the pull-up control code PUCD.
The D-flipflop 561 from among the second group of D-flipflops 561, 562, 563, 564, 565 and 566 may output a first bit PUCD1 of the pull-up control code PUCD at the output terminal Q based in the clock signal HCLK and the most significant summed signal SUM8, and each of rest D-flipflops 562, 563, 564, 565 and 566 may have the data terminal D connected to the output terminal Q of a previous D-flipflop and may output corresponding one of the bits PUCD2, PUCD3, PUCD4, PUCD5 and PUCD6 of the pull-up control code PUCD.
The pull-up code generator 480b in
When the reference voltage generator 420 in
A configuration of the pull-down code generator 480_1 may be substantially the same as a configuration of the pull-up code generator 480b of
Although
In
Referring to
The memory cell array 710 may include first through sixteenth bank arrays 710a˜710p. The row decoder 660 may include first through sixteenth row decoders 660a˜660p respectively coupled to the first through sixteenth bank arrays 710a˜710p. The column decoder 670 may include first through sixteenth column decoders 670a˜670p respectively coupled to the first through sixteenth bank arrays 710a˜710p. The sense amplifier unit 685 may include first through sixteenth sense amplifiers 685a˜685p respectively coupled to the first through sixteenth bank arrays 710a˜710p. The first through sixteenth bank arrays 710a˜710p, the first through sixteenth row decoders 660a˜660p, the first through sixteenth column decoders 670a˜670p, and first through sixteenth sense amplifiers 685a˜685p may form first through sixteenth banks.
Each of the first through eighth bank arrays 710a˜710h may include a plurality of memory cells MC, formed at intersections of a plurality of word-lines WL and a plurality of bit-line BTL.
The address register 620 may receive the address ADDR including a bank address BANK_ADDR, a row address ROW_ADDR, and a column address COL_ADDR from the memory controller 30. The address register 620 may provide the received bank address BANK_ADDR to the bank control logic 630, provide the received row address ROW_ADDR to the row address multiplexer 640, and provide the received column address COL_ADDR to the column address latch 650.
The bank control logic 630 may generate bank control signals in response to the bank address BANK_ADDR. One of the first through sixteenth row decoders 660a˜660p corresponding to the bank address BANK_ADDR may be activated in response to the bank control signals, and one of the first through sixteenth column decoders 670a˜670p corresponding to the bank address BANK_ADDR may be activated in response to the bank control signals.
The row address multiplexer 640 may receive the row address ROW_ADDR from the address register 620, and may receive a refresh row address REF_ADDR from the refresh counter 645. The row address multiplexer 640 may selectively output one of the row address ROW_ADDR and the refresh row address REF_ADDR as a row address RA. The row address RA that is output from the row address multiplexer 640 may be applied to the first through sixteenth row decoders 660a˜660p.
The refresh counter 645 may sequentially increase or decrease the refresh row address REF_ADDR under control of the control logic circuit 610.
The activated one of the first through sixteenth row decoders 660a˜660p may decode the row address RA that is output from the row address multiplexer 640, and may activate a word-line corresponding to the row address RA. For example, the activated bank row decoder may apply a word-line driving voltage to the word-line corresponding to the row address RA.
The column address latch 650 may receive the column address COL_ADDR from the address register 620, and may temporarily store the received column address COL_ADDR. In example implementations, in a burst mode, the column address latch 650 may generate column addresses COL_ADDR′ that increment from the received column address COL_ADDR. The column address latch 650 may apply the temporarily stored or generated column address COL_ADDR′ to the first through sixteenth column decoders 670a˜670p.
The activated one of the first through sixteenth column decoders 670a˜670p may decode the column address COL_ADDR′ that is output from the column address latch 650, and may control the I/O gating circuit 690 to output data corresponding to the column address COL_ADDR.
The I/O gating circuit 690 may include circuitry for gating input/output data. The I/O gating circuit 690 may further include read data latches for storing data that is output from the first through sixteenth bank arrays 710a˜710p, and write drivers for writing data to the first through sixteenth bank arrays 710a˜710p.
A codeword CW that is read from one bank array of the first through sixteenth bank arrays 710a˜710p may be sensed by a sense amplifier coupled to the one bank array from which the data is to be read, and may be stored in the read data latches. The codeword CW stored in the read data latches may be provided to the ECC engine 790. The ECC engine 790 may perform an ECC decoding on the codeword CW to provide the data DTA to the data I/O circuit 720. The data I/O circuit 720 may convert the data DTA to the data signal DQ and may transmit the data signal DQ to the memory controller 30.
The data signal DQ to be written in one bank array of the first through sixteenth bank arrays 710a˜710p may be provided to the data I/O circuit 720 from the memory controller 30. The data I/O circuit 720 may convert the data signal DQ to the data DTA and provide the data DTA to the ECC engine 790. The ECC engine 790 may perform an ECC encoding on the data DTA to generate parity bits and the ECC engine 790 may provide the data DTA and the parity bits to the I/O gating circuit 690. The I/O gating circuit 690 may write the data DTA and the parity bits in a sub-page in one bank array through the write drivers.
The data I/O circuit 720 may drive bits of the data DTA based on a pull-up control code PUCD1 and a pull-down control code PDCD1 from the impedance calibration circuit 400a to generate the data signal DQ having a target VOH level and provide the data signal DQ to the memory controller 30 through a data I/O pad 602.
The ECC engine 790 may perform an ECC encoding and an ECC decoding on the data DTA based on a second control signal CTL2 from the control logic circuit 610.
The impedance calibration circuit 400a may be connected to the external resistor RZQ through an impedance (ZQ) pad 601a and the external resistor RZQ may be coupled to the power supply voltage VCCQ.
The impedance calibration circuit 400a may perform a first impedance calibration to generate a pull-up control code PUCD1 and a pull-down control code PDCD1 during an impedance calibration interval, in response to a mode register set signal MRS or an impedance calibration command ZQ_CAL and may provide the pull-up control code PUCD1 and a pull-down control code PDCD1 to a data output circuit in the data I/O circuit 720.
The impedance calibration circuit 400a, in response to the impedance calibration command ZQ_CAL, may perform the impedance calibration operation by generating a first reference voltage code when a voltage level of a selected reference voltage becomes the same as a first voltage, which is based on an initial pull-up control code, of a first node coupled to the impedance pad 601 by comparing the first voltage with the selected reference voltage, generating the pull-up control code PUCD1 for driving the first node based on the first reference voltage code, generating a second reference voltage code when the voltage level of the selected reference voltage becomes the same as a second voltage, which is based on the pull-up control code PUCD1, of a second node by comparing the second voltage with the selected reference voltage, and generating the pull-down control code PDCD1 for driving the second node based on the second reference voltage code.
The control logic circuit 610 may control operations of the memory die 200a_1. For example, the control logic circuit 610 may generate control signals for the memory die 200a_1 in order to perform a write operation, a read operation or an impedance calibration operation. The control logic circuit 610 may include a command decoder 611 that decodes the command CMD received from the memory controller 30, and may include a mode register 612 that sets an operation mode of the memory die 200a_1.
The command decoder 611 may generate the control signals corresponding to the command CMD by decoding a write enable signal, a row address strobe signal, a column address strobe signal, a chip select signal, etc. The control logic circuit 610 may generate a first control signal CTL1 to control the I/O gating circuit 690, may generate the second control signal CTL2 to control the ECC engine 790 and may generate the mode register set signal MRS to control the impedance calibration circuit 400a.
Referring to
The word-lines WL0˜WLm-1 coupled to the plurality of memory cells MCs may be referred to as rows of the first bank array 710a and the bit-lines BTL0˜BTLn-1 coupled to the plurality of memory cells MCs may be referred to as columns of the first bank array 710a.
Referring to
The pull-down driver 411a may be connected between a first node N11a coupled to the impedance pad 601 and the ground voltage VSS, may drive the first node N11a with a first voltage VPD based on a preset initial pull-down control code. The impedance pad 601 may be connected to the external resistor RZQ and the external resistor RZQ may be connected to the power supply voltage VCCQ.
The reference voltage generator 420a may generate a plurality of reference voltages VREFs and may provide the plurality of reference voltages VREFs to the control/code generation circuit 450a.
The control/code generation circuit 450a may provide a selected reference voltage VERF_S to the first comparator circuit 430a and to the second comparator circuit 440a by selecting at least a portion from the plurality of reference voltages VREFs.
The first comparator circuit 430a may generate a first comparison signal CS1a by comparing the first voltage VPD at the first node N11a with the selected reference voltage VREF_S and may provide the first comparison signal CS1a to the control/code generation circuit 450a.
The control/code generation circuit 450a may generate a first reference voltage code when a voltage level of the selected reference voltage VREF_S becomes the same as the first voltage VPD based on the first comparison signal CS1a, may generate the pull-down control code PDCD1 based on the first reference voltage code, and may provide the pull-down control code PDCD1 to the pull-down driver 411a and the replica pull-down driver 415a.
The replica pull-down driver 415a may be connected between a second node N12a and the ground voltage VSS and may drive the second node N12a with a second voltage VPU based on the pull-down control code PUCD1.
The second comparator circuit 440a may generate a second comparison signal CS2a by comparing the second voltage VPU at the second node N12a with the selected reference voltage VREF_S and may provide the second comparison signal CS2a to the control/code generation circuit 450a.
The control/code generation circuit 450a may generate a second reference voltage code when a voltage level of the selected reference voltage VREF_S becomes the same as the second voltage VPU based on the second comparison signal CS2a, may generate the pull-up control code PUCD1 based on the second reference voltage code, and may provide the pull-up control code PUCD1 to the pull-up driver 413a.
The pull-up driver 413 may drive the second node N12a based on the pull-up control code PUCD1.
The control/code generation circuit 450a may provide the pull-up control code PUCD1 and the pull-down control code PDCD1 to the output circuit 340 in
The control/code generation circuit 450a and the first comparator circuit 430a may constitute a first loop LOOP11, may generate the first reference voltage code when the voltage level of the selected reference voltage VREF_S becomes the same as the first voltage VPD, and may generate the pull-down control code PDCD1 based on the first reference voltage code. In addition, the control/code generation circuit 450a and the second comparator circuit 440a may constitute a second loop LOOP21, may generate the second reference voltage code when the voltage level of the selected reference voltage VREF_S becomes the same as the second voltage VPU, and may generate the pull-up control code PUCD1 based on the second reference voltage code.
Although, an impedance calibration circuit including the calibration circuit 410a is not shown, the impedance calibration circuit including the calibration circuit 410a may further include the calibration controller 405 and the oscillator 407 in
The conventional impedance calibration circuit generates a pull-down control code through a first loop including the pull-down driver 411a and the first node N11a and generates a pull-up control code through a second loop including the second node N12a and the pull-up driver 413a. The operating speed of an impedance calibration circuit is determined by an RC load of the first node N11a (i.e., ZQ node) and by an RC load of the second node N12a. Because, the first node N11a included in the first loop is coupled to an impedance pad connected to the external resistor RZQ in the conventional impedance calibration circuit, the RC load of the first node N11a increases and thus, the operating speed of the conventional impedance calibration circuit decreases. In addition, the RC load of the first node N11a increases as a number of the memory dies increases.
However, in the calibration circuit 410a, because the first loop LOOP11 does not include the first node N11a and the second loop LOOP21 does not include the second node N12a, no RC load is associated with an impedance calibration operation. Therefore, the operating speed of the impedance calibration circuit does not decrease even when a number of the memory dies increases.
Each of the reference voltage generator 420a, the first comparator circuit 430a, the second comparator circuit 440a and the control/code generation circuit 450a may have a same or similar configuration of each of the reference voltage generator 420, the first comparator circuit 430, the second comparator circuit 440 and the control/code generation circuit 450 described with reference to
Referring to
Initial pull-up control code of the pull-up driver 411 is set to ‘100000’ (operation S130). The first node N11 is driven based on the initial pull-up control code, the control/code generation circuit 450 calculates (generates) a first reference voltage code VREF PU CODE (i.e., RVPUC) based on comparing the first voltage VPU at the first node N11 with the selected reference voltage VREF_S (operation S200). The control/code generation circuit 450 generates the pull-up control code PUCD based on the first reference voltage code VREF PU CODE (operation S310).
The control/code generation circuit 450 inputs the pull-up control code PUCD to the replica pull-up driver 413 (operation S330). The second node N12 is driven based on the pull-up control code PUCD, the control/code generation circuit 450 calculates (generates) a second reference voltage code VREF PD CODE (i.e., RVPDC) based on comparing the second voltage VPD at the second node N12 with the selected reference voltage VREF_S (operation S400). The control/code generation circuit 450 generates the pull-down control code PDCD based on the second reference voltage code VREF PD CODE (operation S510). The control/code generation circuit 450 inputs the pull-up control code PUCD and the pull-down control code PDCD to the output driver 360 (operation S530).
Referring to
Referring to
Referring to
A through-silicon via (TSV) (not shown), a bonding wire (not shown), a bump (not shown), or a solder ball 820 may be used to electrically connect the memory dies 830, 840, 850 and 860 with one other.
Each of the memory dies 830, 840, 850 and 860 may employ an above-described impedance calibration circuit. The master die 830 may be connected to the slave die 840 through a wire 871, may be connected to the slave die 850 through a wire 872 and may be connected to the slave die 860 through a wire 873.
Referring to
The plurality of memory dies 920-1 to 920-s may be stacked on the buffer die 910, and may convey data through a plurality of through silicon via (TSV) lines.
Each of the memory dies 920-1 to 920-s may include cell core 921 to store data and a cell core ECC engine 923 to generate transmission parity bits (e.g., transmission parity data) based on transmission data to be sent to the at least one buffer die 910. The cell core 921 may include a plurality of memory cells having DRAM cell structure.
The buffer die 910 may include a via ECC engine 912, which may correct a transmission error using the transmission parity bits when a transmission error is detected from the transmission data received through the TSV lines, and generate error-corrected data.
The buffer die 910 may further include an impedance calibration circuit (ZQCC) 914 and a data I/O circuit 916. The impedance calibration circuit 914 may be connected to an external resistor RZQ coupled to the power supply voltage VCCQ.
The impedance calibration circuit 914 may employ an impedance calibration circuit including the calibration circuit 410a of
The semiconductor memory device 900 may be, e.g., a stack chip type memory device or a stacked memory device that conveys data and control signals through the TSV lines. The TSV lines may be also called ‘through electrodes’.
The cell core ECC engine 923 may perform error correction on data that is output from the memory die 920-s before the transmission data is sent.
A transmission error that occurs at the transmission data may be due to, e.g., noise that occurs at the TSV lines. Since a data failure due to the noise occurring at the TSV lines may be distinguishable from a data failure due to a false operation of the memory die, it may be regarded as soft data failure (or a soft error). The soft data failure may be generated due to a transmission failure on a transmission path and may be detected and remedied by an ECC operation.
A data TSV line group 932, which is formed at one memory die 920-p, may include TSV lines L1, L2 to Lt, and a parity TSV line group 934 may include TSV lines L10 to Ls.
The TSV lines L1, L2 to Lt of the data TSV line group 932 and the parity TSV lines L10 to Ls of the parity TSV line group 934 may be connected to micro bumps MCB, which are correspondingly formed among the memory dies 920-1 to 920-s.
The semiconductor memory device 900 may have a three-dimensional (3D) chip structure or a 2.5D chip structure to communicate with the host through a data bus B10. The buffer die 910 may be connected with the external memory controller through the data bus B10.
The cell core ECC engine 922 may output transmission parity bits as well as the transmission data through the parity TSV line group 934 and the data TSV line group 932 respectively. The output transmission data may be data that is error-corrected by the cell core ECC engine 923.
The via ECC engine 912 may determine whether a transmission error occurs at the transmission data received through the data TSV line group 932, based on the transmission parity bits received through the parity TSV line group 934. When a transmission error is detected, the via ECC engine 912 may correct the transmission error on the transmission data using the transmission parity bits. When the transmission error is uncorrectable, the via ECC engine 912 may output information indicating occurrence of an uncorrectable data error. When an error is detected from read data in a high bandwidth memory (HBM) or the stacked memory structure, the error may be an error occurring due to noise while data is transmitted through the TSV.
According to example implementations, as illustrated in
Referring to
The stacked memory devices 1010 and the GPU 1020 may be mounted on an interposer 1030, and the interposer on which the stacked memory device 1010 and the GPU 1020 are mounted may be mounted on a package substrate 1040 mounted on solder balls 1050. The GPU 1020 may correspond to a semiconductor device which may perform a memory control function, and for example, the GPU 1020 may be implemented as an application processor (AP). The GPU 1020 may include a memory controller CTRL 1021.
The stacked memory device 1010 may be implemented in various forms, and the stacked memory device 1010 may be a memory device in a high bandwidth memory (HBM) form in which a plurality of layers are stacked. Accordingly, the stacked memory device 1010 may include a buffer die and a plurality of memory dies and each of the plurality of memory dies include a cell core and a cell core ECC engine.
The plurality of stacked memory devices 1010 may be mounted on the interposer 1030, and the GPU 1020 may communicate with the plurality of stacked memory devices 1010. For example, each of the stacked memory devices 1010 and the GPU 1020 may include a physical region, and communication may be performed between the stacked memory devices 1010 and the GPU 1020 through the physical regions. Meanwhile, when the stacked memory device 1010 includes a direct access region, a test signal may be provided into the stacked memory device 1010 through conductive means (e.g., solder balls 1050) mounted under package substrate 1040 and the direct access region.
Referring to
The semiconductor device 3100 may be or may include a non-volatile memory device, for example, a nonvolatile memory device that is illustrated with reference to
In the second structure 3100S, each of the memory cell strings CSTR may include lower transistors LT1 and LT2 adjacent to the common source line CSL, upper transistors UT1 and UT2 adjacent to the bit-line BL, and a plurality of memory cell transistors MCT between the lower transistors LT1 and LT2 and the upper transistors UT1 and UT2. The number of the lower transistors LT1 and LT2 and the number of the upper transistors UT1 and UT2 may be varied in accordance with example implementations.
In some example implementations, the upper transistors UT1 and UT2 may include string selection transistors, and the lower transistors LT1 and LT2 may include ground selection transistors. The lower gate lines LL1 and LL2 may be gate electrodes of the lower transistors LT1 and LT2, respectively. The word lines WL may be gate electrodes of the memory cell transistors MCT, respectively, and the upper gate lines UL1 and UL2 may be gate electrodes of the upper transistors UT1 and UT2, respectively.
In some example implementations, the lower transistors LT1 and LT2 may include a lower erase control transistor LT1 and a ground selection transistor LT2 that may be connected with each other in series. The upper transistors UT1 and UT2 may include a string selection transistor UT1 and an upper erase control transistor UT2. At least one of the lower erase control transistor LT1 and the upper erase control transistor UT2 may be used in an erase operation for erasing data stored in the memory cell transistors MCT through gate induced drain leakage (GIDL) phenomenon.
The common source line CSL, the first and second lower gate lines LL1 and LL2, the word lines WL, and the first and second upper gate lines UL1 and UL2 may be electrically connected to the decoder circuit 3110 through first connection wirings 3115 extending to the second structure 3110S from the first structure 3100F. The bit-lines BL may be electrically connected to the page buffer circuit 3120 through second connection wirings 3125 extending to the second structure 3100S from the first structure 3100F.
In the first structure 3100F, the decoder circuit 3110 and the page buffer circuit 3120 may perform a control operation for at least one selected memory cell transistor among the plurality of memory cell transistors MCT. The decoder circuit 3110 and the page buffer circuit 3120 may be controlled by the logic circuit 3130. The semiconductor device 3100 may communicate with the controller 3200 through an input/output pad 3101 electrically connected to the logic circuit 3130. The input/output pad 3101 may be electrically connected to the logic circuit 3130 through an input/output connection wiring 3135 extending to the second structure 3100S from the first structure 3100F.
The controller 3200 may include a processor 3210, a NAND controller 3220, and a host interface (I/F) 3230. The electronic system 3000 may include a plurality of semiconductor devices 3100, and in this case, the controller 3200 may control the plurality of semiconductor devices 3100.
The processor 3210 may control operations of the electronic system 3000 including the controller 3200. The processor 3210 may be operated by firmware, and may control the NAND controller 3220 to access the semiconductor device 3100. The NAND controller 3220 may include a NAND interface 3221 for communicating with the semiconductor device 3100. Through the NAND interface 3221, control commands for controlling the semiconductor device 3100, data to be written in the memory cell transistors MCT of the semiconductor device 3100, data to be read from the memory cell transistors MCT of the semiconductor device 3100, etc., may be transferred. The host interface 3230 may provide communication between the electronic system 3000 and an outside host. When a control command is received from the outside host through the host interface 3230, the processor 3210 may control the semiconductor device 3100 in response to the control command.
Example implementations may be applied to systems using semiconductor memory devices that include multi-dies. For example, implementations may be applied to systems such as be a smart phone, a navigation system, a notebook computer, a desk top computer, and a game console that use the semiconductor memory device as a working memory.
While this disclosure contains many specific implementation details, these should not be construed as limitations on the scope of what may be claimed. Certain features that are described in this disclosure in the context of separate implementations can also be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation can also be implemented in multiple implementations separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations, one or more features from a combination can in some cases be excised from the combination, and the combination may be directed to a subcombination or variation of a subcombination.
While the present disclosure has been shown and described with reference to example implementations thereof, it will be apparent to those of ordinary skill in the art that many modifications in form and details may be made thereto without materially departing from the spirit and scope of the present disclosure as set forth by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2024-0008511 | Jan 2024 | KR | national |