Abstract
Fully digital data acquisition systems for use in flow cytometry provide excellent flexibility and precision. Here, we demonstrate the development of a low cost, small, and low power digital flow cytometry data acquisition system using a single microcontroller chip with an integrated analog to digital converter (ADC). Our demonstration system uses a commercially available evaluation board making the system simple to integrate into a flow cytometer. We have evaluated this system using calibration microspheres analyzed on commercial, slow-flow, and CCD based flow cytometers. In our evaluations, our demonstration data system clearly resolves all eight peaks of a Rainbow microsphere set on both a slow-flow flow cytometer and a retrofitted BD FACScalibur, which indicates it has the sensitivity and resolution required for most flow cytometry applications. It is also capable of millisecond time resolution, full waveform collection, and selective triggering of data collection from a CCD camera. The capability of our demonstration system suggests that the use of microcontrollers for flow cytometry digital data-acquisition will be increasingly valuable for extending the life of older cytometers and provides a compelling data-system design approach for low-cost, portable flow cytometers.
INTRODUCTION
The progression of Moore's law continues to deliver increased computing capabilities in ever smaller and more efficient processor packages. Of specific interest is a class of processors known as microcontrollers (or microcontroller units – MCUs), which combine a core processor, memory, and support functions inside a single chip. MCUs are commonly used in automotive systems, appliances, toys, and portable electronic devices. Due to their intended applications, MCUs have been engineered to require little power while integrating capabilities to the point that they have evolved into true Systems-on-a-Chip. MCUs integrate features such as communication busses, precise frequency generation, high-speed timers/counters, decoders, pulse width modulation (PWM), analog to digital converters (ADCs), digital to analog converters (DACs), analog comparators, and amplifiers (1). Because of the ubiquitous need for these devices, hundreds of millions are sold per year, which has made them relatively inexpensive devices that typically cost in the tens of dollars each (1,2).
The capabilities described above immediately suggest the potential utility of modern MCUs for the development of small, inexpensive, and low-power digital-data acquisition systems for flow cytometers. Such data systems could have value in efforts, which are currently underway by many researchers worldwide, to create inexpensive flow cytometers that would be of great utility to world health applications (3). A MCU that could support a minimal flow-cytometry data acquisition system only requires a few functionalities (an integrated ADC, 16 or 32-bit processing power, memory, and a communications bus) of the many offered in the plethora of modern MCUs currently available. Additionally, the high level of integration in a MCU minimizes hardware development efforts by primarily relying on software algorithms to develop specific features. As such the development path for MCU based data systems should be largely a software effort and allow for flexible system redesign for incorporation of needed features (1).
The goal of this work was the demonstration of a MCU based development path that could be used to rapidly create simple and inexpensive digital data acquisition systems to support custom flow cytometer development efforts. Here, we specifically demonstrate the use of a MCU integrated on a simple demonstration board as a fully functional flow cytometry data acquisition system. By presenting the MCU selection process, the software development process, and an evaluation of the resulting demonstration system performance, this work will validate the utility of this approach. Furthermore, it is hoped that it will serve as a helpful starting point of reference in the creation similar data acquisition systems using MCUs.
MATERIALS AND METHODS
Target System Specifications
This work was initiated to develop technologies useful in the creation of inexpensive flow cytometers for use in critical healthcare applications. The target system therefore requires two channels of scatter collection to allow differentiation of white blood cell types and requires two channels of fluorescence to support many key immunophenotyping measurements, including those used in PanLeukogating for CD4+ cell counting (3,4). Table 1 contains a list of the most pertinent target system specifications for the system developed.
Table 1.
Performance Parameter | Performance Target | Justification | Microcontroller Specs |
---|---|---|---|
Detector type | PMTs, photodiodes, current mode APDs | Most common detector formats in flow cytometers | Integrated Analog to Digital Converter (ADC) |
Detector count | 4 | Can perform CD4 and other cellular immunophenotyping | ≥ 4 signal inputs to the ADC |
Minimal pulse width | >50 μs | Anticipated initial use of the system is with a cytometer using acoustic focusing, which provides high analysis rates at extended transit times. | Per channel ADC sample rate must be at least 0.1-0.2 MSPS |
Dynamic range and sensitivity | Accurately measure all 8 beads of the Spherotech Rainbow Microspheres, signifying 3 decades of dynamic range | Demonstrate 3.5 to 4 decades of dynamic range, supporting most flow cytometry applications | The effective number of bits (ENOB) and effective sampling rate of the ADC must provide at least 13-bit results |
Interrogation points | 1 | Initial target application was CD4+ cellular assays, which only requires one interrogation point | No extra memory required to support delayed signals |
Event Rate | >1000/s | Analyze >100,000 events in <2 minutes to provide excellent statistics for most applications | 20 KB/sec data transfer rate to computer |
Reported parameters | Peak, Area, Width | Conventional parameters useful for most analysis | Sufficient processing power and bit depth to calculate these. |
Cost | Path to <$100.00/system | Minimize component cost and assembly cost | Microcontroller provides inexpensive, single chip solution |
Power | 5 watt limit on system power | Potential for battery operation | Require less than 1 W to allow room for all system components |
Size | Single circuit board | Minimize the footprint in a small system | Microcontroller minimizes part count |
User interface | Laptop computer | Simplify user interaction and generate FCS 3.0 compliant data files. | Support a common communication protocol |
Microcontroller selection
It is necessary to choose a MCU based on performance requirements of the target instrument. Table 1 lists the performance requirements and infers MCU specifications from each of these requirements. Combining the cost, size and power requirements, we decided to look only at MCUs that had an integrated ADC, processor, memory, and a communication bus. The combined requirements that pertain to the ADC require 13 effective number of bits (ENOB) at a sample rate of 0.2 million samples per second (MSPS) for each detection channel while supporting at least 4 detection channels simultaneously. Both the data from the ADC and the list mode results needed to be greater than 8 bits, so 8-bit processors were not considered. The combination of these specifications greatly reduced the search space for an appropriate device.
Description of the data acquisition hardware
As a result of the selection process, the MCU we selected for the data presented in this paper is the TMS320F2808 MCU from Texas Instruments (Dallas, TX). The ADC can accept signals from 0 to 3v, has 12 bits of resolution, a claimed 10.9 effective number of bits (ENOB), a sampling rate of 6.25 MSPS, and up to 16 analog inputs. While the ENOB of the ADC is less than the requirements of our target system, we hoped the 6.25 MSPS sample rate would allow oversampling to increase the ENOB. This combination of bit depth and sample rate was sufficiently close to the target system to merit evaluation. The chip contains 128KB of FLASH and 36KB of RAM for program and data storage. The 32-bit fixed point CPU runs at a clock speed of 100 MHz, and can perform a 32-bit multiply accumulate (MAC) in a single clock cycle. The chip supports a variety of serial communication protocols including UART, SPI and I2C.
The eZdsp F2808 for TMS320F2808 DSP starter kit (DSK) from Spectrum Digital (Stafford, TX) was used to speed the development of the system. By providing all of the software development tools, example code, and the MCU on a printed circuit board, the F2808 eZdsp starter kit virtually eliminated hardware development and allowed us to focus on the software tasks. After installing the included Code Composer Studio (CCS) development software and connecting the supplied USB cable to the evaluation board, we were ready to develop and download software to the F2808. Some physical modifications were made to the evaluation board to make it easier to use for our application. Four miniature coax connectors (EPL.00 from LEMO USA, Inc., CA) were attached to the board and connected to the analog inputs of the MCU (Figure 1). To reduce cross-talk between analog input channels, termination resistors were connected between each analog input and ground. A 5th LEMO connector was connected to one of the digital output signals on the MCU to provide a trigger output (Figure 1). The eZdsp board comes with an RS232 port, which can be easily connected to a computer.
This system has been used successfully in both a 4-channel mode and 2-channel mode. Unless otherwise noted, the data presented in this paper was collected in 4-channel mode. In 2-channel mode, the effective sampling rate is doubled and the amount of list mode data generated is reduced by almost half, both of which are useful for supporting shorter transit times and higher event rates.
Description of the data acquisition software
At the highest level, the F2808 firmware moves between 4 different states: IDLE, DETECT, COLLECT, and PROCESS. The F2808 initially starts in the IDLE state, which is responsible only for responding to commands from the host computer. The host computer can query and configure the F2808. Examples are setting the trigger threshold, time parameter resolution, or even the sample rate for the ADC. The host computer also starts and stops the acquisition of list mode data. Once data acquisition has been started, the F2808 enters the DETECT state to detect the arrival of an event. When an event is detected, the F2808 enters the COLLECT state, which captures data from all detectors until the end of the event is detected. After the event is over, the F2808 changes to the PROCESS state to extract list mode data from the captured waveforms and send the results to the host computer. Once the list mode results have been sent out, the F2808 returns to the DETECT state and the process repeats. A command from the host computer can cause the F2808 to go back to the IDLE state at any time.
While the F2808 is in the DETECT and COLLECT states, data from the ADC is transferred into a circular buffer where event detection and data capture occur. The data transfer is interrupt driven for maximum performance and minimum latency. The size of the circular buffer was set to hold a total of 2048 samples, so waveforms from each of the 4 detectors can be at most 512 samples wide. With the ADC running at the maximum sample rate of 6.25 MS/sec, the effective sampling rate for each of the 4 detectors is 1.5625 MS/sec and particles with transit times as long as 327 microseconds can be captured. After the F2808 copies the samples into the circular buffer, it scans the digital values from a single detector to check for threshold crossings, and marks the beginning and end of the waveform data inside the circular buffer. When the last sample for the event has been captured, event detection is disabled, data is no longer transferred into the circular buffer, and data processing begins.
The PROCESS state requires two passes of the data. The first pass extracts peak and area, and the second pass extracts the width. The peak is extracted by taking the largest sample in the buffer. The area is extracted by summing all samples inside the buffer. The width of the pulse is measured at half of the peak value. Interpolation is used to obtain sub-sample resolution, and the width is recorded with 1/10th of a microsecond resolution. After all of the features are extracted from the waveforms, the list mode data is sent to the computer. The list mode data collected for each event consists of peak and area from each detector, the width from a single detector, and a time stamp with a programmable resolution of 0.1, 1, 10, 100 or 1000 milliseconds.
The final part of the PROCESS state sends the list mode results to the computer. This is a simple and straightforward process as the F2808 simply writes the outgoing data one byte at a time into a transmit buffer (with a 16 byte capacity). The serial interface module automatically formats and serializes the data. If the transmit buffer fills, the F2808 must wait. Because event detection is disabled until the list mode results are sent out, any delay at this point will increase the dead time of the system. Predicting the dead time is complicated by the serial transmit buffer as the dead time will be different depending on how much data there is in the buffer from the previous event. Assuming 24 bytes of data per event, and a baud rate of 115200, the minimum dead time will be just under 700 microseconds (if the buffer is empty) and the maximum dead time will be just over 2 milliseconds (if the buffer is full). The effect of the dead time on the event throughput is governed by Poisson statistics; any events that occur during the dead time will be ignored.
We are using previously developed software (TRAViS - Tailorable Rapid Acquisition and Visualization Software) for the user interface, data analysis and data storage (5). This software has been modified to communicate with the demonstration system via RS-232 to setup the instrument, collect and display the data, and save the data to FCS 3.0 format files. Please contact us if you would like a distribution package of the available software to run the demonstration board.
Collection of slow-flow data
We collected data from a slow-flow cytometer equipped with a 532 nm laser pointer for excitation that has been described previously (6). The flow velocity of the slow-flow cytometer was set to provide transit times of approximately 50 microseconds. The slow-flow system was optically configured with two PMTs (one for side-scatter and one for fluorescence). Events were triggered on side-scatter.
Retrofitting a FACSCalibur for data collection
The forward-scatter photodiode and the PMTs for side scatter, FL1 (530/30), and FL2 (585/42) were disconnected from the native data acquisition system of a Becton Dickinson (San Jose, CA) FACSCalibur and connected to preamplifiers that have been described previously (5). These amplified outputs were connected to the four analog inputs of the demonstration system. The sample delivery and the PMT voltages were controlled with the CellQuest data acquisition software. The demonstration system was manually started after sample delivery was started. The demonstration system was set to collect at the maximal ADC rate (1.5625 MS/s per channel) and events were triggered on forward scatter. Peak and Area measurements were collected for forward-scatter, side-scatter, FL1, and FL2. A pulse width value was collected from the trigger channel and a 16-bit time stamp was collected for all events. The linear velocity of the particles resulted in typical transit times on the FACSCalibur of approximately 10 microseconds. The demonstration system was capturing 16-20 samples per waveform at an effective 1.5625 MS/sec sample rate. For comparison purposes we also collected data from the same samples using the same instrument settings with the native CellQuest data acquisition system of the FACSCalibur.
Fluorescence spectral data
Fluorescence spectra from individual fluorescent beads were captured using a custom flow cytometer similar to that described in (7), using a Kr laser (647 nm) for excitation. Scatter data was collected via a PMT into an analog channel on the demonstration system. Fluorescence spectra were collected via an optical fiber, delivered to an imaging spectrograph (Kaiser Holospec) with a 647 nm edge filter (RazorEdge, Semrock), and dispersed across a CCD detector (Newton Andor). Laser power was 80 mW, and the CCD exposure time was set at 300 microseconds to match the pulse widths of this slow flow system. The demonstration system triggered the camera via a TTL pulse upon measuring the analog signal from the scatter detector that rose above threshold. The dead time of the demonstration system was adjusted to match the maximum frame rate of the CCD to ensure correlation between PMT measurements and spectral measurements.
Data analysis and fitting
FCS 3.0 data files were analyzed with either FCS Express v. 3 from De Novo Software (Los Angeles, CA) or FlowJo v. 8.8 from Tree Star Inc. (Ashland, OR). Data fitting was performed using KaleidaGraph v. 4 from Synergy Software (Reading, PA).
RESULTS
Data acquisition from a slow-flow cytometer
To demonstrate the performance of the system using extended pulses, data were collected from 8-peak rainbow microspheres (RCP-30-5A) from Spherotech (Lake Forest, IL) on the slow-flow cytometer. Collected data were gated using a bivariate plot of side-scatter peak vs. side-scatter area (Figure 2A) to generate a fluorescence histogram of fluorescence area (Figure 2B). All eight peaks were resolved in the area measurements and the brightest microspheres had coefficients of variation of about 3.6%. The fluorescence intensities of these beads, in units of mean equivalent soluble fluorophores of phycoerythrin (MESF-PE), has been previously determined (6). The MESF-PE values were plotted vs. the mean fluorescence area values for each microsphere population and fitted to a line (Figure 2C). The resultant fit gave a slope of 0.044 +/− 0.0007 mean fluorescence channels per MESF-PE (the inverse of which is 23 MESF-PE per fluorescence area channel), an intercept of 12.3 +/− 2.8 mean fluorescence area channels, and a R2 of 0.999. Fluorescence peak measurements were also collected but only six of the eight microspheres were baseline resolved, with the two dimmest microspheres partially resolved from one another (Data not shown).
Retrofitting a FACSCalibur
To determine if the analytical performance of the demonstration system would be of value for instruments with transit times on the order of ten microseconds, we collected data from a Becton Dickinson FACSCalibur (San Jose, CA) analyzing 8-peak rainbow microspheres. Peak and area measurements were collected from the forward-scatter, side-scatter, FL1 (530/30) and FL2 (585/42) detectors. Data were gated on a bivariate plot of forward-scatter area vs. side-scatter area (Figure 3A) to provide histograms of the peak and area measurements of FL1 and FL2 (Figure 3B, 3C, 3E, & 3F). Forward and side-scatter peak measurements were also collected (data not shown). FL1 area was also plotted against the 16-bit time stamp to demonstrate the millisecond time resolution (Figure 2D). For comparison purposes, the identical PMT voltage settings were used to collect data on the same 8-population Rainbow microspheres using the FACSCalibur native data acquisition system (Figure 4). This data was gated using a bivariate plot of forward-scatter peak vs. side-scatter peak (Figure 4A) to generate FL1 Peak and FL2 Peak histograms (Figure 4B & 4C). It is important to note that the average event rate when analyzing on the FACSCalibur was typically 300-400 events per second, much lower than what is supported by the native data acquisition system.
Collection of full pulse shapes
The demonstration system was connected to a FACSCalibur as described above and placed in waveform collection mode. Pulses from the FL1 channel were collected and stored from the 8-peak Rainbow microspheres in a single file. 200 of these pulses were plotted at full scale (Figure 5A) and a zoomed in scale (Figure 5B) to show the eight distinct pulse shapes generated by analyzing the 8 peak Rainbow microsphere set. The pulse shapes ranged from nearly a flat line for the dimmest peak to a well defined Gaussian peaks for the brighter microspheres (Figure 5).
Triggering a CCD Camera for Full Spectral Flow Cytometry
The demonstration system successfully triggered the CCD detector while collecting correlated list mode data from a PMT. Special software was used to gate the collected spectra based on the light scatter information in order to remove debris and aggregates. Presented in Figure 6 are fluorescence spectra collected from single Raman scattering beads on the spectral flow cytometer. The dead time of the demonstration system was increased to exceed the exposure and readout time of the camera to ensure the camera was always ready for another exposure before triggering it.
DISCUSSION
Evaluation of system performance for extended transit time flow cytometers
Extended transit time flow cytometers use slow flow hydrodynamic approaches or alternative focusing approaches such as acoustic, dielectrophoretic, or inertial focusing to precisely position particles analysis at much reduced linear velocities as compared to conventional flow cytometers (8-12). While hydrodynamic ‘slow-flow’ cytometers have been used for single molecule detection, one of the advantages of the alternative focusing approaches mentioned here is the potential removal or reduction of sheath fluid, which suggests their use in inexpensive portable flow cytometers (3). For such applications, it is important that microcontroller based systems be a small, low cost, and low power component. While the demonstration system (based on an evaluation board) draws approximately 1250 mW and costs about $120 per channel, custom printed circuit boards with just the necessary circuitry are expected to require less than 700 mW during data acquisition and cost $10 to $20 per channel.
Beyond the power requirements and system cost, the sensitivity and dynamic range of the microcontroller based demonstration system was evaluated using the relatively long integration times common to slow-flow flow cytometry. Under these conditions the F2808 baseline resolved fluorescence area measurements that were linear over four decades of fluorescence values (Figure 2). The excellent resolution provided by fluorescence area was not matched in the fluorescence peak parameter, which was expected as the dynamic range of the F2808 ADC is only 10.9 effective bits and is too small to accommodate the range of fluorescence incorporated into the rainbow microspheres. The reduced performance in the peak measurement, as compared to area, is likely related to noise within the flow cytometer that could be derived from the pre-amplifier, the laser (~ 1 mW from a 532 nM laser pointer), or the fluidics of the flow cytometer used here, which were optimized for molecular cytometry (6,8). Nonetheless, area measurements are the integration of many samples from the ADC and therefore provide comparatively improved resolution and dynamic range, which is discussed in more detail below (13). Thus, the excellent performance in the area measurements indicates that MCU-based data acquisition systems will support sensitive and accurate data acquisition when using extended transit times of 50 μs and greater.
Retrofitted microcontroller based data acquisition systems
A compelling result was the performance of the evaluation system as a retrofitted data acquisition system for an older FACSCalibur, which analyzes particles using transit times on the order of 10 microseconds and which has enough sensitivity and dynamic range to support a wide range of applications. A visual comparison of the fluorescence histograms between data collected using the demonstration system and that using CellQuest on the FACSCalibur that is equipped with logarithmic amplifiers (Figure 3B,C,D,E and Figure 4A,B) suggests that the demonstration system, which is using linear amplifiers, is providing nearly equivalent results as the FACSCalibur data acquisition system in both precision and resolution. The differences in the data are related to the use of logarithmic amplifiers and a baseline restore circuit (to remove signal offset) in the native CellQuest data system as compared to the demonstration system, which is using a linear amplifier and is not using any baseline restoring circuitry.
Though the FL1 peak data visually appears to be resolving all eight beads, the maximum dynamic range of the ADC is 1,910 bins (discussed above) and the dynamic range of the fluorescence response of the microspheres used is about 3000 on the FACSCalibur used (5). The excellent performance of the demonstration system's peak parameter when attached to the FACSCalibur is most likely related to the FACSCalibur's higher excitation intensity (15 mW from an 488 nm Argon-Ion laser line), very high numerical aperture optics used to collect the fluorescence, and detector amplifiers that are optimized to limit electronic noise. However, the dynamic range of the ADC precludes the resolution of all eight microspheres in the peak parameter. The simplest interpretation of the visual appearance of the FL1 peak data is that seven of the eight peaks are being resolved from background (requiring a dynamic range of about 500) and the dimmest microsphere is below the noise floor. Closer inspection of the FL1 peak data (Figure 3B) indicates that the dimmest population is completely contained in a non-normal distribution within channel 2 and 3, which is consistent with this interpretation. Inspection of the dimmest population collected in the FL1 area data (Figure 3D) shows a more normal distribution contained in about 5 channels, which suggests that this peak is partially resolved from noise and the remaining microspheres are also well resolved. The modest improvement of the area measurements may be being limited by several factors, including an overly wide sampling window, which leads to the addition of noise into the area measurements. This is further supported by the fact that the brightest microsphere has a tighter CV in FL1 peak (1.7%) vs. FL1 area (2.3%). Regardless, a plot of FL1 peak values collected in log-mode on the FACSCalibur vs. FL1 area from the demonstration system indicates that the demonstration system can provide near or equivalent linearity and resolution to native FACSCalibur data acquisition (Figure 7). This plotting approach allows a direct comparison of the performance of the two systems, using the best performance mode (for resolution of a high dynamic range sample) of each system. Additionally, visual inspection of the FL2 data from the FACSCalibur (Figure 3F and 4C) indicates that FL2 area collected using the demonstration system provides effectively equivalent performance to the log amplified peak data collected using the native data system. Both of these comparisons show that the demonstration system is supporting the sensitivity and resolution of the FACSCalibur.
The development of MCU-based data systems also offers some significant features that may be of interest to users of older instruments. First, it removes the need for the use of log amplifiers, which inherently introduce nonlinear responses in large dynamic range data (13,14). Second, it allows the user to collect area values for all measured parameters. Third, high-resolution (100 microsecond) time stamps are easily possible, and combined with a large dynamic range (16 bits for the demonstration system but easily expanded up to 32 bits) will prove useful for applications that require extensive time resolution, such as kinetics (15) and high-throughput flow cytometry (16). For all of these reasons, MCU-based data acquisition systems may provide a path forward for older instruments that have excellent optics and fluidics, but are in need of some of the features listed here, which are commonly available in newer instrumentation.
Waveform and Spectral Collection
The demonstration system also provides unique functions not commonly found in current data systems, specifically the ability to collect and store full pulse waveform files. The event rate is reduced significantly when capturing waveforms (often less than 10 events per second), but as can be seen in Figure 5, this mode provides a correlated set of complete pulse shapes for each detector and event. This data can be used to develop new feature extraction algorithms, which we anticipate will be used to improve the sensitivity and resolution of the system. One example of this is the improved width measurement algorithm, which has been implemented in the F2808. The algorithm extracts the full-width at half-max and initial testing with beads of different sizes indicates that this method can indeed provide sub-sample temporal resolution (data not shown). Other feature extraction algorithms are being explored as a method to further improve data quality through the use of pulse fitting routines and would also be of value in slit-scanning flow cytometry (17).
The demonstration system has also proven to be valuable for development of custom instrumentation. In this paper we have demonstrated the use of the system to trigger collection of fluorescence spectra from a CCD detector based on a light scatter signal from a PMT (Figure 6). Because the data from the PMT and CCD are correlated, spectra can be gated based on light scatter to remove debris and aggregates. The excellent performance of the demonstration system in this role suggests that the use of MCU based data acquisition systems could be an inexpensive path to add traditional analog measurements to powerful full spectral flow cytometers that are becoming more commonly available for many applications (18,19).
Performance of future MCU based data acquisition systems
While the demonstration system described here met or exceeded most of its performance requirements, there are aspects that could be improved. Some performance issues are due to hardware limitations, and some are a result of the specific software implementation. To provide insight into building systems with improved or different performance requirements we have examined the demonstration system's limitations and their causes organized around 4 of the MCU capabilities: 1. CPU 2. MEMORY 3. ADC 4. DATA BUS.
1. CPU. The CPU has roles in both event detection and data processing. Detecting the presence of an event in the digital data stream from the ADC induces a significant load on the processor, which can affect the system throughput as well as limit the complexity of the feature extraction algorithms. This method of event detection can also increase the response time of the system, which is important when triggering external devices (like a CCD sensor). For the demonstration system, there is a delay of approximately 20 microseconds from the actual analog threshold crossing and the external digital trigger output signal from the F2808. This delay is acceptable when generating triggers from pulses that are hundreds of microseconds long, but for shorter pulses this will be problematic. The processor speed, the interrupt latency, and the delay through the ADC all contribute to this delay. An alternative event detection approach could use an analog comparator to detect the threshold crossings (13). The analog comparator will respond almost instantly to the analog signal and could be used to generate an external trigger for real-time control applications. This approach requires an analog comparator, a DAC to set the threshold level, and a digital qualifier to gate out external triggers as needed. MCUs with all of these features exist, which could greatly reduce the processor load while improving the response time of external triggers for real-time control applications.
With regards to the data processing (peak and area feature extraction algorithms) implemented here, it is simple and does not limit system throughput. If more exotic feature extraction algorithms were to be used, a more capable processor (or a clever algorithm) might be needed.
In the future, if a processor were capable enough, a MCU-based system could combine improved feature extraction and response time for external triggering to take on the additional functionality of real time control. This could include making sorting decisions or sample-handling needs via control signals to pumps, valves, or sorting hardware.
2. Memory. The amount of memory required is highly dependent on the way the data is captured and processed. The memory must hold the program that is executed on the CPU, plus any required data buffers. The memory requirements of our demonstration system are significant as the internal memory is used for a circular buffer to hold the waveform data before it is processed. This provides the system with several key abilities: processing data before and after the actual threshold crossings, implementing multi-pass feature extraction algorithms, and capturing waveforms from all detectors for an event. Instead of processing the waveforms after they are captured, it possible to process the data as it is being collected for an event. This allows much longer waveforms to be processed while reducing the amount of memory required to buffer the events, and can increase the event throughput. This approach will generally work better with increasing processing power as the benefits of this approach diminish rapidly when the processing falls behind the incoming data.
3. ADC. The ADC resolution has a direct impact on the system dynamic range and sensitivity. Oversampling is commonly used to improve the effective resolution of an ADC, with the increase in ENOB (K) related to the oversampling ratio (M) by M = 4K (20, 21). If the sample rate of the ADC is larger than the Nyquist rate for the waveform being analyzed, then the oversampling ratio (M) will be the ratio of the ADC sample rate to the Nyquist rate. The Nyquist rate for an ideal Gaussian pulse is theoretically infinite, implying that it is impossible to oversample it. However the frequency content quickly decreases to insignificance for the higher frequencies so it is possible to select a realistic cutoff frequency. We chose a frequency that preserved 99% of the frequency content of the waveform, which was 44.1 KHz for the extended transit time system and 225 KHz for the Calibur. This resulted in Nyquist rates of 88.2 KHz and 450 KHz, for each system respectively. As detailed in (21), oversampling combined with a low-pass filter will increase the ENOB as described by the equation above. In the demonstration system described here, the area parameter is calculated by adding all of the 12-bit digital samples together, which creates the required low-pass filter. The least significant bits of the area parameter are truncated in order to limit the final result to a 16-bit number. For the extended transit time system, the oversampling ratio was 17.7, which is expected to provide 2.1 additional bits of resolution to give a total ENOB of 13.0 and a dynamic range of 8192. For the Calibur, the oversampling ratio was 3.5, which is expected to provide roughly 0.9 additional bits of resolution to give a total ENOB of 11.8 and a dynamic range of 3565. This gives credence to the ability of the F2808 based demonstration system to resolve the all rainbow microspheres (which have a fluorescence dynamic range of around 3,000) when using the area measurements.
The benefits of oversampling on the area parameter demonstrates that increased ADC sampling rates can be used to significantly improve the performance of the area parameter. Thus, for more demanding applications, systems could be designed that use individual MCUs to analyze the signal from individual detectors. The increased cost and complexity (MCU coordination, multiple data busses, etc...) of the resulting system would have to be weighed against the increase in performance, but such parallel approaches have been used to successfully speed data acquisition (22). Conversely, the requirements of the MCU based ADC can be relaxed for systems that do not require a large dynamic range. The F2808 is capable of capturing signals from up to 16 detectors, significantly reducing the per-channel power and cost. As stated previously, this MCU requires amplified signals from the detectors, but other MCUs have integrated amplifiers, which could be used to amplify the signals, further reducing the external circuitry required to create a system.
4. Data bus. By far the largest limitation of the demonstration system is the event throughput, and the largest contributing factor to this limitation is the data transfer speed between the F2808 and the computer. The RS232 port provided on the evaluation board has a maximum data transfer speed of 115200 baud, which results in a maximum theoretical event rate of just under 500 events per second – less than half of the goal event rate of 1,000 per second. The demonstration system sends 24 bytes of data per event to the computer, which includes 16-bit peak and 16-bit area results for each of the 4 detectors. Reducing the amount of list mode data collected for each event is an easy way to increase the throughput. By only collecting area for instance, the expected maximum event rate would increase to approximately 750 per second. Alternatively, other serial interfaces on the F2808 are capable of significantly higher data transfer speeds, and if coupled to an external communication protocol chip such as USB, should be capable of supporting event rates exceeding 5,000 per second. This would require creating a custom printed circuit board, but the increased throughput might be well worth the effort. Because event detection is disabled while the waveform data is processed and the list mode results are sent out, increasing the data transfer speed will also reduce the dead time. This is especially true when sending waveform data to the computer, which requires significantly more bandwidth. Some microcontrollers are now integrating popular communication busses such as USB and Ethernet, which would simplify the use of high-speed communication to a host computer.
Conclusions
For transit times greater than 10 μs, the 4-channel MCU-based data acquisition system we have developed has demonstrated the ability to measure and resolve all eight populations of the commonly used Rainbow calibration microspheres, which represents over 3.5 decades of dynamic range in fluorescence intensity. This indicates that the demonstration system is suitable for use in any flow cytometer where the transit time is at least 10 μs, which is relevant for extended transit time flow cytometers as well as some traditional instruments. The largely software based development path used to create this system, combined with the low cost, low power, flexibility and small size of microcontrollers, should make future use of this approach attractive for developers of flow cytometry instrumentation intended for inexpensive, portable, general research, or retrofitting applications. While multichip data systems using optimized elements for each function can provide much greater performance as a result of using faster, higher resolution ADCs and high speed digital logic circuitry such as FPGAs, these types of systems require a much larger investment in hardware design (5) and the gap in performance between these types of systems is expected to get smaller, as the many commercial applications of MCUs will drive increased MCU performance in the future.
ACKNOWLEDGEMENTS
We would like to thank Jim Jett, Jim Freyer, and John Martin for numerous technical discussions. We would like to thank Claire Sanders for technical assistance.
Footnotes
This research was supported by NIH Grants RR020064, RR001315, and EB003824
REFERENCES
- 1.Preydko M. Programming and Customizing the PIC Microcontroller. McGraw-Hill Companies Inc.; New York, NY: 2008. [Google Scholar]
- 2.Britton DB, MCGonegal S. The Digital Economy Factbook. The Progress & Freedom Foundation; Washington, DC: 2007. [Google Scholar]
- 3.Mandy F, Janossy G, Bergeron M, Pilon R, Faucher S. Affordable CD4 T-cell enumeration for resource-limited regions: a status report for 2008. Cytometry B Clin Cytom. 2008;74B(Suppl 1):S27–S39. doi: 10.1002/cyto.b.20414. [DOI] [PubMed] [Google Scholar]
- 4.Denny TN, Gelman R, Bergeron M, Landay A, Lam L, Louzao R, Mandy FF, Schmitz J, Spira T, Wilkening C. A North American multilaboratory study of CD4 counts using flow cytometric panLeukogating (PLG): a NIAIDDAIDS Immunology Quality Assessment Program Study. Cytometry B Clin Cytom. 2008;74B(Suppl 1):S52–S64. doi: 10.1002/cyto.b.20417. others. [DOI] [PubMed] [Google Scholar]
- 5.Naivar MA, Parson JD, Wilder ME, Habbersett RC, Edwards BS, Sklar L, Nolan JP, Graves SW, Martin JC, Jett JH. Open, reconfigurable cytometric acquisition system: ORCAS. Cytometry A. 2007;71A(11):915–24. doi: 10.1002/cyto.a.20445. others. [DOI] [PubMed] [Google Scholar]
- 6.Habbersett RC, Naivar MA, Woods TA, Goddard GR, Graves SW. Evaluation of a green laser pointer for flow cytometry. Cytometry A. 2007;71(10):809–17. doi: 10.1002/cyto.a.20454. [DOI] [PubMed] [Google Scholar]
- 7.Watson DA, Brown LO, Gaskill DR, Naivar M, Graves SW, Doorn SK, Nolan JP. A flow cytometer for the measurement of Raman spectra. Cytometry Part A. 2008;73A(2):119–128. doi: 10.1002/cyto.a.20520. [DOI] [PubMed] [Google Scholar]
- 8.Habbersett RC, Jett JH. An analytical system based on a compact flow cytometer for DNA fragment sizing and single-molecule detection. Cytometry Part A. 2004;60A(2):125–134. doi: 10.1002/cyto.a.20042. [DOI] [PubMed] [Google Scholar]
- 9.Goddard G, Martin JC, Graves SW, Kaduchak G. Ultrasonic particleconcentration for sheathless focusing of particles for analysis in a flow cytometer. Cytometry A. 2006;69(2):66–74. doi: 10.1002/cyto.a.20205. [DOI] [PubMed] [Google Scholar]
- 10.Goddard GR, Sanders CK, Martin JC, Kaduchak G, Graves SW. Analytical performance of an ultrasonic particle focusing flow cytometer. Anal Chem. 2007;79(22):8740–6. doi: 10.1021/ac071402t. [DOI] [PubMed] [Google Scholar]
- 11.Wang L, Flanagan LA, Monuki E, Jeon NL, Lee AP. Dielectrophoresis switching with vertical sidewall electrodes for microfluidic flow cytometry. Lab Chip. 2007;7(9):1114–20. doi: 10.1039/b705386j. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 12.Di Carlo D, Irimia D, Tompkins RG, Toner M. Continuous inertial focusing, ordering, and separation of particles in microchannels. Proc Natl Acad Sci U S A. 2007;104(48):18892–7. doi: 10.1073/pnas.0704958104. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 13.Snow C. Flow cytometer electronics. Cytometry A. 2004;57A(2):63–9. doi: 10.1002/cyto.a.10120. [DOI] [PubMed] [Google Scholar]
- 14.Shapiro HM, Perlmutter NG, Stein PG. A flow cytometer designed for fluorescence calibration. Cytometry. 1998;33(2):280–287. doi: 10.1002/(sici)1097-0320(19981001)33:2<280::aid-cyto25>3.0.co;2-p. [DOI] [PubMed] [Google Scholar]
- 15.Graves SW, Nolan JP, Jett JH, Martin JC, Sklar LA. Nozzle design parameters and their effects on rapid sample delivery in flow cytometry. Cytometry. 2002;47(2):127–137. doi: 10.1002/cyto.10056. [DOI] [PubMed] [Google Scholar]
- 16.Edwards BS, Kuckuck FW, Prossnitz ER, Ransom JT, Sklar LA. HTPS flow cytometry: A novel platform for automated high throughput drug discovery and characterization. Journal of Biomolecular Screening. 2001;6(2):83–90. doi: 10.1177/108705710100600204. [DOI] [PubMed] [Google Scholar]
- 17.Cambier MA, Christy WJ, Wheeless LL, Frank IN. Slit-Scan Cytofluorometry - Basis for Automated Prescreening of Urinary-Tract Cytology. Journal of Histochemistry & Cytochemistry. 1976;24(1):305–307. doi: 10.1177/24.1.1254926. [DOI] [PubMed] [Google Scholar]
- 18.Goddard G, Martin JC, Naivar M, Goodwin PM, Graves SW, Habbersett R, Nolan JP, Jett JH. Single particle high resolution spectral analysis flow cytometry. Cytometry Part A. 2006;69A(8):842–851. doi: 10.1002/cyto.a.20320. [DOI] [PubMed] [Google Scholar]
- 19.Sebba DS, Watson DA, Nolan JP. High throughput single nanoparticle spectroscopy. ACS Nano. 2009;3(6):1477–84. doi: 10.1021/nn9003346. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 20.Leung B. The oversampling technique for analog to digital conversion: A tutorial overview Analog Integrated Circuits and Signal Processing. 1991;1(1):65–74. [Google Scholar]
- 21.Lyons RG. Understanding digital signal processing. Prentice Hall; New Jersey: 2004. 2, Section 13.8.1. [Google Scholar]
- 22.Van den Engh G, Stokdijk W. Parallel Processing Data Acquisition-System for Multilaser Flow-Cytometry and Cell Sorting. Cytometry. 1989;10(3):282–293. doi: 10.1002/cyto.990100307. [DOI] [PubMed] [Google Scholar]