WO1994016769A1 - Medical device telemetry with bit/data value encoding - Google Patents

Medical device telemetry with bit/data value encoding Download PDF

Info

Publication number
WO1994016769A1
WO1994016769A1 PCT/US1993/012517 US9312517W WO9416769A1 WO 1994016769 A1 WO1994016769 A1 WO 1994016769A1 US 9312517 W US9312517 W US 9312517W WO 9416769 A1 WO9416769 A1 WO 9416769A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
frame
link
parameters
encoded
Prior art date
Application number
PCT/US1993/012517
Other languages
French (fr)
Inventor
Paul B. Wyborny
Glenn M. Roline
Lucy M. Nichols
David L. Thompson
Original Assignee
Medtronic, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Medtronic, Inc. filed Critical Medtronic, Inc.
Priority to AU59588/94A priority Critical patent/AU5958894A/en
Publication of WO1994016769A1 publication Critical patent/WO1994016769A1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/372Arrangements in connection with the implantation of stimulators
    • A61N1/37211Means for communicating with stimulators
    • A61N1/37252Details of algorithms or data aspects of communication system, e.g. handshaking, transmitting specific data or segmenting data
    • A61N1/3727Details of algorithms or data aspects of communication system, e.g. handshaking, transmitting specific data or segmenting data characterised by the modulation technique
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S128/00Surgery
    • Y10S128/903Radio telemetry

