Technion - Israel institute of technology
This presentation is the property of its rightful owner.
Sponsored Links
1 / 20

Performed by: Lior Raviv & Zohar koritzki Instructor: Reuven Nisar PowerPoint PPT Presentation


  • 116 Views
  • Uploaded on
  • Presentation posted in: General

Technion - Israel institute of technology department of Electrical Engineering. הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל. Final presentation. 2d barcode reader. Performed by: Lior Raviv & Zohar koritzki Instructor: Reuven Nisar. High speed digital systems laboratory.

Download Presentation

Performed by: Lior Raviv & Zohar koritzki Instructor: Reuven Nisar

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Performed by lior raviv zohar koritzki instructor reuven nisar

Technion - Israel institute of technology

department of Electrical Engineering

הטכניון - מכון טכנולוגי לישראלהפקולטה להנדסת חשמל

Final presentation

2d barcode reader

Performed by: Lior Raviv & Zohar koritzki

Instructor: Reuven Nisar


Performed by lior raviv zohar koritzki instructor reuven nisar

High speed digital systems laboratory

המעבדה למערכות ספרתיות מהירות

Abstract

People with vision defects are using a brail script in order to get written information.

Due to technological developments, they will be able to use a mobile optical scanner and a barcode symbol in order to get that information.

The optical scanner will read a bar-code stamp that contains up to 3000 bytes of data on a small area.

This project’s aim is to add an interface to the optical scanner. This interface will transform the data read from the bar-code stamp to voice data in Hebrew.


Performed by lior raviv zohar koritzki instructor reuven nisar

High speed digital systems laboratory

המעבדה למערכות ספרתיות מהירות

System description

The system is consists of three parts: optical bar-code reader, DSP unit and the speakers.

Our project is dealing with the DSP unit that has a serial data input from the optical scanner and a data output port for voice data to the speakers.

The data transfer algorithm implemented on the DSP hardware and include voice data files that are saved on an external memory bank.

The voice data files are transferred to the speakers thru codec by a DMA controller.


Performed by lior raviv zohar koritzki instructor reuven nisar

High speed digital systems laboratory

המעבדה למערכות ספרתיות מהירות

System Block Diagram

2-D

Barcode

scanner

Digital

Processing

+

Transforming

To

Voice data

Output

Speakers


System operation diagram

System operation diagram

scanning

Scan button

pushed

Transferring

scanned

Data into buffer

in memory

Translating data

into voice

syllables

Transferring voice

files from flash

And processing

them

Out buffering voice files

thru codec


Receiving data from scanner

Receiving data from scanner

BAR-CODE

SCANNER

BUFFER

UART

Data is transformed throw RS232 to the uart.from the uart the data

is transformed to buffer in main memory (the string buffer).

Uart is controlled by changing uart registers values


Dsp scanner communication

Dsp-scanner communication

  • Both dsp and and scanner send data to each other thru the uart.the dsp send commands (scan) and ack\nck after receiving a package.while scanner send data and ack\nck after receiving scan command.a package can contain up to

    257 bytes (including headers)

    The package format:

Length

Opcode

Message source

Status

Data

Checksum

* The command format is similar excluding data field


Translating data into voice syllables

Translating data into voice syllables

  • Detecting syllable in the scanned string.

  • A voice data file is kept in flash memory

    for each syllable.

  • File location (starting address) and length

    kept in searching table.


The searching table

The Searching table

  • The searching table is implemented by array of structures

    the structure format:

  • Syllable characters.

  • Syllable address (file in flash memory)

  • File length


Data flow flash into main memory

Data flow-flash into main memory

Main memory

buffer1

Flash

DMA

buffer2

Data is transferred to the buffers in ping pong method by the DMA,

to allow continues data out buffering (thru the codec)

and data processing in the buffer


Dma operation

Dma operation

each dma channel is operated by changing its registers.the dma triggers interrupt

after a block (file) was sent to synchronies

the data flow in the program

* opposite to the dsp 23 bit address length

(word access) the dma work with 24 bit

address (byte access)


Data processing

Data processing

  • multiplying data by gain (user define) in the data buffers

  • Syllables overlap


Syllables overlap

Syllables overlap

Disassemble each syllable to three parts

Reassemble two attached syllables by changing the relevant

parts (end of first,start of second) gain

Gain 1

for(i=0;i<100;i++){

add1[(int)i]=(add1[(int)i]*((99-i)/99)+add2[(int)i]*(i/99)

Gain 2


Data flow main memory to codec

Data flow –main memory to codec

file2

file1

DMA

CODEC

speaker


User interface

User interface

  • Scan button (new scan request)

  • Replay button (replay scanned data)

    The scanned data will be kept in an array

    Until new scan or instrument turned off

  • Volume buttons(up and down)


Interrupts

interrupts

  • Each dma channel triggers interrupt

    all channels except uart channel triggers at

    end of block (file).the uart channel trigger a interrupt after each byte is received


Program flow

Program flow

initialization

Identify syllable

Transfer voice file from flash

Merge two syllables

Send to codec

EOS

Wait state


Functions

functions

  • init-initialize all variables and devices the

    software use.

  • merge-merge between two syllables

  • gain_mul-multiply syllable by gain (user define)

  • wait-stay in wait state until scan\replay buttons pushed

  • find-performs search in the syllable search table and activate dma flash channel to transfer voice file

  • reply_uart-performs checksum and send ack\nck after receiving package from the scanner,replace headers with blanks (to allow correct data translation into syllables)


Functions 2

Functions (2)

  • skip_blanks-skip blanks in the scanned string (during

    data translation into syllables)

  • send_scan-send scan command to the scanner,receive ack\nck from the scanner (called from init function)

  • chk_dip-check dip switches

  • flip_buffer-flip source buffer for out buffering thru the codec (ping pong)

  • lsb-convert address to 24 bit (for the dma),and cut 16 lower bits (two version long int and pointers (lsbp))

  • msb-convert address to 24 bit (for the dma),and cut 8 higher bits (two version long int and pointers (msbp))


Problems during work

Problems during work

  • Incomplete and inaccurate documentation

  • Processor switch during work

  • Dma send just 53 bytes

  • Interrupts collusion

  • Problems cant be solved in “logical” way


  • Login