1.The type of SRIO packageis determined by the combination of Ftype(format type) and Ttype(transaction type) fields in the packet。

SRIO Packets:

The RapidIOdata stream consists of data fields pertaining to the logical layer, thetransport layer, and the physical layer.

• The logical layer consists of the header (defining the type of access) and thepayload (if present).

• The transport layer is somewhat dependent on the physical topology in thesystem, and consists of source and destination IDs for the sending and receivingdevices.

• The physical layer is dependent on the physical interface (i.e. serial versus parallelRapidIO) and includes priority, acknowledgement, and error checking fields.

Operation Sequence:

SRIO transactions are based on request and response packets. Packets are thecommunication element between endpoint devices in the system. A master or initiatorgenerates a request packet which is transmitted to a target. The target then generates aresponse packet back to the initiator to complete the transaction(如NWRITE_R求情包,需要slave给出response). SRIO endpoints are typically not connected directly to each other but instead have intervening connection fabric devices.

SRIO packet Tyoe:

The type of SRIO packageis determined by the combination of Ftype(format type) and Ttype(transaction type) fields in the packet.Table 2-2 lists all supported combinations of Ftype/Ttype and the corresponding decoded actions on the packets.

如根据上图,涉及到DirectIO的包类型有:

#define DIOTYPE_NREAD    (0x24)       //Srio transfer type for a NREAD request packet

#define DIOTYPE_NWRITE   (0x54)      //Srio transfer type for a NWRITE packet

#define DIOTYPE_NWRITE_R (0x55)   // Srio transfer type for a NWRITE with response packer

#define DIOTYPE_SWRITE   (0x60)       //Srio transfer type for a SWRITE packet

#define DIOTYPE_DOORBELL (0xA0)   //Srio transfer type for a DOORBELL packet

举例,两种不同的包格式,FType 5(message passage包),11(SWRITE包),区别仅在逻辑层:

Message Passing Logical Specification(包含FType 11):Only device Ids and mailbox numbers are transferred in the packets, no memory addresses;Destination Device is responsible for storing and managing memory space.

Direct I/O Logical Specification(包含FType 6):Target memory address is specified in the transferred packet;Source device needs to know memory map of destination device.

对于上述FType 6的包,即SWRITE包,他是DirectIO操作的一种包。如在做DirectIO操作时,可以通过配置LSU_Reg5寄存器选择包格式,即选择了相应的操作,对于TI C66x DSP SRIO DirectIO操作,在master端只需要配置LSU寄存器,之后,硬件会自动打包,将LSU寄存器中的值对应到协议中去,按照协议中的包格式(如上图)形成传输包,再加上payload,发送给slave端:

转载自:http://blog.csdn.net/yiyeguzhou100/article/details/35797539