Definitions

  • the present invention generally relates to implantable medical devices, and more particularly, pertains to telemetry for percutaneously transmitting analog and digital data between a programmer and an implantable medical device. 2m. Description Qf the P JrPr Art
  • the communication between the implairt and the external world was at first primarily indirect.
  • the operation of an implantable cardiac pacer could be observed, for example, in the electrocardiogram of the patient.
  • data could be sent from the implanted cardiac pacer by modulating the stimulation pulses in some manner. This can only provide a low band pass channel, of course, without interfering with the clinical application of the device.
  • Change of the pacing rate to indicate battery condition was a commonly used application of this technique.
  • the data to be transmitted is of two basic types, namely, analog and digital.
  • the analog information can include, for example, battery voltage, intracardiac electrocardiogram, sensor signals, output amplitude, output energy, output current, and lead impedance.
  • the digital information can include, for example, statistics on performance, time markers, current values of programmable parameters, implant data, and patient and unit identifiers.
  • the earliest RF telemetry systems transmitted analog and digital information in separate formats, resulting in inefficient utilization of the available power/bandwidth. Also, these modulation schemes tended to be less than satisfactory in terms of battery consumption, and do not lend themselves to simultaneous transmission of differing data types.
  • RF telemetry systems are known to be used in connection with implantable medical devices, such as cardiac pacemakers.
  • An example of a pulse interval modulation telemetry system used for transmitting analog and digital data, individually and serially, from an implanted pacemaker to a remote programmer is disclosed in U.S. Patent No. 4,556,063 issued to Thompson et al., herein incorporated by reference.
  • U.S. Patent No. 4,550,370 issued to Baker herein incorporated by reference.
  • a major difficulty in the use of such prior art systems is the need to maintain the communication link using continuous activation of the reed switch.
  • a further problem of prior art RF telemetry systems involves the method of encoding and decoding digital data transmissions. Ordinarily, data is simply data value encoded and transferred as ordered digital data elements, with the byte (i.e. eight ordered binary bits) being the data element of choice. This tends to be a convenient data size in view of available hardware and software designs. A byte can be easily expressed as a two character hexadecimal number (i.e. in base 16) and/or converted to a decimal number as appropriate. Most often control commands and status reports are similarly data value encoded into hexadecimal bytes creating substantial redundancy in the data protocol and encoding/decoding hardware and software.
  • the present invention overcomes the disadvantages of the prior art systems by percutaneously transmitting both analog and digital data between the implantable medical device and the external device in a single format.
  • This format provides for transmission of both data types while employing a hand shake protocol to maintain continuity of the link and while using cyclic redundancy coding to provide forward detection of link transmission errors.
  • the RF carrier is pulse position modulated with the digital data to conserve battery energy. In this manner, only a short burst of the carrier, e.g., one cycle, is actually needed to transmit a given unit of digital data. The time position of that burst relative to a synchronizing standard determines the value of the digital data unit transmitted.
  • a frame of about 2 milliseconds is defined. Within this frame are positioned a synchronizing burst, a frame identifier burst, and two data bursts.
  • the synchronizing burst is positioned at a fixed position in every frame.
  • the frame identifier and data positions are variable, such that the corresponding bursts occur within a range of time within the frame.
  • the range in which a burst is found defines the nature or type of the variable.
  • the position in the range defines the value o the variable.
  • the frame identifier burst defines the type of data to b found within the frame.
  • One particular frame identifie defines a two frame couplet as a hand shake link maintenanc verification.
  • the hand shake request is made by th transmitting device at approximately 250 millisecon intervals.
  • the receiving device mus transmit a hand shake reply within the data range of that sam frame.
  • the transmittin device Upon receiving the hand shake reply, the transmittin device sends a unique hand shake confirmation within th second frame of the couplet.
  • the link is initiated by closing of the reed switch by magnetic field sourced from the RF head. Because the han shake protocol is used to maintain the link, the reed switc need not be closed during the entire data transmission. However, to ensure that devices made in accordance with th present invention are downward compatible, preferably, th link may be maintained by continuous closure of the ree switch during the entire transmission without regard t whether any hand shake attempts are successful.
  • Analog data may be transmitted in two ways in accordanc with the present invention.
  • the first technique is to conver the analog data into digital information. This digita information is used to pulse position modulate the burst o carrier energy in the same manner as other digital information.
  • a second technique for transmitting the analog information is to phase shift modulate the carrier bursts in response to the analog data. Because an ordinary frame lasting two milliseconds contains four bursts of 175 kilohertz energy, it is theoretically possible to transmit analog data with a pass band of up to one kilohertz. However, most of the analog signals of interest tend to have a much lower pass band. Therefore, the burst used to synchronize the frame for digital purposes is also used to transmit a constant phase standard. This means that only three bursts per frame are available for analog transmission lowering the theoretical pass band of the analog channel to 750 hertz. However, the constant transmission of the phase standard prevents the low frequency shifts associated with phase drift between the transmitting and receiving devices.
  • the transmission of digital data takes place using two distinct formats.
  • the two data bursts are decoded as individual hexadecimal numbers.
  • the demodulation circuitry converts each pulse position modulated data burst into one of 16 distinct hexadecimal numbers representing from 0 to 15.
  • This format is particularly useful for data quantities which may have initially been either analog or digital in nature. These data quantities may involve more than one hexadecimal number.
  • Command and status information tends to involve a number of independent indications which are either discretely on or off.
  • These separate and independent discrete signals may be accommodated in two different ways. For either approach, a different bit position within a data element is assigned to indicate the command/status state of each discrete element.
  • the hardware and software of both the implant and the programmer can easily utilize this format (called bit encoding) using individual bit checking and manipulation operations.
  • bit encoding The same .bit position may be used for the entire data transferv thus obviating the need to encode and decode the transmission.
  • each of the discrete signals is independent of each other discrete signal, the command or status of a number of variables may be transmitted within a single data set.
  • command/status discrete information can be data value encoded into a data value, which is similar to the normal digital data format to conserve transmission link energy requirements.
  • the discrete values can be data value encoded and decoded using a memory look up table.
  • a cyclic redundancy code is transmitted along with the digital data. This code is computed to be the remainder bits after a polynomial using the transmitted data bits as coefficients, is divided by a generator polynomial. The receiving device divides the polynomial formed using the received data bits and cyclic redundancy code as coefficients. If the remainder is not zero, a transmission error has occurred and the transmitting device is notified that the subject data block must be retransmitted.
  • the cyclic redundancy function may be implemented in either software or hardware within the transmitting and receiving devices. However, for greatest efficiency, a given device should employ only one form. In the preferred embodiments, hardware implementation is utilized for both transmitting and receiving.
  • FIG. l is a simplified schematic view of an implantabl medical device employing the improved telemetry format of th present invention
  • FIG. 2 is a conceptual view of one frame of the improve telemetry format of the present invention
  • FIG. 3 is a view of the actual transmission pattern o two frames of the improved telemetry format
  • FIG. 4 is a flow chart of a prior art method of lin management
  • FIG. 5 is a flow chart showing link maintenance accordin to the present invention
  • FIG. 6 is a flow chart of the basic hand shake procedure
  • FIG. 7 is a timing diagram of a successful hand shake
  • FIG. 8 is a block diagram of the transmitter base ban circuitry
  • FIG. 9 is a flow chart for establishing link availabilit of the transmitter channel
  • FIG. 10 is a block diagram showing the analog modulatio circuitry
  • FIG. 11 is a block diagram of the digital modulatio circuitry
  • FIG. 12 is a schematic diagram of the transmitter r circuitry
  • FIG. 13 is a block diagram of the receiver circuitry;
  • FIG. 14 is a block diagram of the cyclic redundancy cod circuitry;
  • FIG. 15 is a detailed schematic diagram of the up lin CRC control circuitry
  • FIG. 16 is a schematic diagram of the CRC parser
  • FIG. 17 is a schematic diagram of the overall CRC contro circuit
  • FIG. 18 is a detailed schematic diagram of the CR calculation circuitry
  • FIG. 19 is a pictorial diagram showing alternat approaches to digital data decoding
  • FIG. 20 is a pictorial diagram showing bit decoding of multiple bursts within a single nibble range
  • FIG. 21 is a schematic diagram of typical demodulation circuitry providing a data value encoded output
  • FIG. 22 is a schematic diagram of typical demodulation circuitry providing a bit encoded output.
  • FIG. 1 is a simplified schematic diagram of the present invention as employed in a communication link between an external programmer and an implanted cardiac pacer.
  • An implantable pulse generation 10 is implanted in the patient under the outer skin barrier 28.
  • Implantable pulse generator 10 is electrically coupled to the heart of the patient using at least one cardiac pacing lead 12 in a manner known in the art.
  • Percutaneous telemetry data is transmitted from implantable pulse generator 10 by an RF up link 26 utilizing the improved telemetry format to a receiving antenna 22, which is coupled to a programmer 20 via a cable 24.
  • Receiving antenna 22 also contains a magnet which activates a reed switch in implantable pulse generator 10 as a safety feature, as taught in U.S. Patent No. 4,006,086 issued to Alferness et al. , herein incorporated by reference.
  • the telemetry data is demodulated and presented to the attending medical personnel by programmer 20.
  • programmer 20 transmits signals via radio frequency energy sent from antenna 22 under control of signals transferred from programmer 20 along cable 24. This energy reaches implantable pulse generator 10 by down link 27.
  • the transmitted signals are utilized by implantable pulse generator 10 after demodulation.
  • indicator 25 provides notification to the operator of the link that a disruption has occurred.
  • indicator 25 is a light emitting diode, LED.
  • the LED is illuminated whenever a periodically scheduled (i.e. approximately every 250 milliseconds) handshake has been unsuccessful.
  • the operator Upon seeing indicator 25 illuminated, the operator is instructed to reposition antenna 22 slightly to improve reception along the link. Failure to properly reposition antenna 22 for five seconds (i.e. 20 unsuccessful hand shake attempts) causes the link to be terminated.
  • the operator is so notified by programmer 20 using standard techniques. The hand shake protocol is explained in more detail below.
  • FIG. 2 is a schematic diagram of the protocol utilized by RF up link 26. These links use a damped 175 kilohertz RF carrier which is phase shift modulated for analog data and pulse position modulated for digital (or digitized) data, as described in detail below. Shown at 30, the basic timing unit of the format is a frame, having a duration of t n5 . It will be understood by those skilled in the art, however, that the present invention can be practiced using fixed-length frames having periods of shorter or longer duration.
  • the main timing source of implantable pulse generator 10 comprises a standard 32.768 kilohertz crystal clock which provides a basic clock cycle of 30.52 microseconds.
  • a frame comprised of 64 clock cycles and extending over a fixed time interval of 1.953125 milliseconds is a convenient frame period, since such frame period is a binary multiple of the basic clock cycle.
  • a unique synchronizing signal is positioned within a first fixed range of each frame 30.
  • This signal comprises a synchronizing RF pulse 32 which is located a time t nl within frame 30. To properly function as a synchronizing pulse, it must be located at a fixed point within the first fixed range of frame 30, as shown at 34.
  • a four-bit frame identifier code is positioned within a second fixed range of each frame 30, such second fixed range comprising an identifier range 38.
  • Identifier range 38 uses a total of eleven basic clock cycles as shown.
  • This identifier code comprises an identifier RF pulse 36 which is pulse position modulated within the identifier range 38.
  • the position of identifier pulse 36 within identifier range 38 identifies the nature or type of data found within each frame 30 which is being transmitted, such as peak sense, peak pressure, sense threshold and others, as described in further detail below.
  • time interval t n2 thus uniquely represents the value of identifier pulse 36, which value in turn identifies the data type being transmitted within frame 30.
  • one unique frame identifier code is a hand shake request employed within the hand shake protocol to maintain the link communication.
  • the frame identifier code may also be used to describe whether the succeeding data bursts within the frame are to be interpreted as byte encoded or bit encoded information .
  • Each frame 30 has the capability to transfer one eight- bit byte of digital data along with the identifier code. This data is divided into two equal portions, each capable of defining a unique one of 16 possible values. A first portion of this data is positioned within a third fixed range of frame 30, such third fixed range being defined as lower nibble range 44. A second portion of this data is positioned within a fourth fixed range of frame 30, such fourth fixed range being defined as upper nibble range 48.
  • a lower nibble pulse 42 is pulse position modulated within lower nibble range 44, such that its value is uniquely identified by its location, such as at a time t n3 shown at 45.
  • An upper nibble pulse 46 is also pulse position modulated within upper nibble range 48, such that its value is uniquely identified by its location, such as at a time t n4 shown at 50.
  • Lower nibble range 44 and upper nibble range 48 each comprise sixteen basic clock cycles, permitting each of the sixteen unique values of the four-bit nibble to be specified.
  • suitable guard bands are positioned between each of the ranges within the frame to uniquely identify the synchronizing pulses, thereby avoiding undefined and erroneous data transmission.
  • identifier pulse 36, lower nibble pulse 42, and upper nibble pulse 46 are phase shift modulated with analog data in addition to being pulse position modulated with digital information.
  • the pulse position within the frame is used along with the instantaneous analog signal value to define the instantaneous phase of the carrier.
  • Synchronizing RF pulse 32 has a fixed phase as well as a fixed pulse position such that it can conveniently serve as a phase standard for analog demodulation as well as a time standard for digital demodulation.
  • FIG. 3 is a diagram of two frames of transmission from either RF up link 26 or down link 27, wherein a first frame corresponds to Word 1 shown at 70, and a second frame corresponds to Word 2 shown at 72.
  • a count of clock cycles is indicated along an upper horizontal axis of this diagram for each frame. Each basic clock cycle has a duration of 30.52 microseconds.
  • the first frame at 70 is initiated by an RF pulse 52.
  • a synchronizing RF pulse 54 is shown uniquely identified as precisely four clock cycles later. Because the guard bands are all greater than four clock cycles, no combination of a frame identifier and data can appear as a synchronizing pulse. Synchronizing pulse 54 is used to provide frame synchronization between the transmitter and the receiver.
  • An identifier RF pulse 56 is located within identifier range 38, defined as nine to nineteen basic clock cycles from the beginning of frame 70. Not to be deemed limiting of the present invention, some of these codes specify byte encoding of the upper and lower nibbles. Similarly, other frame identifiers are utilized to signify bit encoding of the upper and/or lower nibbles. In Word l, for example, identifier pulse 56 is located at clock cycle nineteen. For RF up link 26, this identifies the frame as a particular type of data transfer, namely, "Sense Threshold" as indicated in Table 1 below. One or more link frame identifiers may indicate that a particular frame contains bit encoded digital data. In the preferred mode, the "Memory" identifier primarily denotes bit encoded digital data.
  • a lower nibble RF pulse 58 is located within lower nibble range 44, which range is defined as twenty-four to thirty-nine basic clock cycles from the beginning of frame 70.
  • lower nibble pulse 58 is located at clock cycle thirty-one, specifying alternatively a hexadecimal value of seven on a scale of zero to fifteen or a discrete command/status indication at variable seven.
  • An upper nibble RF pulse 60 is located at clock cycle fifty-eight within upper nibble range 48, which range is defined as forty-four to fifty-nine basic clock cycles from the beginning of frame 70, and may be similar demodulated as a byte encoded or bit encoded value.
  • FIG. 4 is a flow chart 100 for the common prior art method of maintaining the transmission link.
  • the basis of this technique is a magnet located within the housing of antenna 22 (see also Fig. 1) .
  • This housing is often called an RF head within the art. Presence of the magnetic field generated by this magnet closes a reed switch within implantable pulse generator 10 if in sufficiently close proximity.
  • the hardware details of this approach are provided in the above identified and incorporated U.S. Patent to Alferness et al.
  • the technique is started at element 102.
  • the RF head is manually positioned by the attending medical personnel at element 105.
  • Element 103 determines whether the magnet within the RF head has in fact closed the reed switch within implantable pulse generator 10. If element 107 extinguishes the LED indicator, the operator is notified that the RF head position is satisfactory*
  • element 104 permits further data transfer via element 112 as long as the reed switch within implantable pulse generator 10 remains closed. If the reed switch opens before the transfer is completed, element 110 records a failure to complete the transmission. If the transfer has been completed, however, as determined by element 108, element 114 provides a normal exit.
  • the reed switch must be closed and remain closed for the entire duration of the transmission to be deemed satisfactory.
  • incomplete transfers become more prevalent because of patient movement, inadvertent movement of antenna 22, and other practical difficulties.
  • FIG. 5 is a flow chart 116 of the method of maintaining the link according to the preferred mode of the present invention.
  • the link protocol is entered at element 118.
  • the RF head is manually positioned at element 119 and checked by element 120, which causes initiation of the link upon the closing of the reed switch.
  • the link may be maintained without continuous closing of the reed switch as will become apparent.
  • element 122 causes implantable pulse generator 10 to commence sending the marker channel timing signals which are well known in the art to programmer 20.
  • the basic hand shake procedure is performed at element 124. This procedure is described in more detail below. If a reply was not received by the requesting device during the hand shake procedure, element 126 routes control to element 128 to determine whether a time out has occurred. Time out is defined as a five second period of time during which no hand shake procedure has been successful. In the preferred mode, the hand shake procedure is executed every 250 milliseconds, which means that time out corresponds to 20 consecutive unsuccessful hand shake procedures. If a time out has occurred, element 130 records an incomplete transfer and exit is obtained via element 132. If a time out has not occurred, element 129 increments the time out counter indicating that another unsuccessful consecutive hand shake procedure has been experienced and returns control to element 136 for data transfer.
  • element 134 rests the session time out timer. This corresponds to a break in the chain of unsuccessful hand shake procedures if any. After the reset, the link will not time out for at least five more seconds.
  • Data transfer occurs at element 136.
  • Element 138 determines whether the current data transfer is complete. This may be defined within the data stream itself. If yes, element 140 records a successfully completed data transfer and exit occurs via element 144. If the entire data transfer is not yet complete, element 142 determines whether it is time for another hand shake procedure. A new hand shake procedure is scheduled every 250 milliseconds. The resultant time interval between hand shake procedures (requiring two frames) corresponds to 124 data frames which consume about 248 milliseconds.
  • control is returned to element 136 for additional data transfer. If the 250 milliseconds has elapsed, however, control is given to element 124 to schedule another hand shake procedure.
  • the link can be maintained without continuous closure of the reed switch.
  • forward error detection techniques along with retransmission of incorrect data blocks, as described below, the link can be efficiently maintained even though actual data transmission continuity is temporarily interrupted.
  • FIG. 6 is a flow chart 146 of the hand shake procedure. Upon being called, entry is via element 148. In the preferred mode, implantable pulse generator 10 transmits the hand shake request at element 150. However, those of skill in the art will readily appreciate that the hand shake request could also be transmitted from programmer 20.
  • the transmitted hand shake request is a frame having a unique frame identifier (see above) without any data pulses (as shown below) .
  • element 155 transfers control to element 158 to record a hand shake failure and exit the procedure at element 160.
  • Element 154 determines whether implantable pulse generator 10 has received the reply.
  • Element 156 illustrates that some tens of microseconds are expended awaiting the reply. If none is received in time, element 158 records the hand shake failure and exits via element 160.
  • FIG. 7 is a timing diagram showing the two frame couplet associated with the hand shake procedure.
  • the lower time line, comprising request frame 190 and confirmation frame 192 shows that the total transmission time for a successful hand shake is two frames or approximately four milliseconds.
  • the hand shake requestor is implantable pulse generator 10, although those of skill in the art can readily appreciate that this function could also be assigned to programmer 20.
  • Implantable pulse generator transmits a standard frame initiation pulse at 176 and frame synchronizing pulse 178 (see also Fig. 2).
  • the frame identification pulse 180 is chosen to uniquely identify this as a hand shake request (see also Table 1 above) .
  • Frame identification pulse 180 is placed within the frame identification range as with other frame identifiers (see also Figs. 2 and 3) .
  • Time window 182 is the time relative to the frame synchronizing pulse (i.e. pulse 178) during which the implantable pulse generator must receive a hand shake reply to achieve a successful hand shake. Time window 182 corresponds to the time during which the lower nibble and upper nibble of data would ordinarily be transmitted (see also Fig. 2) .
  • the frame for programmer 20 begins at point 172. If it has received and properly decoded frame identification pulse 180 as a hand shake request, it transmits hand shake reply pulse 174 as shown. If implantable pulse generator 10 receives and properly decodes hand shake reply pulse 174 during time window 182, it transmits confirmation pulses 186 and 188 during the next succeeding frame which begins at point 184 and is defined by frame synch pulse 185 and frame identifier pulse 187. Note that the hand shake has been successful to implantable pulse generator 10 if it receives hand shake reply pulse 174 during the first frame. However, programmer 20 must wait until receipt of confirmation pulses 186 and 188 during the second frame to record a successful hand shake.
  • this particular handshake technique which uses the standard frame size and protocol, periodically ensures that synchronization between programmer 20 and implantable pulse generator 10 is maintained throughout the entire transmission. Furthermore, no data is lost following confirmation due to the need to re-synchronize.
  • FIG. 8 is a block diagram of that portion of implantable pulse generator 10 which is associated with formatting and transmission of RF up link 26.
  • Most of the unique hardware which embodies the present invention is located on a single substrate, including custom hybridized circuitry indicated generally by arrow 105.
  • the remainder of the hardware, which is preferably located on the same substrate, is microprocessor-based logic indicated generally by arrow 100, comprising microprocessor 102, random access memory (RAM) 104, and parallel bus 106.
  • RAM random access memory
  • Hybrid circuit 105 has an analog-to-digital (A/D) converter 108 which receives a number of analog inputs 110 from a multiplexer (not shown) .
  • A/D converter 108 permits data to be transferred via RF up link 26 to be digitized as necessary. The same data may also be transmitted in analog form as discussed further below.
  • Circuitry (CRC) for generating and analyzing the cyclic redundancy code used to forward error detect telemetry data transmitted over RF up link 26 is indicated at 112. The structure and operation of CRC 112 is also discussed in greater detail below. Because of the forward error detection technique chosen for the preferred embodiment, CRC 112 is also used for data received by implantable pulse generator 10 via down link 27.
  • microprocessor 104 is indicated at 114, thus permitting multiple byte transfers without constant management by microprocessor 102.
  • Key hardware used to implement RF up link 26 comprises telemetry control and data buffer circuitry indicated generally within dashed lines at 121, which circuitry includes data buffer 116 and telemetry control 120, and up-link timing circuitry 118.
  • Data buffer 116 includes storage for twelve bits of data. This storage is partitioned into a four-bit section 119 for storage of the frame identifier code, and an eight-bit section 117 for storage of the lower nibble and upper nibble of a frame. Data buffer 116 thus stores all of the variables for one complete frame. Data buffer 116 is used to stage the variables for the frame which may be received from RAM 104, A/D converter 108, CRC 112, or elsewhere along parallel bus 106.
  • Telemetry control 120 consists primarily of a telemetry status register. This register stores the telemetry commands and status as loaded by microprocessor 102. The contents of the register are thus used to gate the data at the proper time of the defined protocol.
  • Up-link timing 118 decodes the twelve bits of data stored in data buffer 116 to produce a set of timing signals which key bursts of RF energy at the appropriate times to pulse position modulate the 175 kilohertz carrier. Up-link timing 118 also keys bursts of RF energy at the fixed positions within the frame corresponding to the frame-initiating pulse and the synchronizing pulse.
  • Analog inputs 110 are also presented to analog switch 111, which serves as a simple analog multiplexer.
  • the particular analog signal to be selected for transmission on the analog channel is determined by control bus 109 which similarly selects the desired analog input for the digital channel.
  • the analog signal selected by analog switch 111 is transferred via line 113 to the modulation hardware.
  • the instantaneous analog value on this line will determine the instantaneous phase of the modulated bursts of carrier energy even as the output of link timing 118 determines the pulse position of those same bursts.
  • FIG. 9 is a basic flow chart showing the overall scheduling function of the microprocessor-based logic 100. The role is essentially one of initiation of the transfer, rather than management of each detail of the transmission.
  • Software associated with RF up link 26 is started at element 130, usually by the initial reed switch closure (see also Fig. 5).
  • Element 132 schedules the requested transmission via the up-link facilities. This scheduling prioritizes up link transmission requests. Lower priority is given to continuous real time transfers, such as EGM and battery voltage, whereas higher priority is given to single occurrence transmissions of status information. Also considered is the internal timing of the cardiac pacer functions. It has been determined through experience that the most reliable results are obtained when the up-link transmission occurs between paced QRS events. Therefore, it is desirable to schedule up-link transmissions to be initiated after the conclusion of a QRS event and to be concluded before the beginning of the next QRS event.
  • element 134 determines whether an up link transmission is currently in progress. If an up link transmission is in progress, element 132 reschedules the request.
  • element 136 initiates the up link transmission by activating telemetry control 120. Exit is via element 138. While some additional management of the process is required during the transmission, a description of such further details has been omitted, since it is not believed necessary to one skilled in the art to fully understand the present invention.
  • Appendix A a source code listing of the pertinent sections of such software has been attached hereto as Appendix A, and is incorporated by reference herein.
  • FIG. 10 is a block diagram showing the modulation circuitry. It includes major data and control elements of telemetry control and data buffer 121 (which includes data buffer 116 and telemetry control 120 shown in FIG. 8) , and also of up-link timing 118 which provide the digital modulation. The remaining elements shown provide the analog channel modulation.
  • a primary function of data buffer 116 is the staging of the twelve variable bits of a given frame which correspond to a four-bit frame identifier ID, and dual-nibble data comprising a four-bit lower nibble LN and a four-bit upper nibble UN.
  • the data is received over an eight- bit, parallel bus 159 and can be from any one of several sources.
  • Control lines EGMDATA at 150, PRSDATA at 151, DLDMA at 153, DMADS at 155, LDANDAT at 156, ENCRC at 161 and LDCRC at 171 specify the source.
  • the output of A/D converter 108 of FIG. 8 is presented separately to data buffer 116 as an eight- bit parallel transfer to ADC(0-7) at 154 (see also FIG. 11).
  • CRC 112 The output of CRC 112 is presented separately to data buffer 116 to CRC(0-15) at 160, since those devices are located on the same substrate.
  • Telemetry control 120 outputs a number of control signals, including EGMGAIN at 162, RVPGAIN at 163, EGMTELEN at 164, ANULON at 165, RAMULON at 166, MEMEN at 167, PRSTELEN at 168, HDRCRCEN at 169 and EGMNPRS at 170. These control outputs are used to enable and control inputs to data buffer 116.
  • the key outputs of telemetry control and data buffer 121 are TELRST at 182, which resets up-link timing 118 and initiates the beginning of a frame, and a parallel data transfer at 184, which transfers the frame identifier ID, lower nibble LN and upper nibble UN to up-link timing 118.
  • Up-link timing 118 receives the frame-initiating control signal TELRST at 182 and the parallel data transfer (ID, LN and UN) at 184.
  • a primary function of up-link timing 118 is to key the transmission of 175 kilohertz RF energy at the proper times to indicate start of frame, frame synchronization, frame identifier, lower nibble and upper nibble.
  • Timing for the radio frequency carrier generation is provided by the 32.768 kilohertz crystal oscillator 179. Its output is provided to phase shift modulator 181 which varies the phase in response to the analog signal present on line 113. Because the 32.768 kilohertz signal is being phase modulated, the modulation pass band of phase shift modulator 181 is about thirty times that of the effective pass band of the analog transmission channel which is limited by the number of modulated carrier bursts (i.e. three) per two millisecond frame.
  • RF switch 185 is a double throw switch which switches between the phase shift modulated signal received from phase shift modulator 181 and the unmodulated signal received directly from crystal oscillator 179.
  • the switch operates in response to the state of input line 183 which indicates whether or not a frame synchronizing pulse is to be transmitted. If yes, RF switch provides the unmodulated output of crystal oscillator 179 to the oscillator input of up-link timing 118 via line 186. This means that frame synchronizing bursts will have a constant phase and may therefore be utilized by the receiver as a phase standard to prevent long term phase drift.
  • RF switch 185 provides link timing 118 with a 32.768 kilohertz signal via line 186 which has been phase shift modulated with the selected analog data.
  • FIG. 11 is a block diagram of up-link timing 118.
  • a frame timing generator 202 provides the desired timing for a frame according to clock input OSC. at 186, in a manner herein above explained.
  • each frame is comprised of sixty-four basic clock cycles. The process is initiated by receipt of the quime-initiating control signal TELRST at 182, which enables up link when in a low state and disables up link when in a high state.
  • the initial clock cycle of a frame contains a burst of RF energy which is keyed by control signal TELCLK at 188, which is also used to trigger the start of the data decoding by an up link word multiplexer 200.
  • a telemetry pulse timer 204 determines the appropriate timing for a burst to be provided to frame timing generator 202, and a corresponding burst of RF energy is keyed. Each of the four-bit quantities thus results in the keying of a burst of RF energy at the appropriate time within each frame.
  • FIG. 12 is a circuit diagram for the drive circuit for generating the RF carrier.
  • a control signal TELCLK at 188 provides the timing information for keying the carrier.
  • a non-overlap generator 220 functions as a delay device to save current by preventing output transistors 230 and 232 from conducting simultaneously. Every transition of control signal TELCLK at 188 causes one transition by non-overlap generator 220.
  • Inverters 222, 224, 226 and 228 are scaled to provide efficient switching with sufficient drive to the gates of transistors 230 and 232.
  • Transistors 230 and 232 drive the signal off of chip 105 to ANTDR at 234 to an antenna circuit.
  • a tuned circuit of discreet components, capacitor 236 and coil 238, are located external to chip 105. Each transition thus causes this tuned circuit to resonate at 175 kilohertz, thereby generating one up link burst.
  • FIG. 13 is a block diagram of the receiver circuit 300 for demodulating both analog and digital channels.
  • the radio frequency energy is received by antenna 302.
  • antenna 302 is the functional equivalent of the physical antenna 22 (see also Fig. 1).
  • the radio frequency energy is amplified by rf amplifier 304 and provided to filter 306 to select the desired pass band (i.e. narrowly tuned about the 175 kilohertz carrier) .
  • the amplified and filtered radio frequency data is provided by cable 314 to digital demodulator 318 for conversion to the base band digital data stream output on cable 332. Construction and operation of digital demodulator 318 is described in greater detail below with regard to byte encoded and bit encoded signals.
  • the amplified and filtered radio frequency energy is also provided to rf switch 310 which is a simple double throw switch. Whenever a digital synchronizing pulse is present at digital demodulator 318, line 320 cause rf switch 310 to route the radio frequency energy received on cable 314 to phase lock loop 312 via cable 334. In this way the constant phase synchronizing pulses are utilized by the receiver as a phase standard for the internal 175 kilohertz oscillator 308.
  • the phase corrected internal standard is provided to phase shift demodulator 328 via cable 322.
  • line 320 causes rf switch 310 to switch the radio frequency energy received on cable 314 to integrator 324 via cable 316.
  • the radio frequency stream sent to phase shift demodulator 328 via cable 326 appears to be a continuous 175 kilohertz carrier which has been phase shift modulated using a relatively low frequency (i.e. less than 200 hertz) analog base band signal.
  • Phase shift demodulator 328 demodulates the 175 kilohertz signal received via cable 326 using the internal 175 kilohertz phase standard received via cable 322 in accordance with known techniques.
  • the analog output on line 330 is typically an EGM or other relatively low frequency analog signal.
  • FIG. 14 is an overall block diagram of cyclic redundancy circuit, CRC 112. The importance of this circuit is that it provides forward error detection in a highly efficient manner using a minimum of redundant transmission band width. This becomes a significant feature for transcutaneous data links wherein total data transmission requirements are relatively large.
  • Forward error detection is provided by using the transmission data as coefficients of a polynomial.
  • this polynomial is divided (in modulo 2 arithmetic, i.e. no carry/borrow function) by a generator polynomial, the remainder is the cyclic redundancy code which is transmitted as 16 redundant bits appended to the end of the transmitted data block.
  • the receiving device utilizes the received data, along with the cyclic redundancy code to generate a new polynomial. If division by the seme generator polynomial results in a zero remainder, the transmission is assumed to have been error free. In the preferred embodiment, hardware has been used to perform these functions although those of skill in the art can appreciate that software implementation is also feasible.
  • the CRC 112 comprises four principle circuits.
  • the up link controller 400 provides timing signals for generation and insertion of the cyclic redundancy codes.
  • the parser 402 serializes the incoming transmission data.
  • Control 404 sets up the calculation process, and calculator 406 produces the actual 16 bit cyclic redundancy code, as two eight bit words. Note that except for interpretation of the result, receipt and processing of the received cyclic redundancy codes is nearly identical and is accomplished with the same hardware elements.
  • FIG. 15 is a detailed schematic diagram of the up link controller 400.
  • the basic crystal timing standard is received via line 434. This signal times the output on line 420 of the up link shift signal held by flip flop 458, which clocks parser 402 as explained below.
  • Flip flops 460, 462, 464, and 466 clear flip flop 458 after an appropriate delay.
  • Flip flop 458 is clocked by the up link DMA reply (i.e. data is available on the data bus) received via line 436 and the header enable received via line 438. Resetting of these flip flops is enabled by the signal received via line 440.
  • the up link load command is place on line 422.
  • the up link load and up link shift timing signals basically control timing of the operation of parser 402. Control of insertion of the cyclic redundancy code into the transmitted data stream is achieved using the CRC second byte signal on line 424, the enable CRC signal on line 426, the load CRC signal on line 428, the sum signal on line 430, and the telemetry interrupt signal on line 432 (see also Fig. 14) .
  • FIG. 16 is a schematic diagram of parser 402.
  • the eight transmission data bits are received via cable 414. Each is loaded into the corresponding one of the flip flops 484, 486, 488, 490, 492, 494, 496, and 498, respectively. Loading is enabled by the up link load signal received on line 500 (see also Fig. 15) with inverter 480 providing the corresponding opposite load signal for each flip flop.
  • the data After loading of an eight bit byte into the eight bit register, the data is clocked serially from one bit position to the next to serialize the data. Clocking of this shift function which serializes the data is provided by the up link shift signal received on line 502 and invertor 482. The resulting bit stream is output on line 416.
  • FIG. 17 is a schematic diagram of control circuit 404 which controls the CRC calculation process.
  • the delayed clock signal received on line 528 is used to switch the CRC data in signal of line 526 alternately between the serialized up-link data received via line 416 and the down-link data received on line 540.
  • the outputs on lines 522 and 524 correspond to the CRC clock signal and the inverted CRC clock signal. This is produced by alternately switching between the up link shift signal received via line 536 and the synch clock signal received via line 538. This switching is accomplished at the same rate as the switching which produces the CRC data in signal. However, the latter is generally delayed by one more inverter level before being placed on line 526.
  • the CRC reset signal which is placed on line 520 is produced by the not output of flip flop 542 as enabled by the header enable, down-link signal or fourth delay of the crystal output.
  • Flip flop 542 is reset by the fourth delay of the crystal output.
  • FIG. 18 is a detailed schematic diagram of CRC calculation circuitry 406.
  • the outputs of this circuit are the 16 bit up-link cyclic redundancy code for transmitted data transferred via bus 408, and the corresponding down-link CRC zero check for received data, which is output on line 410.
  • serialized data to be transmitted is presented to exclusive or 550 by line 526 (see also Fig. 17).
  • This serialized bit stream is presented to flip flops 552, 554, 556, 558, 560, 562, 564, 566, 568, 570, 572, 574, 576, 578,
  • CRC shift register which is a single 16-bit shift register with mod 2 sum feedback. This effectively implements the modulo 2 division resulting in a 16 bit remainder.
  • the CRC second byte signal is used to stage the two bytes of the 16-bit remainder, appending the CRC to the up-linked data stream.
  • the received data is clocked into the flip flops by the
  • Each flip flop is reset by the CRC reset signal presented on line 520.
  • the zero check signal presented on line 410 is produced by flip flop
  • FIG. 19 is a pictorial diagram showing alternative approaches to the decoding of digital information. For purposes of clarity, only lower nibble range 44 (see also Fig. 2) is shown. However, those of skill in the art will readily appreciate that both lower and upper nibble may be similarly bit encoded.
  • Pulse 602 represents a generic data burst (i.e. lower nibble) as received by the rf demodulator. If the time intervals of the received signal are considered to be 0 through 15 (see also Fig. 2) , pulse 602 is received at interval 7.
  • Demodulation process 608 converts rf pulse 602 into the hexadecimal number seven as represented by nibble 610.
  • This demodulation process assumes that rf pulse 602 is data value encoded and is most convenient for transferring digital data quantities, which may consist of one or more ordered hexadecimal numbers. However, this format can also be utilized to express command/status discrete information, which can be further decoded in known fashion.
  • the second digital demodulation process is demodulation process 604. It converts pulse 602 directly into bit 606 of the 16-bit command/status word. This process assumes that rf burst 602 is bit encoded and is readily adaptable to the transfer of discrete, single bit values which are totally independent. This demodulation process can become even more conserving of the available bandwidth by placing additional rf pulses (i.e. in addition to pulse 602) within the same 16 time intervals, because the decoding process assumes that the 16 bits are completely independent. As explained above, the preferred mode of the present invention selects between demodulation processes 604 and 608 based upon the frame identifier signal.
  • FIG. 20 is a pictorial diagram similar to Fig. 19 showing the use of multiple rf bursts within the same lower nibble range in the bit encoded format.
  • lower nibble range 44 also contains bursts at intervals 1 and 14.
  • Demodulation process 604 directly converts each of these three rf bursts into a corresponding one of the bits 605, 606, and 607.
  • lower nibble 44 can contain discrete binary information concerning 16 separate and independent variables.
  • Upper nibble range 48 (see also Fig. 2) can also contain up to 16 variables. The result is that 32 discrete one-bit variables can be expressed in a single frame.
  • demodulation process 608 cannot provide a unique result, because it assumes that only one rf burst will be present within lower nibble 4 (or upper nibble 48, not shown).
  • selection of the demodulation process is preferably made on the basis of the frame identifier signal.
  • FIG. 21 is a schematic diagram of a typical demodulation circuit for executing demodulation process 608.
  • the demodulation process may also be accomplished in software in accordance with the description provided in Appendix A attached hereto.
  • the filtered rf signal is received via line 314 (see also Fig. 13) .
  • the pulse is detected by integrator 612 and supplied to oscillator 622 to synchronize its output.
  • the detected pulse is also provided to multivibrator 616 and and-gate 614 which determines whether a given pulse is a fixed synchronizing pulse or a variable identifier or data pulse. This determination can be made, because the synchronizing pulses are completely periodic.
  • the frame synchronizing pulses are provided via line 636 to clear counter 634 and enable latch 660.
  • the frame synchronizing pulse is also inverted by invertor 618 to enable and-gate 620 to determine the variable pulses (i.e. the pulses which are not synchronization pulses) .
  • the variable pulses are thus present on line 640.
  • the variable pulse disables and-gate 626 via invertor 624 the output of synchronized counter 622 is presented to four bit counter 634 via line 638. In this manner, counter 634 counts the time intervals until the variable pulse is present. This count is thus the value of the variable pulse.
  • Data flip-flop 628 distinguishes between the lower nibble and the upper nibble by being toggled by line 640.
  • the synchronizing pulse on line 636 resets data flip-flop 628.
  • And-gates 642, 644, 646, and 648 and and-gates 650, 652, 654, and 656 gate the lower and upper nibbles into latch 660, respectively, in response to enables from and-gates 630 and 632.
  • the output of latch 660 is an eight bit, byte encoded, number on cable 332A. This can also be viewed as two ordered hexadecimal numbers.
  • FIG. 22 is a schematic diagram showing typical circuitry for demodulator process 604 (see also Figs. 19 and 20) .
  • a complete software implementation for this process is also found in Appendix A.
  • the synchronizing signals on line 636 are used to reset 16-bit shift register 666 and 16-bit latch 664.
  • the remaining elements are as previously described.
  • the decoding process is simplified because there is a direct one-for-one correspondence between the rf pulse positions and corresponding bits set in latch 664. This correspondence is achieved by shifting a bit through shift register 666 as controlled by the output of synchronized oscillator 622. Each bit position containing an rf burst is latched in 16-bit latch 664.
  • the 16-bit encoded output of latch 664 is presented on cable 332B.

