Abstract:
A magnetic bubble memory herein includes a detection circuit which responds to changes in data signal which occur in consecutive detection intervals. In one embodiment changes from both 0 to 1 and from 1 to 0 are used. Improved operating margins result. Correlated coding techniques are shown to preclude propagation of errors.

Description:
FIELD OF THE INVENTION 
     This invention relates to magnetic bubble memories and more particularly to circuitry for detecting outputs from such memories. 
     BACKGROUND OF THE INVENTION 
     The reliable detection of stored binary data from any digital memory, while integral to successful application, can be a nontrivial task. Detection is performed by making binary decisions about the status of analog signal outputs from the memory in response to stored bits. It is not unusual that the memory signals available in the detection process are of low level and are subject to parametric variations and noise due to the physics of the memory technology and the manner of application. If the signals for a given memory type have significant variations across an ensemble of devices due to manufacturing differences or with changes in operating conditions, it may not be possible to recover data reliably with a nonadaptive detector. However, an adaptive detector can have an undesirable adaptation time requirement and can be complex and expensive. 
     In magnetic bubble memories, detection is particularly difficult due to the presence of a magnetic field which reorients in the plane of bubble movement in a well-understood manner. This &#34;drive&#34; field causes cyclical background noise in the detector. Further, changes in operating characteristics occur because of the material used for the layer in which bubbles move. Bubble memories in which bubbles move in response to such a drive field are called &#34;field access&#34; memories. Specifically, in some field access magnetic bubble memories (MBM), detection of stored binary data on a memory chip is accomplished by processing voltages that are measured across a matched pair of permalloy magnetoresistive sensor strips. Ideally, these sensors are subjected to the same magnetic, electrical, and environmental conditions with the exception that only one, an active sensor, is subjected to the (magnetic) H-fields of traversing bubble domains. Then the difference signal, typically between 1 and 10 millivolts, induced by a bubble across a sensor pair is detectable. 
     In practice, there are interference effects in the sensor outputs predominantly from control function drive signals, incomplete common mode rejection of H-field pickup, magnetoresistive switching noise, interference between bubble domains near the active sensor, and environmental effects such as chip temperature. Also, random thermal noise from the sensors, as well as thermal and shot noise from external detection electronics, are present in the observable differential sensor response. 
     In the drive field period of a field access MBM chip, there exists by design at least one time interval, defined here as the Detection Interval (D.I.), in which the sensor differential response is relatively free of inherent signal interference, and where a detectable difference should exist between responses for bubble and no-bubble cycles. For any MBM chip type, optimum determination of the D.I. relative to the drive field vector, and adherence to it when processing the sensor signals for data recovery, can be critical to successful memory performance. 
     Variations in the manufacture of a large ensemble of the same type of field access MBM chips with permalloy sensors can result in undesirable variations in signal shape, time of occurrence, and intensity of the differenced sensor outputs within any D.I. for both bubble and no-bubble responses. This can occur even when each chip of the ensemble is subjected to identical operating conditions such as a given D.I., field drive, chip temperature, recorded data pattern, etc. In addition, for any particular MBM chip of an ensemble, significant variations can occur in the differenced sensor outputs in any D.I. as a consequence of variations in field drive characteristics, bubble interaction at the sensor, and chip sensor temperature changes. 
     A complete parametric description of the family of sensor signals that are present for any MBM chip type has been intractable. Some general sensor signal variations that have been of major concern in previous nonadaptive MBM detectors are the sensor response negative temperature coefficient and the time shift of the dominant bubble response transition that occurs with drive field variations. In a detector with a fixed D.I. where the sensor response transition is compared to a fixed threshold, these two effects are intolerable. 
     Detectors can be designed that adapt to the variations in data 1 and 0 (Bubble-No Bubble) response characteristics when these variations preclude the use of a simple fixed threshold detector. For example, detector amplifier gain can be temperature-compensated to track the output signal variation due to permalloy magnetoresistive sensor sensitivity to temperature. However, adaptive detectors have the disadvantages of added circuit complexity and adaptation time. 
     BRIEF DESCRIPTION OF THE INVENTION 
     The present invention is based on the hypothesis that some signal statistic, such as peak-to-peak transition or signal energy, is available in the D.I., such that the minimum statistic change between unlike data pairs is greater than the maximum statistic change between like data pairs in contiguous memory detection cycles. This condition must hold over the expected range of environmental changes in the sensor outputs for the chip ensemble that is to operate with the detector. 
     In a preferred embodiment, the conventional organization of a bubble detector and a dummy detector arranged in a familiar bridge network is connected to a differential amplifier. The amplifier provides first and second outputs in response to first and second differences between the outputs of the bubble detector and the dummy detector. The output of the amplifier is dc-restored to provide a reference level and applied to an input of a peak detector. The output of the peak detector is applied to inputs of odd and even sample and hold circuits operative to apply peak signals from two consecutive cycles of the bubble drive field to inputs to a second differential amplifier. The output of the second differential amplifier is connected to inputs of first and second comparators with positive and negative thresholds, respectively. The comparators apply outputs indicative of positive or negative changes between consecutive peak signals or of no-change between consecutive peak signals to inputs to an AND circuit. 
    
    
     BRIEF DESCRIPTION OF THE DRAWING 
     FIG. 1 is a block diagram of a magnetic bubble memory with a detection circuit in accordance with this arrangement; 
     FIG. 2 is a block diagram of the detection circuit of FIG. 1; 
     FIG. 3 is a graph of typical bubble memory outputs for detection by the circuit of FIG. 2; 
     FIG. 4 is a timing diagram of the operation of the circuit of FIG. 2; and 
     FIG. 5 is a chart showing example of correlated coding. 
    
    
     DETAILED DESCRIPTION 
     FIG. 1 shows a magnetic bubble memory 10, including a layer of material 12 in which magnetic bubbles can be moved. The bubbles move along paths, usually defined by permalloy elements or ion-implanted regions, and organized in a major-minor configuration as is well known. The major-minor configuration is represented by the closed dotted ovals designated ML 1 , ML 2 , . . . ML N  and a relatively larger oval M. Ovals ML N  represent closed loop paths called minor loops, and M represents the bubble-accessing path called the major loop. 
     Magnetic bubbles are generated in the major loop by a pulse applied to conductor 13 by input pulse source 14 under the control of control circuit 15. Bubble movement in layer 12 occurs in response to a magnetic field reorienting in the plane of layer 12 and generating moving magnetic pole configurations in the permalloy elements or ion-implanted regions which define the bubble path. The magnetic drive field is provided by rotating field source 17 also under the control of control circuit 15. 
     For each cycle of the reorienting field, source 14 applies a pulse (or no pulse) to conductor 13, thus generating a bubble pattern for movement along major loop M. When the bubble pattern arrives at positions in the major loop which are closely spaced from ends of the minor loops, a transfer pulse source 20 applies a pulse to a transfer conductor 21, causing movement of the pattern to positions in the minor loops. The major loop is now clear of data, entered by pulses on conductor 13, and ready to receive new input data. 
     The data so stored are retrieved by supplying a sufficient number of drive field cycles to move the data around the minor loops until the data again occupy positions at the ends of the loops which are in close proximity to the major loop. At that junction in time, source 20 pulses conductor 21 in a manner to cause transfer out of the addressed positions again under the control of control circuit 15. The data are now in major loop M moving towards expander-detector 22 to detector element 23. 
     Detector element 23 and a dummy detector (not shown in FIG. 1) are connected between ground as shown and a utilization circuit represented by block 30. FIG. 2 shows schematically the functional blocks of circuit 30, as well as both detector 23 and its dummy 23 D . The data pattern formed by pulses in conductor 13, stored in minor loops ML k , and now retrieved during a read operation of memory 10, generate voltages in detector 23 which are applied to circuit 30. Dummy detector 23 D  commonly is connected with detector 23 in a bridge network designed to reduce the effects of the drive field on detector 23. 
     Bubble propagation occurs in the presence of a magnetic bias field of a polarity and strength to maintain a bubble at a nominal operating diameter. FIG. 1 shows a block BS representing such a source. 
     We will now direct our attention to the nature of the signals generated by the data at detector 23, the strategy for detecting those signals, and the circuit arrangement of FIG. 2 for implementing that strategy. 
     In each magnetic bubble memory rotating (or drive) field cycle, there exists at least one interval in which a differential sensor response is free of much of the signal interference characteristic of field access bubble memories. During that interval, a detectable difference between responses for the presence and absence of a bubble during the associated cycle is expected. For existing detection circuits, the interval is about 20% of the drive field period. Even in this interval, interference due, for example, to drive element variations and temperature changes modulate the amplitude and shape of the nominal responses. 
     FIG. 3 shows typical examples of differential responses within the detection interval for a number of bubble memories. All responses are referenced (dc restored) to ground at the start of the detection interval. The broken horizontal lines in FIG. 3 represent threshold levels for a detector to detect 1&#39;s selectively; it is clear that a detector that bases a decision on threshold comparison of clamped 1 and 0 responses in the interval cannot have a fixed threshold for a number of memories. 
     There are four possible states that can exist for contiguous cycles of memory responses; 1-1, 1-0, 0-1, and 0-0, where a binary 1 indicates the presence of a bubble, and a binary 0 indicates the absence of a bubble. Direct difference encoding is accomplished by adopting the convention that a binary 1 represents a bubble to no-bubble transition (or vice versa) in adjacent cycles of operation, and a binary 0 represents no change. This encoding strategy allows detection with a fixed threshold-fixed parameter detection circuit if the absolute values of the largest response differences observed for contiguous pairs of 1&#39;s or pairs of 0&#39;s are always less than the smallest differences possible between transition state responses; a constraint which is met by magnetic bubble memories. 
     FIG. 2 shows a functional diagram of an illustrative detection circuit 30 for detecting direct difference encoded responses from a bubble memory. The on-chip bubble detector 23 of FIG. 1 is represented as an impedance similarly designated in FIG. 2. The associated dummy detector is designated 23 D . The detectors are shown connected between ground and the inputs to a first differential amplifier 31. This amplifier provides gain for the memory detector outputs and is adapted to reject common mode signals and minimize out-of-band noise. The input impedance for the amplifier is assumed to be large relative to impedance 23 and 23 D  to reduce gain variations when changes occur in the sensor resistance. 
     The output of amplifier 31 is connected via capacitor 33 to ground via switch 32 and to the input of peak detector 34. The input impedance of the peak detector also is large so that the drain current from capacitor 33 does not introduce a voltage drop across the capacitor that is significant when compared to the restored signal during a time interval in which restoration is desired. 
     The output of the peak detector is connected to inputs of first and second sample and hold circuits 36 and 37, which are activated during alternate cycles of operation via inputs 43 and 44, respectively. The outputs of the sample and hold circuits are connected to inputs of a second differential amplifier 39. The output of amplifier 39 is connected to inputs of comparators 40 and 41 where the comparator references are threshold inputs 46 and 47. The outputs of the comparators are connected to inputs of an AND circuit 45. Circuit 45 provides a direct encoded output in accordance with the principles of this invention. 
     FIG. 4 shows a timing diagram for the operation of the circuit of FIG. 1. The detection interval is selected as time t 1  to t 2 . The peak voltage is sensed during this interval, and the peaks are latched in alternate cycles by sample and hold circuits 36 and 37. The sample and hold circuits retain the peaks sensed in adjacent field cycles K and K-1. If we adopt the convention that B represents the voltage output of the peak detector, then B K-1  and B K  are representations of that peak voltage during adjacent field cycles. The difference voltage C K  taken during interval t 2  to t 3  thus is equal to B K  minus B K-1  at the output of amplifier 39. Since C K  is a three-level response, the outputs of the positive (40) and negative (41) level comparators are ANDed to get an output A K  at 45=(C K ) mod 2. The pulse diagram of FIG. 4 can be seen to produce such operations. 
     Direct difference encoding has the drawback of possible error propagation since a single decision error can create confusion in the detector. But this problem is eliminated by correlated level encoding of the data before recording data in the magnetic memory chip itself as noted hereinbefore and as now explained. 
     CORRELATED LEVEL CODING 
     The original binary data sequence is defined by {a k  }; a k  ε {0,1} for k≧0. This is to be recorded as transitions between bubble and no-bubble responses in contiguous field cycles in a way that eliminates detector error propagation. This can be accomplished by encoding {a k  } into a new binary sequence {b k  } by the algorithm 
     
         b.sub.k =a.sub.k ⊕b.sub.k-1 
    
     and 
     
         b.sub.k =0 if k&lt;0, 
    
     where ⊕ denotes mod 2 binary addition. The sequence {b k  } is then recorded as a sequence of bubbles (1&#39;s) and no-bubbles (0&#39;s). If, in response to b k , B k  is the statistic available to the detector in the detection window on which to base a decision as to the presence of a bubble or no-bubble in the k th  cycle; the difference detection is accomplished by making a trinary decision on the analog difference C k  =B k  -B k-1  for each contiguous field cycle pair. There are three possible binary outputs corresponding to the detection of C k  ; these are c k  ε {-1,0,+1}. In terms of the binary sequence {b k  }, 
     
         c.sub.k =b.sub.k -b.sub.k-1 
    
     for k≧0. From the defining expression for {b k  }, mod 2 subtraction of b k  -1 from both sides gives ##EQU1## Then ##EQU2## and it follows that {a k  } is available by simple logical operations on the trinary sequence {c k  } without the problem of error propagation if a detection error occurs. In general, the detector outputs are estimates of {c k  } based on the available differences {C k  }. Then the detector output is the sequence of estimates {c k  }, and the estimate of the original data sequence is ##EQU3## If there are no errors in the detector decisions, c k  =c k  and a k  =a k . Even if errors do occur, there is no error propagation. 
     The principles of correlated level coding in magnetic bubble detection may be more clearly explained via an example. In the following, the detection circuit is assumed to sense the peak of the differential sensor response in each detection window, where the response is dc-restored to ground prior to each window. In the k th  cycle, B k  is the sensed peak value, and this statistic is used to form C k  =B k  -B k-1  in the detector. Bipolar threshold detection on the difference C k  is made to obtain the trinary logic sequence {a k  }. 
     An arbitrary data sequence {a k  }, with a k  ε {0,1} for k=0,1,2 . . . is assumed in FIG. 2 for bubble recording. Then b k  =a k  ⊕b k-1  is generated as the actual recorded sequence by exclusive OR logic with b -1  initialized to 0. The dc restored responses for b=1 (bubble) and b=0 (no-bubble) are also shown in FIG. 5 with the peaks {B k  } and the differences {C k  }. Bipolar thresholding yields {c k  }, and {a k  } follows by taking the absolute value. In this example, no errors have been assumed to occur in the decisions that generate {c k  }. If the decisions are not perfect, the recovered sequence is {c k  }, and the recovered data is {a k  }. Detection errors will not propagate as can be seen by assuming C k  is incorrectly detected in a cycle for this example. 
     This example should clarify the coding mechanics, but it is not meant to imply that correlated level coding for magnetic bubble detection is limited to decisions on differences of dc restored signal peaks. Many signal processing approaches can be used to obtain sufficient statistics to detect {c k  }. 
     Amplifier 39 and comparators 40 and 41 of FIG. 2 can be replaced by an absolute value circuit with differential inputs and a single comparator to obtain ##EQU4## 
     Direct accessability of positive and negative comparator outputs can be used to detect certain detector errors. For example, it is not possible to have consecutive positive or negative steps in C k  since {B k  } is a bilevel sequence and C k  =B k  -B k-1 . A simple logic circuit can monitor the dual comparator outputs for these and other detectable error events. But by taking the absolute value before comparison, this error information will be lost.