当前位置: 首页 > news >正文

[SSD科普之1] PCIE接口详解及应用模式

PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准,它原来的名称为“3GIO”,是由英特尔在2001年提出的,旨在替代旧的PCI,PCI-X和AGP总线标准。

一、PCI-E x1/x4/x8/x16插槽模式

PCI-E有 x1/x4/x8/x16等多种插槽模式,那么这些有什么区别呢?

1、PCI-E x16插槽全长89mm,有164根针脚,靠主板外侧端有一卡口,将16x分为前后两组,较短的插槽有22根针脚,主要用于供电,较长的插槽142根,主要用于数据传输,具有16通道所带来的高带宽。

PCI-E x16插槽,主要用于显卡以及RAID阵列卡等,这个插槽拥有优良的兼容性,可以向下兼容x1/x4/x8级别的设备。可以说是PCI-E x16插槽是PCI-E的万能插槽。

由于PCI-E x16插槽常用于显卡,与cpu处理器直接相通,在物理位置上直接靠近cpu,这样显卡与处理器之间的数据交换就可以减少延迟,让系统的性能可以得到充分的发挥。

2、PCI-E x8插槽全长56mm,有98根针脚,与PCI-E x16比较,主要是数据针脚减少至76根,短的供电针脚仍然是22针脚。

为了兼容性,PCI-E x8插槽通常加工成PCI-E x16插槽的形式,但数据针脚只有一半是有效的,也就是说实际带宽只有真正的PCI-E x16插槽的一半。可以观察主板布线,x8的后半段没有线路连接,甚至针脚也没有焊接。

实际上除了旗舰级的主板,能提供多条真正的PCI-E x16插槽外,主流级主板,只会提供一条真正的PCI-E x16插槽,就是最靠近cpu的那条。而第二条和第三条PCI-E x16插槽,则多数是PCI-E x8甚至是x4级别的。

3、PCI-E x4插槽的长度为39mm,同样是在PCI-E x16插槽的基础上,以减少数据针脚的方式实现,主要用于PCI-E SSD固态硬盘,或者是通过PCI-E转接卡安装的M.2 SSD固态硬盘。

PCI-E x4插槽通常由主板芯片扩展而来,不过随着cpu内部PCI-E通道数的增多,现在有部分高端主板可以开始提供直连cpu的PCI-E x4插槽,用于安装PCI-E SSD固态硬盘。

主板上为什么找不到PCI-E x4插槽?其实它是以M.2接口的形式出现的。

不过与PCI-E x8插槽一样,PCI-E x4插槽为了兼容性,现在多数也是做成PCI-E x16插槽的形式,或是扩展为M.2接口,用于安装M.2 SSD、M.2无线网卡或者其它M.2接口设备,其余扩展卡则留给PCI-E x1插槽负责。

4、PCI-E x1插槽的长度是最短的,仅有25mm,相比PCI-E x16插槽,其数据针脚是大幅度减少至14个。PCI-E x1插槽的带宽通常由主板芯片提供,主要用途是独立网卡、独立声卡、USB 3.0/3.1扩展卡等都会用到PCI-E x1插槽,甚至可以通过转接线给PCI-E x1插槽装上显卡,用来挖矿或者实现多屏输出。

X1是用来替代原来的PCI设备的。

注意:为了长、短插槽互相兼容(物理长度兼容、版本的兼容包括1.0、2.0、3.0互相兼容),短插槽自然可以插入长插槽中,但长的插到短的插槽中就不容易,一般X1还是保持原来的长度,而x4、x8、x16在实际的主板中,都统一长度到x16。只是速度不同而已。多余的脚是悬空的,没有用处。这样外形上就统一兼容了,仔细看一下针脚是否焊接了线路,一般主板上都标明了是PCI-E x多少。

二、PCIE版本及规范

截止到当前,PCIE已经发展到6.0版本,以下是PCIE不同版本对比:

三、PCIE中的RC、EP模式

RC:Root Complex,RC设备用于连接CPU/内存子系统 和 I/O设备;RC模式下,PCIE配置头中的类型值为1;RC模式下,支持配置和I/O事务

