在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2928|回复: 4

[求助] SRIO仿真遇到的问题与思考

[复制链接]
发表于 2017-8-12 22:23:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x

这是例程的仿真,在参数设计时,我只使能了NWRITE的功能,按说仿真图应该很清楚的看明白。但是我还是有一些问题,大家帮忙看一下。

对比两张图。我的问题如下:在第一张图中,在tvalid,tready有效的情况下,tdata=64'h0054 20fde0000600,这是帧头,没有问题,其中关键说明:00是srcID,54表明NWRITE,0f是size-1的数值。余下的36位或34位(没有区别)是地址。
接下来,在接下来的时钟,发送了两个有效的64位数据,64'h0000000000000000,64'h0101010101010101,发送第二个数据时tlast由0变为了1,表明这一帧数据发送完了,size-1=8'h0f,可以发送16个数据,但是只发送了2个数据就结束了,有点浪费。我的这种理解是正确的吗?还是理解错误?这是第一个问题。下面是第二个问题。
据说链路的建立是为了确定串行数据的边界,似乎是有道理的,但是怎么样确立呢,是靠编码的方式,比如8B/10B?
我好奇的部分是链路是怎么建立的,发送端的txn,txp发送数据给另一个ip核的rxn,rxp,接收端把接收到的串行数据处理处理,确定好边界就会通知发送端链路建立好了,此时发送端的link_initialized变为1,发送端可以发送第一张图所示的两个64位的数据。因此这里存在着接收端告诉发送端链路建立好了的机制,怎么告诉呢?接收端用用什么状态标志位来通知接收端呢?
这是逻辑层,也是用户接口,这就是我们所关心的,内部的一些处理暂时不讨论。
 楼主| 发表于 2017-8-12 22:26:44 | 显示全部楼层
捕获.PNG 这是第一张图。
捕获.PNG
这是第二张图。
 楼主| 发表于 2017-8-12 22:37:08 | 显示全部楼层
我认真找了找,这个接收端和发送端之间除了时钟,复位,还有串行数据相连接外,没有其他的数据交互。这就很诡异了。
哦,我找到了。找到了。
发表于 2017-8-13 20:03:38 | 显示全部楼层
你用的是Altera AVST口,你这可以可以看一下物理层的协议。物理层通过K码确定字边界,通过control symbol完成链路训练和初始化
 楼主| 发表于 2017-8-16 11:12:51 | 显示全部楼层
那些个bcbcfdfd类似的东西看来是用来进行边界确定的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 01:54 , Processed in 0.027052 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表