总线协议
文章平均质量分 93
AMBA/AXI-4/APB/AHB总线协议学习心得
Angel20200620
苦难,是化了妆的祝福~
展开
-
可乐学习NVMe之四:粗茶淡饭NameSpace
1. 基本概念 从前文中我们知道,一个NVMe SSD系统主要分三个部分,SSD Controller、闪存空间、PCIe接口。一个NVMe Subsystem通常被称为SSD。 如果把闪存空间划分成若干个独立的逻辑空间,每个空间逻辑块地址(LBA)范围是0到N-1 (N是逻辑空间大小),这样划分出来的每一个逻辑空间我们就叫做NS。对SATA SSD来说,一个闪存空间只对应着一个逻辑空间,与之不同的是,NVMe SSD可以是一个闪存空间对应多个逻辑空间。 每个NS都有一个名称与ID,ID是独一无原创 2022-04-07 11:31:41 · 4972 阅读 · 0 评论 -
可乐学习NVMe之三:解读PRP/SGL
前两个章节结束了总体框架和命令分析。可乐学习NVMe之一:为什么SSD需要NVMe可乐学习NVMe之二:细品SQ/CQ/DB接下来我们继续看NVMe的另外一个世界:数据寻址方式即我是data, 我从Host来,要到SSD去,或者我从SSD来,要去到Host中去。Host --> SSD Write Data:Host如果想往SSD上写入用户数据,需要告诉SSD写入什么数据,写入多少数据,以及数据源在内存中的什么位置,这些信息包含在Host向SSD发送的Write命令中。每笔用户数据对应着原创 2022-04-06 17:06:52 · 4978 阅读 · 4 评论 -
可乐学习NVMe之二:三只熊SQ/CQ/DB
上回书说道,NVMe有三宝:SQ,CQ和DB。接下来我们就详细分析这三个指令。Host往SQ中写入命令, SSD往CQ中写入命令完成结果。SQ与CQ的关系,可以是一对一的关系,也可以是多对一的关系,但不管怎样,他们是成对的:有因就有果,有SQ就必然有CQ。有两种SQ和CQ,一种是Admin,另外一种是I/O,前者放Admin命令,用以Host管理控制SSD,后者放置I/O命令,用以Host与SSD之间传输数据。Admin SQ/CQ 和I/O SQ/CQ各司其职,你不能把Admin命令放到I/O SQ原创 2022-04-06 14:39:02 · 3061 阅读 · 1 评论 -
可乐学习NVMe之一:为什么SSD需要NVMe
1. NVMe SSD 结构简图整体来看,NVMe SSD可以分为三部分,host端的驱动NVMe Driver、PCIe+NVMe实现的控制器以及NAND Flash+DDR4/DDR5存储介质。芯片回片后Host侧软件或者驱动开发主要在应用层,通过一些测试工具进行benchmark跑分测试,performance性能分析,latency分析、stress-testing等等:那么,接下来阐述为什么SSD需要NVMe,并再后续的文章介绍NVMe协议分析,个人针对协议的理解,如果有不当之处,还请各原创 2022-04-06 10:42:21 · 1684 阅读 · 0 评论 -
PCIe链路训练link training--举例波形分析
1. 时钟与接口速率关系DUT采用synopsys PCIe Controller IP 作为End Port。DUT一共有4条Lane, Pipe Width 为32bit, PCIe最大速率为Gen4.0。其中波形中以rc_xx为标志的信号均为rc侧pipe interface, 比如rc_rate表示当前接口速率:3‘b000 : 表示为PCIe Gen13’b001 : 表示为PCIe Gen23’b010 : 表示为PCIe Gen33’b011 : 表示为PCIe Gen4P原创 2022-03-30 14:19:12 · 9489 阅读 · 7 评论 -
PCIe链路训练link training
1. 链路训练基本概念PCIe总线中的链路初始化与训练(Link Initialization & Training)是一种完全由硬件实现的功能,处于PCIe体系结构中的物理层。整个过程由链路训练状态机(Link Training and Status State Machine,LTSSM)自动完成,也就说基本没有数据链路层和事务层啥事。LTSSM在PCIe体系结构中的位置的示意图如下:在系统复位后,会自动进行链路训练,以达成以下目标:位锁定(Bit Lock)、字符锁定(Symbol L原创 2022-03-28 12:14:38 · 13191 阅读 · 2 评论 -
PCIe传输速率、吞吐量、PCLK计算方式
1. PCIe传输速率Width(带宽): 通常用x1、x2、x4、x8等表示,表示该链路由几条lane组成。Speed(速率): 通常用2.5GT/s、5GT/s、8GT/s,表示每条lane上的传输速率。PCIe1.0为2.5GT/s,PCIe2.0为5GT/s,PCIe3.0为8GT/s,2. PCIe相关概念传输速率为每秒GT, 而不是Gbps, 因为传输量包括不提供额外吞吐量的开销位,比如PCIe Gen1 和PCIe Gen2使用8b/10b编码方案,导致占用了20%(2/10)的原创 2022-03-25 12:24:05 · 7503 阅读 · 2 评论 -
AXI-4总线协议学习
1、简介AXI4总线协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。而所谓的总线、接口和协议,三个词常常被联系在一起,分别理解三个词的含义: 总线: 是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由由数据线、地址线、控制线等构成。 接口: 是一种连接标准,又常常被称之为物理接口。 协议: 是传输数据的规则。常用的AXI总线有:AXI4.0、 AX原创 2022-03-21 10:56:47 · 5452 阅读 · 0 评论 -
AMBA总线协议之一【APB总线协议】
APB总线协议1、AMBA总线介绍2、APB总线概述与特点2.1 信号说明2.2 微控制器典型应用3、APB总线传输3.1 状态机3.2 写操作时序3.3 读操作时序3.4 Error Respond1、AMBA总线介绍AMBA(Advanced Microcontroller Bus Architecture) 总线是由ARM公司提出的一种开放性的片上总线标准,它独立于处理器和工艺技术,具有高速度低功耗等特点。Soc系统芯片的各个模块需要接口来连接,而AMBA总线作为子系统之间共享数据通路,AMBA原创 2022-03-01 10:20:32 · 607 阅读 · 0 评论 -
MIPI CSI-2 协议解析
CSI-2标准协议前言一、Overview of CSI-2二、CSI-2 layer Definitions三、 Camera Control Interface(CCI)3.1 数据传输协议(Data Transfer Protocol)3.1.1 消息类型(Message Type)3.1.2 读写操作(Read/Write Operations)3.1.2.1 随机位置单次读3.1.2.2 当前位置单次读3.1.2.3 随机位置连续读3.1.2.4 当前位置连续读3.1.2.5 随机位置单次写3.1原创 2022-02-23 17:40:18 · 20331 阅读 · 7 评论 -
MIPI DSI-2 协议解析
文章目录前言一、DSI-2简单介绍1.1 DSI 层次定义1.2 Command和Video模式1.2.1 Command模式1.2.2 Video 模式1.2.3 Virtual Channel Capability 虚拟通道特性二、DSI 物理层5.1 DSI 物理层D Option5.1.1 D-PHY 数据流向5.1.2 D-PHY Command模式接口5.1.3 D-PHY Video 模式接口5.1.4 D-PHY 时钟管理5.2 Multi-Lane数据合并与分发5.2.1 D-PHY 多条原创 2022-02-18 17:19:04 · 5945 阅读 · 3 评论