EP:EndPoint,EP设备通常表示一个串行或I/O设备;EP模式下,PCIE配置头中的类型值为0;EP模式下,PCIE控制器接收针对本地内存空间的读写操作

四、M.2硬盘与PCI-E硬盘的区别

SATA和M.2指的是固态硬盘的接口种类,除了这两种常见的种类,还有其他的接口,例如mSATA和PCIe。固态硬盘不同的接口也代表了它们不同的传输速度,接口为SATA和mSATA的传输速度一般都在500MB/S以下,而常见的M.2接口的固态传输速度最高可达7000MB/S左右。

目前PCIe接口的固态硬盘,以及大部分M.2接口的固态硬盘都使用PCIe标准,SATA使用的就是SATA总线标准。

SATA总线使用的通信协议是AHCI或ATA,传输速度都不算快。PCIe总线使用的通信协议一般都是NVMe,主流配置是PCIe 3.0×4搭配NVMe 1.4,传输速度能达到2000MB/S以上,说它是主流是因为这样性价比最高。

1、PCIE:

目前使用较多的是PCIe X4,市面上流通较多的是PCI-E 2.0版本和3.0版本,对应的X4带宽为16Gbps/32Gbps,折算成传输速率约为2GB/s和3.93GB/s,相比SATA接口,这已经是非常恐怖的速率了。

当然,另一方面,PCI-E接口的固态硬盘,其价格昂贵到令许多普通用户望而却步,无法承受。

2、M.2:

M.2原名为NGFF接口,标准名称为PCI Express M.2 Specification。它是为超极本(Ultrabook)量身定做的新一代接口标准,以取代原来基于mini PCIe改良而来的mSATA固态硬盘。无论是更小巧的规格尺寸还是更高的传输性能M.2都远胜于mSATA。随着SATA接口瓶颈不断凸显,越来越多的主板厂商也开始在自家产品线上预留M.2接口,主流的M.2接口有三种尺寸,分别是M.2 2242、2260、2280。

M.2接口可以同时支持SATA及PCI-E通道,后者更容易提高速度。这里需要注意的是,M.2的连接器有三种类型,被称为Socket 1、2、3,Socket1由于尺寸比较特殊,比较少用,重点是Socket 2和3。Socket 2支持SATA和PCI-E X2接口,Socket 3则只支持PCI-E X4接口。如果是走SATA通道,那么传输速率就和SATA 6Gbps一模一样,没有区别,如果是走PCI-E通道,才能享受到超过SATA的高速。

下图就是Socket 2和3的外观区别,这里面引入B key和M key这两个概念:

接口连带B key一起使用,走SATA或PCI-E x2通道,就是Socket 2接口;

接口连带M key一起使用,走PCI-E x4通道,就是Socket 3接口。

五、PCIE硬件设计注意事项

PCIe2.0 设计中请注意:

1、Slot 设计时,外围电路及电源需要满足 Spec 要求;

2、PCIe2.0接口的TXP/N差分信号上串接的100nF交流耦合电容,AC耦合电容建议使用0201封装,更低的 ESR 和 ESL,也可减少线路上的阻抗变化;

PCIe3.0 设计中请注意:

1、Slot 设计时,外围电路及电源需要满足 Spec 要求;

2、PCIe3.0 接口的 TX0P/N,TX1P/N 差分信号上串接的 220nF 交流耦合电容,AC 耦合电容建议使用 0201 封装,更低的 ESR 和 ESL,也可减少线路上的阻抗变化。

————————————————

版权声明:本文为CSDN博主「流年過客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qq_37659014/article/details/124588126

相关文章:

[SSD科普之1] PCIE接口详解及应用模式

PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准,它原来的名称为“3GIO”,是由英特尔在2001年提出的,旨在替代旧的PCI,PCI-X和AGP总线标准。一、PCI-E x1/x4/x8/x16插槽模式PCI-E有 x1/…...

Linux设备驱动模型与 sysfs实现分析

