自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 DDR PHY常见信号介绍【转载】

CAS Latency,简称CL,指的是从CAS(Column Address Strobe,列地址选通)信号发出到第一笔数据实际被读取并输出的时间间隔。例如,CL7的内存意味着在发出读取命令后,需要等待7个时钟周期才能获得数据,而CL9的内存则需要等待9个周期。尽管这些地址线在物理上是共用的,但在不同的时间点上,它们分别表示行地址或列地址。在相同频率的内存中,较低的CL值(如CL7)相较于较高的CL值(如CL9)可以带来显著的性能提升,有时甚至能高达22%。较短的tRCD值意味着更快的行到列的转换时间。

2024-10-02 11:02:44 37

原创 AXI总线协议

写地址通道:当主机驱动有效的地址和控制信号时,主机可以断言AWVALID,一旦断言,需要保持AWVALID的断言状态,直到时钟上升沿采样到从机的AWREADY。读地址通道:当主机驱动有效的地址和控制信号时,主机可以断言ARVALID,一旦断言,需要保持ARVALID的断言状态,直到时钟上升沿采样到从机的ARREADY。写数据通道:在写突发传输过程中,主机只能在它提供有效的写数据时断言WVALID,一旦断言,需要保持断言状态,知道时钟上升沿采样到从机的WREADY。最低的地址整个传输的数据大小对齐。

2024-10-02 10:21:23 68

原创 电源轨道上噪声的根本原因

板级电源分配网络设计的频率范围约是从100K-100MHz之间,这个频率范围正是电路板平面和多层陶瓷贴片电容器MLCC的作用范围。在10MHz到100MHz的频率范围内,封装电感和片上电容对电源分配网络的阻抗起到了决定作用。电源分配网络的设计目标就是,设计电源分配网络的阻抗使其在负载电流的频谱内始终低于目标阻抗。在10Khz-100khz的频率范围内,去耦电容器对电源分配网络的阻抗起到了决定作用。在0-10khz的频率范围内,电源模块决定了从芯片向电源分配网看过去的阻抗。

2024-05-15 21:23:20 57

原创 DDR4 VS DDR5差异

DDR4 VS DDR5差异

2024-05-04 22:58:11 186

原创 电容去耦的两种解释

在图2中,我们是通过去耦电容来达到这一要求的,因此从等效的角度出发,可以说去耦电容降低了电源系统的阻抗。有些是从局部电荷存储 (即储能)的角度来说明,有些是从电源分配系统的阻抗的角度来说明,还有些资料的说明更为混乱,一会提储能,一会提阻抗,因此很多人在看资料的时候感到有些迷惑。只要电容 C 足够大,只需很小的电压变化,电容就可以提供足够大的电流,满足负载瞬态电流的要求。储能电容的存在使负载消耗的能得到快速补充,因此保证了负载两端电压不至于有太大变化,此时电容担负的是局部电源的角色。其原理可用图 1 说明。

2024-05-03 16:28:13 60

原创 DDR5 write leveling training解析

这里协议比较晦涩,需要解析下这里需要理解DDR5和DDR4的区别,DDR5在write leveling training这里相比DDR4有变化,简单说是更为灵活了,支持ck和DQS之间的路径不匹配。因此需要引入,内外部校准两个步骤。DDR5 SDRAM支持write leveling功能,以允许控制器补偿通道偏差。

2024-05-02 10:40:16 608

原创 LPDDR5X上下电

上电和复位初始化时,避免DRAM功能异常。

2024-03-13 22:59:03 140

原创 DDR5带来的挑战设计

而另一种则是统计模式(statistical),即整个系统的响应,包括抖动,串扰,均衡等,都是基于单个bit的阶跃响应,根据概率密度分布结果,经过数据后处理获得。另一方面,基于Keysight成熟的通道仿真算法,DDR BUS仿真器可以根据AMI模型中的均衡算法,对信号进行均衡,同时可以准确预测在低误码率情况下的抖动对信号的影响。这就意味着,DDR5的IBIS-AMI模型,不仅需要有DQ信号的输入端,还需要DQS信号的输入,才能恢复出符合要求的信号。正如上文提到的,DDR5协议草案中,有低误码率的要求。

