KR20080035986A - 차량용 제어 장치의 슬립 상태를 제어하는 방법, 제조물품, 제어 장치 및 마이크로컴퓨터 - Google Patents

차량용 제어 장치의 슬립 상태를 제어하는 방법, 제조물품, 제어 장치 및 마이크로컴퓨터 Download PDF

Info

Publication number
KR20080035986A
KR20080035986A KR1020070105565A KR20070105565A KR20080035986A KR 20080035986 A KR20080035986 A KR 20080035986A KR 1020070105565 A KR1020070105565 A KR 1020070105565A KR 20070105565 A KR20070105565 A KR 20070105565A KR 20080035986 A KR20080035986 A KR 20080035986A
Authority
KR
South Korea
Prior art keywords
application
sleep
microcomputer
task
ready state
Prior art date
Application number
KR1020070105565A
Other languages
English (en)
Inventor
고오이찌로오 요꼬야마
슈우이찌 닛따
신이찌 세노오
마사야 히로따
아끼히로 사사끼
Original Assignee
가부시키가이샤 덴소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시키가이샤 덴소 filed Critical 가부시키가이샤 덴소
Publication of KR20080035986A publication Critical patent/KR20080035986A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)

Abstract

태스크가 슬립 모드에 대해 준비되어 있을 경우, 마이크로컴퓨터는 낭비 전력을 없애기 위해 즉시 슬립 모드로 이행된다. 다중의 애플리케이션 태스크가 실행된다. 각각의 애플리케이션 태스크는 슬립 준비 상태로의 진입에 관한 통지를 제공한다. 임의의 애플리케이션 태스크가 통지를 제공하는 경우, 상태 관리 섹션 프로그램은 애플리케이션 태스크가 슬립 준비 상태에 있다는 것을 나타내는 플래그를 설정한다. 상태 관리 섹션은 모든 애플리케이션 태스크가 슬립 준비 상태에 있는지 여부를 판단하기 위해 모든 애플리케이션 태스크의 플래그를 체크하고, 그 결과로 마이크로컴퓨터를 슬립 모드로 이행한다.
마이크로컴퓨터, 애플리케이션 태스크, 슬립 모드, 슬립 준비 상태, 플래그, 상태 관리 섹션

Description

