Udi Jonnalagadda | 795235d | 2020-08-18 11:35:42 -0700 | [diff] [blame] | 1 | # PUSH_PULL UVM Agent |
| 2 | |
| 3 | PUSH_PULL UVM Agent is extended from DV library agent classes. |
| 4 | |
| 5 | ## Description |
| 6 | |
| 7 | This agent implements both Push (ready/valid) and Pull (req/ack) interface |
| 8 | protocols, and can be configured to behave in both host and device modes. |
| 9 | |
| 10 | The agent configuration object (`push_pull_agent_cfg`) contains an enum `agent_type` |
| 11 | that is used to select either push or pull modes. |
| 12 | To configure the agent to use the ready/valid protocol, set `agent_type = PushAgent`, and |
| 13 | to configure the agent to use the req/ack protocol, set `agent_type = PullAgent`. |