This following design lead to a combinational cycle :
// In place array sum rediction
unit main(output uint8 leds)
{
int16 X[8]={1,2,3,4,5,6,7,8};
algorithm
{
X[0] = X[0] + X[4];
X[1] = X[1] + X[5];
X[2] = X[2] + X[6];
X[3] = X[3] + X[7];
++:
X[0] = X[0] + X[2];
X[1] = X[1] + X[3];
++:
X[0] = X[0] + X[1];
__display("%d",X[0]);
}
}
This following design lead to a combinational cycle :