通信协议 - ARINC615A加卸载协议

2023-05-16

概述

ARINC615A加卸载端系统由加载端软件和目标端软件组成,通过加载端软件和目标端软件的通信共同完成端系统设备的数据加卸载功能。加载端软件运行于大容量设备中,被加载端即目标端软件运行于AFDX交换机内和其他端系统设备中。

401f50ef5e89f9668c7ee00c7a3764f2.png

注意

小编所有文章均是自己亲手编写验证,由于文件太多,小编就不在公众号后台一一回复列举了,若需要小编的工程代码,请关注公众号,后台回复需要的工程文件

操作

 FIND操作

完成加载端对目标端的查找和对目标硬件信息的更新

加载端组织并发送FIND请求包给目标端,目标端接收到请求包后通过AFDX网络传输回复FIND应答包,应答包的信息包括目标机的属性:如目标硬件设备标识符、类型名称、目标硬件设备身份标识、制造商代码等。加载端解析获取目标机硬件信息后,更新目标硬件信息,以完成加载端对目标端的查找和对目标硬件信息的更新。

61ba853b9ee80c6dced6308c82f1ba39.png

信息操作

完成加载端对目标机硬件信息的查看功能,获取目标机硬件信息和可加载的软件配置信息。

加载端发送信息操作请求给目标端,目标端获取目标机信息,并组织为协议规定格式的文 件回复给加载端,以使加载端获取目标机名称以及硬件序列号、部件号等目标机 相关信息。

1da692375fbbef7fb6d99695b49a5963.png

上传操作

完成加载端上传选中的文件至目标端的功能。

操作两端之间的传输过程描述为:

(1) 初始化阶段:完成加载端与目标端的通信状态初始化,加载端向目标端 请求初始化 LUI 文件,判断目标端是否接受本次操作。若接受则进入文件传输阶 段,若拒绝或者解析 LUI 文件失败,则提示本次操作结束。

(2) 列表传输阶段:加载端接收到 LUS 文件,即过程状态文件后,如果目标 机接受操作,应向目标端发送加载端的上传头文件列表 LUR 文件,上传头文件列 表包含加载端给目标端的上传头文件名。

(3) 文件传输阶段:加载端应首先等待接受目标端发送头文件请求,收到请 求后,加载端应向目标端发送其请求的上传文件,接着加载端等待接受读文件请 求,直到目标端获取所有上传文件,此时加载端应收到目标端发送的 LUS 文件, 表示本次操作结束。

379b12d4055d058af758f990367e8897.png

介质定义下载操作

完成加载端对目标机的卸载功能,相对于操作者自定义下载操作而言。

介质定义模式下载操作加载端通过AFDX网络发送下载请求的TFTP请求包至目标端,接收其请求从目标端卸载的所有文件。这个操作也是由加载端发起,并且操作两端之间的传输过程描述为:

(1) 初始化阶段:用于操作两端通信状态初始化,加载端向对方请求初始化 LND 文件,接收到目标端发送过来的初始化LND文件后解析,获知目标端是否接 受本次下载操作。

(2) 列表传输阶段:此阶段加载端通过解析目标端发过来的LNS文件,获取 目标端当前的状态信息,然后在状态对方允许的情况下向目标端发送包含其请求 卸载文件名的LNR文件。

(3) 文件传输阶段:加载端逐个接收目标端发送的卸载文件,直到加载端接 收完所有卸载文件。

88d29c3e5a20035f543dacb9d2cbf11b.png

操作者定义下载操作

完成加载端对目标端文件下载功能。

操作者自定义模式下载操作相对于介质定义下载操作来说的,主要不同之处在于操作者自定义模式为加载端发请求给目标机端,要求读取目标机端可以被下载的文件的列表,收到之后,选中加载端想要下载的文件列表,形成LNA文件,发送给目标端,等待接收文件,而目标机根据LNA文件的文件列表,将其中的文件组织起来发送给加载端,待加载端接收完成后,该操作即完成。同样也有三个阶段,大致与介质定义下载操作相同。

c8a95e690a52cd600385b1a1bdab962c.png

协议文件

