MNL Avalon Spec o
MNL Avalon Spec o
Contents
Altera Corporation
                                                                                                                                                           TOC-3
A. Deprecated Signals.........................................................................................A-1
                                                                                                                                             Altera Corporation
        2015.03.04
                                                               Introduction to the Avalon Interface
                                                                                     Specifications                                                                     1
       MNL-AVABUSREF                             Subscribe                Send Feedback
                Avalon® interfaces simplify system design by allowing you to easily connect components in an Altera®
                FPGA. The Avalon interface family defines interfaces appropriate for streaming high-speed data, reading
                and writing registers and memory, and controlling off-chip devices. These standard interfaces are
                designed into the components available in Qsys. You can also use these standardized interfaces in your
                custom components. By using these standard interfaces, you enhance the interoperability of your designs.
                This specification defines all of the Avalon interfaces. After reading it, you should understand which
                interfaces are appropriate for your components and which signal roles to use for particular behaviors.
                This specification defines the following seven interfaces:
                • Avalon Streaming Interface (Avalon-ST)—an interface that supports the unidirectional flow of data,
                  including multiplexed streams, packets, and DSP data.
                • Avalon Memory Mapped Interface (Avalon-MM)—an address-based read/write interface typical of
                  master–slave connections.
                • Avalon Conduit Interface— an interface type that accommodates individual signals or groups of
                  signals that do not fit into any of the other Avalon types. You can connect conduit interfaces inside a
                  Qsys system. Or, you can export them to make connections to other modules in the design or to FPGA
                  pins.
                • Avalon Tri-State Conduit Interface (Avalon-TC) —an interface to support connections to off-chip
                  peripherals. Multiple peripherals can share pins through signal multiplexing, reducing the pin count of
                  the FPGA and the number of traces on the PCB.
                • Avalon Interrupt Interface—an interface that allows components to signal events to other components.
                • Avalon Clock Interface—an interface that drives or receives clocks.
                • Avalon Reset Interface—an interface that provides reset connectivity.
                A single component can include any number of these interfaces and can also include multiple instances of
                the same interface type. For example, in the first figure below, the Ethernet Controller includes the
                following six different interface types:
                •    Avalon-MM
                •    Avalon-ST
                •    Avalon Conduit
                •    Avalon-TC
                •    Avalon Interrupt
                •    Avalon Clock.
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                                                                                                        MNL-AVABUSREF
     1-2       Introduction to the Avalon Interface Specifications                                                                                                                                           2015.03.04
               Note: Avalon interfaces are an open standard. No license or royalty is required to develop and sell
                     products that use, or are based on Avalon interfaces.
               The following figures illustrate the use of the Avalon interfaces in system designs.
           Figure 1-1: Avalon Interfaces in a System Design with Scatter Gather DMA Controller and Nios II
           Processor
Cn Cn Cn
                                                                                                                                                    Cn
                             Altera FPGA
                                                                                                                                         Tristate Conduit
                                                                                                                                              Bridge
                                     M                                           Cn                                                                TCS
                                              Avalon-MM Master                         Avalon Conduit
                                     S        Avalon-MM Slave                   TCM     Avalon-TC Master
                                     Src        Avalon-ST Source                TCS     Avalon-TC Slave                                            TCM
                                    Snk       Avalon-ST Sink                    CSrc    Avalon Clock Source                              Tristate Conduit
                                                                                                                                            Pin Sharer
                                                                                CSnk    Avalon Clock Sink                                    TCS         TCS
                             IRQ4
                             IRQ3          Nios II                                                                                 TCM                          TCM                       Cn
                                                            IRQ1                UART
                                                                                              IRQ2        Timer               Tristate Cntrl               Tristate Cntrl                DDR3
                                                                                                                                  SSRAM                         Flash                  Controller
                            C1                M                C1                S             C1           S           C1          S               C1            S          C2            S
Avalon-MM
                                                                                                                                                    S       M
                                                           S
                                                                                                                                                   Scatter Gather IRQ4
                                                                                                                                                        DMA
                                                     Cn             Src
                                                                           Avalon-ST                              Avalon-ST                      Snk
                                    Conduit
                                                        Ethernet                            FIFO Buffer                                                                      S        M
                                                       Controller                                                                      C2
                                                                                Avalon-ST                                                      Avalon-ST                                      IRQ3
                                                                Snk                                                                                                         Src
                                           C2                                                             FIFO Buffer                                                       Scatter Gather
                                                                                                                                                                    C2           DMA
                                                                    CSrc
                                                     CSnk PLL              C1
                                         Ref Clk                    CSrc
                                                                           C2
               In this figure, the Nios® II processor accesses the control and status registers of on-chip components using
               an Avalon-MM interface. The scatter gather DMAs send and receive data using Avalon-ST interfaces.
               Four components include interrupt interfaces serviced by software running on the Nios II processor. A
               PLL accepts a clock via an Avalon Clock Sink interface and provides two clock sources. Two components
                                                                                                                                                                                                     Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                              Introduction to the Avalon Interface Specifications                                    1-3
                include Avalon-TC interfaces to access off-chip memories. Finally, the DDR3 controller accesses external
                DDR3 memory using an Avalon Conduit interface.
          Figure 1-2: Avalon Interfaces in a System Design with PCI Express Endpoint and External Processor
                          Altera FPGA
                                                         IRQ1                        IRQ2                                             IRQ3      IRQ5
                                                                                                                                                IRQ4        External Bus
                                      Ethernet                             Custom                                      PCI Express              IRQ3
                                        MAC                                 Logic                                       Endpoint                              Protocol
                                                                                                                                                IRQ2           Bridge
                                                                                                                                                IRQ1
                          C1                M             C1                 M                               C1            M                                      M
                                                                                                                                                  C1
