WBK30 User's Guide
WaveBook Memory Option
Reference Note: The WaveBook User's Manual has additional information on buffer operation, data packing,
WaveView, custom programming, and related issues.

Acquired data

Data to PC

MemoryController

P1
connects toJ101 in WaveBook

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

8 MB
DRAM

WBK30 Block Diagram

The WBK30 is a DRAM-based memory board that installs inside a WaveBook. The WBK30 increases thecapacity of the WaveBook's standard data buffer from 64 thousand samples to 8-64 million samples(increased by a factor of ×125 to ×1000). The WBK30 is available with 3 capacities:• WBK30/16—16.7 MB to hold 8.3 million samples (11.1 million packed)• WBK30/64—67.1 MB to hold 33.5 million samples (44.7 million packed)• WBK30/128—134.2 MB to hold 67.1 million samples (89.4 million packed)
Benefits of using the larger and enhanced data buffer include:• Compensates for a PC's slow connection, slow disk-drive, or limited memory.
• Prevents data loss when an acquisition is stopped deliberately or due to buffer overflow. The user canstop (disarm) an acquisition at any time. On disarm, data in the WBK30 is preserved and transferred tothe PC.
• Reduces the PC's CPU load during the pre-trigger acquisition by performing internal buffermanagement.
Note:

Without the WBK30, acquired data flows as fast as possible from the WaveBook to the PC. Witha WBK30, the transfer can be delayed until the scan is complete. In some cases, this may delay the"real-time" view available in WaveView.

