OpenCores
URL https://opencores.org/ocsvn/bluespec_md6/bluespec_md6/trunk

Subversion Repositories bluespec_md6

[/] [bluespec_md6/] [trunk/] [lib/] [bsv/] [Stats/] [Min/] [src/] [Min.bsv] - Rev 7

Compare with Previous | Blame | View Log

import Register::*;

interface Min#(type data_t);
  interface ReadOnly#(data_t) min;
  method Action inputSample(data_t sample);
endinterface

module mkMin (Min#(data_t))
  provisos (Bits#(data_t,data_sz),
            Ord#(data_t),
            Bounded#(data_t));

  Reg#(data_t) result <- mkReg(maxBound);

  interface min = readOnly(result._read);

  method Action inputSample(data_t sample);
    if(sample < result)
      begin
        result <= sample;
      end
  endmethod
endmodule

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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