A Multiway Design-driven Partitioning Algorithm for Distributed Verilog Simulation

  • Authors:
  • Lijun Li;Carl Tropper

  • Affiliations:
  • School of Computer Science McGill University Montreal,Canada;School of Computer Science McGill University Montreal,Canada

  • Venue:
  • Simulation
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Many partitioning algorithms have been proposed for distributed Very-large-scale integration (VLSI) simulation. Typically, they make use of a gate level netlist and attempt to achieve a minimal cutsize subject to a load balance constraint. The algorithm executes on a hypergraph which represents the netlist. We propose a design-driven iterative partitioning algorithm for Verilog based on module instances instead of gates. We do this in order to take advantage of the design hierarchy information contained in the modules and their instances. A Verilog instance represents one vertex in the circuit hypergraph. The vertex can be flattened into multiple vertices in the event that a load balance is not achieved by instance-based partitioning. In this case, the algorithm flattens the largest instance and moves gates between the partitions in order to improve the load balance. Our experiments show that this partitioning algorithm produces a smaller cutsize than is produced by hMetis on a gate-level netlist. It produces better speedup for the simulation because it takes advantage of the design hierarchy.