| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 了解数据传输——从数据握手开始 -> 正文阅读 |
|
[网络协议]了解数据传输——从数据握手开始 |
说来惭愧,相当于半路出家的我入职之前对总线一无所知,入职后便开始看verdi,只知道看波形就要拉出valid/ready信号,而自己在设计电路的时候并不知道这个神奇的握手协议的用处。这两天读了几篇文章有点醍醐灌顶的意思,所以整理一下。 在数据传输中,各级寄存器是如何传输的?在时钟下一直传输吗?如果前级数据没有准备好怎么办(比如有些情况下读取存储器需要多个周期)?如果前级数据准备好了,但是后级还在忙还不能接收怎么办?前级数据会不会因为执行下一个操作造成当前数据丢失?这些就引出了数据传输的节奏控制,空操作,后级对前级的反压问题。解决这些问题就要用到数据传输中的握手协议(就像处理器流水线中的空泡操作插入NOP指令一样,没有准备好就停下来等)。 在“硅谷老李”写的一篇公众号中讲到了三种握手协议:valid-ready握手、4-phase握手、2-phase握手,也是不同模块之间传输数据最基本的协议,它们并不是复杂的网络传输协议如TCP的三次握手协议等。 01 Valid-Ready Handshake基于Valid-Ready握手的典型的总线协议就是AXI协议了,其优势在于master和slave的相对独立性很好,双方不具有依赖性 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 3:40:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |