Altera Arria 10 Avalon-ST User Manual

Page 151

Advertising
background image

Figure 9-1: MSI Handler Block

MSI Handler

Block

app_msi_req

app_msi_ack

app_msi_tc[2:0]

app_msi_num[4:0]

pex_msi_num

app_int_sts

cfg_msicsr[15:0]

The following figure illustrates a possible implementation of the MSI handler block with a per vector

enable bit. A global Application Layer interrupt enable can also be implemented instead of this per vector

MSI.

Figure 9-2: Example Implementation of the MSI Handler Block

app_int_en0

app_int_sts0

app_msi_req0

app_int_en1

app_int_sts1

app_msi_req1

app_int_sts

MSI

Arbitration

msi_enable & Master Enable

app_msi_req

app_msi_ack

Vector 1

Vector 0

IRQ

Generation

App Layer

IRQ

Generation

App Layer

R/W

R/W

There are 32 possible MSI messages. The number of messages requested by a particular component does

not necessarily correspond to the number of messages allocated. For example, in the following figure, the

Endpoint requests eight MSIs but is only allocated two. In this case, you must design the Application

Layer to use only two allocated messages.

9-2

MSI Interrupts

UG-01145_avst

2015.05.04

Altera Corporation

Interrupts

Send Feedback

Advertising