Embedded Peripherals IP User Guide

ID 683130
Date 10/24/2025
Public
Document Table of Contents
1. Introduction 2. Avalon® -ST Serial Peripheral Interface Core 3. SPI Core 4. SPI Agent/JTAG to Avalon® Host Bridge Cores 5. Intel eSPI Agent Core 6. eSPI to LPC Bridge Core 7. Ethernet MDIO Core 8. Intel FPGA 16550 Compatible UART Core 9. UART Core 10. Lightweight UART Core 11. JTAG UART Core 12. Intel FPGA Avalon® Mailbox Core 13. Intel FPGA Avalon® Mutex Core 14. Intel FPGA Avalon® I2C (Host) Core 15. Intel FPGA I2C Agent to Avalon® -MM Host Bridge Core 16. EPCS/EPCQA Serial Flash Controller Core 17. Intel FPGA Serial Flash Controller Core 18. Intel FPGA Serial Flash Controller II Core 19. Intel FPGA Generic QUAD SPI Controller Core 20. Intel FPGA Generic QUAD SPI Controller II Core 21. Interval Timer Core 22. Intel FPGA Avalon FIFO Memory Core 23. On-Chip Memory (RAM and ROM) Intel FPGA IP 24. On-Chip Memory II (RAM or ROM) Intel FPGA IP 25. PIO Core 26. PLL Cores 27. DMA Controller Core 28. Modular Scatter-Gather DMA Core 29. Scatter-Gather DMA Controller Core 30. Video Sync Generator and Pixel Converter Cores 31. Intel FPGA Interrupt Latency Counter Core 32. Performance Counter Unit Core 33. Vectored Interrupt Controller Core 34. System ID Peripheral Core 35. Intel FPGA GMII to RGMII Converter Core 36. HPS GMII to RGMII Adapter IP 37. Intel FPGA MII to RMII Converter Core 38. HPS GMII to TSE 1000BASE-X/SGMII PCS Bridge Core IP 39. Intel FPGA HPS EMAC to Multi-rate PHY GMII Adapter Core 40. Intel FPGA MSI to GIC Generator Core 41. Cache Coherency Translator IP 42. Altera ACE5-Lite Cache Coherency Translator

28.5.4. Prefetcher Enabled Mode Interface

The following describes the interfaces that are applicable only when Prefetcher is enabled.

Avalon® -MM Read Descriptor Interface (descriptor_read_master)

This interface is used to fetch descriptors in memory. It supports non-burst or burst mode which is configurable based on parameter Enable bursting on descriptor read master during generation time.
Table 347.   Avalon® -MM Read Descriptor
Signal Role Direction Type Description
descriptor_read_master_address [FIX_ADDRESS_WIDTH-1:0] Output Avalon® Memory-Mapped Host

Indicates the address of the descriptor to fetch.

Note: The address width is configurable based on parameter FIX_ADDRESS_WIDTH only when parameter USE_FIX_ADDRESS_WIDTH is enabled. If USE_FIX_ADDRESS_WIDTH = 0, the address width is automatically fixed to 32-bit width.
descriptor_read_master_read Output Indicates descriptor read transfer.
descriptor_read_master_burstcount [log2(PREFETCHER_MAX_READ_BURST_COUNT):0] Output

Indicate the number of read transfers in each burst.

The maximum burst count on descriptor read host is configurable during IP generation.

This signal role is applicable only when the parameter Enable bursting on descriptor read host is turned on.

descriptor_read_master_readdata [PREFETCHER_DATA_WIDTH-1:0] Input

Data in response to the descriptor read request.

Refer to the Descriptor Format (with Prefetcher Enabled) section for data definition. Data width is configurable based on parameter PREFETCHER_DATA_WIDTH during IP generation.

descriptor_read_master_readdatavalid Input Avalon® -MM read data valid indication.
descriptor_read_master_waitrequest Input

Avalon® -MM wait request for backpressure control. An agent asserts waitrequest when unable to respond to the read request.

Avalon® -MM Write Descriptor Interface (descriptor_write_master)