2023-12-28 07:17:33 446

原创 Read DQS Gate Training

例如,在搜索最左有效位置的时候,若当前的读请求错误了,那么下一次读请求的延迟位置就是当前指针与最右指针的中点,且此时最左的指针也会指向当且指针的位置。相反的,如果当前指针的读请求正确了,那么下一次读的位置将会是当前指针与最左指针的中点,且此时的最右指针将会是当前指针的位置。最小的延迟位置对应门控关闭,最大的延迟位置对应门控打开。12.CALCULATE AVERAGE:在找到最左位置与最右位置后,PUB会将两个位置的LCDL与RSL延迟的差值除以2,并将此结果加到最左位置的基础上,作为门控训练的最终结果。

2023-12-26 21:35:36 889

原创 DDR5新增特性

这些具有较高DDR5通道鲁棒性的功能包括占空比调整器(DCA),片上ECC,DRAM接收I / O均衡,用于RD和WR数据的循环冗余校验(CRC)以及内部DQS延迟监视。此功能在DRAM端打开了WR DQ眼,保护通道免受符号间干扰(ISI)的影响,提高了裕量,并实现了更高的数据速率。占空比调节器允许主机通过调节DRAM内部的占空比来补偿所有DQS(数据选通)/ DQ(数据)引脚上的占空比失真。虽然DDR4仅支持WR数据的CRC,但DDR5将CRC扩展到RD数据,从而提供了针对通道上发生错误的额外保护。

2023-11-15 11:07:37 220

原创 电源噪声&纹波

电源噪声的种类很多,包括多种成分,电源噪声只是一个笼统的说法。主要是来自板上用电器件,随着用电器件内驱动、接收开关变化,电源网络上的电流也会随之变化,电流的变化也引起了电压的波动,这是电源噪声的主要来源。电源纹波是指电源输出时,叠加在稳定的直流电源上的交流成分。一般是由电源自身开关、PWM调节等引起的一种固定频率的波动现象,纹波的频率一般和电源开关频率或者电源输入频率相同。纹波 频率固定,与电源开关频率/电源输入频率有关 一般 ≤ 5MHz 影响芯片的基本性能和稳定性 ≤ 1%

2023-11-04 21:22:26 126 1

转载 LPDDR4信号测试报告分析【转载】

这测试的是DQS信号上升下降沿的斜率,从测试数据和下面的波形看,沿稍稍偏慢,这是可以优化的方向,需要读读芯片Datasheet,看看是否有寄存器可以增强发射强度,加快沿的斜率, 说不定还能优化波形中黄圈里的类似Ringback的现象(因同行是做芯片设计的,对芯片寄存器设置很有经验,这部分他们是专业的)我们做信号测试时,务必要正确对应连接差分信号的正负,不是以正负来区分的差分信号,也需要明确探棒正负分别接的是哪个信号,接反会直接影响到待测信号的相位,让测试的时间参数异常。b. DQS/DQ间的时序。

2023-11-04 17:48:49 392 1

原创 LPDDR4X 电源完整性设计指标

根据设计标准,针对每个电源的约束, LPDDR4X 的写操作的指标,按照数据传输速度为 3733/4266bps 的标准。LPKG_VDDPLL145mV。数据眼睛窗口高度 VclVW>120mV。时钟眼图周期宽度 TclPW>0.6。数据眼图周期宽度 TclPW>0.6。

2023-10-31 23:26:58 532 1

原创 LPDDR4/5 ZQ校准

LPDDR4和LPDDR3相比,LPDDR4中没有了ZQ Calibration Long和ZQ Calibration Short这两个命令。LPDDR4的ZQ CAL主要有两种模式:ZQ CAL start 和ZQ CAL Latch。ZQ CAL start启动校准程序,ZQ CAL Latch捕捉结果并将这部分加载至内存中。当LPDDR4 SDRAM处于上电状态时,可以发出ZQ cal start命令。

2023-10-31 23:05:37 1071 1

原创 DRAM存储原理

DRAM Storage Cell 使用 Storage Capacitor 来存储 Bit 信息。

2023-10-29 12:29:14 120 1