依据ARINC615A-3协议和ARINC665可加载文件标准协议的规定,加卸载交互过程中各个操作中牵涉到的各个协议文件的扩展名以及各个文件的功能描述列在下表中。典型的文件名示例就是“THW_ID_POS.XXX” [5]。“THW_ID”代表的是目标机硬件设备标识符,“POS”为目标机硬件设备位置,“XXX”表示文件类型后缀, 例如“LUI” 、“LUS”、“LCS”、“LNO”等。

76879c456427a2b5efb325c51700e631.png

<TWD_ID_POS>.LCL

LCL文件应用信息操作,表示含有目标机硬件序列号码等信息的目标机配置文件。格式如下表所示。带+和*的属性代表重复出现。

de73b320de067bc136cadd1a1cbb86a9.png

<TWD_ID_POS>.LCS

LCS文件应用信息操作,表示信息操作通信过程中目标机组织并发送当前状态的文件。格式如下表所示。

719e21edec86aae085125aea51e8875f.png

<TWD_ID_POS>.LUR

LUR文件应用上传操作,表示向目标端上传的文件列表。格式如下表所示。带+的属性代表重复出现。

2514795cbd6df697675ddf807bd318de.png

<TWD_ID_POS>.LUS

LUS文件应用上传操作,表示上传操作过程中目标机组织并发送当前状态的文件。格式如下表所示。带+的属性代表重复出现。

26391d371c75993f14fe20a631019e64.png

89413bb699d99047a27f7ed7e2edcf22.png

<TWD_ID_POS>.LNR

LNR文件应用介质定义下载操作,表示加载端向目标端请求卸载的文件列表。格式如下表所示。带+的属性代表重复出现。

22054f98f180450e792a8102e6bce3c7.png

<TWD_ID_POS>.LNS

LNS文件应用介质定义下载操作,表示介质定义下载操作过程中目标机组织并发送当前状态的文件。格式如下表所示。带+的属性代表重复出现。

267d7b1927ceefed6aec47fd354238fd.png

132950cf8de2812be8d3908405d4f1af.png

<TWD_ID_POS>.LNL

LNL文件应用操作者自定义下载操作,表示目标机可供下载的全部文件列表。格式如下表所示。带+的属性代表重复出现。

f1943f05df051fd052b510357e26d8f5.png

<TWD_ID_POS>.LNA

LNA文件应用操作者自定义下载操作,表示加载端在 LNL 文件中选择的要下载的文件清单。格式如下表所示。带+的属性代表重复出现。

8d098f84d06174272f3d9a7631a6d044.png

<TWD_ID_POS>.LCI,LUI,LND,LNO

LCI,LUI,LND,LNO格式如下表所示。

2208a5da3aca8b3e26bba897743d7382.png

往期 · 推荐

实时系统vxWorks - 任务(重要)

实时系统vxWorks - 加载应用程序的方法

实时系统vxWorks - 在线调试

实时系统vxWorks - 虚拟机环境搭建

实时系统vxWorks - zynq7020移植vxWorks

关注