차량용 제어 장치의 슬립 상태를 제어하는 방법, 제조 물품, 제어 장치 및 마이크로컴퓨터{METHOD OF CONTROLLING A SLEEP STATE IN CONTROLLER ASSOCIATED WITH A VEHICLE, ARTICLE OF MANUFACTURE, CONTROLLER, AND MICROCOMPUTER}
본 발명은 마이크로컴퓨터의 작동에 관한 것이다. 더 상세하게는, 본 발명은 마이크로컴퓨터를 슬립 모드(sleep mode)로 이행시키는 것에 관한 것이다.
종래에, 차량용 전자 제어 장치에 사용되는 마이크로컴퓨터는 대상물을 제어하는 다중 애플리케이션 태스크를 실행하기 위해서 운영 체제(OS)로부터 공급된 멀티태스킹 기능을 사용한다.
처리가 필요하지 않은 경우, 그러한 마이크로컴퓨터는 통상의 작동시보다 적은 전력을 소모하는 슬립 모드를 가능하게 한다(예를 들어, 일본 특허 출원 공개 제2005-182223A호 참조). 예를 들어, 슬립 모드는 CPU 클록 주파수 또는 전원 전압을 감소시키거나 CPU로의 전력 또는 클록 공급을 정지시킨다.
도7을 참조하여, 마이크로컴퓨터를 슬립 모드로 이행시키는 기술에 관한 예가 이후에 기술된다. 편의상, 본 명세서에 있어서 예를 들어 태스크가 액션을 수행한다는 것은 본원에 기술되는 바와 같이, 예를 들어 컴퓨터 또는 제어 장치와 같은 하드웨어 장치에서 작동하거나 실행하는 컴퓨터 프로그램의 사용을 나타내는 것이다. 당업자에 의해 이해되는 바와 같이, 그러한 표현의 사용은 컴퓨터가, 예를 들어 저장 장치, 데이터 전송 채널, 통신 채널등과 같은 컴퓨터 판독 가능 매체로부터 명령을 판독하고 프로그램 기능, 태스크, 모듈등의 기능 수단 또는 내용이라는 용어로 본원에서 기술될 수 있는 작동 내용을 실현하기 위해 명령 또는 프로그램을 실행하는 것을 나타낼 수 있다.
애플리케이션 태스크(1, 2)에 대해 도7의 일예에서 언급된다. 또한, 본 예는 애플리케이션 태스크(1, 2)를 주기적으로 웨이크업(wake up)하는 시스템 태스크에 대해 언급한다. 시스템 태스크는 1ms 마다 웨이크업하고, 애플리케이션 태스크(1)를 웨이크업하도록 요구한다. 시스템 태스크는, 시스템 태스크가 2번 웨이크업할 때마다 애플리케이션 태스크(2)가 1번 웨이크업하도록 요구한다. 따라서, 애플리케이션 태스크(1)는 1ms 마다 웨이크업한다. 애플리케이션 태스크(2)는 2ms 마다 웨이크업한다. 예를 들어, 태스크는 "시스템 태스크> 애플리케이션 태스크(1)> 애플리케이션 태스크(2)" 순서로 우선된다.
각각의 애플리케이션 태스크(1, 2)는 임의의 실행이 필요한지 여부를 판단하 고 어떤 실행도 필요하지 않다고 판단되는 경우 슬립 준비 상태로 들어간다. 슬립 준비 상태로 들어갔다고 판단되는 경우, 애플리케이션 태스크는 태스크에 대해 제공된 슬립 플래그를 설정하는 처리를 수행한다. 시스템 태스크는 모든 애플리케이션 태스크의 슬립 플래그 설정을 체크하도록 웨이크업한다. 모든 슬립 플래그가 설정되면, 예를 들어 애플리케이션 태스크를 웨이크업하는 것을 요구하지 않고 마이크로컴퓨터를 슬립 모드로 이행시키는 절차를 수행한다.
도7의 예에 따르면, 시스템 태스크는 시간(t3)에서 애플리케이션 태스크(1)가 슬립 준비 상태로 된 것을 판단하고, 시간(t4)에서 애플리케이션 태스크(2)가 슬립 준비 상태로 된 것을 판단한다. 시스템 태스크가 시간(t5)에서 웨이크업되는 경우에만, 마이크로컴퓨터를 슬립 모드로 이행시킬 수 있다. 도7에 도시된 바와 같이, 시스템 태스크는, 예를 들어 시간(t1, t2, t5)에 대응하여 1ms 간격으로 웨이크업한다. 시간(t1)에서, 시스템 태스크가 웨이크업하고 애플리케이션 태스크(1, 2)를 웨이크하도록 요구한다. 애플리케이션 태스크(1)는 웨이크되고 임의의 필요한 처리를 수행한다.
애플리케이션 태스크(2)가 시스템 태스크 및 애플리케이션 태스크(1) 보다 우선 순위가 낮기 때문에, 애플리케이션 태스크(2)를 실행하는 기간은 태스크(1)의 실행의 완료와 시스템 태스크가 t2에서 웨이크되는 기간 사이의 기간이다. t3에서, 애플리케이션(1)은 슬립 준비 상태로 되고, t4에서, 애플리케이션(2)은 슬립 준비 상태로 된다. 그러나, 시스템 태스크가 여전히 슬립 상태이기 때문에, 시간(t5)까지 플래그를 체크하지 않고 체크 절차의 종료시에 마이크로컴퓨터를 슬 립 모드로 이행한다.
시스템 태스크가 슬립 모드로의 이행을 제어하도록 사용되는 상기 기술된 기술과 관련하여 알 수 있는 바와 같이, 마이크로컴퓨터는 모든 애플리케이션 태스크가 슬립 준비 상태에 있을 때에도 시스템 태스크가 웨이크업할 때까지 슬립모드로 이행될 수 없다. 따라서, 도7에 도시된 바와 같이, t4와 t5의 단부 사이의 시간은 낭비된 작동을 나타내고, 따라서 전력이 낭비된다.
아이들 태스크가 마이크로컴퓨터를 슬립 모드로 이행하는 또 하나의 기술로서 사용될 수 있다. 그러나, 슬립 모드로의 이행을 제어하는 아이들 태스크의 사용은 또한 하기의 이유 때문에, 시스템 태스크의 사용과 관련된 것과 유사한 문제를 유발한다. 아이들 태스크는 가장 낮은 우선 순위로 지정되어, 다른 태스크가 실행되지 않을 때 실행된다. 시스템 태스크 대신에, 아이들 태스크가 모든 애플리케이션 태스크의 슬립 플래그를 체크한다. 모든 슬립 플래그가 설정된 경우, 아이들 태스크는 마이크로컴퓨터를 슬립 모드로 이행시키는 절차를 수행한다. 아이들 태스크를 실행하는 상태는 마이크로컴퓨터를 슬립 모드로 이행시키는 상태와 동일할 수도 있다. 그러한 경우에, 태스크가 실행을 요구할 때에도 아이들 태스크는 마이크로컴퓨터를 조건 없이 슬립 모드로 이행시킬 수도 있다(예를 들어, 일본 특허 제2005-182223A호 참조).
예를 들어, 애플리케이션 태스크(2)가 시간(t1) 전에 이미 슬립 준비 상태에 있다고 가정하자. 시스템 태스크가 시간(t1)에서 웨이크업할 경우, 그것은 애플리케이션 태스크(1, 2)가 웨이크업하도록 요구한다. 따라서, 애플리케이션 태스크(1)가 웨이크업하고 슬립 준비 상태에 있더라도, 애플리케이션 태스크(2)는 슬립 준비 상태로부터 웨이크업하도록 이미 요구된다. 애플리케이션 태스크(1)가 종료하면, 그 후 애플리케이션 태스크(2)가 실행된다. 애플리케이션 태스크(2)가 종료하면, 아이들 태스크는 마이크로컴퓨터를 슬립 모드로 이행한다.
그러나 본 예에서, 작동은 애플리케이션 태스크(1)가 종료한 시간과 애플리케이션 태스크(2)가 종료한 시간 사이에서 낭비되고 따라서 또다시 전력이 낭비된다. 따라서, 아이들 태스크가 슬립 모드로의 이행을 제어하도록 사용될 경우, 슬립 모드 외의 이행은 어렵고 아이들 태스크에 다른 기능을 설정하는 것은 더욱 어려울 수 있다.
앞서 언급한 것을 고려하여 본 발명이 만들어졌다. 따라서, 가능하다면 마이크로컴퓨터를 슬립 모드로 빠르게 이행시켜, 전력이 낭비되는 것을 방지하는 것이 본 발명의 목적이다.
상기 언급된 목적을 이루기 위해, 마이크로컴퓨터는 애플리케이션 태스크를 실행하고 슬립 이행 관리 수단을 포함한다.
슬립 이행 관리 수단은 애플리케이션 태스크가 비활성 가능한 상태인 슬립 준비 상태를 통지할 경우 개시한다. 상태 관리 섹션은 통지를 발행하는 애플리케이션 태스크에 부여된 슬립 준비 상태의 히스토리를 저장한다. 상태 관리 섹션은 모든 애플리케이션 태스크가 슬립 준비 상태인지 여부를 판단하도록 모든 애플리케이션 태스크에 대한 히스토리를 체크한다. 판단이 긍정적인 결과를 나타내는 경우, 상태 관리 섹션은 마이크로컴퓨터를 통상의 작동시보다 낮은 전력 소모를 요구하는 슬립 모드로 이행한다.
애플리케이션 태스크는 그 스스로가 슬립 준비 상태로 될 경우 통지를 발행하는 통지 처리를 수행한다.
마이크로컴퓨터는, 모든 애플리케이션 태스크가 슬립 준비 상태로 되고 마이크로컴퓨터가 슬립 모드에 대해 준비된 경우 즉시 슬립 모드로 될 수 있다. 종래 기술에서의 전력 낭비 문제를 해결하는 것이 가능하다.
슬립 이행 관리 수단은, 예를 들어 통지를 발행하는 애플리케이션 태스크가 종료한 때에 모든 애플리케이션 태스크가 슬립 준비 상태인지 여부를 판단하기 때문에, 통지 처리는 애플리케이션 태스크의 종료 시에 수행되는 것이 바람직하다. 따라서, 애플리케이션 태스크의 실행동안 슬립 모드가 발생하는 것을 안정적으로 방지하는 것이 가능하다.
예시적인 방법이 더 제공될 수 있음을 알 수 있는데, 그것은 예를 들어 컴퓨터 프로그램의 실행을 통해 컴퓨터로 실현될 수 있다. 컴퓨터 판독 가능 매체를 포함하는 제조 물품으로부터 판독된 명령으로서 구체화된 예시적인 컴퓨터 프로그램은 컴퓨터가 슬립 이행 관리 수단으로서의 예시적인 방법 또는 기능과 관련된 절차를 수행할 수 있게 하고, 추가적인 하드웨어를 사용하지 않고 마이크로컴퓨터 내에서 구현될 수 있다.
예시적인 마이크로컴퓨터는 특히 전력 소모를 감소시키도록 요구되는 차량용 전자 제어 장치를 포함하는 다양한 실시예에 적용 가능하다. 또한, 마이크로컴퓨 터는 차량용 전자 제어 장치가 비활성 가능한 경우 전력을 더욱 절약할 수 있다.
본 발명에 따르면, 마이크로컴퓨터를 슬립 모드로 빠르게 이행시켜 전력 낭비가 방지되는 것을 가능하게 하는 차량용 전자 제어 장치를 제공할 수 있게 된다.
본 발명의 상기 및 다른 목적, 특성 및 장점은 첨부 도면을 참조하여 기술된 이하의 상세한 설명으로부터 더 명확해질 것이다.
이하의 상세한 설명은 본 발명의 하나 이상의 예시적인 실시예에 따른 차량용 전자 제어 장치에 대해 제공된다. 기술된 실시예에 따른 전자 제어 장치는 파워윈도 및 도어 로크와 같은 차량 본체 유닛과 관련된 기능을 제어한다. 당업자에 의해 이해될 수 있는 바와 같이, 이후의 상세한 설명에서, 약칭인 "ECU"는 본원에서 전자 제어 장치, 전자 제어 유닛, 엔진 제어 유닛, 엔진 관리 유닛등으로 언급될 수 있다.
도1에 도시된 바와 같이, 본 실시예에 따른 ECU(11)는, 마이크로컴퓨터(13)와, 마이크로컴퓨터(13)가 회로로부터 공급된 스위치 신호 또는 센서 신호를 수용하는 것을 가능하게 하는 입력 회로(15)와, 마이크로컴퓨터(13)로부터의 신호에 기초하여 파워윈도 모터 및 도어 로크 모터 등과 같은 차량 본체 조립체 또는 다른 조립체와 관련된 다양한 액츄에이터로 구동 신호를 출력하는 출력 회로(17)와, 마이크로컴퓨터(13)가 통신선(18)을 통해 다른 하나의 기판형 ECU와 통신하는 것을 가능하게 하는 통신 회로(19)를 포함한다.
마이크로컴퓨터(13)는, 예를 들어 CPU(21), ROM(23), RAM(25) 및 I/O 포트(27)와 같은 공지된 요소를 포함한다. ROM(23)은 CPU(21)에 의해 실행되는 명령을 갖는 소프트웨어 프로그램과 같은 프로그램을 저장한다. RAM(25)은 데이터 또는 플래그와 같은 프로그램 실행의 결과인 작동을 일시적으로 저장한다. 또한, 명령은 플로피 디스크, 광학 디스크, USB 메모리 소자, 네트워크 인터페이스등을 포함하지만 이에 한정되지 않는 외부 기억 장치와 같은 다른 컴퓨터 판독 가능 매체에 기억된다고 이해될 것이다.
마이크로컴퓨터(13)는 OS로부터 제공된 멀티태스킹 특성을 사용하여, 제어될 차량 조립체와 상호 작용하는 다중 애플리케이션 태스크를 실행한다. ROM(25)은 OS 및 애플리케이션 태스크뿐만 아니라 시스템 태스크(ST) 및 상태 관리 섹션(SM)을 포함하는 소프트웨어를 저장한다.
도2에 도시된 바와 같이, 애플리케이션 태스크(AP1 내지 APx)는 주기적으로 실행되는 애플리케이션 또는 애플리케이션과 관련된 태스크, 또는 애플리케이션 태스크를 포함하는데, 여기서 x는 2 이상의 정수이다. 통상의 실행 예에서, 시스템 태스크(ST)는 OS가 그 실행 간격에 대응하는 시간에 애플리케이션 태스크를 웨이크업하도록 요구한다. 시스템 태스크(ST)는 모든 주기적인 애플리케이션 태스크에 대한 실행 간격의 최소 공약수와 동일한 간격마다, 본 실시예에 따르면 1 ms 마다 웨이크업한다.
상태 관리 섹션(SM)은 모든 애플리케이션 태스크(AP1 내지 APx)가 비활성되는 것에 대해 준비되었는지 여부를 검출하고, 마이크로컴퓨터(13)를 슬립 모드로 이행하는 프로그램이다.
특정 스위치를 켜거나, 다른 하나의 ECU로부터 특정 신호를 수신하는 등과 같은 예정에 없는 일의 발생시, 일부 애플리케이션 태스크가 즉시 웨이크업한다는 것이 이해될 것이다.
도2에 도시된 바와 같이, 각각의 애플리케이션 태스크(AP1 내지 APx)는 이후에 애플리케이션 모듈로서 언급되는 하나 이상의 모듈을 포함한다. 예를 들어, 애플리케이션 태스크(AP1)은 y개의 애플리케이션 모듈(AP1-1 내지 AP1-y)을 포함하는데, 여기서 y는 1 이상의 정수이다. 애플리케이션 태스크(APx)는 z개의 애플리케이션 모듈(APx-1 내지 APx-z)을 포함하는데, 여기서 z는 1 이상의 정수이다. 애플리케이션 모듈은 예를 들어, 도어 로크 유닛, 트렁크 뚜껑 제어 유닛, 차실내 조명 유닛, 광 작동, 파워윈도등과 같은 유닛, 조립체등에 대한 제어 및 상호 작용의 다양한 레벨을 제공한다.
예를 들어 도3에 도시된 흐름도를 참조하여, 애플리케이션 태스크에 의해 실현되는 기능과 같은, 각각의 애플리케이션 태스크와 관련될 수 있는 처리에 대해 이후에 기술된다. 예시적인 처리가 하나의 애플리케이션 태스크(APn, 여기서 n은 1 내지 x)에 관해 기술되지만, 동일한 설명이 다른 애플리케이션 태스크에 적용될 수 있다.
흐름도를 참조하면, 예시적인 처리의 개시에서, 애플리케이션 태스크(APn)가 시작하고, S110에서, 예를 들어 애플리케이션 태스크(APn)에 포함된 각각의 애플리케이션 모듈과 관련된 처리를 실행한다.
S120에서 "예(yes)"와 같이, 모든 애플리케이션 모듈의 처리가 종료되는 경우, S130에서, 애플리케이션 태스크(APn)는 모든 애플리케이션 모듈이 각각 슬립 준비 상태로 되었는지 여부, 즉 비활성되도록 준비된 상태인지 여부를 판단한다. 하기에 또한 기술되는 바와 같이, 애플리케이션 모듈은 임의의 관련된 제어 작동을 끝마쳐 더 이상의 제어 작동이 필요하지 않을 경우 슬립 준비 상태로 진행할 것이다.
예를 들어, 애플리케이션 모듈이 파워윈도를 제어할 경우, 애플리케이션 모듈은 파워윈도에 대한 일련의 제어 작동을 실현하는 주어진 시간 간격 동안 한번 이상 실행된다. 일련의 제어가 완료되고 더 이상의 제어 요구가 발생하지 않으면, 예를 들어 다음 요구 또는 다음의 일련의 요구가 발생될 때까지 더 이상의 제어 작동이 요구되지 않는다고 고려될 수 있다. 제어 작동을 포함하는 더 이상의 요구 또는 더 이상의 일련의 요구가 발생되지 않는 때인, 그들이 종료하는 시간마다 일부 애플리케이션 모듈이 슬립 준비 상태로 되는 것임을 또한 알 수 있다.
예시적인 처리는 각각의 애플리케이션 모듈이 슬립 준비 상태인지 여부를 판단한다. 판단 결과에 기초해서, 처리는 애플리케이션 태스크(APn)가 슬립 준비 상태인지 여부를 판단한다(S140). 상세하게, 처리는 모든 애플리케이션 모듈이 슬립 준비 상태인지 여부를 판단한다. 모든 애플리케이션 모듈이 슬립 준비 상태로 된 경우, 처리는 애플리케이션 태스크(APn)가 슬립 준비 상태로 되었다고 판단한다.
애플리케이션 태스크(APn)가 슬립 준비 상태에 있지 않다고 판단되는 경우(S140 : 아니오), 애플리케이션 태스크(APn)는 종료한다.
애플리케이션 태스크(APn)가 슬립 준비 상태에 있다고 판단되는 경우(S140 : 예), S150에서, 상태 관리 섹션(SM)에 애플리케이션 태스크(APn)가 슬립 준비 상태에 있다는 것을 통지하는 통지 처리가 수행될 수 있다. 본 실시예에 따르면, 예시적인 처리 호출은, 통지를 수행하는 SleepOK(n)와 같은 슬립 준비 함수를 호출할 수 있다. 슬립 준비 함수에서 괄호된 n은 함수의 인수 또는 파라미터이고, 예를 들어 함수를 호출하는 애플리케이션 태스크의 식별자를 나타내는 것임을 알 수 있다. 그 후, 애플리케이션 태스크(APn)는 종료한다.
애플리케이션 태스크가 실행의 완료시 슬립 준비 상태인 경우, 예를 들어, S130 및 S140에서의 판단을 생략하고 항상 애플리케이션 태스크의 종료시 슬립 준비 함수를 호출하도록 하는 것이 일부 예시적인 실시예에서 바람직할 수도 있다.
도4와 관련하여 도시된 예시적인 절차의 흐름도에 따르면, 예시적인 상태 관리 섹션(SM)과 관련된 함수 및 절차, 즉 상태 관리 섹션(SM)에 의해 실현되는 예시적인 함수가 기술될 것이다.
예를 들어, 마이크로컴퓨터(13)와 관련하여 실행이 수행되는 동안, 애플리케이션 태스크(AP1 내지 APx) 중 하나는 1부터 x까지의 값을 갖는 인수(n)를 갖는 슬립 준비 함수 SleepOK(n)를 호출한다. 상태 관리 섹션(SM)에 대응하는 프로그램이 즉시 수행된다.
상태 관리 섹션(SM)에 대응하는 프로그램이 실행되는 경우, S210에서, Flag(n)와 같은 슬립 준비 플래그 설정 함수는 슬립 준비 플래그를 1로 설정하는데 사용될 수 있다. 슬립 준비 플래그 설정 함수와 관련하여 괄호된 인수(n)는, 예를 들어 슬립 준비 함수를 호출한 애플리케이션 태스크의 식별자를 나타낸다는 것을 알 수 있다. S210에서, 슬립 준비 플래그는 애플리케이션 태스크에 의해 제공된 통지 및 애플리케이션 태스크에 부여된 슬립 준비 상태의 히스토리를 저장하는데 사용될 수 있다.
S220에서, Flag(1) 내지 Flag(x)와 같은 슬립 준비 플래그 설정 함수와 관련된 모든 슬립 준비 플래그가 모든 애플리케이션 태스크(AP1 내지 APx)에 대해 설정되었는지 여부가 판단될 수 있다.
슬립 준비 플래그 설정 함수[Flag(1) 내지 Flag(x)]와 관련된 모든 슬립 준비 플래그가 모든 애플리케이션 태스크(AP1 내지 APx)에 대해 설정된 경우(S220: 예), S230에서, 마이크로컴퓨터(13)는 통상의 작동에 비해 낮은 전력이 요구되는 슬립 모드로 즉시 이행될 수 있다. 예를 들어, CPU(21)로 클록을 공급하는 발진 회로의 작동이 정지될 수 있고, 또는 마이크로컴퓨터(13)로 전력을 공급하는 전력 공급 회로의 작동이 정지될 수 있다. 따라서, S230에서, 마이크로컴퓨터(13)가 정지될 수 있고, 다르게는, S230에서의 처리가 CPU(21)에 대한 전원 전압 또는 클록 진동수를 감소시킬 수도 있다. 종래 기술과는 달리, 아이들 모듈 등과 같은 모듈이 슬립에 관한 실행 상태에 대해 체크를 하는 기간의 종결을 기다리지 않기 때문에, 마이크로컴퓨터(13) 또는 제어 장치 등을 슬립 모드로 이행시키는데 어떤 지체도 발생되지 않는다.
S220에서의 판단이 부정적인 결과를 나타낸 경우, 즉 하나 이상의 슬립 준비 플래그가 설정되지 않은 경우, 상태 관리 섹션(SM)과 관련된 절차가 종료될 수 있 다. 다르게는, 다른 하나의 처리가 수행되거나 개시되고 그 결과 상태 관리 섹션(SM)과 관련된 실행이 종료될 수 있다.
상기 언급된 처리가 도5 및 도6과 관련하여 기술될 것이다. 도7의 일례에 따르면, 2개의 애플리케이션 태스크(AP1, AP2)가 사용된다는 것을 알 수 있다. 시스템 태스크(ST)는 1ms 마다 애플리케이션 태스크(AP1)을, 2ms 마다 애플리케이션 태스크(AP2)를 웨이크업하도록 요구한다. 아래와 같은 순서로 태스크가 우선된다. 시스템 태스크(ST)는 애플리케이션 태스크(AP1)의 우선 순위보다 높은 우선 순위를 갖고, 애플리케이션 태스크(AP1)의 우선 순위는 애플리케이션 태스크(AP2)의 우선 순위를 갖는다(priST > priAP1 > priAP2). 도5에서, S로 시작하는 번호는 도3 및 도4와 관련하여 기술되고 도시된 다양한 절차에 대응한다는 것임을 알 수 있다. 도5는 시간의 함수로서 다양한 실시예에 따라서 애플리케이션 태스크와 상태 관리 섹션(SM) 사이에서의 작동의 다양한 기능적 흐름을 도시한다.
도5의 상부와 관련하여 도시된 바와 같이, 애플리케이션 태스크(AP1)는 S150에서와 같이 슬립 준비 함수 SleepOK(1)를 호출한다. 슬립 준비 작동의 결과를 수신할 시에, 상태 관리 섹션(SM)은 S210에서와 같이 Flag(1)를 설정하기 시작한다. 또한, 상태 관리 섹션(SM)은 S220에서와 같이 슬립 준비 플래그[Flag(1), Flag(2)]가 모두 애플리케이션 태스크(AP1, AP2)에 대해 설정되었는지 여부를 판단한다.
도5의 본 예시에 따라, 슬립 준비 플래그[Flag(2)]는 애플리케이션 태스크(AP2)에 대해 설정되지 않는다. 따라서, 마이크로컴퓨터(13)는 슬립 모드로 되지 않고, 대신에 통상의 작동을 계속한다.
그 후, 애플리케이션 태스크(AP2)는 슬립에 대해 준비가 되어 있다는 것을 나타내는 슬립 준비 함수[SleepOK(2)]를 호출한다. 상태 관리 섹션(SM)은 Flag(2)를 설정하도록 재개시한다. 상태 관리 섹션(SM)은 Flag(1) 및 Flag(2)와 관련된 슬립 준비 플래그가 S220에 따라서와 같이 애플리케이션 태스크(AP1, AP2) 모두에 대해 설정되었는지 여부를 다시 판단한다.
두 개의 슬립 준비 플래그가 애플리케이션 태스크(AP1, AP2)에 대해 설정되었는지를 판단한 후, 상태 관리 섹션(SM)은 예를 들어, 마이크로컴퓨터(13)가 작동을 멈추는 시점인 슬립 모드로 마이크로컴퓨터(13)를 이행시키는 처리를 실행할 수 있다. 상기에 기술된 바와 같이, 슬립 모드로의 이행은 CPU(21)에 대한 전원 전압의 감소 또는 클록 주파수의 감소를 포함할 수 있고, 그 시점에서 CPU(21)는 전체 전력 소모를 초래하는 평소보다 낮은 전력 레벨로 평소보다 느리게 작동한다.
도6에 도시된 바와 같이, 마이크로컴퓨터(13)는 모든 애플리케이션 태스크가 슬립 준비 상태로 된 경우, 즉시 슬립 모드로 될 수 있다. 본 예에서, 애플리케이션 태스크(AP2)가 슬립 준비 상태로 되고 마이크로컴퓨터(13)가 슬립 모드에 대해 준비된다는 것을 알 수 있다. 따라서, 종래 기술에서 일반적으로 낭비된 전력의 문제를 해결하는 것이 가능하다.
본 실시예는 상태 관리 섹션(SM)과 같은 기능을 실현하는 컴퓨터 프로그램을 사용할 수 있음을 알 수 있다. 상기 언급된 효과는 추가적인 하드웨어를 사용하지 않고 제공될 수 있다. 아이들 태스크가 최소 우선 순위로 된 태스크로서 사용될 경우, 메모리의 이상을 체크하는 기능이 아이들 태스크에 쉽게 제공될 수 있다.
그러한 마이크로컴퓨터(13)를 사용하는 ECU(11)는 비활성 상태에 대한 전력 소모를 종래 기술보다 더 효율적으로 절약할 수 있다.
본 실시예에서, 상태 관리 섹션(SM)은 슬립 이행 관리 수단 또는 컴퓨터를 슬립 이행 관리 수단으로서 기능하도록 하는 프로그램에 상당한다.
본 발명의 구체적인 바람직한 실시예가 기술되었지만, 본 발명은 이것으로 한정되지 않고 본 발명의 기술 사상 및 범주내에서 다양하게 실시될 수 있다는 것이 명확히 이해될 수 있다. 예를 들어, OS는 시스템 태스크(ST) 및 상태 관리 섹션(SM)으로서의 기능을 포함한다. 관리 섹션(SM)과 관련된 예시적인 처리 또는 예시적인 절차는 시스템 태스크(ST) 또는 임의의 애플리케이션 태스크에서 수행될 수도 있다. 애플리케이션 태스크 또는 애플리케이션 모듈은 시스템 태스크(ST) 내에서 실행될 수도 있다. 즉, 소정의 애플리케이션 태스크는 시스템 태스크(ST) 대신에 태스크를 웨이크업하는 것과 같은 제어를 제공할 수도 있다. 도2는 애플리케이션 태스크(x)의 개수를 2이상으로서 한정했지만, 1개의 애플리케이션 태스크가 사용될 수도 있다.
본 발명은 본체와 관련된 상기 기술된 기능을 제어하는 ECU뿐만 아니라 엔진 및 동력 전달 장치를 포함하는 전동 기구를 제어하는 ECU에도 적용 가능하다. 또한, 본 발명은 차량 이외의 목적을 위해 사용되는 ECU에 적용 가능하다.
도1은 하나의 예시적인 실시예에 따른 차량용 전자 제어 장치(ECU)의 구성을 도시하는 개략도.
도2는 하나의 예시적인 마이크로컴퓨터 상에서 실행되는 소프트웨어의 구성을 도시하는 개략도.
도3은 각각의 애플리케이션 태스크의 처리를 도시하는 흐름도.
도4는 상태 관리 섹션(SM)의 처리를 도시하는 흐름도.
도5는 도3 및 도4에 도시된 예시적인 처리에 따른 작동을 도시하는 기능 공정 개통도.
도6은 다양한 예시적인 실시예와 관련된 효과를 도시하는 시간도.
도7은 종래 기술과 관련된 단점을 도시하는 시간도.

