sas协议-XL状态机2

本文讲述HBA是怎么打开一个链路的过程,我画了一个图,如下,后面会根据该图进行XL状态机进行理解;

 1. 相连的phy之间进行速度协商,IDAF交换之后,收到link ready的信号,均处于Idle的状态;

在这个状态下,phy向ECM一直重复发送Idle request.

2. 当HBA发送OPAF给phy0后,phy0的状态转换为Idle-->Request_Path

3. phy0(XL:Request_Path)在该状态时,向ECM发送request path的请求,ECM查找路由表,并根据目标phy8的状态,返回仲裁信息;

        会有如下仲裁信息

        a. Arbitrating(Normal)

        b. Arbitrating(Waiting on partial)

        c. Arbitrating(Blocked On Partial)

        d. Arbitrating(Waiting On Connection)

        当该处于该状态的phy收到如上四个信息后,一方面需要指使transmitter重复的发送AIP(),一方面自己重复的反馈Phy Status()给ECM --(b,c,d的情况)

        同时,处于该状态的phy需要管理一个Partial Pathway Timeout timer;

该timer的用法如下:

        当收到Arbitrating (Blocked On Partial)后,必须初始化并启动;

如果在timer触发之前,收到了Arbitrating (Waiting On Partial) 或者Arbitrating (Waiting On Connection),则停止该timer. 

如果timer触发了,则需要告诉ECM,让ECM处理该timer触发的事件;

即向ECM发一个这样的请求,Partial Pathway Timeout Timer Expired request;

该状态的phy当接收到ECM返回的Arb Reject的时候,则根据Reject的类型,指示transmitter发送如下原语:

Arb Reject (No Destination)----------对应原语------->OPEN_REJECT (No Destination)

Arb Reject (Bad Destination)----------对应原语------->OPEN_REJECT (Bad Destination)

Arb Reject (Connection Rate Not Supported)----------对应原语------->OPEN_REJECT (Connection Rate Not Supported)

Arb Reject (Zone Violation)----------对应原语------->OPEN_REJECT (Zone Violation)

Arb Reject (Pathway Blocked)----------对应原语------->OPEN_REJECT (Pathway Blocked)

Arb Reject (Retry)----------对应原语------->OPEN_REJECT (Retry)

4.当经历了步骤三ECM的仲裁之后,phy0收到了ECM返回的Arb Won,则phy0的状态转换为:Request_Path-->Request_Open

5. phy0(Request_Open), 该状态的作用是将OPEN帧透过ECR发向目标phy.

        该状态的phy一方面指使transmitter发送Idle, 一方面向ECR发送一个“Forward Open”的请求,ECR接收到这个请求之后,打开配置好的路由,让OPAF帧传送过到phy8. 

        phy0干过这个事情之后,就进入Open_Confirm_Wait状态,顾名思义:打开等待确认的状态;

到此为止,phy0的状态历程为:

Idle->Request_Path->Request_Open->Open_Confirm_Wait

此时phy0会一直处于此状态,等待OPEN_ACCEPT或者OPEN_REJECT(调皮一下:即,是死是活要给个话)

等待的时候,还要忙碌如下两件事:

        1. 不断的重复的向ECM返回自己的phy状态,Phy Status(partial pathway);

        2. 根据从ECR收到的Arb Status(来自于phy4向ECM仲裁时,返回给phy8的原语,phy8收到不同的原语,转化成不同的ArbStatus透过ECR发给phy0)信息不断的指使transmitter发送AIP -- 这点是可以展开的;不同的ArbStatus,对应不同的AIP原语;

OPAF的历程为:

HBA->phy0->phy8

当phy8[Idle]收到来自ECR的Forward Open indication之后,phy8的状态变化为:Idle->Forward_Open

phy8的历程为:

Idle->Forward_Open

下面我们结束对phy0的关注,将开始关注phy8的XL变化

5. 进入Forward_Open的phy8,指使transmitter将OPAF传送出去(即传送到phy4); 此时的phy8不能处理PS_REQ(该源于的作用是让attached phy进入低电状态),如果收到PS_REQ,则指使transmitter传送PS_NAK.

(调皮一下~~ phy8心想:老子刚刚传送了OPAF,对端忙着呢,在建立链接呢,不要烦老子,老子不想让对端休眠)

一旦将OPAF传送出去,phy8即进入Open_Response_Wait状态.

梳理一下,到此为止,phy8的状态变化为:

Idle-->Forward_Open-->Open_Response_Wait

phy4加入战队....

phy4的状态变化会跟phy0的状态变化路线一致,做的事情也一致;

Idle->Request_Path->Request_Open->Open_Confirm_Wait

phy24的状态变化会跟phy8的状态变化一致,即:

Idle-->Forward_Open-->Open_Response_Wait

phy24也开始加入战队....

6.  到了这里,phy24将OPAF发向了HDD

7. HDD根据内部状态,由SL_CC状态机,返回OPEN_REJECT或者OPEN_ACCEPT;

从现在开始,我们开始梳理OPEN_ACCEPT/OPEN_REJECT回来的路程;

先发布一下...

 

### 回答1: MODTRAN (MODerate Resolution atmospheric TRANsmission) 是一款用于分析大气透射和辐射传输的软件,目前最新版本为 MODTRAN 6。而MODTRAN 4(MOD4)是MODTRAN软件的早期版本之一,于1980年代开发。该软件通过对地球大气的分析,可以模拟不同光谱波段间的光线传输,以及由大气散射、吸收和反射引起的效应。这对于遥感技术研究和气象学、空间物理学等研究领域来说是非常重要的。 使用MOD4可以生成和分析气溶胶、云、辐射臭氧、温室气体等等大气成分对于辐射的吸收、反射和散射情况,对遥感与红外辐射技术的研究和应用非常有帮助。而MOD4基于IDAF共享库的实现方式允许与许多国际上使用MODTRAN的组织和个人协同合作。此外,MOD4还可以生成与大气放电相关的模拟结果,与地面接收机的性能等方面有关。 总之,MOD4虽然研发时间较早,但在分析大气透射和辐射传输的领域中仍有重要意义。 ### 回答2: MODTRAN 4 (MOD4)是一种用于大气辐射传输的计算机模型,可根据大气组分和地表反射率等参数计算太阳辐射、热辐射以及散射辐射在大气中的传输。该模型适用于多种应用领域,如气象预测、卫星遥感、遥感影像处理等。 MOD4的主要特点是其模块化结构,使得用户可以自定义模型输入、输出以及所需计算任务。模型提供了大气和地表反射率的多种参数模型,包括美国宇航局的“海纳多斯”模型和“达尔文”模型等。此外,MOD4还能够考虑海拔高度、大气温度、湿度和气压等因素的影响,满足了不同应用场景下的需求。 MOD4已经经过验证,其计算结果与实测数据的吻合度非常高。同时,由于其模块化结构以及广泛适用性,MOD4被视为辐射传输模型的黄金标准,许多其他模型也基于MOD4进行开发和改进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值