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. 同步mysql数据到ElasticSearch的最佳实践

    Elasticsearch是一个实时的分布式搜索和分析引擎.它可以帮助你用前所未有的速度去处理大规模数据.ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全 ...

  2. nginx配置及常见问题

    问题 1.openresty请求时,不能解析域名? openresty依赖配置里面的resolver 192.168.1.1; 2.文件上传是报错413 Request Entity Too Larg ...

  3. Android Activity为什么要细化出onCreate、onStart、onResume、onPause、onStop、onDesdroy这么多方法让应用去重载?

    原文:http://www.xuebuyuan.com/1608083.html 最近在研究Activity的启动流程,老罗的blog在看,也找了其它资料学习,也跟过Android4.3的源码, 在跟 ...

  4. Systemd入门教程:实战篇(转)

    作者: 阮一峰 日期: 2016年3月 8日 上一篇文章,我介绍了 Systemd 的主要命令,今天介绍如何使用它完成一些基本的任务. 一.开机启动 对于那些支持 Systemd 的软件,安装的时候, ...

  5. 2. LVS/DR 配置

    平台:RedHat Enterprise Linux centos6.3       ipvsadm             ipvs 1.DR模型 DR模型:直接路由模型,每个Real Server ...

  6. C#实现在Form上截取消息的两种方法

    比较常用的是重载Form的DefWndProc方法,例如截取鼠标按下的消息: protected override void DefWndProc(ref Message m) { if ( m.Ms ...

  7. 【转】VirtualBox网卡设置

    原文: https://blog.csdn.net/jwpker/article/details/45870903 ------------------------------------------ ...

  8. 2016.6.20 tomcat端口始终被占用

    我在使用tomcat7时,服务开启时,始终提示端口被占用. 但是从进程中又看不到开启的tomcat. 最后在资源监视器中,结束重复开启的tomcat. (注意是资源监视器,刚开始的时候看成管理器,怎么 ...

  9. es创建索引的格式,并初始化数据

    es创建索引的格式,并初始化数据 学习了:https://www.imooc.com/video/15759 1, 创建格式 POST 127.0.0.1:9200/book/novel/_mappi ...

  10. SSO单点登录系列6:cas单点登录防止登出退出后刷新后退ticket失效报500错

    这个问题之前就发现过,最近有几个哥们一直在问我这个怎么搞,我手上在做另一个项目,cas就暂时搁浅了几周.现在我们来一起改一下你的应用(client2/3)的web.xml来解决这个2b问题,首先看下错 ...