CPU数据总线与RAM数据总线的8085微处理器连接
8085 microprocessor connection of CPU data bus with RAM data bus
如果 CPU 数据总线位 2 连接到 RAM 数据位 5 并且 CPU 数据总线位 5 连接到 RAM 数据位 2 会发生什么?假设其余的连接都没有问题-解释一下。
我的想法 -
我认为与来自 RAM 的数据相比,数据的第二位和第五位将在 CPU 中交换。
如果你能提供更多的见解和思考这个问题的方法,我将不胜感激。
如果交换位总是交换,那么我们实际上永远不会知道:CPU何时将数据存储在RAM 并将其读回,它将读取它写入的相同数值,这就是 RAM 应该如何工作!我们实际上并不关心 RAM 的哪一位用于存储字节的哪一位——只有当系统是位可寻址的(它不是)时,我们甚至可以检查哪一位去了哪里。
但是如果有办法让内容进入 CPU 或进入 RAM 而不被交换,即不经过错误连接的数据总线,那么坏事就会发生。例如,如果有一个 ROM,它是未交换的,那么当通过错误接线的总线读取时,它会传送位交叉的指令和数据,所以事情将无法正常工作,或者如果有一个 DMA 系统从硬盘驱动器最初绕过该特定错误接线进入内存,但后来被 CPU 使用该错误接线总线看到。
如果没有 ROM 并且所有 I/O 都是通过单独的正确接线的 I/O 总线完成的,并由 CPU 通过错误接线的总线写入 RAM,那么我们会永远不知道 RAM 的每个字节都使用了错误的位。
如果 CPU 数据总线位 2 连接到 RAM 数据位 5 并且 CPU 数据总线位 5 连接到 RAM 数据位 2 会发生什么?假设其余的连接都没有问题-解释一下。
我的想法 - 我认为与来自 RAM 的数据相比,数据的第二位和第五位将在 CPU 中交换。
如果你能提供更多的见解和思考这个问题的方法,我将不胜感激。
如果交换位总是交换,那么我们实际上永远不会知道:CPU何时将数据存储在RAM 并将其读回,它将读取它写入的相同数值,这就是 RAM 应该如何工作!我们实际上并不关心 RAM 的哪一位用于存储字节的哪一位——只有当系统是位可寻址的(它不是)时,我们甚至可以检查哪一位去了哪里。
但是如果有办法让内容进入 CPU 或进入 RAM 而不被交换,即不经过错误连接的数据总线,那么坏事就会发生。例如,如果有一个 ROM,它是未交换的,那么当通过错误接线的总线读取时,它会传送位交叉的指令和数据,所以事情将无法正常工作,或者如果有一个 DMA 系统从硬盘驱动器最初绕过该特定错误接线进入内存,但后来被 CPU 使用该错误接线总线看到。
如果没有 ROM 并且所有 I/O 都是通过单独的正确接线的 I/O 总线完成的,并由 CPU 通过错误接线的总线写入 RAM,那么我们会永远不知道 RAM 的每个字节都使用了错误的位。