单数据路径和管道数据路径的区别

单数据路径和管道数据路径的区别

1. 单周期数据路径

Single Datapaths 相当于原来的单周期数据通路 数据存储器只有一个地址输入。实际的内存操作可以通过 MemRead 和 MemWrite 控制信号来确定。指令和数据有单独的存储器有 2 个用于基于 PC 的计算的加法器和一个 ALU。控制信号相同。

2. 管道数据路径

管道的目标是允许同时执行多条指令。我们可能需要在一个循环中执行多个操作。递增 PC 并同时添加寄存器。获取一条指令,同时另一条读取或写入数据。
与单周期数据路径一样,管道处理器需要复制同一时钟周期所需的硬件元素。

Single Datapath 和 Pilpeline Datapath 之间的区别:

编号 单周期数据通路 管道数据通路
1 指令不细分 指令每阶段分为一个
2 时钟周期对于最低指令足够长 时钟周期短但对于最低指令足够长
3 只能同时执行 1 条指令。 有与管道阶段一样多的指令
4 每条指令有 1 个周期,即 CPI = 1 每条指令有固定数量的时钟周期,每个管道阶段一个,即 CPI = k
5 控制单元为整个指令生成信号。控制单元为整个指令产生信号; 这些信号通过管道寄存器从一个管道传播到另一个管道。
6 有重复的硬件,因为可以将一个功能单元用于每条指令最多一个子任务。 有重复的硬件,因此对可以同时在管道中的指令没有限制。
7 不需要额外的寄存器。 需要额外的寄存器来将一个管道级的结果提供给下一个管道级。
8 绩效是基准。 性能比单个周期要快到明显快。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程