Features
The WBK30 adds 2 important features to WaveBook operation:• Overflow Protection Mode allows the PC to correctly retrieve all data collected before the overflow.
Even with the WBK30's large memory, it can still overflow during a fast acquisition with a slow PC. In
such cases, overflow protection can preserve millions of potentially valuable samples. In an overflow
condition without this protection, all data in the buffer would be lost.
• Pre-Trigger Mode allows local buffering of pre-trigger acquisitions. The WBK30 manages finitelength acquisitions entirely within its own buffer instead of using the PC's resources. During theacquisition, the WaveBook begins acquiring data in advance of the trigger. When the trigger occurs, a
specified amount of the most recent "pre-trigger" data is preserved. The "post-trigger" data is thencollected as specified. Together, pretrigger data and post-trigger data comprise the entire acquisition.
Without a WBK30, all pre-trigger data (including any to be discarded) must be transferred into the PC'smemory, followed by the post-trigger data. This data transfer may be impossible if the PC (or its port)
is too slow.
With the WBK30, all the desired data is kept in the WBK30 buffer until the acquisition is complete.
Then, the PC (at its own speed) reads the entire, correct acquisition. Thus, the collection of pre-trigger
data can continue indefinitely, even at the highest acquisition rate. Of course, the WBK30 must havethe capacity to hold all pre-trigger and post-trigger data.
p/n 1025-0901 rev 2.0 (per EO# 2116R3)

WBK30 User's Guide1

Hardware Setup
CAUTION
Turn power off to all connected devices before performing the setup.
To avoid pin damage, make sure the memory card is aligned correctly with the mating
connector J101. Gently press them together.
Perform the setup in a static-free work area using tools, wrist strap, containers, andprocedures that are ESD-safe. One or more components are sensitive to damage fromelectrostatic discharge.

WBK30
Note: The figure shows a WaveBook/512;
the /516 is similar. Not all components are shown.

P1
Foam Pad
Remove 3 jumpers
from J101.
262-0303 chip must be
stamped "MEM A". If not,an upgrade is required.
Card guide on
inside ofWaveBook/516
front panel

WBK30 Connection to a WaveBook

Install the WBK30 into a WaveBook as follows:
1. Turn off all system power, and unplug the power adapter from the WaveBook.
2. Remove the WaveBook's top cover plate.
3. Verify compatibility. The WBK30 is compatible with all WaveBook/516s and upgraded
WaveBook/512s. To determine /512 compatibility, locate p/n 262-0303 (the FPGA IC) on theWaveBook's motherboard (see figure). The 262-0303 chip must be stamped "MEM A" for theWBK30 to work properly. By serial number, the following WaveBook/512s are not compatible:
148010 and below, 148253, 149322, 150411-150413, 150415, 150418, 151597, 153335. If notcompatible, contact the factory about an upgrade. After a WaveBook/512 is modified for theWBK30, it must have a WBK30 to work—to return to operation without the WBK30 would
require another factory modification.
4. Remove all 3 jumpers from the WaveBook's 40-pin connector J101.
5. Align the WBK30 so its P1 connector is directly over J101. [In a WaveBook/516, before pressing theconnectors together, slip the opposite end of the WBK30 into the plastic card guide above the D-sub
connector on the front panel.] Gently press the connectors together—be careful to avoid pin damage.
Verify the setting is secure (in the /512, the foam pad helps brace the WBK30 against the top coverplate).
6. Replace top cover plate, and power up the system.
2

WBK30 User's Guide

p/n 1025-0901 rev 2.0 (per EO# 2116R3)

Software Setup
Reference Note: Chapter 5 of the WaveBook User's Manual explains WaveView in greater detail.
Chapters 14 and 15 explain programming with the enhanced API.
WaveView
The WBK30 is supported by WaveView version 7.2 and higher. Check-boxes in the System-Options menu
allow you to enable or disable the Pre-Trigger and/or Overflow Protection modes. Both modes will beenabled by default when WaveView first detects the presence of the WBK30.
• Enable WBK30 Pre-Trigger Mode — causes WaveView to use the Pre-Trigger Mode for high-speed
pre-trigger acquisitions. Acquisitions unable to use the Pre-Trigger Mode will run normally whether
this setting is enabled or not. When using the WBK30 pre-trigger mode, the actual number of pretrigger scans acquired may be up to 3 scans less than the pre-trigger scan count programmed in theacquisition configuration dialog.
• Enable Overflow Protection Mode — causes WaveView to use the Overflow Protection for allacquisitions. Data is preserved if you cancel a transfer by selecting the STOP button in either theScope or Direct-to-Disk window. Disable this mode if data from a stopped acquisition is unwanted.
DaqX Programming of the WBK30
Only the enhanced API (DaqX versions 2.4 and higher) supports the WBK30. The standard API(with wbk... commands) cannot address the WBK30. Commands affecting the WBK30 include:
daqAdcTransferSetBuffer sets information to initialize a data transfer. One argument is a bit mask oftransfer-mode codes.
• DatmPacingMode – Setting this bit in the transferMask argument enables Pacing Mode. In thismode, the caller paces the acquisition by proving a pacing count via daqAdcTransferGetStat.
daqAdcTransferGetStat returns a count of scans transferred and a bit-mask of status bits for the current
acquisition. These arguments can also send information to DaqX when using a Pacing Mode transfer.
• DaafAcqArmed – TRUE means the device is armed—data is either being sampled and sent to thebuffer at the present time or will be when the trigger occurs. Data transfer may or may not be active.
• DaafDataPresent - TRUE means there is some data in the buffer. The device may or may not bearmed; data transfer may or may not be active.
daqGetInfo can query WaveBook configuration options.
• DdiExtFeatures - Returns a mask of feature bits including features of the WBK30.
DhefFifoOverflowMode
Buffer has Overflow Protection mode.
DhefFifoCycleMode
Buffer has Cycle (Pre-Trigger) Mode.
DhefFifoScanCount
Buffer has readable, current data count.
• DdiFifoScanCount - Returns the count of scans currently in the WBK30. The
DhefFifoScanCount bit of the DdiExtFeatures value will be set for supported hardware.
daqSetOption can set WaveBook configuration options.
• DbotFifoOverflowMode – Enables the WBK30’s overflow protection.
• DbotFifoCycleMode – Enables the WBK30’s Pre-Trigger Mode.
• DbotFifoCycleSize – Sets the size of the WBK30’s circular buffer when in Pre-Trigger Mode.
The size is specified as the number of 16-bit words in the buffer.
• DbotFifoFlush – Tells the driver to immediately flush all data in the FIFO. This option isenabled for WaveBooks with or without a WBK30.
• DbotFifoNoFlushOnDisarm – Disables flushing of data in the FIFO. This allows manually
stopping the current acquisition without losing data that is acquired but not yet transferred to the hostcomputer.
daqTest can perform self-tests on the hardware.
• DtstFifoAddrDataBusValid – Performs a bus-address test on the WBK30.
• DtstFifoMemCellValid – Performs a memory test on the WBK30.
Transfer pacing can prevent the mouse from "freezing" during a Pre-Trigger Mode data transfer and help
eliminate the Buffer-Overrun error. To help manage data transfer from the WaveBook, an application canp/n 1025-0901 rev 2.0 (per EO# 2116R3)

WBK30 User's Guide3

"pace" the transfer by setting a transfer limit on the scan count. After the count reaches this value, thedriver stops transferring data. The transfer operation remains open and can resume when the application
sends a larger limit to the driver.
The pacing count is set by calling daqAdcTransferGetStat with the scan count argument initialized
to point to the pacing count and the active flag initialized to point to a value that is Boolean TRUE. The
pacing count can be called repeatedly during an acquisition to allow the driver to write more data. By
continually updating the pacing count as data is removed from the transfer buffer, the client can pace thedata transfer.
When not in Pacing Mode, daqAdcTransferSetBuffer behaves normally—the driver ignoresargument values. To get normal behavior while in Pacing Mode, initialize the active flag to point to aBoolean FALSE. In all modes, the arguments always return scan count and status information regardless ofthe active flag. Pacing Mode is enabled via daqAdcTransferSetBuffer by setting theDatmPacingMode bit of the transferMask argument.

WBK30 - Specifications
Name/Function: WaveBook Memory Option / expands internal data FIFO from 64 Ksamples to 8-64 Msamples
Memory Capacity (M = 1,000,000)
Part Number
WBK30/16
WBK30/64
WBK30/128
16.7 M
67.1 M
134.2 M
Bytes
8.3 M
33.5 M
67.1 M
Samples
11.1 M
44.7 M
89.4 M
Packed Samples
Maximum Acquisition Length:
Pre-Trigger Acquisitions: Same as memory capacity
Post-Trigger Acquisitions: Depends on PC transfer rate, acquisition rate (both in samples per second), and capacity as follows:
Maximum Acquisition Length = T × acquisition rate
Where: T = Time-to-overflow = Capacity / (acquisition rate - transfer rate)
Example: Acquiring 500 K unpacked samples per second with a WBK30/16 and a PC capable of transferring 200 Ksamples/second,overflow will occur in: T = 8.3M / (500K - 200K) = 27.6 seconds
Thus: Acquisition Length = 27.6 seconds × 500K = 13.8 million samples
Pre-Trigger Mode: Allows indefinite pre-trigger duration, regardless of PC resources and transfer rate.
Environmental: 0°C to 70°C (compatible with WaveBook internal environment).
User Installation: Requires main board modification for Wavebook/512 shipped before July 1998. Plug-in compatible withWavebook/512 units shipped after July 1998 and all Wavebook/516s.
Mechanical Mounting: Friction fit with 40-pin header. Fit with foam rubber spacers in Wavebook/512; card guide in Wavebook/516.
Power: 300 mA maximum (200 mA typical) at 5 V
Dimensions: 2.6 x 4.1 inches.

4

WBK30 User's Guide

p/n 1025-0901 rev 2.0 (per EO# 2116R3)