blob: b7cda25505a3d76f7dd94276464ee67592943893 [file] [log] [blame] [view]
---
title: "PUSH_PULL UVM Agent"
---
PUSH_PULL UVM Agent is extended from DV library agent classes.
## Description
This agent implements both Push (ready/valid) and Pull (req/ack) interface
protocols, and can be configured to behave in both host and device modes.
The agent configuration object (`push_pull_agent_cfg`) contains an enum `agent_type`
that is used to select either push or pull modes.
To configure the agent to use the ready/valid protocol, set `agent_type = PushAgent`, and
to configure the agent to use the req/ack protocol, set `agent_type = PullAgent`.