草庐IT

【《硬件架构的艺术》读书笔记】09 电磁兼容性能设计指南(3)

9.6.3微控制器级技术解决噪声问题的最佳途径在源头。9.6.3.1多时钟和接地去耦电容:1、容量应足够大以在转换时间内提供所需的电流。2、应足够小以使时钟频率小于电容的谐振频率。还应遵守:1、所有电源/地线对中尽可能是均衡电流。2、除ESD保护外,应避免在内部连接电源引脚和接地引脚。3、芯片上使用独立的电源-地线对来把有噪声的电路和敏感电路隔离开。9.6.3.2消除竞态条件竞态条件定义了一种条件,即:器件输出取决于输入端两个或多个事件,导致设备输出的转换。这就额外增加了系统噪声。9.6.3.3降低系统速度降低系统工作频率至绝对值最小值。9.6.3.4驱动器规格驱动器对于负载充电的速度快于负载

【《硬件架构的艺术》读书笔记】09 电磁兼容性能设计指南(2)

这一节就大致浏览一下,不细看了。9.6减少EMC/EMI的技术三个方法:1、在源头抑制发射。2、耦合路径尽可能低效。3、受体几乎不受发射影响。9.6.1系统级技术9.6.1.1展频时钟技术(SSC)在数字系统内。周期性的时钟信号是EMI辐射的主要原因。此外,控制与计时信号、地址和数据总线、互连电缆和连接器都会产生EMI发射。屏蔽是通过覆盖发射位置来减少EMI发射的一种简单方式,但额外增加了重量、空间和费用。低通滤波器减少EMI也有自身层面的问题,如对高速系统无效,另一个问题是技术不是系统性的,在任意一个指定节点降低EMI并不能减少在其他节点的发射。更有效的方法:展频时钟技术。将辐射传播到更宽频

【《硬件架构的艺术》读书笔记】08 消抖技术

8.1简介在电子设备中两个金属触点随着触点的断开闭合便产生了多个信号,这就是抖动。消抖使用来确保每一次断开或闭合触点时只有一个信号起作用的硬件设备或软件。(说人话就是每次断开闭合只对应一个操作)。抖动在某些模拟和逻辑电路中可能产生问题,因为这些电路反应太快会将开关脉冲误当作数据流。时序逻辑数字电路特别容易收到触点抖动的影响。开关抖动产生的电压波形干扰正常逻辑电路的振幅和时序规格要求。结果是亚稳定性、竞争、小脉冲和故障等问题导致电路失效。8.2开关行为   若开关用于开灯或启动风扇马达,则触点抖动基本没有影响,但是用作数字计数器、个人计算器或微处理器等设备的输入,由于触点抖动就会产生问题。计数器

【《硬件架构的艺术》读书笔记】07 处理字节顺序

7.1介绍 本章主要介绍字节顺序的的基本规则。(感觉偏软件了,不知道为啥那么会放进《硬件架构的艺术》这本书)。7.2定义 字节顺序定义数据在计算机系统中的存储格式,描述存储器中的MSB和LSB的位置。对于数据始终以32位形式保存在存储器中的真32位系统,字节顺序没有实际意义,若要将字节或16位半字映射到存储器中32位字的系统,字节顺序不匹配就会影响数据的完整性。大端模式:将MSB保存在最低存储器地址处。小端模式:把LSB保存在最低存储器地址处。下面是将0xAABBCCDD分别以大端和小端模式保存在存储器中。字节0表示最低存储器地址。  下面是两种模式对应存储器地址:  上面的是按字节形式处理数

【《硬件架构的艺术》读书笔记】06 流水线的艺术(3)

6.9流水线冒险冒险会干扰流水线并阻止下一条指令在目标时钟周期内的执行。冒险会降低流水线在理想情况下所能带来的速度提升。冒险分类:1、结构冒险:资源冲突导致硬件无法支持所有可能的指令组合同时执行。2、数据冒险:指令执行需要之前指令计算结果,而这个结果还在流水线中没计算出来。3、控制冒险:分支的流水线的其他指令改变程序计数器的值。通用方法:停止流水线直至风险消除,在流水线中插入多个“气泡”。6.9.1结构冒险  如图,MEM在一个周期内被两个指令使用,产生冲突。解决方法:如图,停一个周期,待对MEM的冲突解除后再恢复流水线。另一种方法:IF和MEM阶段使用不同的存储器来避免同时访问同一块存储器。