Avalon-MM
                                 S                               S                                  S                            S      IRQ4                      S           IRQ5
                           Tristate Cntrl                 Tristate Cntrl                         SDRAM                                                        Custom
                               SSRAM                           Flash                            Controller                     UART                            Logic
                                TCS                             TCS                                Cn
                                                                                       C1                         C2                              C2
                                            TCM         TCM
                                        Tristate Conduit
                                           Pin Sharer
                                                  TCS
                                                  TCM                                                                                                             CSrc
                                                                                                                                                       CSnk PLL          C1
                                        Tristate Conduit
                                                                                                                                      Ref Clk                     CSrc
                                             Bridge                                                                                                                      C2
                                                  Cn
Cn Cn Cn
                In the previous figure, an external processor accesses the control and status registers of on-chip
                components via an external bus bridge with an Avalon-MM interface. The PCI Express Root Port controls
                devices on the printed circuit board and the other components of the FPGA by driving an on-chip PCI
                Express Endpoint with an Avalon-MM master interface. An external processor handles interrupts from
                five components. A PLL accepts a reference clock via a Avalon Clock sink interface and provides two
                clock sources. The flash and SRAM memories use an Avalon-TC interface to share FPGA pins. Finally, an
                SDRAM controller accesses an external SDRAM memory using an Avalon Conduit interface.
         Send Feedback
                                                                                                                   MNL-AVABUSREF
     1-4       1.1 Avalon Properties and Parameters                                                                     2015.03.04
               Related Information
               • Creating a System with Qsys.
                 For an overview of the Qsys system integration tool
               • Creating Qsys Components
                 For information about creating Qsys components, composed components, and dynamic file
                 generation
               • Optimizing Qsys System Performance.
                 For information about system design, including: hierarchy, concurrency, pipelining, throughput,
                 reducing logic utilization and power consumption
                                                                                                               Send Feedback
MNL-AVABUSREF
2015.03.04                                                                            1.4 Related Documents      1-5
         Send Feedback
        2015.03.04
                                                                      Avalon Clock and Reset Interfaces
                                                                                                                                                                        2
       MNL-AVABUSREF                             Subscribe                Send Feedback
                Avalon Clock interfaces define the clock or clocks used by a component. Components can have clock
                inputs, clock outputs, or both. A phase locked loop (PLL) is an example of a component that has both a
                clock input and clock outputs.
                The following figure is a simplified illustration showing the most important inputs and outputs of a PLL
                component.
          Figure 2-1: PLL Core Clock Outputs and Inputs
                                                                       PLL Core
                                                                            altpll Megafunction
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                                       MNL-AVABUSREF
     2-2         2.2 Clock Sink Properties                                                                                                  2015.03.04
                                                                                                                                    Send Feedback
MNL-AVABUSREF
2015.03.04                                                                           2.5 Clock Source Properties      2-3
      The reset_req signal is an optional signal that you can use to prevent memory content corruption by performing
      reset handshake prior to an asynchronous reset assertion..
         Signal Role          Width    Direction        Required                         Description
          reset,                1          Input          Yes        Resets the internal logic of an interface or
          reset_n                                                    component to a user-defined state. The
                                                                     synchronous properties of the reset are defined
                                                                     by the synchronousEdges parameter.
          reset_req             1           input          No        Early indication of reset signal. When asserted
                                                                     the component is expected to prepare itself to
                                                                     be reset.
         Send Feedback
                                                                                                                  MNL-AVABUSREF
     2-4        2.8 Associated Reset Interfaces                                                                        2015.03.04
      The reset_req signal is an optional signal that you can use to prevent memory content corruption by performing
      reset handshake prior to an asynchronous reset assertion.
           Signal Role          Width         Direction      Required                        Description
           reset                 1                Output       Yes      Resets the internal logic of an interface or
           reset_n                                                      component to a user-defined state.
           reset_req             1                Output     Optional   Enables reset request generation, which is an
                                                                        early signal that is asserted before reset
                                                                        assertion. Once asserted, this cannot be
                                                                        deasserted until the reset is completed.
                                                                                                               Send Feedback
