% create netlist data structure % (C) 2004 by Yu Hen Hu % created 9/18/2004 % the netlist contains net and node % % net(n): n=1:nnet nnet: # of nets % net(n).nodes = {vector of nodes connecting to net(i)} % % node(i): i=1:nnode % node(i).nets = {indices of nets node(i) connects to} % par0, par1: set of node indices of each partition, initially random % nnet=5; nnode=6; % # of nets and # of nodes net(1).nodes=[1 2 3]; % net m net(2).nodes=[2 3 4]; % net q net(3).nodes=[2 5]; % net k net(4).nodes=[2 6]; % net p net(5).nodes=[4 5]; % net j node(1).nets=[1]; % node c1 node(2).nets=[1 2 3 4]; % node c2 node(3).nets=[1 2]; % node c3 node(4).nets=[2 5]; % node c4 node(5).nets=[3 5]; % node c5 node(6).nets=[4]; par0=[1 2 3]; par1=[4 5 6]; % parameters for maintaining balance of partition % s(i): size of node i, smax=maximum of s(i), % Vsize = |V| = sum(s) s=[3 2 4 1 3 5]; smax=max(s); Vsize=sum(s); % |V| r=0.4; % tolerance factor