更多精彩内容,请关注微信公众号:不只会拍照的程序猿,本人致力分享linux、设计模式、C语言、嵌入式、编程相关知识,也会抽空分享些摄影相关内容,同样也分享大量摄影、编程相关视频和源码,另外你若想要获得更多内容教程请关注公众号:不只会拍照的程序猿​​​​​​​

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通信协议 - ARINC615A加卸载协议 的相关文章

  • 建模simulink - 指定模块运行周期

    概述 如果我们把simulink整个模型看做是一个系统 那么模型里面的每一个模块 我们其实都可以看做是一个周期调度的任务块 而调度周期大小就通过采样时间来设置 在自定义模块中 如果想要模块按照指定的周期运行 我们只需要通过传入指定的采样时间
  • 实时系统vxWorks - 在线调试

    概述 在之前的文章小编就讲过 xff0c 在小编的字典中 xff0c 调试能力的重要性是要强过开发设计能力的 关于调试为何如此重要等等 xff0c 这里就不再过多的赘述了 注意 环境 xff1a vxWorks lt 6 9 4 gt wo
  • 实时系统vxWorks - 加载应用程序的方法

    概述 在 实时系统vxWorks 在线调试 一文中小编已经介绍过了如何新建应用程序以及在线调试 该文章将继续向大家介绍运行应用程序的方法 vxWorks加载运行应用程序的方式主要包含三种 通过workbench下载运行应用程序 通过命令行在
  • 实时系统vxWorks - 任务(重要)

    概述 任务可以说是vxWorks实时系统的核心 在执行时每个程序都被称之为任务 VxWorks操作系统中 任务可以直接地或者以共享方式访问大多数系统资源 为了维护各自的线程 每个任务必须保持有足够的上下文环境 注意 任务状态主要包含五种状态
  • 实时系统vxWorks - 辅助时钟

    概述 VxWorks系统为开发人员提供了一个辅助时钟 Auxiliary Clock 这个辅助时钟与系统时钟使用不同的时钟源 供用户在需要时间精度较高的场合定时使用 注意 小编认为 对于vxWorks实时系统而言 定时是很有必要的 在对一些
  • 听说Zynq-I/O详细信息

    概述 ZYNQ 是由两个主要部分组成的 一个由双核 ARM Cortex A9 为核心构成的处理系统 PS Processing nbsp System 和一个等价于一片FPGA的可编程逻辑 PL Programmable Logic 部分
  • 实时系统vxWorks - timer定时应用

    概述 VxWorks提供IEEE的POSIX 1003 1b标准定时器接口 使用这种定时器机制 在指定的时间间隔后 任务向自身发信号 因此我们可以利用此机制可以很方便的实现周期定时 注意 在使用timer接口之前 必须现在镜像文件中包含IN
  • 实时系统vxWorks-Zynq7020 emio使用

    概述 上一篇文章 小编已经向大家展示了如何在zynq上移植vxWorks系统 接下来将为大家展示如何编写vxWorks应用程序来操作emio 注意 开发环境 vxWorks6 9 4 workbench3 3 5 开发板 TLZ7x Eas
  • 实时系统vxWorks-Zynq7020 axi gpio使用

    概述 这篇文章将为大家展示如何编写vxWorks应用程序来操作axi gpio 注意 开发环境 vxWorks6 9 4 workbench3 3 5 开发板 TLZ7x EasyEVM A3 详细操作方法参见文章 实时系统vxWorks
  • 实时系统vxWorks-Zynq7020 axi timer pwm使用

    概述 这篇文章将为大家展示如何编写vxWorks应用程序来操作axi timer pwm功能 注意 开发环境 vxWorks6 9 4 workbench3 3 5 开发板 TLZ7x EasyEVM A3 详细操作方法参见文章 实时系统v
  • Spring框架基础看这一篇就够

    第一章Spring的概念 spring全家桶 xff1a Spring SpringMVC SpringBoot SpringCloud Spring 出现在2002年左右 xff0c 解决企业开发难度 xff0c 减轻对项目模块之间的管理
  • 实时系统vxWorks-Zynq7020 PL中断使用(重要)

    概述 在任何嵌入式设计中 中断都是必不可少的部分 采用中断系统可以提高计算机系统效率 维持系统可靠正常工作 满足实时处理要求 提供故障现场处理手段 注意 开发环境 vxWorks6 9 4 workbench3 3 5 开发板 TLZ7x
  • 实时系统vxWorks-Zynq7020 axi uart使用

    概述 UART是通用异步收发传输器 Universal AsynchronousReceiver Transmitter 在嵌入式设计中 通常用于主机与辅助设备通信 注意 开发环境 vxWorks6 9 4 workbench3 3 5 开
  • 实时系统vxWorks - 信号量(重要)

    概述 信号量是VxWorks任务间进行通信 同步和互斥的最优选择 提供任务间最快速的通信 也是提供任务间同步和互斥的主要手段 注意 vxworks提供二进制信号量 互斥信号量 计数信号量 读写信号量4种类型的信号量 二进制信号量 主要用于任
  • 实时系统vxWorks-Zynq7020 自定义axi ip核

    概述 AXI Advanced eXtensible Interface 协议主要描述了主设备 Master 和从设备 Slave 之间的数据传输方式 主设备和从设备之间通过握手信号建立连接 当主设备的数据准备好时 会发出和维持VALID信
  • 实时系统vxWorks - Shell命令

    概述 在开发调试中 Shell总是作为目标机的输入和输出终端 用户可以通过Shell在主机端输入命令 也可以在Shell窗口中看到目标机输出的内容 注意 开发环境 vxWorks6 9 4 workbench3 3 5 另外 小编所有文章均
  • 实时系统vxWorks - 环形缓冲

    概述 Vxwroks 环形缓冲模块主要定义在rngLib c和rngLib h中 对于数据结构比较了解的小伙伴应该知道 环形缓冲实际就是一个双向循环队列 注意 关于循环队列 小编之前在 也没想象中那么神秘的数据结构 先来后到的 队列 循环队
  • 听说Zynq-Zynq7 Processing System配置导入导出

    概述 zynq开发中 我们如何才能将一个工程的Zynq Process System快速准确的配置到另一个工程 这里就需要我们对Zynq7 Processing System ip核的配置导入导出 注意 开发环境 vivado2018 2
  • 实时系统vxWorks - 动态库、静态库建立及调用

    概述 静态库的本质就是将多个目标文件打包成一个文件 在使用时链接静态库就是将库中被调用的代码复制到调用模块中 动态库又名共享库 和静态库最大的不同就是 链接共享库并不需要将库中被调用的代码复制到调用模块中 相反被嵌入到调用模块中的仅仅是被调
  • 实时系统vxWorks - 多任务调试手段

    概述 nbsp 对于vxWorks而言 任务可以说是我们项目工程中不可或缺的组成部分 在实际应用中 我们不可能所有工作都放在一个任务中完成 这样势必会建立多个任务 此时就需要我们对每个任务具备一定的调试手段 注意 开发环境 vxWorks6