Abstract

An apparatus for telemetering analog and digital data transcutaneously between an implantable medical device and an external receiver, such as between an external programmer and an implantable cardiac pacer. A damped carrier at 175 kilohertz is pulse position modulated by digital data. The data, along with synchronization and identification codes, are positioned into predefined ranges within predefined frames as measured by individual time periods. The data is uniquely identified by the position of one or more bursts of the carrier within the predefined range. An automatically initiated hand shake protocol maintains the link over slight variations in programmer head position with an indicator notifying the operator when repositioning is required. Analog data may be transferred in digital form or alternatively transferred using phase modulation of the carrier bursts. A cyclic redundancy code is used for link error detection. The digital data may be encoded/decoded in bit or byte format using hardware and/or software elements.

Description

MEDICAL DEVICE TELEMETRY WITH BIT/DATA VALUE ENCODING CROSS REFERENCE TO CO-PENDING APPLICATIONS
This application is a continuation-in-part of U.S. Appln. Ser. No. 07/896,643, filed June 10, 1992, incorporated herein by reference, which is a continuation-in-part of U.S. Appln. Ser. No. 07/765,475, filed September 25, 1991, incorporated herein by reference, which is a continuation of U.S. Appln. Ser. No. 07/468,407, filed on January 22, 1990, now abandoned.
BACKGROUND OF THE INVENTION _L-_ Field of the Invention
The present invention generally relates to implantable medical devices, and more particularly, pertains to telemetry for percutaneously transmitting analog and digital data between a programmer and an implantable medical device. 2m. Description Qf the P JrPr Art
The earliest implantable medical devices were designed to operate in a single mode and with no direct percutaneous communication. Later it became clinically desirable to vary certain of the operating parameters and change modes of operation. This was accomplished through the use of programmers and other external devices which transferred commands percutaneously to the implanted medical device.
The communication between the implairt and the external world was at first primarily indirect. The operation of an implantable cardiac pacer could be observed, for example, in the electrocardiogram of the patient. Soon it became known that data could be sent from the implanted cardiac pacer by modulating the stimulation pulses in some manner. This can only provide a low band pass channel, of course, without interfering with the clinical application of the device. Change of the pacing rate to indicate battery condition was a commonly used application of this technique.
As implantable cardiac pacers became more complex, the desirability to transfer more data at higher speeds resulted in the percutaneous transmission of data using a radio frequency carrier. The data to be transmitted is of two basic types, namely, analog and digital. The analog information can include, for example, battery voltage, intracardiac electrocardiogram, sensor signals, output amplitude, output energy, output current, and lead impedance. The digital information can include, for example, statistics on performance, time markers, current values of programmable parameters, implant data, and patient and unit identifiers. The earliest RF telemetry systems transmitted analog and digital information in separate formats, resulting in inefficient utilization of the available power/bandwidth. Also, these modulation schemes tended to be less than satisfactory in terms of battery consumption, and do not lend themselves to simultaneous transmission of differing data types.
Many types of RF telemetry systems are known to be used in connection with implantable medical devices, such as cardiac pacemakers. An example of a pulse interval modulation telemetry system used for transmitting analog and digital data, individually and serially, from an implanted pacemaker to a remote programmer is disclosed in U.S. Patent No. 4,556,063 issued to Thompson et al., herein incorporated by reference. .An example of a modern pacemaker programmer for use with programmable cardiac pacemakers having RF telemetric capabilities is disclosed in U.S. Patent No. 4,550,370 issued to Baker, herein incorporated by reference. A major difficulty in the use of such prior art systems is the need to maintain the communication link using continuous activation of the reed switch. This tends to place the radio frequency components in a less than optimal physical orientation. In addition to the bandwidth limitations found by the differing analog and digital formats, considerable bandwidth of digital channels tends to be consumed for forward error detection. Oftentimes, in previous systems this was accomplished by completely redundant separate transmissions. A further problem of prior art RF telemetry systems involves the method of encoding and decoding digital data transmissions. Ordinarily, data is simply data value encoded and transferred as ordered digital data elements, with the byte (i.e. eight ordered binary bits) being the data element of choice. This tends to be a convenient data size in view of available hardware and software designs. A byte can be easily expressed as a two character hexadecimal number (i.e. in base 16) and/or converted to a decimal number as appropriate. Most often control commands and status reports are similarly data value encoded into hexadecimal bytes creating substantial redundancy in the data protocol and encoding/decoding hardware and software.
SUMMARY OF THE INVENTION The present invention overcomes the disadvantages of the prior art systems by percutaneously transmitting both analog and digital data between the implantable medical device and the external device in a single format. This format provides for transmission of both data types while employing a hand shake protocol to maintain continuity of the link and while using cyclic redundancy coding to provide forward detection of link transmission errors.
The RF carrier is pulse position modulated with the digital data to conserve battery energy. In this manner, only a short burst of the carrier, e.g., one cycle, is actually needed to transmit a given unit of digital data. The time position of that burst relative to a synchronizing standard determines the value of the digital data unit transmitted.
To accomplish this pulse position modulation, a frame of about 2 milliseconds is defined. Within this frame are positioned a synchronizing burst, a frame identifier burst, and two data bursts. The synchronizing burst is positioned at a fixed position in every frame. The frame identifier and data positions are variable, such that the corresponding bursts occur within a range of time within the frame. The range in which a burst is found defines the nature or type of the variable. The position in the range defines the value o the variable.
The frame identifier burst defines the type of data to b found within the frame. One particular frame identifie defines a two frame couplet as a hand shake link maintenanc verification. The hand shake request is made by th transmitting device at approximately 250 millisecon intervals. In response thereto, the receiving device mus transmit a hand shake reply within the data range of that sam frame. Upon receiving the hand shake reply, the transmittin device sends a unique hand shake confirmation within th second frame of the couplet.
Failure to successfully comple* e the hand shake protoco at a given 250 millisecond interval causes an indicator on th external RF head to be lit. This signifies that the operato must reposition the rf head to maintain operation of the link. If the RF head is not properly repositioned within fiv seconds (i.e. 20 unsuccessful hand shake attempts) , the lin is deemed to be broken and must be re-initiated before dat can be transmitted.
The link is initiated by closing of the reed switch by magnetic field sourced from the RF head. Because the han shake protocol is used to maintain the link, the reed switc need not be closed during the entire data transmission. However, to ensure that devices made in accordance with th present invention are downward compatible, preferably, th link may be maintained by continuous closure of the ree switch during the entire transmission without regard t whether any hand shake attempts are successful.
Analog data may be transmitted in two ways in accordanc with the present invention. The first technique is to conver the analog data into digital information. This digita information is used to pulse position modulate the burst o carrier energy in the same manner as other digital information.
A second technique for transmitting the analog information is to phase shift modulate the carrier bursts in response to the analog data. Because an ordinary frame lasting two milliseconds contains four bursts of 175 kilohertz energy, it is theoretically possible to transmit analog data with a pass band of up to one kilohertz. However, most of the analog signals of interest tend to have a much lower pass band. Therefore, the burst used to synchronize the frame for digital purposes is also used to transmit a constant phase standard. This means that only three bursts per frame are available for analog transmission lowering the theoretical pass band of the analog channel to 750 hertz. However, the constant transmission of the phase standard prevents the low frequency shifts associated with phase drift between the transmitting and receiving devices.
The transmission of digital data takes place using two distinct formats. In the first format, the two data bursts are decoded as individual hexadecimal numbers. As such, the demodulation circuitry converts each pulse position modulated data burst into one of 16 distinct hexadecimal numbers representing from 0 to 15. This format is particularly useful for data quantities which may have initially been either analog or digital in nature. These data quantities may involve more than one hexadecimal number.
Command and status information on the other hand, tends to involve a number of independent indications which are either discretely on or off. These separate and independent discrete signals may be accommodated in two different ways. For either approach, a different bit position within a data element is assigned to indicate the command/status state of each discrete element. The hardware and software of both the implant and the programmer can easily utilize this format (called bit encoding) using individual bit checking and manipulation operations. The same .bit position may be used for the entire data transferv thus obviating the need to encode and decode the transmission. Furthermore, because each of the discrete signals is independent of each other discrete signal, the command or status of a number of variables may be transmitted within a single data set. Alternatively, the command/status discrete information can be data value encoded into a data value, which is similar to the normal digital data format to conserve transmission link energy requirements. To accomplish this, the discrete values can be data value encoded and decoded using a memory look up table.
To reduce the pass band consumed in the forward error detection function, a cyclic redundancy code is transmitted along with the digital data. This code is computed to be the remainder bits after a polynomial using the transmitted data bits as coefficients, is divided by a generator polynomial. The receiving device divides the polynomial formed using the received data bits and cyclic redundancy code as coefficients. If the remainder is not zero, a transmission error has occurred and the transmitting device is notified that the subject data block must be retransmitted.
The cyclic redundancy function may be implemented in either software or hardware within the transmitting and receiving devices. However, for greatest efficiency, a given device should employ only one form. In the preferred embodiments, hardware implementation is utilized for both transmitting and receiving.
BRIEF DESCRIPTION OF THE DRAWINGS Other objects of the present invention and many of the attendant advantages of the present invention will be readily appreciated as the same becomes better understood by reference to the detailed description when considered in connection with the accompanying drawings in which like reference numerals designate like parts throughout the figures thereof and wherein: FIG. l is a simplified schematic view of an implantabl medical device employing the improved telemetry format of th present invention;
FIG. 2 is a conceptual view of one frame of the improve telemetry format of the present invention;
FIG. 3 is a view of the actual transmission pattern o two frames of the improved telemetry format;
FIG. 4 is a flow chart of a prior art method of lin management; FIG. 5 is a flow chart showing link maintenance accordin to the present invention;
FIG. 6 is a flow chart of the basic hand shake procedure;
FIG. 7 is a timing diagram of a successful hand shake;
FIG. 8 is a block diagram of the transmitter base ban circuitry;
FIG. 9 is a flow chart for establishing link availabilit of the transmitter channel;
FIG. 10 is a block diagram showing the analog modulatio circuitry; FIG. 11 is a block diagram of the digital modulatio circuitry;
FIG. 12 is a schematic diagram of the transmitter r circuitry;
FIG. 13 is a block diagram of the receiver circuitry; FIG. 14 is a block diagram of the cyclic redundancy cod circuitry;
FIG. 15 is a detailed schematic diagram of the up lin CRC control circuitry;
FIG. 16 is a schematic diagram of the CRC parser; FIG. 17 is a schematic diagram of the overall CRC contro circuit;
FIG. 18 is a detailed schematic diagram of the CR calculation circuitry;
FIG. 19 is a pictorial diagram showing alternat approaches to digital data decoding; FIG. 20 is a pictorial diagram showing bit decoding of multiple bursts within a single nibble range;
FIG. 21 is a schematic diagram of typical demodulation circuitry providing a data value encoded output; and FIG. 22 is a schematic diagram of typical demodulation circuitry providing a bit encoded output.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a simplified schematic diagram of the present invention as employed in a communication link between an external programmer and an implanted cardiac pacer. An implantable pulse generation 10 is implanted in the patient under the outer skin barrier 28. Implantable pulse generator 10 is electrically coupled to the heart of the patient using at least one cardiac pacing lead 12 in a manner known in the art. Percutaneous telemetry data is transmitted from implantable pulse generator 10 by an RF up link 26 utilizing the improved telemetry format to a receiving antenna 22, which is coupled to a programmer 20 via a cable 24. Receiving antenna 22 also contains a magnet which activates a reed switch in implantable pulse generator 10 as a safety feature, as taught in U.S. Patent No. 4,006,086 issued to Alferness et al. , herein incorporated by reference. The telemetry data is demodulated and presented to the attending medical personnel by programmer 20. Similarly, programmer 20 transmits signals via radio frequency energy sent from antenna 22 under control of signals transferred from programmer 20 along cable 24. This energy reaches implantable pulse generator 10 by down link 27. The transmitted signals are utilized by implantable pulse generator 10 after demodulation.
In accordance with the present invention, indicator 25 provides notification to the operator of the link that a disruption has occurred. In the preferred mode, indicator 25 is a light emitting diode, LED. The LED is illuminated whenever a periodically scheduled (i.e. approximately every 250 milliseconds) handshake has been unsuccessful. Upon seeing indicator 25 illuminated, the operator is instructed to reposition antenna 22 slightly to improve reception along the link. Failure to properly reposition antenna 22 for five seconds (i.e. 20 unsuccessful hand shake attempts) causes the link to be terminated. The operator is so notified by programmer 20 using standard techniques. The hand shake protocol is explained in more detail below.
FIG. 2 is a schematic diagram of the protocol utilized by RF up link 26. These links use a damped 175 kilohertz RF carrier which is phase shift modulated for analog data and pulse position modulated for digital (or digitized) data, as described in detail below. Shown at 30, the basic timing unit of the format is a frame, having a duration of tn5. It will be understood by those skilled in the art, however, that the present invention can be practiced using fixed-length frames having periods of shorter or longer duration. In the preferred embodiment, the main timing source of implantable pulse generator 10 comprises a standard 32.768 kilohertz crystal clock which provides a basic clock cycle of 30.52 microseconds. Thus, a frame comprised of 64 clock cycles and extending over a fixed time interval of 1.953125 milliseconds is a convenient frame period, since such frame period is a binary multiple of the basic clock cycle. A unique synchronizing signal is positioned within a first fixed range of each frame 30. This signal comprises a synchronizing RF pulse 32 which is located a time tnl within frame 30. To properly function as a synchronizing pulse, it must be located at a fixed point within the first fixed range of frame 30, as shown at 34.
A four-bit frame identifier code is positioned within a second fixed range of each frame 30, such second fixed range comprising an identifier range 38. Identifier range 38 uses a total of eleven basic clock cycles as shown. This identifier code comprises an identifier RF pulse 36 which is pulse position modulated within the identifier range 38. The position of identifier pulse 36 within identifier range 38 identifies the nature or type of data found within each frame 30 which is being transmitted, such as peak sense, peak pressure, sense threshold and others, as described in further detail below. Shown at 40, time interval tn2 thus uniquely represents the value of identifier pulse 36, which value in turn identifies the data type being transmitted within frame 30. As explained below, one unique frame identifier code is a hand shake request employed within the hand shake protocol to maintain the link communication. The frame identifier code may also be used to describe whether the succeeding data bursts within the frame are to be interpreted as byte encoded or bit encoded information . Each frame 30 has the capability to transfer one eight- bit byte of digital data along with the identifier code. This data is divided into two equal portions, each capable of defining a unique one of 16 possible values. A first portion of this data is positioned within a third fixed range of frame 30, such third fixed range being defined as lower nibble range 44. A second portion of this data is positioned within a fourth fixed range of frame 30, such fourth fixed range being defined as upper nibble range 48.
A lower nibble pulse 42 is pulse position modulated within lower nibble range 44, such that its value is uniquely identified by its location, such as at a time tn3 shown at 45. An upper nibble pulse 46 is also pulse position modulated within upper nibble range 48, such that its value is uniquely identified by its location, such as at a time tn4 shown at 50. Lower nibble range 44 and upper nibble range 48 each comprise sixteen basic clock cycles, permitting each of the sixteen unique values of the four-bit nibble to be specified. To prevent data overlap, suitable guard bands are positioned between each of the ranges within the frame to uniquely identify the synchronizing pulses, thereby avoiding undefined and erroneous data transmission.
As explained in more detail below, identifier pulse 36, lower nibble pulse 42, and upper nibble pulse 46 are phase shift modulated with analog data in addition to being pulse position modulated with digital information. The pulse position within the frame is used along with the instantaneous analog signal value to define the instantaneous phase of the carrier. Synchronizing RF pulse 32 has a fixed phase as well as a fixed pulse position such that it can conveniently serve as a phase standard for analog demodulation as well as a time standard for digital demodulation.
FIG. 3 is a diagram of two frames of transmission from either RF up link 26 or down link 27, wherein a first frame corresponds to Word 1 shown at 70, and a second frame corresponds to Word 2 shown at 72. A count of clock cycles is indicated along an upper horizontal axis of this diagram for each frame. Each basic clock cycle has a duration of 30.52 microseconds. The first frame at 70 is initiated by an RF pulse 52. A synchronizing RF pulse 54 is shown uniquely identified as precisely four clock cycles later. Because the guard bands are all greater than four clock cycles, no combination of a frame identifier and data can appear as a synchronizing pulse. Synchronizing pulse 54 is used to provide frame synchronization between the transmitter and the receiver.
An identifier RF pulse 56 is located within identifier range 38, defined as nine to nineteen basic clock cycles from the beginning of frame 70. Not to be deemed limiting of the present invention, some of these codes specify byte encoding of the upper and lower nibbles. Similarly, other frame identifiers are utilized to signify bit encoding of the upper and/or lower nibbles. In Word l, for example, identifier pulse 56 is located at clock cycle nineteen. For RF up link 26, this identifies the frame as a particular type of data transfer, namely, "Sense Threshold" as indicated in Table 1 below. One or more link frame identifiers may indicate that a particular frame contains bit encoded digital data. In the preferred mode, the "Memory" identifier primarily denotes bit encoded digital data.
TABLE 1 (Up link Frame Identifiers) position Iden ifica ion
9 Memory 10 Hand shake request
11 EGM-1
12 Markers
13 Peak Sense
14 Pressure Waveform 15 Peak dp/dt
16 Peak Pressure
17 Delta Capacitor Voltage
18 Activity Counts
19 Sense Threshold A lower nibble RF pulse 58 is located within lower nibble range 44, which range is defined as twenty-four to thirty-nine basic clock cycles from the beginning of frame 70. In Word 1, for example, lower nibble pulse 58 is located at clock cycle thirty-one, specifying alternatively a hexadecimal value of seven on a scale of zero to fifteen or a discrete command/status indication at variable seven. An upper nibble RF pulse 60 is located at clock cycle fifty-eight within upper nibble range 48, which range is defined as forty-four to fifty-nine basic clock cycles from the beginning of frame 70, and may be similar demodulated as a byte encoded or bit encoded value.
Though not readily observable in Fig. 3, RF pulses 56, 58, and 60 can be phase shift modulated with analog data as well. RF pulses 52 and 54 have a constant phase and thus serve as a phase standard for analog demodulation. FIG. 4 is a flow chart 100 for the common prior art method of maintaining the transmission link. The basis of this technique is a magnet located within the housing of antenna 22 (see also Fig. 1) . This housing is often called an RF head within the art. Presence of the magnetic field generated by this magnet closes a reed switch within implantable pulse generator 10 if in sufficiently close proximity. The hardware details of this approach are provided in the above identified and incorporated U.S. Patent to Alferness et al.
Functionally, the technique is started at element 102. The RF head is manually positioned by the attending medical personnel at element 105. Element 103 determines whether the magnet within the RF head has in fact closed the reed switch within implantable pulse generator 10. If element 107 extinguishes the LED indicator, the operator is notified that the RF head position is satisfactory* As soon as the transfer is initiated at element 106 and until completion of the entire transfer as determined by element 108, element 104 permits further data transfer via element 112 as long as the reed switch within implantable pulse generator 10 remains closed. If the reed switch opens before the transfer is completed, element 110 records a failure to complete the transmission. If the transfer has been completed, however, as determined by element 108, element 114 provides a normal exit.
As can be appreciated from this approach, the reed switch must be closed and remain closed for the entire duration of the transmission to be deemed satisfactory. As data streams become longer, incomplete transfers become more prevalent because of patient movement, inadvertent movement of antenna 22, and other practical difficulties.
FIG. 5 is a flow chart 116 of the method of maintaining the link according to the preferred mode of the present invention. The link protocol is entered at element 118. As with the prior art approach (see also Fig. 4) , the RF head is manually positioned at element 119 and checked by element 120, which causes initiation of the link upon the closing of the reed switch. However, unlike the prior art approach, the link may be maintained without continuous closing of the reed switch as will become apparent. Upon initiation of the link, element 122 causes implantable pulse generator 10 to commence sending the marker channel timing signals which are well known in the art to programmer 20.
The basic hand shake procedure is performed at element 124. This procedure is described in more detail below. If a reply was not received by the requesting device during the hand shake procedure, element 126 routes control to element 128 to determine whether a time out has occurred. Time out is defined as a five second period of time during which no hand shake procedure has been successful. In the preferred mode, the hand shake procedure is executed every 250 milliseconds, which means that time out corresponds to 20 consecutive unsuccessful hand shake procedures. If a time out has occurred, element 130 records an incomplete transfer and exit is obtained via element 132. If a time out has not occurred, element 129 increments the time out counter indicating that another unsuccessful consecutive hand shake procedure has been experienced and returns control to element 136 for data transfer. Whenever element 126 determines that the hand shake procedure has been successful, element 134 rests the session time out timer. This corresponds to a break in the chain of unsuccessful hand shake procedures if any. After the reset, the link will not time out for at least five more seconds. Data transfer occurs at element 136. Element 138 determines whether the current data transfer is complete. This may be defined within the data stream itself. If yes, element 140 records a successfully completed data transfer and exit occurs via element 144. If the entire data transfer is not yet complete, element 142 determines whether it is time for another hand shake procedure. A new hand shake procedure is scheduled every 250 milliseconds. The resultant time interval between hand shake procedures (requiring two frames) corresponds to 124 data frames which consume about 248 milliseconds.
If the 250 milliseconds has not yet elapsed, control is returned to element 136 for additional data transfer. If the 250 milliseconds has elapsed, however, control is given to element 124 to schedule another hand shake procedure. Thus it can be seen that the link can be maintained without continuous closure of the reed switch. By using forward error detection techniques along with retransmission of incorrect data blocks, as described below, the link can be efficiently maintained even though actual data transmission continuity is temporarily interrupted.
FIG. 6 is a flow chart 146 of the hand shake procedure. Upon being called, entry is via element 148. In the preferred mode, implantable pulse generator 10 transmits the hand shake request at element 150. However, those of skill in the art will readily appreciate that the hand shake request could also be transmitted from programmer 20. The transmitted hand shake request is a frame having a unique frame identifier (see above) without any data pulses (as shown below) .
If programmer 20 does not receive the hand shake request as shown by element 152, control is given to element 155 to continue waiting until a time out has occurred. This time is on the order of tens of microseconds, because the hand shake reply must be positioned within the same frame as described in more detail below. After the time out, element 155 transfers control to element 158 to record a hand shake failure and exit the procedure at element 160.
If programmer 20 properly receives the hand shake request, it generates a reply pulse at element 153. Element 154 determines whether implantable pulse generator 10 has received the reply. Element 156 illustrates that some tens of microseconds are expended awaiting the reply. If none is received in time, element 158 records the hand shake failure and exits via element 160.
A properly timed reply received by implantable pulse generator 10 causes transmission of a confirmation signal as shown at element 162. Element 164 causes element 166 to extinguish indicator 25 if programmer 20 receives the confirmation and to illuminate indicator 25 if programmer 20 does not receive the confirmation. Exit is via element 170. FIG. 7 is a timing diagram showing the two frame couplet associated with the hand shake procedure. The lower time line, comprising request frame 190 and confirmation frame 192 shows that the total transmission time for a successful hand shake is two frames or approximately four milliseconds. In the preferred mode, the hand shake requestor is implantable pulse generator 10, although those of skill in the art can readily appreciate that this function could also be assigned to programmer 20. Implantable pulse generator transmits a standard frame initiation pulse at 176 and frame synchronizing pulse 178 (see also Fig. 2). The frame identification pulse 180 is chosen to uniquely identify this as a hand shake request (see also Table 1 above) . Frame identification pulse 180 is placed within the frame identification range as with other frame identifiers (see also Figs. 2 and 3) .
Time window 182 is the time relative to the frame synchronizing pulse (i.e. pulse 178) during which the implantable pulse generator must receive a hand shake reply to achieve a successful hand shake. Time window 182 corresponds to the time during which the lower nibble and upper nibble of data would ordinarily be transmitted (see also Fig. 2) . The frame for programmer 20 begins at point 172. If it has received and properly decoded frame identification pulse 180 as a hand shake request, it transmits hand shake reply pulse 174 as shown. If implantable pulse generator 10 receives and properly decodes hand shake reply pulse 174 during time window 182, it transmits confirmation pulses 186 and 188 during the next succeeding frame which begins at point 184 and is defined by frame synch pulse 185 and frame identifier pulse 187. Note that the hand shake has been successful to implantable pulse generator 10 if it receives hand shake reply pulse 174 during the first frame. However, programmer 20 must wait until receipt of confirmation pulses 186 and 188 during the second frame to record a successful hand shake.
As can be readily appreciated, the use of this particular handshake technique, which uses the standard frame size and protocol, periodically ensures that synchronization between programmer 20 and implantable pulse generator 10 is maintained throughout the entire transmission. Furthermore, no data is lost following confirmation due to the need to re-synchronize.
FIG. 8 is a block diagram of that portion of implantable pulse generator 10 which is associated with formatting and transmission of RF up link 26. Most of the unique hardware which embodies the present invention is located on a single substrate, including custom hybridized circuitry indicated generally by arrow 105. The remainder of the hardware, which is preferably located on the same substrate, is microprocessor-based logic indicated generally by arrow 100, comprising microprocessor 102, random access memory (RAM) 104, and parallel bus 106. The function of microprocessor-based logic 100 is described in further detail below.
Hybrid circuit 105 has an analog-to-digital (A/D) converter 108 which receives a number of analog inputs 110 from a multiplexer (not shown) . A/D converter 108 permits data to be transferred via RF up link 26 to be digitized as necessary. The same data may also be transmitted in analog form as discussed further below. Circuitry (CRC) for generating and analyzing the cyclic redundancy code used to forward error detect telemetry data transmitted over RF up link 26 is indicated at 112. The structure and operation of CRC 112 is also discussed in greater detail below. Because of the forward error detection technique chosen for the preferred embodiment, CRC 112 is also used for data received by implantable pulse generator 10 via down link 27.
Circuitry (DMA) for providing direct memory access to RAM
104 is indicated at 114, thus permitting multiple byte transfers without constant management by microprocessor 102.
Key hardware used to implement RF up link 26 comprises telemetry control and data buffer circuitry indicated generally within dashed lines at 121, which circuitry includes data buffer 116 and telemetry control 120, and up-link timing circuitry 118. Data buffer 116 includes storage for twelve bits of data. This storage is partitioned into a four-bit section 119 for storage of the frame identifier code, and an eight-bit section 117 for storage of the lower nibble and upper nibble of a frame. Data buffer 116 thus stores all of the variables for one complete frame. Data buffer 116 is used to stage the variables for the frame which may be received from RAM 104, A/D converter 108, CRC 112, or elsewhere along parallel bus 106.
Telemetry control 120 consists primarily of a telemetry status register. This register stores the telemetry commands and status as loaded by microprocessor 102. The contents of the register are thus used to gate the data at the proper time of the defined protocol.
Up-link timing 118 decodes the twelve bits of data stored in data buffer 116 to produce a set of timing signals which key bursts of RF energy at the appropriate times to pulse position modulate the 175 kilohertz carrier. Up-link timing 118 also keys bursts of RF energy at the fixed positions within the frame corresponding to the frame-initiating pulse and the synchronizing pulse.
Analog inputs 110 are also presented to analog switch 111, which serves as a simple analog multiplexer. The particular analog signal to be selected for transmission on the analog channel is determined by control bus 109 which similarly selects the desired analog input for the digital channel. The analog signal selected by analog switch 111 is transferred via line 113 to the modulation hardware. The instantaneous analog value on this line will determine the instantaneous phase of the modulated bursts of carrier energy even as the output of link timing 118 determines the pulse position of those same bursts. FIG. 9 is a basic flow chart showing the overall scheduling function of the microprocessor-based logic 100. The role is essentially one of initiation of the transfer, rather than management of each detail of the transmission. Software associated with RF up link 26 is started at element 130, usually by the initial reed switch closure (see also Fig. 5).
Element 132 schedules the requested transmission via the up-link facilities. This scheduling prioritizes up link transmission requests. Lower priority is given to continuous real time transfers, such as EGM and battery voltage, whereas higher priority is given to single occurrence transmissions of status information. Also considered is the internal timing of the cardiac pacer functions. It has been determined through experience that the most reliable results are obtained when the up-link transmission occurs between paced QRS events. Therefore, it is desirable to schedule up-link transmissions to be initiated after the conclusion of a QRS event and to be concluded before the beginning of the next QRS event.
After scheduling, element 134 determines whether an up link transmission is currently in progress. If an up link transmission is in progress, element 132 reschedules the request.
If an up link transmission is not in progress after scheduling, element 136 initiates the up link transmission by activating telemetry control 120. Exit is via element 138. While some additional management of the process is required during the transmission, a description of such further details has been omitted, since it is not believed necessary to one skilled in the art to fully understand the present invention. As to the software associated with the up link transmission, however, a source code listing of the pertinent sections of such software has been attached hereto as Appendix A, and is incorporated by reference herein.
FIG. 10 is a block diagram showing the modulation circuitry. It includes major data and control elements of telemetry control and data buffer 121 (which includes data buffer 116 and telemetry control 120 shown in FIG. 8) , and also of up-link timing 118 which provide the digital modulation. The remaining elements shown provide the analog channel modulation.
A primary function of data buffer 116, as indicated above, is the staging of the twelve variable bits of a given frame which correspond to a four-bit frame identifier ID, and dual-nibble data comprising a four-bit lower nibble LN and a four-bit upper nibble UN. The data is received over an eight- bit, parallel bus 159 and can be from any one of several sources. Control lines EGMDATA at 150, PRSDATA at 151, DLDMA at 153, DMADS at 155, LDANDAT at 156, ENCRC at 161 and LDCRC at 171 specify the source. The output of A/D converter 108 of FIG. 8 is presented separately to data buffer 116 as an eight- bit parallel transfer to ADC(0-7) at 154 (see also FIG. 11). The output of CRC 112 is presented separately to data buffer 116 to CRC(0-15) at 160, since those devices are located on the same substrate. Telemetry control 120 outputs a number of control signals, including EGMGAIN at 162, RVPGAIN at 163, EGMTELEN at 164, ANULON at 165, RAMULON at 166, MEMEN at 167, PRSTELEN at 168, HDRCRCEN at 169 and EGMNPRS at 170. These control outputs are used to enable and control inputs to data buffer 116. The key outputs of telemetry control and data buffer 121 are TELRST at 182, which resets up-link timing 118 and initiates the beginning of a frame, and a parallel data transfer at 184, which transfers the frame identifier ID, lower nibble LN and upper nibble UN to up-link timing 118. Up-link timing 118 receives the frame-initiating control signal TELRST at 182 and the parallel data transfer (ID, LN and UN) at 184. A primary function of up-link timing 118 is to key the transmission of 175 kilohertz RF energy at the proper times to indicate start of frame, frame synchronization, frame identifier, lower nibble and upper nibble.
Timing for the radio frequency carrier generation is provided by the 32.768 kilohertz crystal oscillator 179. Its output is provided to phase shift modulator 181 which varies the phase in response to the analog signal present on line 113. Because the 32.768 kilohertz signal is being phase modulated, the modulation pass band of phase shift modulator 181 is about thirty times that of the effective pass band of the analog transmission channel which is limited by the number of modulated carrier bursts (i.e. three) per two millisecond frame.
RF switch 185 is a double throw switch which switches between the phase shift modulated signal received from phase shift modulator 181 and the unmodulated signal received directly from crystal oscillator 179. The switch operates in response to the state of input line 183 which indicates whether or not a frame synchronizing pulse is to be transmitted. If yes, RF switch provides the unmodulated output of crystal oscillator 179 to the oscillator input of up-link timing 118 via line 186. This means that frame synchronizing bursts will have a constant phase and may therefore be utilized by the receiver as a phase standard to prevent long term phase drift.
At all times other than during the transmission of a frame synchronizing burst, RF switch 185 provides link timing 118 with a 32.768 kilohertz signal via line 186 which has been phase shift modulated with the selected analog data.
FIG. 11 is a block diagram of up-link timing 118. A frame timing generator 202 provides the desired timing for a frame according to clock input OSC. at 186, in a manner herein above explained. Thus, each frame is comprised of sixty-four basic clock cycles. The process is initiated by receipt of the freime-initiating control signal TELRST at 182, which enables up link when in a low state and disables up link when in a high state. The initial clock cycle of a frame contains a burst of RF energy which is keyed by control signal TELCLK at 188, which is also used to trigger the start of the data decoding by an up link word multiplexer 200.
After the proper four-bit quantity is selected (i.e., frame identifier ID first, lower nibble LN next, and upper nibble UN last) , a telemetry pulse timer 204 determines the appropriate timing for a burst to be provided to frame timing generator 202, and a corresponding burst of RF energy is keyed. Each of the four-bit quantities thus results in the keying of a burst of RF energy at the appropriate time within each frame.
FIG. 12 is a circuit diagram for the drive circuit for generating the RF carrier. A control signal TELCLK at 188 provides the timing information for keying the carrier. A non-overlap generator 220 functions as a delay device to save current by preventing output transistors 230 and 232 from conducting simultaneously. Every transition of control signal TELCLK at 188 causes one transition by non-overlap generator 220. Inverters 222, 224, 226 and 228 are scaled to provide efficient switching with sufficient drive to the gates of transistors 230 and 232. Transistors 230 and 232 drive the signal off of chip 105 to ANTDR at 234 to an antenna circuit. A tuned circuit of discreet components, capacitor 236 and coil 238, are located external to chip 105. Each transition thus causes this tuned circuit to resonate at 175 kilohertz, thereby generating one up link burst.
FIG. 13 is a block diagram of the receiver circuit 300 for demodulating both analog and digital channels. The radio frequency energy is received by antenna 302. For programmer 20 receiving data on up link 26 from implantable pulse generator 10, antenna 302 is the functional equivalent of the physical antenna 22 (see also Fig. 1). The radio frequency energy is amplified by rf amplifier 304 and provided to filter 306 to select the desired pass band (i.e. narrowly tuned about the 175 kilohertz carrier) . The amplified and filtered radio frequency data is provided by cable 314 to digital demodulator 318 for conversion to the base band digital data stream output on cable 332. Construction and operation of digital demodulator 318 is described in greater detail below with regard to byte encoded and bit encoded signals.
The amplified and filtered radio frequency energy is also provided to rf switch 310 which is a simple double throw switch. Whenever a digital synchronizing pulse is present at digital demodulator 318, line 320 cause rf switch 310 to route the radio frequency energy received on cable 314 to phase lock loop 312 via cable 334. In this way the constant phase synchronizing pulses are utilized by the receiver as a phase standard for the internal 175 kilohertz oscillator 308. The phase corrected internal standard is provided to phase shift demodulator 328 via cable 322.
At all times other than when digital demodulator 318 is receiving a frame synchronizing burst, line 320 causes rf switch 310 to switch the radio frequency energy received on cable 314 to integrator 324 via cable 316. After integration, the radio frequency stream sent to phase shift demodulator 328 via cable 326 appears to be a continuous 175 kilohertz carrier which has been phase shift modulated using a relatively low frequency (i.e. less than 200 hertz) analog base band signal. Phase shift demodulator 328 demodulates the 175 kilohertz signal received via cable 326 using the internal 175 kilohertz phase standard received via cable 322 in accordance with known techniques. The analog output on line 330 is typically an EGM or other relatively low frequency analog signal.
FIG. 14 is an overall block diagram of cyclic redundancy circuit, CRC 112. The importance of this circuit is that it provides forward error detection in a highly efficient manner using a minimum of redundant transmission band width. This becomes a significant feature for transcutaneous data links wherein total data transmission requirements are relatively large.
Forward error detection is provided by using the transmission data as coefficients of a polynomial. When this polynomial is divided (in modulo 2 arithmetic, i.e. no carry/borrow function) by a generator polynomial, the remainder is the cyclic redundancy code which is transmitted as 16 redundant bits appended to the end of the transmitted data block. The receiving device utilizes the received data, along with the cyclic redundancy code to generate a new polynomial. If division by the seme generator polynomial results in a zero remainder, the transmission is assumed to have been error free. In the preferred embodiment, hardware has been used to perform these functions although those of skill in the art can appreciate that software implementation is also feasible.
CRC 112 comprises four principle circuits. The up link controller 400 provides timing signals for generation and insertion of the cyclic redundancy codes. The parser 402 serializes the incoming transmission data. Control 404 sets up the calculation process, and calculator 406 produces the actual 16 bit cyclic redundancy code, as two eight bit words. Note that except for interpretation of the result, receipt and processing of the received cyclic redundancy codes is nearly identical and is accomplished with the same hardware elements. FIG. 15 is a detailed schematic diagram of the up link controller 400. The basic crystal timing standard is received via line 434. This signal times the output on line 420 of the up link shift signal held by flip flop 458, which clocks parser 402 as explained below. Flip flops 460, 462, 464, and 466 clear flip flop 458 after an appropriate delay. Flip flop 458 is clocked by the up link DMA reply (i.e. data is available on the data bus) received via line 436 and the header enable received via line 438. Resetting of these flip flops is enabled by the signal received via line 440.
After a suitable delay according to the signal received via line 442, the up link load command is place on line 422. The up link load and up link shift timing signals basically control timing of the operation of parser 402. Control of insertion of the cyclic redundancy code into the transmitted data stream is achieved using the CRC second byte signal on line 424, the enable CRC signal on line 426, the load CRC signal on line 428, the sum signal on line 430, and the telemetry interrupt signal on line 432 (see also Fig. 14) . These signals are generated as shown using DMS data synch signal on line 444, the zero signal on line 446, the memory enable signal on line 448, the header timing signal on line 450, the frame place signal on line 452, and the synch place signal on line 454 (see also Fig. 11) . FIG. 16 is a schematic diagram of parser 402. The eight transmission data bits are received via cable 414. Each is loaded into the corresponding one of the flip flops 484, 486, 488, 490, 492, 494, 496, and 498, respectively. Loading is enabled by the up link load signal received on line 500 (see also Fig. 15) with inverter 480 providing the corresponding opposite load signal for each flip flop.
After loading of an eight bit byte into the eight bit register, the data is clocked serially from one bit position to the next to serialize the data. Clocking of this shift function which serializes the data is provided by the up link shift signal received on line 502 and invertor 482. The resulting bit stream is output on line 416.
FIG. 17 is a schematic diagram of control circuit 404 which controls the CRC calculation process. The delayed clock signal received on line 528 is used to switch the CRC data in signal of line 526 alternately between the serialized up-link data received via line 416 and the down-link data received on line 540.
The outputs on lines 522 and 524 correspond to the CRC clock signal and the inverted CRC clock signal. This is produced by alternately switching between the up link shift signal received via line 536 and the synch clock signal received via line 538. This switching is accomplished at the same rate as the switching which produces the CRC data in signal. However, the latter is generally delayed by one more inverter level before being placed on line 526.
The CRC reset signal which is placed on line 520 is produced by the not output of flip flop 542 as enabled by the header enable, down-link signal or fourth delay of the crystal output. Flip flop 542 is reset by the fourth delay of the crystal output.
FIG. 18 is a detailed schematic diagram of CRC calculation circuitry 406. The outputs of this circuit are the 16 bit up-link cyclic redundancy code for transmitted data transferred via bus 408, and the corresponding down-link CRC zero check for received data, which is output on line 410.
The serialized data to be transmitted is presented to exclusive or 550 by line 526 (see also Fig. 17). This serialized bit stream is presented to flip flops 552, 554, 556, 558, 560, 562, 564, 566, 568, 570, 572, 574, 576, 578,
580, and 582. These devices provide a CRC shift register which is a single 16-bit shift register with mod 2 sum feedback. This effectively implements the modulo 2 division resulting in a 16 bit remainder. The CRC second byte signal is used to stage the two bytes of the 16-bit remainder, appending the CRC to the up-linked data stream.
The received data is clocked into the flip flops by the
CRC clock signal received via line 524. Each flip flop is reset by the CRC reset signal presented on line 520. The zero check signal presented on line 410 is produced by flip flop
584, if no error is present in the received data.
FIG. 19 is a pictorial diagram showing alternative approaches to the decoding of digital information. For purposes of clarity, only lower nibble range 44 (see also Fig. 2) is shown. However, those of skill in the art will readily appreciate that both lower and upper nibble may be similarly bit encoded. Pulse 602 represents a generic data burst (i.e. lower nibble) as received by the rf demodulator. If the time intervals of the received signal are considered to be 0 through 15 (see also Fig. 2) , pulse 602 is received at interval 7.
Demodulation process 608 converts rf pulse 602 into the hexadecimal number seven as represented by nibble 610. This demodulation process assumes that rf pulse 602 is data value encoded and is most convenient for transferring digital data quantities, which may consist of one or more ordered hexadecimal numbers. However, this format can also be utilized to express command/status discrete information, which can be further decoded in known fashion.
The second digital demodulation process is demodulation process 604. It converts pulse 602 directly into bit 606 of the 16-bit command/status word. This process assumes that rf burst 602 is bit encoded and is readily adaptable to the transfer of discrete, single bit values which are totally independent. This demodulation process can become even more conserving of the available bandwidth by placing additional rf pulses (i.e. in addition to pulse 602) within the same 16 time intervals, because the decoding process assumes that the 16 bits are completely independent. As explained above, the preferred mode of the present invention selects between demodulation processes 604 and 608 based upon the frame identifier signal.
FIG. 20 is a pictorial diagram similar to Fig. 19 showing the use of multiple rf bursts within the same lower nibble range in the bit encoded format. In addition to rf burst 602, lower nibble range 44 also contains bursts at intervals 1 and 14. Demodulation process 604 directly converts each of these three rf bursts into a corresponding one of the bits 605, 606, and 607. In this manner, lower nibble 44 can contain discrete binary information concerning 16 separate and independent variables. Upper nibble range 48 (see also Fig. 2) can also contain up to 16 variables. The result is that 32 discrete one-bit variables can be expressed in a single frame. As is shown in the diagram, demodulation process 608 cannot provide a unique result, because it assumes that only one rf burst will be present within lower nibble 4 (or upper nibble 48, not shown). In accordance with the above explanation, selection of the demodulation process is preferably made on the basis of the frame identifier signal.
FIG. 21 is a schematic diagram of a typical demodulation circuit for executing demodulation process 608. The demodulation process may also be accomplished in software in accordance with the description provided in Appendix A attached hereto. The filtered rf signal is received via line 314 (see also Fig. 13) . The pulse is detected by integrator 612 and supplied to oscillator 622 to synchronize its output. The detected pulse is also provided to multivibrator 616 and and-gate 614 which determines whether a given pulse is a fixed synchronizing pulse or a variable identifier or data pulse. This determination can be made, because the synchronizing pulses are completely periodic.
The frame synchronizing pulses are provided via line 636 to clear counter 634 and enable latch 660. The frame synchronizing pulse is also inverted by invertor 618 to enable and-gate 620 to determine the variable pulses (i.e. the pulses which are not synchronization pulses) . The variable pulses are thus present on line 640. Until the variable pulse disables and-gate 626 via invertor 624, the output of synchronized counter 622 is presented to four bit counter 634 via line 638. In this manner, counter 634 counts the time intervals until the variable pulse is present. This count is thus the value of the variable pulse.
Data flip-flop 628 distinguishes between the lower nibble and the upper nibble by being toggled by line 640. The synchronizing pulse on line 636 resets data flip-flop 628. And-gates 642, 644, 646, and 648 and and-gates 650, 652, 654, and 656 gate the lower and upper nibbles into latch 660, respectively, in response to enables from and-gates 630 and 632. The output of latch 660 is an eight bit, byte encoded, number on cable 332A. This can also be viewed as two ordered hexadecimal numbers.
FIG. 22 is a schematic diagram showing typical circuitry for demodulator process 604 (see also Figs. 19 and 20) . A complete software implementation for this process is also found in Appendix A. For this process, the synchronizing signals on line 636 are used to reset 16-bit shift register 666 and 16-bit latch 664. The remaining elements are as previously described. The decoding process is simplified because there is a direct one-for-one correspondence between the rf pulse positions and corresponding bits set in latch 664. This correspondence is achieved by shifting a bit through shift register 666 as controlled by the output of synchronized oscillator 622. Each bit position containing an rf burst is latched in 16-bit latch 664. The 16-bit encoded output of latch 664 is presented on cable 332B.
Table 2 below shows a typical bit encoded command/status format: TABLE 2
(Programmable Pacing Parameters)
Pacing Mode Mode XXXX XXXO Activity Signal Processor Off XXXX XXXI Activity Signal Processor On XXXX XXOX Pressure Signal Processor Off XXXX XXIX Pressure Signal Processor On XXXX xoxx R-Wave Inhibited Mode xxxx xixx R-Wave Triggered Mode xxxx oxxx Sense Amp Off
XXXX 1XXX Sense Amp On XXXO xxxx Pacing Output Disabled XXXI xxxx Pacing Output Enabled XXOX xxxx Hysteresis Disabled XXIX xxxx Hysteresis Enabled xoxx xxxx Auto Capture Disabled xixx xxxx Auto Capture Enabled oxxx xxxx Rate Response Off 1XXX xxxx Rate Response On Other examples of bit encoded command/status information is found in Appendix A, hereto attached. In the preferred mode, the frame identifier specifies a bit encoded format.
Having thus described the preferred embodiments in sufficient detail as to permit those of skill in the art to practice the present invention without undue experimentation, those of skill in the art will readily appreciate other useful embodiments within the scope of the claims hereto attached.

