Visible to Intel only — GUID: nik1410905525376
Ixiasoft
Visible to Intel only — GUID: nik1410905525376
Ixiasoft
4.4. BAR Hit Signals
The IP core contains logic that determines which BAR corresponds to a particular TLP for the following types of transactions: memory reads, memory writes and Atomic Ops. This information is sent out via the rx_st_bar_range[2:0] outputs. User application logic can leverage this information to know what BAR the transactions going across the Avalon-ST RX interface are targeting.
Signal |
Direction |
Description |
---|---|---|
rx_st_mask | Input | The Application Layer asserts this signal to tell the Hard IP to stop sending non-posted requests. This signal can be asserted at any time. Up to 10 non-posted requests that can be transferred to the Application Layer after rx_st_mask is asserted. This signal stalls only non-posted TLPs. All others continue to be forwarded to the Application Layer. The stalled non-posted TLPs are held in the RX buffer until the mask signal is deasserted. They are not discarded. If used in a Root Port mode, asserting the rx_st_mask signal stops all I/O and MemRd and configuration accesses because these are all non-posted transactions. |
rx_st_bar_hit_tlp0[7:0] rx_st_bar_hit_tlp1[7:0] |
Output |
Identifies the matching BAR for the TLP driven on the Avalon-ST RX interface. Valid for MRd, MWr and Atomic Op TLPs. rx_st_bar_hit_tlp<n>[7:0] should be ignored for all other TLPs. Valid in the first cycle of a TLP, when rx_st_valid_app and any bit of rx_st_sop_app are asserted. rx_st_bar_hit_tlp0 applies to the TLP that starts on bits [127:0] . rx_st_bar_hit_tlp1 applies to the TLP that starts on bits [255:128]. The following encodings are defined:
When rx_st_bar_hit_tlp0 orrx_st_bar_hit_tlp1 indicates the address of a PF, the BAR number above should be interpreted as a PF BAR. When rx_st_bar_hit_tlp0 orrx_st_bar_hit_tlp1provides the address of a VF (indicating a VF hit), the BAR number should be interpreted as a VF BAR. These signals are required to support multiple packets per cycle. The SR-IOV implementation does not support multiple packets per cycle. Consequently, these signals are not used. |
rx_st_bar_hit_fn_tlp0[7:0] rx_st_bar_hit_fn_tlp1[7:0] |
output |
Identifies the Function number that was hit by a TLP driven on the Avalon-ST RX interface. These outputs are valid for MRd, MWr and Atomic Op TLPs. Theses and are to be ignored for all other TLPs. rx_st_bar_hit_fn_tlp<n> is valid in the first cycle of a TLP, when rx_st_valid_app and any bit of rx_st_sop_app are asserted. rx_st_bar_hit_fn_tlp0[7:0] applies to the TLP that starts on bits [127:0]. rx_st_bar_hit_fn_tlp1[7:0] applies to the TLP that starts on bits [255:128]. |