【问题标题】:What is relation between Status register and Control register?状态寄存器和控制寄存器之间有什么关系?
【发布时间】:2017-05-18 01:40:07
【问题描述】:

在通过“carl hamacher”了解计算机组织中的基本 I/O 时,我对很多术语感到困惑。

在中断 I/O 中,每当设备产生中断时,处理器都会中断当前正在执行的程序并保存程序计数器和状态寄存器的内容,然后 ISR 正在处理中断。ISR 完成后,从执行指令执行,然后恢复保存的状态寄存器和PC。这对我来说非常清楚。

但我被困在以下几点...-:

有一个标志 IE(中断使能),如果它是 1 则接受来自 I/O 设备的中断请求。

另一方面,还有一点。

I/O 设备的接口包括一个控制寄存器,该寄存器包含信息 控制设备的操作模式。该寄存器中的一位可能是专用的 中断控制。仅当该位 设置为 1

现在这个控制寄存器是什么,他们在谈论哪个位?它与 IE 标志不同吗???状态寄存器和控制寄存器是什么关系?

另外还有一点

确定设备是否请求中断所需的信息是 在其状态寄存器中可用。当设备发出中断请求时,它设置为 1 a 位在其状态寄存器中,我们将其称为 IRQ 位。最简单的鉴别方法 中断设备是让中断服务例程轮询系统中的所有 I/O 设备。 遇到的第一个 IRQ 位设置为 1 的设备是应该服务的设备。 然后调用适当的子程序来提供请求的服务

请解释这 3 位即 IE、IRQ 和控制寄存器位之间的关系 我完全糊涂了..!!!

【问题讨论】:

    标签: computer-science cpu-architecture


    【解决方案1】:

    考虑这个简化但完整的确认中断背后的 CPU 逻辑视图:

    状态寄存器中的IE标志用于屏蔽来自IRQ引脚的所有中断请求。
    当 IRQ 被置位时,它控制 CPU 何时处理中断。
    这个状态寄存器在 CPU 中。


    现在考虑这个设备的简化视图:

    设备有一个控制块,用于识别何时生成中断请求(方案中的中断生成逻辑)。
    此模块输出一个信号以请求中断 (IRQreq) 和一组 n 信号,用于识别中断的来源/原因(例如,传输缓冲区空与新收到的数据)。

    这两个信号都将在设备状态寄存器中结束,但是IRQreq最终可以通过设备控制寄存器位被屏蔽 IRQen。

    如果 IRQen 为零,则设备 IRQ 引脚也将为零,并且不请求 IRQ,此外,状态寄存器中没有设置位来指示已请求中断。
    尽管software can use polling to test the device status.

    同一个 ISR 可用于处理多个设备,因此有必要识别哪个设备实际触发了它,这是通过检查每个可能的设备状态寄存器来完成的。


    所以有三个寄存器:

    • CPU状态寄存器让软件在CPU级别屏蔽中断;所有中断都被屏蔽,无论是什么设备产生它们。
    • 设备控制寄存器让软件屏蔽每个设备的中断;可以防止某些设备产生中断,有些则不能。
    • 设备状态寄存器 让软件知道最后产生的中断(如果有的话)。通常,这也用于确认中断。

    【讨论】:

    • IRQ 类似于 IE(中断启用)标志,用于接受/拒绝中断请求 ....即,如果任何设备想要处理其中断请求,IE 位必须为 1 ..! !我说的对吗?
    • @sourav IRQ 是设备的引脚(它在虚线框的外部,表示设备的芯片)。设备是一个中断源,它产生中断。但是为了能够产生中断,控制寄存器中的 IRQen 位必须为 1,否则 AND 将导致 0,IRQ 也是如此(因此没有请求中断)。 IE和IRQen从两个不同的角度来看基本上是同一个概念:第一个是不接受中断第二个是don'不要让中断退出.
    【解决方案2】:

    Control (IE) - 用于启用或禁用设备请求中断的能力。 "是否允许此设备请求中断?"

    状态 (IRQ) - 如果中断被启用(由控制),IRQ 将被设置以指示特定设备已请求中断。 “此设备现在正在请求中断。”

    我不确定第三位在哪里,除非它是全局(而不是每个设备)中断启用/禁用。根据具体的架构,可能存在每个设备的 IE/IRQ,以及全局 IE/IRQ,其中全局 IE 覆盖每个设备,全局 IRQ 表示至少有 1 个设备设置了其 IRQ。

    【讨论】:

    • IRQ标志和IE标志属于同一个状态寄存器吗?
    猜你喜欢
    • 2012-01-28
    • 2012-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2012-03-23
    相关资源
    最近更新 更多