下冰雹 · 2023年04月19日

PAM4,片内片外总线的“座上宾”

image.png

作者| 11号线人

题图| 电影《的士判官》

当智能汽车正在不断成长为一个个移动数据中心的时候,有商业头脑的人正在思考:我该怎样利用这些数据产生价值?。比如是否可以通过传感器搜集车内人员身体的各项指标,并通过大数据分析车内人员的身体健康状况,从而给车内人员个性化推荐健康保险产品、医疗保健产品、运动健身器材等。

而只有工程头脑的我就比较厉害,一直在操心:这么大的数据该怎么传输呢?控制器内部怎么交流、控制器之间怎么互动、控制器与存储器之间怎么喊话?闲来无事,翻阅了一些汽车下一代总线架构的资料,也确实发现了些有意思之处,总结了一下分享出来。

车载以太网已经无可争议地成为下一代车内网络的主干网络,100/1000Base-T1使用的是PAM3调制方式,到了2.5/5/10GBase-T1的时候,变成了PAM4调制方式。

PCIE作为下一代中央计算架构下的片内高速实时通信解决方案的种子选手,在PCIE5.0的时候用的是NRZ调制方式,到了PCIE6.0的时候,变成了PAM4调制方式。

GDDR作为适配GPU而诞生的存储技术,正在不断迭代以满足自动驾驶汽车需要高性能内存来处理大量的实时数据需求。而美光在其最新超带宽解决方案GDDR6X上,使用了革命性的PAM4调制方式。

PAM4调制方式究竟何德何能,能同时俘获总线、存储等一众大佬的芳心,本文我们一探究竟。

01基础

编码、码元、波特率、比特率是对下文理解比较关键的术语,我们先让其抛个头露个面。

(1)编码:无论是GPU、CPU还是MCU,他们能够处理的就是逻辑信号0和1。那我们用什么“符号”来告诉MCU,这个是逻辑信号0,那个是逻辑信号1呢?我们可以用5V高电平脉冲代表逻辑1,2V低电平脉冲代表逻辑0。用高低电平脉冲对应逻辑信号0/1的过程就是编码。

(2)码元:教科书般的解释:在数字通信中常用时间间隔相同的“符号”来表示一个X(二、四或八等)进制数字,这样的时间间隔内的信号称为码元。教科书一贯的表述方式,让人一如既往地理解每个汉字却理解不了这段话的意思。

废话少叙,直接上图。如图1所示,在0~0.2s的时间间隔内使用5V这个“符号”来表示二进制数字1,在0.2~0.4s的时间间隔内使用2V这个“符号”来标识二进制数字0……。每0.2s时间间隔,我们用电压信号表示一个二进制数字,这个电压信号就被称为码元。本例中,因码元表示的是二进制数字0或1,因此被称为二进制码元。

image.png

再来一个例子,如图2所示。在 0 ~ 0.2s的时间间隔内使用5V这个“符号”来表示四进制数字11,在0.2~0.4s的时间间隔内使用3V这个“符号”来表示四进制数字10,在0.4~0.6s的时间间隔内使用0V这个“符号”来表示四进制数字00,在0.6~0.8s的时间间隔内使用2V这个“符号”来表示四进制数字01……。本例中,因码元表示的是四进制数字00/01/10/11,因此被称为四进制码元。

image.png

在上述例子中,“符号”用的是电压值,除此之外,我们还常用信号幅度值、宽度值、频率值等。

(3)比特率:数字信号的传输速率,它用单位时间内传输的二进制代码的有效位(bit)来表示,其单位为每秒比特数(bit/s,bps)。

(4)波特率:数据信号对载波的调制速率,它用单位时间内载波调制状态改变次数来标识,也就是单位时间内传输码元的个数,其单位为波特(Baud)。1波特指每秒传输码元的个数,上例中每秒传输5个码元,所以波特率为5。一个码元可以携带多个bit位信息。携带1bit数据时,比特率等于波特率,如上述例1;携带2bit数据时,比特率等于2倍的波特率,如上述例2;携带4bit数据时,比特率等于4倍的波特率,自己联想。

02NRZ

RZ编码(Return-to-zero Code),即归零编码,正电平代表逻辑1,负电平代表逻辑0。在RZ编码中每传输完一位数据,信号返回到零电平。也就是说,信号线上会出现3种电平:正电平、负电平、零电平。

图3展示了对逻辑信号1011001进行RZ编码的示例。从图中可以看出,因为每位传输之后都要归零,所以接收者只要在信号归零后采样即可,这样就不再需要单独的时钟信号。实际上,RZ编码就是相当于把时钟信号编码在了数据之内。这样的信号也叫作自同步( self-clocking)信号。
image.png

RZ编码可以节省时钟数据线,但是“归零”行为浪费了大量带宽。为了充分利用越来越宝贵的带宽资源,NRZ编码(Non-Return-to-zero Code),即不归零编码方式诞生,最典型的特征就是不需要归零了。

