title: Verilog - Floating points multiplication
body: <p>We have a problem with Verilog.
  We have to use multiplication with two floating points(binary), but it doesn't work 100% perfectly.</p>
  
  <p>We have a Req m[31:0]. The first numbers (before the comma) are m[31:16] and the numbers after comma m[15:0] so we have like:</p>
  
  <p>m[31:16] = 1000000000000000;
  m[15:0] = 1000000000000000;</p>
  
  <p>m[31:0] = 10000000000000000(.)1000000000000000;</p>
  
  <p>The Problem is: we want to multiplicate numbers with decimal places, but we don't know how.
  For example: m = 2.5 in binary. The result of m*m is 6.25.</p>