Claims

WHAT IS CLAIMED IS:
1. An apparatus for transferring digital data between two medical devices wherein one of said two medical devices is implanted comprising: (a) first encoding means within a first of said medical device for initially encoding a plurality of device parameters in a first numerical base, each of said encoded parameters comprising one or more bits;
(b) second encoding means within said first of said medical devices for further encoding said plurality of encoded parameters in a second, higher numerical base, said further encoded parameters having fewer bits than said initially encoded parameters;
(c) means coupled to said second encoding means for transferring said further encoded parameters to a second of said medical devices;
(d) means within said second of said medical devices for receiving said further encoded parameters;
(e) first means coupled to said receiving means for decoding said device parameters from said further encoded parameters.
2. An apparatus according to claim 1 wherein said first numerical base is binary.
3. An apparatus according to claim 1 or claim 2 wherein said second numerical base is hexadecimal.
4. An apparatus according to claim 1 or claim 2 or claim 3 wherein said second encoding means comprises means for encoding said plurality of parameters as a single bit in said second numerical base.
5. An apparatus according to claim 1 or claim 2 or claim 3 or claim 4, wherein said first said medical device further includes means for encoding initially encoding measured values in said second base, wherein said transferring means comprises means for transferring said encoded values and means for identifying the type of encoded information being transferred, and wherein said second device comprises means for decoding said measured values from said encoded values.
6. An apparatus according to claim 5 wherein said measured values comprise measured physiologic parameters.
7. An apparatus according to claim 5 wherein said measured values comprise measured device parameters.
8. An apparatus according to claim 1 or claim 2 or claim 3 or claim 4, wherein said first said medical device further includes means for initially encoding device parameters in said second base, wherein said transferring means comprises means for transferring said encoded parameters and means for identifying the type of encoded information being transferred, and wherein said second device comprises means for decoding said device parameters from said encoded parameters.
9. An apparatus according to claim 8 wherein said device parameters comprise measured device parameters.
10. An apparatus according to claim l or claim 2 or claim 3 or claim 4 wherein said device parameters comprise programmed device parameters.
PCT/US1993/012517 1993-01-29 1993-12-21 Medical device telemetry with bit/data value encoding WO1994016769A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU59588/94A AU5958894A (en) 1993-01-29 1993-12-21 Medical device telemetry with bit/data value encoding

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/010,921 US5354319A (en) 1990-01-22 1993-01-29 Telemetry system for an implantable medical device
US08/010,921 1993-01-29

