By Topic

Functional-Level Hardware Simulation with Pull-Model Data Flow

Sign In

Cookies must be enabled to login.After enabling cookies , please use refresh or reload or ctrl+f5 on the browser for the login options.

Formats Non-Member Member
$33 $13
Learn how you can qualify for the best price for this item!
Become an IEEE Member or Subscribe to
IEEE Xplore for exclusive pricing!
close button

puzzle piece

IEEE membership options for an individual and IEEE Xplore subscriptions for an organization offer the most affordable access to essential journal articles, conference papers, standards, eBooks, and eLearning courses.

Learn more about:

IEEE membership

IEEE Xplore subscriptions

3 Author(s)
George Riley ; Dept. of Electr. & Comput. Eng., Georgia Inst. of Technol., Atlanta, GA, USA ; Brian Hayes ; Elizabeth Lynch

Digital hardware designs are nearly always tested and validated prior to deployment using functional-level simulation. Each component of the design, such as a four-bit adder or an eight-to-one multiplexer, is described and modeled as a set of inputs and a set of outputs that change based on changes in the input. Using traditional discrete event simulation, each change in the input set for a component would result in future events being scheduled for each input connected to the component's output. These future events would represent the changed inputs and speed-of-light delays between an output and the corresponding input. Further, some components might respond to clock-tick events that allow for synchronous actions, such as the latching of a bit in a single flip-flop, which results in a changed output only during a specific clock event. We discuss a different approach to functional-level modeling that we call the Pull-Model. In this approach, components do not schedule events to notify other components of input data changes. Rather, each component queries other components asking for the current output value, and does so only when the value is actually needed to model the data flow at that time. We show that this approach significantly reduces the number of events, even when modeling a very simple CPU architecture with only a few components.

Published in:

Principles of Advanced and Distributed Simulation (PADS), 2010 IEEE Workshop on

Date of Conference:

17-19 May 2010