EP0346938A2

Decoding of barcodes by preprocessing scan data.

Abstract

Scanned barcodes represented by an electrical signal are preprocessed in a PLA and delivered to a microprocessor in a form that permits efficient final processing of the data. High speed edge detection produce edge markers for the control logic and counting circuits coupled with a Johnson state counter to logically sequence the processor. Logarithmic conversion compresses the counted time interval to a single data word that can most efficiently be processed by the host microprocessor. Logic between the preprocessor and the microprocessor transfer digital representations of each bar and space to preassigned respective areas in the microprocessor memory. Bar/space margin detection performs a ratiometric comparison of each bar and space to determine every occurrence of 10:1 ratios of both bar/space and space/bar. Pointer signal information is transferred to the microprocessor indicating precisely where in memory each 10:1 margin ratio is located. A digital filter excludes spurious bar/space width in the preprocessor.

EP0346938A2, drawing sheet 1
Sheet 1 of 6

Term

Term ended

Projected expiry passed 16 June 2009, 17.3 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

10 claims: 2 independent, 8 dependent

  1. 1
    In a system for decoding data scanned at a relatively high rate from barcode symbols, the combination comprising:a preprocessor for receiving and preprocessing a scanned space and bar signal information, and a microprocessor cooperating with said preprocessor for completing decoding of said signal information and having a word length n;said preprocessor comprising: edge detect logic means for detecting the occurrence of edges of said space and bar signal information;primary counter logic means for receiving clock pulses of a predetermined frequency and performing a binary count up to a predetermined maximum count of C where C = 2 n′ , and n′ = the number of binary bits of said primary counter logic means;sequencing logic means connected to said edge detect logic means and to said primary counter logic means for causing said primary counter logic means to perform a binary count of said clock pulses to represent the widths of spaces and bars in said space and bar signal information;log conversion logic means for converting said binary counts of spaces and bars to log counts L represented by integers in a range from 0 to a maximum of 2 n ;ratio logic means for detecting quiet zone margins from consecutive log counts L developed by said log conversion logic means, and producing a margin flag signal in response to log counts L having ratios equal to or greater than a predetermined ratio of space to bar widths;and latch logic means for latching and transferring log counts L to said microprocessor;and wherein said microprocessor has RAM means for storing said log counts L of space and bar widths at predetermined address areas, and for storing margin location data in the form of addresses of said log counts L that point to the memory locations of those space and bar counts at or adjacent to said predetermined quiet zone margins.
  2. 10
    A preprocessor for preprocessing data scanned at a relatively high rate from barcode symbols, and delivering preprocessed space and bar width count data to a host processor for completing decoding, said preprocessor comprising:edge detect logic means for detecting the occurrence of edges of space and bar signal information;primary counter logic means for receiving clock pulses of a predetermined frequency and performing a binary count, said primary counter logic means being responsive to said edge detect logic means for causing said primary counter logic means to perform a binary count of said clock pulses to represent the space and bar widths as space counts and bar counts;log conversion logic means for converting said binary counts of space and bar widths to log counts L;ratio logic means for detecting quiet zone margins from consecutive log counts L developed by said log conversion logic means, and producing a margin flag signal in response to log counts L having ratios equal to or greater than a predetermined ratio of space to bar widths;and logic means for transferring log counts L and said margin flag signal to the host microprocessor.