RTOS和Linux系统上开发驱动的方式非常的不同,在RTOS系统下,驱动和驱动之间并没有实质性的联系,不同的驱动和BSP之间仅仅通过一层很薄很薄的设备管理框架聚合在一起构成RTOS的设备管理子系统。图形化表示如下: 设备驱动&BSP之间互相独立,互不影响,互不依赖,独立实现,…...

软考高级之制定备考计划

制定备考计划 高项准备时间最好是三个月以上,分为三个阶段来复习。 第一个阶段——熟悉知识点 第二个阶段——刷题 第三个阶段——冲刺复习 具体操作 第一个阶段 这个阶段的复习以教材和视频为主,掌握重要知识点。基础知识要打牢。例如&#xff1…...

[Pytorch] Linear层输出nan

参考链接: https://discuss.pytorch.org/t/well-formed-input-into-a-simple-linear-layer-output-nan/74720/11 总结原因: numpy需要更新 PS. 查看numpy版本号 打开Anaconda Prompt 进入环境 输入命令conda activate envname 然后输入pip show numpy…...

2023-2-19-What is ‘ template<typename E, E V> ‘?

目录C里面template怎么用inline函数模板类模板函数模板特化C里面template怎么用 template是什么? template其实是C的一种语法糖,本意是去简化程序员的工作. void swap(int *a,int *b){int temp *a;*a *b;*b temp; }比如在写一个交换函数的的时候,参数为两个in…...

华为OD机试题 - 字符串加密(JavaScript)

最近更新的博客 华为OD机试题 - 任务总执行时长(JavaScript) 华为OD机试题 - 开放日活动(JavaScript) 华为OD机试 - 最近的点 | 备考思路,刷题要点,答疑 【新解法】 华为OD机试题 - 最小步骤数(JavaScript) 华为OD机试题 - 任务混部(JavaScript) 华为OD机试题 - N 进…...

美团前端一面手写面试题

实现斐波那契数列 // 递归 function fn (n){if(n0) return 0if(n1) return 1return fn(n-2)fn(n-1) } // 优化 function fibonacci2(n) {const arr [1, 1, 2];const arrLen arr.length;if (n < arrLen) {return arr[n];}for (let i arrLen; i < n; i) {arr.push(arr[…...

2D图像处理:缺陷检测--仿照Halcon的Variation Model

文章目录 基于 C++&Opencv 的检测结果(Robust模式-MAD)一、Variation Model1.1 准备和训练模型方法1.2 比较模板方法1.3 过滤(保留符合缺陷特征的区域)二、参考基于 C++&Opencv 的检测结果(Robust模式-MAD) 一、Variation Model Halcon中的Variation Model主要是将待…...

JavaScript 注释

JavaScript 注释可用于提高代码的可读性。JavaScript 注释JavaScript 不会执行注释。我们可以添加注释来对 JavaScript 进行解释&#xff0c;或者提高代码的可读性。单行注释以 // 开头。本例用单行注释来解释代码&#xff1a;实例// 输出标题&#xff1a;document.getElementB…...

浅谈使用CDN加速的OSS

目录引出OSS对象存储服务CDNCDN加速OSS资源总结引出 之前&#xff0c;我在写项目的时候&#xff0c;因为项目中存在音视频的存储&#xff0c;然后我看圈子里面的人都是使用OSS对象存储来处理&#xff0c;然后我也跟风去使用了&#xff0c;然后在之后&#xff0c;我一个朋友问我…...

华为OD机试题 - 服务依赖(JavaScript)

最近更新的博客 华为OD机试题 - 任务总执行时长(JavaScript) 华为OD机试题 - 开放日活动(JavaScript) 华为OD机试 - 最近的点 | 备考思路,刷题要点,答疑 【新解法】 华为OD机试题 - 最小步骤数(JavaScript) 华为OD机试题 - 任务混部(JavaScript) 华为OD机试题 - N 进…...

整合K8s+SpringCloudK8s+SpringBoot+gRpc

本文使用K8s当做服务注册与发现、配置管理&#xff0c;使用gRpc用做服务间的远程通讯一、先准备K8s我在本地有个K8s单机二、准备service-providerpom<?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.…...

