beautypg.com

Altera Embedded Peripherals IP User Manual

Page 190

background image

Table 20-3: Transaction Supported

Transaction

Code

Avalon-MM Transaction

Description

0x00

Write, non-incrementing

address.

Writes data to the given address until the total number of

bytes written to the same word address equals to the

value specified in the

size

field.

0x04

Write, incrementing address. Writes transaction data starting at the given address.

0x10

Read, non-incrementing

address.

Reads 32 bits of data from the given address until the

total number of bytes read from the same address equals

to the value specified in the

size

field.

0x14

Read, incrementing address. Reads the number of bytes specified in the

size

field

starting from the given address.

0x7f

No transaction.

No transaction is initiated. You can use this transaction

type for testing purposes. Although no transaction is

initiated on the Avalon-MM interface, the core still

returns a response packet for this transaction code.

The core can handle only a single transaction at a time. The

ready

signal on the core's Avalon-ST sink

interface is asserted only when the current transaction is completely processed.
No internal buffer is implemented on the data paths. Data received on the Avalon-ST interface is

forwarded directly to the Avalon-MM interface and vice-versa. Asserting the

waitrequest

signal on the

Avalon-MM interface backpressures the Avalon-ST sink interface. In the opposite direction, if the

Avalon-ST source interface is backpressured, the

read

signal on the Avalon-MM interface is not asserted

until the backpressure is alleviated. Backpressuring the Avalon-ST source in the middle of a read could

result in data loss. In such cases, the core returns the data that is successfully received.
A transaction is considered complete when the core receives an EOP. For write transactions, the actual

data size is expected to be the same as the value of the

size

field. Whether or not both values agree, the

core always uses the EOP to determine the end of data.

Malformed Packets

The following are examples of malformed packets:
• Consecutive start of packet (SOP)—An SOP marks the beginning of a transaction. If an SOP is

received in the middle of a transaction, the core drops the current transaction without returning a

response packet for the transaction, and initiates a new transaction. This effectively handles packets

without an end of packet(EOP).

• Unsupported transaction codes—The core treats unsupported transactions as a no transaction.

UG-01085

2014.24.07

Operation

20-3

Avalon Packets to Transactions Converter Core

Altera Corporation

Send Feedback