Evaluation of Data-Path Topologies for Self-Timed Conditional Statements
This research presents a methodology to evaluate data path topologies that implement a conditional statement for an average-case performance that is better than the worst-case performance. A conditional statement executes one of many alternatives depending on how Boolean conditions evaluate to true...
Main Author: | |
---|---|
Format: | Others |
Published: |
PDXScholar
2015
|
Subjects: | |
Online Access: | https://pdxscholar.library.pdx.edu/open_access_etds/2462 https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=3468&context=open_access_etds |
id |
ndltd-pdx.edu-oai-pdxscholar.library.pdx.edu-open_access_etds-3468 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-pdx.edu-oai-pdxscholar.library.pdx.edu-open_access_etds-34682019-10-20T04:27:37Z Evaluation of Data-Path Topologies for Self-Timed Conditional Statements Jamadagni, Navaneeth Prasannakumar This research presents a methodology to evaluate data path topologies that implement a conditional statement for an average-case performance that is better than the worst-case performance. A conditional statement executes one of many alternatives depending on how Boolean conditions evaluate to true or false. Alternatives with simple computations take less time to execute. The self-timed designs can exploit the faster executing alternatives and provide an average-case behavior, where the average depends on the frequency of simple and complex computations, and the difference in the completion times of simple and complex computations. The frequency of simple and complex computations depends on a given workload. The difference in the completion times of a simple and complex computations depend on the choice of a data path topology. Conventional wisdom suggests that a fully-speculative data path, independent of the design style, yields the best performance. A fully-speculative data path executes all the choices or alternatives in a conditional statement in parallel and then chooses the correct result. Using a division algorithm as an example of an instruction that embodies a conditional statement, the proposed methodology shows that a fully-speculative design is suitable for a synchronous design but a less-speculative design is suitable for a self-timed design. Consequently, the results from the SPICE simulation of the extracted netlists show that on average, the self-timed divider is approximately 10% faster, consumes 42% less energy per division and 20% less area than the synchronous divider. In addition to the evaluation methodology, this research also presents the derivation of four new radix-2 division algorithms that offer a simpler quotient selection logic compared to the existing radix-2 division algorithms. A circuit optimization technique called Glissando is presented in this research. Glissando exploits a simple idea that the non-critical bits can arrive late at the input of the registers to reduce the delay of the data paths. The effect of the variations in manufacturing on the functionality of the divider designs is also analyzed in this research. 2015-08-10T07:00:00Z text application/pdf https://pdxscholar.library.pdx.edu/open_access_etds/2462 https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=3468&context=open_access_etds Dissertations and Theses PDXScholar Algorithms Integrated circuits -- Design and construction Electrical and Computer Engineering Theory and Algorithms |
collection |
NDLTD |
format |
Others
|
sources |
NDLTD |
topic |
Algorithms Integrated circuits -- Design and construction Electrical and Computer Engineering Theory and Algorithms |
spellingShingle |
Algorithms Integrated circuits -- Design and construction Electrical and Computer Engineering Theory and Algorithms Jamadagni, Navaneeth Prasannakumar Evaluation of Data-Path Topologies for Self-Timed Conditional Statements |
description |
This research presents a methodology to evaluate data path topologies that implement a conditional statement for an average-case performance that is better than the worst-case performance. A conditional statement executes one of many alternatives depending on how Boolean conditions evaluate to true or false. Alternatives with simple computations take less time to execute. The self-timed designs can exploit the faster executing alternatives and provide an average-case behavior, where the average depends on the frequency of simple and complex computations, and the difference in the completion times of simple and complex computations. The frequency of simple and complex computations depends on a given workload. The difference in the completion times of a simple and complex computations depend on the choice of a data path topology.
Conventional wisdom suggests that a fully-speculative data path, independent of the design style, yields the best performance. A fully-speculative data path executes all the choices or alternatives in a conditional statement in parallel and then chooses the correct result. Using a division algorithm as an example of an instruction that embodies a conditional statement, the proposed methodology shows that a fully-speculative design is suitable for a synchronous design but a less-speculative design is suitable for a self-timed design. Consequently, the results from the SPICE simulation of the extracted netlists show that on average, the self-timed divider is approximately 10% faster, consumes 42% less energy per division and 20% less area than the synchronous divider.
In addition to the evaluation methodology, this research also presents the derivation of four new radix-2 division algorithms that offer a simpler quotient selection logic compared to the existing radix-2 division algorithms. A circuit optimization technique called Glissando is presented in this research. Glissando exploits a simple idea that the non-critical bits can arrive late at the input of the registers to reduce the delay of the data paths. The effect of the variations in manufacturing on the functionality of the divider designs is also analyzed in this research. |
author |
Jamadagni, Navaneeth Prasannakumar |
author_facet |
Jamadagni, Navaneeth Prasannakumar |
author_sort |
Jamadagni, Navaneeth Prasannakumar |
title |
Evaluation of Data-Path Topologies for Self-Timed Conditional Statements |
title_short |
Evaluation of Data-Path Topologies for Self-Timed Conditional Statements |
title_full |
Evaluation of Data-Path Topologies for Self-Timed Conditional Statements |
title_fullStr |
Evaluation of Data-Path Topologies for Self-Timed Conditional Statements |
title_full_unstemmed |
Evaluation of Data-Path Topologies for Self-Timed Conditional Statements |
title_sort |
evaluation of data-path topologies for self-timed conditional statements |
publisher |
PDXScholar |
publishDate |
2015 |
url |
https://pdxscholar.library.pdx.edu/open_access_etds/2462 https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=3468&context=open_access_etds |
work_keys_str_mv |
AT jamadagninavaneethprasannakumar evaluationofdatapathtopologiesforselftimedconditionalstatements |
_version_ |
1719271004673409024 |