网站建设课程设计心得体会,新产品上市的营销策划方案,免费做金融网站,网址的域名一#xff1a;基本概念
1.UltraScale#xff1a;是Xilinx ZYNQ 系列产品
2.spec#xff1a;大家现在别纠结于具体的命令#xff0c;了解一下就好。老板交代干活的时候#xff0c;再找spec一个一个看吧————猜测估计是命令表之类的。
Admin指令#xff1a;——如下基本概念
1.UltraScale是Xilinx ZYNQ 系列产品
2.spec大家现在别纠结于具体的命令了解一下就好。老板交代干活的时候再找spec一个一个看吧————猜测估计是命令表之类的。
Admin指令——如下 IO指令——如下 3.TLP报文部分在学习TLP报文之前需要了解pcie的分层结构绝大多数的总线或者接口也包括pcie都是采用分层实现的如下图 事务层Transaction Layer根据上层软件层或者应用层请求Request的类型、目的地址和其它相关属性把这些请求打包产生TLP也就是Transaction Layer Packet。然后这些TLP往下经历数据链路层物理层最终到达目标设备。根据软件层的不同请求事务层产生四种不同的TLP请求 Memory (主流) IO Configuration非主流——上电枚举和配置阶段才会有host发起 Message非主流——中断或者有错误等情况下
4.最常见的tcp:PCIe线上主流传输的是Memory访问相关的TLPHost与device或者device与device之间数据都是在彼此的Memory之间
5.除了Memory write和Message是 psot及不需要回应的tlp外其余tlp都是 non—post及需要响应的 二pcie相关知识用xilinx的ip核进行管理相关参数在gui界面设置
1.但PCIe是可以最多32条道的x32
2.全双工模式
3.pcie拓扑结构所有pcie的设备均挂在pcie总线上谁要使用需要得到总线相关的使用权。
4.PCIe Endpoint就是PCIe终端设备比如PCIe SSDPCIe网卡
5.Host与PCIe设备之间或者PCIe设备与设备之间数据传输都是以PacketTransaction Layer Packet形式进行的.
7.RC是树的根或者主干它为CPU代言——所有的配置空间Configuration的访问都是Host发起的确切的说是RC发起的 如上图Switch就是负责脱衣服看数据究竟是发送给哪个EP1的。 8.一个TLP最大载重是4KB数据长度大于4KB的话就需要分几个TLP传输。
9.gui 界面的class code ——010802 三ssd相关知识
1.现在很多SSD都开始使用PCIe接口——为了追求速度更快上限速度就是pcie的接口速度
2.SSD——半双工
四NVMe相关知识——他是一种通信协议
1.NVMe是一种Host与SSD之间通讯的协议它在协议栈中隶属高层——在三国的话就是诸葛亮的角色
2.军师设计好计谋就交由手下五虎大将去执行——虎将PCIe去完成任何命令。
3.虽然NVMe的命令可能可以由别的接口协议完成但NVMe与PCIe合作形成的战斗力无疑是最强的。
4.AHCI和SATA的协议犹如刘备去指挥虎将PCIe——垃圾。还需诸葛NVMe来指挥。
5.所有SATA接口的SSD你去看性能参数会发现都不会超过600MB/s——垃圾。
6.NVMe有两种命令一种叫Admin Command用以Host管理和控制SSD。二种叫I/O Command用以Host和SSD之间数据的传输。
7命令有了那么Host又是怎么把这些命令发送给SSD执行呢——
8NVMe有三宝如下图——DB ,SQ,CQ 9:如上图,RC(root complex)就是CPU的代言人,小蜜。
10.
说NVMe处理命令需要几步答八步
第一步Host写命令到SQ
第二步Host写DB通知SSD取指
第三步SSD收到通知于是从SQ中取指
第四步SSD执行指令
第五步指令执行完成SSD往CQ中写指令执行结果
第六步然后SSD发短信通知Host指令完成
第七步收到短信Host处理CQ查看指令完成状态
第八步Host处理完CQ中的指令执行结果通过DB回复SSD指令执行结果已处理辛苦您了
11. 有SQ就必然有CQ ,SQ/CQ中的”Q”,是Queue队列的意思.
12.无论host想从ssd读数据还是写数据host都是拿来主义ssd都是快递员Host也有两种方式来告诉SSD数据所在内存位置一是PRP (Physical Region Page, 不是P2P!)二是SGL (Scatter/Gather List)。
13.Physical Region PagePRP Entry本质就是一个64位内存物理地址。 五解读复旦大学的demo
1.用MicroBlaze核解析Admin指令IO指令用PL逻辑实现。——因为nvme有两种命令形式为Admin指令Host管理和控制SSDIO指令以Host和SSD之间数据的传输
2.设计中创建了一个Admin Queue8个IO Queue如demo 工程
3.启用了XDMA的4条stream通道传输数据。数据可以是SQE、CQE等指令也可以是要转移的数据。在demo设计中2条steam用于读写SQE/CQE/PRP2条steam用于读写数据。、descriptor bypass通道Descriptor Bypass仅针对通道提供了描述符旁路模式的仿真模型。此设计可以扩展以支持其他通道。可通过1111来全部打开找到了均通过XDMA的ip的gui界面设定的。