IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS 1 Analyzing the Inherent Reliability of Moderately Sized Magnetic and Electrostatic QCA Circuits via Probabilistic Transfer Matrices Timothy J. Dysart, Student Member, IEEE, and Peter M. Kogge, Fellow, IEEE Abstract—As computing technology delves deeper into the nanoscale regime, reliability is becoming a significant concern, and in response, Teramac-like systems will be the model for many early non-CMOS nanosystems. Engineering systems of this type requires understanding the inherent reliability of both the functional cells and the interconnect used to build the system, and which components are most critical. One particular nanodevice, quantum-dot cellular automata (QCA), offers unique challenges in understanding the reliability of its basic circuits since the device used for logic is also used for interconnect. In this paper, we analyze the reliability properties of two classes of QCA devices: molecular electrostatic-based and magneticdomain based. We use an analytic model, probabilistic transfer matrices (PTMs), to compute the inherent reliability of various non-trivial circuits. Additionally, linear regression is used to determine which components are most critical and estimated the reliability gains that may be achieved by improving the reliability of just a critical component. The results show the critical importance of different structures, especially interconnect, as used by the two classes of QCA. Index Terms—Nanoelectronics, circuit reliability, probabilistic transfer matrices, quantum-dot cellular automata (QCA) I. I NTRODUCTION P OWER dissipation, defects, and process variations are only a few of the factors that challenge silicon technology as it continues scaling into the nanoscale regime. Today, research is continuing on materials, devices, and architectures that can augment, and potentially replace, silicon technology to limit the impact of these factors. One significant challenge facing both silicon and these new technologies is that of reliable computation. A variety of techniques like spare devices and error correcting codes are frequently used today in memory structures, while other techniques like von Neumann multiplexing, modular redundancy, and reconfigurable systems are in use or proposed for use with new nanoscale logic architectures. References [1]–[5] offer a sampling of this work. With the majority of proposed nanoscale architectures using reconfigurable logic blocks, many early nanoscale systems using augmented silicon technology or other nanoelectronic devices will probably take the form of the Teramac [6] to provide a capable, reliable system. To build such a system successfully, a strong subset of these logic blocks will need to Manuscript received February 1, 2008; revised July 12, 2008. This work was supported by the National Science Foundation under grant CCF-0541324 and the U.S. Department of Defense. T. J. Dysart and P. M. Kogge are with the Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN, 46556 USA email: {tdysart,kogge}@nd.edu. be operational in the presence of defects introduced during the manufacturing process. As a result, methods for computing the reliability of these logic blocks and identifying potential reliability improvements is necessary. These reliability calculations may need to consider both logic and interconnect, rather than just logic as is commonly done, since some nanoelectronic devices utilize the same device for logic and interconnect. A particular nanoelectronic architecture, quantum-dot cellular automata (QCA), is a specific example of this case because logic and interconnect components are both built from specifically arranged device cells. This device sharing has significant implications when computing circuit reliability. To complicate matters further, QCA has been implemented in both electrostatic and magnetic technologies. Electrostatic QCA depends on charge configuration to transmit information, while magnetic QCA uses magnetic dipoles to transmit information [7]. The choice of implementation has a significant impact on circuit reliability since each implementation has its own method of routing signals, particularly when signals must cross “perpendicularly”. In particular, an electrostatic wire crossing is replaced by a logical circuit [8] while a simple configuration of a few nanomagnets accomplishing the same task may be available for a magnetic implementation [7]. The circuits considered here, adders, multiplexers, and parity trees all of varying sizes, are likely to be either contained in or similar in size to a logic block in a Teramac-like system. In this paper, we will determine the inherent reliability of these moderately sized QCA circuits when considering both electrostatic and magnetic implementations. This reliability will first be calculated with all components having the same error rate. However, doing this only tells part of the story because component error rates may not be well known and different components may influence the overall circuit reliability differently. To address these concerns and to guide future research on improving circuit reliability via device and/or component reliability enhancement we utilize linear regression as a structured method for discerning which circuit components have the largest impact on circuit reliability. The regression results are then used to show how component reliability enhancement can impact overall circuit reliability. In this work, we expand and generalize our initial results, presented in [9], [10], on this topic. To compute circuit reliabilities, we use the probabilistic transfer matrix approach of [11], [12] which has also been used in [13], [14]. This analytical method is preferred since it is both quick and eliminates the need for physical QCA 2 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS cell details. Other models, such as the Bayesian networks of [15], [16] can estimate circuit reliability rapidly, but still require physical parameters such as cell size and temperature. Abstracting away physical details allows the results generated here to be applicable to a wider range of circuits, which is beneficial because implementations for each class of QCA may vary significantly. For example, in electrostatic QCA, molecular cells may be densely packed or be located on a DNA substrate with wider spacings between cells. In magnetic implementations, the nanomagnet size and spacing may vary. Section II discusses background material. An example of the PTM method is presented in Sec. III. Section IV shows the circuits used in this work. Section V discusses circuit reliability with uniform error rates for the components. Reliability as a function of circuit complexity is presented in Sec. VI. Linear regression is used in Sec. VII to determine which components are most important while Sec. VIII shows how circuit reliability can be improved by increasing the reliability of the most important component. Section IX concludes. II. BACKGROUND M ATERIAL Fig. 1. Electrostatic wire crossing. and rotated cells (45 degree wire). However, if molecular cells are used, then sub-Angstrom level precision will be required to place each cell for the crossover to function properly [28]. However, a simple combinational circuit capable of crossing wires without using 45 degree wires can be formed [8], and is described in more detail in Sec. IV. Since a magnetic QCA implementation might be able to have an explicit wire crossing component [7] similar to a logic gate, this paper examines the reliability differences in several circuits when using the logical crossover and the crossing component. A. Introduction to QCA The quantum-dot cellular automata (QCA) architecture is built upon a foundation of simple, identical, bistable devices that interact with one another via electromagnetic forces. The initial devices for QCA were charge based (electrostatic) and utilized a square cell of four quantum dots with potential barriers between the dots. Within the cell are two free electrons capable of tunneling through the potential barrier, which could be clock-controlled, that settle on different quantum dots due to Coulombic interaction [17]. The energetically favorable states of these cells would have the electrons in opposing corners (along a diagonal). Since there are two diagonal configurations available, the cell is bistable. Neighboring cells interact by Coulombic forces, and by aligning multiple cells in specific configurations a universal set of logic gates can be constructed. Electrostatic QCA devices have been developed and tested using metal-dot cells [18]–[20] and molecular QCA devices have been investigated [21]–[25]. A non-charge based QCA implementation, namely magnetic QCA, is currently being investigated and shows significant promise [26], [27]. Within magnetic QCA the magnetization state of a nanomagnet provides a stable value. A single, rectangularly shaped, nanomagnet will have its magnetization align along the long axis (longer side of the rectangle) of the nanomagnet. Depending on the external forces, the magnetization of a nanomagnet with its long axis being vertical will be either straight up or down, thus satisfying the bistable constraint required by the QCA architecture. In general, two nanomagnets are roughly equivalent to a four dot electrostatic cell. Similar to the electrostatic QCA implementations, the positioning and alignment of multiple nanomagnets will determine the specific function that is implemented. We refer the reader to [9] for a simple cartoon showing the basic QCA components in electrostatic and magnetic forms. The wire crossing structure shown in Fig. 1 can be utilized for electrostatic implementations with unrotated (90 degree wire) B. Introduction to PTMs Probabilistic transfer matrices (PTMs) were described in [11] as a method for accurately computing the reliability of a combinational circuit given error prone components. Each component has its own PTM, and by combining these matrices, based on the circuit structure, using Kronecker products and matrix-matrix products, a PTM for the circuit is formed. A series of operations are then performed on the circuit PTM to calculate the circuit’s reliability. The PTM for a component (circuit) with m inputs and n outputs is a 2m × 2n matrix that, when error-free, is the truth table for the component. This matrix shows the relationship for all combinations of inputs and outputs for the component and with the specific relationship between input combination i and output combination j located at (i, j) in the matrix. The errorfree PTM is generally referred to as an ideal transfer matrix (ITM). If the component produces an incorrect output with probability p (error rate), regardless of input values, erroneous input/output combinations are represented by p in the PTM and desired input/output combinations are represented by 1 − p. Note that within a PTM the sum for all of the entries in a row must be ≤ 1, in other words, for a given input combination, the potential outputs cannot have a probability greater than one of occurring. The PTM and ITM for a majority gate with error rate p is shown in Fig. 2(a). A circuit PTM is generated by first dividing the circuit into slices that are one component level each, i.e. no level has a series of components. Within a level the components are in parallel, and the Kronecker product1 is calculated for the level, thus giving each level a PTM. These level PTMs are then 1 The Kronecker product, denoted by ⊗, is block matrix multiplication where with a m × n matrix A and a p × q matrix B results in a mp × nq matrix. For example, consider A and B to each be a 2 ×h2 matrix. In this case i a1,1 B a1,2 B a 4 × 4 matrix of the following form results: A ⊗ B = a2,1 B a2,2 B IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS (RCR). This point is equivalent to 1/2n where n is the number of output bits and is obtained when component error rates are 50%. This value tends to act as a soft, but not absolute, lower bound on the circuit reliabilities shown here. Increasing the component error rate beyond 50% can increase the circuit reliability, albeit very slightly, since PTM modeling does account for multiple failures generating a correct answer (i.e. two wrongs make a right). 3 (a) ETM calculation C. Related Work ! " # $ % & ' ( ! " # $ % & ) (b) Reliability calculation Fig. 2. Reliability calculation for a majority gate with error rate p and a uniform input distribution. multiplied, from circuit inputs to outputs, using normal matrixmatrix multiplication to generate the circuit PTM. At each stage of this process, the size of the PTM corresponds to the number of inputs and outputs as discussed above. Examples of circuit PTM construction can be found in [9], [10]. To generate the reliability for a circuit from its PTM [12], the PTM is element-wise multiplied (ai,j ∗ bi,j = ci,j ) with its ITM to form an element transfer matrix (ETM). This multiplication is shown in Fig. 2(a) using just a single error term p for example purposes. The ETM zeros out erroneous input/output combinations, thus leaving only desirable input/output combinations. The ETM is then left-multiplied by an input row vector, v, whose values are the probability of each input combination occurring. To continue the example, assume v is a 1x8 row vector with each element being 0.125, which gives each input combination an equal probability of occurrence. This multiplication, shown in Fig. 2(b) leaves v ∗ ET M = [0.625(1 − p) 0.375(1 − p)] with each entry of v ∗ ET M corresponding to the probability of a specific output occurring. The total circuit reliability is the result of summing the elements of v ∗ ET M , 1 − p in this example. Another example of this computation is provided in Sec. III. The component PTMs used here are: AND, OR, and MAJ gates; inverters; wires; single bend wires; T-shaped fanouts; regular fanouts; and wire crossing devices (magnetic implementations only). For this work, the error rate for the AND and OR gates matches that of the majority gates. By assuming that the fixed input to a majority gate (which would turn it into an AND or OR gate) is error-free, the overall complexity of the PTMs are reduced. In order to properly derive the PTM for the fanouts and the wire crossing component, the error rate p is divided by 3 for incorrect output combinations to prevent the row sum from being greater than one. An interesting point when computing circuit reliability via PTMs is what we have termed the random circuit reliability 1) Reliability Enhancements: This work can guide future research on improving circuit reliability since it will specify which components should be made more robust first. A significant body of work is available in the literature that observes the impact of defects on the operation of a component or a circuit, but work addressing how component reliability may be improved has been more limited. It should be noted that reliability enhancement studies have been limited to electrostatic QCA and that we are unaware of any work on this topic for magnetic QCA. A brief survey of this work is below, but a significant question remains: how much enhancement is good enough? This paper begins to address that question. Fijany and Toomarian [29] centered their efforts on detailing how the basic majority gate can be modified into a “block majority gate” where multiple cells are arranged in a rectangle and operate as a single gate. The block majority gate is found to be more resistant to defects like cell misalignment, cell rotation, and missing cells. This work also demonstrated that thick input wires may also be beneficial to the operation of a block majority gate. However, this work did not 1) identify an ideal block majority gate size, 2) provide any guidance as to error rates for the majority gate, nor 3) determine the ideal locations for the inputs of the majority gate. [30]–[34] examine how straight wires can be made more robust. The common trait among these works, similar to the results of [29], is that increasing the “thickness” of the wire by having multiple cells in parallel, increases its resilience to defects. [30] observes the impact of stray charge on a metal-dot cell wire. [31] examines temperature and misalignment defects for metal-dot cells. [32] considers rotations and displacements for clocked molecular cells. [33] and [34] consider missing cells in straight and bent wires for clocked molecular cells. For [33], [34], error rates for the components have been estimated, but these results are limited since defect rates for molecular QCA are not know and the tested wires were of a fixed length. 2) QCA Circuit Reliability: Bayesian networks have recently been proposed as a method for computing the probability of obtaining the correct output of an electrostatic QCA circuit [15], [16]. While this method is computationally significantly quicker than the coherence vector model of QCADesigner [35], both rely on quantum mechanical principles. In doing so, physical parameters such as temperature, cell size and spacing, and clock strength are required. The method in this paper is purely analytical; thus the electrostatic results are applicable to a wider range of potential implementations. However, Bayesian modeling may be appropriate for quickly exploring the physical design space (i.e. cell size and spacing) 4 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS h h 0.865 0.135 0.135 0.865 (a) Wire PTM i 0.8652 + 0.1352 = 0.7665 2 ∗ (0.865 ∗ 0.135) = 0.2335 2 ∗ (0.865 ∗ 0.135) = 0.2335 0.8652 + 0.1352 = 0.7665 (b) Two wire segment (circuit) PTM 0.5 | Fig. 3. 0.5 {z h * } | 0.7665 0 0 0.7665 {z i } = 0.38325 | 0.38325 {z v sum = 0.7665 ET M (c) Final reliability calculation for the two segment wire i } Calculating circuit reliability from a PTM of a component, and may enable refinements to this work by providing more data on component error rates. A method for estimating the yield of electrostatic and magnetic QCA programmable logic arrays (PLAs) can be found in [36]. This work utilizes a new parameter, the effective defect rate (EDR), to capture the probability that a specific defect type (i.e. displacement) causes a QCA cell to malfunction since not all defects will cause a QCA cell failure. The EDR is then used to compute the probability that a defect of type x will cause a fault in the PLA cell. The probability of a fault in the PLA cell is then computed using the probability of a fault for all defect types. The yield of the PLA is then computed as a function of the PLA cell probabilities. The results of [36] demonstrate that PLA yield can drop significantly once a certain EDR is reached. The EDR causing this drop varies based on the circuit size; larger circuits require lower EDRs than smaller circuits to have the same yield. III. PTM E XAMPLE In this section, we compare PTM results to those obtained by physical simulation for two straight wire segments connected in series. This comparison also provides a concrete example of PTM construction and computing the resulting circuit reliability. Before a PTM for a wire segment can be constructed, computing the wire error rate is required. The experimental setup of [33] is reused here to determine the reliability of a short wire segment built from densely packed molecular QCA cells. In [33], physical simulation determined the reliability of wire segments when cells were randomly dropped from the wire segments. For this experiment, a wire segment of ten cells long and three cells wide was constructed. 20% of the cells were then randomly dropped from the wire. Simulation was then performed to determine if the wire transmitted both a logical 0 and a logical 1 properly; if so, the wire passed, else it failed. After completing 5000 iterations, a failure rate of approximately 13.5% was observed. Using this failure rate, the reliability of two wire segments connected serially is calculated to be 76.65% using the method described in Sec. II-B. Figure 3 shows the wire segment PTM, circuit PTM, and final reliability calculation for this circuit. The ITM for the wire (used to calculate the ETM) is simply the 2 × 2 identity matrix. In this example, we have assumed that logical 0 and 1 have equal input probabilities. A twenty cell long, three cell wide wire was then created for physical simulation in the same manner as the single wire segment. In order to treat this as two separate wire segments linked in series when dropping cells, 20% of the cells in the the first ten cells (long) were dropped along with 20% of the cells in the second ten cells (long). Again, 5000 iterations of this wire were considered and a failure rate of 17.5% (pass rate of 82.5%) was observed. This passing rate is higher than both that of the PTM model of 76.65% and that of a simple combinatorial model which predicts a pass rate of 74.82%. The value for the simple combinatorial model is the product of the pass rate for each wire segment since the segments are connected in series. The difference between the combinatorial and PTM models is explained by the extra terms in the (1,1) and (2,2) locations of Fig. 3(b). In the combinatorial model, only the two correct cases are considered (0.865*0.865), whereas in the PTM model, the correct case is considered along with the possibility that both wire segments fail, thus a proper result is still obtained. The probability of two wrongs making a right is captured in the 0.135*0.135 terms in Fig. 3(b). Since the pass rate obtained by physical simulation is higher than both models, it suggests that the two wrongs making a right case may occur more frequently than the PTM model suggests. There is also the possibility that some of the variation between the reliability values is a result of 1) limited or no overlap in the physical simulations and 2) doing so few iterations with physical simulation. Respectively, approximately 0.85% and 1.4×10−6% of possible combinations were considered for the single and two segment circuits. Further studies correlating circuit reliabilities from physical simulation and PTM modeling are necessary. A significant advantage of using analytical modeling is that physical simulation is slow. To compute the error rates for the single and double wire segments, over 10,000 hours of computation on a mixture of 2.2 GHz and 2.6 GHz AMD Opteron servers was needed with approximately one-third of the computational time going to the single wire segment results. In comparison, given an error rate for the single wire segment, computing the reliability for the two wire segment via PTM analysis required approximately a minute by hand. While the reliability of the circuit tested in this section is rather quick to compute, the time required by the PTM method varies significantly. Matlab, rather than the decision diagram method described in [11], [12], has been used here. When selecting circuits to test, the limiting factor is the width (number of signals) in a slice of the circuit. Using Matlab limits the width to about 17 or 18 signals as opposed to the approximately 40 suggested by [11], [12]. With Matlab, these larger matrices take significantly longer (on the order of minutes) to compute, especially if memory swapping is required, than smaller ones. If a large number of slices are of this maximum width, computing the circuit reliability can be rather computationally expensive. IV. C IRCUITS In this paper, a total of three circuit types are considered: parity tree, multiplexer, and adder. Additionally, the input sizes of these circuits are varied to provide four parity tree circuits, IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS 5 three multiplexers, and four adders for a total of eleven circuits. Since the magnetic and electrostatic implementations differ for the multiplexer and adder due to the need for wire crossings, all seven of these circuits are designed in both technologies. This gives a total of 18 circuits that are considered in this work. These circuits are diagrammed with an approximate layout using the components listed in Sec. II-B. A. Logical Wire Crossings The crossover circuit, needed only for the electrostatic circuits, uses the axiom that A XOR B XOR A = B (similarly, A XOR B XOR B = A). This circuit, which can be built entirely from unrotated cells, is shown in Fig. 4(a) with a single XOR gate being identified in the dotted polygon. The XOR gate consists of the following components: three AND gates, an OR gate, an inverter, seven straight wires, two single bend wires, and a T-fanout. Having to use this logical circuit to cross wires significantly increases the complexity of the electrostatic circuits as will be shown shortly. Several variations of the XOR gate and wire crossing circuit have been created in order to properly route signals. These versions differ in which types of wire (straight or single bend) are used as inputs and as a result, do not impact the complexity of the circuit. Further details on the wire crossing circuit can also be found in [9], [10]. B. Circuits Tested Parity trees, multiplexers, and ripple-carry adders are studied in this work. These circuits demonstrate a variety of properties, especially as we vary the sizes of each circuit by increasing the number of inputs. The parity tree circuits under test calculate the even parity bit which is 0 if the number of ones in the input vector is even and 1 otherwise. The two input version of the parity tree is the XOR gate shown above. Four, six, and eight input parity trees are also considered. Since these circuits do not require wire crossings, the electrostatic and magnetic implementations are equivalent. The multiplexer circuits considered have two, four (Fig. 4(b), or eight input bits (excluding select bits). An interesting comparison between these multiplexers is that the smallest requires only one wire crossing, the four input multiplexer requires eight wire crossings and the eight input multiplexer requires twenty-seven wire crossings. This explosion in the number of crossings needed has significant implications when considering the total number of components needed to implement each circuit with electrostatic QCA. The adder circuits tested here are based on the design in [37] and were also utilized in [10]. A two bit-slice adder is shown in Figure 4(c). For the remainder of this paper, the parity tree (Ptree) and multiplexer (Mux) circuits are identified by the number of input bits (excluding the select bits for the multiplexers) or the number of bit-slices for the adder circuits. C. Circuit Complexity Figure 5 shows the number of components versus the number of input bits for the circuits considered here. Unsur- Fig. 5. Number of components v. number of inputs. prisingly, the electrostatic versions of the adder and multiplexer circuits require significantly more components due to the number of wire crossings in these circuits. When graphs considering circuit complexity are shown, such as these in Fig. 5, the select bits for the multiplexers are considered input bits; thus, 2-Mux has three inputs, 4-Mux has six inputs, and 8-Mux has eleven inputs. V. U NIFORM E RROR R ATES In order to begin understanding the inherent reliability of QCA circuits, we first observe circuit reliability when each component has the same error rate. Recall that the electrostatic circuits required six components and the magnetic circuits required seven components. Since no experimental data is available on the error rate for QCA components, the error rates tested in this subsection cover the range from 1.0×10−8 to 1.0×10−1. These values are used since they are higher than the current CMOS transistor failure rates which are on the order of 1.0×10−11 to 1.0×10−10 [38]. The graphs of Fig. 6 show the estimated circuit reliability when all components have the same error rate. We show only the results for error rates of 1.0×10−4 and higher for clarity. Results for lower error rates will be discussed shortly. The reliability axis for the parity tree and multiplexer graphs starts at 0.5 since this value is the RCR (random circuit reliability) for all of these circuits. For the adder circuits, the RCR values are 0.25, 0.125, 0.0625, and 0.03125 for 1-Adder, 2-Adder, 3-Adder, and 4-Adder respectively. The circuit reliability approaches this value for all of the adder circuits at high error rates. The graphs in Fig. 6 provide working ranges of expected circuit reliability when faulty components are present. As components are initially designed, built, and tested these results can be used to identify the types of circuits that can be prototyped and how reliable these prototypes might be. We also observe that circuit reliabilities tend to plummet as the error rate increases beyond 0.1% (1.0×10−3), thus this value could be considered a reasonable lower bound on component reliability. We also observe that for larger circuits, the circuit reliabilities quickly approach their RCR values. This trend is quite pronounced in the electrostatic circuits as the error rate increases above 1%. Lastly, when considering these graphs as a whole, it is apparent that magnetic circuits are more reliable 6 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS = 9 i e g j b W X Y Z ^ _ k [ 9 - 8 f i \ \ ] ] ^ _ ` ` a 0 b c i 9 : * + , / 0 9 . * + , * + , d e 8 0 0 ; * + , * + , 9 W 0 X Y Z [ / * + , * + , 0 0 + , d f B * * + C D E F D G H H C I J \ ] ^ _ ` , 9 F C D K L C M N O P Q R / 0 - * + , * + F G S T G I E I M N U V J Q , \ ] ^ _ ` a b c d 8 0 * + , 9 < g . 1 2 3 4 5 6 > (a) Gate layout of the logical wire crossing circuit Fig. 4. h 7 ? @ A 9 > ? @ A 8 9 (b) Four input multiplexer (c) Two bit-slice adder Sample circuits tested here than their electrostatic counterparts. This is a direct result of the wire crossing method necessary for each implementation. Rather than show data for component error rates below 1.0×10−4, Table I shows the component error rate required for each circuit to have a reliability of five nines (0.99999) or better. For each fewer (greater) nine of reliability that is acceptable, the uniform error rate necessary to achieve that reliability increases (decreases) by an order of magnitude. Considering the two input parity tree, four nines of reliability is observed at a uniform error rate of 1.0×10−5 and three nines of reliability is observed at a uniform error rate of 1.0×10−4. VI. C IRCUIT C OMPLEXITY VERSUS R ELIABILITY In this section we consider how circuit reliability changes as a function of the circuit complexity. Figure 7 plots the circuit reliabilities as a function of the number of circuit components. Graphs could be generated by comparing the reliability to the number of input bits, but they would be nearly identical and would preclude the inclusion of a reference line. For these graphs, the component error rate is uniform and is shown in the legend. Since the lack of wire crossings keeps the parity trees from suffering significant increases in complexity they have been placed in the magnetic graph. Additionally, these graphs display a reference line, labeled Ref. which is computed as (1 − err)n where err is the uniform error rate and n is the number of components. These reference lines fall below those of the circuits since they do not consider the circuit structure, two wrongs making a right, or any potential logical masking. In the electrostatic graph, the multiplexers are more reliable than the adder throughout. In the magnetic graph, the parity tree and adder reliabilities tend to nearly overlap (particularly at the lower error rates) and that there is some flux in which circuit is most reliable when few components are needed. However, once approximately 50 components are necessary, the multiplexer has the highest reliability and the parity tree the lowest. The lack of logical masking is likely the main cause for the low reliability of the parity tree. The linear trends shown in both of these graphs suggests that increasing the circuit size and complexity will not have a compounding negative affect on circuit reliability. This impact may enable fewer large logic blocks to be more effective than a greater number of smaller logic blocks. Another expected trend would be that circuits with similar complexities would have similar reliabilities, which generally is not the case here. This suggests that two factors may be quite influential: 1) logical masking and 2) the number of outputs of the circuit. Estimating the impacts of these factors is beyond the scope of this study and is left for future work. The results in Sec. V and here provide a good starting point for identifying the component error rates necessary to build reliable circuits and how circuit complexity may impact reliability. However, these results do not consider how circuits may be impacted by having component error rates that may differ by several orders of magnitude. Additionally, they do not provide any insight as to how each component impacts circuit reliability. In the next section, linear regression is used to address these concerns. VII. R EGRESSION A NALYSIS The final goal of this work is to develop a guide for improving circuit reliability by enhancing device and/or component reliability. However, to successfully improve circuit reliability, we much know the following: 1) which component is the most important and 2) how much enhancement is required. In our previous work [9], [10], we used two different methods to determine which component(s) was the most important. The method in [10] was a regression analysis over several orders of magnitude for the circuits. In [9], components were made error-free (perfect) one at a time and the resulting reliabilities were compared. One limitation of the results in [10] is that they do not consider how the number of instances of each component may impact reliability. We introduce a method of normalizing the regression results to determine if this limitation is problematic. The direct regression analysis and normalized regression results are compared by considering perfect components. One of the concerns outlined above was that component error rates that differ by several orders of magnitude were not considered. In developing our regression analysis, we remove this concern by computing the circuit reliability for all combinations of component error rates that vary by several orders of magnitude. In particular, each component has its IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS Parity Tree 2 4 6 8 Inputs Inputs Inputs Inputs 1.0×10−6 2.5×10−7 1.0×10−7 1.0×10−7 1-Adder 2-Adder 3-Adder 4-Adder 7 Adders Electrostatic Magnetic 1.0×10−7 5.0×10−8 2.5×10−8 2.5×10−8 5.0×10−7 2.5×10−7 1.0×10−7 1.0×10−7 TABLE I U NIFORM ERROR RATE CORRESPONDING TO FIVE Multiplexers Electrostatic Magnetic 2-Mux 4-Mux 8-Mux 2.5×10−7 7.5×10−8 2.5×10−8 1.0×10−6 2.5×10−7 1.0×10−7 NINES RELIABILITY (a) Parity Tree, High Error Rates (a) Electrostatic Circuits (b) Multiplexers, High Error Rates (b) Magnetic Circuits Fig. 7. Circuit reliability as a function of the number of circuit components. Lines are for uniform error rates. (c) Adders, High Error Rates Fig. 6. Circuit reliabilities with uniform component error rates. error rate stepped from 1.0×10−8 to 1.0×10−2 by orders of magnitude for each of the eighteen circuits examined in this paper. This results in 76 (7 is the number of component error rates tested and 6 is the number of components) data points for each of the electrostatic circuits and 77 data points for each of the magnetic circuits. Each data point consists of an error rate for each component and the resulting circuit reliability. We do not increase the component error rates to 1.0×10−1 since this had a significantly negative impact on the quality of the regression results. This decrease in quality is a result of the circuit reliabilities staying near their RCR values rather than decreasing to zero at high error rates. For each circuit, these data points are used to form a linear function of the form a1 x1 + a2 x2 + ... + an xn + c = r using regression analysis (n = 6, 7 for the electrostatic and magnetic circuits respectively). Within the linear function, the xi values are the input variables, in this case the component error rates, and r is the circuit reliability that results from a set of specific set of xi values. The regression coefficients, the ai values, are directly proportional to the impact the variable xi has on 8 the circuit reliability. The constant c is an intercept term that ensures that the circuit reliability approaches one as the error rates decrease (i.e. if the component error rates were zero, then c = r = 1). The results of this regression analysis, quickly computed using Matlab, are shown for the smallest and largest circuits of each type in Table II. The regression coefficients in the table are negative because increasing the component error rate, its xi value, decreases the circuit reliability. When examining a row of the table, the magnitude of the coefficient is what determines the impact of that variable on the circuit’s reliability. The larger the magnitude of the coefficient, the greater the impact of that variable’s influence on the circuit’s reliability. For the two input parity tree, this means that the majority gate (MAJ) has the greatest impact on reliability, followed by the straight wire (W), the single bend wire (SB), the inverter (NOT), and lastly, the T-fanout (TFAN). Regular fanouts are under the column FAN, while the magnetic crossover component is under the column XV. Since the regression analysis only considers the data points for one circuit at a time, the coefficients of different circuits are not correlated in any way and comparing them has limited value. The only conclusion that can be drawn from comparing the coefficients between circuits is that the small changes in component reliability have a more significant impact on circuit reliability as the circuit size increases; i.e. the magnitude of the regression coefficient increases as the circuit size increases. The magnitude of the coefficients in Table II is strongly correlated with the number of instances of each component. One concern with this result is that less frequently used components may actually have a larger impact on circuit reliability than the regression analysis suggests. Accordingly, we have normalized the regression coefficients by the number of instances of that component in the circuit as shown in Table III. If the components were ordered in this manner for the two-input parity tree, the ordering would have the majority gate as the most important component followed, in order, by the inverter, single bend wires, T-fanout, and the straight wires. For this specific circuit, this ordering places more emphasis on the inverter and significantly less on the straight wires. To determine whether the regular or normalized regression results are best at selecting the most important component, we will make the most critical component selected by each method perfect and then compute the circuit reliability when the other components are faulty. A simple weighted method has been used to order the components when all of the circuits are considered. In this weighted method, the components are scored from 6 (for electrostatic circuits) or 7 (for magnetic circuits) going down to 1, with the most important component having the highest score. The component scores are then averaged for each technology implementation of the circuits. The component orderings resulting from this weighted method are shown in Table IV. For the parity tree circuits, the lack of wire crossings has no impact on these results being included in the electrostatic orderings. In the magnetic orderings, the lack of crossover components has no impact for the regression ordering when the parity tree circuits are not included and in the normalized ordering the NOT and XV would swap when IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS Regression Ordering Electrostatic Magnetic MAJ W W MAJ SB SB FAN FAN NOT XV TFAN NOT TFAN Normalized Ordering Electrostatic Magnetic NOT MAJ MAJ FAN FAN NOT SB SB TFAN TFAN W XV W TABLE IV C OMPONENT IMPORTANCE ORDERINGS ( IN DESCENDING ORDER ). Fig. 8. Reliability of electrostatic multiplexers with a single perfect component as listed in legend. Other components have a uniform error rate. the parity tree circuits are not considered. Figure 8 shows the circuit reliabilities for the electrostatic multiplexer circuits with the majority gate and inverter perfect to satisfy the regression and normalized orderings respectively. The symbols marking each line and the legend state which of the two components was kept perfect as the remainder of the component error rates were uniform and swept across a range of values. This graph clearly demonstrates that keeping the majority gate perfect offers a greater increase in reliability than keeping the inverter perfect. The graphs for the other circuits show the same trend. These results lead to the conclusion that the regression ordering is favored over the normalized ordering. While no regression analysis was done in [9], each component was made perfect and the resulting reliabilities were ordered based on which component offered the best reliability when perfect. The ordering in [9] closely follows the regression ordering for the circuits used in this work. VIII. I MPROVING C IRCUIT R ELIABILITY To guide research into improving circuit reliability determining which component was most critical needed to be accomplished. Having done this with linear regression, the potential reliability improvements by making a single component more robust can be quantified. From the results in Tables II and IV either the majority gate or wire could be selected as the most critical component. Selecting the wire over the majority gate as the most critical component is advantageous since enhancing its reliability is straightforward and fewer hours of detailed simulation time will be required. In Fig. 9, the error rate for the wire is stepped across several orders of magnitude while the error rate for the remaining IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS Circuit Size Circuit Type Parity Tree Electrostatic Adders Electrostatic Muxes Magnetic Adders Magnetic Muxes 2 Inputs 8 Inputs 1-Adder 4-Adder 2-Mux 8-Mux 1-Adder 4-Adder 2-Mux 8-Mux MAJ -3.11 -15.68 -14.50 -37.71 -6.52 -23.63 -2.63 -9.51 -2.42 -9.99 NOT -0.73 -4.09 -3.95 -11.89 -1.46 -8.31 -1.20 -4.41 -0.36 -1.33 9 W -2.63 -13.54 -15.37 -39.44 -5.10 -21.93 -4.46 -15.82 -1.33 -12.01 Components SB -2.40 -12.48 -9.06 -25.48 -4.97 -19.41 -1.92 -6.99 -2.64 -9.71 FAN TFAN -0.57 -3.20 -3.68 -11.16 -0.91 -6.55 -0.64 -2.37 -7.06 -10.07 -27.86 -3.45 -18.25 -2.63 -9.48 -0.41 -2.93 -0.52 Constant XV 0.9998 0.9901 0.9909 0.9412 0.9985 0.9324 0.9996 0.9954 0.9999 0.9941 -1.67 -6.11 -0.49 -6.03 TABLE II S ELECTED L INEAR R EGRESSION R ESULTS Circuit Size Circuit Type 2 Inputs 8 Inputs 1-Adder 4-Adder 2-Mux 8-Mux 1-Adder 4-Adder 2-Mux 8-Mux Parity Tree Electrostatic Adders Electrostatic Muxes Magnetic Adders Magnetic Muxes MAJ -0.77 -0.56 -0.37 -0.24 -0.43 -0.067 -0.88 -0.79 -0.81 -0.37 NOT -0.73 -0.58 -0.36 -0.27 -0.37 -0.090 -0.60 -0.55 -0.36 -0.17 W -0.53 -0.39 -0.24 -0.16 -0.28 -0.046 -0.50 -0.44 -0.44 -0.18 Components SB -0.60 -0.45 -0.32 -0.23 -0.33 -0.062 -0.48 -0.44 -0.53 -0.28 FAN -0.50 -0.36 -0.25 -0.35 -0.071 -0.66 -0.59 -0.41 -0.17 TFAN -0.57 -0.46 -0.28 -0.21 -0.30 -0.078 -0.64 -0.59 -0.21 XV -0.56 -0.51 -0.49 -0.22 TABLE III S ELECTED N ORMALIZED L INEAR R EGRESSION R ESULTS Fig. 9. Reliability of magnetic multiplexers as the wire component error rate changes as shown in the legend. Other components have a uniform error rate. components is uniform and swept over a range of values for the magnetic multiplexer circuits. This figure clearly shows that an extremely high error rate for the wire causes the circuits to be nearly useless. As the error rate for the wire is reduced by two orders of magnitude, the circuit reliability increases significantly, particularly for the 8-Mux. Further reductions in the wire error rate offer continued improvements in circuit reliability. The other circuits show similar trends. IX. C ONCLUSIONS We have estimated the reliability of several electrostatic and magnetic QCA circuits of varying sizes via analytic modeling. This work has identified expected reliabilities for these circuits when component error rates are nearly uniform, and has demonstrated that for these circuits to be highly reliable (i.e. 99.999%), components need to have error rates at or below 1×10−7 for electrostatic QCA and at or below 1×10−6 for magnetic QCA. By using linear regression, a structured method is available for determining which components, generally the majority gates and straight wires, are most important and should receive the highest consideration for reliability enhancement. We have also shown how improving the reliability of a component across orders of magnitude can influence the overall circuit reliability. By using an analytic model such as PTMs, we have been able to save thousands of hours of computation time to identify similar results and trends. Physical simulation is still necessary at the component level; however this work offers guidance as to which component(s) those computational hours should be directed towards. Looking forward to implementations in Teramac-like systems, the circuits considered here are likely to be either contained in or approximately the size of a functional logic block. By estimating their reliability, we can now start to consider what a Teramac-like system would look like when implemented in QCA. To successfully build a Teramac-like system, not only should the functional logic blocks be considered, but the interconnect both inside and between functional logic blocks must be considered. This work explicitly demonstrates this because the choice of implementation technology, and thus type of interconnect, strongly influences circuit reliability. R EFERENCES [1] S. C. Goldstein and M. Budiu, “NanoFabrics: Spatial Computing Using Molecular Electronics,” in International Symposium on Computer 10 Architecture, 2001, pp. 178–189. [2] J. Han and P. Jonker, “A system architecture solution for unreliable nanoelectronic devices,” IEEE Trans. Nanotechnol., vol. 1, no. 4, pp. 201–208, Dec. 2002. [3] A. Sadek, K. Nikolic, and M. Forshaw, “Parallel information and computation with restitution for noi se-tolerant nanoscale logic networks,” Nanotechnology, vol. 15, no. 1, pp. 192–210, Jan. 2004. [4] A. Dehon, “Nanowire-based programmable architectures,” J. Emerg. Technol. Comput. Syst., vol. 1, no. 2, pp. 109–162, 2005. [5] S. Roy and V. Beiu, “Majority multiplexing - economical redundant fault-tolerant designs for nanoarchitectures,” IEEE Trans. Nanotechnol., vol. 4, no. 4, pp. 441–451, Jul. 2005. [6] J. R. Heath, P. J. Kuekes, G. S. Snider, and R. S. Williams, “A defecttolerant computer architecture: Opportunities for nanotechnology,” Science, vol. 280, pp. 1716–1721, Jun. 1998. [7] M. T. Niemier et al., “Clocking structures and power analysis for nanomagnet-based logic devices,” in Proceedings of the International Symposium on Low Power Electronics and Design, 2007, pp. 26–31. [8] A. Chaudhary, D. Z. Chen, X. S. Hu, M. T. Niemier, R. Ravichandran, and K. Whitton, “Fabricatable interconnect and molecular qca circuits,” IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., vol. 26, no. 11, pp. 1978–1991, 2007. [9] T. J. Dysart and P. M. Kogge, “Probabilistic analysis of a quantum-dot cellular automata multiplier implemented in different technologies,” in Proceedings of the 4th Workshop on Non-Silicon Computing, 2007. [10] ——, “Probabilistic analysis of a molecular quantum-dot cellular automata adder,” in Proceedings of the 22nd IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, 2007. [11] S. Krishnaswamy, G. F. Viamontes, I. L. Markov, and J. P. Hayes, “Accurate reliability evaluation and enhancement via probabilistic transfer matrices,” in Proceedings of the Design, Automation, and Test in Europe Conference and Exhibition, 2005. [12] ——, “Probabilistic transfer matrices in symbolic reliability analysis of logic circuits,” ACM Trans. Des. Autom. Electron. Syst., vol. 13, no. 1, pp. 1–35, 2008. [13] J. Han, E. Taylor, J. Gao, and J. Fortes, “Faults, error bounds, and reliability of nanoelectronic circuits,” in 16th IEEE International Conference on Application-Specific Systems, Architecture Processors, July 2005, pp. 247–253. [14] W. Ibrahim, V. Beiu, and M. Sulieman, “On the reliability of majority gates full adders,” IEEE Trans. Nanotechnol., vol. 7, no. 1, pp. 56–67, Jan. 2008. [15] S. Bhanja and S. Sarkar, “Probabilistic modeling of qca circuits using bayesian networks,” IEEE Trans. Nanotechnol., vol. 5, no. 6, pp. 657– 670, 2006. [16] S. Srivastava and S. Bhanja, “Hierarchial probabilistic macromodeling for QCA circuits,” IEEE Trans. Comput., vol. 56, no. 2, pp. 174–190, 2007. [17] C. Lent, P. Tougaw, W. Porod, and G. H. Bernstein, “Quantum Cellular Automata,” Nanotechnology, vol. 4, no. 1, pp. 49–57, 1993. [18] A. O. Orlov et al., “Realization of a functional cell for quantum-dot cellular automata,” Science, vol. 277, pp. 928–930, Aug. 1997. [19] I. Amlani et al., “Digital logic gate using quantum-dot cellular automata,” Science, vol. 284, pp. 289–291, Apr. 1999. [20] A. O. Orlov et al., “Clocked quantum-dot cellular automata shift register,” Surface Science, vol. 532-535, pp. 1193–1198, Jun. 2003. [21] M. Lieberman et al., “Quantum-dot cellular automata at a molecular scale,” Ann. N.Y. Acad. Sci., vol. 960, pp. 225–239, 2002. [22] J. Jiao et al., “Building blocks for the molecular expression of quantum cellular automata. isolation and characterization of a covalently bonded square array of two ferrocenium and two ferrocene complexes,” J. Am. Chem. Soc., vol. 125, pp. 7522–7523, 2003. [23] Z. Li and T. P. Fehlner, “Molecular qca cells. 2. characterization of an unsymmetrical dinuclear mixed-valence complex bound to a au surface by an organic linker,” Inorganic Chemistry, vol. 42, pp. 5715–5721, 2003. [24] Z. Li, A. M. Beatty, and T. P. Fehlner, “Molecular qca cells. 1. structure and functionalization of an unsymmetrical dinuclear mixedvalence complex for surface binding,” Inorganic Chemistry, vol. 42, pp. 5707–5714, 2003. [25] H. Qi et al., “Molecular quantum cellular automata cells. electric field driven switching of a silicon surface bound array of vertically oriented two-dot molecular quantum cellular automata,” J. Am. Chem. Soc., vol. 125, pp. 15 250–15 259, 2003. [26] A. Imre et al., “Majority logic gate for magnetic quantum-dot cellular automata,” Science, vol. 311, no. 5758, pp. 205–208, 2006. IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS [27] A. Imre, “Experimental study of nanomagnets for magnetic quantumdot cellular automata (mqca) logic applications,” Ph.D. dissertation, U. of Notre Dame, 2005. [28] A. Chaudhary et al., “Eliminating wire crossings for molecular quantumdot cellular automata implementation,” in International Conference on Computer Aided Design, 2005, pp. 565–571. [29] A. Fijany and B. N. Toomarian, “New design for quantum dots cellular automata to obtain fault tolerant logic gates,” J. Nanoparticle Research, vol. 3, pp. 27–37, 2001. [30] P. D. Tougaw and C. S. Lent, “Effect of stray charge on quantum cellular automata,” Japanese. Journal of Applied Physics, vol. 34, pp. 4373– 4375, 1995. [31] M. Khatun, T. Barclay, I. Sturzu, and P. D. Tougaw, “Fault tolerance calculations for clocked quantum-dot cellular automata,” Journal of Applied Physics, vol. 98, 2005. [32] M. Liu, “Robustness and power dissipation in quantum-dot cellular automata,” Ph.D. dissertation, University of Notre Dame, 2006. [33] T. J. Dysart, P. M. Kogge, M. Liu, and C. S. Lent, “An analysis of missing cell defects in quantum-dot cellular automata,” IEEE International Workshop on Design and Test of Defect-Tolerant Nanoscale Architectures (NANOARCH), 2005. [34] T. J. Dysart, “Defect properties and design tools for quantum dot cellular automata,” Master’s thesis, Dept. of Computer Science and Engineering, University of Notre Dame, 2005. [35] “QCADesigner Home Page,” Online, http://www.qcadesigner.ca. [36] M. Crocker, X. S. Hu, and M. T. Niemier, “Fault models and yield analysis for qca-based plas,” in Proceedings of the 17th International Conference on Field Programmable Logic and Applications, 2007, pp. 435–440. [37] W. Wang, K. Walus, and G. A. Jullien, “Quantum-dot cellular automata adders,” in 3rd IEEE Conference on Nanotechnology, August 2003. [38] ITRS, “International technology roadmap for semiconductors 2006 update edition,” ITRS, Tech. Rep., 2006. Timothy J. Dysart (S’02) received the B.S. in computer engineering and the M.S. in computer science and engineering from the University of Notre Dame in 2002 and 2005 respectively. He is currently a Ph.D. candidate in computer science and engineering at the University of Notre Dame. His current research interests are in nanoelectronic devices and architectures, defect and fault tolerant design and modeling in nanoelectronic circuits, and in CAD/EDA for nanoelectronics. Peter M. Kogge (SM’86-F ’90) received the B.S. in electrical engineering from the University of Notre Dame in 1968, the M.S. in systems and engineering sciences from Syracuse University in 1970 and the Ph.D. in electrical engineering from Stanford University in 1973. He was with IBM, Federal Systems Division, from 1968 until 1994 and was named an IBM Fellow in 1993. In 1977, he was a visiting professor at the University of Massachusetts, Amherst. From 1977 through 1994, he was also an adjunct professor at State University of New York in Binghamton. He was named the initial McCourtney chair in Computer Science and Engineering at the University of Notre Dame in 1994 and holds this position today. For the 20002001 academic year, he was the interim Schubmehl-Prein department chair. Additionally, he has been the Associate Dean for Research in the College of Engineering since August 2001 and a concurrent professor of electrical engineering since August 2003. His research interests include massively parallel processing architectures, advanced VLSI technology and architectures - including nanoelectronics, non von Neumann models of programming and execution, parallel algorithms and applications, and their impact on computer architecture.