Claims (18)

  1. 슬립 이행 관리 모듈 및 n개의 애플리케이션 태스크를 실행하고(n은 2이상의 정수), 상기 n개의 애플리케이션 태스크는 각각 y개의 애플리케이션 모듈을 갖는(y는 1이상의 정수) 차량용 제어 장치의 슬립 상태를 제어하는 방법이며,
    (a) n개의 애플리케이션 태스크 중 제1 애플리케이션 태스크와 관련하여, 상기 n개의 애플리케이션 태스크 중 제1 애플리케이션 태스크와 관련된 y개의 애플리케이션 모듈 모두와 관련된 처리가 종료되었는지 여부를 판단하는 단계와,
    (b) 상기 n개의 애플리케이션 태스크 중 제1 애플리케이션 태스크와 관련된 y개의 애플리케이션 모듈 모두가 종료된 경우, 상기 n개의 애플리케이션 태스크 중 제1 애플리케이션 태스크와 관련된 제1 슬립 준비 상태에 대한 통지를 슬립 이행 관리 모듈에 제공하는 단계와,
    (c) n개의 애플리케이션 태스크 중 그 다음의 애플리케이션 태스크와 관련하여, 그 다음의 애플리케이션 태스크와 관련된 y개의 애플리케이션 모듈 모두와 관련된 처리가 종료되었는지 여부를 판단하는 단계와,
    (d) 상기 n개의 애플리케이션 태스크 중 그 다음의 애플리케이션 태스크와 관련된 y개의 애플리케이션 모듈 모두가 종료된 경우, 그 다음의 애플리케이션 태스크와 관련된 그 다음의 슬립 준비 상태에 대한 통지를 슬립 이행 관리 모듈에 제공하는 단계와,
    (e) n개의 애플리케이션 태스크 중 남은 임의의 것과 관련하여, n개의 애플 리케이션 태스크 중 남은 임의의 것과 각각 관련된 y개의 애플리케이션 모듈 모두와 관련된 처리가 종료되었는지 여부를 판단하는 단계와,
    (f) n개의 애플리케이션 태스크 중 남은 임의의 것이 존재한다면, 상기 n개의 애플리케이션 태스크 중 남은 임의의 것과 각각 관련되는 y개의 애플리케이션 모듈 모두가 종료된 경우, n개의 애플리케이션 태스크 중 남은 임의의 것과 관련된 각각의 남은 슬립 준비 상태에 대한 통지를 슬립 이행 관리 모듈에 제공하는 단계와,
    (g) (b), (d) 단계 및 상기 n개의 애플리케이션 태스크 중 남은 임의의 것이 존재할 경우에는 (f) 단계에서 슬립 이행 관리 모듈에 제공된 통지에 기초하여 제어 장치의 슬립 모드를 즉시 가능하게 하는 단계를 포함하는 차량용 제어 장치의 슬립 상태를 제어하는 방법.
  2. 컴퓨터 판독 가능 매체와,
    상기 컴퓨터 판독 가능 매체에 기억된 명령을 포함하며,
    상기 명령은 제어 장치에 의해 판독 가능하고, 상기 명령이 상기 제어 장치에 의해 판독되고 실행될 경우 상기 제어 장치가 제1항에 따른 방법을 수행하도록 하는 제조 물품.
  3. 제2항에 있어서, 상기 제어 장치는 프로세서, 마이크로컴퓨터 및 차량용 전자 제어 장치 중 하나를 포함하는 제조 물품.
  4. 제1항에 있어서, 상기 슬립 이행 모듈은,
    n개의 애플리케이션 태스크 중 제1 애플리케이션 태스크와 관련된 제1 슬립 준비 상태의 통지시 개시하고,
    n개의 애플리케이션 태스크 중 제1 애플리케이션 태스크에 부여되고 n개의 애플리케이션 태스크 중 제2 애플리케이션 태스크 및 n개의 애플리케이션 태스크 중 남은 임의의 것에 부여되는 슬립 준비 상태의 히스토리를, n개의 애플리케이션 태스크 모두가 슬립 준비 상태에 있는지 여부를 판단하기 위해 저장하고,
    n개의 애플리케이션 태스크 모두가 슬립 준비 상태에 있을 경우, 통상의 작동시보다 적은 전력 소모를 요구하는 슬립 모드로 제어 장치를 즉시 이행시키도록 구성되는, 차량용 제어 장치의 슬립 상태를 제어하는 방법.
  5. 각각 y개의 애플리케이션 모듈을 갖는(y는 1 이상의 정수) n개의 애플리케이션 태스크를 실행하는 제어 장치이며(n은 2 이상의 정수),
    프로세서와,
    상기 프로세서에 연결된 메모리를 포함하고,
    상기 메모리는 상기 프로세서에 의해 판독 가능한 명령을 저장할 수 있고,
    상기 명령은 판독되고 실행될 경우 상기 프로세서가 슬립 이행 모듈을 실행하는 것을 가능하게 하고,
    상기 슬립 이행 모듈은 n개의 애플리케이션 태스크 중 슬립 준비 상태에 있 는 하나로부터의 통지시, n개의 애플리케이션 태스크가 모두 슬립 준비 상태에 있는지 여부를 판단하고, n개의 애플리케이션 태스크가 모두 슬립 준비 상태에 있는 경우 통상의 작동시보다 적은 전력 소모를 요구하는 슬립 모드로 상기 마이크로컴퓨터를 즉시 이행시키도록 구성되고,
    상기 n개의 애플리케이션 태스크 중 하나로부터의 통지는 상기 n개의 애플리케이션 태스크 중 하나가 슬립 준비 상태로 진입할 경우 발생되는 제어 장치.
  6. 제5항에 있어서, 상기 슬립 이행 모듈은, 상기 n개의 애플리케이션 태스크 모두가 상기 n개의 애플리케이션 태스크 중 하나 이상과 관련된 이전의 슬립 준비 상태에 대한 히스토리를 포함하는 정보에 기초하여 슬립 준비 상태에 있는지 여부를 판단하도록 더 구성된 제어 장치.
  7. 제5항에 있어서, 상기 n개의 애플리케이션 테스크 처리 중 하나로부터의 통지는 상기 n개의 애플리케이션 태스크 중 하나의 실행 종료시 발생되는 제어 장치.
  8. 컴퓨터 판독 가능 매체와,
    상기 컴퓨터 판독 가능 매체 상에 기억된 명령을 포함하며,
    상기 명령은 프로세서에 의해 판독 가능하고, 상기 명령이 메모리에 저장되고 상기 프로세서에 의해 판독 및 수행될 경우 프로세서가 제5항에 따른 슬립 이행 모듈의 기능을 수행하도록 하는 제조 물품.
  9. 컴퓨터 판독 가능 매체와,
    상기 컴퓨터 판독 가능 매체 상에 기억된 명령을 포함하며,
    상기 명령은 마이크로컴퓨터에 의해 판독 가능하고, 상기 명령이 상기 마이크로컴퓨터에 의해 판독 및 실행될 경우 제어 장치가 제6항에 따른 슬립 이행 모듈의 기능을 수행하도록 하는 제조 물품.
  10. 제8항에 있어서, 상기 마이크로컴퓨터는 프로세서, 제어 장치 및 차량용 전자 제어 장치 중 하나를 포함하는 제조 물품.
  11. 제9항에 있어서, 상기 마이크로컴퓨터는 프로세서, 제어 장치 및 차량용 전자 제어 장치 중 하나를 포함하는 제조 물품.
  12. 각각 하나 이상의 애플리케이션 모듈을 실행하는 복수의 애플리케이션 태스크 중 하나를 실행하는 마이크로컴퓨터이며,
    슬립 준비 상태로의 상기 애플리케이션 태스크의 진입에 대한 상기 애플리케이션 태스크로부터의 통지시, 상기 복수의 애플리케이션 태스크가 모두 슬립 준비 상태로 진입했는지를 판단하고, 상기 마이크로컴퓨터가 통상의 작동시보다 적은 전력 소모를 요구하는 슬립 모드에 있도록 구성되는 슬립 이행 관리 수단을 포함하고,
    상기 애플리케이션 태스크는 슬립 준비 상태가 되었을 경우 통지를 발행하는 통지 처리를 수행하는 마이크로컴퓨터.
  13. 제12항에 있어서, 상기 슬립 이행 관리 수단은 상기 n개의 애플리케이션 태스크 중 하나 이상과 관련된 이전의 슬립 준비 상태에 대한 히스토리를 포함하는 정보에 기초하여 상기 n개의 애플리케이션 태스크가 모두 슬립 준비 상태에 있는지 여부를 판단하도록 더 구성된 마이크로컴퓨터.
  14. 제12항에 있어서, 상기 통지 처리는 상기 애플리케이션 태스크의 종료시 수행되는 마이크로컴퓨터.
  15. 컴퓨터 판독 가능 매체와,
    상기 컴퓨터 판독 가능 매체 상에 기억된 명령을 포함하며,
    상기 명령은 상기 마이크로컴퓨터에 의해 판독 가능하고, 상기 명령이 메모리에 저장되고 상기 마이크로컴퓨터에 의해 판독 및 실행될 경우 상기 마이크로컴퓨터가 제12항에 따른 슬립 이행 관리 수단으로서 작동하도록 하는 제조 물품.
  16. 컴퓨터 판독 가능 매체와,
    상기 컴퓨터 판독 가능 매체 상에 기억된 명령을 포함하며,
    상기 명령은 상기 마이크로컴퓨터에 의해 판독 가능하고, 상기 명령이 메모 리에 저장되고 상기 마이크로컴퓨터에 의해 판독 및 실행될 경우 상기 마이크로컴퓨터가 제13항에 따른 슬립 이행 관리 수단으로서 작동하도록 하는 제조 물품.
  17. 제15항에 있어서, 상기 마이크로컴퓨터는 프로세서, 제어 장치 및 차량용 전자 제어 장치 중 하나를 포함하는 제조 물품.
  18. 제16항에 있어서, 상기 마이크로컴퓨터는 프로세서, 제어 장치 및 차량용 전자 제어 장치 중 하나를 포함하는 제조 물품.