MNL-AVABUSREF
2015.03.04                                                       2.10 Reset Source Interface Properties     2-5
         Send Feedback
        2015.03.04
                                                                 Avalon Memory-Mapped Interfaces
                                                                                                                                                                        3
       MNL-AVABUSREF                             Subscribe                Send Feedback
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                                 MNL-AVABUSREF
     3-2       3.1 Introduction to Avalon Memory-Mapped Interfaces                                                                    2015.03.04
               The following figure shows a typical system, highlighting the Avalon-MM slave interface connection to
               the interconnect fabric.
                                                                            Ethernet
                                                                              PHY
                                 Avalon-MM System
                                              Processor                   Ethernet MAC         Custom Logic
                                             Avalon-MM                    Avalon-MM               Avalon-MM
                                               Master                       Master                  Master
Interconnect
                                          Flash               SRAM
                                         Memory              Memory
Avalon-MM components typically include only the signals required for the component logic.
                                                                                                                             Send Feedback
MNL-AVABUSREF
2015.03.04                                                                  3.2 Avalon Memory-Mapped Interface Signal Roles            3-3
                The 16-bit general-purpose I/O peripheral shown in the following figure only responds to write requests.
                This component includes only the slave signals required for write transfers.
                                                    Avalon-MM Peripheral
                                                                                                              Application-
                                                    writedata[15..0]                         pio_out[15..0]
                                                                              D         Q                       Specific
                                                                                                               Interface
                               Avalon-MM
                                Interface
                              (Avalon-MM            write                     CLK_EN
                             Slave Interface)
                                                    clk
                Each signal in an Avalon-MM slave corresponds to exactly one Avalon-MM signal role. An Avalon-MM
                interface can use only one instance of each signal role.
        Send Feedback
                                                                                                                    MNL-AVABUSREF
     3-4       3.2 Avalon Memory-Mapped Interface Signal Roles                                                           2015.03.04
           byteenable               2, 4, 8, 16, 32,   Master → Slave Enables specific byte lane(s) during transfers on
                                        64, 128                       interfaces of width greater than 8 bits. Each bit
           byteenable_n
                                                                      in byteenable corresponds to a byte in
                                                                      writedata and readdata. The master bit <n>
                                                                      of byteenable indicates whether byte <n> is
                                                                      being written to. During writes, byteenables
                                                                      specify which bytes are being written to. Other
                                                                      bytes should be ignored by the slave. During
                                                                      reads, byteenables indicate which bytes the
                                                                      master is reading. Slaves that simply return
                                                                      readdata with no side effects are free to ignore
                                                                      byteenables during reads. If an interface does
                                                                      not have a byteenable signal, the transfer
                                                                      proceeds as if all byteenables are asserted.
                                                                        When more than one bit of the byteenable
                                                                        signal is asserted, all asserted lanes are adjacent.
                                                                        The number of adjacent lines must be a power
                                                                        of 2. The specified bytes must be aligned on an
                                                                        address boundary for the size of the data. For
                                                                        example, the following values are legal for a 32-
                                                                        bit slave:
                                                                        •   1111 writes full 32 bits
                                                                        •   0011 writes lower 2 bytes
                                                                        •   1100 writes upper 2 bytes
                                                                        •   0001 writes byte 0 only
                                                                        •   0010 writes byte 1 only
                                                                        •   0100 writes byte 2 only
                                                                        •   1000 writes byte 3 only
                                                                        To avoid unintended side effects, Altera
                                                                        strongly recommends that you use the
                                                                        byteenable signal in systems with different
                                                                        word sizes.
           readdata                  8,16, 32, 64,     Slave → Master The readdata driven from the slave to the
                                    128, 256, 512,                    master in response to a read transfer.
                                        1024
                                                                                                                Send Feedback
MNL-AVABUSREF
2015.03.04                                                        3.2 Avalon Memory-Mapped Interface Signal Roles      3-5
         writedata                  8,16, 32, 64,   Master → Slave Data for write transfers. The width must be the
                                   128, 256, 512,                  same as the width of readdata if both are
                                       1024                        present.
                                                      Wait-State Signals
         lock                            1          Master → Slave lock ensures that once a master wins arbitra‐
                                                                   tion, it maintains access to the slave for
                                                                   multiple transactions. It is asserted coincident
                                                                   with the first read or write of a locked
                                                                   sequence of transactions. It is deasserted on the
                                                                   final transaction of a locked sequence of
                                                                   transactions. lock assertion does not guarantee
                                                                   that arbitration will be won. After the lock-
                                                                   asserting master has been granted, it retains
                                                                   grant until it is deasserted.
                                                                      A master equipped with lock cannot be a burst
                                                                      master. Arbitration priority values for lock-
                                                                      equipped masters are ignored.
        Send Feedback
                                                                                                               MNL-AVABUSREF
     3-6       3.2 Avalon Memory-Mapped Interface Signal Roles                                                      2015.03.04
