Andes Workshop
https://forum.andestech.com/

STANDBY指令
https://forum.andestech.com/viewtopic.php?f=14&t=62
Page 1 of 1

Author:  infinity [ Wed Apr 20, 2011 10:37 am ]
Post subject:  STANDBY指令

這個指令可以使cpu進入待機模式,能節省電力,
在AndeStart_ISA_UM025_V1.4.pdf裡面有說明。
節錄如下:

Attachment:
pp1.gif
pp1.gif [ 20.34 KiB | Viewed 11882 times ]

Syntax: STANDBY SubType (= no_wake_grant, wake_grant)
Purpose: It is used for a core to enter a standby state while waiting for external events to
happen.
Description: This instruction puts the core and its associating structures into an
implementation-dependent low power standby mode where the instruction execution stops
and most of the pipeline clocks can be disabled. The core has to enter the standby mode
after all external memory and I/O accesses have been completed.
In general, the core leaves the standby mode when an external event happens that needs the
core’s attention. However, to facilitate the need for an external power manager to control
the clock frequency and voltage, the wakeup action may need the external power
manager’s consent. Thus two flavors of STANDBY instruction are defined to distinguish
the different usages. The SubType field definitions are listed as follows.
(點選圖片可以放大顯示)
Attachment:
pp2.gif
pp2.gif [ 30.28 KiB | Viewed 11882 times ]

Attachment:
pp3.gif
pp3.gif [ 10.5 KiB | Viewed 11882 times ]


The wakeup external events include interrupt (regardless of masking condition), debug
request, wakeup signal, reset etc. And the instruction execution restarts either from the
instruction following the STANDBY instruction or from the enabled interrupt handler
which cause the core to leave the standby mode. When entering an interrupt handler, the
IPC system register will have the address of the instruction following the STANDBY
instruction.
An implementation can export the standby state to an external agent such as a
power/energy controller to further regulate the clock or the voltage of the processor core
for maximum energy savings. However, if any such clock or voltage regulation causes any
core/memory state loss, software is responsible to preserve the needed states before the
core enters standby mode. And if such state loss has happened, the only sensible way to
bring the core into action is through a reset event.

沒有全部貼上來,看文件比較清楚。

Page 1 of 1 All times are UTC + 8 hours [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/