Publications (1)

Publication Number Publication Date
WO1994016769A1 true WO1994016769A1 (en) 1994-08-04

Family

ID=21748039

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1993/012517 WO1994016769A1 (en) 1993-01-29 1993-12-21 Medical device telemetry with bit/data value encoding

Country Status (3)

Country Link
US (1) US5354319A (en)
AU (1) AU5958894A (en)
WO (1) WO1994016769A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996040366A1 (en) * 1995-06-07 1996-12-19 Intermedics, Inc. Apparatus and method for the control of an implantable device
WO1998017172A2 (en) * 1996-10-24 1998-04-30 Massachusetts Institute Of Technology Patient monitoring finger ring sensor
US6553535B1 (en) 1998-08-21 2003-04-22 Massachusetts Institute Of Technology Power-efficient communication protocol
US7376105B2 (en) 1998-08-21 2008-05-20 Massachusetts Institute Of Technology Source coding for interference reduction

Families Citing this family (173)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5394879A (en) 1993-03-19 1995-03-07 Gorman; Peter G. Biomedical response monitor-exercise equipment and technique using error correction
DE4329898A1 (en) * 1993-09-04 1995-04-06 Marcus Dr Besson Wireless medical diagnostic and monitoring device
US5620472A (en) * 1995-01-12 1997-04-15 Pacesetter, Inc. Apparatus and method for dynamically interpreting and displaying a real-time telemetry link
ZA963264B (en) * 1995-10-12 1996-11-04 Alcatel Altech Telecoms Propri Low rate telemetry channel
US5758652A (en) * 1995-10-19 1998-06-02 Nikolic; Serjan D. System and method to measure the condition of a patients heart
US5683432A (en) * 1996-01-11 1997-11-04 Medtronic, Inc. Adaptive, performance-optimizing communication system for communicating with an implanted medical device
US5766232A (en) * 1996-05-10 1998-06-16 Medtronic, Inc. Method and apparatus for altering the Q of an implantable medical device telemetry antenna
FR2749462B1 (en) * 1996-06-04 1998-07-24 Ela Medical Sa AUTONOMOUS DEVICE, IN PARTICULAR ACTIVE IMPLANTABLE MEDICAL DEVICE, AND ITS EXTERNAL PROGRAMMER WITH SYNCHRONOUS TRANSMISSION
FI100924B (en) 1996-10-11 1998-03-13 Polar Electro Oy Telemetric measurement method and measurement system
US5755737A (en) 1996-12-13 1998-05-26 Medtronic, Inc. Method and apparatus for diagnosis and treatment of arrhythmias
US5836975A (en) * 1996-12-19 1998-11-17 Medtronic, Inc. Method and apparatus for diagnosis and treatment of arrhythmias
US5957861A (en) * 1997-01-31 1999-09-28 Medtronic, Inc. Impedance monitor for discerning edema through evaluation of respiratory rate
US5876353A (en) 1997-01-31 1999-03-02 Medtronic, Inc. Impedance monitor for discerning edema through evaluation of respiratory rate
US5752977A (en) * 1997-04-15 1998-05-19 Medtronic, Inc. Efficient high data rate telemetry format for implanted medical device
US5873898A (en) 1997-04-29 1999-02-23 Medtronic, Inc. Microprocessor capture detection circuit and method
US5987356A (en) * 1997-06-05 1999-11-16 Medtronic, Inc. Method and apparatus for diagnosis and treatment of arrhythmias
US5861019A (en) * 1997-07-25 1999-01-19 Medtronic Inc. Implantable medical device microstrip telemetry antenna
US6947795B2 (en) * 2001-10-01 2005-09-20 Transoma Medical, Inc. Frame length modulation and pulse position modulation for telemetry of analog and digital data
US6022322A (en) 1998-02-06 2000-02-08 Intermedics Inc. Non-invasive cardiorespiratory monitor with synchronized bioimpedance sensing
US5978713A (en) * 1998-02-06 1999-11-02 Intermedics Inc. Implantable device with digital waveform telemetry
US6009350A (en) * 1998-02-06 1999-12-28 Medtronic, Inc. Implant device telemetry antenna
US6175752B1 (en) 1998-04-30 2001-01-16 Therasense, Inc. Analyte monitoring device and methods of use
US8465425B2 (en) 1998-04-30 2013-06-18 Abbott Diabetes Care Inc. Analyte monitoring device and methods of use
US8346337B2 (en) 1998-04-30 2013-01-01 Abbott Diabetes Care Inc. Analyte monitoring device and methods of use
US9066695B2 (en) 1998-04-30 2015-06-30 Abbott Diabetes Care Inc. Analyte monitoring device and methods of use
US6949816B2 (en) 2003-04-21 2005-09-27 Motorola, Inc. Semiconductor component having first surface area for electrically coupling to a semiconductor chip and second surface area for electrically coupling to a substrate, and method of manufacturing same
US8974386B2 (en) 1998-04-30 2015-03-10 Abbott Diabetes Care Inc. Analyte monitoring device and methods of use
US8480580B2 (en) 1998-04-30 2013-07-09 Abbott Diabetes Care Inc. Analyte monitoring device and methods of use
US8688188B2 (en) 1998-04-30 2014-04-01 Abbott Diabetes Care Inc. Analyte monitoring device and methods of use
US6266555B1 (en) 1998-05-07 2001-07-24 Medtronic, Inc. Single complex electrogram display having a sensing threshold for an implantable medical device
US6402689B1 (en) 1998-09-30 2002-06-11 Sicel Technologies, Inc. Methods, systems, and associated implantable devices for dynamic monitoring of physiological and biological properties of tumors
US6201993B1 (en) 1998-12-09 2001-03-13 Medtronic, Inc. Medical device telemetry receiver having improved noise discrimination
US6162238A (en) * 1999-02-24 2000-12-19 Aaron V. Kaplan Apparatus and methods for control of body lumens
US6714811B1 (en) 1999-03-05 2004-03-30 Medtronic, Inc. Method and apparatus for monitoring heart rate
US6508771B1 (en) 1999-03-05 2003-01-21 Medtronic, Inc. Method and apparatus for monitoring heart rate
US6311088B1 (en) 1999-04-13 2001-10-30 Medtronic, Inc. Dual-chamber pacemaker with optimized PVARP following event that may disrupt AV synchrony
US6167312A (en) * 1999-04-30 2000-12-26 Medtronic, Inc. Telemetry system for implantable medical devices
US6285909B1 (en) 1999-05-27 2001-09-04 Cardiac Pacemakers, Inc. Preserving patient specific data in implantable pulse generator systems
DE19930263A1 (en) * 1999-06-25 2000-12-28 Biotronik Mess & Therapieg Method and device for data transmission between an electromedical implant and an external device
US6512949B1 (en) 1999-07-12 2003-01-28 Medtronic, Inc. Implantable medical device for measuring time varying physiologic conditions especially edema and for responding thereto
US6820019B1 (en) 1999-07-31 2004-11-16 Medtronic, Inc. Device and method for determining and communicating the remaining life of a battery in an implantable neurological tissue stimulating device
US6687547B2 (en) 1999-09-14 2004-02-03 Medtronic, Inc. Method and apparatus for communicating with an implantable medical device with DTMF tones
US6263246B1 (en) 1999-09-14 2001-07-17 Medtronic, Inc. Method and apparatus for communications with an implantable device
US6456875B1 (en) 1999-10-12 2002-09-24 Medtronic, Inc. Cyclic redundancy calculation circuitry for use in medical devices and methods regarding same
US6644321B1 (en) * 1999-10-29 2003-11-11 Medtronic, Inc. Tactile feedback for indicating validity of communication link with an implantable medical device
US6317626B1 (en) 1999-11-03 2001-11-13 Medtronic, Inc. Method and apparatus for monitoring heart rate
US6752765B1 (en) 1999-12-01 2004-06-22 Medtronic, Inc. Method and apparatus for monitoring heart rate and abnormal respiration
US6650944B2 (en) * 2000-02-23 2003-11-18 Medtronic, Inc. Follow-up monitoring method and system for implantable medical devices
US6438407B1 (en) 2000-03-20 2002-08-20 Medtronic, Inc. Method and apparatus for monitoring physiologic parameters conjunction with a treatment
US6622050B2 (en) * 2000-03-31 2003-09-16 Medtronic, Inc. Variable encryption scheme for data transfer between medical devices and related data management systems
US6548826B2 (en) * 2000-04-25 2003-04-15 Andreas A. Fenner Apparatus for wafer-level burn-in and testing of integrated circuits
US6738670B1 (en) 2000-06-19 2004-05-18 Medtronic, Inc. Implantable medical device telemetry processor
US6687293B1 (en) 2000-06-23 2004-02-03 Microchip Technology Incorporated Method, system and apparatus for calibrating a pulse position modulation (PPM) decoder to a PPM signal
ATE441110T1 (en) 2000-11-09 2009-09-15 Sicel Technologies Inc IN-VIVO DETECTION OF BIOMOLECULE CONCENTRATIONS USING FLUORESCENCE MARKERS
FR2816828B1 (en) * 2000-11-23 2004-10-22 Richard Cancel DEVICE FOR THE REMOTE IMPLEMENTATION AND WITHOUT A MATERIAL LINK OF AN IMPLANT AND IMPLANT IMPLEMENTED BY THIS DEVICE
US6574510B2 (en) 2000-11-30 2003-06-03 Cardiac Pacemakers, Inc. Telemetry apparatus and method for an implantable medical device
US6650941B2 (en) 2000-12-22 2003-11-18 Medtronic, Inc. Implantable medical device programming wands having integral input device
US6560471B1 (en) 2001-01-02 2003-05-06 Therasense, Inc. Analyte monitoring device and methods of use
US7001359B2 (en) * 2001-03-16 2006-02-21 Medtronic, Inc. Implantable therapeutic substance infusion device with active longevity projection
US7041468B2 (en) 2001-04-02 2006-05-09 Therasense, Inc. Blood glucose tracking apparatus and methods
US6912420B2 (en) 2001-04-10 2005-06-28 Cardiac Pacemakers, Inc. Cardiac rhythm management system for hypotension
US7011814B2 (en) 2001-04-23 2006-03-14 Sicel Technologies, Inc. Systems, methods and devices for in vivo monitoring of a localized response via a radiolabeled analyte in a subject
US6477420B1 (en) 2001-04-27 2002-11-05 Medtronic, Inc Control of pacing rate in mode switching implantable medical devices
US6873870B2 (en) 2001-04-30 2005-03-29 Medtronic, Inc. Methods for adjusting cardiac detection criteria and implantable medical devices using same
US7933642B2 (en) 2001-07-17 2011-04-26 Rud Istvan Wireless ECG system
US20040127802A1 (en) * 2001-07-17 2004-07-01 Gmp Companies, Inc. Wireless ECG system
US6748271B2 (en) * 2001-07-27 2004-06-08 Cardiac Pacemakers, Inc. Method and system for treatment of neurocardiogenic syncope
US7191000B2 (en) 2001-07-31 2007-03-13 Cardiac Pacemakers, Inc. Cardiac rhythm management system for edema
US7047076B1 (en) 2001-08-03 2006-05-16 Cardiac Pacemakers, Inc. Inverted-F antenna configuration for an implantable medical device
US7225029B2 (en) 2001-10-26 2007-05-29 Pacesetter, Inc. Implantable cardiac therapy device with dual chamber can to isolate high-frequency circuitry
US6766200B2 (en) 2001-11-01 2004-07-20 Pacesetter, Inc. Magnetic coupling antennas for implantable medical devices
US6763269B2 (en) 2001-11-02 2004-07-13 Pacesetter, Inc. Frequency agile telemetry system for implantable medical device
US7557353B2 (en) 2001-11-30 2009-07-07 Sicel Technologies, Inc. Single-use external dosimeters for use in radiation therapies
US6788973B2 (en) 2002-04-02 2004-09-07 Medtronic, Inc. Apparatus and method to discriminate between telemetry downlink signals and noise in an implanted device
US20030204161A1 (en) * 2002-04-25 2003-10-30 Bozidar Ferek-Petric Implantable electroporation therapy device and method for using same
US6996437B2 (en) * 2002-04-25 2006-02-07 Medtronic, Inc. Ventricular safety pacing in biventricular pacing
US7263399B2 (en) * 2002-04-29 2007-08-28 Medtronic, Inc. Apparatus and methods for analysis of cardiac device stored episodes containing sensed signals and waveforms
US20040064166A1 (en) * 2002-09-30 2004-04-01 Thompson David L. Multi-mode programmer for medical device communication
US7209790B2 (en) * 2002-09-30 2007-04-24 Medtronic, Inc. Multi-mode programmer for medical device communication
US7226422B2 (en) 2002-10-09 2007-06-05 Cardiac Pacemakers, Inc. Detection of congestion from monitoring patient response to a recumbent position
US7986994B2 (en) 2002-12-04 2011-07-26 Medtronic, Inc. Method and apparatus for detecting change in intrathoracic electrical impedance
TWI235523B (en) * 2002-12-31 2005-07-01 Ind Tech Res Inst A radio transmitter and receiver of an implantable medical device
JP4607859B2 (en) 2003-02-19 2011-01-05 サイセル・テクノロジーズ,インコーポレイテッド In vivo fluorescent sensor, system and related methods operating in conjunction with a fluorescent analyte
EP1601413B1 (en) * 2003-02-21 2006-09-20 Medtronic, Inc. Implantable neurostimulator programming with battery longevity indication
US6901293B2 (en) * 2003-04-07 2005-05-31 Medtronic, Inc. System and method for monitoring power source longevity of an implantable medical device
US7369893B2 (en) 2004-12-01 2008-05-06 Medtronic, Inc. Method and apparatus for identifying lead-related conditions using prediction and detection criteria
US7167747B2 (en) * 2003-05-13 2007-01-23 Medtronic, Inc. Identification of oversensing using sinus R-wave template
US20040259270A1 (en) * 2003-06-19 2004-12-23 Wolf David E. System, device and method for exciting a sensor and detecting analyte
US7133718B2 (en) 2003-06-19 2006-11-07 Medtronic, Inc. Method and apparatus for temporarily varying a parameter in an implantable medical device
US8500713B2 (en) * 2003-10-29 2013-08-06 Medtronic, Inc. Implantable electroporation therapy device and method for using same
US7937149B2 (en) * 2003-12-03 2011-05-03 Medtronic, Inc. Method and apparatus for detecting change in physiologic parameters
US7181275B2 (en) * 2003-12-23 2007-02-20 Medtronic, Inc. Method and apparatus for actively determining a coupling interval corresponding to a cardiac vulnerable zone
EP1796784B1 (en) * 2004-07-20 2010-04-28 Medtronic, Inc. Switched power using telemetry in an implantable medical device
US7387610B2 (en) 2004-08-19 2008-06-17 Cardiac Pacemakers, Inc. Thoracic impedance detection with blood resistivity compensation
US20060064136A1 (en) * 2004-09-23 2006-03-23 Medtronic, Inc. Method and apparatus for facilitating patient alert in implantable medical devices
US7528094B2 (en) * 2004-10-25 2009-05-05 Medtronic, Inc. Method and apparatus for providing safe long-range telemetry with implantable medical devices
US7266409B2 (en) * 2004-12-01 2007-09-04 Medtronic, Inc. Method and apparatus for determining oversensing in a medical device
US7333855B2 (en) * 2004-12-01 2008-02-19 Medtronic, Inc. Method and apparatus for determining oversensing in a medical device
US7775966B2 (en) 2005-02-24 2010-08-17 Ethicon Endo-Surgery, Inc. Non-invasive pressure measurement in a fluid adjustable restrictive device
US7545272B2 (en) 2005-02-08 2009-06-09 Therasense, Inc. RF tag on test strips, test strip vials and boxes
US7699770B2 (en) 2005-02-24 2010-04-20 Ethicon Endo-Surgery, Inc. Device for non-invasive measurement of fluid pressure in an adjustable restriction device
US7927270B2 (en) 2005-02-24 2011-04-19 Ethicon Endo-Surgery, Inc. External mechanical pressure sensor for gastric band pressure measurements
US7775215B2 (en) 2005-02-24 2010-08-17 Ethicon Endo-Surgery, Inc. System and method for determining implanted device positioning and obtaining pressure data
US8016744B2 (en) 2005-02-24 2011-09-13 Ethicon Endo-Surgery, Inc. External pressure-based gastric band adjustment system and method
US8066629B2 (en) 2005-02-24 2011-11-29 Ethicon Endo-Surgery, Inc. Apparatus for adjustment and sensing of gastric band pressure
US7658196B2 (en) 2005-02-24 2010-02-09 Ethicon Endo-Surgery, Inc. System and method for determining implanted device orientation
US7603170B2 (en) 2005-04-26 2009-10-13 Cardiac Pacemakers, Inc. Calibration of impedance monitoring of respiratory volumes using thoracic D.C. impedance
US9089275B2 (en) 2005-05-11 2015-07-28 Cardiac Pacemakers, Inc. Sensitivity and specificity of pulmonary edema detection when using transthoracic impedance
US7907997B2 (en) 2005-05-11 2011-03-15 Cardiac Pacemakers, Inc. Enhancements to the detection of pulmonary edema when using transthoracic impedance
US20060293591A1 (en) * 2005-05-12 2006-12-28 Wahlstrand John D Implantable medical device with MRI and gradient field induced capture detection methods
US7340296B2 (en) 2005-05-18 2008-03-04 Cardiac Pacemakers, Inc. Detection of pleural effusion using transthoracic impedance
US20070073346A1 (en) * 2005-09-28 2007-03-29 Giorgio Corbucci Telemetry of combined endocavitary atrial and ventricular signals
US8391975B2 (en) * 2005-09-28 2013-03-05 Medtronic, Inc. Telemetry of combined endocavitary atrial and ventricular signals
US8442627B2 (en) * 2005-12-30 2013-05-14 Medtronic, Inc. Advanced thoracic fluid monitoring capability with impedance
US7720543B2 (en) * 2006-01-19 2010-05-18 Medtronic, Inc. System and method for telemetry with an implantable medical device
US8152710B2 (en) 2006-04-06 2012-04-10 Ethicon Endo-Surgery, Inc. Physiological parameter analysis for an implantable restriction device and a data logger
US8870742B2 (en) 2006-04-06 2014-10-28 Ethicon Endo-Surgery, Inc. GUI for an implantable restriction device and a data logger
WO2007143225A2 (en) 2006-06-07 2007-12-13 Abbott Diabetes Care, Inc. Analyte monitoring system and method
US8343049B2 (en) 2006-08-24 2013-01-01 Cardiac Pacemakers, Inc. Physiological response to posture change
US7818061B1 (en) 2006-10-13 2010-10-19 Advanced Bionics, Llc Systems and methods for detecting an error associated with an implantable device
US8033998B2 (en) * 2006-12-28 2011-10-11 Medtronic, Inc. Device and method for automatic threshold setting
US8052610B2 (en) * 2006-12-28 2011-11-08 Medtronic, Inc. Event registration for automatic threshold setting
EP2114515A1 (en) 2007-01-03 2009-11-11 Medtronic, Inc. Method and apparatus for reducing inappropriate detection of lead-related noise
US8000532B2 (en) * 2007-02-28 2011-08-16 Medtronic, Inc. Digital pen to capture data in ambulatory monitored patients
US8187161B2 (en) * 2007-08-31 2012-05-29 Proteus Biomedical, Inc. Self-referencing communication in implantable devices
US8352038B2 (en) * 2007-10-01 2013-01-08 Medtronic, Inc. Medical device function configuration post-manufacturing
US8187163B2 (en) 2007-12-10 2012-05-29 Ethicon Endo-Surgery, Inc. Methods for implanting a gastric restriction device
US8100870B2 (en) 2007-12-14 2012-01-24 Ethicon Endo-Surgery, Inc. Adjustable height gastric restriction devices and methods
US8142452B2 (en) 2007-12-27 2012-03-27 Ethicon Endo-Surgery, Inc. Controlling pressure in adjustable restriction devices
US8377079B2 (en) 2007-12-27 2013-02-19 Ethicon Endo-Surgery, Inc. Constant force mechanisms for regulating restriction devices
US8192350B2 (en) 2008-01-28 2012-06-05 Ethicon Endo-Surgery, Inc. Methods and devices for measuring impedance in a gastric restriction system
US8591395B2 (en) 2008-01-28 2013-11-26 Ethicon Endo-Surgery, Inc. Gastric restriction device data handling devices and methods
US8337389B2 (en) 2008-01-28 2012-12-25 Ethicon Endo-Surgery, Inc. Methods and devices for diagnosing performance of a gastric restriction system
US8221439B2 (en) 2008-02-07 2012-07-17 Ethicon Endo-Surgery, Inc. Powering implantable restriction systems using kinetic motion
US7844342B2 (en) 2008-02-07 2010-11-30 Ethicon Endo-Surgery, Inc. Powering implantable restriction systems using light
US8114345B2 (en) 2008-02-08 2012-02-14 Ethicon Endo-Surgery, Inc. System and method of sterilizing an implantable medical device
US8057492B2 (en) 2008-02-12 2011-11-15 Ethicon Endo-Surgery, Inc. Automatically adjusting band system with MEMS pump
US8591532B2 (en) 2008-02-12 2013-11-26 Ethicon Endo-Sugery, Inc. Automatically adjusting band system
US8034065B2 (en) 2008-02-26 2011-10-11 Ethicon Endo-Surgery, Inc. Controlling pressure in adjustable restriction devices
US8060204B2 (en) * 2008-02-28 2011-11-15 Cardiac Pacemakers, Inc. Low power digital design for deep submicron technology
US8233995B2 (en) 2008-03-06 2012-07-31 Ethicon Endo-Surgery, Inc. System and method of aligning an implantable antenna
US8187162B2 (en) 2008-03-06 2012-05-29 Ethicon Endo-Surgery, Inc. Reorientation port
US8823382B2 (en) * 2008-04-30 2014-09-02 Medtronic, Inc. System and method for monitoring a power source of an implantable medical device
US20090299421A1 (en) * 2008-06-02 2009-12-03 Medtronic, Inc. Evaluation of implantable medical device sensing integrity based on evoked signals
US9037240B2 (en) * 2008-06-02 2015-05-19 Medtronic, Inc. Electrode lead integrity reports
WO2009148425A1 (en) * 2008-06-02 2009-12-10 Medtronic, Inc. Impedance variability analysis to identify lead-related conditions
EP2320999A1 (en) * 2008-06-02 2011-05-18 Medtronic, Inc. Sensing integrity determination based on cardiovascular pressure
US8200322B2 (en) * 2008-06-02 2012-06-12 Medtronic, Inc. Electrogram storage for suspected non-physiological episodes
US7974690B2 (en) * 2008-06-30 2011-07-05 Medtronic, Inc. Lead integrity testing during suspected tachyarrhythmias
US9522277B2 (en) 2008-07-28 2016-12-20 Medtronic, Inc. Lead integrity testing triggered by sensed signal saturation
US9713701B2 (en) 2008-07-31 2017-07-25 Medtronic, Inc. Using multiple diagnostic parameters for predicting heart failure events
US8255046B2 (en) * 2008-07-31 2012-08-28 Medtronic, Inc. Detecting worsening heart failure based on impedance measurements
US7953488B2 (en) * 2008-07-31 2011-05-31 Medtronic, Inc. Pre-qualification of an alternate sensing configuration
US8078277B2 (en) 2008-10-29 2011-12-13 Medtronic, Inc. Identification and remediation of oversensed cardiac events using far-field electrograms
US10118042B2 (en) 2008-10-31 2018-11-06 Medtronic, Inc. Lead integrity testing triggered by sensed asystole
US8632473B2 (en) 2009-01-30 2014-01-21 Medtronic, Inc. Detecting worsening heart failure based on fluid accumulation with respiratory confirmation
US8344847B2 (en) 2009-07-09 2013-01-01 Medtronic Minimed, Inc. Coordination of control commands in a medical device system having at least one therapy delivery device and at least one wireless controller device
US8768481B2 (en) * 2009-08-28 2014-07-01 Boston Scientific Neuromodulation Corporation Methods to avoid frequency locking in a multi-channel neurostimulation system using a greatest common divisor rule
US8271072B2 (en) * 2009-10-30 2012-09-18 Medtronic, Inc. Detecting worsening heart failure
US8396543B2 (en) * 2010-01-28 2013-03-12 Medtronic, Inc. Storage of data for evaluation of lead integrity
US8458149B2 (en) * 2010-03-29 2013-06-04 Welch Allyn, Inc. Small footprint medical information transfer protocol stack
US9480844B2 (en) 2010-10-29 2016-11-01 Medtronic, Inc. Method and apparatus for reducing noise in a medical device
US8774909B2 (en) 2011-09-26 2014-07-08 Medtronic, Inc. Episode classifier algorithm
US8437840B2 (en) 2011-09-26 2013-05-07 Medtronic, Inc. Episode classifier algorithm
US9668668B2 (en) 2011-09-30 2017-06-06 Medtronic, Inc. Electrogram summary
US8744560B2 (en) 2011-09-30 2014-06-03 Medtronic, Inc. Electrogram summary
US8521281B2 (en) 2011-10-14 2013-08-27 Medtronic, Inc. Electrogram classification algorithm
US8886296B2 (en) 2011-10-14 2014-11-11 Medtronic, Inc. T-wave oversensing
US10736516B2 (en) 2013-11-21 2020-08-11 Medtronic, Inc. Method and apparatus for accurately determining heart rate variability and sympathetic reserve
US10952686B2 (en) 2016-08-02 2021-03-23 Medtronic, Inc. Mobile application to prompt physical action to measure physiologic response in implantable device
US11717186B2 (en) 2019-08-27 2023-08-08 Medtronic, Inc. Body stability measurement
EP3934187B1 (en) * 2020-06-30 2024-04-17 Stichting IMEC Nederland Event-driven transmission method and device
US11602313B2 (en) 2020-07-28 2023-03-14 Medtronic, Inc. Determining a fall risk responsive to detecting body position movements

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4550370A (en) * 1982-10-29 1985-10-29 Medtronic, Inc. Pacemaker programmer with telemetric functions
US4550337A (en) * 1983-04-07 1985-10-29 Rca Corporation Digital video transmission system
GB2237954A (en) * 1989-08-14 1991-05-15 In Car Systems Ltd Cellular telephones
WO1991010471A1 (en) * 1990-01-22 1991-07-25 Medtronic, Inc. Improved telemetry format

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4066086A (en) * 1975-06-05 1978-01-03 Medtronic, Inc. Programmable body stimulator
US4556063A (en) * 1980-10-07 1985-12-03 Medtronic, Inc. Telemetry system for a medical device
US4583090A (en) * 1981-10-16 1986-04-15 American Diversified Capital Corporation Data communication system
US4561443A (en) * 1983-03-08 1985-12-31 The Johns Hopkins University Coherent inductive communications link for biomedical applications
US4616705A (en) * 1984-10-05 1986-10-14 Shell Oil Company Mini-well temperature profiling process
US5127404A (en) * 1990-01-22 1992-07-07 Medtronic, Inc. Telemetry format for implanted medical device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4550370A (en) * 1982-10-29 1985-10-29 Medtronic, Inc. Pacemaker programmer with telemetric functions
US4550337A (en) * 1983-04-07 1985-10-29 Rca Corporation Digital video transmission system
GB2237954A (en) * 1989-08-14 1991-05-15 In Car Systems Ltd Cellular telephones
WO1991010471A1 (en) * 1990-01-22 1991-07-25 Medtronic, Inc. Improved telemetry format

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996040366A1 (en) * 1995-06-07 1996-12-19 Intermedics, Inc. Apparatus and method for the control of an implantable device
WO1998017172A2 (en) * 1996-10-24 1998-04-30 Massachusetts Institute Of Technology Patient monitoring finger ring sensor
WO1998017172A3 (en) * 1996-10-24 1998-07-23 Massachusetts Inst Technology Patient monitoring finger ring sensor
US6553535B1 (en) 1998-08-21 2003-04-22 Massachusetts Institute Of Technology Power-efficient communication protocol
US7376105B2 (en) 1998-08-21 2008-05-20 Massachusetts Institute Of Technology Source coding for interference reduction