Pipeline Signals
                                                                                                           Send Feedback
MNL-AVABUSREF
2015.03.04                                                3.2 Avalon Memory-Mapped Interface Signal Roles       3-7
                                                Burst Signals
         burstcount                1 – 11   Master → Slave Used by bursting masters to indicate the
                                                           number of transfers in each burst. The value of
                                                           the maximum burstcount parameter must be a
                                                           power of 2. A burstcount interface of width <n>
                                                           can encode a max burst of size 2(<n>-1). For
                                                           example, a 4-bit burstcount signal can support
                                                           a maximum burst count of 8. The minimum
                                                           burstcount is 1. The constantBurstBehavior
                                                           property controls the timing of the burstcount
                                                           signal. Bursting masters with read functionality
                                                           must include the readdatavalid signal.
                                                              For bursting masters and slaves using byte
                                                              addresses, the following restriction applies to
                                                              the width of the address:
                                                              <address_w> >= <burstcount_w>
                                                              +log2(<symbols_per_word_of_interface>).
        Send Feedback
                                                                                                                         MNL-AVABUSREF
     3-8       3.3 Interface Properties                                                                                       2015.03.04
               Related Information
               • Typical Read and Write Transfers on page 3-12
               • Read Bursts on page 3-18
               • Pipelined Read Transfer with Variable Latency on page 3-14
           burstCountUnits                        words           words,       This property specifies the units for the
                                                                 symbols       burstcount signal. For symbols, the burstcount
                                                                               value is interpreted as the number of symbols
                                                                               (bytes) in the burst. For words, the burstcount
                                                                               value is interpreted as the number of word
                                                                               transfers in the burst.
           burstOnBurstBoundarie-                  false         true, false   If true, burst transfers presented to this
           sOnly                                                               interface begin at addresses which are multiples
                                                                               of the burst size in bytes.
                                                                                                                      Send Feedback
MNL-AVABUSREF
2015.03.04                                                                      3.3 Interface Properties     3-9
        Send Feedback
                                                                                                         MNL-AVABUSREF
    3-10       3.3 Interface Properties                                                                       2015.03.04
                                                                                                     Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                           3.4 Timing      3-11
                Related Information
                Avalon Memory-Mapped Interface Signal Roles on page 3-3
     3.4 Timing
                The Avalon-MM interface is synchronous. Each Avalon-MM interface is synchronized to an associated
                clock interface. Signals may be combinational if they are driven from the outputs of registers that are
                synchronous to the clock signal. This specification does not dictate how or when signals transition
                between clock edges. Timing diagrams are devoid of fine-grained timing information.
     3.5 Transfers
                This section defines two basic concepts before introducing the transfer types:
        Send Feedback
                                                                                                                MNL-AVABUSREF
    3-12       3.5.1 Typical Read and Write Transfers                                                                2015.03.04
               • Transfer—A transfer is a read or write operation of a word or one or more symbol of data. Transfers
                 occur between an Avalon-MM interface and the interconnect. Transfers take one or more clock cycles
                 to complete.
                 Both masters and slaves are part of a transfer. The Avalon-MM master initiates the transfer and the
                 Avalon-MM slave responds to it.
               • Master-slave pair—This term refers to the master interface and slave interface involved in a transfer.
                 During a transfer, the master interface control and data signals pass through the interconnect fabric
                 and interact with the slave interface.
               A slave typically receives address, byteenable, read or write, and writedata after the rising edge of the
               clock. A slave asserts waitrequest before the rising clock edge to hold off transfers. When the slave
               asserts waitrequest, the transfer is delayed. While waitrequest is asserted, the address and other
               control signals are held constant. Transfers complete on the rising edge of the first clk after the slave
               interface deasserts waitrequest.
               There is no limit on how long a slave interface can stall. Therefore, you must ensure that a slave interface
               does not assert waitrequest indefinitely. The following figure shows read and write transfers using
               waitrequest. In this example, the master and slave both have a readdatavalid signal.
               Note: waitrequest can be decoupled from the read and write request signals. waitrequest may be
                     asserted during idle cycles. An Avalon-MM master may initiate a transaction when waitrequest is
                     asserted and wait for that signal to be deasserted. Decoupling waitrequest from read and write
                     requests may improve system timing. Decoupling eliminates a combinational loop including the
                     read, write, and waitrequest signals.
                           Figure 3-3: Read and Write Transfers with Waitrequest
                                                 1      2        3                  45                   6      7
                                           clk
                                     address                 address
                                  byteenable                byteenable
                                         read
                                         write
                                  waitrequest
                                readdatavalid
                                    readdata                             readdata
                                    response                             response
                                    writedata                                                writedata
                                                                                                             Send Feedback
