US20170054580A1 - Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding - Google Patents
Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding Download PDFInfo
- Publication number
- US20170054580A1 US20170054580A1 US14/831,517 US201514831517A US2017054580A1 US 20170054580 A1 US20170054580 A1 US 20170054580A1 US 201514831517 A US201514831517 A US 201514831517A US 2017054580 A1 US2017054580 A1 US 2017054580A1
- Authority
- US
- United States
- Prior art keywords
- data
- bits
- rate
- encoded
- voltage levels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4917—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/02—Amplitude-modulated carrier systems, e.g. using on-off keying; Single sideband or vestigial sideband modulation
- H04L27/04—Modulator circuits; Transmitter circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/02—Amplitude-modulated carrier systems, e.g. using on-off keying; Single sideband or vestigial sideband modulation
- H04L27/06—Demodulator circuits; Receiver circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/02—Amplitude-modulated carrier systems, e.g. using on-off keying; Single sideband or vestigial sideband modulation
Definitions
- Many electronics systems include multiple devices communicating with one another via a connection, such as conductive traces on a printed circuit board on which the devices are mounted or conductive traces connecting different areas of an integrated circuit on a single die. While tire various devices included in an electronics system may be internally operating at different speeds, the communications that occur between the devices may be operating based on a system clock. This system clock may determine input/output (I/O) speeds of the host system and may also be limited by the slowest device in the system. For some devices, a logic device for example, a fast system clock may pose no problems because the internal components of the device, e.g., transistors, may operate based on a higher clock rate than the system clock. For other devices, however, a system clock that begins to reach their maximum internal operating speeds begins to pose problems for I/O operations and/or general functionality.
- I/O input/output
- the differences between the infernal operating speeds of the various devices of the electronics system may be influenced by their respective fabrication processes.
- a logic fabrication process used to fabricate logic devices e.g., systems on a chip, processors, controllers, etc.
- the logic fabrication process optimized for operating speeds may thus produce transistors and circuits that are capable of performing at high clock rates.
- the fabrication process therefore provides fast transistors that may display fast switching times.
- the transistors may also be more sensitive to input voltage changes and may further be able to distinguish between a larger variety of input voltages. Accordingly, devices built using logic fabrication processes may be able to provide data at high data rates and be able to distinguish between different inputs at varying voltage levels.
- Other devices may have comparatively slower transistors, which may result in comparatively slower internal operating rates and I/O rates.
- Memories for example, may be fabricated using a memory fabrication process that is optimized for data retention, not transistor speed. Consequently, the transistors built on a memory fabrication process may require larger voltages for enabling/disabling transistors and may drive signals at comparatively slower data rates, for example.
- the input circuits may require input signals of larger voltage swings compared to logic devices so that the inputs are reliably detected.
- the output circuits may drive large voltage swing signals at comparatively slow rates. As a consequence, a maximum I/O rate the output circuits are capable of reaching may be limited due to the transistor capabilities.
- FIG. 1 is a block diagram of an apparatus according to an embodiment of the present disclosure.
- FIG. 2 is a block diagram of an apparatus according to an embodiment of the present disclosure.
- FIG. 4 is a memory according to an embodiment of the present disclosure.
- various devices e.g., integrated circuits such as logic devices, memory controllers, systems on a chip, processors, memories, etc.
- internal operation rates which may be based on internal clock rates
- data rates the rate at which the device may be able to receive and/or provide data externally
- clock rate may be used to refer to a clock rate at which the devices may operate
- data rate may be used to refer to a rate at which data is provided, e.g., transmitted, by a device.
- devices may operate based on different clock rates. For example, an I/O process may be based on a different clock rate than other internal processes.
- the various clock rates clocking operation may all be based on a system clock.
- the clock rate may be given in units of gigahertz (GHz), while the data rate may be given, in units of gigabits per second (Gb/s).
- Gb/s gigabits per second
- the data rate and the clock rate may be distinguished from one another, the data rate may be derived from a clock rate used for clocking data transmission.
- a clock rate of 2.5 GHz may correspond to a data rate of 5.0 Gb/s for systems having a two times difference between clock rate and data rate.
- Other systems may have a different factor between clock and data rates, which are also contemplated by the present disclosure.
- These various operating clock rates may limit the highest operating rate at which the electronic system may operate.
- the internal clock rates at which the slowest device may operate may also affect the rate at which data may be transferred (e.g., transmitted, provided, sent, etc.) by that device, which may be due to the clock rate determining how fast data may be transferred.
- the variation in clock rates may be a byproduct of associated fabrication processes. For example, a memory controller or system on a chip may be fabricated with a logic fabrication process, while a memory may be fabricated on a memory fabrication process.
- a memory controller for example, which may be one possible interface between memory and other devices of an electronic system, such as a processor, may be fabricated using a logic fabrication process.
- the other devices may interact directly with the memory without the memory controller, and are further capable of implementing the asymmetric, bi-directional signaling incorporating multi-bit encoding of the present disclosure.
- the composite performance of any interface limited by asymmetric component-level performance at either end may be maximized through application of the present disclosure.
- the logic fabrication process which may be optimized for fast operating rates, may produce transistors that may be characterized as last so that they operate at higher operating rates, e.g., can switch at fast rates.
- a memory whether volatile or nonvolatile, may be fabricated using a fabrication process that is optimized for data retention, which may not produce transistors that are as fast or as sensitive as transistors fabricated by a logic fabrication process.
- I/O circuits of the memory e.g., transmitters and receivers, may not be able to reliably provide signals at fast clock rates, which may limit their maximum achievable data rate for standard or differential data transmission.
- differential data transmission may refer to transmission of true and complementary data signals. This limitation may be due to the limited switching rates of the transistors included in the transmitter, which may limit the data rates memory fabrication-based transmitters may be able to achieve.
- a memory controller may be able to provide data, to a memory at a faster data rate, 10 Gb/s for example, a memory may not be able to match the same data rate in response. Such a scenario may be undesirable due to the asymmetric data rates, which may affect system bandwidth.
- symmetric data rates may be provided by using multi-bit encoding on the memory side of the transmission, while using differential data transmission on the controller side of the transmission.
- the multi-bit encoding may allow multiple bits to be transmitted in a single transmission at a slower clock rate, which may allow the memory to operate at a slower clock rate while still providing symmetric data rates.
- the asymmetric, bi-directional signaling incorporating multi-bit encoding of the present disclosure may be discussed with reference to a memory and a memory controller.
- the discussion of the memory controller however, is used for ease of discussion and is not limiting.
- the asymmetric, bi-directional signaling incorporating multi-bit encoding may also occur between a memory and any other type of device capable of direct interaction with a memory or between any combinations of devices whose intercommunication is limited by the independent performance of at least one side of the intercommunication link.
- FIG. 1 is a block diagram of an apparatus 100 (e.g., an electronic device, a smartphone, a computing device, a wearable electronic device, etc.) according to an embodiment of the present disclosure.
- the apparatus 100 may include a controller 102 (e.g., memory controller or a system oil a chip) and a memory 104 .
- the controller 102 and the memory 104 may be coupled to each other by a command and address bus 106 , and a data bus 108 , which may be bi-directional.
- the memory 104 may be a volatile memory, such as a synchronous double data rate random access memory (SDDRAM), synchronous DRAM, DDRAM, etc., and in other examples, the memory 104 may be a nonvolatile memory, such as NAND flash, NOR flash, phase change memory, etc.
- the memory 104 may be configured to store information and perform memory operations, e.g., writes and reads, responsive to memory commands, in response to write commands, the controller may provide data to the memory 104 using differential data transmission, e.g., transmitting a true value and a complementary value for each bit.
- the data transmission from the controller is not liming.
- the controller may provide data using binary, single-ended data signaling.
- the memory 104 may provide data to the controller 102 using multi-bit encoding.
- the encoding may be used to encode multiple bits into a single data signal where a voltage level of the transmission during the data period is indicative of the corresponding bit values encoded into the single transmission.
- data signal may mean a single instance of data transmission based on a rising or falling edge of a clock signal. Additionally, data signals comprising the encoded bits may also be referred to as symbols.
- a single data signal may be the transmission/receipt of a bit of data at a true value and its complement at a rising or falling edge of the CLK 110
- a data period for single-ended signaling may be the transmission/receipt of one instance of data at a rising or falling edge of the CLK 110
- a single data signal may occur on both the rising and falling edges of the CLK 110 .
- the data bus 108 may include a plurality of channels for data to be transferred (e.g., provided, driven, transmitted, etc.) between-the controller 102 and the memory 104 .
- Each of the plurality of channels may be used to provide data signals, which may be differential data or data signals that include a plurality of bits encoded into a single transmission. Since both the controller 102 and the memory 104 may transmit and receive data, each channel may include both a transmitter and a receiver, such that a channel may be coupled to corresponding transmitters and corresponding receivers included in the controller 102 and the memory 104 .
- Each transmitter and receiver may operate in accordance with a clock signal, such as provided by clock 110 , or a derivative of the clock signal.
- the plurality of conduction channels of the data bus 108 may be associated in pairs so that data is transferred using differential signal transmission, such that for each data bit a true value and a complementary value are transferred between the devices.
- the plurality of channels of the data bus 10 B may be used in a standard transmission scheme, e.g., single-ended transmission, such that only true data values are transferred. For example, using single-ended transmission, n bits of data may be simultaneously transmitted over n channels, whereas in the differential scheme, n/2 bits may be simultaneously transmitted over the n channels.
- a third example may include serially transmitting data over the data bus 108 , which may reduce the number of channels, but both devices may require serializes and deserializers for this example.
- the controller 102 may provide memory commands and corresponding addresses via the command and address (C/A) bus 106 .
- the C/A bus 106 may be a common bus or it may be two separate busses, e.g., a command bus and an address bus. Commands and addresses may be provided by the controller 102 either synchronously or asynchronously. Data may be provided between the controller 102 and the memory 104 via the data bus 108 , with the data also being provided either synchronously or asynchronously.
- the controller 102 may also provide a clock signal to the memory 104 separately from the data and the commands/addresses as indicated by the dashed line 110 .
- a desired data transfer rate may be determined by the lowest maximum operating frequency of the included devices. If the lowest maximum operating frequency is limiting the data transfer rate, however, asymmetric data signaling may be adopted to meet higher data rates and to further provide symmetric data rates even at higher data rates.
- Asymmetric data signaling may include receiving data by differential signal transmission and providing encoded data in a single-ended format. For example, if the controller 102 is able to operate at a data rate of 10 Gb/s using differential signal transmission, then the memory 104 may use multi-bit encoding combined with single-ended signaling to meet the 10 Gb/s data rate even though the memory 104 may be operating at a slower clock rate.
- An example multi-bit encoding technique may be multi-level pulse amplitude modulation (PAM), which uses a plurality of voltage levels to indicate logic states of a plurality of bits.
- the memory 104 may use one of the plurality of voltage levels to indicate a combination of the encoded bits, where each of the plurality of voltage levels may be an analog voltage level between two supply voltages, for example.
- the controller 102 may compare a received encoded data signal to a reference voltage level to determine the logic states of each of the encoded bits. For example, if four-level PAM is implemented, then two bits of data may be encoded into one of four voltage levels.
- a “10,” which may be a combination of a bit at a high logic state, e.g., a “1,” and a bit at a low logic state, e.g., a “0,” may be encoded into a voltage level of two-thirds of a supply value, e.g., 2 ⁇ 3 Vcc.
- the encoded value may then be transmitted during a single data period using one signal.
- the multi-bit encoding may be implemented with multi-phase encoding and/or multi-level encoding.
- the memory 104 may receive a write command and a memory address on the C/A bus 106 along with the data to be stored at that memory address, which may be provided on the data bus 108 .
- the data provided by the controller 102 may be provided using a differential signal transmission, for example.
- the differential data signals may be encoded to include multiple bits, while m other embodiments the differential data signals may be un-encoded, e.g., not encoded.
- the controller 102 may be transmitting the write data at 10 Gb/s, for example.
- Read commands received by the memory 104 may be accompanied by a memory address.
- the memory 104 may provide the requested data to the controller 102 via the data bus 108 .
- the data provided by the memory 104 may be provided using single-ended transmission.
- the data provided by the memory 104 may be encoded with multiple bits using a multi-bit encoding scheme, four-level PAM for example.
- the memory 104 may receive the commands, addresses, and data from the memory controller and perform memory operations in response. For example, when a write command is received, the memory 104 may store data received over the data bus 108 at a received memory array address. As noted, the data may be received by a differential signal transmission. In response to read commands, the memory 104 may provide data to the memory controller 102 via the data bus 108 . Similarly to above, the memory 104 may provide encoded data to the memory controller 102 . The encoded data may represent a plurality of bits encoded into a single data signal. For example, the memory 104 may encode two bits of data into a corresponding voltage level, which may be indicative of the logic states of the two bits. The encoded voltage level may then be transmitted to the controller 102 .
- an example encoding method may be four-PAM, which may result in two bits being encoded into one of four voltage levels corresponding to a combination of logic levels for the two bits. For example, “00” may be encoded into a data transmission signal of zero volts, a “01” may be encoded into a signal of 1 ⁇ 3 VDD, where VDD may be a supply voltage.
- the other two possible bit combinations, “10” and “11,” may be, for example, encoded into signals associated with voltage levels of 2 ⁇ 3 VDD and VDD, respectively. While the voltage levels are disclosed as having a uniform separation based on VDD, the separation may not be uniform in some embodiments.
- the voltage levels that designate the different bit combinations may be based off of a current and not a voltage, where the current may be determined by receiver and transmitter drive current combinations.
- the examples provided are for illustrative purposes and are a non-limiting aspect of the present disclosure.
- any multi-level and/or multi-phase encoding technique may be used to encode a plurality of bits into a single signal for a data period.
- the number of bits encoded and the number of potential voltage levels may be related. For example, two bits may be encoded into four voltage levels, three bits into 8 voltage levels, and so on. Additionally, the number of bits encoded into the signal may also affect the data rate and the clock rate used to encode the bits and/or provide the signal.
- an encoder circuit used to encode the two bits into one of the four voltage levels may be operating at one-fourth a system clock rate, whereas a driver providing the signal of the encoded data may be operating at one-half the system clock. For example, if the system clock is 5 GHz, an encoder circuit may operate at 1.25 GHz and the driver circuit may operate at 1.25 GHz.
- transmitting two bits encoded into a signal at 1.25 GHz may provide a data rate per channel of 5 Gb/s, which may provide an effective data rate of 10 Gb/s, e.g., 2 ⁇ 5 Gb/s, for a pair of channels when the data rate of the pair of channels is summed.
- a pair of channels may correspond to two channels used for differential data transmission. Accordingly, the bandwidth in both directions between the controller 102 and the memory 104 may be symmetric with a controller providing data at a data rate of 10 Gb/s.
- FIG. 2 is a block diagram of an apparatus 200 according to an embodiment of the present disclosure.
- the apparatus 200 may include a controller 202 and a memory 204 .
- the apparatus 200 may be an example of the apparatus 100 of FIG. 1 .
- the memory 204 may receive commands and addresses from the controller 202 via a CMD/ADDR (C/A) bus 206 .
- the controller 202 may also provide a clock signal 210 .
- Data may be transferred between the controller 202 and the memory 204 over the data bus 208 .
- the data bus 208 may include a plurality of channels 208 A-N where N represents any non-zero whole number, not ail of which are shown in FIG. 2 .
- the data provided by the controller 202 may be provided by differential signal transmission such that the N channels are used to provide N/2 bits per transmission.
- the memory 204 may encode bits of data using multi-bit encoding and transmit a signal indicative of the encoded bits using single-ended signaling.
- the data bus 208 may be bi-directional and used for either conventional data transmission, e.g., single ended transmission, or differential data transmission, e.g., pairs of channels for true and complementary data bits.
- the N channels of the bus 208 may carry N signals during single-ended transmissions and may carry N/2 bits during differential signal transmissions.
- the controller 202 may transmit data by differential, signal transmission such that D A and /D A are transmitted over channels 208 A and 208 B, respectively, where D A is a true value and /D A is a complementary value.
- the memory 204 may transmit data using single-ended transmissions such that each channel provides a data signal. For example, D 0 may be transmitted over 208 A while D 1 may be transmitted over 208 B. Accordingly, the apparatus 200 may implement asymmetric data transfer. The asymmetry of the data transfer may further be distinguished by the memory 204 encoding multiple bits into a single data transmission.
- the controller 202 may include a receiver for each channel of the data bus 208 and further include a transmitter for each pair of channels of the data bus 208 .
- the controller 202 may include receiver 212 associated with channel 208 A and receiver 214 associated with channel 208 B.
- the controller 202 may include transmitter 216 associated with channels 208 A and 208 B.
- the transmitter 216 may be configured to transmit differential data D A and /D A over channels 208 A and 208 B, respectively.
- the receiver 212 may receive a data signal over channel 208 A, while the receiver 214 may receive a different data signal over channel 208 B. While the transmitter 216 is depicted as a single transmitter, in some embodiments, the transmitter 216 may be divided into two transmitters.
- the transmitters 220 and 222 may be configured to receive a plurality of bits, encode the received bits into one of a plurality of voltage levels based on the logic levels of the bits, and transmit a signal corresponding to the encoded reference voltage level.
- two bits of data may be encoded into one of four voltage levels based on the logic levels of the two bits.
- the resulting voltage level may be indicative of the logic level of the two bits.
- the bit combination of “00” may be encoded into a low voltage value, zero volts for example
- the bit combination of “11” may be encoded into a high voltage value, a supply voltage VDD for example.
- Bit combinations of “01” and “10” may be encoded into voltage values between zero and VDD, such as one-third VDD and two-thirds VDD, respectively.
- the transmitters 220 , 222 may then provide a data signal to a respective channel of the data bus 208 at a respective voltage level.
- the controller may provide, e.g., transmit, differential data across the data bus 208 to the memory 204 .
- the transmitter 216 may receive data D A and /D A , and in response, transmit, e.g., drive, the D A and /D A data signals onto the channels 208 A, B of the data bus 208 , respectively.
- the fractional-rate receiver 218 A may capture, e.g., resolve, the complementary data signals, which are data signals that are complementary to each other, and provide the data to internal components of the memory 204 .
- the data signals may be captured by the fractional-rate receiver 218 A based on a rising or falling edge of the clock signal CLKA. If a subsequent data transmission follows data signals D A and /D A , e.g., a subsequent data period, then the fractional-rate receiver 218 B may capture the subsequent data transmission based on the clock signal CLKB. Subsequent data transmissions may be captured by the fractional-rate receivers 218 C and 218 D in sequence before returning back to 218 A.
- the DATA provided by the fractional-rate receivers 218 A-D may only consist of the true data value. In other embodiments, the fractional-rate receivers 218 A-D may provide both the true and complementary bit values.
- the memory 204 may encode a plurality of bits into a single data signal and transmit the encoded signal during a clock cycle, where the single data signal may be transmitted at one of a plurality of voltage levels.
- the single data signal may be transmitted at one of a plurality of voltage levels.
- two data signals may be transmitted per clock cycle with each data signal including a plurality of encoded bits.
- Each of the plurality of voltage levels may correspond to a different combination of bit logic levels as discussed above.
- the transmitter 220 may receive bits D a and D b , encode the two bits into a corresponding voltage level, and provide data D 0 at that voltage level.
- the voltage level may be indicative of the bits D a and D b .
- the transmitter 222 which receives bits D c and D d , may be configured similarly to encode a plurality of bits into a single data signal and transmit the encoded signal during a data period, where a data period may be one-half a clock cycle for double data rate embodiments.
- the transmitter may encode the bits D c and D d into a corresponding voltage level to be transmitted as data D 1 over the channel 208 B. Encoding the bits D c and D d into data D 1 may, for example, be based on four-PAM encoding.
- the transmitters 220 and 222 may operate in concert to provide respective data signals D 0 and D 1 in unison.
- the controller 202 and the memory 204 transmit data signals based on different clock rates, their effective data rates may equal.
- the memory 104 may transmit data signals at 5 Gb/s over each channel, but since each data-signal may include two bits, for example, the effective data rate of the memory is 10 Gb/s for a pair of channels when their respective data rates are summed.
- the data rate of 5 Gb/s per channel may be clocked by a clock rate of 1.25 GHz, for example.
- the data rates may be matched while the signaling methods, e.g., differential and single-ended, between the controller 202 and the memory 204 may be asymmetrical.
- fractional-rate receivers 218 A-D may also be operating at a slower clock rate than, the system clock. Accordingly, the asymmetric, bi-directional signaling may allow the memory to operate internally at a lower clock rate then the controller 202 , for example.
- FIG. 3 is block diagram of a transmitter 300 according to an embodiment of the present disclosure.
- the transmitter 300 may include an encoder 202 and an output driver 304 .
- the transmitter 300 may receive a plurality of bits, two for example, and encode the plurality of bits into a data signal at a corresponding voltage level, which may then be provided, e.g., transmitted, by a driver circuit.
- the data signal may be encoded to one of a plurality of voltage levels based on the logic levels of each of the plurality of data bits.
- the number of bits encoded into a data signal may be two, as shown in FIG. 3 .
- the encoder 302 may receive two bits D a and D b , and encode the two bits into a data signal at one of four voltage levels.
- the resulting voltage level may be based on the combination of the logic states of bits D a and D b .
- the four voltage levels may be based on the supply voltages of the transmitter 300 . For example, if one supply voltage is ground and a second supply voltage is VDD, then the four voltage levels may be ground, e.g., zero, one-third VCC, two-thirds VDD, and VDD, which would provide four equally spaced voltage levels.
- the value of the voltage levels is a non-limiting aspect of the present disclosure, and may also be based on current levels of the transmitter, for example.
- the encoder 302 may also receive a clock signal CLK 1 , which may be the same as a system dock (not shown) or a derivative of the system clock.
- the rate of the CLK 1 signal may further be based on a target data rate of the transmitter 300 .
- the driver 304 may be a standard driver known in the art and may operate responsive to the clock signal CLK 2 .
- the CLK 2 signal may be the same as the system clock (not shown) and/or the same as CLK 1 .
- the rate of CLK 1 and CLK 2 may be 1.25 GHz.
- CLK 1 and CLK 2 may be different.
- the driver 304 may be coupled to the encoder 302 and configured to provide, e.g., drive, the data signal D 0 onto a data bus, for example. While the encoder 302 and the driver 304 are shown as separate components in FIG. 3 , in some embodiments the encoder 302 and the driver 304 may be combined.
- the encoder 302 may receive two bits D a and D b responsive to CLK 1 .
- the encoder 302 may then encode the two bits into a data signal at one of four voltage values based on the combination of their logic states.
- the encoder 302 may then provide the data signal D 0 to the driver 304 .
- the driver 304 may then provide the signal D 0 onto a data bus (not shown), such as a channel of the data bus 208 of FIG. 2 for example.
- the driver 304 may then provide data signal D 0 responsive to CLK 2 signal.
- the CLK 2 signal may have a clock rate of 1.25 GHz, which may correspond to a data rate of 5 Gb/s, per channel for example.
- each data signal provided by transmitter 300 may include two bits, the effective data rate may be 5 Gb/s, e.g., 2 ⁇ 5 Gb/s, per channel.
- the data rate and clock rate values disclosed are for illustrative purposes only and are a non-limiting aspect of the present disclosure.
- FIG. 4 illustrates a memory 400 according to an embodiment of the present disclosure.
- the memory 400 includes an array 402 of memory cells, which may be, for example, volatile memory cells (e.g., DRAM memory cells, SEAM memory cells), non-volatile memory cells (e.g., flash memory cells), or some other types of memory cells.
- the memory system 400 includes a command decoder 406 that receives memory commands through a command bus 408 and generates corresponding control signals within the memory system 400 to carry out various memory operations.
- the command decoder 406 responds to memory commands applied to the command bus 408 to perform various operations on the memory array 402 .
- the command decoder 406 is used to generate internal control signals to read data from and write data to the memory array 402 .
- Row and column address signals are applied to the memory system 400 through an address bus 420 and provided to an address latch 410 .
- the address latch then outputs a separate column address and a separate row address.
- the row and column addresses are provided by the address latch 410 to a row address decoder 422 and a column address decoder 428 , respectively.
- the column address decoder 428 selects bit lines extending through the array 402 corresponding to respective column addresses.
- the row address decoder 422 is connected to word line driver 424 that activates respective rows of memory cells in the array 402 corresponding to received row addresses.
- the selected data line e.g., a bit line or bit lines
- a received column address are coupled to a read/write circuitry 430 to provide read data to a data output buffer 434 via an input-output data bus 440 .
- Write data are applied to the memory array 402 through a data input buffer 444 and the memory array read/write circuitry 430 .
- the input date buffer 444 may receive data from a memory controller, for example, for storing in the array 402 in response to a write command, for example.
- the input data buffer 444 may include a receiver or a plurality of fractional-rate receivers, such as the fractional-rate receivers 218 A-D of FIG. 2 , and are configured to receive differential data signals.
- the received data may be received over a bi-directional data bus (not shown) that couples the memory 400 to the memory controller.
- the output buffer 434 may provide data stored in the array 402 to the memory controller in response to a read command, for example.
- the output data buffer 434 may include a transmitter, such as the transmitter, which may encoder a plurality of bits into a data signal.
- the transmitter may include an encoder and a signal driver, for example, such as the encoder 302 and driver 304 of FIG. 3 or the transmitter 220 / 222 of FIG. 2 .
- the encoded signals may represent a plurality of bits based on a voltage level of the encoded signal.
- the data may be provided over the bi-directional bus (not shown) that couples the memory 400 to the memory controller.
- the signaling scheme used by a controller is a non-limiting aspect.
- the controller may transmit data using single-ended transmissions, with or without multi-level encoding.
- a controller may combine multi-level encoding with differential signal transmission.
- a memory may combine multi-level encoding with differential transmission.
- Memories in accordance with embodiments of the present invention may be used in any of a variety of electronic devices including, but not limited to, computing systems, electronic storage systems, cameras, phones, wireless devices, displays, chip sets, set top boxes, or gaming systems.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Hardware Design (AREA)
- Dc Digital Transmission (AREA)
- Dram (AREA)
Abstract
Description
- Many electronics systems include multiple devices communicating with one another via a connection, such as conductive traces on a printed circuit board on which the devices are mounted or conductive traces connecting different areas of an integrated circuit on a single die. While tire various devices included in an electronics system may be internally operating at different speeds, the communications that occur between the devices may be operating based on a system clock. This system clock may determine input/output (I/O) speeds of the host system and may also be limited by the slowest device in the system. For some devices, a logic device for example, a fast system clock may pose no problems because the internal components of the device, e.g., transistors, may operate based on a higher clock rate than the system clock. For other devices, however, a system clock that begins to reach their maximum internal operating speeds begins to pose problems for I/O operations and/or general functionality.
- The differences between the infernal operating speeds of the various devices of the electronics system may be influenced by their respective fabrication processes. For example, a logic fabrication process used to fabricate logic devices (e.g., systems on a chip, processors, controllers, etc.) may be optimized for operating speed. The logic fabrication process optimized for operating speeds may thus produce transistors and circuits that are capable of performing at high clock rates. The fabrication process therefore provides fast transistors that may display fast switching times. The transistors may also be more sensitive to input voltage changes and may further be able to distinguish between a larger variety of input voltages. Accordingly, devices built using logic fabrication processes may be able to provide data at high data rates and be able to distinguish between different inputs at varying voltage levels.
- Other devices, on the other hand, may have comparatively slower transistors, which may result in comparatively slower internal operating rates and I/O rates. Memories, for example, may be fabricated using a memory fabrication process that is optimized for data retention, not transistor speed. Consequently, the transistors built on a memory fabrication process may require larger voltages for enabling/disabling transistors and may drive signals at comparatively slower data rates, for example. As such, the input circuits may require input signals of larger voltage swings compared to logic devices so that the inputs are reliably detected. Further, the output circuits may drive large voltage swing signals at comparatively slow rates. As a consequence, a maximum I/O rate the output circuits are capable of reaching may be limited due to the transistor capabilities.
- At higher I/O rates, a memory output circuit may not be able to drive signals accordingly or meet desired data transfer rates. As such, a device receiving outputs from the memory, e.g., a memory controller or a system on a chip, may not receive reliable signals at those higher I/O rates.
-
FIG. 1 is a block diagram of an apparatus according to an embodiment of the present disclosure. -
FIG. 2 is a block diagram of an apparatus according to an embodiment of the present disclosure. -
FIG. 3 is a block diagram of a transmitter according to an embodiment of the present disclosure. -
FIG. 4 is a memory according to an embodiment of the present disclosure. - Apparatuses and methods for asymmetric, bi-directional signaling incorporating multi-bit encoding are disclosed herein. Certain details are set forth below to provide a sufficient understanding of embodiments of the disclosure. However, it will be clear to one having skill in the art that embodiments of the disclosure may be practiced without these particular details. Moreover, the particular embodiments of the present disclosure described herein are provided by way of example and should not be used to limit the scope of the disclosure to these particular embodiments. In other instances, well-known circuits, control signals, timing protocols, and software operations have not been shown in detail in order to avoid unnecessarily obscuring the disclosure.
- As discussed above, various devices (e.g., integrated circuits such as logic devices, memory controllers, systems on a chip, processors, memories, etc.) of an electronic system may perform at varying rates, such as internal operation rates, which may be based on internal clock rates, and data rates (the rate at which the device may be able to receive and/or provide data externally), which may be different. As used herein, clock rate may be used to refer to a clock rate at which the devices may operate, and data rate may be used to refer to a rate at which data is provided, e.g., transmitted, by a device. Additionally, devices may operate based on different clock rates. For example, an I/O process may be based on a different clock rate than other internal processes. However, the various clock rates clocking operation may all be based on a system clock. The clock rate may be given in units of gigahertz (GHz), while the data rate may be given, in units of gigabits per second (Gb/s). While the data rate and the clock rate may be distinguished from one another, the data rate may be derived from a clock rate used for clocking data transmission. For example, a clock rate of 2.5 GHz may correspond to a data rate of 5.0 Gb/s for systems having a two times difference between clock rate and data rate. Other systems may have a different factor between clock and data rates, which are also contemplated by the present disclosure. These various operating clock rates may limit the highest operating rate at which the electronic system may operate. The internal clock rates at which the slowest device may operate may also affect the rate at which data may be transferred (e.g., transmitted, provided, sent, etc.) by that device, which may be due to the clock rate determining how fast data may be transferred. The variation in clock rates, for example, may be a byproduct of associated fabrication processes. For example, a memory controller or system on a chip may be fabricated with a logic fabrication process, while a memory may be fabricated on a memory fabrication process.
- A memory controller, for example, which may be one possible interface between memory and other devices of an electronic system, such as a processor, may be fabricated using a logic fabrication process. In some embodiments, the other devices may interact directly with the memory without the memory controller, and are further capable of implementing the asymmetric, bi-directional signaling incorporating multi-bit encoding of the present disclosure. Further, while memory applications are expected to benefit from the present invention, the composite performance of any interface limited by asymmetric component-level performance at either end may be maximized through application of the present disclosure. As previously discussed, the logic fabrication process, which may be optimized for fast operating rates, may produce transistors that may be characterized as last so that they operate at higher operating rates, e.g., can switch at fast rates. The transistors may also be more sensitive so that they may be able to resolve voltages of relatively close values. In this light, transmitters (e.g., transistors) of the memory controller may be able to drive data signals at fast data rates, and receivers of the memory controller may be able to receive and reliably detect signals having respective voltage levels that are relatively close. Accordingly, the controller may have flexibility with respect to operating at various transmission and receipt parameters, such as reference levels, transmit/receive rates, etc.
- In contrast, as also previously discussed, a memory, whether volatile or nonvolatile, may be fabricated using a fabrication process that is optimized for data retention, which may not produce transistors that are as fast or as sensitive as transistors fabricated by a logic fabrication process. As such, I/O circuits of the memory, e.g., transmitters and receivers, may not be able to reliably provide signals at fast clock rates, which may limit their maximum achievable data rate for standard or differential data transmission. As used herein, “differential data transmission,” may refer to transmission of true and complementary data signals. This limitation may be due to the limited switching rates of the transistors included in the transmitter, which may limit the data rates memory fabrication-based transmitters may be able to achieve. While some design considerations may produce drivers that provide relatively faster switching rates, the memory-focused fabrication process may limit, the switching rate the transmitters are able to provide. The limited switching rate may be acceptable at low clock rates, 2.0 GHz for example, but may cause problems at higher clock rates, 3.0 GHz and above for example. Accordingly, the limited switching rate may limit the clock rate, which may in turn limit the data rate.
- While a memory controller may be able to provide data, to a memory at a faster data rate, 10 Gb/s for example, a memory may not be able to match the same data rate in response. Such a scenario may be undesirable due to the asymmetric data rates, which may affect system bandwidth. In some embodiments of the present disclosure, symmetric data rates may be provided by using multi-bit encoding on the memory side of the transmission, while using differential data transmission on the controller side of the transmission. The multi-bit encoding may allow multiple bits to be transmitted in a single transmission at a slower clock rate, which may allow the memory to operate at a slower clock rate while still providing symmetric data rates.
- The asymmetric, bi-directional signaling incorporating multi-bit encoding of the present disclosure may be discussed with reference to a memory and a memory controller. The discussion of the memory controller however, is used for ease of discussion and is not limiting. The asymmetric, bi-directional signaling incorporating multi-bit encoding may also occur between a memory and any other type of device capable of direct interaction with a memory or between any combinations of devices whose intercommunication is limited by the independent performance of at least one side of the intercommunication link.
-
FIG. 1 is a block diagram of an apparatus 100 (e.g., an electronic device, a smartphone, a computing device, a wearable electronic device, etc.) according to an embodiment of the present disclosure. Theapparatus 100 may include a controller 102 (e.g., memory controller or a system oil a chip) and amemory 104. Thecontroller 102 and thememory 104 may be coupled to each other by a command andaddress bus 106, and adata bus 108, which may be bi-directional. In some examples, thememory 104 may be a volatile memory, such as a synchronous double data rate random access memory (SDDRAM), synchronous DRAM, DDRAM, etc., and in other examples, thememory 104 may be a nonvolatile memory, such as NAND flash, NOR flash, phase change memory, etc. Thememory 104 may be configured to store information and perform memory operations, e.g., writes and reads, responsive to memory commands, in response to write commands, the controller may provide data to thememory 104 using differential data transmission, e.g., transmitting a true value and a complementary value for each bit. The data transmission from the controller, however, is not liming. For example, in some embodiments, the controller may provide data using binary, single-ended data signaling. Conversely, in response to read commands, thememory 104 may provide data to thecontroller 102 using multi-bit encoding. The encoding may be used to encode multiple bits into a single data signal where a voltage level of the transmission during the data period is indicative of the corresponding bit values encoded into the single transmission. As used herein, data signal may mean a single instance of data transmission based on a rising or falling edge of a clock signal. Additionally, data signals comprising the encoded bits may also be referred to as symbols. For example, with regards to differential signaling, a single data signal may be the transmission/receipt of a bit of data at a true value and its complement at a rising or falling edge of theCLK 110, while a data period for single-ended signaling may be the transmission/receipt of one instance of data at a rising or falling edge of theCLK 110. For DDR-DRAM, a single data signal may occur on both the rising and falling edges of theCLK 110. - The
data bus 108 may include a plurality of channels for data to be transferred (e.g., provided, driven, transmitted, etc.) between-thecontroller 102 and thememory 104. Each of the plurality of channels may be used to provide data signals, which may be differential data or data signals that include a plurality of bits encoded into a single transmission. Since both thecontroller 102 and thememory 104 may transmit and receive data, each channel may include both a transmitter and a receiver, such that a channel may be coupled to corresponding transmitters and corresponding receivers included in thecontroller 102 and thememory 104. Each transmitter and receiver may operate in accordance with a clock signal, such as provided byclock 110, or a derivative of the clock signal. In another example, the plurality of conduction channels of thedata bus 108 may be associated in pairs so that data is transferred using differential signal transmission, such that for each data bit a true value and a complementary value are transferred between the devices. In another example, the plurality of channels of the data bus 10B may be used in a standard transmission scheme, e.g., single-ended transmission, such that only true data values are transferred. For example, using single-ended transmission, n bits of data may be simultaneously transmitted over n channels, whereas in the differential scheme, n/2 bits may be simultaneously transmitted over the n channels. A third example may include serially transmitting data over thedata bus 108, which may reduce the number of channels, but both devices may require serializes and deserializers for this example. - The
controller 102 may provide memory commands and corresponding addresses via the command and address (C/A)bus 106. The C/Abus 106 may be a common bus or it may be two separate busses, e.g., a command bus and an address bus. Commands and addresses may be provided by thecontroller 102 either synchronously or asynchronously. Data may be provided between thecontroller 102 and thememory 104 via thedata bus 108, with the data also being provided either synchronously or asynchronously. Thecontroller 102 may also provide a clock signal to thememory 104 separately from the data and the commands/addresses as indicated by the dashedline 110. Alternatively, thecontroller 102 may not provide a clock signal to thememory 104 separately, but instead may embed a dock signal in the data signals. For example, in some embodiments, the clock signal may be derived by thememory 104 from data signals provided on thedata bus 108 through known clock recovery techniques. The clock signal may be used to determine timing of operations performed by thememory 104. For example, thecontroller 102 may transmit a read command to thememory 104 and expect the data to be present on thedata bus 108 at a certain number of clock cycles of the clock signal later. The clock signal may then be used by the memory to determine when to provide the data on thedata bus 108 as expected. - Between the devices of the
apparatus 100, thecontroller 102 and thememory 104 for example, a desired data transfer rate may be determined by the lowest maximum operating frequency of the included devices. If the lowest maximum operating frequency is limiting the data transfer rate, however, asymmetric data signaling may be adopted to meet higher data rates and to further provide symmetric data rates even at higher data rates. Asymmetric data signaling may include receiving data by differential signal transmission and providing encoded data in a single-ended format. For example, if thecontroller 102 is able to operate at a data rate of 10 Gb/s using differential signal transmission, then thememory 104 may use multi-bit encoding combined with single-ended signaling to meet the 10 Gb/s data rate even though thememory 104 may be operating at a slower clock rate. An example multi-bit encoding technique may be multi-level pulse amplitude modulation (PAM), which uses a plurality of voltage levels to indicate logic states of a plurality of bits. Thememory 104 may use one of the plurality of voltage levels to indicate a combination of the encoded bits, where each of the plurality of voltage levels may be an analog voltage level between two supply voltages, for example. Thecontroller 102 may compare a received encoded data signal to a reference voltage level to determine the logic states of each of the encoded bits. For example, if four-level PAM is implemented, then two bits of data may be encoded into one of four voltage levels. For example, a “10,” which may be a combination of a bit at a high logic state, e.g., a “1,” and a bit at a low logic state, e.g., a “0,” may be encoded into a voltage level of two-thirds of a supply value, e.g., ⅔ Vcc. The encoded value may then be transmitted during a single data period using one signal. In some embodiments, the multi-bit encoding may be implemented with multi-phase encoding and/or multi-level encoding. Accordingly, transmitting two bits in this manner may allow for thememory 104 to operate at a clock rate of 2.5 GHz providing a data rate of 2×5 Gb/s, which may correspond to 10 Gb/s data rate since each data period of a signal may represent two bits. Further, because thememory 102 signals independently over two wires, its internal clock rate may be reduced by an additional factor of two while maintaining the desired data rate. Accordingly, in some embodiments, there may be a factor of four clock rate difference between thecontroller 102 and thememory 104. - In operation, the
memory 104 may receive a write command and a memory address on the C/Abus 106 along with the data to be stored at that memory address, which may be provided on thedata bus 108. The data provided by thecontroller 102 may be provided using a differential signal transmission, for example. In some embodiments, the differential data signals may be encoded to include multiple bits, while m other embodiments the differential data signals may be un-encoded, e.g., not encoded. Thecontroller 102 may be transmitting the write data at 10 Gb/s, for example. Read commands received by thememory 104 may be accompanied by a memory address. In response to the read command, thememory 104 may provide the requested data to thecontroller 102 via thedata bus 108. The data provided by thememory 104 may be provided using single-ended transmission. The data provided by thememory 104 may be encoded with multiple bits using a multi-bit encoding scheme, four-level PAM for example. - The
memory 104 may receive the commands, addresses, and data from the memory controller and perform memory operations in response. For example, when a write command is received, thememory 104 may store data received over thedata bus 108 at a received memory array address. As noted, the data may be received by a differential signal transmission. In response to read commands, thememory 104 may provide data to thememory controller 102 via thedata bus 108. Similarly to above, thememory 104 may provide encoded data to thememory controller 102. The encoded data may represent a plurality of bits encoded into a single data signal. For example, thememory 104 may encode two bits of data into a corresponding voltage level, which may be indicative of the logic states of the two bits. The encoded voltage level may then be transmitted to thecontroller 102. As mentioned above, an example encoding method may be four-PAM, which may result in two bits being encoded into one of four voltage levels corresponding to a combination of logic levels for the two bits. For example, “00” may be encoded into a data transmission signal of zero volts, a “01” may be encoded into a signal of ⅓ VDD, where VDD may be a supply voltage. The other two possible bit combinations, “10” and “11,” may be, for example, encoded into signals associated with voltage levels of ⅔ VDD and VDD, respectively. While the voltage levels are disclosed as having a uniform separation based on VDD, the separation may not be uniform in some embodiments. In some embodiments, the voltage levels that designate the different bit combinations may be based off of a current and not a voltage, where the current may be determined by receiver and transmitter drive current combinations. The examples provided are for illustrative purposes and are a non-limiting aspect of the present disclosure. In general, any multi-level and/or multi-phase encoding technique may be used to encode a plurality of bits into a single signal for a data period. - The number of bits encoded and the number of potential voltage levels may be related. For example, two bits may be encoded into four voltage levels, three bits into 8 voltage levels, and so on. Additionally, the number of bits encoded into the signal may also affect the data rate and the clock rate used to encode the bits and/or provide the signal. To continue with the four-PAM example, an encoder circuit used to encode the two bits into one of the four voltage levels may be operating at one-fourth a system clock rate, whereas a driver providing the signal of the encoded data may be operating at one-half the system clock. For example, if the system clock is 5 GHz, an encoder circuit may operate at 1.25 GHz and the driver circuit may operate at 1.25 GHz. For this example, transmitting two bits encoded into a signal at 1.25 GHz may provide a data rate per channel of 5 Gb/s, which may provide an effective data rate of 10 Gb/s, e.g., 2×5 Gb/s, for a pair of channels when the data rate of the pair of channels is summed. A pair of channels may correspond to two channels used for differential data transmission. Accordingly, the bandwidth in both directions between the
controller 102 and thememory 104 may be symmetric with a controller providing data at a data rate of 10 Gb/s. -
FIG. 2 is a block diagram of anapparatus 200 according to an embodiment of the present disclosure. Theapparatus 200 may include acontroller 202 and a memory 204. Theapparatus 200 may be an example of theapparatus 100 ofFIG. 1 . The memory 204 may receive commands and addresses from thecontroller 202 via a CMD/ADDR (C/A)bus 206. Thecontroller 202 may also provide aclock signal 210. Data may be transferred between thecontroller 202 and the memory 204 over thedata bus 208. Thedata bus 208 may include a plurality ofchannels 208A-N where N represents any non-zero whole number, not ail of which are shown inFIG. 2 . The data provided by thecontroller 202 may be provided by differential signal transmission such that the N channels are used to provide N/2 bits per transmission. In response to read commands, the memory 204 may encode bits of data using multi-bit encoding and transmit a signal indicative of the encoded bits using single-ended signaling. - The
data bus 208 may be bi-directional and used for either conventional data transmission, e.g., single ended transmission, or differential data transmission, e.g., pairs of channels for true and complementary data bits. The N channels of thebus 208 may carry N signals during single-ended transmissions and may carry N/2 bits during differential signal transmissions. As discussed, thecontroller 202 may transmit data by differential, signal transmission such that DA and /DA are transmitted overchannels 208A and 208B, respectively, where DA is a true value and /DA is a complementary value. The memory 204, on the other hand, may transmit data using single-ended transmissions such that each channel provides a data signal. For example, D0 may be transmitted over 208A while D1 may be transmitted over 208B. Accordingly, theapparatus 200 may implement asymmetric data transfer. The asymmetry of the data transfer may further be distinguished by the memory 204 encoding multiple bits into a single data transmission. - The
controller 202 may include a receiver for each channel of thedata bus 208 and further include a transmitter for each pair of channels of thedata bus 208. For example, thecontroller 202 may includereceiver 212 associated withchannel 208A andreceiver 214 associated with channel 208B. Further, thecontroller 202 may includetransmitter 216 associated withchannels 208A and 208B. Thetransmitter 216 may be configured to transmit differential data DA and /DA overchannels 208A and 208B, respectively. Thereceiver 212 may receive a data signal overchannel 208A, while thereceiver 214 may receive a different data signal over channel 208B. While thetransmitter 216 is depicted as a single transmitter, in some embodiments, thetransmitter 216 may be divided into two transmitters. - The memory 204 may include a transmitter associated with each channel of the
data bus 208 and a plurality of fractional-rate receivers associated with each pair of channels of thedata bus 208. For example,transmitter 220 may be coupled tochannel 208A, andtransmitter 222 may be coupled to channel 208B. Further, a plurality of fractional-rate receivers may be coupled tochannels 208A, B. Each of the plurality of fractional-rate receivers may receive a respective clock signal, where each respective clock signal is a derivative of the system clock. Further, the clock rate of each of the respective clock signals may be dependent upon the number of fractional-rate receivers associated with each pair ofchannels 208A-N. For example, four fractional-rate receivers 218A-D receiving respective clock signal CLKA-D may be coupled tochannels 208A, B of thedata bus 208. The clock rate of each of the four clock signals CLKA-D may be one-quarter the system clock, rate and they may further be out of phase with one another by one-quarter of a clock period, for example. Four fractional-rate receivers are shown inFIG. 2 for illustrative purposes only and the number of fractional-rate receivers is a non-limiting aspect of the present disclosure. Fewer or more fractional-rate receivers may be used in other embodiments. - The
transmitters transmitters data bus 208 at a respective voltage level. - In operation of a write command, the controller may provide, e.g., transmit, differential data across the
data bus 208 to the memory 204. For differential data transmission, thetransmitter 216 may receive data DA and /DA, and in response, transmit, e.g., drive, the DA and /DA data signals onto thechannels 208A, B of thedata bus 208, respectively. In response to receiving the data signals DA and /DA during a first data period, the fractional-rate receiver 218A may capture, e.g., resolve, the complementary data signals, which are data signals that are complementary to each other, and provide the data to internal components of the memory 204. The data signals may be captured by the fractional-rate receiver 218A based on a rising or falling edge of the clock signal CLKA. If a subsequent data transmission follows data signals DA and /DA, e.g., a subsequent data period, then the fractional-rate receiver 218B may capture the subsequent data transmission based on the clock signal CLKB. Subsequent data transmissions may be captured by the fractional-rate receivers 218C and 218D in sequence before returning back to 218A. In some embodiments, the DATA provided by the fractional-rate receivers 218A-D may only consist of the true data value. In other embodiments, the fractional-rate receivers 218A-D may provide both the true and complementary bit values. - In operation of a read command, the memory 204 may encode a plurality of bits into a single data signal and transmit the encoded signal during a clock cycle, where the single data signal may be transmitted at one of a plurality of voltage levels. For double data rate memories, two data signals may be transmitted per clock cycle with each data signal including a plurality of encoded bits. Each of the plurality of voltage levels may correspond to a different combination of bit logic levels as discussed above. For example, the
transmitter 220 may receive bits Da and Db, encode the two bits into a corresponding voltage level, and provide data D0 at that voltage level. The voltage level may be indicative of the bits Da and Db. To state another way, the data D0 may be based on the logic levels of the bits Da and Db, where based on the logic level may also mean based on the combination of the logic levels. Further, D0 may be at one of four voltage levels, where each voltage level corresponds to, e.g., indicates, the respective logic levels of the bits Da and Db. For example, if Da is a “0” and Db is a “1,” the encoded data D0 may be equal to one-third VDD, which may be one of four reference levels. The other three voltage levels may be zero, two-third VDD, and VDD. The specific derivatives of VDD for providing each of the plurality of voltage levels is disclosed as just one example, and is a non-limiting aspect of the present disclosure. - The
transmitter 222, which receives bits Dc and Dd, may be configured similarly to encode a plurality of bits into a single data signal and transmit the encoded signal during a data period, where a data period may be one-half a clock cycle for double data rate embodiments. For example, the transmitter may encode the bits Dc and Dd into a corresponding voltage level to be transmitted as data D1 over the channel 208B. Encoding the bits Dc and Dd into data D1 may, for example, be based on four-PAM encoding. In some embodiments, thetransmitters - Accordingly, while the
controller 202 and the memory 204 transmit data signals based on different clock rates, their effective data rates may equal. For example, if thecontroller 202 transmits data at 10 Gb/s, then thememory 104 may transmit data signals at 5 Gb/s over each channel, but since each data-signal may include two bits, for example, the effective data rate of the memory is 10 Gb/s for a pair of channels when their respective data rates are summed. The data rate of 5 Gb/s per channel may be clocked by a clock rate of 1.25 GHz, for example. As such, the data rates may be matched while the signaling methods, e.g., differential and single-ended, between thecontroller 202 and the memory 204 may be asymmetrical. Further, the fractional-rate receivers 218A-D may also be operating at a slower clock rate than, the system clock. Accordingly, the asymmetric, bi-directional signaling may allow the memory to operate internally at a lower clock rate then thecontroller 202, for example. -
FIG. 3 is block diagram of atransmitter 300 according to an embodiment of the present disclosure. Thetransmitter 300 may include anencoder 202 and anoutput driver 304. Thetransmitter 300 may receive a plurality of bits, two for example, and encode the plurality of bits into a data signal at a corresponding voltage level, which may then be provided, e.g., transmitted, by a driver circuit. The data signal may be encoded to one of a plurality of voltage levels based on the logic levels of each of the plurality of data bits. - In some embodiments, the number of bits encoded into a data signal may be two, as shown in
FIG. 3 . Theencoder 302 may receive two bits Da and Db, and encode the two bits into a data signal at one of four voltage levels. The resulting voltage level may be based on the combination of the logic states of bits Da and Db. In some embodiments, the four voltage levels may be based on the supply voltages of thetransmitter 300. For example, if one supply voltage is ground and a second supply voltage is VDD, then the four voltage levels may be ground, e.g., zero, one-third VCC, two-thirds VDD, and VDD, which would provide four equally spaced voltage levels. The value of the voltage levels, however, is a non-limiting aspect of the present disclosure, and may also be based on current levels of the transmitter, for example. Theencoder 302 may also receive a clock signal CLK1, which may be the same as a system dock (not shown) or a derivative of the system clock. The rate of the CLK1 signal may further be based on a target data rate of thetransmitter 300. - The
driver 304 may be a standard driver known in the art and may operate responsive to the clock signal CLK2. in some embodiments, the CLK2 signal may be the same as the system clock (not shown) and/or the same as CLK1. For example, the rate of CLK1 and CLK2 may be 1.25 GHz. In some embodiments, CLK1 and CLK2 may be different. Thedriver 304 may be coupled to theencoder 302 and configured to provide, e.g., drive, the data signal D0 onto a data bus, for example. While theencoder 302 and thedriver 304 are shown as separate components inFIG. 3 , in some embodiments theencoder 302 and thedriver 304 may be combined. - In operation, the
encoder 302 may receive two bits Da and Db responsive to CLK1. Theencoder 302 may then encode the two bits into a data signal at one of four voltage values based on the combination of their logic states. Theencoder 302 may then provide the data signal D0 to thedriver 304. Thedriver 304 may then provide the signal D0 onto a data bus (not shown), such as a channel of thedata bus 208 ofFIG. 2 for example. Thedriver 304 may then provide data signal D0 responsive to CLK2 signal. The CLK2 signal may have a clock rate of 1.25 GHz, which may correspond to a data rate of 5 Gb/s, per channel for example. However, since each data signal provided bytransmitter 300 may include two bits, the effective data rate may be 5 Gb/s, e.g., 2×5 Gb/s, per channel. The data rate and clock rate values disclosed are for illustrative purposes only and are a non-limiting aspect of the present disclosure. -
FIG. 4 illustrates amemory 400 according to an embodiment of the present disclosure. Thememory 400 includes anarray 402 of memory cells, which may be, for example, volatile memory cells (e.g., DRAM memory cells, SEAM memory cells), non-volatile memory cells (e.g., flash memory cells), or some other types of memory cells. Thememory system 400 includes acommand decoder 406 that receives memory commands through acommand bus 408 and generates corresponding control signals within thememory system 400 to carry out various memory operations. Thecommand decoder 406 responds to memory commands applied to thecommand bus 408 to perform various operations on thememory array 402. For example, thecommand decoder 406 is used to generate internal control signals to read data from and write data to thememory array 402. Row and column address signals are applied to thememory system 400 through anaddress bus 420 and provided to anaddress latch 410. The address latch then outputs a separate column address and a separate row address. - The row and column addresses are provided by the
address latch 410 to arow address decoder 422 and acolumn address decoder 428, respectively. Thecolumn address decoder 428 selects bit lines extending through thearray 402 corresponding to respective column addresses. Therow address decoder 422 is connected toword line driver 424 that activates respective rows of memory cells in thearray 402 corresponding to received row addresses. The selected data line (e.g., a bit line or bit lines) corresponding to a received column address are coupled to a read/write circuitry 430 to provide read data to adata output buffer 434 via an input-output data bus 440. Write data are applied to thememory array 402 through adata input buffer 444 and the memory array read/write circuitry 430. - The
input date buffer 444 may receive data from a memory controller, for example, for storing in thearray 402 in response to a write command, for example. Theinput data buffer 444 may include a receiver or a plurality of fractional-rate receivers, such as the fractional-rate receivers 218A-D ofFIG. 2 , and are configured to receive differential data signals. The received data may be received over a bi-directional data bus (not shown) that couples thememory 400 to the memory controller. - The
output buffer 434 may provide data stored in thearray 402 to the memory controller in response to a read command, for example. Theoutput data buffer 434 may include a transmitter, such as the transmitter, which may encoder a plurality of bits into a data signal. The transmitter may include an encoder and a signal driver, for example, such as theencoder 302 anddriver 304 ofFIG. 3 or thetransmitter 220/222 ofFIG. 2 . The encoded signals may represent a plurality of bits based on a voltage level of the encoded signal. The data may be provided over the bi-directional bus (not shown) that couples thememory 400 to the memory controller. - While differential signaling may have been primarily discussed with regards to the examples and embodiments disclosed herein, the signaling scheme used by a controller, such as the
controller 102 ofFIG. 1 , is a non-limiting aspect. In other embodiments, the controller may transmit data using single-ended transmissions, with or without multi-level encoding. Further, a controller may combine multi-level encoding with differential signal transmission. Additionally, a memory may combine multi-level encoding with differential transmission. - Memories in accordance with embodiments of the present invention may be used in any of a variety of electronic devices including, but not limited to, computing systems, electronic storage systems, cameras, phones, wireless devices, displays, chip sets, set top boxes, or gaming systems.
- From the foregoing it will be appreciated that, although specific embodiments of the disclosure have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the disclosure. Accordingly, the disclosure is not limited except as by the appended claims.
Claims (27)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/831,517 US9577854B1 (en) | 2015-08-20 | 2015-08-20 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US15/412,826 US10474594B2 (en) | 2015-08-20 | 2017-01-23 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US16/553,065 US11216395B2 (en) | 2015-08-20 | 2019-08-27 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US17/566,127 US20220121585A1 (en) | 2015-08-20 | 2021-12-30 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/831,517 US9577854B1 (en) | 2015-08-20 | 2015-08-20 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/412,826 Continuation US10474594B2 (en) | 2015-08-20 | 2017-01-23 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
Publications (2)
Publication Number | Publication Date |
---|---|
US9577854B1 US9577854B1 (en) | 2017-02-21 |
US20170054580A1 true US20170054580A1 (en) | 2017-02-23 |
Family
ID=58017803
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/831,517 Active US9577854B1 (en) | 2015-08-20 | 2015-08-20 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US15/412,826 Active US10474594B2 (en) | 2015-08-20 | 2017-01-23 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US16/553,065 Active US11216395B2 (en) | 2015-08-20 | 2019-08-27 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US17/566,127 Pending US20220121585A1 (en) | 2015-08-20 | 2021-12-30 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/412,826 Active US10474594B2 (en) | 2015-08-20 | 2017-01-23 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US16/553,065 Active US11216395B2 (en) | 2015-08-20 | 2019-08-27 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US17/566,127 Pending US20220121585A1 (en) | 2015-08-20 | 2021-12-30 | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
Country Status (1)
Country | Link |
---|---|
US (4) | US9577854B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10164817B2 (en) | 2017-03-21 | 2018-12-25 | Micron Technology, Inc. | Methods and apparatuses for signal translation in a buffered memory |
WO2019114450A1 (en) * | 2017-12-13 | 2019-06-20 | 晶晨半导体(上海)股份有限公司 | Data edge transition method |
US11216395B2 (en) | 2015-08-20 | 2022-01-04 | Micron Technology, Inc. | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101921119B1 (en) | 2016-07-19 | 2018-12-06 | 주식회사 지엠케이 | Asynchronous digital communication module |
US10277435B2 (en) | 2017-08-07 | 2019-04-30 | Micron Technology, Inc. | Method to vertically align multi-level cells |
US10447512B2 (en) | 2017-08-07 | 2019-10-15 | Micron Technology, Inc. | Channel equalization for multi-level signaling |
US10277441B2 (en) | 2017-08-07 | 2019-04-30 | Micron Technology, Inc. | Uniformity between levels of a multi-level signal |
US10530617B2 (en) | 2017-08-07 | 2020-01-07 | Micron Technology, Inc. | Programmable channel equalization for multi-level signaling |
US10425260B2 (en) | 2017-08-07 | 2019-09-24 | Micron Technology, Inc. | Multi-level signaling in memory with wide system interface |
US10403337B2 (en) | 2017-08-07 | 2019-09-03 | Micron Technology, Inc. | Output driver for multi-level signaling |
US10128842B1 (en) | 2018-03-23 | 2018-11-13 | Micron Technology, Inc. | Output impedance calibration for signaling |
US11108604B2 (en) * | 2019-08-19 | 2021-08-31 | Qualcomm Incorporated | Driver architecture for multiphase and amplitude encoding transmitters |
US12002541B2 (en) * | 2021-12-08 | 2024-06-04 | Advanced Micro Devices, Inc. | Read clock toggle at configurable PAM levels |
Family Cites Families (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4298929A (en) | 1979-01-26 | 1981-11-03 | International Business Machines Corporation | Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability |
JPH07105146B2 (en) | 1988-07-29 | 1995-11-13 | 三菱電機株式会社 | Non-volatile storage device |
US5166956A (en) | 1990-05-21 | 1992-11-24 | North American Philips Corporation | Data transmission system and apparatus providing multi-level differential signal transmission |
JPH07504773A (en) | 1992-03-18 | 1995-05-25 | セイコーエプソン株式会社 | System and method for supporting multi-width memory subsystems |
JPH11259238A (en) | 1998-03-11 | 1999-09-24 | Matsushita Electric Ind Co Ltd | Signal processor |
US20030069856A1 (en) * | 2001-10-10 | 2003-04-10 | First Data Corporation | Method and system for performing money transfer transactions |
US7333570B2 (en) | 2000-03-14 | 2008-02-19 | Altera Corporation | Clock data recovery circuitry associated with programmable logic device circuitry |
US6285624B1 (en) | 2000-07-08 | 2001-09-04 | Han-Ping Chen | Multilevel memory access method |
US6701482B2 (en) * | 2001-09-20 | 2004-03-02 | Qualcomm Incorporated | Method and apparatus for coding bits of data in parallel |
JP4002502B2 (en) * | 2001-11-27 | 2007-11-07 | 三星電子株式会社 | Coordinate interpolator encoding / decoding apparatus and method |
US6954885B2 (en) * | 2001-12-14 | 2005-10-11 | Qualcomm Incorporated | Method and apparatus for coding bits of data in parallel |
US7013359B1 (en) | 2001-12-21 | 2006-03-14 | Cypress Semiconductor Corporation | High speed memory interface system and method |
JP3792602B2 (en) * | 2002-05-29 | 2006-07-05 | エルピーダメモリ株式会社 | Semiconductor memory device |
US7617356B2 (en) * | 2002-12-31 | 2009-11-10 | Intel Corporation | Refresh port for a dynamic memory |
JP2005149662A (en) * | 2003-11-19 | 2005-06-09 | Oki Electric Ind Co Ltd | Synchronous semiconductor memory device |
US7292637B2 (en) * | 2003-12-17 | 2007-11-06 | Rambus Inc. | Noise-tolerant signaling schemes supporting simplified timing and data recovery |
US7673080B1 (en) * | 2004-02-12 | 2010-03-02 | Super Talent Electronics, Inc. | Differential data transfer for flash memory card |
US7346819B2 (en) | 2004-10-29 | 2008-03-18 | Rambus Inc. | Through-core self-test with multiple loopbacks |
US7461192B2 (en) | 2004-12-15 | 2008-12-02 | Rambus Inc. | Interface for bridging out-of-band information and preventing false presence detection of terminating devices |
US7421634B2 (en) | 2005-05-02 | 2008-09-02 | Texas Instruments Incorporated | Sequential scan based techniques to test interface between modules designed to operate at different frequencies |
US8291295B2 (en) | 2005-09-26 | 2012-10-16 | Sandisk Il Ltd. | NAND flash memory controller exporting a NAND interface |
US7562271B2 (en) | 2005-09-26 | 2009-07-14 | Rambus Inc. | Memory system topologies including a buffer device and an integrated circuit memory device |
US7804723B2 (en) | 2005-09-28 | 2010-09-28 | Hynix Semiconductor Inc. | Semiconductor memory device with signal aligning circuit |
US7844879B2 (en) * | 2006-01-20 | 2010-11-30 | Marvell World Trade Ltd. | Method and system for error correction in flash memory |
JP4267002B2 (en) * | 2006-06-08 | 2009-05-27 | エルピーダメモリ株式会社 | System with controller and memory |
US7685393B2 (en) * | 2006-06-30 | 2010-03-23 | Mosaid Technologies Incorporated | Synchronous memory read data capture |
JP2010535453A (en) | 2007-08-02 | 2010-11-18 | フェアチャイルド セミコンダクター コーポレイション | Method and circuit for interleaving and serializing / deserializing LCD, camera, keypad and GPIO data via serial stream |
US8291139B2 (en) | 2008-01-10 | 2012-10-16 | Micron Technology, Inc. | Asymmetric chip-to-chip interconnect |
US8848810B2 (en) * | 2008-03-05 | 2014-09-30 | Qualcomm Incorporated | Multiple transmitter system and method |
EP2592552B1 (en) * | 2008-03-11 | 2015-11-25 | Agere Systems Inc. | Methods and apparatus for storing data in a multi-level cell flash memory device with cross-page sectors, multi-page coding and per-page coding |
US8627165B2 (en) | 2008-03-24 | 2014-01-07 | Micron Technology, Inc. | Bitwise operations and apparatus in a multi-level system |
CN101556572B (en) | 2008-04-07 | 2011-04-27 | 联咏科技股份有限公司 | Interface control circuit |
US20090323414A1 (en) | 2008-06-30 | 2009-12-31 | Heiko Fibranz | Method and Device for Storing Data |
US8028209B2 (en) * | 2009-06-26 | 2011-09-27 | Intel Corporation | Scalable scan system for system-on-chip design |
US20110041005A1 (en) | 2009-08-11 | 2011-02-17 | Selinger Robert D | Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System |
US8443263B2 (en) | 2009-12-30 | 2013-05-14 | Sandisk Technologies Inc. | Method and controller for performing a copy-back operation |
JP2011227976A (en) * | 2010-04-22 | 2011-11-10 | Elpida Memory Inc | Nonvolatile semiconductor memory device and memory system having the same |
US8649445B2 (en) * | 2011-02-17 | 2014-02-11 | École Polytechnique Fédérale De Lausanne (Epfl) | Methods and systems for noise resilient, pin-efficient and low power communications with sparse signaling codes |
US9665507B2 (en) * | 2010-07-22 | 2017-05-30 | Rambus Inc. | Protocol including a command-specified timing reference signal |
DE112011103208T5 (en) | 2010-09-24 | 2013-10-02 | Texas Memory Systems, Inc. | High-speed storage system |
EP2515442A1 (en) | 2011-04-21 | 2012-10-24 | STMicroelectronics SA | An arrangement |
US8897084B2 (en) * | 2011-09-08 | 2014-11-25 | Apple Inc. | Dynamic data strobe detection |
US20130141992A1 (en) * | 2011-12-06 | 2013-06-06 | International Business Machines Corporation | Volatile memory access via shared bitlines |
US9116620B2 (en) | 2011-12-30 | 2015-08-25 | Sandisk Technologies Inc. | Controller and method for memory aliasing for different flash memory types |
US9830958B2 (en) * | 2012-05-03 | 2017-11-28 | Nvidia Corporation | Time-multiplexed communication protocol for transmitting a command and address between a memory controller and multi-port memory |
US8938578B2 (en) | 2012-07-27 | 2015-01-20 | Rambus Inc. | Memory device with multi-mode deserializer |
US8760328B1 (en) | 2012-09-14 | 2014-06-24 | Altera Corporation | Interface circuitry for an integrated circuit system |
US9013921B2 (en) | 2012-12-06 | 2015-04-21 | Samsung Electronics Co., Ltd. | Semiconductor memory device |
WO2014164889A2 (en) | 2013-03-11 | 2014-10-09 | Spectra7 Microsystems Ltd | Reducing electromagnetic radiation emitted from high-speed interconnects |
KR20140146275A (en) | 2013-06-14 | 2014-12-26 | 삼성전자주식회사 | Operating method for memory controller controlling nonvolatile memory device and nonvolatile memroy system |
TWI521508B (en) * | 2013-08-13 | 2016-02-11 | 瑞昱半導體股份有限公司 | Memory control circuit and method of controlling data reading process of memory module |
US9600413B2 (en) | 2013-12-24 | 2017-03-21 | Intel Corporation | Common platform for one-level memory architecture and two-level memory architecture |
CN104954288B (en) * | 2014-03-28 | 2019-06-14 | 华为技术有限公司 | Method for sending information, device and communication system |
US9281005B2 (en) | 2014-05-01 | 2016-03-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Multiplexed communication in a storage device |
WO2016004388A1 (en) * | 2014-07-03 | 2016-01-07 | Yale University | Circuitry for ferroelectric fet-based dynamic random access memory and non-volatile memory |
JP6387711B2 (en) | 2014-07-04 | 2018-09-12 | 株式会社ソシオネクスト | Data transfer apparatus and data transfer method |
US9542354B2 (en) | 2014-07-15 | 2017-01-10 | Globalfoundries Inc. | Generating a parallel data signal by converting serial data of a serial data signal to parallel data |
WO2016018386A1 (en) * | 2014-07-31 | 2016-02-04 | Hewlett-Packard Development Company, L.P. | Encoding data within a crossbar memory array |
US9680651B2 (en) * | 2014-10-27 | 2017-06-13 | Seagate Technology Llc | Secure data shredding in an imperfect data storage device |
US9577854B1 (en) | 2015-08-20 | 2017-02-21 | Micron Technology, Inc. | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US10692555B2 (en) * | 2016-06-29 | 2020-06-23 | Samsung Electronics Co., Ltd. | Semiconductor memory devices enabling read strobe mode and related methods of operating semiconductor memory devices |
US10198349B2 (en) | 2016-09-19 | 2019-02-05 | Advanced Micro Devices, Inc. | Programming in-memory accelerators to improve the efficiency of datacenter operations |
US20180173666A1 (en) * | 2016-12-16 | 2018-06-21 | Intel Corporation | APPARATUSES AND METHODS TO COUPLE AN EMBEDDED UNIVERSAL SERIAL BUS (eUSB) CIRCUIT TO A UNIVERSAL SERIAL BUS (USB) TRANSCEIVER INTERFACE CIRCUIT |
US10164817B2 (en) | 2017-03-21 | 2018-12-25 | Micron Technology, Inc. | Methods and apparatuses for signal translation in a buffered memory |
-
2015
- 2015-08-20 US US14/831,517 patent/US9577854B1/en active Active
-
2017
- 2017-01-23 US US15/412,826 patent/US10474594B2/en active Active
-
2019
- 2019-08-27 US US16/553,065 patent/US11216395B2/en active Active
-
2021
- 2021-12-30 US US17/566,127 patent/US20220121585A1/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11216395B2 (en) | 2015-08-20 | 2022-01-04 | Micron Technology, Inc. | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
US10164817B2 (en) | 2017-03-21 | 2018-12-25 | Micron Technology, Inc. | Methods and apparatuses for signal translation in a buffered memory |
US10700918B2 (en) | 2017-03-21 | 2020-06-30 | Micron Technology, Inc. | Methods and apparatuses for signal translation in a buffered memory |
US11088895B2 (en) | 2017-03-21 | 2021-08-10 | Micron Technology, Inc. | Methods and apparatuses for signal translation in a buffered memory |
WO2019114450A1 (en) * | 2017-12-13 | 2019-06-20 | 晶晨半导体(上海)股份有限公司 | Data edge transition method |
US11315625B2 (en) * | 2017-12-13 | 2022-04-26 | Amlogic (Shanghai) Co., Ltd. | Data edge jumping method |
Also Published As
Publication number | Publication date |
---|---|
US20190384728A1 (en) | 2019-12-19 |
US20220121585A1 (en) | 2022-04-21 |
US11216395B2 (en) | 2022-01-04 |
US9577854B1 (en) | 2017-02-21 |
US20170132162A1 (en) | 2017-05-11 |
US10474594B2 (en) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216395B2 (en) | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding | |
CN108475520B (en) | Apparatus and method for encoding and decoding signal lines of a multi-level communication architecture | |
US9148170B2 (en) | Methods and apparatuses for low-power multi-level encoded signals | |
US10387341B2 (en) | Apparatuses and methods for asymmetric input/output interface for a memory | |
CN106484649B (en) | Transmission device for high-speed communication, interface circuit and system including the same | |
CN106354679B (en) | Interface circuit for high speed communication and system including the same | |
CN111033622A (en) | Apparatus and method for data transmission offset value in burst transmission | |
US11257538B2 (en) | Systems and methods for improved reliability of components in dynamic random access memory (DRAM) | |
US9413565B1 (en) | Termination circuit, and interface circuit and system including the same | |
US10122553B2 (en) | Transmitting device for high speed communication, interface circuit and system including the same | |
US10409759B2 (en) | Interface circuit for high speed communication, and system including the same | |
US9762420B2 (en) | Transmitting device for high speed communication, and interface circuit and system including the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HOLLIS, TIMOTHY;REEL/FRAME:036385/0091 Effective date: 20150819 |
|
AS | Assignment |
Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT, CALIFORNIA Free format text: SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038669/0001 Effective date: 20160426 Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGEN Free format text: SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038669/0001 Effective date: 20160426 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT, MARYLAND Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038954/0001 Effective date: 20160426 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038954/0001 Effective date: 20160426 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT, CALIFORNIA Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:043079/0001 Effective date: 20160426 Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGEN Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:043079/0001 Effective date: 20160426 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, ILLINOIS Free format text: SECURITY INTEREST;ASSIGNORS:MICRON TECHNOLOGY, INC.;MICRON SEMICONDUCTOR PRODUCTS, INC.;REEL/FRAME:047540/0001 Effective date: 20180703 Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, IL Free format text: SECURITY INTEREST;ASSIGNORS:MICRON TECHNOLOGY, INC.;MICRON SEMICONDUCTOR PRODUCTS, INC.;REEL/FRAME:047540/0001 Effective date: 20180703 |
|
AS | Assignment |
Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT;REEL/FRAME:047243/0001 Effective date: 20180629 |
|
AS | Assignment |
Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT;REEL/FRAME:050937/0001 Effective date: 20190731 |
|
AS | Assignment |
Owner name: MICRON SEMICONDUCTOR PRODUCTS, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:051028/0001 Effective date: 20190731 Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:051028/0001 Effective date: 20190731 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |