Book contents
- Frontmatter
- Contents
- Foreword
- Preface
- 0 Introduction
- 1 Introduction to Tangram and handshake circuits
- 2 Examples of VLSI programs
- 3 Handshake processes
- 4 Handshake circuits
- 5 Sequential handshake processes
- 6 Tangram
- 7 Tangram → handshake circuits
- 8 Handshake circuits → VLSI circuits
- 9 In practice
- A Delay insensitivity
- B Failure semantics
- Bibliography
- Glossary of symbols
- Index
3 - Handshake processes
Published online by Cambridge University Press: 14 January 2010
- Frontmatter
- Contents
- Foreword
- Preface
- 0 Introduction
- 1 Introduction to Tangram and handshake circuits
- 2 Examples of VLSI programs
- 3 Handshake processes
- 4 Handshake circuits
- 5 Sequential handshake processes
- 6 Tangram
- 7 Tangram → handshake circuits
- 8 Handshake circuits → VLSI circuits
- 9 In practice
- A Delay insensitivity
- B Failure semantics
- Bibliography
- Glossary of symbols
- Index
Summary
Introduction
A handshake is a means of synchronization among communicating mechanisms. In its simplest form it involves two mechanisms connected by a pair of so-called links, one for sending signals and one for receiving signals. The sending of a signal and the reception of a signal are atomic actions, and constitute the possible events by which a mechanisms can interact with its environment.
A signal sent by one mechanism is bound to arrive at the other mechanism, after a finite, non-zero amount of time. Hence, this form of communication is asynchronous; the sending and the arrival of a signal correspond to two distinct events. It is assumed that a link allows at most one signal to be on its way. Consequently, a signal sent must arrive at the other end of the link before the next one can be sent. When the traveling time of a signal along the link is unknown, the only way to know that a signal has arrived at the other side is to be so informed by the other mechanism. The other link in the pair performs the acknowledgement.
Such a causally ordered sequence of events is called a handshake. The two mechanisms involved play different (dual) roles in a handshake. One mechanism has the active role: it starts with the sending of a request and then waits for an acknowledgement. The other mechanism has the passive role: it waits for a request to arrive and responds by acknowledging.
- Type
- Chapter
- Information
- Handshake CircuitsAn Asynchronous Architecture for VLSI Programming, pp. 45 - 72Publisher: Cambridge University PressPrint publication year: 1994