blob: 3c55c53c12002578395ae5eb233e7e8ff0d23775 [file] [log] [blame]
// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
class csrng_monitor extends dv_base_monitor #(
.ITEM_T (csrng_item),
.CFG_T (csrng_agent_cfg),
.COV_T (csrng_agent_cov)
);
`uvm_component_utils(csrng_monitor)
// the base class provides the following handles for use:
// csrng_agent_cfg: cfg
// csrng_agent_cov: cov
// uvm_analysis_port #(csrng_item): analysis_port
// item will be sent to this port when req phase is done (last is set)
uvm_analysis_port#(csrng_item) req_port;
// item will be sent to this port when rsp phase is done (rsp_done is set)
uvm_analysis_port#(csrng_item) rsp_port;
`uvm_component_new
function void build_phase(uvm_phase phase);
super.build_phase(phase);
req_port = new("req_port", this);
rsp_port = new("rsp_port", this);
endfunction
task run_phase(uvm_phase phase);
// super.run_phase(phase);
endtask
// TODO: collect_trans
endclass