This interface is used to perform descriptor write back to memory.
Table 348.   Avalon® -MM Write Descriptor
Signal Role Direction Type Description
descriptor_write_master_address [FIX_ADDRESS_WIDTH-1:0] Output Avalon® Memory-Mapped Host

Indicates the address of the descriptor to perform write back.

Note: The address width is configurable based on parameter FIX_ADDRESS_WIDTH only when parameter USE_FIX_ADDRESS_WIDTH is enabled. If USE_FIX_ADDRESS_WIDTH = 0, the address width is automatically fixed to 32-bit width.

descriptor_write_master_write Output Indicates descriptor write transfer.

descriptor_write_master_byteenable

[PREFETCHER_DATA_WIDTH/8-1:0]

Output Enable the byte lanes during descriptor write transfer.
descriptor_write_master_writedata [PREFETCHER_DATA_WIDTH-1:0] Output Data of the descriptor write back. Refer to the Responder Descriptor Format (with Prefetcher Enabled) section for data definition. Data width is configurable based on parameter PREFETCHER_DATA_WIDTH during IP generation.
descriptor_write_master_response [1:0] Input Response status for the descriptor write transaction.
descriptor_write_master_writeresponsevalid Input When asserted, the value on the response signal is a valid write response.
descriptor_write_master_waitrequest Input Avalon® -MM wait request for backpressure control. An agent asserts waitrequest when unable to respond to the write request.

Avalon® -MM CSR Interface (prefetcher_csr)

This interface is used to access the Prefetcher CSR registers. This interface is word-addressing and read/write accessible with 32-bits wide. It has fixed write and read wait time of 0 cycles and read latency of 1 cycle.
Table 349.   Avalon® -MM CSR
Signal Name Direction Type Description
prefetcher_csr_address [2:0] Input Avalon® Memory-Mapped Agent The read or write address to access prefetcher CSR.
prefetcher_csr_write Input Write access to the prefetcher CSR.
prefetcher_csr_writedata [31:0] Input Data for write transfer to the prefetcher CSR.
prefetcher_csr_read Input Read access to the prefetcher CSR.
prefetcher_csr_readdata [31:0] Output Data in response to the read access of the prefetcher CSR.

Avalon® -ST Response Source Interface (response_source)

This interface provides user with the response information from the dispatcher block upon completion of each descriptor execution. User could amend the bit [255-160] for sideband information and propagate the response information back to the Prefetcher via Avalon® ST Response Sink interface. Both Avalon® -ST Response Source and Response Sink interfaces are applicable only when Expose response port to enable sideband support parameter is enabled.
Table 350.   Avalon® -ST Response Source Interface
Signal Name Direction Type Description
response_source_ready Input Avalon® Streaming Source Indicates that the sink can accept response data when ready is asserted high.
response_source_valid Output Indicates that the response data from the dispatcher is valid.

response_source_data

[255:0]

Output Indicates the response data transfer from dispatcher to user’s Avalon® -ST sink interface.
The following table shows the response data bits and their description.
Table 351.  Response Source Data Bit Fields
Signal Name Description
31 - 0 Actual bytes transferred [31:0]0
39 - 32 Error [7:0]0
40 Early termination0
41 Transfer complete IRQ mask0
49 - 42 Error IRQ mask0/0
50 Early termination IRQ mask0/0
51 Descriptor buffer full0
159 - 52 Reserved
255 - 160 Reserved for sideband signal (e.g. timestamp) to be amend by user when “Expose response port to enable sideband support” parameter is enabled
The following list explains each of the fields:
  • Actual bytes transferred—determines how many bytes transferred when the mSGDMA is configured in Avalon® -ST to Avalon® -MM mode with packet support enabled. Since packet transfers are terminated by the IP providing the data, this field counts the number of bytes between the start-of-packet (SOP) and end-of- packet (EOP) received by the write host. If the early termination bit of the response is set, then the actual bytes transferred is an underestimate if the transfer is unaligned.
  • Error—determines if any errors were issued when the mSGDMA is configured in Avalon® -ST to Avlaon-MM mode with error support enabled. Each error bit is persistent so that errors can accumulate throughout the transfer.
  • Early Termination—determines if a transfer terminates because the transfer length is exceeded when the mSGDMA is configured in Avalon® -ST to Avalon® -MM mode with packet support enabled. This bit is set when the number of bytes transferred exceeds the transfer length set in the descriptor before the end-of-packet is received by the write host.