Also Published As

Publication number Publication date
AU5958894A (en) 1994-08-15
US5354319A (en) 1994-10-11

Similar Documents

Publication Publication Date Title
US5354319A (en) Telemetry system for an implantable medical device
US5314450A (en) Dual channel telemetry for implanted medical device
US5752977A (en) Efficient high data rate telemetry format for implanted medical device
US5342408A (en) Telemetry system for an implantable cardiac device
US5016634A (en) Implantable medical device with means for telemetric transmission of data
JP3450329B2 (en) Pacemaker telemetry system
US5137022A (en) Synchronous telemetry system and method for an implantable medical device
US4550370A (en) Pacemaker programmer with telemetric functions
US8041432B2 (en) Implantable medical device with two or more telemetry systems
US8046080B2 (en) Telemetry duty cycle management system for an implantable medical device
EP1151759B1 (en) Digital communication system
JP2737885B2 (en) Implantable biological tissue stimulator
US5766232A (en) Method and apparatus for altering the Q of an implantable medical device telemetry antenna
US20040172104A1 (en) Implanted medical device/external medical instrument communication utilizing surface electrodes
US20030187484A1 (en) Apparatus and method to discriminate between telemetry downlink signals and noise in an implanted device
AU636962B2 (en) Improved telemetry format
US4203447A (en) Security maintenance for programmable pacer reprogramming
EP0001156B1 (en) Programmable, implantable body function control apparatus and method for reprogramming said apparatus
EP0107483B1 (en) Pacemaker programmer with telemetric functions
CA1117217A (en) Programmer for implanted pacer
WO2000010641A1 (en) Implanted medical device/external medical instrument communication utilizing surface electrodes

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CA JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA