OpenCores
URL https://opencores.org/ocsvn/bluespec-h264/bluespec-h264/trunk

Subversion Repositories bluespec-h264

[/] [bluespec-h264/] [trunk/] [src/] [mkDeblockFilter.bsv] - Diff between revs 19 and 36

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 19 Rev 36
Line 955... Line 955...
            tc0 = tc0MbTop;
            tc0 = tc0MbTop;
         end
         end
      else
      else
         begin
         begin
            // We read this value from the original vector
            // We read this value from the original vector
            tempV <- workVectorCols.sub({blockHor, columnNumber});
            tempV <- topVector.sub({blockHor, columnNumber});
            $display( "TRACE Deblocking Filter: vertical P (work) addr %h, orig data %h ",{blockHor, blockVer - 1, columnNumber}, tempV);
            $display( "TRACE Deblocking Filter: vertical P (work) addr %h, orig data %h ",{blockHor, blockVer - 1, columnNumber}, tempV);
            alpha = alphaInternal;
            alpha = alphaInternal;
            beta = betaInternal;
            beta = betaInternal;
            tc0 = tc0Internal;
            tc0 = tc0Internal;
         end
         end
Line 1024... Line 1024...
         end
         end
 
 
        $display( "TRACE Deblocking Filter: vertical P                 data %h                     ",  resultV[31:0]);
        $display( "TRACE Deblocking Filter: vertical P                 data %h                     ",  resultV[31:0]);
        $display( "TRACE Deblocking Filter: vertical Q (work) addr %h, data %h, original data: %h  ",{blockHor,blockVer,columnNumber}, resultV[63:32], workV);
        $display( "TRACE Deblocking Filter: vertical Q (work) addr %h, data %h, original data: %h  ",{blockHor,blockVer,columnNumber}, resultV[63:32], workV);
 
 
        workVectorCols.upd({blockHor,columnNumber}, resultV[63:32]);
        topVector.upd({blockHor,columnNumber}, resultV[63:32]);
  endrule
  endrule
end
end
 
 
  rule vertical_cleanup(verticalState == VerticalCleanup);
  rule vertical_cleanup(verticalState == VerticalCleanup);
    $display( "TRACE Deblocking Filter: vertical_cleanup at block end column: %d ", columnNumber);
    $display( "TRACE Deblocking Filter: vertical_cleanup at block end column: %d ", columnNumber);
Line 1044... Line 1044...
        if(columnNumber == 0)
        if(columnNumber == 0)
          begin
          begin
            // Horizontal Postion is 3, but vertical position is 0, owing to subtraction in the rotation unit
            // Horizontal Postion is 3, but vertical position is 0, owing to subtraction in the rotation unit
            columnToRowStoreBlock.enq(tuple2({blockVer[1],blockHor[1],blockVer[0],blockHor[0]},1'b0));
            columnToRowStoreBlock.enq(tuple2({blockVer[1],blockHor[1],blockVer[0],blockHor[0]},1'b0));
          end
          end
        Bit#(32) w_data <- workVectorCols.sub({blockHor, columnNumber});
        Bit#(32) w_data <- topVector.sub({blockHor, columnNumber});
        columnToRowStore[columnNumber].enq(w_data);
        columnToRowStore[columnNumber].enq(w_data);
     end
     end
   else
   else
     begin
     begin
       Bit#(2) blockHor = blockHorVerticalCleanup;
       Bit#(2) blockHor = blockHorVerticalCleanup;
Line 1056... Line 1056...
       if(columnNumber == 0)
       if(columnNumber == 0)
         begin
         begin
           // Horizontal Postion is 3, but vertical position is 0, owing to subtraction in the rotation unit
           // Horizontal Postion is 3, but vertical position is 0, owing to subtraction in the rotation unit
           columnToRowStoreBlock.enq(tuple2({blockVer[1],blockHor[1],blockVer[0],blockHor[0]},1'b0));
           columnToRowStoreBlock.enq(tuple2({blockVer[1],blockHor[1],blockVer[0],blockHor[0]},1'b0));
         end
         end
       Bit#(32) w_data <- workVectorCols.sub({blockHor, columnNumber});
       Bit#(32) w_data <- topVector.sub({blockHor, columnNumber});
       columnToRowStore[columnNumber].enq(w_data);
       columnToRowStore[columnNumber].enq(w_data);
     end
     end
  endrule
  endrule
 
 
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.