Browse Prior Art Database

Multiple Processor System for Candidate Selection And Decoding

IP.com Disclosure Number: IPCOM000120976D
Original Publication Date: 1991-Jul-01
Included in the Prior Art Database: 2005-Apr-02
Document File: 3 page(s) / 154K

Publishing Venue

IBM

Related People

Cato, RT: AUTHOR [+2]

Abstract

In the 3687 and 7636 bar code scanners, the analog return signal is converted to a series of digital counts corresponding to the width of the bar code bars and spaces. This digital data stream must be continuously checked for the presence of bar code information. Unfortunately, the data rate is so fast that few, if any, processors can keep up with the data.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 46% of the total text.

Multiple Processor System for Candidate Selection And Decoding

      In the 3687 and 7636 bar code scanners, the analog return
signal is converted to a series of digital counts corresponding to
the width of the bar code bars and spaces. This digital data stream
must be continuously checked for the presence of bar code
information.  Unfortunately, the data rate is so fast that few, if
any, processors can keep up with the data.

      There are two current solutions to this problem.  One solution
is to have a large amount of customized high-speed logic filter the
data before it is given to the processor. The logic chooses data with
the characteristics of the bar code that it is designed to look for.
If a bar code candidate is found, the processor is interrupted and
directed to a specific place in memory to get the data.  The
processor then decodes the data.  With this solution, the processor
has access to the raw data.

      The second solution, a variation of the first, is to have the
high-speed logic completely decode the raw data stream.  The
processor never sees the raw data, but merely passes the decoded
symbol characters to the communication port and does other
housekeeping chores.  This solution prohibits the use of more
sophisticated decode algorithms and makes any changes to the hardware
decode algorithm very difficult.  In the 7636 scanner, a decode
algorithm that uses a correlation technique has been found to be very
effective.  In the 3687-2 scanner, the decode algorithm was changed
to improve the frequency of wrong decodes on labels with the price
imbedded in them.  These improvements, however, occurred years after
first customer ship.

      The problem with both of these solutions is that the hardware
must be bar code-specific.  If another type of bar code is read,
different hardware has to be used or the hardware has to be
configured differently by the software.

      This article describes a solution that uses hardware and
software that are bar code independent.  Multiple processors
(probably 4 or 8) share the processing burden. Scanners lend
themselves to this approach because the serial data stream can be
broken up at the beginning of each scan line.  The data can be parsed
out to the various processors on a scan line basis.  As logic becomes
more and more dense, more and more processors can be packed on a
single chip.

      The software architecture is bar code independent.  It is
insensitive to noise pulses in the margin or quiet zone in front of
the label because only the label information is being looked for, not
the surrounding margin.  Noise in the margin presents a very serious
limitation to the 7636 and has caused problems with the 3687-2.  This
architecture could be even more selective by programming a trailing
margin criteria, where noise is not a problem with peak following
thresholding, but this is not necessary and may not be desirable on
symbols such as the UPC.

   ...