KR1020070105565A 2006-10-20 2007-10-19 차량용 제어 장치의 슬립 상태를 제어하는 방법, 제조물품, 제어 장치 및 마이크로컴퓨터 KR20080035986A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006286330A JP2008102830A (ja) 2006-10-20 2006-10-20 マイクロコンピュータ、プログラム及び車両用電子制御装置
JPJP-P-2006-00286330 2006-10-20

Publications (1)

Publication Number Publication Date
KR20080035986A true KR20080035986A (ko) 2008-04-24

Family

ID=39265120

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070105565A KR20080035986A (ko) 2006-10-20 2007-10-19 차량용 제어 장치의 슬립 상태를 제어하는 방법, 제조물품, 제어 장치 및 마이크로컴퓨터

Country Status (6)

Country Link
US (1) US20080104438A1 (ko)
JP (1) JP2008102830A (ko)
KR (1) KR20080035986A (ko)
CN (1) CN101165636A (ko)
DE (1) DE102007049577A1 (ko)
FR (1) FR2908535A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9274807B2 (en) 2006-04-20 2016-03-01 Qualcomm Incorporated Selective hibernation of activities in an electronic device
GB2476650A (en) * 2009-12-30 2011-07-06 1E Ltd Computer which enters a low power state when there is no user activity and no process requiring a high power state
CN101923493A (zh) * 2010-09-21 2010-12-22 深圳市华力特电气股份有限公司 一种任务调度方法及任务调度设备
US8700936B2 (en) * 2010-12-03 2014-04-15 Schneider Electric It Corporation Modular gating of microprocessor low-power mode
US8850251B1 (en) * 2011-01-19 2014-09-30 Intellectual Ventures Fund 79 Llc Methods, devices, and mediums associated with controlling a power mode
DE102013202774A1 (de) * 2013-02-20 2014-08-21 Robert Bosch Gmbh Vorrichtung, Verfahren und System zum Steuern eines Prozessors
CN103914346A (zh) * 2013-12-16 2014-07-09 西北工业大学 一种基于分组的实时操作系统双优先级任务调度节能方法
CN104714624B (zh) * 2015-03-23 2018-01-16 广东欧珀移动通信有限公司 移动终端节省功耗的方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62150416A (ja) * 1985-12-24 1987-07-04 Nec Corp 低消費電力状態への移行方式
FR2696259A1 (fr) * 1992-09-30 1994-04-01 Apple Computer Organisation en tâches et en modules d'une exécution dans un processeur.
JPH10341187A (ja) * 1997-06-09 1998-12-22 Nippon Denki Ido Tsushin Kk 携帯電話機
JP3610930B2 (ja) * 2001-07-12 2005-01-19 株式会社デンソー オペレーティングシステム、プログラム、車両用電子制御装置
US7100162B2 (en) * 2002-06-20 2006-08-29 Hewlett-Packard Development Company, L.P. System and method for process management

