zoukankan      html  css  js  c++  java
  • Rocket

    https://mp.weixin.qq.com/s/icPGf4KdSOudwuNpLxdo7w

     

    简单介绍Xbar的实现。

     

     

    1. 简单介绍

     

    IntXbar主要用于把上游多个中断源的中断组合在一起,然后与下游相连接。

     

    2. diplomacy node

     

    diplomacy node用于与上下游节点连接,并与上下游节点协商参数。

    IntXbar中的节点是一个IntNexusNode:

     

    1) sinkFn

     

    sinkFn就是uFn,就是把参数向上游传递的函数。这里用于把IntXbar看到的下游节点的参数向上游节点传递,转换为上游节点看到的IntXbar的参数。

     

    这里不管下游节点的参数如何,都向上游传递一个默认的下游参数。

     

    2) sourceFn

     

    sourceFn就是dFn,就是把参数向下游传递的函数。这里用于把IntXbar看到的上游节点的参数向下游节点传递,转换为下游节点看到的IntXbar的参数。

    a. seq是与intnode节点相连的输入边的IntSourcePortParameters;

    b. seq.map(_.num).scanLeft(0)(_ + _).init汇总和offset平移用于把中断号重新编排:

    c. 把seq中的所有IntSourcePortParameters摊平成为一个IntSourcePortParameters。一个IntSourcePortParameters中的所有中断源的中断区间是不重叠的,多个IntSourcePortParameters之间不重叠则需要重新编排来保证;

    d. 根据NexusNode的特点,sourceFn把所有输入边的IntSourcePortParameters转换为一个IntSourcePortParameters;然后再把这个IntSourcePortParameters复制成n份(输出边的条数),供每个输出边使用。

    e. 也就是说,每个输出边都包含所有输入边传入的中断信号;

     

    3. lazy module

     

    lazy module用于实现IntXbar的内部逻辑。

     

    这里是把输入边输入的全部信号归并到一起,同输出边相连:

     

    1) 所有输入边一起使用,而不是成对的输入边和输出边逐个使用

     

    把所有输入边的中断信号组合在一起,成为cat:

     

    2) 把组合后的中断向量,灌入每一个输出边

     

     

    4. 伴生对象

     

    用于简化IntXbar的创建,输出xbar.intnode用于与其他节点连接:

     

    5. 附录

     

     

     

     

     

  • 相关阅读:
    PLC200入门笔记1-软件安装和程序下载
    MCGS入门笔记3-与S7200(master)Modbus-Rtu通讯
    MCGS入门笔记2-与S7300以太网通讯
    MCGS入门笔记1-准备资料和项目操作
    博途打开时提示需要需符合fips标准
    重量模拟输入程序编写分析(含CPU 1512C产品手册)
    【西门子杯】2020工业自动化(线上)资源整合
    第13章 利用 PCA 来简化数据
    SqlHelper编写
    单例模式
  • 原文地址:https://www.cnblogs.com/wjcdx/p/11618998.html
Copyright © 2011-2022 走看看