TI_DSP_SRIO - package type(包格式)的更多相关文章

  1. IM通信协议逆向分析、Wireshark自定义数据包格式解析插件编程学习

    相关学习资料 http://hi.baidu.com/hucyuansheng/item/bf2bfddefd1ee70ad68ed04d http://en.wikipedia.org/wiki/I ...

  2. ETHERNET数据包格式( IP & UDP & ICMP & ARP )

    ETHERNET数据包格式( IP & UDP & ICMP & ARP ) ETHERNET数据包格式 一.ETHERNET 数据包的协议类型 TYPE 的值为 0x0800 ...

  3. RTP 包格式 详细解析

    H.264 视频 RTP 负载格式 1. 网络抽象层单元类型 (NALU) NALU 头由一个字节组成, 它的语法如下: +---------------+      |0|1|2|3|4|5|6|7 ...

  4. 详解BLE 空中包格式—兼BLE Link layer协议解析

    BLE有几种空中包格式?常见的PDU命令有哪些?PDU和MTU的区别是什么?DLE又是什么?BLE怎么实现重传的?BLE ACK机制原理是什么?希望这篇文章能帮你回答以上问题. 虽然BLE空中包(pa ...

  5. [转帖]IP /TCP协议及握手过程和数据包格式中级详解

    IP /TCP协议及握手过程和数据包格式中级详解 https://www.toutiao.com/a6665292902458982926/ 写的挺好的 其实 一直没闹明白 网络好 广播地址 还有 网 ...

  6. package.json包描述文件说明

    //commonjs包规范-说明 { "name": "leyi",//包名,不允许空格 "description": "hell ...

  7. [na]ip数据包格式

    IP Datagram Structure 字段名 解释 版本 IP协议的版本,目前的IP协议版本号为4,下一代IP协议版本号为6. 首部长度 IP报头的长度.固定部分的长度(20字节)和可变部分的长 ...

  8. IP数据包格式

    IP数据包格式 0 4 8 16 31 |4位版本 | 4位首部长度 | 8位服务类型 | 16位总长度(字节数)| |16位标识 | 3位标志 | 13位片偏移 | |8位生存时间| 8位协议 | ...

  9. H264的RTP负载打包的数据包格式,分组,分片

    H264的RTP负载打包的数据包格式,分组,分片 1.    RTP数据包格式 RTP报文头格式(见RFC3550 Page12): 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 ...

随机推荐

  1. luogu P1122 最大子树和

    题目描述 小明对数学饱有兴趣,并且是个勤奋好学的学生,总是在课后留在教室向老师请教一些问题.一天他早晨骑车去上课,路上见到一个老伯正在修剪花花草草,顿时想到了一个有关修剪花卉的问题.于是当日课后,小明 ...

  2. 基于Bootstrap的对话框插件bootstrap-dialog

    写在前面: bootstrap本身提供了它自己的模态框,但是感觉并不太友好,当需要在页面点击一个按钮打开一个窗口页面时,使用原有的bootstrap的模态框,会把所有的代码全部写在一个jsp页面,显得 ...

  3. (转)Unity3D 开发优秀技术资源汇总

    原文:http://www.j2megame.com/html/xwzx/ty/3179.html Unity3D 博客 http://www.dapp.com.br/  by Dapp http:/ ...

  4. sqlite db-journal文件产生原因及说明

    今天在Android中将sqlite的数据库文件生成在SD卡上的过程中,发现生成的.db文件的旁边 生成了一个大小为0的与数据库文件同名的.db-journal文件,不明白此文件的用途,于是 goog ...

  5. Apache Beam WordCount编程实战及源代码解读

    概述:Apache Beam WordCount编程实战及源代码解读,并通过intellij IDEA和terminal两种方式调试执行WordCount程序,Apache Beam对大数据的批处理和 ...

  6. [转载]CentOS 6.5 安装五笔输入法

    FROM:http://blog.sina.com.cn/s/blog_49d6d41c0101i0zs.html 1.一般安装了中文环境会默认安装了好多输入法,先删除了ibus  sudo yum ...

  7. WINDOWS 2003系统时间24小时制与12小时显示格式不一致问题与解决

    WINDOWS 2003 SERVER系统时间24小时制与12小时格式不一致问题,而导致论坛或BLOG不能正常显示更新日期的问题及解决方法问题的方法. 在WIN2003上出现这种情况的原因是在程序中使 ...

  8. python学习的推荐教程

    评注: 还未细看, http://www.crifan.com/files/doc/docbook/python_beginner_tutorial/release/html/python_begin ...

  9. SELinux的Docker安全性

    原文译自:http://opensource.com/business/14/7/docker-security-selinux 这篇文章基于我今年在DockerCon一个讲座,它将讨论我们当前听到的 ...

  10. EffectiveJava(8)覆盖equals是要遵守的约定

    覆盖equals是要遵守的约定 1.覆盖种类: -类的每个1实例本质上都是唯一的 -不关心类是否提供了"逻辑相等"的测试功能(Random测试是否能随机相同数字) -超类已经覆盖了 ...