Also Published As

Publication number Publication date
DE102007049577A1 (de) 2008-05-08
JP2008102830A (ja) 2008-05-01
FR2908535A1 (fr) 2008-05-16
US20080104438A1 (en) 2008-05-01
CN101165636A (zh) 2008-04-23

Similar Documents

Publication Publication Date Title
KR20080035986A (ko) 차량용 제어 장치의 슬립 상태를 제어하는 방법, 제조물품, 제어 장치 및 마이크로컴퓨터
US7386853B2 (en) Multitasking operating system capable of reducing power consumption and vehicle electronic control unit using same
EP1677175B1 (en) Dynamic power management in system on chips (SOC)
US7577856B2 (en) Unified device power management engine
JP5626266B2 (ja) 通信システム
US20080215908A1 (en) Sleep Watchdog Circuit For Asynchronous Digital Circuits
KR20140127341A (ko) 휴대용 컴퓨팅 디바이스에서 요청들을 스케쥴링하기 위한 방법 및 시스템
CN112087355A (zh) 一种状态控制方法、装置、电子模块及can网络系统
JP2008107914A (ja) マイクロコンピュータ、プログラム及び車両用電子制御装置
CN111225434B (zh) 一种应用程序响应方法、系统、存储介质及通信模块
JP6198175B2 (ja) 通信回路
CN115756622A (zh) 芯片控制方法及芯片
CN112162514B (zh) 一种同步模块、辅助同步模块以及域控制器
JP3758477B2 (ja) マイクロコンピュータ
EP3176674A1 (en) Method for power control of a control unit and control unit
JP3711849B2 (ja) マイクロコンピュータ
JP2002229791A (ja) インターフェース生成装置、プログラム及び記録媒体
JP2008222051A (ja) マイクロコンピュータ、プログラム、電子制御装置、及び通信システム
WO2010109609A1 (ja) 処理装置及び車両用エンジン制御装置
CN114760610B (zh) 多路网络唤醒方法、装置及汽车
CN117539341A (zh) 车机系统快速启动的方法、装置、电子设备及存储介质
WO2023206693A1 (zh) 系统休眠方法及装置、系统唤醒方法及装置
CN116691553A (zh) 电源控制方法、装置、车联网终端和可读存储介质
CN116347573A (zh) 基于soa的车辆局部网络唤醒方法、系统、设备及介质
CN115827070A (zh) 状态管理模块及方法、微控制器、车载控制器

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application