DigiView Compression

Top  Previous  Next

There is no need to understand DigiView's compression to use it. This is just here for the curious (or skeptical).

 

We want two conflicting features in a logic analyzer; high sample RATES (high resolution) and high sample COUNTs (a lot of data/time).  We usually reduce sampling RATES to capture more data because sample COUNTs (data buffer depth) is fixed.  To combat this trade-off, the sample buffer is made as deep as possible.   However, this approach is linear and does not scale well.  Doubling the buffer doubles either TIME or sample RESOLUTION.  It can take gigabytes of memory to achieve both if your data transitions are fairly sparse (microsecond or more gaps).

 

Ideally, we would like to have high sample RATES AND high sample COUNTs to capture a long time-span with high resolution.

 

DigiView achieves this, like other logic analyzers, by using a deep data buffer.  However, DigiView also attacks this problem from another, even more effective angle.  DigiView uses one or more real-time, hardware based compression techniques to compact the captured data.  This has a much greater impact than increasing the buffer depth.

 

Most data you are likely to monitor lends itself well to our compression technique(s).  Compression ratios of 100:1 are common.  With sparse data, compression ratios of over 200,000:1 are achievable.  Since the degree of compression depends on the amount of activity, you will achieve maximum compression if you only define signals of interest.  DigiView analyzers will always sample at the maximum rate for the mode selected. Due to automatic real-time compression techniques, you receive the benefits that down-sampling would achieve (longer captures) without the loss of data resolution.

 

The data captured in logic analyzer applications is often stable for multiple sample periods (particularly at higher sample rates).  This, coupled with fast sample times and a very long run-length limit, makes our compression very applicable in real-world applications. 

 

To illustrate the effect of DigiView's compression and also present it in a manner that is more relevant to real-world usage, we have calculated several typical performance benchmarks for each DigiView Model and sampling mode. You may actually see better performance ratings than the conservative estimations below.

 

 

DV3109

DV3209

DV3409

DV3100

DV3200

DV3400

DV3500

 

Sample Depth    ( SR: Sample Rate,    DR: Data Rate,    Q: Quadrillion or 10^15 )


   Theoretical Min

   (SR = DR)

512K x 9

512K x 9

1M x 9

512K x 18

512K x 9

512K x 18

1M x 9

512K x 36

1M x 18

1M x 36

2M x 18

  Practical Min

   (SR = 4 x DR)

1M x Channel width

2M x Channel width

   @ DR = 25Mbps (40ns)

1M x 9

2M x 9

4M x 9

1M x 18

2M x 9

2M x 18

4M x 9

2M x 36

4M x 18

4M x 36

8M x 18

   @ DR = 10Mbps (100ns)

2.5M x 9

5M x 9

10M x 9

2.5M x 18

5M x 9

5M x 18

10M x 9

5M x 36

10M x 18

10M x 36

20M x 18

   @ DR = 100Kbps (10us)

250M x 9

500M x 9

1B x 9

250M x 18

500M x 9

500M x 18

1B x 9

500M x 36

1B x 18

1B x 36

2B x 18

   @ DR = 10Kbps (100us)

2.5B x 9

5B x 9

10B x 9

2.5B x 18

5B x 9

5B x 18

10B x 9

5B x 36

10B x 18

10B x 36

20B x 18

   Theoretical Max

   (DR approaches 0)

   (Quadrillion)

3Q @ 10ns

(347 days)

3Q @ 5ns

(173 days)

6Q @ 2.5ns

(173 days)

3Q @ 10ns

(347 days)

3Q @ 5ns

(173 days)

3Q @ 5ns

6Q @ 2.5ns

(173 days)

4.5Q @ 5ns

9Q @ 2.5ns

(260 days)

9Q @ 4ns

18Q @ 2ns

(520 days)

 

Typical Captures @ Full Resolution   ( data type / count stored in hardware buffer )


   0.1Hz clocks

87,000

131,000

262,000

   1KHz clocks

87,000

131,000

262,000

   5KHz clocks

131,000

262,000

   25MHz clocks

131,000

262,000

   Async characters

47,000

94,000

   I²C characters

10,000

20,000

   Sync characters

12,000

24,000

   8051 Bus cycles

40,000

80,000

 

 

Final note: the data is compressed in real-time with dedicated hardware and is NEVER fully de-compressed (which could result in data files much larger the available hard-drive capacities).  DigiView software transfers the entire compressed data buffer from the hardware to internal PC memory in compressed form.  This allows us to transfer the entire buffer in about 1 second.  The waveform display routines fetch only enough data from the compressed memory buffer to fill the viewable portion of the display screen and even that is compressed.