+ All Categories
Home > Documents > Advanced Computers and Communications (ACC) Faculty Advisors: Dr. Charles Liu Dr. Helen Boussalis...

Advanced Computers and Communications (ACC) Faculty Advisors: Dr. Charles Liu Dr. Helen Boussalis...

Date post: 25-Dec-2015
Category:
Upload: junior-mathews
View: 214 times
Download: 0 times
Share this document with a friend
Popular Tags:
19
Advanced Computers and Communications (ACC) Faculty Advisors: Dr. Charles Liu Dr. Helen Boussalis 10/25/2012 1 NASA Grant URC NCC NNX08BA44A Student Assistants: Airs Lin Aleksander Milshteyn Gabriel Nunez Evan Tsai
Transcript

Advanced Computers and Communications (ACC)

Faculty Advisors:

Dr. Charles Liu

Dr. Helen Boussalis

10/25/2012 1NASA Grant URC NCC NNX08BA44A

Student Assistants:

Airs Lin

Aleksander Milshteyn

Gabriel Nunez

Evan Tsai

Handshaking Protocol

7/19/2012 NASA Grant URC NCC NNX08BA44A 2

Handshaking Protocol

7/19/2012 NASA Grant URC NCC NNX08BA44A 3

• Flow of data:PC (Application) USB Output FPGA Input PC (Application) USB Input FPGA Output

Begin

End

Simple Parallel I/O

• Processor writes data into output port

• Processor reads data from input port

• No latching of data

• No indication that data has changed

Strobe Synchronization

Strobe – additional control signal accompanies the data

Notifies the microcontroller when new data is ready at the input port

Notifies external devices when new data is ready at an output port

A latch asserts interrupt

The microcontroller must read data before next input strobe occurs

Problem: Data can be sent by input device without receiver being ready

Handshaking Synchronization

•A second control line is used

•Form of acknowledgement or busy signal

•Solves the problem of data being sent before the receiving end is ready

•Potential race condition exist: Microcontroller is testing its Busy bit, prior to the Output Device asserting busy.

• It forces Microcontroller to send another chunk of data to Output Device, since the busy signal has not reached it on time.

Race Condition!

Full Handshaking(Solving Race Condition)

Uses both edges of the strobe and busy signals

The Request for Data signal is held high when it is ready to accept new data from Input Device

The Data Available signal is held high when Input Device is ready to send new data

Based on two above conditions – Data Transfer occurs and Busy is asserted

When the data recipient (Microcontroller) acknowledges receipt of data, the Request signal is lowered

Input Device “learns” that data has been received, removes the data, and waits for the next data request

EZ-USB Basic Block Diagram

Custom Handshaking Interface (Ports Mode)

7/19/2012 NASA Grant URC NCC NNX08BA44A 11

WriteToFPGA Mode

7/19/2012 NASA Grant URC NCC NNX08BA44A 12

ReadFromFPGA Mode

7/19/2012 NASA Grant URC NCC NNX08BA44A 13

Windows Application

7/19/2012 NASA Grant URC NCC NNX08BA44A 14

Loop Test

7/19/2012 NASA Grant URC NCC NNX08BA44A 15

Handshaking Block-DiagramFPGA Side

7/19/2012 NASA Grant URC NCC NNX08BA44A 16

Handshaking WR Mode (Encoding)

7/19/2012 NASA Grant URC NCC NNX08BA44A 17

Handshaking WR Mode (Encoding)

7/19/2012 NASA Grant URC NCC NNX08BA44A 18

Handshaking RD Mode (Encoding)

7/19/2012 NASA Grant URC NCC NNX08BA44A 19

Handshaking RD Mode (Encoding)

7/19/2012 NASA Grant URC NCC NNX08BA44A 20

7/19/2012 NASA Grant URC NCC NNX08BA44A 21

1. https://www.youtube.com/watch?v=b1NyAS7qjpU - Handshaking Protocol - Project Steps (2013) 

2. https://www.youtube.com/watch?v=fvHS-Rn9Syk - Compiling and Debugging of Cypress FX2 Board & Encoding/Decoding Application


Recommended