The present invention relates generally to quantum and classical digital superconducting circuits, and specifically to Josephson-transmission-line-based superconducting logic arrays and field-programmable gate arrays (FPGAs).
In the field of digital logic, extensive use is made of well-known and highly developed complimentary metal-oxide semiconductor (CMOS) technology. As CMOS has begun to approach maturity as a technology, there is an interest in alternatives that may lead to higher performance in terms of speed, power dissipation computational density, interconnect bandwidth, and the like. An alternative to CMOS technology comprises superconductor-based single flux quantum circuitry, utilizing superconducting Josephson junctions, with typical signal power of around four nanowatts, at a typical data rate of twenty gigabits per second, or greater, and operating temperatures of around four kelvins.
A field-programmable gate array (FPGA) is an integrated circuit designed to be configured, after manufacturing, to produce one or more customized logic output functions. An FPGA can contain an array of programmable logic blocks and, in some cases, a hierarchy of reconfigurable interconnects between logic blocks. The logic blocks can include memory elements. High performance computing (HPC) systems use FPGAs to accelerate computation per unit of expended energy. FPGAs have conventionally been fabricated as CMOS devices.
One example includes a superconducting reciprocal quantum logic (RQL) cell circuit having a decision loop configured to store a digital state and to readout an RQL-compliant logical output signal based on the digital state, an RQL-compliant read selection signal, and an RQL-compliant read data signal. The decision loop includes a magnetic Josephson junction (MJJ) configured to set the digital state as one of a first logic state and a second logic state based on write signals provided on write inputs. The decision loop further includes a secondary inductor of a selection input transformer through which the read selection signal is provided to the decision loop from a read selection Josephson transmission line (JTL). The decision loop further includes an escape Josephson junction (JJ) configured to trigger or not to trigger so as to block the read data signal from propagating to an output JTL or to act as a superconducting short to pass the read data signal to the output JTL, respectively, based on bias conditions established by the digital state and the read selection signal.
Another example includes a JTL-based superconducting logic array (JTLBSLA) circuit. The JTLBSLA circuit includes a plurality of mask-programmed and/or software-programmable logic cells arranged in an array of a plurality of rows, numbering M, and a plurality of columns, numbering N. Each software-programmable logic cell is configured to store a programmable digital state in a superconducting loop and to set the programmable digital state to one of a first logic state and a second logic state at operation time. Each mask-programmed logic cell functions as having a hard-coded digital state that is not changeable at operation time. The JTLBSLA circuit further includes a plurality of JTL-based selection lines, numbering M, configured to each provide a selection binary value as input to each of N cells in a corresponding row, and a plurality of JTL-based data lines, numbering N, configured to each provide a data binary value as input to a first cell in a corresponding column. Each cell in the array other than the last cell in each column provides an output as input to a next cell in a corresponding column or to an RQL gate, and the last cell in each column provides an array output representative of an evaluation of a generalized logic function.
Yet another example includes a JTL-based superconducting field-programmable gate array (JTLBSFPGA). The JTLBSFPGA includes at least first and second JTLBSLAs, each of which includes a plurality of software-programmable logic cells arranged in an array of a plurality of rows and a plurality of columns. Each software-programmable logic cell is configured to store a programmable digital state in a superconducting loop and to set the programmable digital state to one of a first logic state and a second logic state at operation time. Each of the first and second JTLBSLAs further includes a plurality of JTL-based selection lines configured to each provide a selection binary value as input to each of the cells in a corresponding row, and a plurality of JTL-based data lines configured to each provide a data binary value as input to a first cell in a corresponding column. Each cell in each of the first and second JTLBSLAs other than the last cell in each JTLBSLA column provides an output as input to a next cell in a corresponding JTLBSLA column or to an RQL gate. The last cell in each column provides an array output representative of an evaluation of a generalized logic function. Each array output of the first JTLBSLA, corresponding to an evaluation of a sum-of-products logic function, is provided to a corresponding selection line input of the second JTLBSLA, such that the JTLBSFPGA outputs a plurality of evaluations of generalized logic functions.
This disclosure relates generally to quantum and classical digital superconducting circuits, and specifically to Josephson-transmission-line-based superconducting logic arrays (JTLBSLAs). Reciprocal quantum logic (RQL) utilizes reciprocal data encoding in which logic operations are completed using positive pulses, while the internal state is erased using corresponding negative pulses that come half a clock cycle later, to produce combinational logic behavior. Examples of RQL logic operations are disclosed in U.S. Pat. Nos. 7,724,020 and 7,977,964, both entitled “Single Flux Quantum Circuits,” the entire contents of both being incorporated by reference herein.
A JTLBSLA, as described herein, is an array of logic cells that are interconnected to realize specialized or generalized logic functions, and which is compatible with RQL circuits and systems. A JTLBSLA can include mask-programmed logic cells and/or software-programmable logic cells. A plurality of JTLBSLAs can be integrated with a plurality of hybrid Josephson transmission line (JTL) random-access memories (RAMs) to form JTL-based superconducting field programmable gate arrays (JTLBSFPGAs). JTLBSFPGAs can have tremendous speed and energy-consumption advantages over CMOS FPGAs.
A JTLBSLA can consist of a plurality of logic cells, each of which can be either mask-programmed or software-programmable. The logic function of a JTLBSLA or portions of such an array that consists of mask-programmed logic cells is hard-coded. The logic function of a mask-programmed logic array or array portion is written into a die or chip during fabrication by one or more masks customized to realize the intended function. In contrast, the logic function of a software-programmable logic array or array portion can be altered at any time by using control signals to write to software-programmable logic cells in the array or array portion.
A JTLBSFPGA, as described herein as made of a plurality of JTLBSLAs, can be software-programmable. At the cost of increased programming complexity (i.e., at implementation time), JTLBSFPGAs enable a programmer to implement complex algorithms in hardware directly during program run time. Although the underlying technologies are fundamentally different, JTLBSFPGAs can provide many of the core capabilities found in CMOS FPGAs. JTLBSFPGAs can provide more area efficiency when implementing larger functional compositions (i.e., can have many more Boolean terms) than what look-up tables (LUTs) implement in CMOS FPGAs. CMOS industry-standard LUTs typically offer four-input logic functions. JTLBSFPGAs can also run at frequencies that are more than a factor of ten greater than what is possible with CMOS FPGAs.
RQL-compliant outputs OUT1, OUT2, OUT3 of JTLBSLA 100 are derived from the inputs and written cell states according to the following equations:
OUT1=
OUT2=
OUT3=
where overline indicates Boolean negation and parentheses indicate operation precedence.
For software-programmable-logic-array applications, the logic cell states (H through P in the illustrated example of
All inputs are exposed to utilize their full logic capability. Thus, what might have been, in a memory array context, only word selection line signals A, B, C, can process any set of RQL signals in a JTLBSLA context. In a memory array context, when a read is enabled, word lines are designated to receive one high signal (i.e., logical “1”) and two low signals (i.e., logical “0”). As well, signals X, Y, Z can process any RQL signal at any time in a JTLBSLA context, whereas in a memory array context, they can only receive a high signal (i.e., logical “1”) when read is enabled. In other words, X, Y, Z signals in a memory array context only assist in the detection of the state of a memory cell. As shown in
The superconducting state-writable logic cell circuit 200 can be referred to as a Josephson-junction-based (JJ-based) cell, in contrast to the more compact, magnetic-Josephson-junction-based (MJJ-based) cells 800 and 900 of
The decision loop 204 includes a first loop transformer 214 that includes a primary inductor L5 and a secondary inductor L6, and a second loop transformer 216 that includes a primary inductor L7 and a secondary inductor L8. The bias current DCIN is provided through the primary inductors L5 and L7 to induce a loop current in the respective secondary inductors L6 and L8. In addition, in the example logic cell circuit 200 of
The decision loop 204 also includes a read selection input 218 on which the read selection signal RSLIN is provided via Special JTL2, which is discussed in greater detail later with respect to
As used herein, the term “amplitude of the loop current” with respect to the loop current describes an amplitude of the loop current in a given one direction of current flow, as opposed to an absolute value of the amplitude of the loop current, and thus irrespective of current direction. Therefore, the loop current can have a first amplitude corresponding to a positive amplitude (e.g., clockwise), such as corresponding to the digital state having the first logic state (e.g., logical “0”), as described in greater detail herein. The loop current can also have an amplitude that is less than the first amplitude, but is still positive (e.g., still clockwise), such as based on a current component being induced in the loop via the read selection SFQ pulse RSLIN while the decision loop 204 stores the first logic state. The loop current can also have an amplitude that is approximately zero (e.g., slightly positive or slightly negative), such as corresponding to the digital state having the second logic state (e.g., logical “1”). Additionally, the loop current can have an amplitude that is negative (e.g., counter-clockwise), such as based on the current component being induced via the read selection SFQ pulse RSLIN while the decision loop 204 stores the second logic state. The possible amplitudes described herein are provided by example, such that the loop current can have a broad variety of amplitudes that can correspond to a respective variety of conditions associated with the digital state and/or the data write and data read operations, with none or some of the amplitudes corresponding to different current directions in the decision loop 204. Therefore, in a quiescent state in each of the first and second logic states of the stored digital state, the loop current has a different amplitude, which may or may not correspond to different current directions.
Logic cell circuit 200 of
The Josephson D gate 202 can include a first Josephson junction JJ1 associated with the write selection input 206 and a second Josephson junction JJ2 associated with the write data input 208, wherein the digital state corresponds to a superconducting phase associated with the first Josephson junction. The Josephson D-gate circuit 202 can be configured to set the digital state from the first logic state to the second logic state based on setting the first Josephson junction JJ1 to a 2π-state in response to the write selection SFQ pulse and the write data SFQ pulse, the 2π-state of the first Josephson junction JJ1 providing the superconducting phase at a non-zero amplitude that is inductively coupled to the decision loop 204 to set the amplitude of the loop current to correspond to the second logic state.
The Josephson D-gate circuit 202 can further include a bias transformer, 210 the bias transformer including a primary inductor L1 configured to conduct a bias current and a secondary inductor L2 interconnecting the first and second Josephson junctions JJ1, JJ2 and being configured to conduct an induced bias current in the first and second Josephson junctions JJ1, JJ2 in response to the bias current, wherein the decision loop 204 includes a tertiary inductor L4 associated with the bias transformer 210 that is configured to inductively couple the superconducting phase into the decision loop 204 to affect the amplitude of the loop current.
The decision loop 204 can include at least one loop transformer 214, 216 each of the at least one loop transformer including a primary inductor L5, L7 configured to conduct a bias current DCIN, a secondary inductor L6, L8 in series with the escape Josephson junction JJESC and being configured to induce the loop current, such that the loop current has a first amplitude corresponding to the first logic state, and a second amplitude that is set by the Josephson D-gate circuit 202 corresponding to the second logic state. One 216 of the at least one loop transformer can further include a tertiary inductor L9 that is inductively coupled to the primary inductor L7 associated with the respective at least one loop transformer 216, the tertiary inductor L9 being configured to conduct the read selection SFQ pulse RSLIN to change the amplitude of the loop current to bias the escape Josephson junction JJESC. The decision loop 204 is configured to receive the read data SFQ pulse RSLIN to trigger the escape Josephson junction JJESC in response to the loop current having the second amplitude, or to not trigger the escape Josephson junction in response to the loop current having the first amplitude. The second amplitude of the loop current can be approximately equal to the first amplitude of the loop current minus an induced current component corresponding to a superconducting phase of at least one Josephson junction associated with the Josephson D-gate circuit 202 that that is induced in the decision loop 204.
Logic cell circuit 200 can further include one or more of a first Josephson transmission line (JTL) interconnect (not shown) that couples a word-write line to the write selection input 206 to provide the write selection SFQ pulse WSL based on a word-write signal that propagates on the word-write line, a second JTL interconnect (not shown) that couples a bit-write line to the write data input 208 to provide the write data SFQ pulse WDL based on a bit-write signal that propagates on the bit-write line, a third JTL interconnect special JTL2 that couples a word-read line to the read selection input 218 to provide the read selection SFQ pulse RSLIN based on a word-read signal that propagates on the word-read line, a fourth JTL interconnect (not shown) that couples a bit-read line to the read data input 220 to provide the read data SFQ pulse RDLIN based on a bit-read signal that propagates on the bit-read line, and a fifth JTL interconnect JTL1 that couples the decision loop 204 to the output 222 to provide an output SFQ pulse RDLOUT.
Arranged as shown in
A bias current can be provided to at least one loop transformer 214, 216, each of the at least one loop transformer 214, 216 comprising a primary inductor L5, L7 configured to conduct the bias current and a secondary inductor L6, L8 in series with the escape Josephson junction JJESC and being configured to induce the loop current, such that the loop current has a first amplitude corresponding to the first logic state, and a second amplitude that is set by the Josephson D-gate circuit 202 corresponding to the second logic state. Providing the read selection SFQ pulse can include providing the read selection SFQ pulse RSLIN to a tertiary inductor L9 to change the amplitude of the loop current to bias the escape Josephson junction JJESC. Providing the read data SFQ pulse RDLIN can include providing the read data SFQ pulse RDLIN to trigger the escape Josephson junction JJESC in response to the loop current having the second amplitude, or to not trigger the escape Josephson JJESC junction in response to the loop current having the first amplitude. The second amplitude of the loop current can be approximately equal to the first amplitude of the loop current minus an induced current component corresponding to a superconducting phase of at least one Josephson junction associated with the Josephson D-gate circuit 202 that that is induced in the decision loop 204.
To summarize the functioning of logic cell circuit 200, the D gate 202 can store a state H (corresponding, e.g., to any of the states H through P in
In a normal quiescent state H (i.e., when D-gate circuit 202 is set to a state H of logical “0”), a pulse sent in on read data input 220 (as read data signal RDLIN) passes right through the escape Josephson junction JJESC, and thereby propagates through the circuit 200 as output signal RDLOUT on output line 222, because escape Josephson junction JJESC acts, in this quiescent state, as a superconducting short. However, if the D-gate circuit 202 is in a logical “1” state H and a read is enabled with read selection signal RSLIN provided on read selection input 218, sufficient counter-clockwise current is induced to heavily forward-bias the escape Josephson junction JJESC, such that when a read pulse RDLIN comes in on read data input 220, the read pulse RDLIN triggers the escape Josephson junction JJESC and “captures” the read pulse RDLIN, i.e., the read pulse RDLIN is not permitted to proceed to output 222 as an output signal RDLOUT.
Thus, the read circuit 204 performs an “inverted read,” in that if reading a logical “1,” no pulse is observed on the output line 222 as output signal RDLOUT, because a read data pulse RDLIN does not propagate through to output 222, whereas if reading a logical “0,” the read data pulse RDLIN pulse propagates through to the output 222 as output signal RDLOUT. An RQL inverter can be connected to output line 222 to invert the output signal RDLOUT, but this is not strictly necessary, because the expectation of an inverted read can otherwise be built into the architecture of the JTLBSLA, JTLBSFPGA, or larger RQL system in which either of these is included.
The dots on the transformers in
Mask-programmable cell 300 of
Mask-programmable cell 400 of
In each of cell circuits 300 and 400, the current induced into the loop by DC bias DC1IN can be, for example, between ¼Φ0 and ½Φ0. Also, in each of cell circuits 300 and 400, additional DC bias line DC2IN can provide fine-tuning of circuit performance. For example, DC bias lines can be tuned so that when incoming selection signal RSLIN is “high,” a significant portion (e.g., between about fifty and about ninety percent) of the critical current of Josephson junction is contributed by the selection line signal and the DC bias lines DC1IN and DC2IN. As an example, if escape Josephson junction JJESC inside the loop has a critical current of 100 μLA, the combined contributions of RSLIN, DC1IN, and DC2IN, when “on,” can total to provide between about 80 and 90 μLA flowing counter-clockwise through the loop, such that additional read data line current coming from RDLIN suffices as the “nudge” to push escape Josephson junction JJESC to trigger, and when inputs RSLIN, DC1IN, and DC2IN are “off,” approximately zero current flows through the loop and escape Josephson junction JJESC. Accordingly, in the event that activated RSLIN and DC1IN signals do not by themselves suffice to place the loop current within the desired subcritical range, additional current can be supplied through tuning line DC2IN to place the loop current within the desired subcritical range. DC2IN can likewise be used to tune either of circuits 300 or 400 in the opposite direction. In the event that the process is “hotter” than desired, meaning that activated RSLIN and DC11N signals combine to provide a supercritical current through the loop that includes escape Josephson junction JJESC (e.g., 110 μLA), such that escape Josephson junction JJESC triggers “prematurely” (i.e., without a read data line input signal from RDLIN), supplying a counteracting current on DC2IN can return the loop current to subthreshold. Thus, DC2IN can be used to supply fine tuning to cell circuits 300, 400 in any of several different ways.
In each of cell circuits 200, 300, and 400, output Josephson transmission line JTL1 near the bottom of respective drawings
Mask-programmable cell 700 of
For a read operation of cell circuit 800, an RQL pulse pair propagates along the read selection line 806 from input RSLIN to output RSLOUT. Special JTL2, which functions as previously described, and which can be realized in a variety of ways, including as illustrated in
In a read operation, the logic state H of magnetic Josephson junction MJJ is directly imposed within the superconducting loop. Under no-select conditions, the current in the loop flows clockwise, effectively deselecting the escape Josephson junction JJESC. However, under full-select conditions, where magnetic Josephson junction MJJ is in the π state, and the read selection line 806 is pulsed, the current is reversed, forward-biasing the escape Josephson junction JJESC and stopping any pulses (i.e., interrogation pulses) from propagating further along the read data line 808. In the half-select case, where the magnetic Josephson junction MJJ is in the 0 state, and the read selection line 806 is pulsed, the current through the escape Josephson junction JJESC is still small enough to permit pulses to propagate even though the read selection line 806 is enabled.
For a write operation exploiting spin-valve writing of magnetic Josephson junction MJJ, one write word line driver and all write bit-line drivers source write currents through one selected word line and all the selected bit-lines. As shown in
While the magnetic fields are being applied, the step of writing the magnetic Josephson junctions also involves the correct setting of the magnetic Josephson junctions into a positive 7C state, as described in U.S. Pat. No. 9,520,181, which is herein incorporated by reference. As shown in
Mixed-signal circuits that generate the positive and negative currents necessary to write the magnetic Josephson junction MJJ to two distinct states and to drive DC transformer 804 to two distinct states, as discussed in the above paragraph, can be similar to those developed for Josephson magnetic random access memory (JMRAM). The flux generation rates required of the write circuits for software-programmable logic are advantageously much less than those required for JMRAM. RQL circuits or CMOS circuits can be used as write circuitry for the magnetic Josephson junctions.
JTLBSLAs as described herein can support a broad range of functional capabilities, including capabilities described in U.S. Pat. Nos. 9,595,970 and 9,613,699, which are incorporated by reference. The JTLBSLAs described herein can thus implement mask-programmable logic arrays (MPLAs), software-programmable logic arrays (SPLAs), content-addressable memory (CAM), and interchangeable logic and memory (ILM). As high bandwidth integrated logic and memory, JTLBSLAs have applications both in CPUs and FPGAs, including the JTLBSFPGAs illustrated in
Also in the illustrated example of
JTLBSLAs, as described herein, provide attractive features beyond those of RQL gates or previously disclosed superconducting logic arrays (SLAs). JTLBSLAs mesh directly with RQL, at both ultimate and interim inputs and outputs, without needing any signal conversion circuitry, because the logic cells use standard RQL signaling. Unlike SLAs based on JMRAM, JTLBSLAs do not require word line drivers, flux pumps, or sense amplifiers. JTLBSLAs have none of the component overhead of JMRAM, except a decoder where used as a memory. JTLBSLAs can run at resonator frequencies (e.g., up to about ten gigahertz) just like RQL. Because they implement targeted algorithms at RQL frequencies, they perform more useful computation per unit die area than a general-purpose RQL CPU. Such a targeted algorithmic capability dramatically reduces run time, increases energy efficiency, and increases computational bandwidth compared to a general-purpose RQL CPU. JTLBSLAs offer bandwidth and process simplicity whereas previously disclosed SLAs may offer lower latency and density.
What have been described above are examples of the invention. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the invention, but one of ordinary skill in the art will recognize that many further combinations and permutations of the invention are possible. Accordingly, the invention is intended to embrace all such alterations, modifications, and variations that fall within the scope of this application, including the appended claims. For example, it will be understood that the conventions used herein for logical “0” and logical “1” can be swapped. Additionally, where the disclosure or claims recite “a,” “an,” “a first,” or “another” element, or the equivalent thereof, it should be interpreted to include one or more than one such element, neither requiring nor excluding two or more such elements. As used herein, the term “includes” means includes but not limited to, and the term “including” means including but not limited to. The term “based on” means based at least in part on.
The invention was made under Contract Number W911NF-14-C-0115. The U.S. Government has rights to the invention as specified in that contract.
Number | Name | Date | Kind |
---|---|---|---|
4360898 | Faris | Nov 1982 | A |
6335890 | Reohr et al. | Jan 2002 | B1 |
9384827 | Reohr | Jul 2016 | B1 |
9520181 | Miller et al. | Dec 2016 | B1 |
9595970 | Reohr et al. | Mar 2017 | B1 |
9613699 | Reohr et al. | Apr 2017 | B1 |
9712172 | Shauck et al. | Jul 2017 | B2 |
9761305 | Reohr | Sep 2017 | B2 |
9779803 | Konigsburg | Oct 2017 | B1 |
9812192 | Burnett et al. | Nov 2017 | B1 |
20060171190 | Kawasumi | Aug 2006 | A1 |
20080175086 | Luk | Jul 2008 | A1 |
20090244958 | Bulzacchelli et al. | Oct 2009 | A1 |
20090303807 | Lee | Dec 2009 | A1 |
20100110803 | Arai | May 2010 | A1 |
20110122675 | Parkinson | May 2011 | A1 |
20120184445 | Mukhanov et al. | Jul 2012 | A1 |
20150043273 | Naaman et al. | Feb 2015 | A1 |
20170104491 | Shauck | Apr 2017 | A1 |
20180025775 | Ambrose | Jan 2018 | A1 |
Number | Date | Country |
---|---|---|
3266024 | Jan 2018 | EP |
3350808 | Jul 2018 | EP |
2013529380 | Jul 2013 | JP |
2015525426 | Sep 2015 | JP |
101801901 | Nov 2017 | KR |
2013180946 | Dec 2013 | WO |
2015050621 | Apr 2015 | WO |
20160140889 | Sep 2016 | WO |
20160183213 | Nov 2016 | WO |
2017091258 | Jun 2017 | WO |
Entry |
---|
Vernik, et al.: “Magnetic Josephson Junctions with Superconducting Interlayer for Cryogenic Memory”; IEEE Transactions on Applied Superconductivity ( vol. 23, Issue: 3, Jun. 2013 ); found on the internet at: https://arxiv.org/ftp/arxiv/papers/1212/1212.0815.pdf; Jul. 11, 2018. |
Ryazanov, et al.: “Magnetic Josephson Junction Technology for Digital and Memory Applications”; Physics Procedia, vol. 36, 2012, pp. 35-41; found on the internet at: https://ac.els-cdn.com/S1875389212020639/1-s2.0-S1875389212020639-main.pdf?_tid=a1a93085-a2e8-40ff-a8fa-65b19483b626&acdnat=1531313726_d791c05385184f2df22a2ed34b3450f9 (Jul. 11, 2018). |
Cini et al., “Magnetically induced pumping and memory storage in quantum rings”, American Physical Society (APS), Physical Review B—Condensed Matter and Materials Physics, vol. 84, Issue 24, pp. 245201-1-245201-5, Dec. 8, 2011 (Dec. 8, 2011) [retrieved on Jun. 19, 2018 (Jun. 19, 2017) from: https://joumals.aps.org/prb/Abstract/10.1103 PhysRevB.84.245201, also available at: https://arxiv.org/pdf/1112.0140.pdf ]. |
Canadian Office Action corresponding to Canadian Patent Application No. 2,977,378 dated Jun. 21, 2018. |
Japanese Office Action corresponding to Japanese Patent Application No. 2018-533039 dated Mar. 5, 2019. |
International Search Report and Written Opinion corresponding to International Application No. PCT/US2018/064320 dated Mar. 3, 2019. |
Baek, B. et al, Hybrid superconducting-magnetic memory device using competing order parameters', Nature Communications, vol. 5, May 2014. |
Korean Office Action corresponding to Korean Application No. 10 2017 7025552 dated Mar. 5, 2019. |
Canadian Office Action corresponding to Canadian Patent Application No. 2996621, dated Dec. 12, 2018. |