【《硬件架构的艺术》读书笔记】06 流水线的艺术(2)

6.6DLX指令集的实现这节开始将指令集相关内容,没学过相关知识,看不太懂,就快速浏览一下好了。DLX指令集包括五个部分:1、指令获取(IF)IRNPC从存储器中获取指令(PC为指针)并放入指令寄存器(IR),IR保存下个时钟周期所需指令,PC值递增4,指向下个指令地址。2、指令解码/寄存器获取(ID)   指令格式是固定的,所以读寄存器和解码可以同时进行。这称为固定域译码。3、执行/有效地址周期(EX)根据指令类型执行下面4个功能之一:a)访问存储器   b)寄存器——寄存器ALU指令   c)寄存器——立即数ALU指令d)分支指令   4、访问存储器/分支完成周期(MEM)a)访问寄存器 

【《硬件架构的艺术》读书笔记】06 流水线的艺术(1)

6.1介绍流水线通过在较长的组合逻辑路径中插入寄存器降低了组合逻辑延迟,增加了时钟频率并提高了性能。 图中分别为插入流水线前后的逻辑。长路径插入寄存器后最大时钟频率明显增加,但是也带来了额外的开销,并且增加了系统延迟。6.2影响最大时钟频率的因素 图中电路若TCQA、TSB、THB均为0,Fmax就是组合逻辑最大路径延迟的倒数。 6.2.1时钟偏移(Skew)如图6.3,时钟到达B的时间可能相对于寄存器到达A的时间有一些延迟。这种传播延迟的细小差别,可能对整个系统时序产生无法接受的影响,这种现象也叫做“时钟偏移”(Skew)。这里感觉说反了。。时钟延迟小于数据路径延迟,才是负时钟偏移。这时,时

【《硬件架构的艺术》读书笔记】05 低功耗设计(3)

5.6在寄存器传输级降低功耗RTL完成时80%的功耗就已经确定,后端不能解决所有功耗问题。综合前RTL阶段就应讲与功耗有关的所有问题解决。5.6.1状态机编码与解码格雷码在相邻状态转换时仅有一位发生变化,消耗能量更少。此外格雷码编码的状态机也消除了依赖于状态的组合等式中存在毛刺的风险。  若使用别的编码风格,仍可以通过让翻转频率最高的状态有最少的翻转位数,降低功耗。另一种方法:把FSM和STG(状态转移图)分解成两个,若两个子FSM之间没有转换发生,那么只有一个FSM需要供给时钟。5.6.2二进制数表示法某些应用中,有符号数在切换过程中比补码更有优势。  某些只使用积分器求和的应用,补码在0-

【《硬件架构的艺术》读书笔记】05 低功耗设计(1)

5.1介绍能量以热量形式消耗,温度升高芯片失效率也会增加,增加散热片或风扇会增加整体重量和成本,在SoC级别对功耗进行控制就可以减少甚至可能消除掉这些开支,产品也更小更便宜更可靠。本章描述了减少动态功耗和静态功耗的各种技术。5.2功耗源三个主要的功耗源:浪涌、静态功耗、动态功耗。浪涌电流:器件上电时最大瞬时输入电流。浪涌电流在应用中也称为启动电流。浪涌电流与设备有关,如电机启动电流前几个周期时正常满载电流的数倍。基于SRAM的FPGA也有很明显的浪涌电流,上电时器件没有配置,需要外部下载数据配置编程资源(查找表、布线资源)。反熔丝FPGA无需上电配置,所以没有浪涌电流。待机电流:关断主电源或系

【《硬件架构的艺术》读书笔记】03 处理多个时钟(1)

3.1介绍单时钟设计更易于实现,也更少出现亚稳态、建立和保持时间违例方面的问题。但在实践中,很少有设计只在一个时钟下运行。3.2多时钟域多个始终可以有以下一种或多种时钟关系:1、时钟频率不同。2、时钟频率相同,但相位不同。 3.3多时钟域设计的难题1、建立时间和保持时间的违背。2、亚稳态。事实上1就会导致23.3.1违背建立时间和保持时间 多时钟域情况下,很容易出现一个时钟域的输出在另一个时钟域的时钟上升沿到来时发生改变的现象。  图中xclk_output1不满足建立时间和保持时间,所以会造成亚稳态。而xclk_output2则没有该问题。3.3.2亚稳态详见第一章。3.4多时钟设计的处理技