anchor.diff:     interface DmaMatrixMultiplyDebug debug;
   endinterface
         
  -module  mkDramMatrixMultiply#(HostType host)(DramMatrixMultiply#(N,TMul#(N,32),2));
  +module  mkDramMatrixMultiply#(HostType host)(DramMatrixMultiply#(N,TMul#(N,32)));
   
      MemwriteEngineV#(TMul#(N,32),2, J)   writeEngine <- mkMemwriteEngine();
      MemReader#(TMul#(N,32))                rowReader <- mkMemReader;
  
positive.code:    interface MmRequestTN mmRequest;
     interface MmDebugRequest mmDebug;
     interface TimerRequest timerRequest;
     interface Vector#(NumberOfMasters, ObjectReadClient#(TMul#(32,n)))  readClients;
     interface Vector#(NumberOfMasters, ObjectWriteClient#(TMul#(32,n))) writeClients;
  endinterface
  
  module  mkMmTN#(MmIndication ind, TimerIndication timerInd, MmDebugIndication mmDebugIndication, HostType host)(MmTN#(N))
  
negative.code:     endinterface
  endmodule : mkDmaMatrixMultiply
  
  interface DramMatrixMultiply#(numeric type n, numeric type dmasz);
     interface Vector#(2, ObjectReadClient#(dmasz)) readClients;
     interface Vector#(2, ObjectWriteClient#(dmasz)) writeClients;
     method Action start(ObjectPointer pointerA, UInt#(MMSize) numRowsA, UInt#(MMSize) numColumnsA,
  		       ObjectPointer pointerB, UInt#(MMSize) numRowsB, UInt#(MMSize) numColumnsB,
  		       ObjectPointer pointerC,
  