MNL-AVABUSREF
2015.03.04                                                            3.5.2 Read and Write Transfers with Fixed Wait-States     3-13
                                             1         2          3               4                            5
                                       clk
                                  address             address                               address
                               byteenable            byteenable
                                     read
                                     write
                                 readdata                  readdata
                                 response                  response
                                 writedata                                                   writedata
        Send Feedback
                                                                                                                 MNL-AVABUSREF
    3-14       3.5.3 Pipelined Transfers                                                                              2015.03.04
                                                                                                             Send Feedback
MNL-AVABUSREF
2015.03.04                                                                               3.5.3.2 Pipelined Read Transfers with Fixed Latency        3-15
1 2 3 4 5 6 7 8 9 10 11
clk
read
waitrequest
readdatavalid
        Send Feedback
                                                                                                                          MNL-AVABUSREF
    3-16       3.5.4 Burst Transfers                                                                                           2015.03.04
           Figure 3-6: Pipelined Read Transfer with Fixed Latency of Two Cycles
               The following figure shows multiple data transfers between a master and a pipelined slave . The slave
               drives waitrequest to stall transfers. and has a fixed read latency of 2 cycles.
                                                1 2           3               4       5           6
                                        clk
read
waitrequest
readdatavalid
                                                                                                                      Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                      3.5.4.1 Write Bursts      3-17
         Figure 3-7: Write Burst with constantBurstBehavior Set to False for Master and Slave
                The following figure demonstrates a slave write burst of length 4. In this example, the slave asserts
                waitrequest twice delaying the burst.
                                                 1 2           3           4   5          6 7               8
                                           clk
                                      address          addr1
                           beginbursttransfer
                                   burstcount            4
                                         write
                                    writedata          data1       data2              data3       data4
                                  waitrequest
        Send Feedback
                                                                                                                                    MNL-AVABUSREF
    3-18       3.5.4.2 Read Bursts                                                                                                       2015.03.04
               6. The slave captures the third unit of data at the rising edge of clk.
               7. The slave asserts waitrequest. In response, all outputs are held constant through another clock cycle.
               8. The slave captures the last unit of data on this rising edge of clk. The slave write burst ends.
               In the figure above, the beginbursttransfer signal is asserted for the first clock cycle of a burst and is
               deasserted on the next clock cycle. Even if the slave asserts waitrequest, the beginbursttransfer signal
               is only asserted for the first clock cycle.
               For information about Avalon-MM properties, refer to Table 3-2.
               Related Information
               Interface Properties on page 3-8
                                                                                                                                 Send Feedback
MNL-AVABUSREF
2015.03.04                                                                              3.5.4.3 Line–Wrapped Bursts      3-19
        Send Feedback
                                                                                                                   MNL-AVABUSREF
    3-20         3.7 Avalon-MM Slave Addressing                                                                         2015.03.04
                       2         OFFSET[1]7..0               OFFSET[1]15..0                   —
           0x00
                       3         OFFSET[2]7..0               —                                —
                       4         OFFSET[3]7..0               —                                —
                       1         OFFSET[4]7..0               OFFSET[2]15..0                   OFFSET[0]63..32
                       2         OFFSET[5]7..0               OFFSET[3]15..0                   —
           0x04
                       3         OFFSET[6]7..0               —                                —
                       4         OFFSET[7]7..0               —                                —
                       1         OFFSET[8]7..0               OFFSET[4]15..0                   OFFSET[1]31..0
                       2         OFFSET[9]7..0               OFFSET[5]15..0                   —
           0x08
                       3         OFFSET[10]7..0              —                                —
                       4         OFFSET[11]7..0              —                                —
                       1         OFFSET[12]7..0              OFFSET[6]15..0                   OFFSET[1]63..32
                       2         OFFSET[13]7..0              OFFSET[7]15..0                   —
           0x0C
                       3         OFFSET[14]7..0              —                                —
                       4         OFFSET[15]7..0              —                                —
           ...                                               ...                              ...
           Notes:
           1. Although the master is issuing byte addresses, it is accessing full 32-bit words.
           2. For all slave entries, [<n>] is the word offset and the subscript values are the bits in the word.
                                                                                                                Send Feedback
        2015.03.04
                                                                                       Avalon Interrupt Interfaces
                                                                                                                                                                        4
       MNL-AVABUSREF                             Subscribe                Send Feedback
                Avalon Interrupt interfaces allow slave components to signal events to master components. For example,
                a DMA controller can interrupt a processor when it has completed a DMA transfer.
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                           MNL-AVABUSREF
     4-2         4.2 Interrupt Receiver                                                                                         2015.03.04
                                                                                                                     Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                    4.2.3 Interrupt Timing       4-3
         Send Feedback
        2015.03.04
                                                                                     Avalon Streaming Interfaces
                                                                                                                                                                        5
       MNL-AVABUSREF                             Subscribe                  Send Feedback
                You can use Avalon Streaming (Avalon-ST) interfaces for components that drive high bandwidth, low
                latency, unidirectional data. Typical applications include multiplexed streams, packets, and DSP data. The
                Avalon-ST interface signals can describe traditional streaming interfaces supporting a single stream of
                data without knowledge of channels or packet boundaries. The interface can also support more complex
                protocols capable of burst and packet transfers with packets interleaved across multiple channels.
          Figure 5-1: Avalon-ST Interface - Typical Application of the Avalon-ST Interface
