Layout for ring oscillator-based ising machine system
The ring oscillator-based Izing machine system addresses inefficiencies in existing systems by arranging oscillators in a two-dimensional array with controlled phase bindings, reducing power consumption and computation time for complex optimization problems.
Patent Information
- Application Number
- JP2024107132
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-19
- Filing Date
- 2024-07-03
- Publication Date
- 2025-01-30
- Estimated Expiration
- 2044-07-03
AI Technical Summary
Existing Izing machine systems face inefficiencies in solving complex optimization problems like the Traveling Salesman Problem due to high power consumption and prolonged computation times, despite their ability to provide high-quality solutions quickly.
A layout for a ring oscillator-based Izing machine system is designed with multiple ring oscillators arranged in a two-dimensional array, featuring cross-bonded phase relationships and controlled by a controller to manage phase bindings, reducing power consumption and computation time.
The system achieves faster and more efficient solutions to complex optimization problems by minimizing power consumption and optimizing signal propagation distances, enabling quicker and more accurate phase relationships among oscillators.
Smart Images

Figure 2025015448000001 
Figure 2025015448000002 
Figure 2025015448000003
Abstract
Description
[Technical field]
[0001] The present invention relates generally to computer systems, and more particularly to layouts for ring oscillator-based Ising machine systems. [Background technology]
[0002] An Ising machine is a type of specialized computer system for solving a variety of special problems known as Ising problems or non-deterministic polynomial-time hard (NP-hard) problems. One example is the "traveling salesman problem," a general term for optimization problems. Such Ising problems can be solved according to the principle of the Ising model, i.e., the Ising problem Hamiltonian: H(σ)=-Σh i σ i -ΣJ ij σ i σ j Such specialized Ising machines operate based on implementing a large number of variables to provide high quality answers to specific combinatorial optimization problems very quickly. A typical Ising machine implements several elements (e.g., oscillators) that interact with other elements in the Ising machine to provide cross-coupled effects. Cross-coupled effects can be implemented to solve Ising problems based on the combined effects of such cross-coupled effects. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] U.S. Pat. No. 8,195,596 [Patent Document 2] U.S. Pat. No. 1,545,963 [Non-patent literature]
[0004] [Non-Patent Document 1] CLEMENTS, ET AL., "An Optimal Design for Universal Multiport Interferometers," [Retrieved July 19, 2023], Internet (URL: https: / / www.arxiv-vanity.com / papers / 1603.08788 / ) Summary of the Invention
[0005] An example includes an Ising machine system configured to solve an Ising problem. The system includes a plurality of ring oscillators each configured to propagate an oscillation signal. Each of the plurality of ring oscillators includes a plurality of coupling stages. Each of the plurality of coupling stages can have a unique phase index number within a respective one of the plurality of ring oscillators that matches a phase index number of the plurality of coupling stages of each of the other ring oscillators. Each of the plurality of coupling stages, except for one coupling stage of each of the plurality of ring oscillators, is cross-coupled to a coupling stage having the same phase index number of one of the other ring oscillators via an oscillation signal associated with the respective ring oscillator, such that each of the plurality of ring oscillators is cross-coupled to each of the other ring oscillators at a single respective one of the plurality of coupling stages to provide a respective phase coupling between the respective cross-coupled ring oscillators.
[0006] Another example includes an Ising machine system configured to solve an Ising problem. The system includes a plurality of ring oscillators each configured to propagate an oscillator signal. Each of the plurality of ring oscillators includes a plurality of coupled stages. The plurality of coupled stages of a first ring oscillator of the plurality of ring oscillators may be fabricated in a linear physical arrangement along a first axis of a two-dimensional array. The plurality of coupled stages associated with a second ring oscillator of the plurality of ring oscillators may be fabricated in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis. Each of the remaining ring oscillators may be fabricated in a physical L-shape. Each of the plurality of coupled stages may have a unique phase index number within a respective one of the plurality of ring oscillators that matches a phase index number of the plurality of coupled stages of each of the other ring oscillators. Each of the multiple coupling stages, except for one coupling stage of each of the multiple ring oscillators, is cross-coupled to a coupling stage having the same phase index number of one of the other ring oscillators via an oscillation signal associated with the respective multiple ring oscillator based on crossing with each of the other ring oscillators in the two-dimensional array, and each of the multiple ring oscillators is cross-coupled to each of the other ring oscillators at a single respective one of the multiple coupling stages to provide a respective phase coupling between each cross-coupled ring oscillator.
[0007] Another example includes an Ising machine system configured to solve an Ising problem. The system includes a plurality of ring oscillators each configured to propagate an oscillation signal. Each of the plurality of ring oscillators includes a plurality of coupling stages. Each of the plurality of coupling stages can have a unique phase index number within a respective one of the plurality of ring oscillators that matches a phase index number of the plurality of coupling stages of each of the other ring oscillators. Each of the plurality of coupling stages, except for one coupling stage of each of the plurality of ring oscillators, is cross-coupled to a coupling stage having the same phase index number of one of the other ring oscillators via an oscillation signal associated with the respective ring oscillator, such that each of the plurality of ring oscillators is cross-coupled to each of the other ring oscillators at a single respective one of the plurality of coupling stages to provide a respective phase coupling between the respective cross-coupled ring oscillators. A propagation distance of the oscillation signal between a first coupling stage having a given phase index number and a second coupling stage having a next successive phase index number is equal for each of the plurality of ring oscillators. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram of an example Ising machine. [Diagram 2] FIG. 1 illustrates an exemplary ring oscillator. [Diagram 3] FIG. 1 illustrates an example Ising machine connection network. [Figure 4] FIG. 1 illustrates an exemplary ring oscillator. [Diagram 5] FIG. 13 illustrates another example Ising machine connection network. [Figure 6] FIG. 13 illustrates another example Ising machine connection network. [Figure 7] FIG. 13 illustrates another example Ising machine connection network. [Figure 8] FIG. 13 illustrates another example Ising machine connection network. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] The present invention relates generally to computer systems, and more particularly to layouts for ring oscillator-based Ising machine systems. The Ising machine system may be implemented in any of a variety of applications to solve complex Ising problems, such as optimization problems (e.g., the "Traveling Salesman Problem"). The Ising machine system includes a plurality of ring oscillators each configured to propagate an oscillation signal. As an example, each of the plurality of ring oscillators may be formed from complementary metal oxide semiconductor (CMOS) fabrication techniques including logic gates formed from CMOS, including application specific integrated circuits (ASICs) and / or field programmable gate arrays (FPGAs), and the like. Each of the plurality of ring oscillators may include a plurality of coupling stages each configured to receive an oscillation signal from one of the other ring oscillators and provide an oscillation signal to the other ring oscillators in turn. The oscillation signal of a given ring oscillator may affect the relative phase relationship between the respective ring oscillators. Thus, each of the plurality of ring oscillators may be coupled to at least one other ring oscillator in a cross-coupled manner to provide a respective dynamic phase coupling between the respective ring oscillators.
[0010] The Ising machine system may also include an Ising machine controller configured to generate a plurality of sets of control signals that are provided to the plurality of ring oscillators. As an example, the Ising machine controller may provide a set of control signals to each of a plurality of coupling stages of each of the plurality of ring oscillators. As an example, the control signals may include a delay select signal that may set a variable propagation delay of the ring oscillator to control a relative dynamic phase coupling of each of the plurality of ring oscillators with respect to each of at least one other ring oscillator.
[0011] As an example, each of the multiple ring oscillators can be manufactured the same and therefore can include the same number of coupling stages. Each of the multiple coupling stages in a given one of the multiple ring oscillators can have a unique phase index number. Thus, cross-coupling of coupling stages in separate ring oscillators can occur between coupling stages with the same phase index number in each pair of the multiple ring oscillators. For example, the multiple coupling stages can be arranged in a two-dimensional array, where two ring oscillators can include multiple coupling stages made in a linear physical arrangement that is orthogonal to each other. The remaining ring oscillators can each be arranged as an L-shape with a coupling stage at the apex. Thus, a given one ring oscillator can cross over a coupling stage of the same phase index number with each of the other ring oscillators in the two-dimensional array, except for one coupling stage in each of the multiple ring oscillators. The oscillation signals of each of the multiple ring oscillators have equal propagation distances between pairs of the same phase index numbers of coupling stages to provide a precise phase relationship between the oscillation signals. Furthermore, based on a two-dimensional array arrangement of multiple coupling stages, the Ising machine system can be fabricated in a compact manner to have less delay in the oscillation signal and less power consumption, thereby providing a more efficient design that can solve the Ising problem faster.
[0012] 1 illustrates an example block diagram of an Ising machine system 100. The Ising machine system 100 may be implemented in any of a variety of specialized computing environments to solve Ising problems that require the evaluation of a large number of variables. As an example, the Ising machine system 100 may be implemented to solve a complex optimization problem (e.g., the "Traveling Salesman Problem").
[0013] The Ising machine system 100 includes a plurality of ring oscillators 102 and an Ising machine controller 104. The ring oscillators 102 may be implemented as any of a variety of different types of ring oscillators. As an example, the ring oscillators 102 may be formed from complementary metal oxide semiconductor (CMOS) fabrication techniques including logic gates formed from CMOS, including application specific integrated circuits (ASICs) and / or field programmable gate arrays (FPGAs), and the like. Thus, each of the plurality of ring oscillators 102 may propagate an oscillation signal, generally shown as a set of oscillation signals OSC in the example of FIG. 1. As an example, each of the plurality of ring oscillators 102 may be cross-coupled to another one of the ring oscillators 102 via a respective oscillation signal OSC, thereby providing dynamic phase coupling between each cross-coupled ring oscillator 102.
[0014] As described herein, the term "phase coupling" refers to the phase characteristics of a given one of the multiple ring oscillators 102 being dependent on the phase characteristics of another one of the multiple ring oscillators 102. As an example, the phase coupling can include a tendency toward phase matching or phase antimatching between the respective oscillation signals OSC of the cross-coupled ring oscillators 102. Also, as described herein, the Ising machine system 100 operates in a manner that is substantially constantly changing with respect to the phase relationship between the ring oscillators, and therefore the phase coupling is referred to as dynamic. As an example, the ring oscillators 102 can be controlled by various control signals, such as a delay select signal, that can control the amount of delay of the oscillation of a given ring oscillator, and therefore the oscillation period of a given ring oscillator. As described herein, the term "oscillation period" refers to the total time that a given node of a respective ring oscillator changes from a first logic state to a second logic state and from the second logic state back to the first logic state. For example, the ring oscillators 102 can be made to provide an odd number of logic inversions per revolution.
[0015] As an example, each of the multiple ring oscillators 102 may be fabricated in a substantially similar manner, such that each ring oscillator includes the same number of coupled stages. Each of the multiple coupled stages in a given one of the multiple ring oscillators 102 may have a unique phase index number that corresponds to a matching phase index number of another ring oscillator 102 to which the respective ring oscillator 102 is cross-coupled. Thus, cross-coupling of coupled stages in separate ring oscillators 102 may occur between coupled stages having the same phase index number in each pair of ring oscillators 102.
[0016] For example, the multiple coupling stages may be arranged in a two-dimensional array. As an example, at least two ring oscillators 102 may include multiple coupling stages made in a linear physical arrangement orthogonal to each other, such that each two ring oscillators intersect in a cross-coupled set of coupling stages having the same phase index number. The remaining ring oscillators 102 may each be arranged as an L-shape with a coupling stage at an apex. As described herein, the term "L-shape" refers to a configuration in which the ring oscillator 102 has a portion extending at a right angle from the apex, with the coupling stage disposed at the apex. However, it will be understood that the legs of the L-shaped ring oscillator 102 may have the same or different lengths relative to each other. Furthermore, although the legs of the L-shaped ring oscillator 102 have been described as extending approximately orthogonally to each other, the legs may alternatively extend laterally to each other to define an acute or obtuse angle between them.
[0017] Thus, based on the remaining ring oscillators 102 being arranged as an L-shape, a given ring oscillator 102 may intersect with each of the other ring oscillators 102 in the two-dimensional array through a coupling stage with the same phase index number, except for one coupling stage of each of the plurality of ring oscillators 102. For example, the coupling stage at the apex of each of the L-shaped ring oscillators 102 and the coupling stage at one end of the linear ring oscillator 102 may be decoupled with respect to the other coupling stages. As an example, each of the plurality of uncoupled coupling stages may have a phase index number that is unique among the ring oscillators 102.
[0018] In the example of FIG. 1 , the Ising machine controller 104 is configured to provide a plurality of control signals, shown as “CTL”, to the ring oscillator 102. As an example, the plurality of control signals CTL may be provided as a set to each of the plurality of ring oscillators 102 such that the plurality of control signals CTL correspond to parameters of the Ising problem to be solved by the Ising machine system 100. As an example, the plurality of control signals CTL may include a delay selection signal provided to each of the plurality of ring oscillators 102. As another example, a separate delay selection signal may be provided to each of a plurality of coupling stages of each of the plurality of ring oscillators 102 such that the net oscillation period of each of the ring oscillators 102 at a given moment may be set based on the collective contribution of each of the delay selection signals provided to each of the respective plurality of coupling stages of a given ring oscillator 102. The multiple control signals CTL may also include additional signals, such as selectively enabling phase coupling of the coupling to the other ring oscillator(s) 102 and / or selectively providing a reference clock and / or a simulated noise signal to the coupling stage for phase matching to the reference clock and / or a simulated noise signal.
[0019] As an example, a variable delay of each of the multiple coupling stages of each of the multiple ring oscillators 102, set by a delay selection signal, can provide a variable strength or weight to the cross coupling between the respective ring oscillators 102. The Ising machine system 100 further includes a phase sampler 106. The phase sampler 106 can be configured to monitor a logic state of each of the multiple oscillation signals of each of the multiple ring oscillators 102 to facilitate solving a given Ising problem. For example, to provide a solution to a given Ising problem, the Ising machine system 100 can operate for a duration (e.g., as determined by either various machine parameters or other circumstances, such as empirical observations and / or real-time constraints), and the phase of the ring oscillator 102 can be sampled by the phase sampler 106 (e.g., via the oscillation signal OSC). The sampled phase of the ring oscillator 102 can be read by the phase sampler 106 as a set of data that can represent a solution to the Ising problem. The method of setting the variable delay for each of the multiple coupled stages of the ring oscillator 102 can be provided in a variety of ways, such as those described in U.S. Pat. No. 11,545,963, which is incorporated herein by reference in its entirety.
[0020] Based on the two-dimensional array arrangement of the multiple coupling stages of the multiple ring oscillators 102, the Ising machine system 100 can be manufactured in a compact manner such that the delay in the oscillation signals is low and the power consumption of the Ising machine system 100 is low. For example, the multiple oscillation signals of each of the multiple ring oscillators 102 have equal propagation distances between pairs of the same phase index numbers of the coupling stages between the ring oscillators 102 to provide a precise phase relationship between the oscillation signals. Thus, the ring oscillators 102 can have approximately equal Manhattan distances between the coupling stages of any two phase index numbers relative to each other. Thus, the compact design of the Ising machine system 100 can provide a more efficient design that can solve Ising problems faster and with less power consumption.
[0021] 2 shows a diagram of an exemplary ring oscillator 200. The ring oscillator 200 may correspond to one of the ring oscillators 102 in the example of FIG. 1. Therefore, the following description of the example of FIG. 2 refers to the example of FIG.
[0022] The ring oscillator 200 includes a plurality of N coupled stages 202, where N is a positive integer. Each of the plurality of coupled stages 202 is interconnected by an inverter 204, which may be implemented as a CMOS inverter (e.g., with complementary pull-up and pull-down transistor switches). The ring oscillator 200 is configured to propagate an oscillation signal OSC. As an example, N may be an odd integer such that the oscillation signal OSC exhibits an odd number of logic inversions during one revolution of the ring oscillator 200.
[0023] In the example of FIG. 2, multiple oscillation signals OSC1 to OSC N are provided from a plurality of coupling stages 202, and a plurality of oscillation signals OSC1' to OSC N ' are provided by the plurality of inverters 204. Thus, a given Y-th oscillation signal OSC Y ' is the Yth oscillator signal OSC Y Furthermore, a given Y-th oscillation signal OSC provided by the Y-th combining stage 202 corresponds to an inverted version of Y is the oscillation signal OSC provided as an input to each Y-th combining stage 202. Y-1 As an example, the combining stage 202 may generate an oscillation signal OSC Y To provide an oscillator signal OSC Y-1 It is possible to provide a variable propagation delay of .
[0024] Further, each of the multiple coupling stages 202 includes CTL1 to CTL NThe control signals CTL may correspond to or include a set of control signals CTL provided from the Ising machine controller 104. As discussed above, the control signals CTL may include a delay selection signal that may affect the propagation delay of the oscillator signal OSC through the combining stage 202. Thus, the delay selection signal may affect the propagation delay of the oscillator signal OSC through the combining stage 202. Y-1 ' and the oscillator signal OSC Y 200。 Control signal CTL may also include various additional signals for controlling the operation of each of the multiple coupling stages 202 and therefore the ring oscillator 200. As described above, the control signal CTL may also include various additional signals for controlling the operation of each of the multiple coupling stages 202 and therefore the ring oscillator 200.
[0025] In the example of FIG. 2, a number of oscillating signals OSC1′ to OSC2′ are provided from respective combining stages 202 (e.g., via inverters 204). N ' is multiple output oscillation signal OSC OUT1 ~OSC OUTN Further, in the example of FIG. 2, each of the multiple combining stages is provided as an OSC IN1 ~OSC INN 1. An input oscillator signal OSC IN 2, each of the multiple combining stages 202 is numbered based on a unique phase index number, and thus may be numbered "1" through "N." Thus, the oscillator signal OSC provided to a given one of the multiple combining stages 202 is IN are oscillator signals OSC provided by combination stages having the same phase index number in different ring oscillators 102. OUT Similarly, the oscillator signal OSC provided from a given coupled stage 202 of the ring oscillator 102 may correspond to OUTare provided to combining stages having the same phase index number in different ring oscillators 200. Thus, the oscillator signal OSC IN and OSC OUT can provide cross-coupling of a given one of the multiple coupling stages 202 to a coupling stage of a different ring oscillator 102. As an example, the multiple coupling stages 202 may all be cross-coupled to different ring oscillators 102, and one of the multiple coupling stages 202 is not coupled (cross-coupled) to any other coupling stage of another ring oscillator, as described in more detail herein.
[0026] 2, the ring oscillator 200 further includes a NAND gate 206 interconnecting the Nth combining stage 202 and the first combining stage 202. The NAND gate 206 receives an oscillation signal OSC at a first input. N at a first input and a ring oscillator enable signal REN at a second input. The ring oscillator enable signal REN may correspond to an enable signal for the entire ring oscillator 200, such that the ring oscillator 200 may be selectively enabled and disabled with respect to propagating the oscillation signal OSC. As an example, the ring oscillator enable signal REN may be provided as one of a plurality of control signals CTL provided to the ring oscillator 200 from the Ising machine control system 104. Thus, in response to assertion of the ring oscillator enable signal REN, the ring oscillator 200 may provide the oscillation signal OSC as described herein. However, in response to deassertion of the ring oscillator enable signal REN, the ring oscillator 200 may be disabled such that the oscillation signal OSC stops propagating (e.g., maintains a static logic state between each of the plurality of coupling stages 202).
[0027] Fig. 3 shows an example of an Ising machine coupling network 300. The Ising machine coupling network 300 may correspond to a part of the Ising machine system 100 in the example of Fig. 1. In describing the example of Fig. 3, the Ising machine coupling network 300 includes a plurality of ring oscillators, such as the ring oscillator 200 in the example of Fig. 2. Therefore, in the following description of the example of Fig. 3, please refer to the examples of Figs. 1 and 2.
[0028] The Ising machine coupling network 300 includes a plurality of control stages 302 fabricated in a two-dimensional array. The plurality of control stages 302 are arranged in rows and columns shown as rows 304, 306, 308, 310, 312, 314, 316, 318, 320, 322 and columns 324, 326, 328, 330, 332, 334, 336, 338, 340, 342. Each of the plurality of control stages 302 includes a phase index number associated with each control stage, numbered 1 through 10 in the example of FIG. 3. As described in more detail herein, most of the plurality of control stages 302 may represent pairs of control stages 302 each included in a different ring oscillator.
[0029] In the example of FIG. 3, the multiple ring oscillators are represented by lines connecting the multiple coupling stages 302, the lines being solid, dotted, dashed, dotted and dashed, and double dotted and dashed to represent the different ring oscillators and thus the oscillator signals propagating around a given ring oscillator. In the example of FIG. 3, the Ising machine coupling network 300 includes ten different ring oscillators, such that each type of line is replicated once to represent two different ring oscillators. Each of the multiple ring oscillators starts with a coupling stage having a phase index number of "1" and is connected along coupling stages having successive phase index numbers up to a tenth final coupling stage having a phase index number of "10". Thus, in the example of FIG. 3, each of the multiple ring oscillators crosses one different ring oscillator in each of the coupling stages 302 having the same phase index number, except for one coupling stage. Thus, the coupling stage 302 at each intersection of two ring oscillators corresponds to two coupling stages 302, one for each of the two respective ring oscillators. As an example, the coupling stages 302 at a given intersection of two ring oscillators may be fabricated together to minimize interconnections of oscillator signals due to cross-coupling between the respective ring oscillators.
[0030] Thus, the Ising machine coupling network 300 illustrates a set of X ring oscillators, each having X coupling stages 302, each cross-coupled to the remaining X-1 ring oscillators. Although X is illustrated as a quantity of 10 in the example of FIG. 3, X can be any quantity greater than 1. In the example of FIG. 3, the two-dimensional array of multiple coupling stages 302 includes a first ring oscillator having a coupling stage 302 with a phase index number of "1" in row 320 and column 332. The first ring oscillator extends linearly relative to the coupling stages 302 in a first direction (vertically in the example of FIG. 3) to the coupling stage 302 with a phase index number of "10" in row 304 and column 332. The two-dimensional array of multiple coupling stages 302 includes a second ring oscillator having a coupling stage 302 with a phase index number of "1" in row 314 and column 324. The first ring oscillator extends linearly relative to the combining stage 302 in a second direction (horizontal in the example of FIG. 3) that is orthogonal to the first direction to the combining stage 302 having a phase index number of “10” in row 314 and column 342.
[0031] The remaining ring oscillators of the Ising machine coupling network 300 are made in an L-shape such that each of the multiple ring oscillators crosses and is therefore cross-coupled with each of the other ring oscillators in the respective coupling stages 302 of the same phase index number. Thus, each of the multiple ring oscillators is cross-coupled with each of the other ring oscillators to provide dynamic phase coupling with each of the other ring oscillators. To provide a proper phase relationship with each of the other ring oscillators, each of the multiple ring oscillators can have approximately equal propagation lengths for the entire loop formed by the respective ring oscillator from a given one of the multiple coupling stages 302 through all of the other coupling stages 302 back to a given one of the multiple coupling stages 302. For example, the oscillation signals of each of the multiple ring oscillators in the Ising machine coupling network 300 have equal propagation distances between pairs of the same phase index numbers of the coupling stages between the ring oscillators in the Ising machine coupling network 300 to provide a precise phase relationship between the oscillation signals. Therefore, the ring oscillators in the Ising machine coupling network 300 can have approximately equal Manhattan distances between the coupling stages of any two phase index numbers relative to each other.
[0032] FIG. 4 shows an example diagram 400 of a ring oscillator. The ring oscillators are shown in the example of FIG. 4 as a first ring oscillator 402 and a second ring oscillator 404. The first and second ring oscillators 402 and 404 may correspond to two ring oscillators in the Ising machine coupling network 300 in the example of FIG. 3. In particular, the first ring oscillator 402 may correspond to the ring oscillator in the example of FIG. 3 having a coupling stage 302 with a phase index number of "1" in row 322 and column 332. The first ring oscillator 402 extends in a first direction along a first leg of the L-shape to a coupling stage with a phase index number of "2" at the apex of row 322 and column 334, and then extends in a second direction orthogonal to the first direction along a second leg of the L-shape to a coupling stage with a phase index number of "10" at row 306 and column 334. The first ring oscillator 402 also includes a return path for the oscillator signal that couples the coupling stage with phase index number "10" back to the coupling stage with phase index number "1." With further reference to the example of Figure 3, the first ring oscillator 402 can thus intersect and thus cross-couple with each of the other ring oscillators at each of the multiple coupling stages 302 at separate respective phase index numbers, except for the coupling stage at phase index number "2" at the apex of the L-shape.
[0033] 3 having a coupling stage 302 with a phase index number of "1" in row 318 and column 328. The second ring oscillator 404 extends in a first direction along a first leg of the L-shape to a coupling stage with a phase index number of "6" at the apex of row 318 and column 338, and then extends in a second direction orthogonal to the first direction along a second leg of the L-shape to a coupling stage with a phase index number of "10" at row 310 and column 338. The second ring oscillator 404 also includes a return path for the oscillator signal that couples the coupling stage with the phase index number of "10" back to the coupling stage with the phase index number of "1." 3, the second ring oscillator 404 may therefore intersect, and thus cross-couple, with each of the other ring oscillators in each of the multiple coupling stages 302 at separate respective phase index numbers, except for the coupling stage at phase index number "6" at the apex of the L-shape. Thus, the second ring oscillator 404 may intersect with the first ring oscillator 402 at each coupling stage having phase index number "4" that is in row 318 and column 334 that is common to both the first ring oscillator 402 and the second ring oscillator 404.
[0034] The first and second ring oscillators 402 and 404 may have approximately equal distances for the round trip of the oscillation signals in each of the first and second ring oscillators 402 and 404, which may therefore be the same distance as the remaining ring oscillators in the Ising machine coupling network 300 in the example of FIG. 3. Thus, the ring oscillators of the Ising machine coupling network 300 may provide accurate nominal phase relationships between the respective oscillation signals in solving a given Ising problem. As shown in the example of FIG. 3, the Ising machine coupling network 300 includes ten ring oscillators, however, the design principles described herein may be extended to provide much larger scale Ising machines including tens, dozens, or even more ring oscillators, as described in more detail herein. Furthermore, the Ising machine coupling network 300 may be fabricated in a CMOS fabrication process. However, a similar Ising machine may be fabricated using a column-based FPGA implementation, as described in the example of FIG. 5.
[0035] FIG. 5 illustrates another example of an Ising machine coupling network 500. The Ising machine coupling network 500 may correspond to a portion of the Ising machine system 100 in the example of FIG. 1. In describing the example of FIG. 5, the Ising machine coupling network 500 includes a ring oscillator, such as the ring oscillator 200 in the example of FIG. 2. Therefore, in the following description of the example of FIG. 5, please refer to the examples of FIG. 1 and FIG. 2. As described in the example of FIG. 5, the Ising machine coupling network 500 may be implemented using a column-based CMOS FPGA.
[0036] In the example of FIG. 3, the ring oscillator is represented by lines connecting the multiple coupling stages 502, the lines being solid, dotted, dashed, and dotted and dashed to represent the different ring oscillators and thus the oscillator signals propagating around a given ring oscillator. In the example of FIG. 5, the Ising machine coupling network 500 includes four different ring oscillators. Each of the multiple ring oscillators is connected starting with a coupling stage 502 having a phase index number "1" and along coupling stages having successive phase index numbers up to a tenth and final coupling stage having a phase index number "4". In the example of FIG. 5, the multiple coupling stages 502 are arranged in columns each corresponding to a respective one of the phase index numbers. Thus, each of the multiple ring oscillators intersects with a different ring oscillator in each of the multiple coupling stages having the same phase index number, except for one coupling stage. As a result, the coupling stage 502 at each intersection of two ring oscillators corresponds to two coupling stages 502, one for each of the two respective ring oscillators. As an example, the coupling stages 502 at a given intersection of two ring oscillators may be fabricated together to minimize interconnections of oscillator signals due to cross-coupling between the respective ring oscillators.
[0037] Thus, the Ising machine combination network 500 can operate in a similar manner as described above with respect to the Ising machine 300 in the example of Figure 3. Thus, the Ising machine combination network 500 represents an alternative embodiment to the Ising machine 300 shown in the example of Figure 3. The Ising machine combination network 500 can be expanded to include a significantly larger number of ring oscillators, and thus an increased number of combination stages with their respective phase index numbers.
[0038] As mentioned above, the design principles described herein can be extended to provide much larger scale Ising machines including tens, dozens, or even more ring oscillators. FIG. 6 shows another example Ising machine coupling network 600. The Ising machine coupling network 600 is fabricated to have a very large number of Y ring oscillators in a two-dimensional array, with each ring oscillator including Y coupling stages. As described above in the example of FIG. 3, each of the multiple ring oscillators can be cross-coupled with each of the other ring oscillators at the same phase index number. Such a large number of ring oscillators can provide for the computation of significantly more complex Ising problems. However, because each ring oscillator is configured to propagate only a single oscillating signal, the amount of delay between the determination of the phase relationship between each oscillating signal and the oscillating signal of another ring oscillator can be large based on the amount of time it takes each oscillating signal to make one round trip around each of the respective ring oscillators.
[0039] For example, in the example of FIG. 6, one of the multiple ring oscillators is outlined by a dotted line at 602. The ring oscillator 602, like all other ring oscillators in the Ising machine coupling network 600, includes 30 coupling stages, and as a result, it may take a significant amount of time for the oscillation signal to propagate one revolution around the ring oscillator 602, and therefore a significant amount of time to solve the Ising problem based on the phase relationship between the ring oscillator 602 and each of the other ring oscillators. Thus, while the design principles of the Ising machines described herein may provide a significantly more efficient solution to the Ising problem based on the reduced latency of the oscillation signal between the coupling stages and the associated reduced power consumption, extending to Ising machines with significantly larger quantities of ring oscillators without other modifications may provide diminishing marginal benefits.
[0040] 7 illustrates another example Ising machine coupling network 700. The Ising machine coupling network 700 may correspond to an Ising machine coupling network that is a modified version of the Ising machine coupling network 600 in the example of FIG. 6. In the example of FIG. 7, the Ising machine coupling network 700 includes separate array portions 702, 704, and 706 that collectively correspond to at least a portion of an Ising machine. In the example of FIG. 7, the array portions 702, 704, and 706 are arranged in a one-dimensional array.
[0041] As an example, the Ising machine coupling network 700 may be formed by splitting each of the multiple ring oscillators in a large Ising machine, such as the Ising machine coupling network 600 in the example of Figure 6, into several parts each included in one of the array parts, such as the array parts 702, 704, and 706. Thus, the ring oscillator in each array part may be a dedicated ring oscillator with a return path, and the connection with the ring oscillator in the next successive array part is made via the intermediate coupling stage 708. Thus, each of the multiple ring oscillators in a large Ising machine coupling network, such as the Ising machine coupling network 600, may be split into separate ring oscillators.
[0042] Additionally, the Ising machine coupling network 700 includes an additional coupling stage 710 at the end of the array portions 702 and 706 that is not coupled to any of the other ring oscillators. The intermediate coupling stage 708 and the additional coupling stage 710 are provided to balance the operation of the individual ring oscillators that collectively form the equivalent of a larger ring oscillator (e.g., ring oscillator 602). Thus, the intermediate coupling stage 708 corresponds to the first coupling stage in the ring oscillators in both of the adjacent array portions to include a return path to either the other intermediate coupling stage 708 (e.g., for the ring oscillator in the second array portion 704) or the additional coupling stage 710 (e.g., for the ring oscillators in the first and third array portions 702 and 706).
[0043] In the example of Figure 7, the ring oscillators of a given one of the array portions 702, 704, and 706 can propagate their respective oscillating signals in an opposite direction to the ring oscillators of the next adjacent array portion. As shown in the example of Figure 7, the ring oscillators in the array portion 702 propagate the oscillating signals in a clockwise direction, the ring oscillators in the array portion 704 propagate the oscillating signals in a counterclockwise direction, and the ring oscillators in the array portion 706 propagate the oscillating signals in a clockwise direction. Thus, the oscillating signals of the ring oscillators in each of the array portions 702, 704, and 706 can interact with each other to provide a phase relationship between the ring oscillators in each of the array portions 702, 704, and 706. In this way, a given ring oscillator in each of array portions 702, 704, and 706 can operate in the same manner as a large-scale ring oscillator throughout the large-scale Ising machine coupling network, but with a propagation time that is significantly shorter (e.g., about one-third the propagation time) than the respective oscillation signals of the large-scale Ising machine coupling network.
[0044] 7, the Ising machine coupling network 700 includes a first ring oscillator 712 in a first array portion 702, a second ring oscillator 714 in a second array portion 704, and a third ring oscillator 716 in a third array portion 706. The ring oscillator 712 also includes one of the additional coupling stages 710 and one of the intermediate coupling stages 708, the ring oscillator 714 also includes two of the intermediate coupling stages 708, and the ring oscillator 716 also includes one of the additional coupling stages 710 and one of the intermediate coupling stages 708. 7, the intermediate coupling stages 708 are shown as shared between adjacent array portions such that a single intermediate coupling stage 708 is included in both the first ring oscillator 712 and the second ring oscillator 714, and another single intermediate coupling stage 708 is included in both the second ring oscillator 714 and the third ring oscillator 716, as indicated by the dotted lines bounding the ring oscillators 712, 714, and 716. Thus, the ring oscillators 712, 714, and 716 may collectively correspond to the ring oscillator 602 in the example of FIG.
[0045] The first ring oscillator 712 may propagate in a clockwise direction within the first array portion 702, the second ring oscillator 714 may propagate in a counterclockwise direction within the second array portion 704, and the third ring oscillator 716 may propagate in a clockwise direction within the third array portion 706. Thus, the first ring oscillator 712 may be cross-coupled to the second ring oscillator 714 via one intermediate coupling stage 708, and the second ring oscillator 714 may be cross-coupled to the third ring oscillator 716 via another intermediate coupling stage 708. Thus, the ring oscillators 712, 714, and 716 may collectively correspond to the ring oscillator 602 that includes 30 coupling stages. However, because ring oscillators 712, 714, and 716 each propagate their respective oscillation signals to provide cross-coupling at each rotation, ring oscillators 712, 714, and 716 can provide phase relationships with other ring oscillators in the Ising machine coupling network 700 in approximately one-third the time of ring oscillator 602 in the Ising machine coupling network 600. Thus, the Ising machine coupling network 700 can provide faster and more efficient Ising solutions compared to the Ising machine coupling network 600.
[0046] Figure 8 illustrates another example Ising machine coupling network 800. The Ising machine coupling network 800 may correspond to a modified Ising machine coupling network, such as for the Ising machine coupling networks 600 and 700 in the examples of Figures 6 and 7, respectively. In the example of Figure 8, the Ising machine coupling network 800 includes separate array portions 802, 804, 806, and 808 that collectively correspond to at least a portion of an Ising machine. In the example of Figure 8, the array portions 802, 804, and 806 are arranged in a two-dimensional array.
[0047] The Ising machine coupling network 800 can be formed by copying the Ising machine coupling network (e.g., array portions 802, 804, 806, and 808) multiple times into an array that includes vertical and horizontal mirror symmetry. Thus, the ring oscillator in each array portion can be a dedicated ring oscillator with a return path. However, each of the multiple ring oscillators in a given one of the array portions 802, 804, 806, 808 can be cross-coupled to one ring oscillator in at least one orthogonally adjacent array portion, as shown by the cross-coupling between the array portions 802, 804, 806, 808 and the intermediate coupling stage 810. The array portions 802, 804, 806, 808 in the Ising machine coupling network 800 are shown by way of example and can include significantly more ring oscillators, coupling stages, and / or array portions than are shown in the example of FIG. 8.
[0048] The Ising machine coupling network 800 can operate as a different type of Ising machine architecture, in which the Ising machine coupling network 800 operates as an array of fully connected parts with limited cross-coupling between the parts. As an example, an Ising machine coupling network configured similarly to the Ising machine coupling network 800 can have a 10×10 array of parts, each part including 16 ring oscillators each. Thus, the Ising machine coupling network would have 1600 oscillators, and as a result, the Ising machine coupling network can implement 1600 unique variables. Thus, the number of other variables to which each variable can be connected is significantly reduced (e.g., only 15-18). Thus, the Ising machine coupling network 800 represents an alternative to the Ising machine coupling network 700.
[0049] The above are examples of the present invention. Of course, it is not possible to describe every conceivable combination of elements or methods for purposes of describing the present invention, but one skilled in the art will recognize that many more combinations and permutations of the present invention are possible. Accordingly, the present invention is intended to embrace all such changes, modifications, and variations that fall within the spirit and scope of the appended claims. In addition, when the disclosure or claims recite "a," "an," "a first," or "another" element, or the equivalent thereof, it should be construed as including one or more such elements, and does not require or exclude two or more such elements. As used herein, the term "includes" means including 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 technical ideas that can be understood from the above-described embodiment will be described below as supplementary notes. [Appendix 1] 1. An Ising machine system configured to solve an Ising problem, the Ising machine system comprising a plurality of ring oscillators each configured to propagate an oscillation signal, each of the plurality of ring oscillators including a plurality of coupling stages, each of the plurality of coupling stages having a unique phase index number within a respective one of the plurality of ring oscillators that matches a phase index number of the plurality of coupling stages of each of the other ring oscillators, each of the plurality of coupling stages, except for one coupling stage of each of the plurality of ring oscillators, is cross-coupled to a coupling stage having the same phase index number of one of the other ring oscillators via the oscillation signal associated with the respective ring oscillator, each of the plurality of ring oscillators being cross-coupled to each of the other ring oscillators at a single respective one of the plurality of coupling stages to provide a respective phase coupling between respective cross-coupled ring oscillators. [Appendix 2] 2. The system of claim 1, wherein a propagation distance of the oscillator signal between a first combining stage having a given phase index number and a second combining stage having a next consecutive phase index number is equal for each of the plurality of ring oscillators. [Appendix 3] 2. The system of claim 1, wherein the Manhattan distance of each of the plurality of ring oscillators is equal to the Manhattan distance of each of the other ring oscillators. [Appendix 4] 2. The system of claim 1, wherein the multiple coupling stages of the multiple ring oscillators are arranged in a two-dimensional array. [Appendix 5] 5. The system of claim 4, wherein the multiple coupling stages of a first ring oscillator of the plurality of ring oscillators are fabricated in a linear physical arrangement along a first axis of the two-dimensional array, and the multiple coupling stages associated with a second ring oscillator of the plurality of ring oscillators are fabricated in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis, and one of the multiple coupling stages of the first ring oscillator of the plurality of ring oscillators physically intersects one of the multiple coupling stages of the second ring oscillator of the plurality of ring oscillators having the same phase index number in the two-dimensional array. [Appendix 6] 6. The system of claim 5, wherein each of the remaining ring oscillators is fabricated in a physical L-shape, and one of the multiple coupling stages of each of the multiple ring oscillators physically intersects with one of the multiple coupling stages of each of the other ring oscillators having the same phase index number in the two-dimensional array. [Appendix 7] 7. The system of claim 6, wherein the coupling stage at the apex of the physical L-shape of each of the remaining ring oscillators is not coupled to other coupling stages of other ring oscillators of the plurality of ring oscillators. [Appendix 8] 6. The system of claim 5, wherein the two-dimensional array comprises a plurality of array portions, each of the plurality of array portions comprising a separate plurality of ring oscillators, and each of the plurality of ring oscillators in a first array portion is cross-coupled to one of the plurality of ring oscillators in a second array portion to provide phase coupling between the plurality of ring oscillators of the first array portion and the plurality of ring oscillators of the second array portion. [Appendix 9] 9. The system of claim 8, wherein the plurality of array portions are physically arranged in a one-dimensional array, and wherein the oscillating signal in each of the plurality of ring oscillators of one of the plurality of array portions propagates in an opposite direction relative to the oscillating signal in each of the plurality of ring oscillators of a next successive array portion in the one-dimensional array of the plurality of array portions. [Appendix 10] 9. The system of claim 8, wherein the plurality of array portions are physically arranged in a two-dimensional array, and each of the plurality of ring oscillators is cross-coupled via a coupling stage to one ring oscillator in each orthogonally adjacent array portion in the two-dimensional array of the plurality of array portions. [Appendix 11] 2. The system of claim 1, further comprising an Ising machine controller configured to generate a plurality of control signals corresponding to parameters of the Ising problem to control a relative phase coupling of each of the plurality of ring oscillators to the other ring oscillators. [Appendix 12] 1. An Ising machine system configured to solve an Ising problem, the Ising machine system comprising a plurality of ring oscillators each configured to propagate an oscillation signal, each of the plurality of ring oscillators including a plurality of coupled stages arranged in a two-dimensional array, the plurality of coupled stages of a first ring oscillator of the plurality of ring oscillators being fabricated in a linear physical arrangement along a first axis of the two-dimensional array, the plurality of coupled stages associated with a second ring oscillator of the plurality of ring oscillators being fabricated in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis, and each of the remaining ring oscillators being fabricated in a physical L-shape, and each of the plurality of coupled stages being fabricated in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis. and wherein within each one of the ring oscillators has a unique phase index number that matches a phase index number of the multiple coupling stages of each of the other ring oscillators in the two-dimensional array, and each of the multiple coupling stages, except for one coupling stage of each of the multiple ring oscillators, is cross-coupled to a coupling stage having the same phase index number of one of the other ring oscillators via the oscillation signal associated with each of the multiple coupling stages based on crossing with the other ring oscillator, and each of the multiple ring oscillators is cross-coupled to each of the other ring oscillators with a single respective one of the multiple coupling stages to provide a respective phase coupling between each cross-coupled ring oscillator. [Appendix 13] 13. The system of claim 12, wherein a propagation distance of the oscillator signal between a first combining stage having a given phase index number and a second combining stage having a next consecutive phase index number is equal for each of the plurality of ring oscillators. [Appendix 14] 13. The system of claim 12, wherein the coupling stage at the apex of the physical L-shape of each of the remaining ring oscillators is not coupled to other coupling stages of other ring oscillators of the plurality of ring oscillators. [Appendix 15] 13. The system of claim 12, wherein the two-dimensional array comprises a plurality of array portions, a first array portion linked to a second array portion to provide phase coupling between the plurality of ring oscillators of the first array portion and the plurality of ring oscillators of the second array portion based on cross-coupling of coupling stages of each of the plurality of ring oscillators of each of the first and second array portions. [Appendix 16] 1. An Ising machine system configured to solve an Ising problem, the Ising machine system comprising a plurality of ring oscillators each configured to propagate an oscillation signal, each of the plurality of ring oscillators including a plurality of coupling stages, each of the plurality of coupling stages having a unique phase index number within a respective one of the plurality of ring oscillators that matches a phase index number of the plurality of coupling stages of each of the other ring oscillators, each of the plurality of coupling stages being cross-coupled, except for one coupling stage of each of the plurality of ring oscillators, to a coupling stage having the same phase index number of one of the other ring oscillators via the oscillation signal associated with the respective ring oscillator, each of the plurality of ring oscillators being cross-coupled to each of the other ring oscillators with a single respective one of the plurality of coupling stages to provide a respective phase coupling between respective cross-coupled ring oscillators, and a propagation distance of the oscillation signal between a first coupling stage having a given phase index number and a second coupling stage having a next consecutive phase index number is equal for each of the plurality of ring oscillators. [Appendix 17] 17. The system of claim 16, wherein the multiple coupling stages of the multiple ring oscillators are arranged in a two-dimensional array, the multiple coupling stages of a first ring oscillator of the multiple ring oscillators are fabricated in a linear physical arrangement along a first axis of the two-dimensional array, the multiple coupling stages associated with a second ring oscillator of the multiple ring oscillators are fabricated in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis, and one of the multiple coupling stages of the first ring oscillator of the multiple ring oscillators physically intersects one of the multiple coupling stages of the second ring oscillator of the multiple ring oscillators having the same phase index number in the two-dimensional array. [Appendix 18] 18. The system of claim 17, wherein each of the remaining ring oscillators is fabricated in a physical L-shape, and one of the multiple coupling stages of each of the multiple ring oscillators physically intersects one of the multiple coupling stages of each of the other ring oscillators having the same phase index number in the two-dimensional array. [Appendix 19] 19. The system of claim 18, wherein the coupling stage at the apex of the physical L-shape of each of the remaining ring oscillators is not coupled to other coupling stages of other ring oscillators of the plurality of ring oscillators. [Appendix 20] 18. The system of claim 17, wherein the two-dimensional array comprises a plurality of array portions, a first array portion linked to a second array portion to provide phase coupling between the ring oscillator of the first array portion and the ring oscillator of the second array portion based on cross-coupling of coupling stages of each of the plurality of ring oscillators of each of the first and second array portions.
Claims
1. 1. An Ising machine system configured to solve an Ising problem, the Ising machine system comprising a plurality of ring oscillators each configured to propagate an oscillation signal, each of the plurality of ring oscillators including a plurality of coupling stages, each of the plurality of coupling stages having a unique phase index number within a respective one of the plurality of ring oscillators that matches a phase index number of the plurality of coupling stages of each of the other ring oscillators, each of the plurality of coupling stages, except for one coupling stage of each of the plurality of ring oscillators, is cross-coupled to a coupling stage having the same phase index number of one of the other ring oscillators via the oscillation signal associated with the respective ring oscillator, each of the plurality of ring oscillators being cross-coupled to each of the other ring oscillators at a single respective one of the plurality of coupling stages to provide a respective phase coupling between respective cross-coupled ring oscillators.
2. 2. The system of claim 1, wherein a propagation distance of the oscillator signal between a first combining stage having a given phase index number and a second combining stage having a next consecutive phase index number is equal for each of the plurality of ring oscillators.
3. 2. The system of claim 1, wherein the Manhattan distance of each of the plurality of ring oscillators is equal to the Manhattan distance of each of the other ring oscillators.
4. The system of claim 1 , wherein the multiple coupled stages of the multiple ring oscillators are arranged in a two-dimensional array.
5. 5. The system of claim 4, wherein the multiple coupling stages of a first ring oscillator of the plurality of ring oscillators are fabricated in a linear physical arrangement along a first axis of the two-dimensional array, and the multiple coupling stages associated with a second ring oscillator of the plurality of ring oscillators are fabricated in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis, and one of the multiple coupling stages of the first ring oscillator of the plurality of ring oscillators physically intersects one of the multiple coupling stages of the second ring oscillator of the plurality of ring oscillators having the same phase index number in the two-dimensional array.
6. 6. The system of claim 5, wherein each of the remaining ring oscillators is fabricated in a physical L-shape, and one of the multiple coupling stages of each of the plurality of ring oscillators physically intersects one of the multiple coupling stages of each of the other ring oscillators having the same phase index number in the two-dimensional array.
7. 7. The system of claim 6, wherein the coupling stage at the apex of the physical L-shape of each of the remaining ring oscillators is not coupled to other coupling stages of other ring oscillators of the plurality of ring oscillators.
8. 6. The system of claim 5, wherein the two-dimensional array comprises a plurality of array portions, each of the plurality of array portions comprising a separate plurality of ring oscillators, and each of the plurality of ring oscillators in a first array portion is cross-coupled to one of the plurality of ring oscillators in a second array portion to provide phase coupling between the plurality of ring oscillators of the first array portion and the plurality of ring oscillators of the second array portion.
9. 9. The system of claim 8, wherein the plurality of array portions are physically arranged in a one-dimensional array, and the oscillating signal in each of the plurality of ring oscillators of one of the plurality of array portions propagates in an opposite direction relative to the oscillating signal in each of the plurality of ring oscillators of a next successive array portion in the one-dimensional array of the plurality of array portions.
10. 9. The system of claim 8, wherein the plurality of array portions are physically arranged in a two-dimensional array, and each of the plurality of ring oscillators is cross-coupled via a coupling stage to one ring oscillator in each orthogonally adjacent array portion in the two-dimensional array of the plurality of array portions.
11. 2. The system of claim 1, further comprising an Ising machine controller configured to generate a plurality of control signals corresponding to parameters of the Ising problem to control a relative phase coupling of each of the plurality of ring oscillators to the other ring oscillators.
12. 1. An Ising machine system configured to solve an Ising problem, the Ising machine system comprising a plurality of ring oscillators each configured to propagate an oscillatory signal, each of the plurality of ring oscillators including a plurality of coupled stages arranged in a two-dimensional array, the plurality of coupled stages of a first ring oscillator of the plurality of ring oscillators being fabricated in a linear physical arrangement along a first axis of the two-dimensional array, the plurality of coupled stages associated with a second ring oscillator of the plurality of ring oscillators being fabricated in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis, and each of the remaining ring oscillators being fabricated in a physical L-shape, and each of the plurality of coupled stages being fabricated in a linear physical arrangement along a first axis of the two-dimensional array that is orthogonal to the first axis, each of the plurality of coupling stages, except for one coupling stage of each of the plurality of ring oscillators, is cross-coupled to a coupling stage having the same phase index number of one of the other ring oscillators via the oscillation signal associated with each of the plurality of coupling stages based on crossing with the other ring oscillator, such that each of the plurality of ring oscillators is cross-coupled to each of the other ring oscillators at a single respective one of the plurality of coupling stages to provide a respective phase coupling between each cross-coupled ring oscillator.
13. 13. The system of claim 12, wherein a propagation distance of the oscillator signal between a first combining stage having a given phase index number and a second combining stage having a next consecutive phase index number is equal for each of the plurality of ring oscillators.
14. 13. The system of claim 12, wherein the coupling stage at the apex of the physical L-shape of each of the remaining ring oscillators is not coupled to other coupling stages of other ring oscillators of the plurality of ring oscillators.
15. 13. The system of claim 12, wherein the two-dimensional array comprises a plurality of array portions, a first array portion linked to a second array portion to provide phase coupling between the plurality of ring oscillators of the first array portion and the plurality of ring oscillators of the second array portion based on cross-coupling of coupling stages of each of the plurality of ring oscillators of each of the first and second array portions.
16. 1. An Ising machine system configured to solve an Ising problem, the Ising machine system comprising a plurality of ring oscillators each configured to propagate an oscillation signal, each of the plurality of ring oscillators including a plurality of coupling stages, each of the plurality of coupling stages having a unique phase index number within a respective one of the plurality of ring oscillators that matches a phase index number of the plurality of coupling stages of each of the other ring oscillators, each of the plurality of coupling stages, except for one coupling stage of each of the plurality of ring oscillators, is cross-coupled via the oscillation signal associated with the respective ring oscillator to a coupling stage having the same phase index number of one of the other ring oscillators, each of the plurality of ring oscillators is cross-coupled to each of the other ring oscillators at a single respective one of the plurality of coupling stages to provide a respective phase coupling between respective cross-coupled ring oscillators, and a propagation distance of the oscillation signal between a first coupling stage having a given phase index number and a second coupling stage having a next consecutive phase index number is equal for each of the plurality of ring oscillators.
17. 17. The system of claim 16, wherein the multiple coupling stages of the multiple ring oscillators are arranged in a two-dimensional array, the multiple coupling stages of a first ring oscillator of the multiple ring oscillators are made in a linear physical arrangement along a first axis of the two-dimensional array, and the multiple coupling stages associated with a second ring oscillator of the multiple ring oscillators are made in a linear physical arrangement along a second axis of the two-dimensional array that is orthogonal to the first axis, and one of the multiple coupling stages of the first ring oscillator of the multiple ring oscillators physically intersects one of the multiple coupling stages of the second ring oscillator of the multiple ring oscillators having the same phase index number in the two-dimensional array.
18. 18. The system of claim 17, wherein each of the remaining ring oscillators is fabricated in a physical L-shape, and one of the multiple coupling stages of each of the plurality of ring oscillators physically intersects one of the multiple coupling stages of each of the other ring oscillators having the same phase index number in the two-dimensional array.
19. 20. The system of claim 18, wherein the coupling stage at the apex of the physical L-shape of each of the remaining ring oscillators is not coupled to other coupling stages of other ring oscillators of the plurality of ring oscillators.
20. 20. The system of claim 17, wherein the two-dimensional array comprises a plurality of array portions, a first array portion linked to a second array portion to provide phase coupling between the ring oscillator of the first array portion and the ring oscillator of the second array portion based on cross-coupling of coupling stages of each of the plurality of ring oscillators of each of the first and second array portions.
Citation Information
Patent Citations
Arithmetic device and arithmetic method
JP2015207032A
Ring oscillator-based Ising machine system
US11545963B1
All Electrical Fully Connected Coupled Oscillator Ising Machine
US20210152125A1
Systems, devices, and methods for interconnected processor topology
US8195596B2