集成电路
文章平均质量分 86
maxwell2ic
本博客主要内容包括但不局限于集成电路设计/区块链/人工智能。
开通本博客的主要目的有以下两条:
1. learning by teaching;
2. sharing ideas.
展开
-
PCIe带宽性能分析
本文介绍如何分析PCIe的带宽性能原创 2022-09-04 12:18:06 · 3888 阅读 · 1 评论 -
CXL简介
本文对CXL做初步简介原创 2022-03-06 14:45:00 · 5462 阅读 · 0 评论 -
PCIe ATS介绍
主机侧使用IOMMU完成设备地址到物理memory地址的转换,以及设备访问权限的检查。但如果所有PCIe设备都在进行DMA操作,则TA(Translation Agent)和ATPT(Address Translation and Protection Table)则会成为瓶颈,从而影响系统的latency。原创 2022-03-06 09:55:42 · 3910 阅读 · 0 评论 -
PCIe Data Link Layer - 可靠传输
数据链路层简介Dll层主要任务有:保证tlp的可靠传输,tlp的流控,以及部分低功耗状态的管理。Dllp固定8byte长,点对点传输,trans层不可见,没有路由信息。8b10b编码头尾加上SDP/END,128b编码只有2byte的SDP,没有END。有做crc校验,如果出错没有重传,而是收到下一个相同类型的dllp来更新丢失的信息没有握手机制,通过timeout来实现错误恢复Dllp包括4种类型,ack/nack,power management,flow control,vender原创 2021-12-04 16:28:12 · 927 阅读 · 0 评论 -
PCIe PHYMAC--LTSSM详细讲解
Phy layer框图Byte striping of Tlp(transaction layer package),dllp(data link layer package),os(ordered set)下面是典型的tlp,dllp,os的格式。LtssmDetect检测电气连接Pipe_txdetrx,差分线波形检测端接阻抗,以确定是否有电气连接Polling实现bit lockPolling.active tx在gen1速率下至少发1024个ts1,让对端rx实现b原创 2021-08-22 17:45:57 · 8008 阅读 · 0 评论 -
PCIe功耗控制--ASPM
上一节PCIe功耗控制–Legacy PCI Compatible PM讲了软件参与的功耗控制(OSPM),本次讲PCIe引入的硬件自动功耗控制。ASPMActive State Power Management (ASPM)是只有在D0下才可以实施的硬件自动功耗控制,其进出过程都是由硬件自动触发,软件只能使能或关闭该功能,而无法介入控制过程。ASPM定义了2个低功耗状态L0s (standby state) — This state provide substantial power savin原创 2021-01-10 12:23:31 · 18948 阅读 · 3 评论 -
PCIe功耗控制--Legacy PCI Compatible PM
PCIe总线定义的与功耗管理功能(Power Management,PM)主要有4种:Legacy PCI Compatible PM是一种在软硬件和PCI-PM/APCI都兼容的模式,其要求PCIe设备的每个Function都包含PCI Power Management Capability寄存器。软件可以通过配置请求(Configuration Request)的方式来切换PCIe设备的某个Function的PM状态。在PCIe Spec V2.1中,还引入了动态功耗分配(Dynamic Power原创 2021-01-09 16:17:04 · 4466 阅读 · 2 评论 -
PCIe系统复位
PCIe总线中定义了四种复位名称:冷复位(Cold Reset)、暖复位(Warm Reset)、热复位(Hot Reset)和功能层复位(Function-Level Reset,FLR)。其中FLR是PCIe Spec V2.0加入的功能,因此一般把另外三种复位统称为传统的复位方式(Conventional Reset)。其中冷复位和暖复位是基于边带信号PERST#的,又被统称为基本的复位方式(Fundamental Reset)。Fundamental Reset基本复位由硬件自动处理,会复位整个原创 2021-01-03 18:59:44 · 8660 阅读 · 0 评论 -
PCIe中断-MSI/MSI-X
MSIMSI本质上是一种Memory Write,和PCIe总线中的Message概念半毛钱关系都没有。并且,MSI的Data Payload也是固定的,始终为1DW。由于MSI也是从PCI总线继承而来的,因此MSI相关的寄存器也存在于配置空间中的PCI兼容部分(前256个字节)。如下图所示,MSI有四种类型:其中Capability ID的值是只读的,05h表示支持MSI功能。Next Capability Pointer也是只读的,其用于查找下一个Capability Structure的位转载 2021-01-03 16:23:24 · 1517 阅读 · 0 评论 -
PCIe中断--INTx
PCI总线使用INTA#、INTB#、INTC#和INTD#信号向处理器发出中断请求。这些中断请求信号为低电平有效,并与处理器的中断控制器连接。在PCI体系结构中,这些中断信号属于边带信号(Sideband Signals),PCI总线规范并没有明确规定在一个处理器系统中如何使用这些信号,因为这些信号对于PCI总线是可选信号。所谓边带信号是指这些信号在PCI总线中是可选信号,而且只能在一个处理器系统的内部使用,并不能离开这个处理器环境。注:PCI Spec对边带信号的定义如下:Any signal no转载 2021-01-03 12:15:13 · 3642 阅读 · 0 评论 -
PCIe设备枚举
本文主要是对PCIe的初始化枚举、资源分配流程进行分析,代码对应的是alikernel-4.19,平台是arm64 1. PCIe architecture 1.1 pcie的拓扑结构 在分析PCIe初始化枚举流程之前,先描述下pcie的拓扑结构。如下图所示: ...转载 2021-01-02 16:28:47 · 3590 阅读 · 0 评论 -
PCIe配置空间
PCIe概述 PCI Express,是计算机总线PCI的一种,它沿用现有的PCI编程概念及通信标准,但建基于更快的串行通信系统。 PCIE总线使用的是高速差分总线,并采用端到端的连接方式, 现在的高速总线基本上都是串行总线,这样可以使用更高的时钟频率。 当前pcie协议支持到5.0版本,不同PCIe版本对应的传输速率如下: PCIe 版本编码传输速率(GT/S)x4吞吐量(MB/s)1.08b/10b2.512.08b/10b523.0128b/130b8~44.0128b/130b1.转载 2021-01-02 16:17:51 · 3090 阅读 · 0 评论 -
PCIe扫盲系列博文连载目录篇
转载自 http://blog.chinaaet.com/justlxy/p/5100053251 PCIe扫盲系列博文连载目录篇(第一阶段) 1、前言篇:PCIe扫盲——PCIe简介:http://blog.chinaaet.com/justlxy/p/5100053066 2、PCIe扫盲——PCI总线基本概念:http://blog.chinaaet.com/justlxy/p/51000530...转载 2021-01-02 13:14:18 · 1462 阅读 · 0 评论 -
PCIe Electrical PHY(5)-PCIe的时钟结构
1.1 常用的时钟结构Three basic I/O architectures• Common Clock (Synchronous)• Forward Clock (Source Synchronous)• Embedded Clock (Clock Recovery)1.2 PCIE时钟结构1.2.1 CC mode(common Refclk Rx Architectu...原创 2020-04-05 21:23:20 · 13945 阅读 · 2 评论 -
PCIe Electrical PHY(4)-PCIE SPEC第8章指标讲解
1.1 PCIE TX SPECTX主要关心两类参数,一类是Voltage Parameters,一类是Jitter Parameters。其中Voltage相关参数主要关心不同preset下差分电压幅度的准确性。以及共模电压的稳定性。PCIE spec中对Jitter相关的参数测量定义如下:分为两大类:DDJ(Data dependent Jitter)和UJ(Uncorrelated ...原创 2020-04-05 21:17:23 · 4580 阅读 · 0 评论 -
PCIe Electrical PHY(3)-SerDes电路基本结构
1.1 SERDES电路结构目前主流的基于analog-DFE的SerDes结构如下。主要包括4个模块:TX/RX/PLL/CDR。其中TX/RX完成信号的传输、均衡和接收,PLL产生发射端的时钟,CDR产生接收端的时钟。均衡电路结构基本上主流厂家均选择在发射端采用FFE,接收端首先通过CTLE进行一定程度的信道补偿,最后将均衡的的主要任务放在DFE上。随着PAM4调制信号的应用,anal...原创 2020-04-05 21:06:12 · 10899 阅读 · 7 评论 -
PCIe Electrical PHY(2)-SerDes中的均衡技术
均衡的主要作用就是减小Jitter中ISI部分的影响。前面已经讲了ISI产生的原因主要是因为信道带宽不足,使脉冲信号经过信道之后产生长长的拖尾。1.1 CTLE均衡电路分为连续时间均衡器和离散时间均衡器。从频域角度做均衡的电路通常是具有高通特性的模拟电路,所以被称为连续时间线性均衡器(CTLE)。其结构通常如下图所示,其优点是线性度高,并且能对信号提供一定的增益。业界主流的做法通常会把均衡的...原创 2020-04-05 20:56:07 · 7217 阅读 · 6 评论 -
PCIe Electrical PHY(1)-高速串行信号特性
SerDes从名字上来听,主要功能就是是实现串行解串电路。但实际上这是SerDes中最容易实现的功能。更重要的是信号串行起来之后遇到的信号衰减、码间串扰、时钟同步等其他问题。1.1 ISI首先要理解的是高速串行信号经过信道之后不再是理想的0/1高低电平下图为不同信道的频域特性,从信号系统的角度看,可以看到传输介质是一个低通系统,并且在通带内信号的幅度响应也不平缓,不同的频率幅度响应不同会导...原创 2020-04-05 20:36:33 · 3735 阅读 · 1 评论 -
反馈专题
本文总结反馈的常用公式与知识点。原创 2016-11-08 22:53:02 · 1102 阅读 · 0 评论 -
常见的LTI系统
掌握一些常见的模块,就能快速分析一个系统的功能。原创 2018-06-03 16:41:45 · 8454 阅读 · 0 评论 -
数字信号处理之前的采样过程
进行数字信号处理之前必须要对模拟信号进行采样,这中间涉及s平面到z平面的变换问题。原创 2018-06-03 17:00:34 · 2636 阅读 · 0 评论 -
数字滤波器
基本FIR, IIR滤波器 自适应滤波器原创 2018-06-03 17:11:17 · 1132 阅读 · 0 评论 -
apb3 slave verilog
verilog实现一个简单的apb3 slave接口原创 2019-05-03 13:23:38 · 5536 阅读 · 1 评论 -
AXI协议burst不能跨4k边界
AXI协议中burst不能跨4k边界4k边界是低12bit为0的地址,如32‘h00001000,32’h00002000,这些特殊的地址为4k边界。同理1k边界为低10bit为0的地址,如32‘h00000400,32’h00000800;32bit边界(4byte边界)为0x00,0x04,0x08,0x0c等4k边界对齐的最大原因是系统中定义一个page大小为4kBytes,为了更好...原创 2019-05-03 13:13:17 · 10460 阅读 · 6 评论 -
PCIE体系结构基础
了解PCIE的体系结构首先要了解PCI总线的结构,PCI总线中的HOST主桥用于连接隔离转换存储器域地址和PCI总线域地址;PCI总线中的主从设备统称为Agent设备;PCI桥作为一种特殊的PCI设备,每个HOST主桥管理一个PCI总线树,每个PCI桥扩展一个PCI总线,与HOST主桥直接相连的为总线0.PCIE体系结构中虽然没有物理存在的PCI桥,但是其概念对于理解PCIE的结构具有重要意义...原创 2019-05-02 11:58:07 · 2781 阅读 · 0 评论 -
CTFT, DTFT, DFS, DFT
DTFT, CTFT分别为最通用的离散序列和连续时间信号的傅立叶变换,DFS, FS则限定时域信号为周期性,频域则为离散的级数形式。DFT是DTFT在频域的采样,本质上相当于对时域的周期性延拓。...原创 2018-06-03 16:05:26 · 3528 阅读 · 0 评论 -
clock gating门控时钟
在数字IC设计中,我们几乎都要用到门控时钟clock gating技术。使用门控时钟这种技术,我们可以改善电路的三个主要性能指标:速度,面积和功耗,特别是芯片的功耗。市场上主流的综合和静态时序分析工具(Design Compiler& PrimeTime)降低了ASIC设计人员使用门控时钟的门槛。 ASIC设计人员主要使用正边沿...转载 2019-05-18 19:02:24 · 11793 阅读 · 1 评论 -
UVM基本名次解释,帮助设计人员降低与设计人员的沟通成本
uvm_object是UVM中最基本的类,uvm_component也派生自uvm_object。验证平台中常用派生自uvm_object的类有:a) uvm_sequence_item,trasaction就是从uvm_sequence_item派生的封装了一定信息的类;b) uvm_sequence,就是sequence_item的组合,sequence会直接与sequencer打交道...原创 2019-06-03 21:15:55 · 2667 阅读 · 0 评论 -
PCIe PHY layer:Link training过程的LTSSM状态机跳转
TS(Training Sequences)用于初始化bit align,symbol align,exchange PHY parameter。TS1主要检测PCIe链路配置信息,TS2确认TS1的检测结果EIOS(Electrical Idle Ordered Set Sequence),Tx进入Electrical Idle之前,必须发送EIOS,Electrical Idle状态下Tx...原创 2019-06-03 21:19:52 · 20640 阅读 · 1 评论 -
PCIe Transaction layer: TLP,路由,流量控制
TLP分为Mem/IO/Cfg/Message四种,通用的的格式为Header种包含当前TLP总线事务类型、data payload大小、路由、描述符等信息a) Fmt和Type决定了当前TLP的总线事务类型Mem RW还是CplD,TLP header是3DW还是4DW,是否有data payloadb) TC与QoS相关,Attr与TLP的序相关,其他字段为一些标志位c) Len...原创 2019-06-03 21:25:12 · 2307 阅读 · 0 评论 -
PCIe SRIOV虚拟化技术
SR-IOV体系结构,采用SRIOV技术可以消除VI对数据搬运工作虚拟化时对传输性能的影响,并且能集成ATS/ATPT等技术PF,支持SRIOV能力的PCIe Function,是全集;VF,是子集,可以被不同的SI share不同的Function有独立的configuration space和BAR每个VF都share一部分PF的configuration space支持SRI...原创 2019-06-15 12:04:11 · 10456 阅读 · 3 评论 -
PCIe PCS sublayer
Byte striping: 把每个byte依次分发到不同的lane,避免不同lane传输数据长度不同scrambler:PRBS加扰,消除重复的pattern,因为重复的pattern在频谱上能量集中,会产生很大的EMI噪声;TLP/DLLP中的D character被scramble,而OS则不被scramble![](https://img-blog.csdnimg.cn/201906...原创 2019-06-15 12:06:31 · 2402 阅读 · 0 评论 -
AXI协议基础介绍
AXI协议接口具有高可拓展性,高速度,高带宽,读写独立管道化互联,单向通道,只需要首地址,读写并行,支持乱序,支持outstanding,支持非对齐传输,有效支持出事延迟较高的外设,但是连线接口复杂。AXI接口结构分为5个独立通道,读地址和写地址通道用于传输地址和burst的特性信息;读数据和写数据通道用于主从设备之间传输数据,有效位掩码等信息,数据总线位宽可以为8、16、32、64、128、...原创 2019-05-02 11:46:40 · 1168 阅读 · 0 评论 -
CentOS7 安装synopsys软件搭建数字前端设计环境
安装参考一参考二download synopsys_installer, scl, scl_keygen, vcs-2016, verdi-2016, syn-2016install synopsys_installerchmod a+x SynopsysInstaller_v3.3.run./SynopsysInstaller_v3.3.run -d {your_instal...原创 2018-12-24 09:45:50 · 6063 阅读 · 0 评论 -
Cadence家EDA软件介绍
转载 2018-10-23 16:13:39 · 6637 阅读 · 0 评论 -
Verilog基础知识(有符号数运算规则,加减运算,乘法运算中的符号位拓展问题)
rule of thumbThe format of the signed type is two’s complement. 有符号数均为补码表示If any operand in an expression is unsigned the operation is considered to be unsigned. 只有计算表达式右边有无符号数,整个计算式都按照无符号数规则运算只有...原创 2018-06-08 14:49:30 · 40432 阅读 · 7 评论 -
Verilog基础知识(数值表示总结,signed,原码,反码,补码)
定点数原码表示MSB是符号位,0表示正数,1表示负数。 D=(−1)aB−1∑i=0B−2ai2i−B+1D=(−1)aB−1∑i=0B−2ai2i−B+1D=(-1)^{a_{B-1}} \sum_{i=0}^{B-2}a_i 2^{i-B+1} 比如,二进制0.110=(−1)0∗(1∗2−1+1∗2−2)=+0.750.110=(−1)0∗(1∗2−1+1∗2−2)=+0...原创 2018-06-08 11:35:20 · 20095 阅读 · 2 评论 -
MIT 6.004 Computer Architecture 2: Programmable Architectures
内容主要来自MIT 6.004计算机架构课程的第二部分,主要讲CPU的结构,编译原理。指令集 编译原理 程序中断 简单的RISC CPU结构 存储器的层级结构 流水线CPU core ...原创 2018-06-12 09:54:07 · 838 阅读 · 0 评论 -
MIT 6.004 Computer Architecture 1: Digital Circuit
内容主要来自MIT 6.004计算机架构课程。原网页请见 MIT 6.004原创 2018-06-03 21:19:02 · 1969 阅读 · 0 评论 -
Transceiver Architectures Summary
内容主要从拉扎维的射频微电子中总结。原创 2017-03-18 15:51:44 · 1196 阅读 · 0 评论