`
`1111111111111111111111111111111111111111111111111111111111111
`US007542867B2
`
`c12) United States Patent
`Steger et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,542,867 B2
`*Jun. 2, 2009
`
`(54) MEASUREMENT SYSTEM WITH MODULAR
`MEASUREMENT MODULES THAT CONVEY
`INTERFACE INFORMATION
`
`6,073,160 A
`6,081,533 A
`6,219,153 B1
`
`6/2000 Grantham et al.
`6/2000 Laubach eta!.
`4/2001 Kawanabe eta!.
`
`(75)
`
`Inventors: Perry C. Steger, Georgetown, TX (US);
`Garritt W. Foote, Austin, TX (US);
`David L. Potter, Austin, TX (US);
`James J. Truchard, Austin, TX (US)
`
`(73) Assignee: National Instruments Corporation,
`Austin, TX (US)
`
`( *) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 1736 days.
`
`This patent is subject to a terminal dis(cid:173)
`claimer.
`
`(21) Appl. No.: 10/195,051
`
`(22)
`
`Filed:
`
`Jul. 12, 2002
`
`(65)
`
`Prior Publication Data
`
`US 2003/0074489 Al
`
`Apr. 17, 2003
`
`Related U.S. Application Data
`
`(60) Provisional application No. 60/312,254, filed on Aug.
`14, 2001.
`
`(51)
`
`Int. Cl.
`(2006.01)
`G06F 19100
`(52) U.S. Cl. ....................... 702/127; 702/188; 710/100;
`717/124; 717/149
`(58) Field of Classification Search ................. 702/127,
`702/188; 710/100; 717/124, 149
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,603,043 A
`
`211997 Taylor et a!.
`
`(Continued)
`
`OTHER PUBLICATIONS
`
`U.S. Appl. No. 111403,167, entitled "Adapting a plurality of mea(cid:173)
`surement cartridges using cartridge controllers", by Brian Keith
`Odom, Jeffrey J. Kellam, Rafael Castro, and Kyle Bryson, filed on
`Apr. 12, 2006.
`
`(Continued)
`
`Primary Examiner-Drew A Dunn
`Assistant Examiner-Bien X Vo
`(74) Attorney, Agent, or Firm-Meyertons Hood Kivlin
`Kowert & Goetze!, P.C.; Jeffrey C. Hood; MarkS. Williams
`
`(57)
`
`ABSTRACT
`
`System and method for measurement, DAQ, and control
`operations which uses small form-factor measurement mod(cid:173)
`ules or cartridges with a re-configurable carrier unit, sensors,
`and a computer system to provide modular, efficient, cost(cid:173)
`effective measurement solutions. The measurement module
`includes measurement circuitry, e.g., signal conditioner and/
`or signal conversion circuitry, and interface circuitry for com(cid:173)
`municating with the carrier unit. The module communicates
`interface information to the carrier unit, which informs the
`computer system how to program or configure a functional
`unit on the carrier unit to implement the communicated inter(cid:173)
`face, or sends the information directly to the computer sys(cid:173)
`tem. The computer system programs the carrier unit with the
`interface, and the programmed carrier unit and measurement
`module together function as a DAQ, measurement, and/or
`control device. The carrier unit may receive multiple car(cid:173)
`tridges, each having a respective interface protocol, where the
`carrier unit is configurable to support the respective protocols
`sequentially and/or in parallel.
`
`100 Claims, 48 Drawing Sheets
`
`Measurement Device
`107
`
`Computer
`System
`102
`
`Apple 1065
`U.S. Pat. 8,504,746
`
`
`
`US 7,542,867 B2
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`6,219,628 B1
`6,584,601 B1
`6,823,283 B2
`7,165,005 B2
`2005/0137653 A1
`2006/0010199 A1
`
`4/2001 Kodosky eta!.
`6/2003 Kodosky eta!.
`1112004 Steger eta!.
`112007 Steger eta!.
`6/2005 Friedman eta!.
`112006 Brailean eta!.
`
`2006/0184335 A1
`2006/0190209 A1
`
`8/2006 Odom
`8/2006 Odom
`
`OTHER PUBLICATIONS
`
`U.S. Appl. No. 111684,749, entitled "Generating a data stream from
`cartridge controllers using a plurality of measurement cartridges", by
`Brian Keith Odom, Jeffrey J. Kellam, Rafael Castro, and Kyle
`Bryson, filed on Mar. 12, 2007.
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 1 of 48
`
`US 7,542,867 B2
`
`c========~ []
`
`.
`(!)
`..._
`LL
`
`.....
`ct(cid:173)
`IDo E..-(cid:173)
`ID
`'-
`::J
`(/)
`ro
`Q)
`~
`
`'-
`
`~N c...(cid:173)
`
`ID..--
`(/)
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 2 of 48
`
`US 7,542,867 B2
`
`L-
`.....
`(])
`::I
`0.
`EN
`00
`0...-(cid:173)
`L-
`(])
`2:
`(])
`(/)
`
`.
`
`(!) --u...
`
`(])
`
`(])
`
`u ·:;
`0 .....
`ci'-(cid:173)
`IDo E-r-
`~
`::I en
`ro
`(])
`~
`
`
`
`U.S. Patent
`U.S. Patent
`
`Jun. 2, 2009
`Jun.2,2009
`
`004f03teehS
`Sheet 3 of 48
`
`US 7,542,867 B2
`US 7,542,867 B2
`
`E
`Q)
`......
`(/) >-
`(f) Nl
`'-o
`2~
`:::s
`c..
`E
`0 u
`
`c
`0 ·w E
`-~ :::s """I
`E:.Co
`(f)Q)~
`C;:2
`ro ,_
`I-
`
`,_
`-~01
`,_ ~
`ro~
`u
`
`Em_.m>m_mSqEooco_wm_.EmcE.rEmEw5mmm_>_
`
`
`
`
`IIIam:53__w:o_uoC3n_wow
`
`wow:.=.:U®_>_9285.
`
`
`c
`:::>
`ro col co
`.Q ~
`.......
`u
`c
`:::s
`LL
`
`II
`
`9:
`
`......
`c
`Q) E «>
`:::s CX)I
`Q)
`'-"CO
`::sa~
`~::2
`Q)
`::2
`
`HBwcom
`
`
`
`CPU
`160
`
`I
`
`\
`
`l
`Video
`180
`
`I
`Hard Drive
`182
`
`Host Bus 162
`
`Bus Controller
`168
`
`Expansion Bus 170
`
`I
`Network
`Controller
`184
`
`Main Memory
`166
`
`I
`Memory
`Controller
`164
`I
`
`~
`
`1
`USB Controller
`186
`l
`Carrier
`110
`1
`Measurement
`Module
`108
`1
`Sensor
`112
`
`I
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`rFJ =(cid:173)
`.....
`
`('D
`('D
`
`.j;o.
`
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`l
`
`CPU
`160
`I
`
`Host Bus 162
`
`Bus Controller
`168
`
`Expansion Bus 170
`
`I
`Hard Drive
`182
`
`\
`
`I
`Video
`180
`
`l
`
`l Main Memory
`
`166
`I
`Memory
`Controller
`164
`I
`
`I
`Network
`Controller
`184
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`\
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`Ul
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`CPU
`160
`T
`
`I
`
`\
`
`l
`
`Host Bus 162
`
`Main Memory
`166
`I
`Memory
`Controller
`164
`I
`
`l
`
`\
`
`Bus Controller
`168
`
`Expansion Bus 170
`
`I
`Video
`180
`
`I
`Hard Drive
`182
`
`I
`Network
`Controller
`184
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2"
`:=
`J'J
`N
`0
`0
`\0
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`0\
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`"'--...1 u.
`~
`"'N
`00
`0'1
`
`-.....1 = N
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 7 of 48
`
`US 7,542,867 B2
`
`-(£)
`c.....,....
`C/)C")
`
`~
`
`,
`
`~col
`<.9o
`0....(")
`LL
`
`(/)
`0
`
`~ I Q w "-1
`OC">
`<(
`0
`
`•lr
`
`u -q-1 oo
`<(C">
`
`-
`
`...._
`<!)
`-
`c:
`m o
`C:-.;::; N
`0)"- 0
`·- ""0 (")
`1
`(/) c:
`0 u
`
`~ l.
`
`0>-
`.Q::::::~o
`ro a...-
`CCC'?
`<(-
`
`.
`
`(!) -lL
`
`
`
`108
`
`Cartridge
`Housing
`309
`
`108
`
`Signal Input Terminals
`301
`
`Signal
`Conditioning
`302
`
`AID
`304
`
`Signal Input Terminals
`301
`
`Integrated
`Conditioning
`and Isolation
`306
`
`Isolation
`305
`
`RIO
`Interface
`303
`
`FIG. SA
`
`FIG. 58
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`J'J
`N
`0
`0
`\0
`
`rFJ =(cid:173)
`.....
`
`('D
`('D
`
`QO
`
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`"'--...1 u.
`~ J..J
`00
`0'1
`
`-.....1 = N
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 9 of 48
`
`US 7,542,867 B2
`
`-co
`
`D....,......
`(/)("')
`
`--------------------------------------------------------------------
`
`DDODDDDDODDDDDDO
`DDDDD
`
`------------------------------L-------------------------------------
`
`.. ~
`c
`::>
`ro col
`.Q ~ -
`0 c
`::l u...
`
`D
`D
`
`E
`(1)
`......
`1 / )v >-o
`{/)("')
`0
`0
`<(
`
`c
`C'\1
`I
`
`(.)
`l(")
`
`- ------------------------------~-------------------------------------
`
`1
`
`l._______.l .____ I __.I . . .___ I ____.II'---______.I
`
`D D D D 0 D D 0 0 D
`
`-
`
`0000000000
`
`f--
`
`><
`::>
`~
`
`-ciC'\1
`cO
`o("')
`0
`.Ql
`C/)
`
`1/)
`(ij
`c
`
`E Q)
`1-..(cid:173)
`-o
`5.("')
`c
`ro
`c
`.Ql
`C/)
`
`--~
`
`
`
`SPI
`
`•
`•
`•
`
`Analog Input
`108C
`
`Analog Output
`1080
`
`Digital I/O
`108E
`
`Carrier
`110
`
`FIG. 6
`
`Pass-through SPI+
`breakout/cable to FPGA board
`Board bus (PXI, PC-104, etc.)
`Bluebus/FieldPoint adapter
`Network adapter
`Ethernet
`USB
`CAN
`RS-232/485
`Wireless adapter
`802.11 B
`Bluetooth
`Handheld/PDA adapter
`Springboard, cradle, etc.
`Smart sensor module
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`('D
`('D
`
`rFJ =(cid:173)
`......
`.....
`0
`0 ......
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 11 of 48
`
`US 7,542,867 B2
`
`Q)
`
`Q)
`
`0 ·s:;
`0 .....
`
`ci"(cid:173)
`IDo
`E""""
`~
`::J
`C/) m
`Q)
`:2:
`
`L...
`Q)
`·c
`L... m
`0<(
`Q)O
`Ol T""
`"'0 T""
`·c
`t:::: m
`0
`
`ODDDDDDODDDDDD
`DDDDD
`
`DoD
`
`c
`N
`l
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 12 of 48
`
`US 7,542,867 B2
`
`Q) u
`> Q)
`0
`
`.
`
`~ --u..
`
`oooooooooooooo
`
`
`
`U.S. Patent
`U.S. Patent
`
`Jun.2,2009
`Jun. 2, 2009
`
`Sheet 13 of 48
`Sheet 13 of 48
`
`US 7,542,867 B2
`US 7,542,867 B2
`
`en
`Q)
`·;:::::::
`Q)
`UJ
`0::::.
`...__
`$2 __.
`::::1
`0
`..:.::
`ro
`._
`<J.)
`..0
`
`mozomm5..Seams¢_QE_m
`
`
`
`
`
`(].) u
`E
`U5
`
`mo:
`
`C>
`
`N ,.._
`
`co
`C>
`
`0 -0::::
`
`£
`-~
`""0
`L-ro
`0
`.D.
`(/)
`Q)
`·;:::::::
`Q)
`UJ
`0::::
`
`co
`C>
`C")
`
`On.03.
`.
`(!) -.. u...
`
`co
`C>
`..-
`
`000
`
`0
`
`N
`0 ,.._
`
`8GE
`
`0
`0:::
`
`...c -"§:
`
`-~
`(/)
`(/) ro
`..c
`(.)
`
`£5,mammcomco_m-ucfim
`
`
`
`
`
`Q)
`c
`0 -ro
`
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 14 of 48
`
`US 7,542,867 B2
`
`Computer System r D~~J ~
`102 ~ =
`j /J[;.
`
`"'
`
`bl
`
`D
`:\0\
`
`~
`
`308E
`
`,
`,
`'
`'
`
`I
`
`I
`-t
`I
`I
`I
`I
`
`' 3088
`
`I
`I
`I
`I
`I
`
`'
`
`I
`
`I
`I
`
`'
`'
`' 3080
`'
`'
`'
`'
`'
`'
`'
`'
`' 308C
`'
`'
`'
`'
`'
`'
`
`~,
`
`FP
`GA
`RIO
`3
`1100
`08 ' " "
`~-----------~-----------~------------
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`t-
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`~-----------~-----------~------------
`
`308F
`
`308A
`
`Cartridge
`Controllers
`508
`
`508A 5088 508C 5080 508E 508F
`
`Cartridge
`108A
`
`Cartridge
`1088
`
`Cartridge
`108C
`
`FIG. BA
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 15 of 48
`
`US 7,542,867 B2
`
`L
`
`Com puter System r 0] i\
`
`102
`
`c:::J
`L
`~
`,DC.
`
`,o
`~\
`
`FPGA
`
`308 "" ~
`
`I
`
`308F
`
`308E
`
`I
`I
`
`I
`
`~
`
`RIO
`1100
`-----------l-----------1------------
`I
`' 3080
`I
`I '
`'
`I
`I
`'
`'
`'
`'
`' I '
`' 3088
`308A
`308C
`' ' I
`~-----------1 ___________ 1 ____________
`•
`Shared Interface
`508
`
`Cartridge
`108A
`
`Cartridge
`1088
`
`Cartridge
`108C
`
`FIG. 88
`
`
`
`Real Time Controller
`550
`
`•
`
`RIO FPGA
`308
`
`CPU Interface
`510
`
`!
`
`Cartridge Controller
`508A
`~ I Cartridge Controller
`5088
`
`Cartridge Controller
`508C
`
`~ 514
`
`308F
`
`308E
`
`3080
`
`~-r ·r-
`
`308A
`
`3088
`
`308C
`
`F-L
`
`1/0 Interfaces
`512
`
`Bus Interface/
`
`FIG. 9
`
`Cartridge
`108A
`
`I
`
`I
`
`Cartridge J
`1088
`
`Cartridge I
`
`108C
`
`I
`
`AOCs
`507
`
`I
`DACs I
`
`509
`
`e •
`
`00
`•
`~
`~
`~
`
`~ = ~
`
`~ = :=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`('D
`
`rFJ =-('D
`.....
`....
`0\
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l
`u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`CPU Interface
`con fig
`status
`interrupt
`DMA
`510A
`
`~
`
`Cartridge Controller Interface
`508
`
`Address
`525
`
`Module Detection
`524
`
`/
`
`Output Command Queue
`531
`
`Output Data Queue
`532
`
`-..
`
`"Y
`
`Input Data Queue
`534
`
`.....
`,
`
`r
`
`"-
`{
`
`r----
`
`f - -
`
`Flow Control
`526
`
`I
`
`525
`
`(
`
`~
`
`r1
`-.I
`
`~ IDSelect
`523
`
`SPI+
`
`r. 316
`
`"" Cartridge
`-v
`
`1DSA
`
`CLK,
`SPI Rate &
`Serializer 1- MISO, --1
`MOSI r+l
`527
`-
`529
`-
`I
`
`J~ ~
`
`' - -
`
`Pin
`Multiplexing
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`....
`-....l
`0 .....
`
`.j;o.
`QO
`
`<
`
`<
`
`I
`
`" DIO
`
`522
`
`,/
`
`Timerrrrigger
`528
`
`r
`
`.......__
`
`...
`
`FIG. 10A
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 18 of 48
`
`US 7,542,867 B2
`
`Configured SPI Rate
`
`X
`
`07
`
`06
`
`05
`
`04
`
`03
`
`02
`
`01
`
`DO
`
`X I
`
`1002l
`Chip Select
`
`SPI Clock
`1004 _)
`
`MISO/MOSI
`1006 J
`
`FIG. 108
`
`FIG. 10C
`
`1010
`
`sw
`Arm
`
`One Master
`Clock Period
`
`
`
`Measurement Module
`108
`
`EEPROM (EDS)
`307
`
`Signal
`110
`310
`
`r-'-
`
`,.....----, ,__.., ~
`
`L......-r--J L..._,.......J
`
`[.....-
`
`I
`I
`I
`
`RIO
`1100
`
`FPGA
`308
`
`I
`I
`I
`I
`!
`
`i
`I
`I
`I
`I
`I
`I
`I
`
`Products/
`Platforms
`720
`
`• API
`722
`
`Micro- H NIC
`
`726
`
`Controller
`724
`
`•
`rl
`
`1
`Signal Conditioner, ADC
`MUX
`304
`302
`
`Connectors
`301
`
`Isolation
`305
`
`Registers
`712
`
`FIG. 11A
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`~ = :=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`Network
`.. 104
`
`('D
`
`rFJ =-('D
`.....
`....
`\0
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`Sig Cond
`
`~
`
`Data Conv.
`l;oc-.
`-
`Signal
`ADC
`Connectivity ,_ Conditioning ~
`-
`i 108A
`I
`.J
`301A
`302A
`-
`.. ---1
`~---------------
`-
`I
`Signal ~
`l
`j
`-
`Connectivity f- CondOioning ~
`l ' Timing Engi~e
`~: 1088
`3018
`3028
`l____ (Timing, Triggering,
`i -~
`Scanning)
`t~-------·------ -··-------
`!
`1104
`
`Timing/Triggering
`etc.
`
`I
`' '
`
`Digital Data
`Back- End
`1102 ' - ,
`
`'
`
`Processing/
`Logic
`
`Application
`(Supervisory)
`
`~
`Driver
`1108
`
`r--
`'
`r--1 Control
`Logic
`EU Scaling
`Alarms
`1110
`
`:
`
`<1==t> Analysis
`DSP
`Display
`Reporting
`Monitoring
`1120
`
`J
`
`1140
`
`lliQ
`
`Lab VIEW
`1180
`
`FIG. 118
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`N
`0
`0
`\0
`
`~
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`N
`0
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`r
`
`-
`
`~
`
`Connectivity
`301C
`
`Signal
`I
`~ conditioning
`302C
`
`J
`
`108C
`
`Measurement Module
`1160
`
`counter!Tim~rs
`1106 i - .
`1130
`
`/
`RIO
`1170 ' '
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 21 of 48
`
`US 7,542,867 B2
`
`<1>
`0 m
`'t:o
`2...-(cid:173)
`.f:CO
`>< a...
`
`~I m
`
`()(Q
`.... a
`<1)...(cid:173)
`._
`·~ "f"'""'
`m
`()
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 22 of 48
`
`US 7,542,867 B2
`
`PDA
`1028
`
`"c . arner
`
`110C
`
`Measurement Module
`108G
`
`FIG. 128
`
`
`
`RIO
`1100
`
`Digital I/O
`820
`
`Breakout Backplane
`804
`
`Addressable Backplane
`806
`
`...
`
`External,
`Synchronized,
`Conditioned 1/0
`850
`
`............
`
`Expandable,
`Conditioned 1/0
`860
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`N
`0
`0
`\0
`
`~
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`N
`(.H
`0 .....
`
`.j;o.
`QO
`
`/
`Measurement Module
`(MicroDAQ)
`108H
`
`Measurement Module
`(MicroDAQ)
`108H
`
`Addressable Backplane
`806A
`
`---
`
`""(;;:D
`
`FIG. 12C
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`~ .
`
`~
`
`Local 1/0 (Est. platforms)
`-Modular
`-Integrated Signal Conditioning
`- Interface to PnP Sensors
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`~ '
`
`~...,.~
`
`"'-,
`-
`~· . ____ , __
`RIO
`1100
`
`USB/Ethernet
`908
`
`1/0 and Signal Conditioning for RIO
`-Modular
`- Signal Conditioning
`- Interface to PnP Sensors
`
`New USB/Ethernet Devices
`- Low-power, Low-cost
`- "Good" Class Waveform DAQ
`- Smaller Size
`- Modular Measurements
`
`Networked
`Measurement
`Nodes
`910
`
`~
`~~ il,;,~~
`
`,\g,
`
`Highly-Distributed
`- Low-risk Deployment on Emerging Networks
`- Low-rist Low-cost
`- Smaller Size
`- Integrated Signal Conditioning
`
`FIG. 12D
`
`2'
`:=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`N
`.j;o.
`
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`Base
`Platforms
`1002
`PXI
`902A
`
`PCI
`9028
`
`DAQPads (USB, 1394)
`1008
`
`FieldPoint
`904
`
`Small Networked
`Measurement Nodes
`(CAN, Ethernet, Wireless,
`etc.)
`910
`
`PDA/Handheld
`1028
`
`',
`....
`',,
`"~
`... ,
`',,,
`"
`
`\
`
`\
`
`'
`
`' ' ' ' \
`' ' ' ' ' ' ' ' '
`
`\,
`
`- . \ -------,\
`
`DAQ
`Architectures/
`Engines
`1004
`
`E Series
`1010
`
`Signal
`Conditioning
`1006
`
`SCXI
`1020
`
`sec
`1022
`
`58
`1024
`
`FieldPoint/BiueBus
`1012
`
`RIO
`1100
`
`MicroDAQ Measurement
`Modules
`108
`
`MicroDAQ Measurement Modules
`108
`
`FIG. 13
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`N
`0
`0
`\0
`
`~
`
`('D
`('D
`
`rFJ =(cid:173)
`......
`N
`Ul
`0 ......
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`\
`
`\
`\
`
`\
`
`\
`
`\
`\
`
`\
`'t
`
`\
`
`\
`
`\
`
`\
`\
`\ \
`\ \
`\ \
`'
`'
`'
`' \
`' \
`',
`\
`',,
`\ \\
`' \
`'
`'
`'...
`' \
`\
`' \
`\
`'
`"\. \\,
`\
`""',, \\~\
`' ',,
`', \\\
`... ,,~
`'"•
`
`\
`\
`
`\,
`\.
`\
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 26 of 48
`
`US 7,542,867 B2
`
`Couple Measurement Module to
`Carrier Unit
`1402
`
`lr
`
`Couple Carrier Unit to
`Computer System
`1404
`
`,,
`
`Measurement Module
`Communicates Interface
`Information to Carrier Unit
`1406
`
`n
`
`Carrier Unit Communicates
`Interface Information to
`Computer System
`1408
`
`,lr
`
`Computer System Programs
`Functional Unit on Carrier Unit
`to Implement Interface
`1410
`
`FIG. 14
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 27 of 48
`
`US 7,542,867 B2
`
`Create Graphical Program
`Implementing a Measurement
`Function on a Computer
`System
`1502
`
`,,
`
`Deploy Graphical Program on
`Functional Unit of Carrier Unit
`1504
`
`,,
`
`Execute Deployed Graphical
`Program to Perform
`Measurement Function
`1506
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 28 of 48
`
`US 7,542,867 B2
`
`Acquire Signal
`1602
`
`Measurement Module Performs
`Signal Conditioning and/or
`Signal Conversion on Acquired
`Signal
`1604
`
`Measurement Module Provides
`Data to Carrier Unit According
`to Interface Protocol
`1606
`
`Functional Unit on Carrier
`Performs Measurement
`Function
`1608
`
`Carrier Unit Provides Data to
`Computer System
`1610
`
`dr
`
`Computer System Performs
`Measurement Function
`1612
`
`FIG. 16
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 29 of 48
`
`US 7,542,867 B2
`
`create measurement module
`1702 - -
`
`create program(s) implementing
`MMIP for the module
`1704 - -
`
`access MMIP server
`1706 - -
`
`register new module;
`optionally provide icon
`1710 - -
`,,
`
`provide the program(s) for
`storage on the server
`1712 - -
`
`FIG. 17
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 30 of 48
`
`US 7,542,867 B2
`
`user installs measurement
`module
`1802
`
`module provides 10 to the
`carrier
`1804
`
`access MMIP server based on
`ID of module
`1806
`
`server downloads program
`(to carrier or client computer)
`1810
`
`,,
`
`configure carrier with program
`1812
`
`FIG. 18
`
`
`
`/ J1:02r----- / I19t04r-----
`- - ,
`I - - ,
`I
`( ___ )
`I
`~---)
`I Communications I "~
`v I
`..,.
`1-
`Communication
`1 Mechanism
`I DAQ Personality I
`I
`I
`I
`I
`1905
`Layer
`1903
`I
`-
`I
`I
`I
`I
`I
`L_____
`L ____ _
`
`Specific
`DAQ
`Interface
`
`Serial
`Communication
`Block
`1907
`
`Standard
`Measurement
`System
`Interface
`
`Part of Measurement System definition
`Independent of Measurement System definition
`
`FIG. 19
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`
`~
`
`Module
`Interface
`
`Measurement
`Module
`108
`
`N
`0
`0
`\0
`
`('D
`('D
`
`(.H
`
`rFJ =(cid:173)
`.....
`....
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`U.S. Patent
`
`Jun. 2, 2009
`
`Sheet 32 of 48
`
`US 7,542,867 B2
`
`1/0 and Flow
`Control Lines
`2010
`
`Configuration
`Registers
`2020
`
`' I ~(32) -7 Data/Status
`
`I~ Strobe
`1-E- Trigger
`I~ Done
`I~ Ready
`I
`I ~(3) Channel
`I ~ ( 1 to x) Method Select lines
`I~Run
`I
`'~ Config. Register address lines
`I ~(8) -:t Config. register data
`I~ Read
`I~ Write
`I
`I~ Trigger out
`I ~-7 Oversample Clock
`
`Timing Signals
`2030
`Detectio-n- - - -
`I -7 Cartridge Present
`2040
`-~~I
`
`1
`
`FIG. 20
`
`
`
`Signal name
`2101 __.-Run
`2102 __.-Channel
`2103 __.-Ready
`2104 __...-Trigger
`2105 __...-Done
`2106 __...-Strobe
`2107 --Data
`2108 __...-Status
`
`---Don't Care----------------------
`-----~-----------------
`
`1
`
`-----------------------~------1
`---Don't Care
`---Don't Care
`---Don't Care
`
`... Start Method
`.t. Setup done, ready for trigger
`.. Trigger initialization
`.t. Initialization done
`.t. End l'-lethod
`
`FIG. 21
`
`Signal name
`2101 ----Run
`2102 __...-Channel
`2103 ___..-Ready
`2104---- Trigger
`2105"---- Done
`2106 __.-Strobe
`2107---- Data
`2108---- Status
`
`---Don't Care----------------------
`
`1
`~-~---------------
`
`---Don't Care
`---Do-'l't Care
`---Don't Care
`
`.t. S-cart Method
`.t. Setup done, ready for trigger
`.t. Trigger application of new configuration
`-'New configuration applied
`... End Method
`
`FIG. 22
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`~ = :=
`
`~
`
`N
`N
`0
`0
`\0
`
`rFJ =(cid:173)
`('D a
`
`(.H
`(.H
`
`0 .....
`
`.j;o.
`QO
`
`d r.r;_
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`---< Valid
`
`Signal name
`2161 _-Run
`2102----- Channel
`2103 _-Ready
`2104----- Trigger
`2105----- Done
`2106 _-Strobe
`2107----- Data
`2108 --Status
`
`1,--------
`
`1
`--~====I
`---Don't Care -----------------------------------------------------
`-------------------<
`valid
`>--<
`valid
`>--<
`valid >-----
`valid >-----
`-------------------<
`valid
`>--<
`valid
`>--<
`• Start Method
`• Setup done, ready for trigger
`• Trigger conversion
`• Conversion done, data/status valid
`• Ready for next ~rigger
`• Trigger next conversion
`• Conversion done
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`N
`0
`0
`\0
`
`~
`
`FIG. 23
`
`• End
`
`Signal name
`2101 -----Run
`Ch
`102-----
`annel
`2
`2103 __.Ready
`
`---<ch " "
`a >----<ch "b">-----
`
`"c">--------<ch "d">-----------
`-------~---~~-----
`---<ch
`
`2104 -----Trigger
`2105----- Done
`2106----- Strobe
`2107--- Data
`2108----- Status
`
`---Don't Care
`-------------------< 'a' valid >--< 'b' valid >--< 'c' valid >----
`-------------------< 'a' valid >--< 'b' valid >--< 'c' valid >----
`• Start f-1ethod, channel "a" is the first to be sampled
`• Setup do~e, ready for trigger
`• Trigger conversion on channel "a", setup channel
`• Conversion done, data/status valid for "a"
`• Ready to trigger "b"
`• Trigger conversion on "b", "c" is
`• Conversion done for "b"
`
`... End
`
`FIG. 24
`
`rFJ =(cid:173)
`.....
`
`('D
`('D
`
`(.H
`.j;o.
`
`"b"
`
`next
`
`0 .....
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`Signal name
`2101 ___.-Run
`2102---- Channel
`2103 --Ready
`2104---- Trigger
`2105 --Done
`2106-- Strobe
`2107---- Data
`2108 ___.-Status
`
`--------<ch "a">---<ch "b">---<ch "a">---<ch "b">----------
`__ 1--1 ____ --~------ - 1 ______ 1-1 _____ _
`1 _________________ 1-1 ___________________ _
`I___
`1 ___ 1
`1 ___ 1--
`1 __________________ 1-1 _____________ _
`-------------<a valid>--<b valid>--<a valid>--<b valid>----
`-------------<a valid>--<b valid>--<a valid>--<b valid>---(cid:173)
`• Start Method
`• Setup done, ready for trigger
`• Trigger sampling of all channels, setup "a" to read first
`•Conversion done, data/status valid for "a"
`• Ready to read data for "b"
`• Conversion done, data/status valid for "b"
`• Trigger next sample
`• End
`
`FIG. 25
`
`Signal name
`2101 --Run
`2102 --Channel Not Used
`2103 --Ready
`2104 --Trigger
`2105-- Done
`2106-- Strobe
`2107-- Data
`2108-- Status
`
`! ______________ __
`~-------;-::===-:---
`
`No:. Used
`Not Used
`Not Used
`.& Start Method
`• Setup done, ready to synchronize
`• Trigger synchronization of ADCs
`.&Synchronization complete
`• End
`
`FIG. 26
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`N
`0
`0
`\0
`
`~
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`(.H
`Ul
`0 .....
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`Signal name -----------------------------------------------------
`2101--- Run
`_I
`---Channel -------<ch "a">--<ch ''b">--<ch "c">----------<ch "a">--< ch "b">------
`2102
`2103 ---Ready
`I
`__ I
`___-Trigger Not Used ----------------------------------------------------_-____ _
`2104
`I
`1_1
`1_1
`I
`I
`I
`I
`---Done
`2105
`- ______ 1-1 ___ __
`--- Strobe
`2106
`Data
`-----------<a valid>-<b valid>-<c valid>---------<a valid>-<b valid>--
`2107---
`-----------<a valid>-<b valid>-<c valid>---------<a valid>-<b valid>--
`2108--- Status
`
`• Start Method
`• Setup done, new ADC data has been sampled
`• Setup "a" to read first
`• Reading done, data/status valid for
`• Ready to read data for "b"
`• Data/status valid for "b"
`• ADC
`
`FIG. 27
`
`,, a"
`
`ready w/ next sample
`4. End
`...
`...
`...
`...
`
`Signal name
`2101 ----Run
`2102--- Channel ---< valid
`2103 ---Ready
`2104 ---- Trigger
`21 OS ---- Done
`2106----- Strobe Not Used ----------------
`2107--- Data
`---< Valid >------------=====
`2108 ----- Status
`------------
`
`-------<valld>----.
`4. Start Method, set up channel and data
`• Setup do~e, ready for trigger
`.._ Trigger update
`• Conversion done, status valid
`• End
`
`FIG. 28
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`N
`0
`0
`\0
`
`~
`
`rFJ =(cid:173)
`
`('D
`('D
`
`......
`(,H
`0\
`0 ......
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`
`
`Signal name
`2101 __..-Run
`2102 __..-Channel ---<ch "a">----<ch "b">-----<ch "c">-----<ch "d">-----<??????>-----
`2103 __..-Ready
`__..-Trigger
`2104
`2105 __..-Done
`__..-Strobe
`2106
`2107 __..-Data
`__..-Status
`2108
`
`----------
`
`----------
`
`------------
`
`---Don't Care --------------------------------------------------------
`---<a data>----<b data>-----<c data>----<d data>------<??????>---
`---------------------<a status>---<b status>---<c status>---<d status>
`~ Start Method, channel ~a" is the first to be updated
`~ Setup done, ready for trigger
`~ Trigger conversion on channel "a", setup channel "b"
`~ Conversion on "a" complete, status valid for "a"
`• Ready to trigger "b"
`~ Trigger conversion OL
`• Conversion done
`
`FIG. 29
`
`"b", "c" is next
`for "b", status valid
`... ...
`...
`...
`~ End
`
`~:-::::=~;-::::~~~~~~~------~------------------~~~~~~
`
`Signal name
`
`2101__..-Run
`2102 ___-Channel -<ch
`2103 __. Re~dy ----
`2104 __.Tugger
`2105 __..-Done
`2106 __.Strobe
`2107 __.Data
`2108 __.status
`
`"a">-<ch "b">-<ch "c">---------<ch "a">-<ch "b">--
`~--1
`I
`
`--------------------------------
`
`-<a data>-<b data>-<c data>---------<a data>-<b data>-<c data>------------
`-------<a stat>-<b stat>-<c stat>---------<a stat>-<b stat>-<c stat>-----(cid:173)
`~ Start Method, channel "a" is the first to be updated
`Setup done, ready for trigger or next channel
`~
`~ Strobe in data for ch.
`'b' and 'c'
`~
`~ Ready for trigger or more channels
`~ Trigger conver sions on all channels
`~ Strobe data
`~
`~
`~ Trigger
`•End
`
`FIG. 30
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2'
`:=
`
`N
`N
`0
`0
`\0
`
`~
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`(.H
`--...l
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`--...l u.
`~
`N
`Oo
`0'1
`
`--...l = N
`
`
`
`Signal
`
`SPI Mode
`
`ID Mode
`
`14 GND
`
`Signal/Power ground
`
`010
`Mode
`
`I
`I
`I
`
`4
`
`8
`
`1
`
`11
`6
`
`Power
`
`Sleep
`
`10 Select
`
`SPI_CLK
`
`MOSI
`
`12 MISO
`SPI_CS
`2
`
`7
`9
`
`15
`
`5
`
`SPI_FUNC
`Convert
`
`Busy
`
`Trig_ Out
`
`10 Oversample
`Clock
`
`3
`13
`
`+ 5 Vdc ± 5%, ~100 rnA
`
`put module into sleep mode (if supported by the module
`
`ID line: indicates presence of module, put module into 10 mode
`
`SPI serial clock
`
`SPI slave data in
`
`SPI slave data out
`
`Cartridge select/frame synch.
`
`Unused
`
`SPI Function
`
`Convert/latch/load
`
`Conversion/Load in progress
`
`Generic trigger signal provided
`by the cartridge
`
`Over -sampling clock
`
`EEPROM/1451.4 select
`
`Unused
`
`0107
`0106
`
`0105
`0104
`
`0103
`
`0102
`
`0101
`
`0100
`
`Reserved
`
`FIG. 31
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`2"
`:=
`J'J
`N
`0
`0
`\0
`
`rFJ =(cid:173)
`.....
`
`('D
`('D
`
`(,H
`QO
`
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`"'--...1 u.
`~
`"'N
`00
`0'1
`
`--...1 = N
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 39 of 48
`
`US 7,542,867 B2
`
`cs
`•
`CLK
`
`MOSI
`
`MISO
`
`FIG. 32A
`
`SPI_FUNC
`
`'
`
`~2: 0.25-r
`
`2: 025-r~. ~
`
`~--------------------~~
`
`....... /
`
`\~
`
`> 0.25-r
`
`)
`
`\
`
`SPI_CS*
`
`SPJ_CLK
`
`MOSI
`
`MISO
`
`FIG. 328
`
`> ,,, u '"' IC
`'< 0.25' \\_ __ >_0_.5_-r _
`!\
`~ L
`-------~ ~------------------~
`( <-r )
`:
`~-(L------1 !-
`
`I
`
`'
`
`' ~ ~ 0
`
`2:0
`-7 <,,;:
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 40 of 48
`
`US 7,542,867 B2
`
`3302
`
`3304
`
`-r:t~ l DO CS*
`
`MUX
`
`-
`-
`
`""
`-v~
`
`CLK
`SAR
`ADC TRIG
`ROY
`
`I
`
`I
`
`....--
`
`MISO
`MOSI
`SPI_CK
`Convert
`Busy
`SPI_CS
`SPI_FUNC
`ID Select
`
`3314A
`
`3310
`
`*
`
`3312
`
`FIG. 33A
`
`L
`
`I
`
`I J
`
`I
`
`_j
`
`-
`
`.---
`
`SPI_CS
`SPI FUNC
`SPI_CK
`MISO
`MOSI
`Convert
`Busy
`Trig_ Out
`ID Select
`
`3314B
`
`-
`Shift
`- Register
`
`--
`
`--
`
`Dl
`CLK
`h
`CS*
`LD
`
`3306~
`EEPROM
`
`3308---
`
`01
`DO
`CLK
`CS*
`
`3316 l
`
`Trans-
`parent
`Latch
`
`LE
`I
`
`Tri-
`state
`buffer
`
`tal Digi
`
`Outpu ts
`
`Digit
`al
`Input s
`
`3 318 ______- OE*
`T
`
`EEPROM
`
`3320
`
`Dl
`DO
`CLK
`CS*
`
`3308 -------
`
`FIG. 338
`
`
`
`3304A
`
`~ DC CS*
`
`MUX
`
`AR CL'/
`DC TRI~
`~ RDr
`
`-K
`
`r-.:;.22
`r - - - -v
`~ ~ Dl CS*>-
`c CLII
`LOADH
`3326 j ~ Shill
`= Reg.
`
`'-- MUX
`
`3324
`
`3328
`
`-
`
`01
`CL11
`CS"
`l
`LD
`I
`I
`EEPROM
`01
`DO
`CL~
`CS*
`
`3306
`
`3308---
`
`!=/~ -~-~r.
`
`,_.
`
`l
`
`MISO
`MOSI
`SPI CK
`Convert
`Busy
`SPI CS
`SPI_FUNC
`10 Select
`Trig.Out
`
`""""
`3314C _)
`
`l I
`
`l l
`
`l
`
`3?t
`
`3332
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`~ = :=
`
`~
`
`N
`N
`0
`0
`\0
`
`rFJ =(cid:173)
`('D a
`....
`0 .....
`
`.j;o.
`
`.j;o.
`QO
`
`d
`rJl
`---.1 u.
`~
`N
`Oo
`0'1
`
`---.1 = N
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 42 of 48
`
`US 7,542,867 B2
`
`8 digital
`outputs
`3330
`
`I
`8 digita
`outputs
`3330
`
`Measurement Module
`
`RIO FPGA
`
`/
`)
`)
`)
`)
`)
`)
`)
`
`.........
`
`010 0
`010 1
`010 2
`010 3
`010 4
`010 5
`010_6
`010 7
`
`SPI_CLK
`IO_SEL
`
`108
`
`control
`3340
`
`FIG. 330
`
`Measurement Module
`
`RIO FPGA
`
`"' K
`K
`K
`K
`K
`K'
`K
`l#
`
`010 0
`DIO 1
`DIO 2
`DIO 3
`010_4
`010_5
`010 6
`010 7
`
`CTR_O
`3338A
`
`.
`
`•
`•
`
`CTR_7
`3338H
`
`SPI_CLK
`ID_SEL
`
`108
`
`FIG. 33E
`
`010_0
`010_1
`010_2
`010_3
`010_4
`010_5
`010_6
`010_7
`Write
`
`308
`
`Data Bus 3350
`Read
`Clock
`
`Read
`Clock
`
`308
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 43 of 48
`
`US 7,542,867 B2
`
`,,
`
`Oversamp
`Trigger
`Busy
`Convert
`SPI Func
`SPI_CS
`MISO
`MOSI
`
`SPI_CLK
`ID_SEL
`
`RIO FPGA
`
`(3382
`
`Timing
`Block ..1
`
`Clock
`
`SPI
`Communication
`3384
`
`I
`
`Data Bus
`
`Read
`Write
`
`308
`
`FIG. 33F
`
`RIO FPGA
`
`1 13382
`
`Timing
`Block
`
`SPI
`Communication
`3384
`
`1
`
`Overs amp
`Trigger
`Ready
`Convert
`SPI Func
`SPI_CS
`MISO
`MOSI
`
`SPI_CLK
`ID_SEL
`
`FIG. 33G
`
`Clock
`
`Data Bus
`
`Read
`Write
`
`308
`
`Measurement Module
`
`L304
`-f'..-
`>-M~
`ADC I
`u
`f- X
`f- _,.,
`
`
`
`- -L
`
`4 analo
`inputs
`3335 -
`
`Config. J
`
`. t
`regrs er
`\,_3510
`
`f--1
`
`108
`
`Measurement Module
`
`-)j]f
`
`304A -
`ADC ~
`
`-
`
`r"
`
`-
`
`-
`4 analo
`g
`inputs
`3335
`
`- i - 304C I -ADC ~
`
`3048
`
`3040
`
`ADC
`
`101!_
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 44 of 48
`
`US 7,542,867 B2
`
`Channel 0
`
`I Command I
`
`.
`
`j Setup I
`
`Channe11
`.-lc-=-m-:-d .___,1
`I Resp.
`
`Response
`
`I Setup I
`
`SPI in
`~PI out
`Convert ;
`.. , .
`Busy
`
`FIG. 34A
`
`};PI in - j Setup I
`SPI out
`.
`~Convert
`Busy
`
`FIG. 348
`
`I Setup I
`
`, __ SPI in
`SPI out
`Convert
`Busy
`
`FIG. 34C
`
`Channel 0
`
`Cmd. I Resp.
`
`'
`
`I Cmd. I • I Cmd. I
`, Channel 1
`Resp. j i
`I Resp.
`
`Channe/2
`
`i
`l
`'
`
`Cmd. ~
`
`Resp.
`
`Channe/0
`
`!
`
`Channe/2
`. I Cmd. I
`~ Cmd. I
`I Cmd. I
`Resp. I
`I Resp. I
`I Resp.
`
`Channel 0
`I Data [_
`
`'
`
`Channel1
`I Data [
`
`. Channel2
`
`I Data [
`
`! Channel3
`I Data [
`-
`
`'
`
`SPI in
`SPI out
`Convert
`Bus
`
`FIG. 340
`
`I Setup chO I
`
`I Setup ch1 I
`I Data chO I
`
`I Setupch2 I
`
`Data ch1
`
`Setup c~3
`I
`Data ch2
`
`I-
`
`SPI in
`SPI out
`I.
`Convert
`Busy
`
`FIG. 34E
`
`
`
`Sequence List (RAM)
`3506
`
`Scratchpad
`Registers (RAM)
`3512
`
`"" 7
`
`~ Configuration n 1).
`
`______,; Registers (RAM)
`3510
`~-
`
`(i:t;
`
`Sequencer
`3502
`
`~~
`
`; ...
`;1 ~ Sequence
`1 ~ Selector (LUT) (j:t;
`->
`3504
`-
`t .. ~
`-
`
`.,/1-
`'-..r
`
`~
`v
`
`SPIPort
`(shift reg.)
`3514
`
`......
`"""''I/
`
`......
`I Ill"'
`
`ID_Sel
`SPI_CS
`MOSI
`MISO
`SPIFunc
`SPI_Cik
`
`..
`
`Convert
`Busy
`
`""--
`....
`
`,
`'"
`... ,
`
`f-
`
`(---
`
`Signal Router
`(transceiver)
`~
`3508
`
`~
`
`...
`7
`
`l..t
`Tri
`I'
`~ Lo,
`
`_Out
`al Clk
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`~ = :=
`
`N
`
`~
`
`N
`0
`0
`\0
`
`rFJ =(cid:173)
`('D a
`
`.j;o.
`Ul
`0 .....
`
`.j;o.
`QO
`
`d
`rJl
`-....l u.
`~
`N
`Oo
`0'1
`
`-....l = N
`
`Data
`Addr.
`Write
`Read
`
`Channel
`Method
`Run
`
`Trigger
`Strobe
`Ready
`L -..;
`Done
`~ '
`Data/Status
`Present
`Trigger Out
`Local Clk
`
`~
`
`'
`
`""--
`'
`'
`
`~
`
`FIG. 35
`
`
`
`U.S. Patent
`
`Jun.2,2009
`
`Sheet 46 of 48
`
`US 7,542,867 B2
`
`Code
`DODO ODOD
`0000 0001
`0000 OD10
`0000 OD11
`0000 0100
`0000 0101
`0000 0110
`0000 0111
`00001000
`0000 1001
`0000 1010
`0000 1011
`00001100
`0000 1101
`0000 1110
`00001111
`0001 DOnn
`0001 01 nn
`00011 nnn
`0010 Onnn
`0010 1xxx
`OD11 nnnn
`010x xxxx
`0110 0001
`0110 0011
`01100101
`01100111
`0110 OxxO
`0110 1001
`01101011
`01101101
`0110 1111
`0110 1xx0
`0111 0001
`0111 0011
`0111 0101
`0111 0111
`0111 OxxO
`01111xxx
`1xxx xxxx
`
`Command
`End Sequence
`
`Wait for Cartridge Interface Busy line to be Low
`Wait for Cartridge Interface Busy line to be high
`De-assert ID_Select
`Assert ID Se~ect
`De-assert SPI_ CS
`Assert SPI_CS
`Set Function code tow
`Set Function code high
`Set Convert line low
`Set Convert line high
`
`Send/Receive SPI byte Least Significant Bit first
`Send/Receive SPI byte Most Significant Bit first
`Send Data/Status byte 'n' to SPI register
`Send SPI register to Data/Status byte 'n'
`Send Scratchpad byte 'n' to SPI register
`Send SPI register to Scratchpad byte 'n'
`
`Send Config. register byte (channel*16)+n to SPI register
`Set SPI Rate to 'x' (to be defined)
`Drive Cartridge Interface 'Convert' with Std. mDAQ Interface 'Trigger'
`Drive Convert line with inverse of Trigger line
`Pulse Convert high on rising edge of Trigger line
`Pulse Convert low on rising edge of Trigger line
`Don't drive Convert line with Trigger line (drive with Sequencer)
`Drive Std. mDAQ Interface Done line with Cartridge Interface Busy line
`Drive Done line with inverse of Busy line
`Assert Done for the rest of the phase on rising edge of Busy line
`Assert Done for the rest of the phase on falling edge of Busy line
`Don't drive Done line with Busy line (drive with Sequencer)
`Drive Std. mDAQ Interface Ready line with Cartridge Interface Busy line
`Drive Ready