摘要:在CPU中,CCX(Compute Complex)、核心(Core)以及L1、L2和L3缓存是不同层次的内存层次结构和处理单元。 1. CCX(Compute Complex):CCX是AMD Ryzen处理器架构中的一个基本组成单元。它由多个CPU核心组成,并共享一定的缓存和其他资源。每个CCX
阅读全文
摘要:什么是进程?当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的。什么是线程?线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。什么是多线程?多线程是
阅读全文
摘要:首先了解一下cpu,随着主频(cpu内核工作时钟频率,表示在CPU内数字脉冲信号震荡的速度,等于外频(系统基本时间)乘倍频)的不断攀升,X86构架的硬件逐渐成为瓶颈,最高为4G,事实上目前3.6G主频的CPU已经接近顶峰。 多线程编程的目的,就是"最大限度地利用CPU资源",当某一线程的处理不需要占
阅读全文
摘要:CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景。CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。 这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯
阅读全文
摘要:异构计算主要是指使用不同类型指令集和体系架构的计算单元组成系统的计算方式。异构计算已经无处不在,从超算系统到桌面到云到终端,都包含不同类型指令集和体系架构的计算单元,下面先从几个系统了解下异构计算超算系统。天河-2:包括16,000个计算节点,每个节点 2*Xeon (IveBridge)+3*Ph
阅读全文
摘要:ICG(Intergrated Clock Gating)作为low power的设计手法之一,已经在实际中得到广泛应用。它们能够在某些时候将某些clock关断从而达到降低功耗的目的。然而从时序的角度,经常会发生ICG的setup难以收敛的情况。 为什么会出现这种情况呢? 下图展示了一种简单的带IC
阅读全文
摘要:1.Boundary scan Boundary Scan就是我们俗称的边界扫描。Boundary Scan是上世纪90年代由 Joint Test Action Group(JTAG)提出的,它的初衷是为了解决在PCB上各个大规模集成电路间的信号互联测试需求,所以往往也被叫做JTAG(JTAG更是
阅读全文
摘要:Q: Boundary Scan是什么?应用场景是什么?实现的方法是什么?挑战是什么? A: Boundary Scan就是边界扫描,是由Joint Test action Group起草的规范,最初是为了解决板级芯片之间的互联测试的问题,实现方法就是在芯片内部的每个I/O上面加上一个Boundar
阅读全文
摘要:如Coding 时需要考虑什么样的代码风格会使gating 的效率更高;综合时需要特别设置要插入的gating 类型,每个gating 的fanout 范围,是否可以跨层次,是否需要做physical aware 的gating;DFT 时需要确定clock gating 的TE pin 如何连接以
阅读全文
摘要:在介绍事务层之前,首先简单地了解一下PCIe总线的通信机制。假设某个设备要对另一个设备进行读取数据的操作,首先这个设备(称之为Requester)需要向另一个设备发送一个Request,然后另一个设备(称之为Completer)通过Completion Packet返回数据或者错误信息。在PCIe
阅读全文
摘要:PCIe总线的提出可以算是代表着传统并行总线向高速串行总线发展的时代的到来。实际上,不仅是PCI总线到PCIe总线,高速串行总线取代传统并行总线是一个大的趋势。如ATA到SATA,SCSI到USB等…… 不过,为了兼容之前的PCI总线设备,虽然PCIe是一种串行总线,无法在物理层上兼容PCI总线,但
阅读全文
摘要:1、编码技术基础理论 在高速的串行数据传输中,传送的数据被编码成自同步的数据流,就是将数据和时钟组合成单一的信号进行传送,使得接收方能容易准确地将数据和时钟分离,而且要达到令人满意的误码率,其关键技术在于串行传输中数据的编码方法。 目前, 高速接口正在被广泛应用于包括 SATA、 SAS、 高速 P
阅读全文
摘要:Mux会对来自数据链路层的数据(TLP&DLLP)插入一些控制字符,如下图所示。这些控制字符只用于物理层之间的传输,接收端的设备的物理层接收到这些数据后,会将这些控制字符去除,在往上传到其数据链路层。 当然,除了STP、SDP和END之外,还有一些其他的控制字符,如EDB(前面的文章详细介绍过)、S
阅读全文
摘要:PCIe的Layer结构图 PCIe中的物理层主要完成编解码(8b/10b for Gen1&Gen2,128b/130b for Gen3 and later)、扰码与解扰码、串并转换、差分发送与接收、链路训练等功能。其中链路训练主要通过物理层包Ordered Sets来实现。 PCIe Spec
阅读全文
摘要:PHY((Physical Layer,PHY))是IEEE802.3中定义的一个标准模块,STA(station management entity,管理实体,一般为MAC或CPU)通过SMI(Serial Manage Interface)对PHY的行为、状态进行管理和控制,而具体管理和控制动作
阅读全文
摘要:MAC(Media Access Control)即媒体访问控制子层协议。 该部分有两个概念:MAC可以是一个硬件控制器 及 MAC通信以协议。该协议位于OSI七层协议中数据链路层的下半部分,主要负责控制与连接物理层的物理介质。 MAC硬件大约就是下面的样子: 在发送数据的时候,MAC协议可以事先判
阅读全文
摘要:主要介绍以太网的MAC(Media Access Control,即媒体访问控制子层协议)和PHY(物理层)之间的MII(Media Independent Interface ,媒体独立接口),以及MII的各种衍生版本——GMII、SGMII、RMII、RGMII等。 从硬件的角度看,以太网接口电
阅读全文
摘要:在PCIe Spec中,物理层是被分为两个部分单独介绍的,分别是物理层逻辑子层和物理层电气子层,其中后者一般都是基于SerDes来实现的。 由于物理层处于PCIe体系结构中的最底层,所以无论是TLP还是DLLP都必须通过物理层完成收发操作。来自数据链路层的TLP和DLLP都会被临时放入物理层的Buf
阅读全文
摘要:集成电路测试的定义 集成电路测试是对集成电路或模块进行检测,通过测量对于集成电路的输出回应和预期输出比较,以确定或评估集成电路元器件功能和性能的过程,是验证设计、监控生产、保证质量、分析失效以及指导应用的重要手段。 集成电路测试的基本原理 被测电路DUT(Device Under Test) 可作为
阅读全文
摘要:1. PCIe基础知识PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准,它原来的名称为“3GIO”,是由英特尔在2001年提出的,旨在替代旧的PCI,PCI-X和AGP总线标准。与大多数总线一样,PCIe总线
阅读全文