处理器设计:特性、挑战与解决方案
立即解锁
发布时间: 2025-08-16 01:52:42 阅读量: 1 订阅数: 2 


计算机工程的物理基础解析
# 处理器设计:特性、挑战与解决方案
## 1. 现代处理器特性概述
现代处理器是一个复杂的机器,理解其设计需要掌握一些基本的物理原理。下面将从芯片层面的关键趋势、内存层次结构和芯片布局等方面进行介绍。
### 1.1 芯片层面的关键趋势
ITRS路线图展示了芯片层面的几个关键趋势,分为低成本和高性能两个细分领域,具体数据如下表所示:
|年份|2011|2014|2017|2020|2023|
| ---- | ---- | ---- | ---- | ---- | ---- |
|成本 - 性能芯片<br>功率 (W)|161|152|130|130|130|
|成本 - 性能芯片<br>I/O 数量|728 - 3061|800 - 4075|960 - 5423|1050 - 7218|1212 - 8754|
|成本 - 性能芯片<br>性能 (GHz)|3.744|4.211|4.737|5.329|5.994|
|高性能芯片<br>功率 (W)|161|152|130|130|N/A|
|高性能芯片<br>I/O 数量|5094|5896|6826|7902|9148|
|高性能芯片<br>性能 (GHz)|3.744|4.211|4.737|5.329|5.994|
从表中可以看出,功耗并没有按照理想缩放比例那样大幅下降,低成本芯片的时钟频率缩放幅度不如高性能芯片激进。此外,低成本和高性能芯片的一个重要区别在于所需的引脚数量,片上供电是导致高引脚数量的重要驱动因素之一。
### 1.2 复杂的内存层次结构
现代微处理器具有复杂的内存层次结构,即使是廉价的嵌入式处理器也通常包含缓存和板载闪存存储,高性能微处理器的内存层次结构更为复杂。以下是不同内存层次的相对大小和访问时间:
|内存类型|大小|访问时间|
| ---- | ---- | ---- |
|CPU 寄存器|256 B|1 ns|
|L1 缓存|32 KB|5 ns|
|L2 缓存|64 KB|10 ns|
|L3 缓存|8 MB|40 ns|
|DRAM|8 GB|80 ns|
|磁盘|128 GB|80 μs|
|固态硬盘|6 TB|8000 μs|
内存层次结构之所以复杂,是因为无法构建一个在大小、性能和易失性等所有方面都理想的单一内存结构,这是计算机架构师为适应半导体技术限制而做出的调整。
### 1.3 芯片布局
芯片布局是对芯片物理设计的高层次抽象描述,其设计单元与系统框图组件相当,但逻辑设计和物理设计在组件划分上可能会有所不同。芯片布局应大致按比例绘制,各模块的相对大小和宽长比很重要,它有助于芯片设计师进行设计规划,特别是在芯片最大面积有特定要求的情况下。
## 2. 总线与互连
总线在计算机系统中连接所有主要组件,使其能够相互通信。小总线用于数据路径连接功能单元和寄存器文件,大总线则将处理器连接到内存和 I/O 系统。许多现代芯片使用片上网络,提供更复杂的互连拓扑结构并采用基于数据包的通信方式,为简化起见,这里主要讨论总线。
### 2.1 长线上的缓冲模型
可以通过一个长线的简单模型来理解缓冲的作用。长线的每一段由一端的驱动反相器和另一端的接收器组成,驱动反相器建模为驱动电阻 Rb,接收器建模为负载电容 Cb,导线本身用 Elmore RC 模型描述。当级联一系列缓冲线段时,一段的接收器成为下一段的驱动器。
第一段的形式为:\((Rb + r)c\)
最后一段包含负载电容的形式为:\((nr + Rb)(Cb + c)\)
完整缓冲线段的延迟可以近似为:
\[t_{seg} = (Rb + r)c + \sum_{2\leq i\leq(n - 1)}(n - i)rc + (nr + Rb)(Cb + c) = (Rb + r)c + \frac{1}{2}(n - 1)(n - 2)rc + (nr + Rb)(Cb + c)\]
对于短线,缓冲电阻和电容主导延迟;随着线变长,导线延迟成为重要因素。
### 2.2 缓冲与非缓冲线的延迟比较
比较一条长线段和两条短线段的延迟时,假设两种情况下总晶体管面积 A 相同。在导线中间放置一个缓冲器,每个驱动器的晶体管有源面积为 A/2,每个半长线段有 n/2 个 RC 段,延迟约为全长线段的 1/4。由于两个半长线段串联,缓冲线的总延迟是未缓冲线的一半。
当直接连接两个 RC 传输线时,不能简单地将两个线段的 Elmore 延迟相加得到总导线延迟,因为第二段的电容是通过两段导线的电阻充电的。而使用反相器提供缓冲连接时,缓冲器作为电容充电电阻链的端点,放大并重塑导线上的转换,增加其斜率并减少失真,因此可以将两个缓冲线段的延迟视为独立并相加。
如果 N 是缓冲线段的数量,每个线段有 n/N 个 RC 段,一个线段的延迟为:
\[t_{bseg} = (Rb + r)c + \frac{1}{2}(\frac{n}{N} - 1)(\frac{n}{N} - 2)rc + (\frac{n}{N}r + Rb)(Cb + c)\]
缓冲线的总延迟为:
\[t_{bwire} = N[(Rb + r)c + \frac{1}{2}(\frac{n}{N} - 1)(\frac{n}{N} - 2)rc + (\frac{n}{N}r + Rb)(Cb + c)]\]
对于适度数量的缓冲器,延迟主要取决于导线段的 Elmore 延迟,缓冲器能改善延迟;但随着缓冲器数量增加,缓冲器的阻抗和延迟会占主导,总延迟最终会增加,因此可以确定一个最佳缓冲器数量来最小化导线延迟。
### 2.3 总线延迟分析
总线连接的逻辑对其性能有显著影响,可以根据总线连接系统的复杂度来估计总线延迟。总线连接 N 个称为核心的单元,若将长度归一化为核心大小,总线长度与连接的核心数量成正比。总线用于一个核心向另一个核心发送数
0
0
复制全文
相关推荐










