Published online by Cambridge University Press: 26 February 2010
This chapter is an introduction to asynchronous handshaking and typical asynchronous modules, with an emphasis on asynchronous designs that follow a channel-based discipline. The detailed implementation of these modules will be described in later chapters.
Asynchronous channels
As mentioned earlier, asynchronous designs are often composed of a hierarchical network of blocks, which contain ports interconnected via asynchronous channels. These channels are simply a bundle of wires and a protocol for synchronizing computation and communicating data between blocks. The smallest block that communicates with its neighbors using asynchronous channels is called a leaf cell. Larger blocks that communicate via channels may be called modules.
Numerous forms of channels have been developed that trade robustness to timing variations with improved power and performance, and this section reviews some of the most popular forms.
Bundled-data channels
Bundled-data channels consist of a single request line bundled with a unidirectional single-rail data bus that is coupled with an acknowledgement wire. In the typical bundled-data push channel, illustrated in Figure 2.1, the sender initiates the communication and tells the receiver when new valid data is available.
Bundled-data channels can be implemented with two-phase handshaking, in which there is no distinction in meaning between the rising and falling transitions of the request and acknowledge handshaking wires. More specifically, both the rising and falling transitions of the request wire indicate the validity of new data at the output of the sender, and both the rising and falling transitions of the acknowledge signal indicate that the data has been consumed by the receiver, as illustrated in Figure 2.2.
To save this book to your Kindle, first ensure no-reply@cambridge.org is added to your Approved Personal Document E-mail List under your Personal Document Settings on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part of your Kindle email address below. Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations. ‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi. ‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
Find out more about the Kindle Personal Document Service.
To save content items to your account, please confirm that you agree to abide by our usage policies. If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account. Find out more about saving content to Dropbox.
To save content items to your account, please confirm that you agree to abide by our usage policies. If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account. Find out more about saving content to Google Drive.