可实现节电的数通设备及其节电控制装置和方法 技术领域 本发明涉及节电技术, 特别涉及一种可实现节电的数通设备、 以及一种节电控制 装置和一种节电控制方法。
背景技术 数通设备 ( 例如交换机、 路由器等 ) 作为网络架构的结点设备, 组成了小到家庭式 SOHO 网络、 大到 Internet 等各种数字通信网络, 由于数字通信网络分布广、 范围大, 因而对 数通设备实现有效的节电措施能够产生非常好的规模效应, 从而较为显著地减少能耗、 进 而通过减少能耗而产生较为可观的经济效益。
现有技术中, 数通设备的芯片级节电措施已经得到实际的应用, 例如, 数通设备的 CPU 芯片具有降频或者休眠模式, 当 CPU 芯片处于不忙碌的状态时, 可以进行降频或者进入 休眠模式, 从而有效减少该 CPU 芯片的耗电量。
此外, 为了产生更优的节电效果, 现有技术中还提供了数通设备的设备级节电措 施, 如图 1 所示, 该数通设备包括一 CPU 模块 ( 或称之为 CPU 小系统 )、 一接口模块、 一物理 层 (PHY) 模块、 以及若干接口, 其中, CPU 模块中的 CPU 芯片作为数通设备的节电控制中枢, 通过接口模块从物理层 (PHY) 模块监控各接口的状态, 当各接口所连接的设备均关闭、 即 各接口均处于 Down 状态时, CPU 芯片向接口模块发出节电控制信号, 使接口模块进入休眠 状态 ; CPU 芯片还会根据各接口的情况选择降频或者进入休眠模式、 并同时对其所在的 CPU 模块中的 RAM 芯片和 ROM 芯片发出节电控制信号, 从而减少数通设备的耗电量、 并降低数通 设备运行时所产生的热能, 同时还可延长数通设备的生命周期。
然而, 现有技术中的上述设备级节电措施虽然能够产生一定程度的节电效果, 但 却存在如下问题 :
1、 上述设备级的节电措施仅适用于下行接口、 而未针对上行接口产生节电效果。 具体说, 数通设备的各接口中, 连接例如交换机、 PC 机等下级设备的接口为下行接口, 连接 例如交换机、 路由器等上级设备的接口为上行接口, 只要上级设备不关闭, 则即便所有下行 接口连接的下级设备均关闭, 上行接口也仍然会处于 Up 状态、 以实时准备作为 IP 接入口 为连接下行接口的下级设备提供数据流量服务, 由此就会产生不必要的耗电量、 而且对 CPU 的节电效果也有一定的影响, 从而使设备级节电措施不能达到最佳的设备级节电效果 ; 此 外, 数通设备的上行接口持续处在 Up 状态, 还会影响其上级设备实施节电措施, 进而无法 实现网络级别的节电控制, 如图 2 所示, 当交换机的所有下行接口所连接的 PC 机均关闭时, 其连接路由器的上行接口仍处于 Up 状态, 因而使得路由器的相应下行接口也处于 Up 状态、 无法针对该相应下行接口采取节电措施, 从而对路由器来说也无法达到最佳的节电效果。
2、 作为节电控制中枢的 CPU 芯片无论是降频或者是进入休眠状态, 都必须保持上 电和监控, 而 CPU 芯片本身的耗电量占到数通设备总耗电量的较大比例, 因而现有技术中 以 CPU 作为节电控制中枢的设备级节电措施不能达到最佳的设备级节电效果。
发明内容 有鉴于此, 本发明提供了一种可实现节电的数通设备、 以及一种节电控制装置和 一种节电控制方法, 能够提高节电效果。
本发明提供的一种可实现节电的数通设备, 包括 :
若干接口模块, 每个接口模块分别通过对应的物理层模块连接该接口模块所对应 的若干上行接口和 / 或若干下行接口 ;
CPU 模块, 该 CPU 模块中的 CPU 芯片通过总线连接所有接口模块 ;
以及, 逻辑芯片, 其通过对各物理层模块的自动检测获取各下行接口的状态 ; 当任 意接口模块所对应的所有接口均为下行接口并持续 Down 状态后, 控制该接口模块进入节 电状态 ; 当数通设备的所有下行接口均持续 Down 状态后, 控制上行接口所对应的接口模块 进入节电状态、 使上行接口被强置为 Down 状态 ; 当任意 Down 状态的下行接口恢复 Up 状态 后, 控制该下行接口所对应的已进入节电状态的接口模块进入工作状态, 并控制上行接口 所对应的已进入节电状态的接口模块进入工作状态。
逻辑芯片进一步在数通设备的所有下行接口均持续 Down 状态后, 控制 CPU 模块进 入节电状态 ; 并进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入节电状态的 CPU 模块进入工作状态。
该数通设备进一步包括 : 可对 CPU 模块中 CPU 芯片散热的风扇模块 ;
且, 逻辑芯片进一步在数通设备的所有下行接口均持续 Down 状态后, 控制风扇模 块进入节电状态 ; 并进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入节电状 态的风扇模块进入工作状态。
所有对应接口均为下行接口的接口模块的节电状态包括休眠模式和断电, 上行接 口对应的接口模块的节电状态包括断电 ;
且, 逻辑芯片在任意接口模块所对应的所有接口均为下行接口并持续 Down 状态 后, 先控制该接口模块进入休眠模式, 待进入休眠模式的该接口模块所对应的所有下行接 口仍均持续 Down 状态后再控制该接口模块断电 ; 在数通设备的所有下行接口均持续 Down 状态、 且所有对应接口均为下行接口的接口模块均持续断电后, 控制上行接口所对应的接 口模块断电、 使上行接口被强置为 Down 状态 ; 当数通设备中任意 Down 状态的下行接口恢复 Up 状态后, 控制该下行接口所对应的已进入休眠模式或已断电的接口模块进入工作状态, 并控制上行接口所对应的已断电的接口模块进入工作状态。
逻辑芯片进一步在其内置寄存器中记录各接口模块所对应的所有下行接口和 / 或上行接口状态、 以及各接口模块的状态, 并可供 CPU 芯片通过数据总线获取。
逻辑芯片进一步在检测到任意 Up 状态的下行接口变为 Down 状态时将内置寄存器 中该下行接口的状态记录为 Down ; 在检测到任意 Down 状态的下行接口变为 Up 状态时将内 置寄存器中该下行接口的状态记录为 Up, 并在控制该下行接口所对应的接口模块进入工作 状态的同时, 将内置寄存器中该接口模块的状态记录为工作状态 ;
逻辑芯片进一步在任意接口模块的所有对应接口均为下行接口、 且内置寄存器中 所记录的该接口模块的所有对应下行接口均为 Down 状态时, 对该接口模块所有下行接口 的 Down 状态计时 ;
逻辑芯片进一步在对所述任意接口模块所有下行接口的 Down 状态的计时到达
时, 从对应的物理层模块主动获取该接口模块的所有对应下行接口的状态, 如果所获取的 所有对应下行接口的状态均为 Down 状态, 则在控制该接口模块进入休眠模式的同时将其 内置寄存器中该接口模块的状态记录为休眠模式、 并对该接口模块的休眠模式计时 ;
逻辑芯片进一步在对所述任意接口模块的休眠模式计时到达时, 从对应的物理层 模块主动获取该接口模块所对应的所有下行接口的状态, 如果所获取的所有下行接口的状 态仍为 Down 状态, 则在控制该接口模块断电的同时将内置寄存器中该接口模块的状态记 录为断电 ;
逻辑芯片进一步在所述任意接口模块断电后, 读取内置寄存器中所有下行接口的 状态、 以及所有接口模块的状态 ; 在所读取的所有下行接口均为 Down 状态、 且所有接口均 为下行接口的各接口模块的状态均为断电时, 对数通设备的所有下行接口的 Down 状态计 时;
逻辑芯片进一步在对数通设备的所有下行接口的 Down 状态计时到达时, 从对应 的物理层模块主动获取数通设备的所有下行接口的状态, 如果所获取的所有下行接口的状 态仍为 Down 状态, 则在控制上行接口所对应的接口模块断电的同时将内置寄存器中该接 口模块的状态记录为断电 ; 逻辑芯片进一步在有任意下行接口在上行接口所对应的接口模块断电后变为 Up 状态时, 控制上行接口所对应的接口模块进入工作状态的同时, 将前述寄存器中对应接口 模块的状态记录为工作状态。
逻辑芯片进一步在上行接口所对应的接口模块断电的同时或之后控制 CPU 模块 断电 ; 以及, 进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入休眠模式或断 电的 CPU 模块进入工作状态。
逻辑芯片进一步在上行接口所对应的接口模块断电后、 执行所述控制 CPU 模块断 电的操作之前, 向 CPU 模块中的 CPU 芯片发送断电请求信号, 待 CPU 芯片完成对数通设备当 前配置的保存并回应允许断电的应答后再执行所述控制 CPU 模块断电的操作
该数通设备进一步包括 : 可对 CPU 模块中 CPU 芯片散热的风扇模块 ;
且, 逻辑芯片进一步在控制 CPU 模块进入休眠状态的同时控制风扇模块断电 ; 并 进一步在控制已进入休眠模式或断电的 CPU 模块进入工作状态的同时, 控制已断电的风扇 模块进入工作状态。
逻辑芯片进一步依据 CPU 模块中的 CPU 芯片所产生的使能信号触发。
本发明提供的一种节电控制装置, 该数通设备包括若干接口模块, 每个接口模块 分别通过对应的物理层模块连接该接口模块所对应的若干上行接口和 / 或若干下行接口 ; 且, 该节电控制装置包括 :
监控控制单元, 其通过对数通设备中各物理层模块的自动检测获取数通设备中各 下行接口的状态 ;
节电控制单元, 当数通设备中任意接口模块所对应的所有接口均为下行接口并持 续 Down 状态后, 控制该接口模块进入节电状态 ; 当数通设备的所有下行接口均持续 Down 状态后, 控制数通设备中上行接口所对应的接口模块进入节电状态、 使上行接口被强置为 Down 状态 ; 当数通设备中任意 Down 状态的下行接口恢复 Up 状态后, 控制数通设备中该下 行接口所对应的已进入节电状态的接口模块进入工作状态, 并控制数通设备中上行接口所
对应的已进入节电状态的接口模块进入工作状态。
节电控制单元进一步在数通设备的所有下行接口均持续 Down 状态后, 控制数通 设备中的 CPU 模块进入节电状态 ; 并进一步在数通设备中任意 Down 状态的下行接口恢复 Up 状态后, 控制数通设备中已进入节电状态的 CPU 模块进入工作状态。
节电控制单元进一步在数通设备的所有下行接口均持续 Down 状态后, 控制数通 设备中可对 CPU 模块中 CPU 芯片散热的风扇模块进入节电状态 ; 并进一步在数通设备中任 意 Down 状态的下行接口恢复 Up 状态后, 控制数通设备中已进入节电状态的风扇模块进入 工作状态。
所有对应接口均为下行接口的接口模块的节电状态包括休眠模式和断电, 上行接 口对应的接口模块的节电状态包括断电 ;
且, 节电控制单元在任意接口模块所对应的所有接口均为下行接口并持续 Down 状态后, 先控制该接口模块进入休眠模式, 待进入休眠模式的该接口模块所对应的所有下 行接口仍均持续 Down 状态后再控制该接口模块断电 ; 在数通设备的所有下行接口均持续 Down 状态、 且所有对应接口均为下行接口的接口模块均持续断电后, 控制上行接口所对应 的接口模块断电、 使上行接口被强置为 Down 状态 ; 当数通设备中任意 Down 状态的下行接口 恢复 Up 状态后, 控制该下行接口所对应的已进入休眠模式或已断电的接口模块进入工作 状态, 并控制上行接口所对应的已断电的接口模块进入工作状态。 节电控制装置中进一步包括一内置寄存器, 其中记录各接口模块所对应的所有下 行接口和 / 或上行接口的状态、 以及各接口模块的状态, 并可供数通设备 CPU 模块中的 CPU 芯片通过数据总线获取。
节电控制装置中进一步包括计时单元 ;
监控控制单元进一步 Up 状态的下行接口变为 Down 状态时将内置寄存器中该下行 接口的状态记录为 Down ; 在检测到任意 Down 状态的下行接口变为 Up 状态时将内置寄存器 中该下行接口的状态记录为 Up, 并在控制该下行接口所对应的接口模块进入工作状态的同 时, 将内置寄存器中该接口模块的状态记录为工作状态 ;
监控控制单元进一步在任意接口模块的所有对应接口均为下行接口、 且内置寄存 器中所记录的该接口模块的所有对应下行接口均为 Down 状态时, 利用计时单元对该接口 模块所有下行接口的 Down 状态计时 ;
监控控制单元进一步在对所述任意接口模块所有下行接口的 Down 状态的计时到 达时, 从对应的物理层模块主动获取该接口模块的所有对应下行接口的状态, 如果所获取 的所有对应下行接口的状态均为 Down 状态, 则在节电控制单元控制该接口模块进入休眠 模式的同时将其内置寄存器中该接口模块的状态记录为休眠模式、 并利用计时单元对该接 口模块的休眠模式计时 ;
监控控制单元进一步在对所述任意接口模块的休眠模式计时到达时, 从对应的物 理层模块主动获取该接口模块所对应的所有下行接口的状态, 如果所获取的所有下行接口 的状态仍为 Down 状态, 则在节电控制单元控制该接口模块断电的同时将内置寄存器中该 接口模块的状态记录为断电 ;
监控控制单元进一步在所述任意接口模块断电后, 读取内置寄存器中所有下行接 口的状态、 以及所有接口模块的状态 ; 在所读取的所有下行接口均为 Down 状态、 且所有接
口均为下行接口的各接口模块的状态均为断电时, 利用计时单元对数通设备的所有下行接 口的 Down 状态计时 ;
监控控制单元进一步在对数通设备的所有下行接口的 Down 状态计时到达时, 从 对应的物理层模块主动获取数通设备的所有下行接口的状态, 如果所获取的所有下行接口 的状态仍为 Down 状态, 则在节电控制单元控制上行接口所对应的接口模块断电的同时将 内置寄存器中该接口模块的状态记录为断电 ;
监控控制单元进一步在有任意下行接口在上行接口所对应的接口模块断电后变 为 Up 状态时, 控制上行接口所对应的接口模块进入工作状态的同时, 将前述寄存器中对应 接口模块的状态记录为工作状态。
节电控制单元进一步在上行接口所对应的接口模块断电的同时或之后控制 CPU 模块断电 ; 以及, 进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入休眠模式 或断电的 CPU 模块进入工作状态。
监控控制单元进一步在上行接口所对应的接口模块断电后、 触发节电控制单元执 行所述控制 CPU 模块断电的操作之前, 向 CPU 模块中的 CPU 芯片发送断电请求信号, 待 CPU 芯片完成对数通设备当前配置的保存并回应允许断电的应答后再触发节电控制单元执行 所述控制 CPU 模块断电的操作。 节电控制单元进一步在控制数通设备中的 CPU 模块进入休眠状态的同时, 控制数 通设备中可对 CPU 模块中的 CPU 芯片散热的风扇模块断电 ; 并进一步在控制已进入休眠模 式或断电的 CPU 模块进入工作状态的同时, 控制已断电的风扇模块进入工作状态。
监控控制单元进一步依据 CPU 模块中的 CPU 芯片所产生的使能信号触发。
本发明提供的一种节电控制方法, 所述的数通设备包括若干接口模块, 每个接口 模块分别通过对应的物理层模块连接该接口模块所对应的若干上行接口和 / 或若干下行 接口 ; 且, 该节电控制方法包括 :
通过对各物理层模块的自动检测获取各下行接口的状态 ;
当任意接口模块所对应的所有接口均为下行接口并持续 Down 状态后, 控制该接 口模块进入节电状态 ;
当数通设备的所有下行接口均持续 Down 状态后, 控制上行接口所对应的接口模 块进入节电状态、 使上行接口被强置为 Down 状态 ;
当任意 Down 状态的下行接口恢复 Up 状态后, 控制该下行接口所对应的已进入节 电状态的接口模块进入工作状态, 并控制上行接口所对应的已进入节电状态的接口模块进 入工作状态。
该节电控制方法进一步在数通设备的所有下行接口均持续 Down 状态后、 和 / 或上 行接口所对应的接口模块进入节电状态后, 控制 CPU 模块进入节电状态 ; 并进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入节电状态的 CPU 模块进入工作状态。
该节电控制方法进一步包括 : 在数通设备的所有下行接口均持续 Down 状态后, 控 制数通设备中可对 CPU 模块中的 CPU 芯片降温的风扇模块进入节电状态 ; 并进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入节电状态的风扇模块进入工作状态。
所有对应接口均为下行接口的接口模块的节电状态包括休眠模式和断电, 上行接 口对应的接口模块的节电状态包括断电 ;
当任意接口模块所对应的所有接口均为下行接口并持续 Down 状态后, 控制该接 口模块进入节电状态包括 : 在任意接口模块所对应的所有接口均为下行接口并持续 Down 状态后, 先控制该接口模块进入休眠模式, 待进入休眠模式的该接口模块所对应的所有下 行接口仍均持续 Down 状态后再控制该接口模块断电 ;
当数通设备的所有下行接口均持续 Down 状态后, 控制上行接口所对应的接口模 块进入节电状态、 使上行接口被强置为 Down 状态包括 : 在数通设备的所有下行接口均持续 Down 状态、 且所有对应接口均为下行接口的接口模块均持续断电后, 控制上行接口所对应 的接口模块断电、 使上行接口被强置为 Down 状态 ;
当数通设备中任意 Down 状态的下行接口恢复 Up 状态后, 控制该下行接口所对应 的已进入节电状态的接口模块进入工作状态, 并控制上行接口所对应的已进入节电状态的 接口模块进入工作状态包括 : 在任意 Down 状态的下行接口恢复 Up 状态后, 控制该下行接口 所对应的已进入休眠模式或已断电的接口模块进入工作状态, 并控制上行接口所对应的已 断电的接口模块进入工作状态。
该节电控制方法进一步在一寄存器中记录各接口模块所对应的所有接口状态、 以 及各接口模块的状态, 并可供数通设备 CPU 模块中的 CPU 芯片通过数据总线获取。
该节电控制方法进一步在检测到任意 Up 状态的下行接口变为 Down 状态时将内置 寄存器中该下行接口的状态记录为 Down ; 在检测到任意 Down 状态的下行接口变为 Up 状态 时将内置寄存器中该下行接口的状态记录为 Up, 并在控制该下行接口所对应的接口模块进 入工作状态的同时, 将内置寄存器中该接口模块的状态记录为工作状态 ;
该节电控制方法进一步在任意接口模块的所有对应接口均为下行接口、 且内置寄 存器中所记录的该接口模块的所有对应下行接口均为 Down 状态时, 对该接口模块所有下 行接口的 Down 状态计时 ;
该节电控制方法进一步在对所述任意接口模块所有下行接口的 Down 状态的计时 到达时, 从对应的物理层模块主动获取该接口模块的所有对应下行接口的状态, 如果所获 取的所有对应下行接口的状态均为 Down 状态, 则在控制该接口模块进入休眠模式的同时 将其内置寄存器中该接口模块的状态记录为休眠模式、 并对该接口模块的休眠模式计时 ;
该节电控制方法进一步在对所述任意接口模块的休眠模式计时到达时, 从对应的 物理层模块主动获取该接口模块所对应的所有下行接口的状态, 如果所获取的所有下行接 口的状态仍为 Down 状态, 则在控制该接口模块断电的同时将内置寄存器中该接口模块的 状态记录为断电 ;
该节电控制方法进一步在所述任意接口模块断电后, 读取内置寄存器中所有下行 接口的状态、 以及所有接口模块的状态 ; 在所读取的所有下行接口均为 Down 状态、 且所有 接口均为下行接口的各接口模块的状态均为断电时, 对数通设备的所有下行接口的 Down 状态计时 ;
该节电控制方法进一步在对数通设备的所有下行接口的 Down 状态计时到达时, 从对应的物理层模块主动获取数通设备的所有下行接口的状态, 如果所获取的所有下行接 口的状态仍为 Down 状态, 则在控制上行接口所对应的接口模块断电的同时将内置寄存器 中该接口模块的状态记录为断电 ;
该节电控制方法进一步在有任意下行接口在上行接口所对应的接口模块断电后变为 Up 状态时, 控制上行接口所对应的接口模块进入工作状态的同时, 将前述寄存器中对 应接口模块的状态记录为工作状态。
该节电控制方法进一步在上行接口所对应的接口模块断电的同时或之后控制 CPU 模块断电 ; 以及, 进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入休眠模式 或断电的 CPU 模块进入工作状态。
该节电控制方法进一步在上行接口所对应的接口模块断电后、 执行所述控制 CPU 模块断电的操作之前, 向 CPU 模块中的 CPU 芯片发送断电请求信号, 待 CPU 芯片完成对数通 设备当前配置的保存并回应允许断电的应答后再执行所述控制 CPU 模块断电的操作。
该节电控制方法在控制 CPU 模块进入休眠状态的同时, 进一步控制数通设备中可 对 CPU 模块中的 CPU 芯片降温的风扇模块断电 ; 并进一步在控制已进入休眠模式或断电的 CPU 模块进入工作状态的同时, 控制已断电的风扇模块进入工作状态。
该节电控制方法进一步依据 CPU 模块中的 CPU 芯片所产生的使能信号触发各物理 层模块的自动检测。
由上述技术方案可见, 本发明划分出针对不同接口的多个接口模块, 当任意接口 模块所对应的接口均配置为下行接口并均持续 Down 状态后, 可以控制该接口模块进入节 电状态, 以实现数通设备 “非满配接入” 的节电效果 ; 而当数通设备的所有下行接口均持续 Down 状态后, 还可以控制对应接口配置为上行接口的接口模块进入节电状态, 以实现 “非全 时接入” 的节电效果。 如此一来, 本发明不但针对各下行接口对相应的接口模块分别进行节 电控制, 还能够利用各下行接口的状态对上行接口所对应接口模块进行节电控制, 从而能 够提高设备级节电效果 ; 进而, 上行接口在其对应的接口模块进入节电状态后不会再处于 Up 状态, 因而不会影响上级设备实施节电措施, 从而还能够支持网络级别的节电控制。
而且, 本发明利用逻辑芯片作为节电控制中枢、 而非 CPU 芯片来作为节电控制中 枢, 即由逻辑芯片实现接口的检测、 以及对接口模块的节电控制, 因而无须 CPU 芯片在任何 情况下均保持上电和监控, 从而进一步提高设备级节电效果 ;
进而, 还可利用逻辑芯片在所有接口模块进入节电状态后, 控制 CPU 芯片所在的 CPU 模块进入节电状态, 因而能够再进一步地提高设备级节电效果。 附图说明 图 1 为现有技术中可实现设备级节电的数通设备结构示意图 ;
图 2 为现有技术中的数通设备组网示意图 ;
图 3a 和图 3b 为本发明实施例中采用不同接口配置方式的数通设备结构示意图 ;
图 4 为本发明实施例如图 3a 和图 3b 所示数通设备中作为节电控制装置的逻辑芯 片的内部结构示意图 ;
图 5 为本实施例如图 4 所示的作为节电控制装置的逻辑芯片中接口模块工作状态 指示寄存器的内部示意图 ;
图 6 为本发明实施例中节电控制方法的示例性流程示意图 ;
图 7a 和图 7b 为本发明实施例中节电控制方法的一较佳流程示意图 ;
图 8 为本发明实施例所能够实现的网络级节电的应用场景示意图。
具体实施方式
为使本发明的目的、 技术方案及优点更加清楚明白, 以下参照附图并举实施例, 对 本发明进一步详细说明。
在本实施例中, 针对多个接口划分出若干对应的接口模块, 即, 可以看作是将接口 划分为若干接口组 ( 每个接口组包括至少一个接口、 且各接口组的数量可以相同也可以互 不相同 ), 每个接口组对应一个接口模块, 以便于以接口组为节电粒度分别实现不同对应接 口模块的节电措施, 其中 :
每个接口可以配置为下行接口、 或是配置为上行接口, 由于每一接口组中的接口 均可以随意配置, 因而, 同一接口组可能全部为下行接口、 或全部为上行接口、 或同时包含 上行接口和下行接口 ; 存在一种特例, 每个接口组只包括一个接口, 即, 每个下行接口、 以及 每个上行接口分别对应一个接口模块, 如此可实现更小的节电粒度、 但会造成一定程度的 硬件资源浪费 ;
那么对于所有对应接口均配置为下行接口的每个接口模块来说, 可依据该接口模 块所对应的所有下行接口的状态是否均持续为 Down 状态来决定是否控制该接口模块进入 节电状态, 从而只要有所有对应接口均配置为下行接口的任意接口模块进入节电状态, 即 可看作是数通设备的部分下行接口空闲, 从而实现了数通设备的 “非满配接入” 节电效果 ; 而对于至少一个对应接口配置为上行接口的每个接口模块 ( 该接口模块有可能 存在配置为下行接口的其他接口、 也有可能仅存在配置为上行接口的至少一个接口 ) 来 说, 则需要参考数通设备的所有下行接口是否均持续为 Down 状态来决定是否控制该接口 模块进入节电状态, 当至少一个对应接口配置为上行接口的接口模块进入节电状态、 使上 行接口被强置为 Down 状态时, 数通设备与其接入的上级设备之间的连接可看作是暂时断 开, 即实现了数通设备的 “非全时接入” 节电效果 ; 进而, 如果上行接口也就不再处于 Up 状 态、 而是被强置为 Down 状态, 则上级设备对应的下行接口自然也就会从 Up 状态切换为 Down 状态, 即使得上级设备不会由于下行接口持续 Up 状态而无法实施节电措施, 由此即可实现 网络级别的节电控制。
实际应用中, 接口模块的节电状态可以为 : 休眠模式的单级节电状态, 或断电的单 级节电状态, 或先进入休眠模式、 后断电的两级节电状态。
下面, 对本实施例中可实现设备级和网络级节电的数通设备进行详细说明。
图 3a 为本发明实施例中可实现设备级和网络级节电的数通设备结构示意图。如 图 3a 所示, 以为每一接口模块所对应的接口全部配置为下行接口或全部为上行接口例, 本 实施例中可实现设备级和网络级节电的数通设备包括 :
CPU 模块, 该 CPU 模块又包括 CPU 芯片、 以及通过总线与 CPU 芯片相连的 RAM 和 ROM(CPU 模块中还可包括其他器件、 图 3a 中未一一示出 ) ;
风扇模块, 其主要用于 CPU 模块中 CPU 芯片的散热 ;
接口模块 1 ~ N(N 为大于 1 的正整数 ) 和 PHY 层模块 1 ~ N, 每个接口模块 i(i 大 于等于 1、 且小于等于 N) 分别通过对应的 PHY 层模块 i 连接对应的接口 ; 在图 3a 中, 接口 模块 1 对应的一个接口配置为上行接口, 而接口模块 2 ~ N 所分别对应的所有接口均配置 为下行接口 ;
电源模块, 其可为 CPU 模块、 风扇模块、 接口模块 1 ~ N、 以及 PHY 层模块 1 ~ N 供
电; 逻辑芯片, 其可从 CPU 芯片获取可识别上行接口和下行接口的接口配置信息, 从 而能够获知每个接口是配置为下行接口还是上行接口 ( 具体获取方式可以由本领域技术 人员按照现有方式来实现 ), 并通过对接口模块 2 ~ N 所分别对应的 PHY 层模块 2 ~ N 的 自动检测, 获取接口模块 2 ~ N 所分别对应的各下行接口状态, 例如, 如果检测到 PHY 层模 块 2 ~ N 自动上报的对应下行接口的链路 (Link) 信号则获知对应下行接口处于 Up 状态, 如果检测到 PHY 层模块 2 ~ N 自动上报的对应下行接口的 Link 中断信号则获知对应下行 接口处于 Down 状态 ; 而对于上行接口所对应的 PHY 层模块 1 则无需自动检测 ;
逻辑芯片还依据获取的下行接口状态执行如下的节电策略 ( 以针对下行接口采 取先进入休眠模式后断电的两级节电状态、 针对上行接口采取直接断电的单级节电状态为 例):
接口模块 2 ~ N 所分别对应的 PHY 层模块 2 ~ N、 即连接的接口全部为下行接口的 PHY 层模块 2 ~ N, 在数通设备开机运行的时间内始终处于上电状态, 以便于对下行接口状 态的自动检测 ;
当任意接口模块 j(j 大于等于 2、 且小于等于 N) 的所有对应下行接口持续预定时 间 T1 的 Down 状态后, 控制该接口模块 j 进入休眠模式, 例如直接向接口模块 j 产生可被接 口模块 j 所识别的休眠控制信号 ;
当进入休眠模式的接口模块 j 的所有对应下行接口继续持续预定时间 T2 的 Down 状态后, 控制该接口模块 j 断电, 例如向接口模块 j 与电源模块之间的开关产生电源控制信 号、 以使该开关断开 ;
当接口模块 2 ~ N 均断电并持续预定时间 T3 后, 即, 数通设备的所有下行接口均 持续 Down 状态至少 T1+T2+T3 的时间后, 控制接口模块 1 断电、 使接口模块 1 所对应的上行 接口被强置为 Down 状态, 例如向接口模块 1 与电源模块之间的开关产生电源控制信号、 以 使该开关断开 ; 进一步可选地, 由于无需对 PHY 层模块 1 所连接的上行接口自动检测, 因而 也可控制 PHY 层模块 1 断电 ( 图 3a 中未示出 PHY 层模块 1 与电源模块之间的开关 ) ;
当进入休眠模式的接口模块 j 的至少一个对应下行接口恢复 Up 状态后, 控制该接 口模块 j 恢复工作状态, 例如向 CPU 芯片产生模块恢复信号、 令 CPU 对接口模块 j 进行初始 化后进入工作状态 ;
当已断电的接口模块 j 的至少一个对应下行接口恢复 Up 状态后, 控制该接口模块 j 上电并进入工作状态, 例如向接口模块 j 与电源模块之间的开关产生电源控制信号、 以使 该开关闭合, 如果此时, 接口模块 1 也已断电, 则同时控制该接口模块 1 上电并进入工作状 态, 例如向接口模块 1 与电源模块之间的开关产生电源控制信号、 以使该开关闭合。
需要说明的是, 基于上述针对下行接口的两级节电状态, 逻辑芯片并不是在对应 下行接口均持续 Down 状态后直接控制接口模块 j 断电, 而是先令其进入休眠状态、 以实现 短期节电控制, 这样有利于接口模块 j 在有对应下行接口短期内恢复 Up 状态时尽快恢复工 作状态, 而只有对应下行接口在时间 T1+T2 的长时间内均持续 Down 状态, 逻辑芯片才控制 接口模块 j 断电, 以避免接口模块 j 由于频繁断电、 上电所可能造成的损害。
也就是说, 先进入休眠模式、 后断电的两级节电状态仅仅是一种较佳的节电措施, 而对于仅进入休眠模式、 或直接断电的节电措施, 也同样能够产生优于现有技术的节电效
果。 例如, 如果针对下行接口和上行接口均采取仅休眠的单级节电状态, 则:
当任意接口模块 j 的所有对应下行接口持续预定时间 T1’ 的 Down 状态后, 逻辑芯 片控制该接口模块 j 进入休眠模式 ;
当所有接口模块 2 ~ N 持续休眠模式预定时间 T2’ 后, 即, 数通设备的所有下行接 口均持续 Down 状态至少 T1’ +T2’ 的时间后, 逻辑芯片控制接口模块 1 进入休眠模式、 使接 口模块 1 所对应的上行接口被强置为 Down 状态 ;
当已进入休眠模式的接口模块 j 的至少一个对应下行接口恢复 Up 状态后, 逻辑芯 片控制该接口模块 j 恢复工作状态, 如果此时, 接口模块 1 也已进入休眠模式, 则同时控制 该接口模块 1 恢复工作状态。
再例如, 如果针对下行接口和上行接口均采取直接断电的单级节电状态, 则:
当任意接口模块 j 的所有对应下行接口持续预定时间 T1” 的 Down 状态后, 逻辑芯 片控制该接口模块 j 断电 ;
当所有接口模块 2 ~ N 持续断电预定时间 T2” 后, 即, 数通设备的所有下行接口均 持续 Down 状态至少 T1” +T2” 的时间后, 逻辑芯片控制接口模块 1 断电、 使接口模块 1 所对 应的上行接口被强置为 Down 状态 ;
当已断电的接口模块 j 的至少一个对应下行接口恢复 Up 状态后, 逻辑芯片控制该 接口模块 j 上电并进入工作状态, 如果此时, 接口模块 1 也已断电, 则同时控制该接口模块 1 上电并进入工作状态。
此外, 逻辑芯片还可对 CPU 模块及风扇模块实施节电措施, 即, 在数通设备的所有 下行接口均持续 Down 状态后, 控制 CPU 模块和风扇模块进入节电状态 ; 并进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入节电状态的 CPU 模块和风扇模块进入工作 状态。
实际应用中, CPU 模块及风扇模块的节电状态也可以为 : 休眠模式的单级节电状 态, 或断电的单级节电状态, 或先进入休眠模式、 后断电的两级节电状态。
那么, 如果针对下行接口采取先进入休眠模式后断电的两级节电状态、 针对上行 接口采取直接断电的单级节电状态, 则还可以在所有对应接口均为下行接口的接口模块 2 ~ N 均进入节电状态后控制 CPU 模块进入休眠模式, 例如向 CPU 模块中的 CPU 芯片产生可 使 CPU 模块进入休眠模式的休眠控制信号, 并同时控制风扇模块断电, 例如向风扇模块与 电源模块之间的开关产生电源控制信号、 以使该开关断开 ; 以及, 在上行接口所对应的接口 模块 1 断电后控制 CPU 模块断电, 例如向 CPU 模块与电源模块之间的开关产生电源控制信 号、 以使该开关断开。而当任意下行接口从 Down 状态恢复为 Up 状态后, 则对于已进入休眠 模式的 CPU 模块, 需要控制其进入工作状态, 例如向已进入休眠模式的 CPU 模块中的 CPU 芯 片产生可触发 CPU 模块进入工作状态的 CPU 恢复信号, 而对于已断电的 CPU 模块, 需要控制 其上电并进入工作状态, 例如向 CPU 模块与电源模块之间的开关产生电源控制信号、 以使 该开关闭合, 上电后的 CPU 模块可直接进入工作状态。
较佳地, 逻辑芯片可以在需要控制 CPU 模块断电时, 先向 CPU 模块中的 CPU 芯片发 送断电请求, 待 CPU 芯片完成对数通设备当前配置的保存、 并回复允许断电的应答后, 逻辑 芯片再向 CPU 模块与电源模块之间的开关产生使该开关断开的电源控制信号 ; 相应地, 在
CPU 模块重新上电后, CPU 芯片即可对其保存的配置进行恢复 ( 本领域技术人员能够想到各 种保存并恢复配置的实现方式 ), 从而能够使数通设备的节电措施对用户透明。
进一步为了便于用户选择是否需要采取节电措施, 逻辑芯片可以依据 CPU 模块中 的 CPU 芯片所产生的使能信号触发。
图 3b 为本发明实施例中可实现设备级和网络级节电的数通设备结构示意图。如 图 3b 所示的数通设备结构与如图 3a 相同, 区别仅在于接口配置方式不同图 3a, 具体为 :
接口模块 1 对应的一个接口配置为上行接口, 接口模块 2 ~ N-1 所分别对应的所 有接口均配置为下行接口, 接口模块 N 所对应的两个接口中, 一个配置为上行接口、 另一个 配置为下行接口 ;
逻辑芯片可从 CPU 芯片获取可识别上行接口和下行接口的接口配置信息, 从而能 够获知每个接口是配置为下行接口还是上行接口 ( 具体获取方式可以由本领域技术人员 按照现有方式来实现 ), 并通过对接口模块 2 ~ N-1 所分别对应的 PHY 层模块 2 ~ N-1 的自 动检测, 获取接口模块 2 ~ N-1 所分别对应的各下行接口状态 ; 虽然接口模块 N 也对应有上 行接口, 但由于其还对应一个下行接口, 因而逻辑芯片还需要通过对接口模块 N 所对应的 PHY 层模块 N 的自动检测, 获取接口模块 N 所对应的下行接口状态, 但对于接口模块 N 所对 应的上行接口, 则可以无需检测。实际应用中, 具体检测的方式可以为 : 如果检测到 PHY 层 模块 2 ~ N 自动上报的对应下行接口的 Link 信号则获知对应下行接口处于 Up 状态, 如果 检测到 PHY 层模块 2 ~ N 自动上报的对应下行接口的 Link 中断信号则获知对应下行接口 处于 Down 状态。
此外, 逻辑芯片还依据获取的下行接口状态执行如下的节电策略 ( 以针对下行接 口采取先进入休眠模式后断电的两级节电状态、 针对上行接口采取直接断电的单级节电状 态为例 ) :
接口模块 2 ~ N-1 所分别对应的 PHY 层模块 2 ~ N-1、 即连接的接口全部为下行接 口的 PHY 层模块 2 ~ N-1, 在数通设备开机运行的时间内始终处于上电状态, 以便于对下行 接口状态的自动检测 ; 且, 由于接口模块 N 也对应有需要自动检测的下行接口, 因而 PHY 层 模块 N 也在数通设备开机运行的时间内始终处于上电状态 ;
当任意接口模块 k(k 大于等于 2、 且小于等于 N-1) 的所有对应下行接口持续预定 时间 T1 的 Down 状态后, 控制该接口模块 k 进入休眠模式, 例如直接向接口模块 k 产生可被 接口模块 j 所识别的休眠控制信号 ; 但如果当接口模块 N 的所有对应下行接口也持续预定 时间 T1 的 Down 状态, 则由于该接口模块 N 还对应有需要保持 Up 状态的上行接口, 因而不 能控制接口模块 N 进入休眠模式 ;
当进入休眠模式的接口模块 k 的所有对应下行接口继续持续预定时间 T2 的 Down 状态后, 控制该接口模块 k 断电, 例如向接口模块 k 与电源模块之间的开关产生电源控制信 号、 以使该开关断开 ; 由于接口模块 N 不会进入休眠模式, 因而此处的断电策略不适用接口 模块 N ;
当接口模块 2 ~ N-1 均断电并持续预定时间 T3 时, 即, 数通设备的所有下行接口 均持续 Down 状态至少 T1+T2+T3 的时间后, 对应上行接口的接口模块 1 没有对应的下行接 口、 且如果上行接口对应的接口模块 N 所对应的下行接口均持续 Down 状态至少 T5(T5 可以 等于 T1+T2+T3、 也可以不同于 T1+T2+T3) 的时间, 即、 对应上行接口的各接口模块没有对应的下行接口或对应的下行接口均持续 Down 状态, 则控制接口模块 1 和接口模块 N 断电、 使 接口模块 1 和接口模块 N 所对应的上行接口被强置为 Down 状态, 例如向接口模块 1 和接口 模块 N 与电源模块之间的开关产生电源控制信号、 以使该开关断开 ; 进一步可选地, 由于无 需对 PHY 层模块 1 所连接的上行接口自动检测, 因而也可控制 PHY 层模块 1 断电 ( 图 3b 中 未示出 PHY 层模块 1 与电源模块之间的开关 ), 但仍需保持 PHY 层模块 N 的上电状态 ;
当进入休眠模式的接口模块 k 的至少一个对应下行接口恢复 Up 状态后, 控制该下 行的接口模块 k 恢复工作状态, 例如向 CPU 芯片产生模块恢复信号、 令 CPU 对接口模块 k 进 行初始化后进入工作状态 ;
当已断电的接口模块 k 的至少一个对应下行接口、 或已断电的接口模块 N 的对应 下行接口恢复 Up 状态后, 控制该下行的接口模块 k、 或接口模块 N 上电并进入工作状态, 例 如向接口模块 k 或接口模块 N 与电源模块之间的开关产生电源控制信号、 以使该开关闭合, 如果此时, 接口模块 1 也已断电, 则同时控制该接口模块 1 上电并进入工作状态, 例如向接 口模块 1 与电源模块之间的开关产生电源控制信号、 以使该开关闭合。
需要说明的是, 与如图 3a 所示的接口配置方式同理, 对于如图 3b 所示接口配置方 式, 上述针对下行接口的两级节电状态也仅仅是一种较佳的节电措施, 而对于仅进入休眠 模式、 或直接断电的节电措施, 也同样能够产生优于现有技术的节电效果。
例如, 如果针对下行接口和上行接口均采取仅休眠的单级节电状态, 则:
当任意接口模块 k 的所有对应下行接口持续预定时间 T1’ 的 Down 状态后, 逻辑芯 片控制该接口模块 k 进入休眠模式 ;
当所有接口模块 2 ~ N-1 持续休眠模式预定时间 T2’ 后, 即, 数通设备中接口模块 2 ~ N-1 对应的所有下行接口均持续 Down 状态至少 T1’ +T2’ 的时间、 接口模块 N 对应的下 行接口持续 Down 状态至少 T5’ (T5’ 可以等于 T1’ +T2’ 、 也可以不同于 T1’ +T2’ ) 的时间 后, 逻辑芯片控制接口模块 1 和接口模块 N 进入休眠模式、 使接口模块 1 和接口模块 N 所对 应的上行接口被强置为 Down 状态 ;
当已进入休眠模式的接口模块 k 的至少一个对应下行接口恢复 Up 状态、 或已进入 休眠模式的接口模块 N 的对应下行接口恢复 Up 状态后, 逻辑芯片控制该接口模块 k 恢复工 作状态, 如果此时, 接口模块 1 和接口模块 N 也已进入休眠模式, 则同时控制该接口模块 1 和接口模块 N 恢复工作状态。
再例如, 如果针对下行接口和上行接口均采取直接断电的单级节电状态, 则:
当任意接口模块 k 的所有对应下行接口持续预定时间 T1” 的 Down 状态后, 逻辑芯 片控制该接口模块 k 断电 ;
当所有接口模块 2 ~ N-1 持续休眠模式预定时间 T2” 后, 即, 数通设备中接口模块 2 ~ N-1 对应的所有下行接口均持续 Down 状态至少 T1” +T2” 的时间、 接口模块 N 对应的下 行接口持续 Down 状态至少 T5” (T5” 可以等于 T1” +T2” 、 也可以不同于 T1” +T2” ) 的时间 后, 逻辑芯片控制接口模块 1 和接口模块 N 断电、 使接口模块 1 和接口模块 N 所对应的上行 接口被强置为 Down 状态 ;
当已断电的接口模块 k 的至少一个对应下行接口恢复 Up 状态、 或已断电的接口模 块 N 的对应下行接口恢复 Up 状态后, 逻辑芯片控制该接口模块 k 上电、 并进入工作状态, 如 果此时, 接口模块 1 和接口模块 N 也已断电, 则同时控制该接口模块 1 和接口模块 N 上电、并进入工作状态。
此外, 图 3b 中的逻辑芯片也可对 CPU 模块及风扇模块实施节电措施, 即, 在数通设 备的所有下行接口均持续 Down 状态后, 控制 CPU 模块和风扇模块进入节电状态 ; 并进一步 在任意 Down 状态的下行接口恢复 Up 状态后, 控制已进入节电状态的 CPU 模块和风扇模块 进入工作状态。
实际应用中, CPU 模块及风扇模块的节电状态也可以为 : 休眠模式的单级节电状 态, 或断电的单级节电状态, 或先进入休眠模式、 后断电的两级节电状态。
那么, 如果针对下行接口采取先进入休眠模式后断电的两级节电状态、 针对上行 接口采取直接断电的单级节电状态, 则还可以在所有对应接口均为下行接口的接口模块 2 ~ N-1 均进入节电状态后控制 CPU 模块进入休眠模式, 例如向 CPU 模块中的 CPU 芯片产生 可使 CPU 模块进入休眠模式的休眠控制信号, 并同时控制风扇模块断电, 例如向风扇模块 与电源模块之间的开关产生电源控制信号、 以使该开关断开 ; 以及, 在上行接口所对应的接 口模块 1 和接口模块 N 断电后控制 CPU 模块断电, 例如向 CPU 模块与电源模块之间的开关 产生电源控制信号、 以使该开关断开。而当任意下行接口从 Down 状态恢复为 Up 状态后, 则 对于已进入休眠模式的 CPU 模块, 需要控制其进入工作状态, 例如向已进入休眠模式的 CPU 模块中的 CPU 芯片产生可触发 CPU 模块进入工作状态的 CPU 恢复信号, 而对于已断电的 CPU 模块, 需要控制其上电并进入工作状态, 例如向 CPU 模块与电源模块之间的开关产生电源 控制信号、 以使该开关闭合, 上电后的 CPU 模块可直接进入工作状态。
较佳地, 与如图 3a 同理, 逻辑芯片可以在需要控制 CPU 模块断电时, 先向 CPU 模块 中的 CPU 芯片发送断电请求, 待 CPU 芯片完成对数通设备当前配置的保存、 并回复允许断电 的应答后, 逻辑芯片再向 CPU 模块与电源模块之间的开关产生使该开关断开的电源控制信 号, 以使得 CPU 模块重新上电后, CPU 芯片即可对其保存的配置进行恢复, 从而能够使数通 设备的节电措施对用户透明。
针对如图 3a 和如图 3b 的不同接口配置方式, 除了上述的节电策略之外, 本实施例 还可以采用其他的节电策略, 本文就不再一一列举。
图 4 为本发明实施例中如图 3a 和图 3b 所示的作为节电控制装置的逻辑芯片内部 结构示意图。如图 4 所示, 逻辑芯片可以包括 :
监控控制单元, 其通过对数通设备中各 PHY 层模块 2 ~ N 的自动检测获取数通设 备中各下行接口的状态、 并维护各接口模块 1 ~ N 的状态 ;
节电控制单元, 当数通设备中任意接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 所对应的 所有接口均为下行接口并持续 Down 状态后, 控制该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 进入节电状态 ; 当数通设备的所有下行接口 ( 对图 3a 和图 3b 均为接口模块 2 ~ N 所对应 的所有下行接口 ) 均持续 Down 状态后, 控制数通设备中上行接口所对应的接口模块 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 进入节电状态、 使上行接口被强置为 Down 状态 ; 当数通设备中任 意 Down 状态的下行接口恢复 Up 状态后, 控制数通设备中该下行接口所对应的已进入节电 状态的接口模块 ( 对图 3a 为 j、 对图 3b 为 k 或 N) 进入工作状态, 并控制数通设备中上行接 口所对应的已进入节电状态的接口模块 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 进入工作状态。
如果以针对下行接口采取先进入休眠模式后断电的两级节电状态、 针对上行接口 采取直接断电的单级节电状态为例, 则节电控制单元可按照如下节电策略控制数通设备 :在任意接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 所对应的所有接口均为下行接口并 持续 Down 状态后, 先控制该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 进入休眠模式, 待进入 休眠模式的该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 所对应的所有下行接口仍均持续 Down 状态后再控制该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 断电 ; 在数通设备的所有下行接口 ( 对图 3a 和图 3b 均为接口模块 2 ~ N 所对应的所有下行接口 ) 均持续 Down 状态、 且所有 对应接口均为下行接口的接口模块 ( 对图 3a 为 2 ~ N、 对图 3b 为 2 ~ N-1) 均持续断电后, 控制上行接口所对应的接口模块断电 ( 对图 3a 为 1、 对图 3b 为 1 和 N)、 使上行接口被强置 为 Down 状态 ; 当数通设备中任意 Down 状态的下行接口恢复 Up 状态后, 控制该下行接口所 对应的已进入休眠模式的接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 或已断电的接口模块 ( 对 图 3a 为 j、 对图 3b 为 k 或 N) 进入工作状态, 并控制上行接口所对应的已断电的接口模块 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 进入工作状态。
实际应用中, 监控控制单元可以依据前文记载的 Link 信号、 Link 中断信号实现对 下行接口状态的自动检测 ; 节电控制单元可以参照前文中记载的逻辑芯片所产生的休眠控 制信号、 电源控制信号、 以及模块恢复信号, 实现对休眠模式、 断电的控制。
如果针对下行接口和上行接口均采取仅休眠模式的单级节电状态、 或采取直接断 电的单级节电状态, 则仍可由节电控制单元执行相应的节电策略 ( 参见前文中所记载的逻 辑芯片所执行的节电策略 )。
参见图 4 并结合图 5, 本实施例中作为节电控制装置的逻辑芯片中, 还可以进一步 包括接口模块工作状态指示寄存器, 该接口模块工作指示寄存器中记录 ( 由监控控制单元 维护 ) 有各接口模块 1 ~ N 的状态信息, 每个接口模块 i 的状态信息又分别包括该接口模 块 i 每个对应接口的配置类型 ( 上行接口或下行接口 )、 每个对应接口的状态 (Up 或 Down)、 以及该接口模块 i 的自身状态 ( 工作状态或休眠模式或断电 ), 并可供数通设备 CPU 模块中 的 CPU 芯片通过数据总线获取。
仍参见图 4, 本实施例中作为节电控制装置的逻辑芯片中, 还可以进一步包括计时 单元。这种情况下 :
监控控制单元进一步在检测到任意下行接口变为 Down 状态时, 将内置寄存器中 该下行接口的状态记录为 Down ;
监控控制单元进一步在任意接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 的所有对应接 口均为下行接口、 且内置寄存器中所记录的该接口模块的所有对应下行接口均为 Down 状 态时, 利用计时单元对该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 所有下行接口的 Down 状态 计时 ;
监控控制单元进一步在对任意接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 所有下行接 口的 Down 状态的计时到达时, 从对应的 PHY 层模块 ( 对图 3a 为 j、 对图 3b 为 k) 主动获取 该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 的所有对应下行接口的状态, 如果所获取的所有 对应下行接口的状态均为 Down 状态, 则监控控制单元在节电控制单元控制该接口模块 ( 对 图 3a 为 j、 对图 3b 为 k) 进入休眠模式的同时, 将其内置寄存器中该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 的状态记录为休眠模式、 并利用计时单元对该接口模块 ( 对图 3a 为 j、 对 图 3b 为 k) 的休眠模式计时 ; 否则, 将内置寄存器中对应的已变化为 Up 的下行接口状态记 录为 Up 状态 ;监控控制单元进一步在对任意接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 的休眠模式 计时到达时, 从对应的 PHY 层模块 ( 对图 3a 为 j、 对图 3b 为 k) 主动获取该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 所对应的所有下行接口的状态, 如果所获取的所有下行接口的状态仍 为 Down 状态, 则监控控制单元在节电控制单元控制该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 断电的同时, 将内置寄存器中该接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 的状态记录为断 电, 否则监控控制单元将内置寄存器中对应的已变化为 Up 的下行接口状态记录为 Up 状态、 并在节电控制单元控制该接口模块进入工作状态的同时将内置寄存器中该接口模块 ( 对 图 3a 为 j、 对图 3b 为 k) 的状态记录为工作状态 ;
监控控制单元进一步在任意接口模块 ( 对图 3a 为 j、 对图 3b 为 k) 断电后, 读取 内置寄存器中所有下行接口 ( 对图 3a 为和图 3b 均为接口模块 2 ~ N 所对应的所有下行接 口 ) 的状态、 以及所有接口模块 ( 对图 3a 为和图 3b 均为 1 ~ N) 的状态 ; 监控控制单元在 所读取的所有下行接口均为 Down 状态、 即对应上行接口的各接口模块 ( 对图 3a 和图 3b 均 为 1) 没有对应的下行接口、 或对应上行接口的各接口模块 ( 对图 3b 均为 N) 所对应的下行 接口均为 Down 状态, 且所有接口均为下行接口的各接口模块 ( 对图 3a 为 2 ~ N、 对图 3b 为 2 ~ N-1) 的状态均为断电时, 利用计时单元对数通设备的所有下行接口的 Down 状态计时 ; 监控控制单元进一步在对数通设备的所有下行接口的 Down 状态计时到达时, 从 对应的 PHY 层模块 ( 对图 3a 为 2 ~ N、 对图 3b 为 2 ~ N-1) 主动获取数通设备的所有下行 接口的状态, 如果所获取的所有下行接口的状态仍为 Down 状态, 则监控控制单元在节电控 制单元控制上行接口所对应的接口模块 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 断电的同时, 将内 置寄存器中上行接口所对应的该接口模块 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 的状态记录为 断电, 否则将内置寄存器中变化为 Up 的对应的下行接口状态记录为 Up 状态、 并在节电控制 单元控制该下行接口所对应的接口模块 ( 对图 3a 为 j、 对图 3b 为 k 或 N) 进入工作状态的 同时, 将内置寄存器中该接口模块 ( 对图 3a 为 j、 对图 3b 为 k 或 N) 的状态记录为工作状 态;
监控控制单元进一步在有任意下行接口在上行接口所对应的接口模块 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 断电后变为 Up 状态时, 控制该下行接口所对应的接口模块 ( 对图 3a 为 j、 对图 3b 为 k 或 N)、 以及上行接口所对应的接口模块 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 进入工作状态的同时, 将前述寄存器中对应接口模块的状态记录为工作状态。
作为节电控制装置的逻辑芯片中, 还可以由节电控制单元在所有对应接口均为下 行接口的接口模块 ( 对图 3a 为 2 ~ N、 对图 3b 为 2 ~ N-1) 均持续断电后控制 CPU 模块进 入休眠状态、 并在上行接口所对应的接口模块断电 ( 对图 3a 为 1、 对图 3b 为 1 和 N) 的同时 或之后控制 CPU 模块断电 ; 以及, 进一步在任意 Down 状态的下行接口恢复 Up 状态后, 控制 已进入休眠模式或断电的 CPU 模块进入工作状态。
进一步地, 节电控制单元还可以在控制数通设备中的 CPU 模块进入休眠状态的同 时, 控制数通设备中可对 CPU 模块中的 CPU 芯片散热的风扇模块断电 ; 并进一步在控制已 进入休眠模式或断电的 CPU 模块进入工作状态的同时, 控制已断电的风扇模块进入工作状 态。
其中, 监控控制单元在上行接口所对应的接口模块断电后、 触发节电控制单元执 行所述控制 CPU 模块断电的操作之前, 可以先向 CPU 模块中的 CPU 芯片发送断电请求信号,
待 CPU 芯片完成对数通设备当前配置的保存并回应允许断电的应答后再触发节电控制单 元执行所述控制 CPU 模块断电的操作。
当然, 也可以针对 CPU 模块下行接口和上行接口均采取仅休眠模式的单级节电状 态、 或采取直接断电的单级节电状态, 则仍可由节电控制单元执行相应的节电策略 ( 参见 前文中所记载的逻辑芯片所执行的节电策略 )。
而为了便于用户选择是否采取节电措施而设置的由 CPU 芯片产生的使能信号, 则 可以连接于监控控制单元, 由监控控制单元依据 CPU 模块中的 CPU 芯片所产生的使能信号 触发, 当监控控制单元未被触发时, 逻辑芯片中的其他单元也不会工作。
以上是对本实施例中可实现设备级和网络级节电的数通设备、 以及数通设备的节 电控制装置的详细说明。下面, 再对本实施例中数通设备的节电控制方法进行详细说明。
图 6 为本发明实施例中节电控制方法的示例性流程示意图。如图 6 所示, 本实施 例中的节电控制方法可以包括如下步骤 :
步骤 601, 通过对各 PHY 层模块的自动检测获取各下行接口的状态 ;
步骤 602, 当任意接口模块所对应的所有接口均为下行接口并持续 Down 状态后, 控制该接口模块进入节电状态 ;
步骤 603, 当数通设备的所有下行接口均持续 Down 状态后, 控制上行接口所对应 的接口模块进入节电状态、 使上行接口被强置为 Down 状态 ;
步骤 604, 当任意 Down 状态的下行接口恢复 Up 状态后, 控制该下行接口所对应的 已进入节电状态的接口模块进入工作状态, 并控制上行接口所对应的已进入节电状态的接 口模块进入工作状态。
至此, 上述流程结束。但需要说明的是, 在实现上述流程时, 上述流程中的各步骤 之间并不是简单的串行关系, 而是可以针对不同接口、 针对不同接口模块并串交错地执行。
而且, 在上述流程的步骤 603 中, 如果数通设备的所有下行接口均持续 Down 状态, 还可控制 CPU 模块和 / 或风扇模块进入节电状态 ; 并进一步在步骤 604 的同时或之后, 控制 已进入节电状态的 CPU 模块和 / 或风扇模块进入工作状态。
图 7a 和图 7b 为本发明实施例中节电控制方法的一较佳流程示意图。如图 7a 和 图 7b 所示, 以针对下行接口采取先进入休眠模式后断电的两级节电状态、 针对上行接口采 取直接断电的单级节电状态、 并包括对 CPU 模块和风扇模块的节电措施为例, 该节电控制 方法针对每一对应有下行接口的接口模块的具体实现流程包括如下步骤 :
步骤 700, 对该接口模块对应的 PHY 层模块的自动检测, 获取该接口模块各下行接 口的状态, 并在检测到任意下行接口的状态变化后执行步骤 701。
即, 本步骤中第一次检测到任意下行接口的状态变化时, 即触发了由步骤 701 开 始的流程。
步骤 701, 判断下行接口的变化为 Down 还是 Up, 如果为 Down 则执行步骤 702, 否则 执行步骤 720。
如果预先设置了记录各接口模块所对应的所有接口状态、 以及各接口模块的状态 的寄存器, 则在本步骤中, 每次检测到任意下行接口变为 Down 状态时, 可以将该寄存器中 对应下行接口的状态记录为 Down 状态 ; 每次检测到任意下行接口变为 Up 状态时, 可以将该 寄存器中对应下行接口的状态记录为 Up 状态。步骤 702, 判断该接口模块的所有对应接口是否均为 Down, 即判断该接口模块的 所有对应接口是否均为下行接口、 且所有下行接口是否均为 Down, 如果是, 则针对该接口模 块所有下行接口的 Down 状态进行时长为 T1 的计时、 并在计时到达后执行步骤 703( 由于未 返回步骤 700、 因而相当于暂停对该接口模块所对应的 PHY 层模块的自动检测 ), 否则返回 步骤 700( 即相当于继续对该接口模块所对应的 PHY 层模块的自动检测 )。
本步骤中, 可以依据寄存器中所记录的该接口模块的对应接口来判断该接口模块 的所有对应接口是否均为下行接口, 以及, 依据寄存器中记录的该接口模块的所有对应下 行接口的状态来判断该接口模块的所有对应下行接口是否均为 Down。
而且, 经过本步骤, 如果本流程所针对的接口模块还对应有上行接口, 则不可能执 行后续步骤 703 ~步骤 715 的处理过程进入休眠状态和断电, 而是等待针对其他的所有对 应接口均为下行接口的接口模块所执行的流程来控制本流程所针对的接口模块断电。
步骤 703, 从该接口模块对应的 PHY 层模块主动获取该接口模块的所有对应下行 接口的状态, 并判断所获取的该接口模块的所有对应下行接口的状态是否均为 Down 状态, 如果是则表示该接口模块的所有对应下行接口持续 Down 状态、 并执行步骤 704, 否则返回 步骤 700( 即相当于恢复对该接口模块所对应的 PHY 层模块的自动检测 )。
本步骤中, 还可将内置寄存器中对应的变化为 Up 的下行接口状态记录为 Up 状态。
步骤 704, 控制该接口模块进入休眠模式, 并针对该接口模块的休眠模式进行时长 为 T2 的计时、 然后在计时到达后执行步骤 705。
本步骤中, 还可将内置寄存器中该接口模块的状态记录为休眠模式。
步骤 705, 从该接口模块对应的 PHY 层模块主动获取该接口模块的所有对应下行 接口的状态, 并判断所获取的该接口模块的所有对应下行接口的状态是否均为 Down 状态, 如果是则表示该接口模块的所有对应下行接口仍持续 Down 状态、 并执行步骤 706, 否则直 接跳转至步骤 723 予以处理后再返回步骤 700, 或者, 返回至步骤 700、 并经步骤 701 判断后 执行步骤 723 予以处理。
本步骤中, 还可将内置寄存器中对应的变化为 Up 的下行接口状态记录为 Up 状态、 并将内置寄存器中该接口模块的状态记录为工作状态。
步骤 706, 控制该接口模块断电, 然后执行步骤 707。
本步骤中, 还可将内置寄存器中该接口模块的状态记录为断电。
步骤 707, 判断数通设备的所有下行接口的状态是否均为 Down 状态、 以及所有对 应接口均为下行接口的各接口模块的状态是否均为断电, 如果均是, 则表示本流程所针对 的所有对应接口均为下行接口的接口模块, 是最后一个断电的所有对应接口均为下行接口 的接口模块, 并针对数通设备的所有下行接口的 Down 状态进行时长为 T3 的计时, 然后在计 时到达后执行步骤 708, 否则返回步骤 700( 即相当于恢复对该接口模块所对应的 PHY 层模 块的自动检测 )。
本步骤中, 可以先读取寄存器中所记录的数通设备的所有下行接口的状态、 以及 所有其他接口模块的状态, 然后再依据所读取的内容进行判断。
步骤 708, 从对应的 PHY 层模块主动获取数通设备的所有下行接口的状态, 并判 断所获取的数通设备的所有对应下行接口的状态是否均为 Down 状态, 如果是则执行步骤 709, 否则返回步骤 700( 即相当于恢复对该接口模块所对应的 PHY 层模块的自动检测, 如果处于 Up 的下行接口不属于该接口模块则由针对其所属接口模块的流程予以处理、 而如果 处于 Up 的下行接口属于该接口模块则可经下文中记载的步骤 720 ~ 723 予以处理 )。
步骤 709, 控制 CPU 模块进入休眠状态, 然后对 CPU 模块的休眠状态进行时长为 T4 的计时, 并在计时到达后执行步骤 710。
步骤 710, 从对应的 PHY 层模块主动获取数通设备的所有下行接口的状态, 并判 断所获取的数通设备的所有对应下行接口的状态是否均为 Down 状态, 如果是则执行步骤 711, 否则由于此时的 CPU 模块已进入休眠状态, 因而需要跳转至步骤 721, 然后再从步骤 721 返回步骤 700( 即相当于恢复对该接口模块所对应的 PHY 层模块的自动检测, 但对于处 于 Up 的下行接口来说, 如果处于 Up 的该下行接口不属于该接口模块则由针对其所属接口 模块的流程予以处理、 而如果处于 Up 的该下行接口属于该接口模块则可经下文中记载的 步骤 720 ~ 723 予以处理 )。
步骤 711, 控制数通设备中所有上行接口对应的接口模块、 以及 CPU 模块和风扇模 块断电, 然后返回步骤 700( 即相当于恢复对该接口模块所对应的 PHY 层模块的自动检测, 此后, 在有任意下行接口在上行接口所对应的接口模块断电后变为 Up 状态时, 即可通过下 文中记载的步骤 720 ~ 723 予以处理 )。
本步骤可以先控制数通设备中所有上行接口对应的接口模块断电, 然后再控制 CPU 模块和风扇模块断电 ; 且可选地, 在上行接口所对应的接口模块断电后、 执行所述控制 CPU 模块断电的操作之前, 向 CPU 模块中的 CPU 芯片发送断电请求信号, 待 CPU 芯片完成对 数通设备当前配置的保存并回应允许断电的应答后再执行所述控制 CPU 模块断电的操作。
本步骤中, 还可将内置寄存器中对应上行接口的各接口模块的状态记录为断电。
步骤 720, 判断 CPU 模块是否处于非工作状态, 如果 CPU 模块进入休眠状态则执行 步骤 721, 如果 CPU 模块已断电 ( 此时的上行接口对应的接口模块也已断电 ) 则执行步骤 722, 否则执行步骤 723。
步骤 721, 唤醒 CPU 模块和风扇模块、 使 CPU 模块和风扇模块进入工作状态, 然后执 行步骤 723。
步骤 722, 控制 CPU 模块和风扇模块、 以及上行接口所对应的接口模块上电并进入 工作状态, 并执行步骤 723。
本步骤中, 可以将内置寄存器中上行接口对应的接口模块的状态记录为工作状 态。
步骤 723, 控制 CPU 模块恢复本流程所针对的接口模块的工作状态, 然后返回步骤 700( 即相当于继续对该接口模块所对应的 PHY 层模块的自动检测 )。
本步骤中, 可以将该接口模块的状态记录为工作状态。
至此, 针对一个接口模块的流程结束。
上述流程中包含有对 CPU 模块和风扇模块的节电控制, 如果不考虑对 CPU 模块和 风扇模块的节电控制, 则:
在步骤 708 之后可以跳过步骤 709 直接执行步骤 711 ;
在步骤 711 只需控制数通设备中所有上行接口对应的接口模块断电 ;
在步骤 720 中无需判断 CPU 状态、 而仅判断上行接口所对应的接口模块是否已断 电, 并在判断结果为 “是” 时执行步骤 722、 且执行步骤 722 时只需控制上行接口所对应的接口模块上电并进入工作状态, 而在判断结果为 “否” 时可执行步骤 733。
另需要说明的是, 上述流程仅仅是基于本实施例中基本的节电策略下的一种可选 的具体实现方式, 实际应用中, 本领域技术人员可基于上述流程进行任意调整, 本文中对于 可能的调整后的其他具体实现方式的流程不再一一予以赘述。
基于本实施例中的数通设备及其节电控制装置和方法, 除了能够提高数通设备的 节电效果之外, 还能够实现网络级的节电, 下面举一实例对网络级的节电予以说明。
参见图 8 :
交换机 1 的接口 0 ~ 2 配置为下行接口、 并分别连接 PC 机, 接口 3 配置为上行接 口连接路由器 ;
交换机 2 的接口 0 ~ 2 配置为下行接口、 并分别连接 PC 机, 接口 3 配置为上行接 口连接路由器 ;
路由器的接口 0 配置为下行接口、 并连接交换机 1 配置为上行接口的接口 3, 路由 器的接口 1 和 2 配置为下行接口、 并分别连接 PC 机, 路由器的接口 3 配置为下行接口、 并连 接交换机 2 配置为上行接口的接口 3, 路由器的接口 4 和 5 配置为上行接口并与上级设备 ( 图 8 中未示出 ) 相连。
基于上述配置方式 :
当交换机 1 配置为下行接口的接口 0 ~ 2、 以及交换机 2 配置为下行接口的接口 0 ~ 2 均持续 Down 状态后, 交换机 1 和交换机 2 中对应接口 0 ~ 2 的接口模块均会进入例 如断电等节电状态, 且交换机 1 和交换机 2 中对应配置为上行接口的接口 3 的接口模块也 会进入例如断电等节电状态、 使得交换机 1 和交换机 2 中配置为上行接口的接口 3 被强置 为 Down 状态, 从而使得路由器配置为下行接口的接口 0 和 3 也变为 Down 状态, 进而使得路 由器中对应接口 0 和 3 的接口模块可以进入例如断电等节电状态 ;
尔后, 当路由器配置为下行接口的接口 1 和 2 持续 Down 状态后, 路由器中对应接 口 1 和 2 接口模块也可以进入例如断电等节电状态, 从而使得路由器中配置为上行接口的 接口 4 和 5 所对应的接口模块也进入例如断电等节电状态, 进而使得上级设备 ( 图 8 中未 示出 ) 的相应下行接口变为 Down 状态 ;
如此向上级设备的逐级节电, 即可实现网络级节电。
以上所述仅为本发明的较佳实施例而已, 并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内, 所作的任何修改、 等同替换以及改进等, 均应包含在本发明的保 护范围之内。