Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Unidirectional Synchronization Buffers

IP.com Disclosure Number: IPCOM000038112D
Original Publication Date: 1989-Nov-01
Included in the Prior Art Database: 2005-Jan-31
Document File: 1 page(s) / 12K

Publishing Venue

IBM

Related People

Peterson, MJ: AUTHOR [+4]

Abstract

Disclosed is a circuit for transferring electronic data across asynchronous logic boundaries in one direction.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 85% of the total text.

Page 1 of 1

Unidirectional Synchronization Buffers

Disclosed is a circuit for transferring electronic data across asynchronous logic boundaries in one direction.

This circuit is applicable when one side of the boundary requires continuous data flow making it non-paceable. The other side must be paceable and have a higher instantaneous bandwidth than the non-paceable side.

If the paceable side is sending the data (see Fig. #1), it watches the read select of the receiving side. Whenever that select line changes, the transmitting side must update the buffer register that is not being read.

If the non-paceable side is sending the data (see Fig. #2), the receiving side must watch the write select of the transmitting side. Whenever that select line changes, the receiving side should read the buffer register that is not being written.

The two key design parameters are the number of bits required for the read and write sides to get the correct bandwidth and the number of bits in the two buffers.

The bandwidth on the paceable side must be higher than the non-paceable. For example, if a non-paceable receive side requires 10 bits of data every 30ns and the paceable side writes with a 50ns clock then the paceable side must have at least (10/30)*50 = 16.7 bits at its smallest point.

The dual buffers must be large enough to allow the paceable side enough time to read/write the buffer before the other side writes/reads it. The writing side needs to see the select line change on one cycle a...