zoukankan      html  css  js  c++  java
  • Cyclone V 与 Avalon-MM资料整理——DE1-SOC学习笔记(1)

         最近在学习DE1-SOC,写一点应用笔记。理解有偏差的地方还望小伙伴们多多指点^_^

    一、Cyclone –V  Interconnection

         DE1-SOC是基于Cyclone V设计的板卡,在Cyclone-V集成了FPGA与Arm Core A9,并分别连接了不同的外设,可通过HPS-FPGA AXI bridges进行二者间的数据通信。如图:

    image_thumb39

    The HPS contains the following HPS-FPGA AXI bridges:
    ■ FPGA-to-HPS Bridge
    ■ HPS-to-FPGA Bridge
    ■ Lightweight HPS-to-FPGA Bridge

       每种总线可以访问的地址范围如下:

    image_thumb40

        由该表可以得出,Lightweight HPS-to-FPGA Bridge可以访问0xFF20_0000-0xFF40_0000的外设地址空间,可用于控制数据的通信;HPS-to-FPGA Bridge则可以访问0xC000_0000-0xFC00_000近1G的物理地址空间,适合于大量数据的高速传输;而FPGA-to-HPS Bridge将HPS作为Slave,可以访问HPS全部的物理地址空间

         对三种Bridge的访问在物理上都是由相应的Axi接口完成,由于Qsys中自含将Avalon总线转化为axi总线的机制,所以在自定义IP中,使用Avalon总线即可。

    二、Avalon 总线读写时序

         Avalon 总线信号及其描述如下,实际应用时可根据传输方式的选定而选用部分信号

    image_thumb53

    image_thumb42

    image_thumb43

    image_thumb44

    image_thumb45

         Avalon 总线有以下几种读写方式:

    Typical Read and Write Transfers

    image_thumb46

    Read and Write Transfers with Fixed Wait-States

      image_thumb51

    Pipelined Transfers

    image_thumb52


     

    Burst Transfers

    image_thumb49

    image_thumb50

        重点要掌握好的信号一个是waitrequest,另一个是readdatavalid。在任何传输方式中,当总线给出的waitrequest信号有效时,要发起读写的主/从设备应当保持输出的地址信号、读写信号、写数据时的数据信号以及在burst传输中的burstcount信号有效,直到waitrequest信号为低,表明目标设备已经接收请求,然后方可发起下一次传输。

  • 相关阅读:
    python自学第13天 hashlib,re模块
    python自学第12天 模块
    python自学第12天 模块定义,导入,内置模块
    python自学第11天-单线程并发、迭代器,序列化,获取路径
    python自学第10天,生成器
    python自学第9天,装饰器
    python自学第8天,变量,递归
    python自学第7天,函数,参数
    彻底搞懂Session与Cookie的异同!
    你真的搞懂了Java中的<<、>>、>>>运算符嘛?
  • 原文地址:https://www.cnblogs.com/blinkingstar/p/4294054.html
Copyright © 2011-2022 走看看