LPDDR4的训练(training)和校准(calibration)–ZQ校准(Calibration)

LPDDR4的ZQ pin, 用来外接一240Ω±1%上拉电阻。LPDDR4将其作为参考电阻,用来校准DRAM内部的240Ω电阻。因为芯片内部的240欧电阻是由CMOS构成,由于CMOS的天然特性,造成该电阻会随着PTV(制程,温度和电压)变化,因此必须对其进行校准。   在JESD209-4B LPDDR4标准中,提到ZQ校准有四个作用: – 输出上拉校准,即校准输出电压V…

LPDDR4的训练(training)和校准(calibration)–Write Leveling(写入均衡)

Write Leveling是从DDR3开始引入的概念,为了解决DQS和CLK的edge alignment的问题。 因为从DDR3开始采用了新的拓扑结构:fly-by。即多个DRAM放置在PCB上时(或多个die),地址线,控制线,时钟线采用fly-by方式进行布线,DQ,DQS和DMI还是采用点对点的布线方式。采用了fly-by的结构,CLK到达菊花链的各个die的时间是不一样的。具体而言,到…

使用CVS仿真的两个简单的Makefile

在Linux/Unix下,提交RTL仿真常用的有两种方法,一个靠perl脚本,一个靠Makefile。当然更多的是将两者组合到一块来用。这里分享下我用过的两个功能比较简单的Makefile。 1. 编译纯verilog DUT+TB 在这个Makefile中, CODE_PATH是dut的源文件存放路径。 filelist 文件名为file.f。case名字是通过TEST变量在command li…

python集腋成裘

常用语句 1 记录脚本命令的自定义函数 把每次脚本执行的命令和参数记保存到一个文件里,以便以后查看   2 字符串处理函数 2.1 字符串分割 split() 2.2 删除首尾特定字符 strip() strip() 移除字符串头尾制定的字符或字符序列,默认为空格或换行符。该函数不能删除中间部分 3 脚本中执行系统命令 4 range() 列表产生函数 range() 函数可创建一个整数…

ubuntu16.04 wifi 不稳定问题

在ThinkPad X201i用ubuntu16.04已经很久了, wifi连接一直不稳定, 用几分钟就自动断开, 无奈只能重连. 查询无线网卡具体情况如下: $ lspci 02:00.0 Network controller: Intel Corporation Centrino Wireless-N 1000 [Condor Peak] $ sudo lshw -class network …

漫谈用过的版本管理工具–CVS,ClearCase和Git

我接触过SVN,CVS,Clearcase和Git,真正做项目用过的有CVS,ClearCase和Git,在这里简单写下我自己对这三个版本工具的使用感受。 基本对比 SVN,CVS,Git为开源免费工具,ClearCase为IBM所有 。 SVN,CVS,ClearCase为集中管理,Git为分布式管理。 ClearCase只有大公司使用,小公司一般会使用SVN,CVS,Git。 对于硬件RTL代…

SystemVerilog LRM 学习笔记 — SV Scheduler仿真调度

1. 为什么要理解scheduler? SystemVerilog是HDVL语言,相较与Verilog,除了面向HW design应用,也为了提高verif的效率。所以其仿真调度算法在向下兼容Verilog的同时,增加了不少新的‘Time region’,以便更好的支持program块等针对验证需求的新特性。 SV不同于C/C++等软件语言,为了对硬件进行仿真建模,所以有很多并行的process,…

System Verilog LRM 学习笔记 — 字面常量

1. 整数型字面常量  1.1 整数型字面常量表示方法有两种: 数字直接表示:会被系统识别为32bit宽的有符号数。 指定size和进制,如12‘hDBA, 有可选的宽度,(’), s/S有符号数指示,和数字组成。 默认是无符号数,只有含s/s符号数指示时被识别为有符号数, 如12‘shDBA. 1.2 负数是二进制补码的形式表示 1.3 整数型字面常量的补齐和截断,padded to left,…

ClearCase Overview

1. ClearCase Overview 1.1 SCM • Software Configuration Management • CM is a systems engineering process, and a term of PM. SCM is CM used in Software industry. • is a software engineering discipline c…

