risc-v中文社区

 找回密码
 立即注册
查看: 1703|回复: 0

[原创] tilelink学习笔记(一)

[复制链接]

347

主题

564

帖子

2237

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2237
发表于 2021-10-16 10:30:01 | 显示全部楼层 |阅读模式
五条通道
本文理解基于tilelink的spec 1.8.0:
https://sifive.cdn.prismic.io/si ... link-spec-1.8.0.pdf

关于5条通道
每个网络链路中,TileLink 协议定义了五个逻辑上相互独立的通道,代理可通过它们传递消息。为了避免死锁,TileLink 强制规定了这五个通道上传输消息的优先级。
大部分通道包含控制传输的信号以及实际数据的副本。通道上消息的传递是单向的,主向从接口传送消
息,或从向主接口传送消息。图 2.4 标明了五个通道的方向。
任何访存操作都需要两个最基本的通道:
通道 A: 传送一个请求,访问指定的地址范围或对数据进行缓存操作。
通道 D: 向最初的请求者传送一个数据回复响应或是应答消息。

最高协议兼容层 TL-C 额外包含另外三个通道,具备管理数据缓存块权限的能力:

通道 B: 传输一个请求,对主代理已缓存的某个地址上的数据进行访问或是写回操作。
通道 C: 响应通道 B 的请求,传送一个数据或是应答消息。
通道 E: 传输来自最初请求者的缓存块传输的最终应答,用于序列化。

各个通道传递消息的优先级顺序是 A << B << C << D << E 。设置优先级保证了消息在TileLink 网络的传输过程中不会进入路由环路或是资源死锁。换句话说,代理间消息在所有
通道上的传输过程仍然保持为有向无环图。这对 TileLink 保证无死锁来说是一个必要的特性

.信号描述
以下用表格的形式介绍了 TileLink 五个通道使用到的所有信号,汇总在表 3.3。当结合
每个通道的方向,表 3.2 的信号类型决定了信号的方向。这些信号的宽度由表 3.3 描述的值
进行参数化。

AD为必须实现,BDE为可选
我理解TL-C独有部分是写回形式的实现,而如果只用A和D是直写式的实现


————————————————
版权声明:本文为CSDN博主「草芥小白」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_29768741/article/details/105071031


SiFiveTileLink规格书(中文):



本帖子中包含更多资源

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

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



Archiver|手机版|小黑屋|risc-v中文社区

GMT+8, 2024-4-20 20:06 , Processed in 0.014965 second(s), 18 queries .

risc-v中文社区论坛 官方网站

Copyright © 2018-2021, risc-v open source

快速回复 返回顶部 返回列表