Criterion to choose length of an accumulator and product I am designing an IIR filter with fixed-point arithmetic and I have to select the proper length for the accumulator and product. I would like to know a standard to follow in order to choose its length. I have selected the Direct Form 1 topology to implement a 6th order digital filter (instead of a cascaded second-order block), as it has only only one point where the sum is done and thus only one point which has to be taken care of when considering quantification error and overflow (correct me if I am wrong!).

For the ACCUMULATOR, I assume that I have to consider the worst case of summing numbers with N bits, so the answer should be N+M bits to avoid overflow, where M represents the quantity of numbers which it is summed. 

For the PRODUCT, multiplying two numbers of N bits, in the worst scenario gives us a N+N=2N bits result.

I don't know if it is this easy or if I am skipping an important concept. 

If you have experience in this field, any documentation about designing IIR filters on microcontrollers will be welcomed.
Fixed point processing is very difficult. Floating point is A LOT easier. 
The best algorithm and scaling approach depends a lot on your specific filter and the statistics of your signal. There is no "one size fits all" solution.
Cascaded second order sections are almost always the way to go. Primarily they guarantee that your coefficients values are bounded to something reasonable (2 or less). With transfer function implementation the coefficients tend to get really large or really small wich generates a lot of noise or scaling problems.
Within each section, use either Direct Form I or Transposed Form II. This helps controlling the scaling of the state variables and intermediate result
The best way to approach this to use "Q notation" https://en.wikipedia.org/wiki/Q_(number_format) to determine for EVERY SINGLE operation, which bits to use for what purpose. Doing this analysis will determine which bits to compute and which bits to keep (using multiplies, shifts, adds and masks).
Sometimes you need to treat this as a statistical problem. In many cases doing conservative scaling results in very poor signal to noise ratio, so you need to trade off the probability of clipping versus your steady state signal to noise. That's highly dependent on your signal, the specific filter and the requirements of your application.
You also need to carefully control your clipping and rounding behavior to avoid wrap-arounds and limit cycles.