Synopsys SpyGlass CDC 学习 (二)

学习官方培训材料:SpyGlass_CDC_Training_Slides 备注:写下面笔记也是挂一漏万,只能cover 几个常用的rule。想了解每一个rule的详细情况,除了研读这个PPT,最好还是查官方文档,当然会耗费很多时间,但对项目负责做SpyGlass Lint/CDC检查的人,还是必不可少的。我现在还是票友的角色,只是为了处理所负责模块的violation。

Synopsys SpyGlass CDC 学习 (一)

SpyGlass工具简介 目前包含:SpyGlass Lint, CDC, RDC, DFT ADV, Power.  是业界RTL Signoff 的重要工具.      SpyGlass 的一些基本概念 1.Rule:  是SpyGlass 进行RTL分析的最小单位. 2.Goal: 是一系列相关Rule的集合,组合起来完成RTL分析的某个特定任务. user可以用GuideWare定义好的G…

VCS 编译仿真方法总结

1. VCS/VCSMX 一般仿真步骤 VCS仿真可以分成两步法或三步法, 对Mix language, 必须用三步法。仿真前要配置好synopsys_sim.setup文件,里边有lib mapping等信息。设置环境变量’setenv SYNOPSYS_SIM_SETUP /xxx/xxx/synopsys_sim.setup’. VCS对应的waveform工具有DV…

从原子结构,半导体,PN结到MOS管和CMOS

离开校园太久了,再加上工作上确实很少用到,现在基本上把半导体基础的物理知识忘得差不多了. 这两天把这些内容复习下,把脑子里缺的这块拼图补起来,此是前话。下面的内容大多是摘自不同的网页,取其精华形成系统。 原子结构 原子由原子核和围绕原子核旋转的电子构成。如果将原子比作一棒球场,那么原子核大大小不比一个棒球大,但原子的所有重量都集中在原子核上,而电子只相当于棒球场上的苍蝇,所占空间相比来说也是极小的…

维特比译码器(Viterbi Decoder)硬件架构(三)–硬件结构描述及RTL源代码

1. 综述 发展到现在,Viterbi译码器的硬件结构以及很成熟了。这里要描述的Viterbi译码器采用了一个成熟的规整化的硬件的硬件架构,可根据配置寄存器来对: LTE,NB-IOT及GSM/GPRS/EDGE中使用的卷积码进行译码。 支持tail-bits和tail-biting两种形式。 前向回溯的滑窗技术可以减小幸存路径的缓存器深度. 可配的网格结构支持约束长度为4~7,编码效率为1/2,…

维特比译码器(Viterbi Decoder)硬件架构(二)–卷积码解码算法

1.网格图(Trellis Diagram) 网格图(Trellis Diagram)是卷积解码用到的概念,是理解解码过程的基础。网格图是由按时间顺序排列的状态结点矩阵, 每一列代表当前时刻的所有状态,最左侧第一列代表初始状态(t=0),第二列代表第一个输入进入编码器后的转移状态。红色路径表示输入是0时的转移路径,蓝色表示输入为1时的转移路径。如下图所示, t=1时刻,只有两个从初始状态过来的转移…

维特比译码器(Viterbi Decoder)硬件架构(一)–卷积码及编解码算法介绍

1. 卷积码(convolution code) 卷积码在无线通信里用的非常广泛,通常卷积码编码器开始工作前都要进行初始化,按编码器的初始状态不同可以分为两类: 1.1 末尾补零卷积码(Tail-bits): 通常卷积码编码器开始工作时都要进行初始化,编码开始前将编码器的所有寄存器单元都进行清零处理。而在编码结束时,需要添加0到码流末尾(Tailed Termination),使编码器状态归零, …

H.265/HEVC视频编码标准总结

目录 1.HEVC的Profiles(档次),Levels(级别),Tier(层) 1.1 HEVC的Profiles(档次) 1.2 HEVC Levels(级别)和Tiers(层)  2.HEVC的分层结构 2.1 分层结构概述 2.2 VCL 2.2 NAL  2.2.1 NAL unit 头包含的信息: 2.2.2 VCL-NALU和non VCL-NALU具体类型如下…