文章目录[隐藏]
数据在功能部件之间传送的路径称为数据通路,例如,CPU中含有运算器和一些寄存器,那么运算器和这些寄存器之间的传送路径就是中央处理器内部数据通路。“信息通路”描述了信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传送到哪个寄存器,这些都是要加以控制的。
数据通路的功能:
建立数据通路的功能就是实现CPU内部的运算器和寄存器,以及寄存器之间的数据交换。
数据通路的基本结构:
1.CPU内部总线方式。将所有寄存器的输入端和输出端都连接到一条或多条公共的通路上,这种结构比较简单,但是数据传输存在较多的冲突现象,性能较低。如果连接各部件的总线只有一条,则称为‘单总线结构’。在双或多总线结构中,数据的传递可以同时进行。
CPU内部单总线结构
2.专用数据通路方式。根据指令执行过程中的数据和地址的流动安排连接线路,避免使用共享的总线,性能比较高,但硬件量较大。
3.常见数据通路的数据传送
1)寄存器之间的数据传送
寄存器之间的数据传送一般通过CPU内部总线完成。假设某寄存器AX的输出和输入控制信号为AXout和AXin,以PC寄存器内容送到MAR为例,实现该功能的流程及控制信号:
PC->Bus PCout有效,PC内容送至总线
Bus->MAR MARin有效,总线内容送至MAR
2)主存与CPU之间的数据传送
主存与CPU之间的数据传送也要借助CPU内部总线完成。假设某寄存器AX的输出和输入控制信号AXout和AXin,以CPU从内存中读取指令为例,实现该功能的的流程及控制信号:
PC->Bus->MAR PCout和MARin有效,现行指令地址->MAR
1->R CU发读命令
MEM(MAR)->MDR MDRin有效
MDR->Bus->IR MDRout和IRin有效,先行指令->IR
3)执行算术或逻辑运算
算术逻辑单元ALU是没有内部存储功能的组合电路,因此要执行算术逻辑运算时,要求ALU的两个输入端同时有效。假设有一暂存器Y用于该目的,先将一个操作数经CPU内部总线送入暂存器Y中保存起来,Y的内容在ALU的一个输入端始终有效,再将另一个操作数经总线直接送到ALU的另一端,最后运算结果直接保存在暂存器Z中。
假设其中一个操作数的地址采用隐含寻址,另一操作数地址采用直接寻址方式,以加法操作为例,实现该功能的操作流程及控制信号为:
Ad(IR)->Bus->MAR MDRout和MARin有效
1->R CU发读命令
MEM->数据线->MDR 操作数从存储器->数据线->MDR
MDR->Bus->Y MDRout和Yin有效,操作数->Y
(ACC)+(Y)->Z ACCout和ALUin有效,CU向ALU发加命令
Z->ACC Zout和ACCin有效,结果->ACC
版权声明:本文为CSDN博主「我真不聪明」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_40491661/article/details/121459594
数据在功能部件之间传送的路径称为数据通路,例如,CPU中含有运算器和一些寄存器,那么运算器和这些寄存器之间的传送路径就是中央处理器内部数据通路。“信息通路”描述了信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传送到哪个寄存器,这些都是要加以控制的。
数据通路的功能:
建立数据通路的功能就是实现CPU内部的运算器和寄存器,以及寄存器之间的数据交换。
数据通路的基本结构:
1.CPU内部总线方式。将所有寄存器的输入端和输出端都连接到一条或多条公共的通路上,这种结构比较简单,但是数据传输存在较多的冲突现象,性能较低。如果连接各部件的总线只有一条,则称为‘单总线结构’。在双或多总线结构中,数据的传递可以同时进行。
CPU内部单总线结构
2.专用数据通路方式。根据指令执行过程中的数据和地址的流动安排连接线路,避免使用共享的总线,性能比较高,但硬件量较大。
3.常见数据通路的数据传送
1)寄存器之间的数据传送
寄存器之间的数据传送一般通过CPU内部总线完成。假设某寄存器AX的输出和输入控制信号为AXout和AXin,以PC寄存器内容送到MAR为例,实现该功能的流程及控制信号:
PC->Bus PCout有效,PC内容送至总线
Bus->MAR MARin有效,总线内容送至MAR
2)主存与CPU之间的数据传送
主存与CPU之间的数据传送也要借助CPU内部总线完成。假设某寄存器AX的输出和输入控制信号AXout和AXin,以CPU从内存中读取指令为例,实现该功能的的流程及控制信号:
PC->Bus->MAR PCout和MARin有效,现行指令地址->MAR
1->R CU发读命令
MEM(MAR)->MDR MDRin有效
MDR->Bus->IR MDRout和IRin有效,先行指令->IR
3)执行算术或逻辑运算
算术逻辑单元ALU是没有内部存储功能的组合电路,因此要执行算术逻辑运算时,要求ALU的两个输入端同时有效。假设有一暂存器Y用于该目的,先将一个操作数经CPU内部总线送入暂存器Y中保存起来,Y的内容在ALU的一个输入端始终有效,再将另一个操作数经总线直接送到ALU的另一端,最后运算结果直接保存在暂存器Z中。
假设其中一个操作数的地址采用隐含寻址,另一操作数地址采用直接寻址方式,以加法操作为例,实现该功能的操作流程及控制信号为:
Ad(IR)->Bus->MAR MDRout和MARin有效
1->R CU发读命令
MEM->数据线->MDR 操作数从存储器->数据线->MDR
MDR->Bus->Y MDRout和Yin有效,操作数->Y
(ACC)+(Y)->Z ACCout和ALUin有效,CU向ALU发加命令
Z->ACC Zout和ACCin有效,结果->ACC
版权声明:本文为CSDN博主「我真不聪明」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_40491661/article/details/121459594
暂无评论