Bfm memory map, Configuration space bus and device numbering, Configuration of root port and endpoint – Altera Arria 10 Avalon-MM User Manual

Page 166: Bfm memory map -16, Configuration space bus and device numbering -16, Configuration of root port and endpoint -16

Advertising
background image

• BFM Read/Write Request Functions(

altpcietb_bfm_driver_rp.v

)—These functions provide the basic

BFM calls for PCI Express read and write requests. For details on these procedures, refer to BFM Read

and Write Procedures.

• BFM Configuration Functions(

altpcietb_bfm_driver_rp.v

)—These functions provide the BFM calls to

request configuration of the PCI Express link and the Endpoint Configuration Space registers. For

details on these procedures and functions, refer to BFM Configuration Procedures.

• BFM Log Interface(

altpcietb_bfm_driver_rp.v

)—The BFM log functions provides routines for writing

commonly formatted messages to the simulator standard output and optionally to a log file. It also

provides controls that stop simulation on errors. For details on these procedures, refer to BFM Log and

Message Procedures.

• BFM Request Interface(

altpcietb_bfm_driver_rp.v

)—This interface provides the low-level interface

between the

altpcietb_bfm_rdwr

and

altpcietb_bfm_configure

procedures or functions and the

Root Port RTL Model. This interface stores a write-protected data structure containing the sizes and

the values programmed in the BAR registers of the Endpoint, as well as, other critical data used for

internal BFM management. You do not need to access these files directly to adapt the testbench to test

your Endpoint application.

• Avalon-ST Interfaces (

altpcietb_bfm_vc_intf.v

)—These interface modules handle the Root Port interface

model. They take requests from the BFM request interface and generate the required PCI Express

transactions. They handle completions received from the PCI Express link and notify the BFM request

interface when requests are complete. Additionally, they handle any requests received from the PCI

Express link, and store or fetch data from the shared memory before generating the required

completions.

Related Information

Test Signals

on page 5-19

BFM Shared Memory Access Procedures

on page 14-31

BFM Memory Map

The BFM shared memory is configured to be two MBytes. The BFM shared memory is mapped into the

first two MBytes of I/O space and also the first two MBytes of memory space. When the Endpoint applica‐

tion generates an I/O or memory transaction in this range, the BFM reads or writes the shared memory.

Configuration Space Bus and Device Numbering

The Root Port interface is assigned to be device number 0 on internal bus number 0. The Endpoint can be

assigned to be any device number on any bus number (greater than 0) through the call to procedure

ebfm_cfg_rp_ep

. The specified bus number is assigned to be the secondary bus in the Root Port Configu‐

ration Space.

Configuration of Root Port and Endpoint

Before you issue transactions to the Endpoint, you must configure the Root Port and Endpoint Configu‐

ration Space registers. To configure these registers, call the procedure

ebfm_cfg_rp_ep

, which is included

in altpcietb_bfm_configure.v.

14-16

BFM Memory Map

UG-01145_avmm

2015.05.14

Altera Corporation

Avalon-MM Testbench and Design Example

Send Feedback

Advertising