Hi Rfboy,
you should have two identical filters, one for I and one for Q. The values in the delay line are two bits wide (b1, b0) but they respresent numerical values that are , for instance:
b1 b0
11 => -3
10 => -1
00 => +1
01 => +3
If the coefficients are N bits, you would need in principle multipliers of N bits by 3 bits, because 3 bits are needed for represent the values from -3 to +3.
But it is possible to use a simpler logic instead of general multipliers. For instance, if the assignment between bits and values is as in the table above, the logic of multiplying the coefficient C by the datum (b1,b0) contained in a tap of the delay line would be:
R=C;
if b0==1 then R=R+2*C (i.e. add C shifted one place towards MSB)
if b1==1 then change the sign of R
Regards
Z