Scheduler
                                             Rx IF Core                                                                                Tx IF Core
                           Avalon-ST                                           2                                                                       Avalon-ST
                                                          ch
                             Input                                             1                                                                        Output
                                                   Source 0-2        Sink                                           Source            Sink
                                                                               0
                                                                                                                              SDRAM
                                                                                                                              Memory
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                   MNL-AVABUSREF
     5-2       5.1 Terms and Concepts                                                                                   2015.03.04
               All Avalon-ST source and sink interfaces are not necessarily interoperable. However, if two interfaces
               provide compatible functions for the same application space, adapters are available to allow them to
               interoperate.
               Avalon-ST interfaces support datapaths requiring the following features:
               •     Low latency, high throughput point-to-point data transfer
               •     Multiple channel support with flexible packet interleaving
               •     Sideband signaling of channel, error, and start and end of packet delineation
               •     Support for data bursting
               •     Automatic interface adaptation
                                                                                                               Send Feedback
MNL-AVABUSREF
2015.03.04                                                             5.2 Avalon Streaming Interface Signal Roles     5-3
          data                       1 – 4,096      Source → Sink   The data signal from the source to the sink,
                                                                    typically carries the bulk of the information being
                                                                    transferred.
                                                                    The contents and format of the data signal is
                                                                    further defined by parameters.
          error                       1 – 256       Source → Sink   A bit mask used to mark errors affecting the data
                                                                    being transferred in the current cycle. A single bit
                                                                    in error is used for each of the errors recognized
                                                                    by the component, as defined by the errorDe-
                                                                    scriptor property.
          ready                          1          Sink → Source   Asserted high to indicate that the sink can accept
                                                                    data. ready is asserted by the sink on cycle <n> to
                                                                    mark cycle <n + readyLatency> as a ready cycle.
                                                                    The source may only assert valid and transfer
                                                                    data during ready cycles.
                                                                    Sources without a ready input cannot be
                                                                    backpressured. Sinks without a ready output
                                                                    never need to backpressure.
          valid                          1          Source → Sink   Asserted by the source to qualify all other source
                                                                    to sink signals. The sink samples data other
                                                                    source-to-sink signals on ready cycles where
                                                                    valid is asserted. All other cycles are ignored.
        Send Feedback
                                                                                                                     MNL-AVABUSREF
     5-4       5.3 Signal Sequencing and Timing                                                                           2015.03.04
                                                                                                                 Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                 5.5 Typical Data Transfers     5-5
        Send Feedback
                                                                                                                MNL-AVABUSREF
     5-6       5.6 Signal Details                                                                                    2015.03.04
                                                                            ready
                                                            valid
                                                           data
                                                           error
                                                        channel
                                                 <max_channel>
                                                                                                            Send Feedback
MNL-AVABUSREF
2015.03.04                                                                   5.8 Data Transfer without Backpressure     5-7
                                             clk
                                           valid
                                        channel
                                           error
                                            data           D0        D1             D2     D3
        Send Feedback
                                                                                                                                                                   MNL-AVABUSREF
     5-8       5.9 Data Transfer with Backpressure                                                                                                                      2015.03.04
