<TABLE> <S> <C>

<PAGE>
<ARTICLE> 5
<LEGEND>
THIS SCHEDULE CONTAINS SUMMARY FINANCIAL INFORMATION EXTRACTED FROM THE INCOME
STATEMENT FOR THE YEAR-TO-DATE PERIODS ENDED ON THE DATES INDICATED FOR EACH
COLUMN BELOW AND THE BALANCE SHEET AS OF EACH PERIOD-END DATE SHOWN, AND IS
QUALIFIED IN ITS ENTIRETY BY REFERENCE TO SUCH FINANCIAL STATEMENTS.
</LEGEND>
<RESTATED>
<MULTIPLIER> 1,000

<S>                             <C>                     <C>                     <C>                     <C>
<PERIOD-TYPE>                   YEAR                   9-MOS                   6-MOS                   3-MOS
<FISCAL-YEAR-END>                          DEC-31-1996             DEC-31-1996             DEC-31-1996             DEC-31-1996
<PERIOD-START>                             JAN-01-1996             JAN-01-1996             JAN-01-1996             JAN-01-1996
<PERIOD-END>                               DEC-31-1996             SEP-30-1996             JUN-30-1996             MAR-31-1996
<CASH>                                           9,545                   8,532                   8,172                   8,986
<SECURITIES>                                         0                       0                       0                       0
<RECEIVABLES>                                   11,841                  12,213                  12,204                   9,699
<ALLOWANCES>                                       489                     339                     340                     340
<INVENTORY>                                      7,940                   7,830                   6,726                   6,620
<CURRENT-ASSETS>                                33,770                  31,576                  29,721                  27,806
<PP&E>                                          15,069                  14,550                  14,599                  13,207
<DEPRECIATION>                                   9,145                   8,725                   8,611                   8,298
<TOTAL-ASSETS>                                  44,314                  41,879                  39,762                  36,226
<CURRENT-LIABILITIES>                            8,490                   8,598                   8,929                   7,625
<BONDS>                                            278                      91                     108                      33
<PREFERRED-MANDATORY>                                0                       0                       0                       0
<PREFERRED>                                          0                       0                       0                       0
<COMMON>                                            67                      67                      67                      67
<OTHER-SE>                                      34,792                  32,627                  30,550                  28,393
<TOTAL-LIABILITY-AND-EQUITY>                    44,314                  41,879                  39,762                  36,226
<SALES>                                         40,244                  29,425                  19,242                   9,170
<TOTAL-REVENUES>                                50,837                  37,264                  24,527                  11,915
<CGS>                                           14,203                  10,360                   6,845                   3,213
<TOTAL-COSTS>                                   18,138                  13,363                   8,916                   4,408
<OTHER-EXPENSES>                                23,204                  17,129                  11,221                   5,436
<LOSS-PROVISION>                                     0                       0                       0                       0
<INTEREST-EXPENSE>                                  33                      24                      14                      14
<INCOME-PRETAX>                                  9,712                   6,907                   4,427                   2,172
<INCOME-TAX>                                     3,546                   2,526                   1,683                     826
<INCOME-CONTINUING>                              6,166                   4,381                   2,744                   1,346
<DISCONTINUED>                                       0                       0                       0                       0
<EXTRAORDINARY>                                      0                       0                       0                       0
<CHANGES>                                            0                       0                       0                       0
<NET-INCOME>                                     6,166                   4,381                   2,744                   1,346
<EPS-PRIMARY>                                     0.92                    0.65                    0.41                    0.20
<EPS-DILUTED>                                     0.88                    0.63                    0.39                    0.20


</TABLE>