1995Unpublished venueOpen access

Behavioral synthesis methodology for HDL-based specification and validation

D.W. Knapp, Tai Ly, Don MacMillen, Robert H. Miller

Open full text 64 citations

Abstract

This paper describes a HDL synthesis based design methodology that supports user adoption of behavioral-level synthesis into normal design practices.The use of these techniques increases understanding of the HDL descriptions before synthesis, and makes the comparison of pre-and post-synthesis design behavior through simulation much more direct.This increases user confidence that the specification does what the user wants, i.e. that the synthesized design matches the specification in the ways that are important to the user.At the same time, the methodology gives the user a powerful set of tools to specify complex interface timing, while preserving a user's ability to delegate decision-making authority to software in those cases where the user does not wish to restrict the options available to the synthesis algorithms. OverviewThis paper describes a synthesis methodology that uses high-level synthesis (HLS) of behavioral hardware-description language (HDL) descriptions.HLS has the distinguishing characteristic that operations are automatically scheduled, i.e. assigned to states, as opposed to lower-level synthesis, in which operations are assigned to states by the user [1, 2, 3].For example, in an HDL description of a square root function, an operand x would be loaded, a series of operations would follow, and a single result r would be returned.The read x and the write r might be fixed to particular states or times by a communication protocol, but the internal operations that compute the square root would be automatically scheduled.A prospective user of HLS will then ask a number of questions.These will likely include the following:• How can I constrain I/O operations to fall into particular cycles, or range of cycles, to meet existing protocols?• How can I constrain I/O operations to have particular timing relationships?For example, how can I constrain a data ready strobe to be synchronous with data on data ports?• How can I be confident that my interface timing specification really works with the surrounding hardware?• How can I give the scheduling software optimization opportunities when my timing specification is not rigid?For example, I might not care exactly when data was transferred, as long as a corresponding strobe remains synchronized with the data.Thus the strobe and data should be locked together, but the locked strobe/ data pair of operations could move.

Open-access reader

About this research paper

What this paper is about

This paper describes a HDL synthesis based design methodology that supports user adoption of behavioral-level synthesis into normal design practices.The use of these techniques increases understanding of the HDL descriptions before synthesis, and makes the comparison of pre-and post-synthesis design behavior through simulation much more direct.This increases user confidence that the specification does what the user wants, i.e. that the synthesized design matches the specification in the ways that are important to the user.At the same time, the methodology gives the user a powerful set of tools to specify complex interface timing, while preserving a user's ability to delegate decision-making authority to software in those cases where the user does not wish to restrict the options available to the synthesis algorithms. OverviewThis paper describes a synthesis methodology that uses high-level synthesis (HLS) of behavioral hardware-description language (HDL) descriptions.HLS has the distinguishing characteristic that operations are automatically scheduled, i.e. assigned to states, as opposed to lower-level synthesis, in which operations are assigned to states by the user [1, 2, 3].For example, in an HDL description of a square root function, an operand x would be loaded, a series of operations would follow, and a single result r would be returned.The read x and the write r might be fixed to particular states or times by a communication protocol, but the internal operations that compute the square root would be automatically scheduled.A prospective user of HLS will then ask a number of questions.These will likely include the following:• How can I constrain I/O operations to fall into particular cycles, or range of cycles, to meet existing protocols?• How can I constrain I/O operations to have particular timing relationships?For example, how can I constrain a data ready strobe to be synchronous with data on data ports?• How can I be confident that my interface timing specification really works with the surrounding hardware?• How can I give the scheduling software optimization opportunities when my timing specification is not rigid?For example, I might not care exactly when data was transferred, as long as a corresponding strobe remains synchronized with the data.Thus the strobe and data should be locked together, but the locked strobe/ data pair of operations could move.

Why it matters

OpenAlex reports 64 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

This paper describes a HDL synthesis based design methodology that supports user adoption of behavioral-level synthesis into normal design practices.The use of these techniques increases understanding of the HDL descriptions before synthesis, and makes the comparison of pre-and post-synthesis design behavior through simulation much more direct.This increases user confidence that the specification does what the user wants, i.e. that the synthesized design matches the specification in the ways that are important to the user.At the same time, the methodology gives the user a powerful set of tools to specify complex interface timing, while preserving a user's ability to delegate decision-making authority to software in those cases where the user does not wish to restrict the options available to the synthesis algorithms. OverviewThis paper describes a synthesis methodology that uses high-level synthesis (HLS) of behavioral hardware-description language (HDL) descriptions.HLS has the distinguishing characteristic that operations are automatically scheduled, i.e. assigned to states, as opposed to lower-level synthesis, in which operations are assigned to states by the user [1, 2, 3].For example, in an HDL description of a square root function, an operand x would be loaded, a series of operations would follow, and a single result r would be returned.The read x and the write r might be fixed to particular states or times by a communication protocol, but the internal operations that compute the square root would be automatically scheduled.A prospective user of HLS will then ask a number of questions.These will likely include the following:• How can I constrain I/O operations to fall into particular cycles, or range of cycles, to meet existing protocols?• How can I constrain I/O operations to have particular timing relationships?For example, how can I constrain a data ready strobe to be synchronous with data on data ports?• How can I be confident that my interface timing specification really works with the surrounding hardware?• How can I give the scheduling software optimization opportunities when my timing specification is not rigid?For example, I might not care exactly when data was transferred, as long as a corresponding strobe remains synchronized with the data.Thus the strobe and data should be locked together, but the locked strobe/ data pair of operations could move.

Key concepts: Citation, Computer science, Automation, World Wide Web, Engineering, Mechanical engineering

Related papers

Back to paper searchBrowse research topicsOriginal source
Behavioral synthesis methodology for HDL-based specification and validation — Research Paper | ScholarLens