clock
ready
readyLatency = 4 readyLatency = 4
valid
data[31:0] 1 2 3 4
                                                                 0        1   2        3        4    5     6         7        8
                                                          clk
                                                       ready
                                                       valid
                                                     channel
                                                        error
                                                        data                      D0       D1               D2           D3
                                                                                                                                                               Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                  5.10 Packet Data Transfers     5-9
                                                      clk
                                                   ready
                                                    valid
                                                 channel
                                                    error
                                                    data            D0 D1              D2 D3
                                                                            ready
                                                            valid
                                                            data
                                                            error
                                                         channel
                                                  <max channel>
                                                   startofpacket
                                                    endofpacket
                                                           empty
        Send Feedback
                                                                                                                                  MNL-AVABUSREF
    5-10       5.11 Signal Details                                                                                                     2015.03.04
                                                             1        2        3   4        5         6         7
                                                       clk
                                                    ready
                                                    valid
                                            startofpacket
                                             endofpacket
                                                   empty                                                   3
                                                 channel         0        0             0        0         0
                                                    error        0        0             0        0         0
                                              data[31:24]        D0       D4           D8       D12       D16
                                              data[23:16]        D1       D5           D9       D13
                                               data[15:8]        D2       D6           D10 D14
                                                data[7:0]        D3       D7           D11 D15
                                                                                                                              Send Feedback
        2015.03.04
                                                                                          Avalon Conduit Interfaces
                                                                                                                                                                        6
       MNL-AVABUSREF                             Subscribe                Send Feedback
                Avalon Conduit interfaces group an arbitrary collection of signals. You can specify any role for conduit
                signals. However, when you connect conduits, the roles and widths must match and the directions must
                be opposite. An Avalon Conduit interface can include input, output, and bidirectional signals. A module
                can have multiple Avalon Conduit interfaces to provide a logical signal grouping. Conduit interfaces can
                declare an associated clock. When connected conduit interfaces are in different clock domains, Qsys
                generates an error message.
                Note: If possible, you should use the standard Avalon-MM or Avalon-ST interfaces instead of creating an
                      Avalon Conduit interface. Qsys provides validation and adaptation for these interfaces. It cannot
                      provide validation or adaptation for Avalon Conduit interfaces.
                Conduit interfaces typically used to drive off-chip device signals, such as an SDRAM address, data and
                control signals.
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                               MNL-AVABUSREF
     6-2       6.1 Avalon Conduit Signal Roles                                                                                      2015.03.04
                                                                                Ethernet
                                                                                  PHY
                                         Avalon-MM System
                                                  Processor                   Ethernet MAC          Custom Logic
                                                 Avalon-MM                    Avalon-MM             Avalon-MM
                                                   Master                       Master                Master
                                                              Avalon-MM                        Avalon
                                                                Slave                          Slave
                                                                SDRAM                          Custom
                                                               Controller                       Logic
                                                               Conduit
                                                              Interface
                                                               Custom
                                                               SDRAM
                                                                Logic
                                                               Memory
                                                                                                                           Send Feedback
        2015.03.04
                                                                       Avalon Tristate Conduit Interface
                                                                                                                                                                         7
       MNL-AVABUSREF                             Subscribe                Send Feedback
                The Avalon Tristate Conduit Interface (Avalon-TC) is a point-to-point interface designed for on-chip
                controllers that drive off-chip components. This interface allows data, address, and control pins to be
                shared across multiple tristate devices. Sharing conserves pins in systems that have multiple external
                memory devices.
                The Avalon-TC interface restricts the more general Avalon Conduit Interface in two ways:
                • The Avalon-TC requires request and grant signals. These signals enable bus arbitration when
                  multiple Tristate Conduit Masters (TCM) are requesting access to a shared bus.
                • The pin type of a signal must be specified using suffixes appended to a signal’s role. The three suffixes
                  are: _out, _in, and _outen. Matching role prefixes identify signals that share the same I/O Pin. The
                  following illustrates the naming conventions for Avalon-TC shared pins.
          Figure 7-1: Shared Pin Types
                        Bidirectional Pin                Tri-State Output Only Pin                  Output Only Pin                       Input Only Pin
                      Altera FPGA                          Altera FPGA                         Altera FPGA                              Altera FPGA
                      data_outen                           reset_outen                       ~reset
                      data_out              data           reset_out             reset                                                   busy_in              busy
                      data_in
write_out write
                The next figure illustrates pin sharing using Avalon-TC interfaces. This figure illustrates the following
                points.
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance             ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any            9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,       Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                MNL-AVABUSREF
     7-2       Avalon Tristate Conduit Interface                                                                     2015.03.04
               • The Tristate Conduit Pin Sharer includes separate Tristate Conduit Slave Interfaces for each Tristate
                 Conduit Master. Each master and slave pair has its own request and grant signals.
               • The Tristate Conduit Pin Sharer identifies signals with identical roles as tristate signals that share the
                 same FPGA pin. In this example, the following signals are shared: addr_out, data_out, data_in,
                 read_out, and write_out.
               • The Tristate Conduit Pin Sharer drives a single bus including all of the shared signals to the Tristate
                 Conduit Bridge. If the widths of shared signals differ, the Tristate Conduit Pin Sharer aligns them on
                 their 0th bit. It drives the higher-order pins to 0 whenever the smaller signal has control of the bus.
               • Signals that are not shared propagate directly through the Tristate Conduit Pin Sharer. In this example,
                 the following signals are not shared: chipselect0_out, irq0_out, chipselect1_out, and irq1_out.
               • All Avalon-TC interfaces connected to the same Tristate Conduit Pin Sharer must be in the same clock
                 domain.
                                                                                                            Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                         7.1 Avalon Tristate Conduit Signal Roles          7-3