原创 高速接口信号完整性分析(1)

差的信号完整性不是由某一单一因素导致的,而是板级设计中多种因素共同引起的。当电路中信号能以要求的时序、持续时间和电压幅度到达接收端时,该电路就有很好的信号完整性。当信号不能正常响应时,就出现了信号完整性问题。-信号完整性分析的目的就是用最小的成本,最快的时间使产品达到波形完整性、时序完整性、电源完整性的要求。信号完整(Signal Integrity,简称SI)是指在信号线上的信号质量。-波形完整性(Waveform integrity)-时序完整性(Timing integrity)

2023-10-14 10:12:32 172 1

原创 LPDDR4 IO介绍

注:VREFDQ是LPDDR4上电经过VREFDQ Training后内部自动调整得到,需查询寄存器MR14得到该值。对于LPDDR4的每一个Channel,需分别测试LDQS(低8位)和UDQS(高8位)。

2023-09-25 22:35:05 298 1

原创 PCIE5 IP架构框图

这张图还是很有料的看懂的多看几眼。

2023-09-19 23:39:07 134

原创 DDR VT补偿原理

第三种协议:在第一种协议的基础上,在T4周期后,若PHY能够从DFI Update中得知控制仍然处于空闲状态或自刷新状态,那么PHY就会将vt_update一直保持高电平,以保证DDL中的VT补偿的结果是最新的。当LCDL与BDL的所有延迟单元需要更新的延迟值都已经计算完毕时,u_DWC_ddr3phy_init_phy模块就会想外部控制模块发起vt_drift请求,表示此时VT补偿的计算已经完成,等待外部响应,一旦响应更新值就会更新到各个DDL中去。随后每一次的测量MDL周期都会被存储为当前的校准周期。

2023-09-17 10:39:23 469 1

原创 NOC总线架构拓扑介绍

简单的总线就是一些地址线和数据线,再加一个仲裁器,就可以把处理器发过来的读写请求送到内存或者外设,再返回数据。在这个过程中,我们需要一个主设备,一个从设备,所有的传输都是主设备发起,从设备回应。让我们把处理器和它包含的缓存看作一个主设备,把内存控制器看作从设备。处理器发起访问请求,如果是读,那么总线把这个请求(包括地址)送到内存控制器,然后等待回应。过了一段时间,内存控制器把内存颗粒里面读出的数据交给总线,总线又把数据交给处理器。如果数据无误(ECC或者奇偶校验不出错),那么这个读操作就完成了。

2023-09-05 22:54:31 501

原创 RISC-V Tools编译安装

使用下面的命令运行hello。到这里为止,你几乎已经可以体验到RISC-V的各种工具了,此时你可以查阅资料,深入了解他们的使用,但仅仅是这样还是不够的下一步我们还需要下载Linux内核,使用我们装好的riscv64-unknown-linux-gnu-gcc来交叉编译内核,具体该如何操作呢,让我们下期再分享。如果你这里出错了,hello并不能运行的话,你可以查看$RISCV/riscv/bin目录下是否有riscv64-unknown-linux-gnu-gcc等,然后查看日志以寻找问题。

2023-08-19 07:15:14 482

原创 RISC-V设计详解

risc-v蓬勃发展,为来risc-v的市场前景已经肉眼可见,risc-v的蓬勃还有另一个原因,开源,任何设计者或者企业都可以根据自己的需求,设计自己的risc-v架构,而不用担心版权问题。risc-v当前还走在低端芯片,未来进入高端已经是。

2023-08-08 22:39:47 233

原创 RV32I的指令概述

无符号小于立即数则置位(Set if Less Than Immediate, Unsigned),比较x[rs1]和有符号扩展的immediate,比较时视为无符号数,如果x[rs1]更小,向x[rd]写入1,否则写入0。无符号小于则置位(Set if Less Than,Unsigned),比较x[rs1]和x[rs2],比较时视为无符号数,如果s[rs1]更小,则向x[rd]写入1,否则写入0。逻辑右移,把寄存器x[rs1]右移x[rs2]位,空的位置填0后,将结果写入x[rd]。

2023-08-07 23:35:49 179