Django框架之模型视图--HttpResponse对象

HttpResponse对象 视图在接收请求并处理后&#xff0c;必须返回HttpResponse对象或子对象。HttpRequest对象由Django创建&#xff0c;HttpResponse对象由开发人员创建。 1 HttpResponse 可以使用django.http.HttpResponse来构造响应对象。 HttpResponse(content响应体, con…...

Linux下的Jenkins安装教程

当前环境 CentOS 7.8Java 11&#xff08;注意当前jenkins支持的Java版本最低为Java11&#xff09;FinalShell 3.9&#xff08;操作环境&#xff09; 安装Jenkins PS&#xff1a;不建议使用Docker安装Jenkins&#xff0c;因为使用Jenkins的时候一般会调用外部程序&#xff0c;…...

[软件工程导论(第六版)]第5章 总体设计(课后习题详解)

文章目录1. 为每种类型的模块耦合举一个具体例子。2. 为每种类型的模块内聚举一个具体例子。3. 用面向数据流的方法设计下列系统的软件结构。4. 美国某大学共有200名教师&#xff0c;校方与教师工会刚刚签订一项协议。按照协议&#xff0c;所有年工资超过$26000&#xff08;含$…...

力扣62.不同路径

文章目录力扣62.不同路径题目描述方法1&#xff1a;暴力深搜(超时未通过)方法2&#xff1a;动态规划力扣62.不同路径 题目描述 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器…...

【验证码的识别】—— 图形验证码的识别

前言 &#xff08;结尾有彩蛋欧&#xff09; 目前&#xff0c;许多网站采取各种各样的措施来反爬虫&#xff0c;其中一个措施便是使用验证码。随着技术的发展&#xff0c;验证码的花样越来越多。验证码最初是几个数字组合的简单的图形验证码&#xff0c;后来加入了英文字母和混…...

RocketMQ云服务器和本地基础安装搭建及可视化控制台安装使用

一起学编程&#xff0c;让生活更随和&#xff01; 如果你觉得是个同道中人&#xff0c;欢迎关注博主gzh&#xff1a;【随和的皮蛋桑】。 专注于Java基础、进阶、面试以及计算机基础知识分享&#x1f433;。偶尔认知思考、日常水文&#x1f40c;。 目录一、RocketMQ 介绍1、Ro…...

JavaScript:简单理解防抖和节流,如何定义防抖和节流函数?

防抖 防抖函数&#xff0c;就是防止抖动&#xff0c;避免事件重复触发。比如监听输入框的输入&#xff0c;不应该在用户每输入一个字符就触发监听&#xff0c;而是在用户输入结束后再来监听。 流程为&#xff1a; 1、事件触发&#xff1b; 2、开启定时器&#xff1b; 3、当事…...

【opencv 系列】第3章 图像的8种变换

文章目录前言上代码1.1 复习读取和显示1.2 图像放大、缩小 cv2.resize()1.3 图像平移1.4 图像旋转1.5 图像仿射变换1.6 图像的裁剪1.7 位运算(AND, OR, XOR)1.8 图像的分离和融合1.9 颜色空间 color space前言 坦白说&#xff0c;这一章我认为是整个opencv系列最难的一张&…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

ubuntu搭建nfs服务centos挂载访问

在Ubuntu上设置NFS服务器 在Ubuntu上&#xff0c;你可以使用apt包管理器来安装NFS服务器。打开终端并运行&#xff1a; sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享&#xff0c;例如/shared&#xff1a; sudo mkdir /shared sud…...

(十)学生端搭建

本次旨在将之前的已完成的部分功能进行拼装到学生端&#xff0c;同时完善学生端的构建。本次工作主要包括&#xff1a; 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

1.3 VSCode安装与环境配置

进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件&#xff0c;然后打开终端&#xff0c;进入下载文件夹&#xff0c;键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

多种风格导航菜单 HTML 实现(附源码)

下面我将为您展示 6 种不同风格的导航菜单实现&#xff0c;每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...