The following illustrates the typical use of Avalon-TC Master and Slave interfaces and signal naming.
                    Altera FPGA
                    TCM Tristate Conduit Master                                          Tristate Conduit                         Tristate Conduit
                     TCS Tristate Conduit Slave                                             Pin Sharer          TCM             TCS Bridge
                      S Avalon-MM Slave
                                      Controller    TCM                            TCS
                                    for 2 MByte          CS       chipselect_out                                                    chipselect_out
                                                       IRQ
                                     x32 SSRAM      A[20:0]     addr_out_[20:0]
                                                     D_EN         dataout_outen
                   Avalon-MM                        D[31:0]    dataout_out[31:0]                                      request
                                                   DI[31:0]       data_in[31:0]                                        grant
                     Master S                           Rd            read_out
                                                        Wr            write_out
                                                   Request              request
                                                     Grant                 grant
                                                                                                                                    addr_out<n>
                     clock
                                                                                   Arb
                                                                                                                                    data_outen<n>
                                                                                                                                    data_out<n>
                                                                                                                                    data_in<n>
                                                                                                                                    read_out
                                      Controller
                                     for 8 MByte     TCM                           TCS                                              write_out
                                      x16 Flash       Grant              request
                                                        Req                grant
                                                     A[22:0]    addr_out_[22:0]
                                                      D_EN        dataout_outen
                                                               dataout_out[15:0]
                               S                     D[15:0]
                                                    DI[15:0]      data_in[15:0]
                                                         Rd           read_out
                                                         Wr           write_out
                                                         CS      chipselect_out                                                     chipselect_out
                                                        IRQ               irq_in                                                    irq_in
                For more information about the Generic Tristate Controller and Tristate Conduit Pin Sharer, refer to the
                Avalon Tristate Conduit Components User Guide.
                Related Information
                Avalon Tristate Conduit Components User Guide
         Send Feedback
                                                                                                                  MNL-AVABUSREF
     7-4        7.2 Tristate Conduit Properties                                                                        2015.03.04
                                                                                                              Send Feedback
MNL-AVABUSREF
2015.03.04                                                                                               7.3 Tristate Conduit Timing                   7-5
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
clk
request
grant
data_out[31:0] 0 . a b c d e f 10 11 12 13 14 15 16 17
         Send Feedback
        2015.03.04
                                                                                                            Deprecated Signals
                                                                                                                                                                       A
       MNL-AVABUSREF                             Subscribe                Send Feedback
Deprecated signals implement functionality that is no longer required or has been superceded.
          begintransfer
                An output of Avalon-MM masters. Asserted for a single cycle at the beginning of a transfer. This is signal
                is not used and not necessary.
          chipselect or chipselect_n
                chipselect or chipselect_n: The chip select signal as described below was deprecated with the release
                of the Avalon Tristate Conduct (Avalon-TC) interface type which includes a chip select signal.
                Formerally chipselect was a 1-bit input to an Avalon Memory-Mapped (Avalon-MM) slave interface
                signalling the beginning of a read or write transfer. The current Qsys interconnect filters read and write
                signals from masters according to the address and address map. The Qsys interconnect only drives read
                and write signals to the appropriate Avalon-MM slave, making a chip select unnecessary.
                This signal dates from very early microprocessor designs. CPLDs decoded microprocessor addresses and
                generated chip selects for peripherals that typically were frequently asynchronous. With synchronous
                systems this signal is typically unnecessary.
          flush
                This signal was removed version 1.2 of the Avalon Interface Specifications. Formerly available to masters
                to clear pending transfers for pipelined reads.
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
        2015.03.04
                                                                                                  Additional Information
                                                                                                                                                                        B
       MNL-AVABUSREF                             Subscribe                 Send Feedback
     © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
     trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
     trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance            ISO
     of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any           9001:2008
     products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,      Registered
     product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
     specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
                                                                                                                      MNL-AVABUSREF
     B-2       B.1 How to Contact Altera                                                                                   2015.03.04
           April 2014                13.01                Corrected Read and Write Transfers with Waitrequest In Avalon
                                                          Memory-Mapped Interfaces chapter .
           May 2013                  13.0                 Made the following changes:
                                                          • Minor updates to Avalon Memory-Mapped Interfaces.
                                                          • Minor updates to Avalon Streaming Interfaces.
                                                          • Updated Avalon Conduit Interfaces to describe the signal roles
                                                            supported by Avalon conduit interfaces.
                                                          • Updated Shared Pin Types figure in the Avalon Tristate
                                                            Conduit Interface chapter.
           May 2011                  11.0                 Initial release of the Avalon Interface Specifications supported by
                                                          Qsys.
                                                  Website                                  www.altera.com/training
           Technical training
                                                  Email                                    custrain@altera.com
                                                                                                                  Send Feedback
MNL-AVABUSREF
2015.03.04                                                                           B.2 Typographic Conventions      B-3
          Note to Table:
          1. You can also contact your local Altera sales office or sales representative.
                Related Information
                •   www.altera.com/support
                •   www.altera.com/training
                •   custrain@altera.com
                •   www.altera.com/literature
                •   nacomp@altera.com
                •   authorization@altera.com
          Initial Capital Letters        Indicate keyboard keys and menu names. For example, the Delete
                                         key and the Options menu.
          “Subheading Title”             Quotation marks indicate references to sections within a document
                                         and titles of Quartus II Help topics. For example, “Typographic
                                         Conventions.”
        Send Feedback
                                                                                                                    MNL-AVABUSREF
     B-4         B.2 Typographic Conventions                                                                             2015.03.04
Send Feedback