原创 RISC-V寄存器说明

x0 zero 0值寄存器,硬编码为0,写入数据忽略,读取数据为0。x10~x11 a0~a1 函数传递参数寄存器或者函数返回值寄存器。x3 gp 用于通用指针 (global pointer)x8 s0/fp 需要保存的寄存器或者帧指针寄存器。x28~x31 t3~t6 用于存放临时数据寄存器。x5 t0 用于存放临时数据或者备用链接寄存器。x6~x7 t1~t2 用于存放临时数据寄存器。x12~x17 a2~a7 函数传递参数寄存器。x18~x27 s2-s11 需要保存的寄存器。

2023-08-07 23:14:52 630

原创 RISC-V32i详解

func7,func3:表示指令的功能,同一指令类型中通过这几个bit域来区分具体功能(数字“7”代表是占用7-bit位宽,数字“3”同样);I型指令:立即数类型指令,用于在寄存器和立即数(常数)之间执行算术、逻辑、移位和分支等操作。S型指令:存储类型指令,用于将寄存器中的数据存储到存储器中。R型指令:寄存器类型指令,用于在寄存器之间执行算术、逻辑和比较运算。U型指令:无条件跳转类型指令,用于无条件跳转到指定的地址。opcode:操作码,每个指令类型都有只属于自己的编码值,用于区分不同的指令类型;

2023-08-07 22:48:25 146

转载 AHB总线协议

仲裁器在决定出哪一个 M 拥有总线使用权之后,会将这个 M 数据地址、控制信号及欲写入 S 的数据选出,并且送至每一个 S,而所选出的数据地址会再经由 AHB 译码器产生唯一的 HSELx 使能信号来启动一 S 的数据传送。M 启动一个数据传送之后,被使能的 S(即 HSELx 为 1 的 S) 会发出 HREADY 信号来决定是否要延长当前数据的传送,若 S 响应 HREADY 为 0,表示此笔数据的传递必须被延迟,若 S 送出的HREADY 为 1,则表示 S 能够完成此笔数据的传递。

2023-08-04 22:15:46 296

原创 DFI 5.0接口协议

MC和PHY必须在相同的频率比下操作。频率比仅适用于命令和DFI数据时钟域(PHY频率比)或DFI数据时钟域(数据频率比)。DFI时钟域信号不以时钟比率运行,它们始终基于DFI时钟。对于LPDDR5,DFI时钟域处于DFI时钟频率,命令和DFI数据时钟域的频率相同,与DFI时钟的比例为1:1、1:2或1:4。至今没有看到比较系统的梳理DFI接口协议,最近没事就来梳理下吧。2、DFI定义了三个时钟域—控制时钟域、命令时钟域和数据时钟域。

2023-08-03 21:38:39 2316 2

原创 LPDDR4/4X测试指导

通常,读/写信号的信号幅度是不同的,因此我们可以通过在更大的信号幅度上触发示波器来实现两者的分离。一般在DRAM端进行测试时,写数据从Memory Controller出来,到达DRAM颗粒的时候,信号已经被衰减了,而读数据刚刚从DRAM出来,还没有经过任何的衰减,因此读数据的幅度要大于写数据。测试包括信号质量和时序测试,信号质量测试需要使用有源探头测试,并使用短地针,测试时候地的选择需要尽量靠近测试点。的确,没有一定的经验,看到密密麻麻的波形去做读写分离还是比较困难的,本节介绍常见的几种读写分离方法。

2023-07-18 22:17:13 942 1

原创 LPDDR4/4X DQS-DQ训练

当DQS到到达锁存器的时候,dram将会锁存住DQ的信号,而我们进行的training是通过调整DQ相对于DQS信号的关系,比如说DQ到达dram端的时间来达到这个training的目的。如果写FIFO的命令小于5个,哪个返回的数据不满FIFO将会回复不定的数据。如果五个写FIFO的CMD连续执行之后连续执行读FIFO的命令会依次读取FIFO[0][1][2][3][4][0][1]…在另一方面,少于五个的写FIFO命令执行后执行读FIXO的命令,前面几个符合,后面会返回没有定义过的数据。

2023-07-18 21:40:56 732 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除