Verification of dataflow scheduling

Tsung Hsi Chiang*, Lan-Rong Dung

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

Abstract

This paper presents the formal verification method for high-level synthesis (HLS) to detect design errors of dataflow algorithms by using Petri Net (PN) and symbolic-model-verifier (SMV) techniques. Formal verification in high-level design means architecture verification, which is different from functional verification in register transfer level (RTL). Generally, dataflow algorithms need algorithmic transformations to achieve optimal goals and also need design scheduling to allocate processor resources before mapping on a silicon. However, algorithmic transformations and design scheduling are error-prone. In order to detect high-level faults, high-level verification is applied to verify the synthesis results in HLS. Instead of applying Boolean algebra in traditional verification, this paper adopts both Petri Net theory and SMV model checker to verify the correctness of the synthesis results of the high-level dataflow designs. In the proposed hybrid verification method, a high-level design or DUV (design-under-verification) is first transformed into a Petri Net model. Then, Petri Net theory is applied to check the correctness of its algorithmic transformations of HLS, and the SMV model checker is used to verify the correctness of the design scheduling. We presented two approaches to realize the proposed verification method and concluded the best one who outperforms the other in terms of processing speed and resource usage.

Original languageEnglish
Pages (from-to)737-758
Number of pages22
JournalInternational Journal of Software Engineering and Knowledge Engineering
Volume18
Issue number6
DOIs
StatePublished - 1 Sep 2008

Keywords

  • Dataflow
  • Formal verification
  • High-level synthesis
  • Model checking
  • Petri net

Fingerprint Dive into the research topics of 'Verification of dataflow scheduling'. Together they form a unique fingerprint.

Cite this