如图4所示,NRZ编码通过使用高、低两种电平来标识逻辑信号1和0。显然,相比RZ编码,NRZ编码带宽提高了一倍,但代价就是丢失了自同步特性。没有了自同步特性的NRZ编码面对的挑战就是如何让接收端一目了然地知道发送端数据发送的速率,并且知道什么时候开始接收数据。

image.png

对一些低速异步传输,通信前,双方设备约定好通信波特率,日子也能凑合着过,例如UART、CAN。但是若想传输高速同步数据,还是要多花几个钱增加一根时钟线,如I2C总线。于是部分工程师就在想,有没有一种编码,既能传输时钟信号,又尽量不损失系统带宽呢?

还真就被这些工程师想出来了,这就是非归零反相编码(None Return Zero-Inverse,NRZ-I)。NRZ-I编码和NRZ编码的区别就是NRZ-I编码用信号的翻转代表一个逻辑,信号保持不变代表另外一个逻辑,如图5所示。

image.png

发送端把时间信息一起当作数据,按照双方协定好的规则发出去,接收端可以按照既定的规则把数据和时钟信息恢复出来以完成解码操作。例如在USB的每个数据包中,最开始都有个同步域(SYNC),这个域固定为0000 0001。这个域通过NRZ-I编码之后,逻辑信号0会造成电平翻转,所以接收者根据接收到的翻转信号不断调整同步频率,从而实现发送和接收端时钟同步。

同时USB协议还规定连续传输7个1,则必须在数据后强制插入一个0,来解决传输数据全是1(在NRZ-I编码下不翻转)的时候,接收端无法进行时钟同步的问题。

03 PAM

无论是数据中心,还是车辆终端,数据都在呈指数级爆发式增长,为此我们需要越来越快的数据传输速度。最容易想到的方式是保持NRZ编码方式不变,直接提升信号速率,比如从28Gbps提高到56Gbps,或者是增加链路通道数。

但是NRZ信号速率直接提升到56Gbps,这对芯片设计和工艺以及PCB和连接器来说都有极大的挑战。一是随着频率的提高,码间串扰、噪声对有用信号的干扰、材料带来的电器损耗和介质带来的介质损耗都相应增加;二是随着频率的提高,均衡技术的难度增加,成本也增加。

基于以上背景,基于PAM的调制技术被重新提上日程。PAM(Pulse Amplitude Modulation,脉冲幅度调制),是一种将模拟信号用脉冲信号取样,并截取出原始信号幅度的调制方法。如图6所示,利用矩形脉冲载波信号采样得到时域信号的幅度值,并在传输信道上,直接传递信号的幅度值。

image.png

在通信领域,最早应用的PAM调制方法是PAM3编码,随后被NRZ编码取代,最近风头正盛的是PAM4编码。PAM4编码作为多阶调制技术的代表,已广泛应用在高速信号互连领域。

四电平脉冲幅度调制(4-Level Pulse Amplitude Modulation,PAM4),就是使用4种不同的信号电平来进行逻辑信号传输,每个时钟周期可以传输2个bit的逻辑信息(00、01、10、11)。因此在相同波特率(码元周期一致)下,PAM4信号比特速率是NRZ信号的2倍,传输速率提高一倍。

PAM4有三种方式来描述每个电平,{-3 -1 1 3},{-1 -1/3 1/3 1}以及{0 1 2 3}。同时PAM4电平代表的二进制映射关系也有两种,一种是传统的线性编码,另外一种则采用了格雷码,当前很多规范里都推荐PMA4信号映射使用格雷码。

因实现同样的信号传输能力,PAM4信号的符号速率只需要达到NRZ信号的一半即可,因此传输通道对其造成的损耗大大减小。因其高效的传输速率,IEEE以太网标准组802.3已确定在400GE/200GE/50GE接口中的物理层采用PAM4编码技术。随着未来技术的发展也不排除使用更多电平的PAM8甚至PAM16信号进行信息传输的可能性。

但是相比NRZ编码,PAM4编码的信噪比减少约9.6dB,也就是受干扰的能力减弱,PAM4采用PAM4编码的系统基本不会有无误码运行的情况,为此PAM4引入前向纠错码(Forward Error Correction,FEC)

FEC的实现是信号在被传输之前预先对其进行一定的格式处理,也就是通过数据流中对原始数据(Real Data)之外增加额外冗余校验信息(Extra Data),如图7所示。在接收端通过分析检查这些冗余信息以及按规定的算法进行解码,最终定位误码位置和修正出错的码。通常这种修正允许系统工作在比较高的误码率下。

image.png

FEC纠错码是非常有效地修正串行链路误码的一种途径。FEC可以通过硬件实现也可用软件实现,但软件逻辑上实施FEC,空间成本和功耗成本非常之高,所以通常都普遍采用硬件方式实现FEC。

如上便是所有关于PAM4的科普。

作者:11号线人
文章来源:十一号组织

推荐阅读

更多IC设计技术干货请关注IC设计技术专栏。
迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。
推荐阅读
关注数
11351
内容数
1224
主要交流IC以及SoC设计流程相关的技术和知识
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息