随机推荐

  • 实时系统vxWorks - 添加头文件路径的方法

    概述 因为模块化的编程思想 在实际项目工程中往往会存在大量的不同功能的模块 这种模块的体现形式就是不同文件名的源文件和头文件 当我们调用自己写的头文件时 大多数时候需要指定头文件路径 否则编译会出错 注意 开发环境 vxWorks6 9 4
  • 华为开发者大会总结——个人总结

    方舟编译器 xff08 开源 xff09 xff1a 干掉Java虚拟机 将java代码直接编译成机器码 xff0c 静态语义好编译 xff0c 核心是静态编译出动态语义 xff08 通过华为编译实验室的核心专利 xff09 xff0c 代
  • 二叉树遍历应用——计算节点个数与树的高度

    二叉树的节点个数等于左子树的节点数加上右子树的节点数再加上根节点数1 递归算法 xff1a span class token keyword template span span class token operator lt span s
  • 实时系统vxWorks - 增加删除ip

    概述 实际应用中 相信各位小伙伴都遇到过以下的情况 只有一个网络端口 但是想要与多台设备通讯 而不同的设备网段又不一样 这个时候需要频繁的修改自己的ip地址 显得很不方便 windows系统下 操作系统为我们提供了一种可以添加多个ip地址的
  • 实时系统vxWorks - 多IP系统UDP通讯

    概述 在 实时系统vxWorks 增加删除ip 一文中 小编已经向大家展示了如何在网口上添加多个IP 接下来将为大家展示如何编写代码绑定各个IP进行UDP通讯 注意 开发环境 vxWorks6 9 4 workbench3 3 5 另外 小
  • 实时系统vxWorks - 配置多网口

    概述 本文提供在系统运行中对网口进行配置的方法 注意 开发环境 vxWorks6 9 4 workbench3 3 5 1 之前小编网上找相关资料时 有博主说使用新增网口不能与已存在的网口处于同一网段 不过经过小编的测试 两个网口ip可以处
  • 听说Zynq-uboot命令行

    概述 本文主要介绍在linux中uboot命令行的一些常见命令使用方法 注意 开发板 TLZ7x EasyEVM A3 另外 小编所有文章均是自己亲手编写验证 由于文件太多 小编就不在公众号后台一一回复列举了 若需要小编的工程代码 请关注公
  • 听说Zynq-通过tftp加载镜像

    概述 本文主要介绍在linux中如果通过tftp加载启动镜像 以及将启动方式固话到uboot程序中 注意 开发板 TLZ7x EasyEVM A3 另外 小编所有文章均是自己亲手编写验证 由于文件太多 小编就不在公众号后台一一回复列举了 若
  • 浅谈linux - virtual box设置共享文件夹

    概述 本文用于展示在virtual box虚拟机创建共享文件夹 xff0c 实现windows和ubuntu文件互传 注意 开发环境 xff1a VirtualBox 6 1 ubuntu 16 04 另外 xff0c 小编所有文章均是自己
  • 浅谈linux - 搭建nfs服务

    概述 本文用于展示如何搭建nfs服务 xff0c 实现开发机和目标机之间的文件共享 注意 开发环境 xff1a ubuntu 16 04 xff0c linux 4 9 xff0c 开发板 xff1a TLZ7x EasyEVM A3 另外
  • 听说Zynq-petalinux编译linux程序

    概述 PetaLinux 是一种嵌入式 Linux 软件开发套件 SDK 主要用于赛灵思 FPGA 基片上系统设计 注意 开发环境 linux4 9 VirtualBox 6 1 ubuntu 16 04 开发板 TLZ7x EasyEVM
  • 实时系统vxWorks - udp组播通讯

    概述 组播又称多目标广播 多播 网络中使用的一种传输方式 它允许把所发消息传送给所有可能目的地中的一个经过选择的子集 即向明确指出的多种地址输送信息 是一种在一个发送者和多个接收者之间进行通信的方法 注意 开发环境 vxWorks6 9 4
  • 实时系统vxWorks - tcp客户端通讯

    概述 传输控制协议 TCP Transmission Control Protocol 是一种面向连接的 可靠的 基于字节流的传输层通信协议 注意 开发环境 vxWorks6 9 4 workbench3 3 5 另外 小编所有文章均是自己
  • nvm导致React Native启动失败

    错误如下 xff1a The following build commands failed PhaseScriptExecution CP User Generate Specs Users qiaohao Library Develop
  • 实时系统vxWorks - tcp服务器通讯

    概述 接上一篇文章 本文主要展示vxWorks下TCP服务器的编程方法 注意 开发环境 vxWorks6 9 4 workbench3 3 5 另外 小编所有文章均是自己亲手编写验证 由于文件太多 小编就不在公众号后台一一回复列举了 若需要
  • 开发工具 - 离线安装VS code插件

    概述 VSCode具有丰富的插件库 xff0c 程序猿们可以根据自己需要安装插件 xff0c 大大提高VS code工具的生产力 注意 开发环境 xff1a Ubuntu 16 04 xff0c 开发板 xff1a TLZ7x EasyEV
  • 开发工具 - 设置vs code主题

    概述 不可否认 xff0c 良好的界面风格能给程序员带来更好的软件体验 对于小编这种颜值至上的人来说 xff0c 一个高颜值的软件会让人心情愉悦 xff0c 编写代码效率提高 这也是VS code和Source Insight软件的对比优势
  • 开发工具 - 设置vs code显示中文

    概述 本文主要针对像小编一样对于英文看着比较吃力的小伙伴 xff0c 如果你对自己英文很有信心 xff0c 那么建议忽略此文章 注意 开发环境 xff1a Ubuntu 16 04 xff0c 开发板 xff1a TLZ7x EasyEVM
  • 通信协议 - ntp时间同步

    概述 NTP Network Time Protocol xff09 网络时间协议基于UDP xff0c 用于网络时间同步的协议 xff0c 使网络中的计算机时钟同步到UTC xff0c 再配合各个时区的偏移调整就能实现精准同步对时功能 提
  • 通信协议 - ARINC615A加卸载协议

    概述 ARINC615A加卸载端系统由加载端软件和目标端软件组成 xff0c 通过加载端软件和目标端软件的通信共同完成端系统设备的数据加卸载功能 加载端软件运行于大容量设备中 xff0c 被加载端即目标端软件运行于AFDX交换机内和其他端系