zoukankan      html  css  js  c++  java
  • AHB中split机制简介

    完整的AHB协议:1)可以多个master,并且需要外加一个Arbiter,和write multiplexor。为了保证每一时刻只有一个master拥有访问权。

                           2)为了增强pipeline的能力,允许Arbiter将一个未完成的burst中断,grant给另外一个transfer。所以还有两种

                             transfer;RETRY/SPLIT。   

    Arbitration:主要是确保每个时间点,都从master的req中选择一个priority最高的访问bus;

                                                     从slave端接收req,来完成SPLIT操作。

    Arbitration signals:

                          HBUSREQ,从master到Arbitration的总线请求信号。    

                          HLOCK,从master到Arbitration的原子操作请求,与AHB-Lite中的lock信号类似。为了保证transfer的完整性。

                          HGRANT,从Arbitration到master的总线应答信号。

                          HMASTER,4bit,由master驱动,表示当前拥有总线的master。方便支持SPLIT transfer的slave record此时的master。  

                          HMASTLOCK,由Arbitration发送给slave的lock信号。

                          HSPLIT,16bit,由slave发出,表示要进行SPLIT transfer,通知Arbitration哪一个bus master要继续进行操作。

    以下是一个Arbitration的响应过程。在GRANT和HREADY都为高时,才表示总线赋予成功.

                          HRESP信号,2bit,表示OKAY、ERROR外,还可以表示RETRY、SPLIT。同样的RETRY、SPLIT也是2-cycle response。

                                                       RETRY和SPLIT的主要区别是,RETRY只是表示这个transfer还没有结束,

                                                                                               但并不会改变Arbitration接下来的调度。

                                                       SPLIT会将当前transfer的优先级调低,在slave准备好之后,通过SPLIT信号通知Arbitration,

                                                                                                而后再将优先级调高。

                                                       RETRY和SPLIT的会增加slave和Arbitration的设计复杂性,但是对master并没有影响,master应该始终req bus。

     

    SPLIT机制最大限度的利用AHB的总线带宽。却增加了slave和Arbitration的设计复杂性。

  • 相关阅读:
    leetcode:Valid Parentheses(有效括号匹配)
    leetcode:Remove Nth Node From End of List (移除从尾部数的第N个节点)
    leetcode:Letter Combinations of a Phone Number(手机号码的字母组合)
    leetcode:4Sums(四个数相加的和)
    leetcode:3Sum Closest
    leetcode:3Sum (三个数的和)
    leetcode:Longest Common Prefix(取最长字符串前缀)
    php数据访问
    PHP 基础知识测试题
    面相对象设计模式
  • 原文地址:https://www.cnblogs.com/-9-8/p/4738875.html
Copyright © 2011-2022 走看看