Avalon® -ST Response Sink Interface (response sink)

This interface is used by the Prefetcher core to retrieve response information from dispatcher’s core and sideband information from user upon each transfer completion. This interface is applicable only when Expose response port to enable sideband support parameter is enabled.
Table 352.   Avalon® -ST Response Sink
Signal Role Direction Type Description
response_sink_ready Output Avalon® Streaming Sink

Avalon-ST ready control. Used by the Prefetcher core to back pressure the external Avalon-ST response source.

response_sink_valid Input

Avalon® -ST valid control. Indicates that the response data from the source is valid. Prefetcher core expects valid signal to remain high while the bus is being back pressured.

response_sink_data [255:0] Input

Avalon® -ST response data bus from user’s Avalon-ST source interface to Prefetcher. Refer to response sink data definition in the table below.

Prefetcher core expects data signals to remain constant while the bus is being back pressured.

Streaming interface (ST) data bus format and definition:
Table 353.   Avalon® -ST Response Sink Data Format and Definition
Bits Signal Information
[31:0] Actual bytes transferred [31:0]
[39:32] Error [7:0]
40 Early termination
41 Transfer complete IRQ mask
[49:42] Error IRQ mask
50 Early termination IRQ mask
51 Descriptor buffer full
[159:52] Reserved
[255:160]

Reserved / sideband signal (e.g. timestamp)

Note: Sideband signal is applicable only when Expose response port to enable sideband support parameter is enabled
The following list explains each of the fields:
  • Actual bytes transferred—determines how many bytes transferred when the mSGDMA is configured in Avalon® -ST to Avalon® -MM mode with packet support enabled. Since packet transfers are terminated by the IP providing the data, this field counts the number of bytes between the start-of-packet (SOP) and end-of- packet (EOP) received by the write host. If the early termination bit of the response is set, then the actual bytes transferred is an underestimate if the transfer is unaligned.
  • Error—determines if any errors were issued when the mSGDMA is configured in Avalon® -ST to Avalon® -MM mode with error support enabled. Each error bit is persistent so that errors can accumulate throughout the transfer.
  • Early Termination—determines if a transfer terminates because the transfer length is exceeded when the mSGDMA is configured in Avalon® -ST to Avalon® -MM mode with packet support enabled. This bit is set when the number of bytes transferred exceeds the transfer length set in the descriptor before the end-of-packet is received by the write host.

IRQ Interface (csr_irq)

When the Prefetcher is enabled, IRQ generation no longer outputs from the dispatcher’s core. It will be outputted from the Prefetcher core. The sources of the interrupt remain the same which are transfer completion, early termination (applicable only for Streaming to Memory-Mapped configuration), and error detection (applicable only for Streaming to Memory-Mapped configuration). Masking bits for each of the interrupt sources are programmed in the descriptor. This information will be passed to the Prefetcher core through the ST response interface from dispatcher. An equivalent global interrupt enable mask and IRQ status bit which are defined in dispatcher core are now defined in the Prefetcher core as well. These two bits need to be defined in the Prefetcher core since the actual IRQ register is now located in the Prefetcher core. When the Prefetcher is enabled, software shall use the global interrupt enable mask bit and IRQ bit in the Prefetcher CSR.

Upon receiving the interrupt assertion from mSGDMA IP, the software should poll for the STATUS register. The IRQ status bit is set by hardware and cleared by software. To clear this bit, software needs to write a 1 to this bit. The IRQ status bit is set when a hardware event has a higher priority than a clear by a software event.
Table 354.  IRQ Interface
Signal Name Direction Type Description
csr_irq_irq Output Interrupt sender Indicates the interrupt event occurrence. This signal remains asserted as long as the irq bit of the Prefetcher Status register is still asserted and not cleared by software.