JP6401870B2 - 常時オンの構成要素におけるクロック切り替え - Google Patents

常時オンの構成要素におけるクロック切り替え Download PDF

Info

Publication number
JP6401870B2
JP6401870B2 JP2017542473A JP2017542473A JP6401870B2 JP 6401870 B2 JP6401870 B2 JP 6401870B2 JP 2017542473 A JP2017542473 A JP 2017542473A JP 2017542473 A JP2017542473 A JP 2017542473A JP 6401870 B2 JP6401870 B2 JP 6401870B2
Authority
JP
Japan
Prior art keywords
clock
integrated circuit
audio
audio samples
memory
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2017542473A
Other languages
English (en)
Other versions
JP2018513397A (ja
Inventor
マヌー グラティ,
マヌー グラティ,
ギルバート エイチ. ハーベック,
ギルバート エイチ. ハーベック,
アレクシー イー. コスーツ,
アレクシー イー. コスーツ,
ジラウルト ダブリュ. ジョーンズ,
ジラウルト ダブリュ. ジョーンズ,
ティモシー ジェイ. ミレー,
ティモシー ジェイ. ミレー,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of JP2018513397A publication Critical patent/JP2018513397A/ja
Application granted granted Critical
Publication of JP6401870B2 publication Critical patent/JP6401870B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Telephone Function (AREA)
  • Microcomputers (AREA)
  • Signal Processing (AREA)

Description

本明細書で開示される実施形態は、モバイル機器の分野、より詳細には、モバイル機器の音声/オーディオ制御に関するものである。
関連技術の説明
モバイル機器は到る所に存在するようになってきている。モバイル機器とは、ポータブル電源(例えば電池)で動作するように、かつユーザによって容易に持ち運びされるように設計されたいかなる電子機器をも含みうる。携帯電話、「スマート」フォン、iTouch(登録商標)などのパーソナルデジタルアシスタント(PDA)、iPod(登録商標)及びMP3プレーヤなどの娯楽機器、ラップトップコンピュータ、ネットトップコンピュータ、iPad(登録商標)及びWindows(登録商標)ベースのタブレットなどのタブレット機器などがモバイル機器に含まれうる。これらの機器の多くは、無線接続能力(例えば、WiFi、携帯電話網接続等)を有しているため、機器で直接実行可能なさまざまなローカルアプリケーションを提供するだけでなく、情報源としても利用することができる。
モバイル機器は、タッチスクリーン、機器の一部であるか又は機器に接続されたキーボード、種々のポインティング機器(例えば、マウス、タッチパッド、その他)などのユーザインタフェースによって、制御することができる。より最近では、音声制御が、より一般的になり始めている。例えば、アップル社のiデバイス(iPhone(登録商標)、iPad(登録商標)など)のいくつかは、Siri(登録商標)アプリケーションによる音声制御を採用している。ユーザは、機器を取り上げ、ボタンを押したままにして、Siri(登録商標)の応答を待つことができる。Siri(登録商標)が応答すると、ユーザは口頭で質問をするか、又はコマンドを与えることができ、Siri(登録商標)はそれを解釈して応えようとする。Siri(登録商標)が応答するまでボタンを押し続ける動作は、機器をウェイクアップし(アイドル状態の場合)、オペレーティングシステムを初期化し、入力を受け付けできるようにSiri(登録商標)アプリケーションを有効化する役割を果たす。
モバイル機器の中には、機器がアイドル状態のときに、限られた音声コマンドの有効化機能を実装し始めたものがある。機器は、ユーザには「オフ」に見える場合(電子メール、電話、又はテキストメッセージなどの電子通信を受け付けうるため、機器がオンであることを、ユーザがたとえ知っているとしても)、アイドル状態であってよい。アイドル状態の機器は、通常、表示画面をオンにしておらず、多くの内部構成要素は、電源が切断されている可能性があり、機器が完全に機能するためには、それら内部構成要素の初期化が必要である。限られた音声コマンドの有効化機能を備えたモバイル機器では、ユーザは、機器を「オン」させ、より多くの音声制御を受け付けさせるためにキーワード又はフレーズを声に出すことができる。例えば、1つのかかるフレーズは、アンドロイドスマートフォンで使用されている「Hey Googlenow」である。
限られたコマンドが有効化されると、ユーザは、キーフレーズを発話した後に休止し、更なる入力に対して機器の準備ができていることの視覚的及び/又は聴覚的な指示を待たなければならない。機器がアイドル状態にある間、機器は、マイクロフォンをオンにするとともに、ディスクリートなデジタル信号プロセッサ(DSP)を用いて、キーワード/フレーズに聞き耳をたてている。一旦、キーワード/フレーズが認識されると、DSPは、機器の他の部分に、初期化(又はブート)するよう合図し、続いて、準備ができたときに、ユーザに応答する。このキーワード/フレーズの発話と、続く所望の質問/コマンドとの間の遅延により、インタフェースが扱いにくいものとなる。したがって、この限られたコマンドの有効化の方式は、上述したような、機器を持ち上げてボタンを押し続ける方式をわずかに改良するにすぎない。
ある実施形態では、一つの集積回路(例えば、システムオンチップ、即ちSOC)は、1つ以上の中央処理装置(CPU)と、メモリコントローラと、SOCの他の部分が電源を切断された場合にも電源をオンされ続けるように構成された回路と、を含むことができる。本回路は、マイクロフォンによって感知された音声に対応するオーディオサンプルを受信するように構成され、更に、SOCを含む機器のユーザからのあり得るコマンドを検出するために、それらのオーディオサンプルを所定のパターンと比較するように、更に構成することができる。この所定のパターンは、例えば、キーワード又はフレーズを発話するユーザの声を表してもよい。本回路は、SOCの他の部分の電源が切断されている時間中に、第1のクロックに従って動作することができる。第1のクロックは、低電力クロックであってもよく、他のクロックよりも小さい電力及び低い性能であるさまざまな特性(例えば、大きい位相雑音、あまり対称ではないデューティサイクル、大きいジッタなど)を有してもよい。サンプル中に所定のパターンを検出したことに応じて、本回路は、メモリコントローラ及びプロセッサに電源を投入させ、メモリコントローラが接続されたメモリにオーディオサンプルを記憶し、プロセッサによってそれを処理することができる。電源投入プロセスの間、第1のクロックよりも1つ以上の良好な特性を有する第2のクロックが利用可能となり得る。本回路は、サンプルを保存しながら第2のクロックに切り替わることができる。一実施形態では、回路は、サンプル数の閾値より少ない数のサンプルを失うか、又は破損させてもよい。サンプルの閾値数は、システム内で実行される音声認識が、ユーザによって発せられたフレーズを正確に認識するのに必要な程度に少ない場合がある。例えば、最大4又は5個のサンプルが失われたり破損したりしても、正しく認識される場合がある。一実施形態では、たかだか1つのサンプルが失われただけで、閾値に合致することがある。別の実施形態では、サンプルが失われることはない。
以下の詳細な説明は、次に簡単に記述する添付の図面を参照する。
機器の一実施形態のブロック図である。 図1に示すオーディオフィルタ回路の一実施形態の動作を例示するフローチャートである。 一実施形態にかかる、オーディオフィルタ回路のクロック選択を例示するブロック図である。 図3に示される制御回路の一実施形態の動作を例示するフローチャートである。 メモリ12に記憶されたフレーズの一実施形態のブロック図である。 図1に示される機器の一実施形態の動作を例示するタイミング図である。
この開示に記述する実施形態には、各種の変更形態及び代替形態の余地があり得るが、その具体的な実施形態を例として図面に示し、本明細書で詳細に説明する。しかし、図面及び図面に関する詳細な説明は、開示する特定の形態に実施形態を限定することを意図しておらず、むしろその意図は、添付の請求項の主旨及び範囲に含まれる全ての変更形態、均等形態、及び代替形態を網羅することであることを理解されたい。本明細書で使用する見出しは、構成を目的とするにすぎず、説明の範囲を限定するために使用することを意図してはいない。この出願を通して使用するとき、「〜し得る(may)」という語は、義務的な意味(即ち、〜しなければならない(must)を意味する)ではなく、許容的な意味(即ち、〜する可能性を有することを意味する)で使用される。同様に、単語「含む(include)」、「含む(including)」及び「含む(includes)」は、何かを含むことを意味するが、その何かに限定されることを意味していない。
各種のユニット、回路、又は他の構成要素は、1つ以上のタスクを実行「するように構成されている(configured to)」と記述され得る。かかる文脈において、「〜するように構成されている」は、動作中に1つ以上のタスクを実行する「回路を有する」ことを概ね意味する構造を広く記載するものである。したがって、ユニット/回路/構成要素は、ユニット/回路/構成要素が現在動作していなくても、タスクを実行するように構成され得る。概して、「〜するように構成されている(configured to)」に対応する構造を形成する回路は、ハードウェア回路、及び/又は操作を実行するために実行可能なプログラム命令を記憶するメモリを含んでもよい。メモリは、スタティックランダムアクセスメモリ若しくはダイナミックランダムアクセスメモリ等の揮発性メモリ、及び/又は光ディスク記憶装置若しくは磁気ディスク記憶装置、フラッシュメモリ、プログラム可能読み出し専用メモリ等の不揮発性メモリ等を含むことができる。同様に、さまざまなユニット/回路/構成要素は、説明の中で、便宜上、1つ以上のタスクを実行すると記述される場合がある。かかる説明は、「〜するように構成されている」というフレーズを含むと解釈されたい。1つ以上のタスクを実行するように構成されているユニット/回路/構成要素の記載は、そのユニット/回路/構成要素について米国特許法第112条(f)の解釈を援用しないことを明示的に意図している。
この明細書は、「一実施形態」又は「ある実施形態」に対する参照を含む。特徴の任意の組合せを含む実施形態が概して意図されるが、本明細書で明示的に否定しない限り、「一実施形態で」又は「ある実施形態で」のフレーズの形態は、必ずしも同じ実施形態を指していない。特定の機能、構造又は特性は、この開示と整合する任意の好適な方法で組み合わされ得る。
次に図1を参照すると、機器5の一実施形態のブロック図が示されている。図示の実施形態では、機器5は、集積回路(IC)10(この例では、SOCであり得る)を含んでもよい。SOC10は、メモリ12、外部オーディオ符号器/復号器(コーデック)16、及び電力管理ユニット(PMU)20に接続することができる。オーディオコーデック16は、1つ以上の音声センサ(まとめてセンサ26と呼ぶ)に接続することができる。例えば、オーディオコーデック16は、1つ以上のマイクロフォン(mic)26A〜26B、及び1つ以上のスピーカ(spkr)26C〜26Dに接続してもよい。
名前が暗示するように、SOC10の構成要素は、集積回路「チップ」として、単一の半導体基板上に集積され得る。いくつかの実施形態では、構成要素は、システム内の2つ以上の個別のチップ上に実装され得る。更に、さまざまな構成要素を、任意の集積回路(即ち、SOCである必要はない)上に集積化してもよい。しかし、本明細書では、SOC10を例として使用する。図示の実施形態では、SOC10の構成要素には、中央処理装置(CPU)複合体14、周辺構成要素18A〜18B(より簡単には、「周辺機器」)、メモリコントローラ22、オーディオフィルタ回路24、電力管理回路(PMGR)28、オンチップ発振器36、位相ロックループ(PLL)38、及び通信ファブリック27が含まれる。構成要素14、18A〜18B、22、24、及び28は、全て、通信ファブリック27に接続することができる。メモリコントローラ22は、使用中にメモリ12に接続され得る。同様に、周辺機器18Aは、使用中に、オーディオコーデック16に接続されたインタフェースユニット(IFU)とすることができ、オーディオコーデック16は、更に、使用中に、オーディオセンサ26に接続される。IFU18Aは更にオーディオフィルタ回路24に接続される。発振器36及びPLL38は、オーディオフィルタ回路24に接続され、PLL38は、SOC10の他の部分にも接続され得る。
機器5は、携帯電話、スマートフォン、PDA、ラップトップコンピュータ、ネットトップコンピュータ、タブレット機器、娯楽機器、その他、等のいかなる種類の携帯用電子機器であってもよい。いくつかの実施形態では、機器5は、デスクトップコンピュータなどの非携帯用電子機器とすることもまたできる。かかる非携帯用機器もまた、本明細書に記載されたオーディオ機器制御機能から恩恵を得ることができる。
機器5がアイドル状態である時間中に、SOC10の一部分の電源を切断してもよい。特に、CPU複合体14、メモリコントローラ22、周辺機器18B、相互接続27、PLL38、及びPMGR28の一部分は、電源を切断することができる。一方、機器5がアイドル状態であるが、完全には電源が切断されない場合、オーディオフィルタ回路24は、IFU18A及び発振器36と同様に、電力供給され続けてもよい。機器5がアイドル状態にあるとき、SOC10の外部にある構成要素は、必要に応じて、電源投入されているか、又は切断することができる。特に、メモリ12は、電力を供給され続け、したがって、そこに記憶されたデータを保持することができる。メモリ12が、さまざまな種類のうちの1つの種類のDRAMである実施形態では、メモリ12は、機器5がアイドル状態である時間中に記憶されたデータを保持するために、セルフリフレッシュモードにすることができる。
PLL38及び発振器36は、図示された実施形態では各々クロック源であり、SOC10内のデジタル論理のクロックを提供する。PLL38は、オーディオフィルタ回路24、IFU18A、及び発振器38以外のSOC10の部分の電源がオンされている動作中のクロック源とすることができる。PLL38は、高性能で高品質のクロックをオーディオフィルタ回路24に供給することができる。PLL38はまた、高性能で高品質のクロックをSOC10の他の部分に提供してもよい。1つ以上のクロックが提供されてもよく、場合によっては、SOC10内の異なる構成要素へのクロックが異なる周波数を有してもよい。したがって、PLL38は複数のPLLであってもよく、又はPLLからクロックを生成するためにさまざまなクロック分周器/乗算器を使用してもよく、又はPLLとクロック分周器/乗算器との任意の組み合わせを使用することができる。一方、SOC10の一部分の電源が切断されているアイドル時間中に、発振器36は、低電力クロックをオーディオフィルタ回路24に提供することができる。発振器36は、リング発振器などの比較的単純な低電力回路であってもよい。発振器36は、アイドル時間中に、更にSOC10の他の構成要素が電源投入されているときに、電源がオンであってもよく、あるいは、他の構成要素の電源が投入されているときに、電源がオフであってもよい(かかる時間中に、PLL38がクロックを供給することができるので)。
一般に、クロックは、理想的なクロックとの近さに基づいて、より高い又はより低い品質又は性能であると見なすことができる。理想的なクロックは、固定周波数及び50%デューティサイクルを有する矩形波であってもよい。固定周波数は、選択可能であってもよいが、ノイズ、温度、電圧変動などに関して不変とすることができる。言い換えれば、周波数が一定であり、立ち上がりエッジ及び立ち下がりエッジがクロックサイクルごとに不変とすることができる。実際のクロックは理想的なクロックとはさまざまな度合いで異なり、高品質/高性能のクロックは、理想的なクロックと、低品質のクロックよりも少ない量だけしか異なり得ない。
クロックのさまざまな特性は、その品質又は性能を示すことができる。例えば、クロックの位相雑音は特性となり得る。位相雑音は、クロックの位相における急速で短期間のランダムな変動の周波数領域表現であってもよい。大量の位相雑音を有するクロックを使用してアナログデジタル変換器又はデジタルアナログ変換器を動作させると、その変換器のオーディオ性能が低下する恐れがある。PLL38のクロックは、発振器36のクロックよりも小さい位相雑音を有することができる。不正確な周波数は、予期しない音楽ピッチの変動をもたらす可能性があるので、国際時間基準と比較したクロック周波数の長期平均の精度は、例えば、その品質/性能の特性となり得る。PLL38のクロックは、発振器36のクロックよりも、良好な周波数精度を有することができる。大きな周期ジッタは、SOC10のデジタル論理設計におけるクロックサイクルの有用部分を損なうので、クロックの周期ジッタは、その品質/性能の特性となり得る。したがって、小さい周期ジッタは、高い品質/性能のクロック特性となり得る。PLL38のクロックは、発振器36のクロックよりも、小さい周期ジッタを有することができる。クロックのデューティサイクルは、その品質/性能の特性となり得る。対称なデューティサイクル(50%高、50%低)は、クロックのどちらか一方の遷移に関連付けられた回路を含む設計にとって、好ましいデューティサイクルであり得る。したがって、クロックの高段階及び低段階が50%で平衡し得るので、50%に近いデューティサイクルは高品質特性となり得る。PLL38のクロックのデューティサイクルは、発振器36のクロックのデューティサイクルよりも、50%に近くなり得る。
アイドル時間中に、オーディオフィルタ回路24は、オーディオコーデック16から、IFU18Aを介して、オーディオサンプルを受信するように構成され、サンプル中に所定のパターン(例えば、ユーザの発話したコマンド又は要求に応えるために機器5をウェイクアップさせるキーワード/フレーズ)を検出しようと試みることができる。所定のパターンは、オーディオフィルタ回路24にプログラムされてもよいし、又はオーディオフィルタ回路24にハードコード化されてもよい。ある実施形態では、所定のパターンは、キーワード/フレーズを口頭で発話しているユーザからキャプチャすることができ、ユーザ固有の声に機器5をトレーニングする。別の実施形態では、所定のパターンは、さまざまな抑揚、音質などで話されるようなキーワード/フレーズを表す一般的なパターンである。キーフレーズの検出は、発振器36の低電力クロックで実行することができる。
パターンの検出に応じて、オーディオフィルタ24は、メモリコントローラに電源投入させて初期化させるように(一致するサンプル及び後続のサンプルをメモリに記憶することができるように)構成してもよいし、更に、CPU複合体14(及び、実施態様に応じて、場合によっては、SOC10の他の部分も)に電源投入させてオペレーティングシステムをブートさせるように構成してもよい。ある実施形態では、メモリコントローラ22は、比較的迅速に、電源投入することができる。PLL38がロックされ、更に、メモリコントローラ22が初期化されるが、それは、オペレーティングシステムのブートアップよりも短い、かなり予測可能な遅延しか生じない。相互接続27は、同様に電源投入することができ、これによって、オーディオフィルタ回路24は、以下に述べるパラメータと、サンプルを書き込むメモリ書き込み動作と、をメモリ12に送信することができる。オーディオフィルタ回路24は、サンプルバッファ30を含んでもよく、所定のパターンと比較するために、オーディオフィルタ回路24は、サンプルバッファ30にサンプルを一時的にバッファし、一旦パターンが検出されると、メモリコントローラ22がメモリ12への書き込みを受信する準備ができるまで、更に、サンプルをバッファするように、構成してもよい。したがって、サンプルバッファ30の大きさは、そのパターンを検出してから、メモリコントローラ22の準備が整うまでの遅延に基づくこととなる。いくつかの実施形態では、サンプルバッファ30は、所定のパターンに一致するサンプルと、メモリコントローラの準備が整うまでの遅延に基づいて、続いて受信されたサンプルと、所定のパターン(即ち、キーワード/フレーズ/音声)と一致するサンプルの前の1つ以上のサンプルと、のバッファリングを可能にする大きさにすることができる。この一致する前のサンプルは、マイクロフォンによりキャプチャされた背景雑音を判断するために処理することができ、これによって、後続サンプルのより正確な処理に役立てることができる。
PLL38が電源を投入されてロックされると、オーディオフィルタ回路24は、発振器36の低電力クロックからPLL38の高性能高品質クロックに切り替えることができる。この切り替えは不具合がなく、高品質クロックの数クロックサイクル(例えば3以下)にわたって、切り替えが生じ得る。切り替えの時間期間は、オーディオサンプルのサンプル時間よりもずっと短くすることができる。したがって、切り替えの間に、多くても1つのオーディオサンプルしか失われ得ない(損失の可能性は低くなり得る)。オーディオサンプルは、そのサンプルに含まれていないと、失われている可能性がある。オーディオサンプルも破損している可能性がある(即ち、サンプルには含まれているが、正確なサンプルではない)。切り替え中に、多くてもサンプル数の閾値しか破損しない可能性がある。一実施形態では、多くても1つのサンプルしか失われない可能性がある。あるいは、オーディオフィルタ回路24は、新しいサンプルの到着に近くない時間に切り替えが発生することを確実にするように構成され、サンプル損失が確実にないようにする。高性能で高品質のクロックで動作させることにより、オーディオフィルタ回路24内のサンプルの追加処理、並びにメモリ12などへのサンプルの高帯域伝送を可能にすることができる。
いくつかの実施形態では、メモリコントローラ22は、進歩したDRAM技術をサポートすることができ、これは、メモリコントローラ22及びメモリ12を両者間のリンク上で適切に同期するようにトレーニングすることを含む。メモリコントローラ22の構成パラメータは、トレーニングによって直接ハードウェアによって、又はソフトウェアによって、メモリコントローラ22の中にプログラムすることができる(参照番号34A)。オーディオフィルタ回路24からメモリコントローラ22をより迅速に動作状態に復帰させるために、オーディオフィルタ回路24は、パラメータ(参照番号34B)をシャドウイングしてもよい。あるいは、パラメータ34Bは、DRAMの全てのバージョン及び、機器10の全ての動作条件にわたって適切に動作することが知られている、一般的なパラメータのセットとすることができる。オーディオフィルタ回路24は、パラメータ34Bをメモリコントローラ22に転送し、メモリコントローラがメモリ12に書き込めることを確実にすることができる。
CPUは、オペレーティングシステムの実行を開始し、SOC10が再起動している理由は、オーディオフィルタ24がキーワード/フレーズを検出したことであると判断することができる。CPUは、メモリ12からサンプルを読み出し、キーワード/フレーズが実際に検出されたことを検証することができる。例えば、いくつかの実施形態では、オーディオフィルタ24は、CPUにより実行されるコードによってサポートすることができるよりも、より単純であり、より粒度の粗い(より正確でない)比較処理を使用することがある。CPUは、符号を検出したことを検証することができ、受信されたオーディオサンプルの残りの処理に進んで、キーワード/フレーズの後に話されたコマンド/要求を判断することができる。サンプルが低電力クロック及び高性能クロックを使用して受信されたとしても、検出されたサンプルは、CPUによる処理のためにサンプルの連続ストリームとして処理されてもよい。
別の実施形態では、CPU複合体14は、メモリコントローラ22と並列にウェイクアップされなくてもよい。例えば、いくつかの実施形態では、オーディオフィルタ回路24は、後続のサンプルの処理を実行する(が、メモリ12内でサンプルを記憶するスペースを利用するために、メモリコントローラ22の電源を投入してもよい)ように構成することができる。別の実施形態では、オーディオフィルタ回路24は、機器5がアイドル状態であるときに、他の動作を実行するように構成されてもよく、オーディオフィルタ回路24は、これら動作のいくつかを記憶するためにメモリ12を使用することができる。かかる実施形態では、CPU複合体14を電源投入することなく、メモリコントローラ22の電源を投入することができる。
SOC10の種々の構成要素を電源投入することは、PMU20との通信を含む場合がある。ある実施形態では、オーディオフィルタ回路24は、他のSOC回路部を電源投入させるために、PMU20と通信するように構成することができる。あるいは、SOC10のさまざまな構成要素の電源を投入/切断するために、オンチップ電力ゲーティングを実装してもよい。内部のPMGR28は、オンチップ電力ゲーティングを実装するように構成されてもよく、オーディオフィルタ回路24は、PMGR28と通信して電源投入させるように構成することができる。更に他の実施形態では、PMGR28とPMU20との組み合わせを使用してもよい。更に別の実施形態では、PMGR28は、PMU20と通信するように構成することができ、オーディオフィルタ回路24は、電源投入要求をPMGR28に伝達し、必要に応じて、PMGR28はPMU20と通信することができる。
サンプルバッファ30とメモリ12との間で、マイクロフォン(単数又は複数)26A〜26Bからの音声データのサンプルの損失は、ほとんど又は全くなくすることができる。したがって、ユーザは、キーワード/フレーズを発話し、いかなる躊躇も必要なく、続けて要求/コマンドを発話することができる。
さまざまな実施形態では、オーディオフィルタ回路24は、固定されたハードウェア、及び/又はソフトウェアを実行する1つ以上のプロセッサ、の任意の組み合わせを含んでもよい。ソフトウェアは、オーディオフィルタ回路24に含まれる(例えば、オーディオフィルタ回路24の不揮発性メモリに記憶された)ファームウェアであってもよい。あるいは、ファームウェアは、実行のためにアクセスできるように、機器5内の他の不揮発性記憶機器に含まれてもよい。固定されたハードウェア実装が用いられる場合、サンプルパターンは、固定されたハードウェアへの入力として、プログラム可能とすることができる。かかるプログラム化の可能性は、異なるキーワード/フレーズ/音声の使用が可能となり、複数の言語をサポートすることができる。固定したハードウェアオーディオフィルタ回路24を実装すると、ソフトウェアを実行するプロセッサが提供し得るよりも、オーディオサンプルの監視に対して、より電力効率のよい解決策を提供することができる。
なお、ここでの説明は、コマンドモードを有効化するために使用することができるキーワード又はフレーズに言及しているが、一般的には、任意の音声(例えば、笛、拍手、非言語的経口発生音、その他)を、さまざまな実施形態で使用することができることに留意されたい。
本明細書で使用される場合、「電源投入(power up)」という用語は、現在は電源切断(又は電源オフ)状態にある回路に電力を印加することを指し得る。いくつかの実施形態では、所定の回路は、2以上の電力状態(例えば、電圧及び周波数の組み合わせ)をサポートすることができる。電源投入は、回路によってサポートされた電力状態のいずれかを設定することを指す場合がある。電源投入(powering up)は、電源オン(powering on)と呼ぶこともまたできる。「電源切断(power down)」又は「電源オフ(power off)」という用語は、電源供給電圧の大きさを(接地に対して)0Vに低減することを指し得る。
オーディオコーデック16は、オーディオデータの一般的な符号器/復号器とすることができる。このコーデックは、マイクロフォン26A〜26Bから受信された信号を、SOC10に送信することができるデジタルサンプルに変換するように構成されたアナログデジタル変換器を含んでもよい。コーデックは、SOC10からデジタルオーディオデータを受信して、デジタルオーディオデータをアナログ信号に変換してスピーカで再生するように構成されたデジタルアナログ変換器を含んでもよい。ある実施形態では、オーディオコーデック16は、機器5がアイドル状態である時間中に使用することができる1つ以上の低電力モードをサポートしてもよい。例えば、オーディオコーデック16は、開放された(又は「オン」の)マイクロフォンの数を減少させ、スピーカをオフにすることができる。いくつかの実施形態では、オーディオサンプルレートは、低電力モードにおいて、減少させることができる。
CPU複合体14は、SOC10のCPUとして機能する1つ以上のプロセッサを含むことができる。本システムのCPUは、オペレーティングシステムなどの、システムの主制御ソフトウェアを実行するプロセッサ(単数又は複数)を含む。概して、使用中にCPUによって実行されるソフトウェアは、機器5の所望の機能を実現する、機器5/SOC10の他の構成要素を制御することができる。CPUプロセッサはまた、アプリケーションプログラムなどの、他のソフトウェアを実行することもできる。アプリケーションプログラムは、ユーザ機能を提供することができ、より下位のデバイス制御に関してオペレーティングシステムに依存し得る。したがって、CPUプロセッサは、アプリケーションプロセッサと呼ぶこともできる。CPU複合体は、レベル2(L2)キャッシュ、及び/又は、システムの他の構成要素とのインタフェース(例えば、通信ファブリック27とのインタフェース)などの、他のハードウェアを更に含んでもよい。
周辺機器18A〜18Bは、SOC10内に含まれる追加ハードウェア機能の任意のセットであり得る。より具体的には、周辺機器18Aは、オーディオコーデック16と接続するように構成されたインタフェースユニットであってもよい。任意のインタフェースを用いてもよい(例えば、シリアル周辺インタフェース(SPI)、シリアル又はパラレルポート、オーディオコーデック16用の独自のインタフェース、その他)。周辺機器18Bは、ビデオ符号器/復号器、スケーラ、回転器、ブレンダー、グラフィックス処理ユニット、ディスプレイコントローラ、その他、などのビデオ周辺機器を含むことができる。周辺機器としては、ユニバーサルシリアルバス(USB)、PCIエクスプレス(PCIe)を含む周辺構成要素相互接続(PCI)、シリアルポート及びパラレルポート、その他などのインタフェースを含む、SOC10の外部の種々のインタフェースに関するインタフェースコントローラを挙げることができる。周辺機器は、メディアアクセスコントローラ(MAC)などのネットワーク周辺機器を含んでもよい。ハードウェアの任意のセットが含まれ得る。
メモリコントローラ22は、SOC10の他の構成要素からメモリ要求を受信するため、及び、メモリ要求を完了する目的でメモリ12にアクセスするため、の回路を通常含むことができる。メモリコントローラ22は、任意の種類のメモリ12にアクセスするように構成され得る。例えば、メモリ12は、スタティックランダムアクセスメモリ(SRAM)、ダブルデータレート(DDR、DDR2、DDR3、その他)DRAMを含む同期DRAM(SDRAM)などのダイナミックRAM(DRAM)であってもよい。DDR DRAMの低電力/モバイルバージョンをサポートすることができる(例えば、LPDDR、mDDR、その他)。いくつかの実施形態では、メモリ12は、SOC10とは別個に(例えばシングルインラインメモリモジュール(SIMM)、デュアルインラインメモリモジュール(DIMM)、又は、SOC10が実装された回路基板に搭載された1つ以上のDRAMチップに)実装されてもよい。他の実施形態では、メモリ12は、SOC10と共に実装されてもよい(例えば、パッケージオンパッケージ又はチップオンチップ構成で)。
通信ファブリック27は、SOC10の構成要素間で通信するための任意の通信相互接続及び通信プロトコルであり得る。通信ファブリック27は、共有バス構成、クロスバー構成、及びブリッジを有する階層化バス、を含むバスベースであり得る。通信ファブリック27は、またパケットベースとすることができ、ブリッジを有する階層構造、クロスバー、ポイントツーポイント、又は他の相互接続とすることができる。
上述したように、電力管理回路28は、SOC10内の内部電源順序制御を管理することができる。電力管理回路28は、機器5の計算上の需要と電力消費をバランスさせるために、SOC10内のさまざまな構成要素のさまざまな電力/性能状態を設定するように、構成することができる。電力管理回路28は、所望の電力/性能状態にプログラム可能であってもよいし、プログラムされた状態に基づいて、さまざまな構成要素の電源ON/OFF、及びクロック周波数設定を管理してもよい。
PMU20は、SOC10、オーディオコーデック16、周辺機器26A〜26D、及びメモリ12を含む機器5の構成要素に、電力を供給する役割を全般的に果たすことができる。PMU20は、構成要素の少なくとも一部(例えば、SOC10)から、電圧値の要求を受信するように接続されてもよく、更に、要求された電圧を供給するように構成された電圧レギュレータを備えてもよい。SOC10は、複数の電圧(例えば、CPU複合体14用のCPU電圧、キャッシュなどのSOC10のメモリアレイ用のメモリ電圧、SOC電圧又はSOCの他の構成要素用の電圧、その他)を受け取ることができる。
マイクロフォン26A〜26Bは、音声を受信し、受信した音声を表す出力信号を提供することができる任意の機器としてもよい。いくつかの場合には、2つ以上のマイクロフォンが望ましい場合がある。例えば、ビデオ機能を有するスマートフォン内には、音声通話の場合に、ユーザの口の近くにマイクロフォンを内蔵することが望ましいだけでなく、撮影の対象から音声をキャプチャするためには、ビデオカメラの近くにマイクロフォンを内蔵することが望ましい。任意の数のマイクロフォンが、さまざまな実施形態に内蔵されていてもよく、内蔵マイクロフォンのうちの任意の数のものが、機器5がアイドル状態である場合に、開放されていてもよい。
スピーカ26C〜26Dは、入力信号を受信し、この信号により表される音声を生成可能な任意の機器とすることができる。いくつかの場合には、2つ以上のスピーカが望ましい場合がある。例えば、複数のスピーカによって、ステレオタイプの音響効果が可能となり、機器の向きに基づいて最適化される音声の生成が可能になり得る。任意の数のスピーカを、さまざまな実施形態に含むことができる。
SOC10の構成要素の数(及びCPU複合体14内などの、図1に示すものに関する下位構成要素の数)が実施形態によって異なり得ることに留意されたい。各構成要素/下位構成要素の数は、図1に示すよりも多くても少なくてもよい。同様に、SOC10の外部であるが機器5の中にある構成要素の種類及び数は、変動する可能性があり、図1に示されていない他の構成要素(例えば、視覚インタフェースをユーザに提供するタッチディスプレイなどのディスプレイ、ネットワーク構成要素、アンテナ、WiFi又は携帯電話の構成要素などの無線周波構成要素、その他)が含まれてもよい。
次に図2を参照すると、電力を節約するために、SOC10(又は、少なくとも、CPU複合体14及びメモリコントローラ22)の電源が切断されている時間中(例えば、機器5がアイドル状態であるとき)の、機器5のオーディオフィルタ回路24及び特定の他の部分、の一実施形態の動作を例示するフローチャートが、示されている。理解を容易にするために、特定の順序でブロックを示しているが、他の順序を用いてもよい。ブロックは、オーディオフィルタ回路24内の組み合わせ論理回路によって、並列に(図2に明示的に並列に示されているブロック及び場合によっては他のブロックを含む)実行することができる。ブロック、ブロックの組み合わせ、及び/又はフローチャート全体は、複数のクロックサイクルにわたって、パイプライン化することができる。ブロックは、いくつかの実施形態では、ソフトウェアを実行するプロセッサによって実施されてもよく、又はブロックは、固定されたハードウェア、又はそれらの任意の組み合わせであってもよい。オーディオフィルタ回路24は、図2に示す動作を実行するように構成することができる。
オーディオフィルタ回路24は、オーディオコーデック16から、サンプルバッファ30の中に、1つ以上のオーディオサンプルを受信し(ブロック40)、機器5の音声コマンドモードを有効化するために、キーワード/フレーズ/音声として使用される所定のパターンと、サンプルを比較する(ブロック42)ことができる。一致がない場合には(判断ブロック44の「いいえ」の脚)、オーディオフィルタ回路24は、サンプルバッファ30にサンプルを受信し、サンプルを比較し続けることができる。サンプルバッファ30が一杯になると、サンプルバッファ30は、最も古いサンプルを新しいサンプルで上書きしてもよい。即ち、サンプルのN個(Nは正の整数)のエントリを有するサンプルバッファ30は、任意の所定の時刻に、最新のN個のサンプルを有することができる。
一致(判断ブロック44の「はい」の脚)の検出に応じて、オーディオフィルタ回路24は、CPU複合体14及びメモリコントローラ22の電源が投入されることを要求する(ブロック46)ように構成してもよい。この要求は、実装に応じて、PMU20か、PMGR28か、又は両者の組み合わせに送信することができる。前述したように、他の実施形態では、メモリコントローラ22だけの電源を投入することができる。あるいは、メモリコントローラ22の電源を最初に投入し、続いて、CPU複合体14の電源を投入してもよい。CPU複合体14と並行した、メモリコントローラ22(及びファブリック27)の電源投入が、投入中に、電流の許容量を超える(いわゆる「突入電流」)可能性を有する場合に、かかる時間をずらした電源投入を使用することができる。
メモリコントローラ22が電源投入され、オーディオフィルタ回路24からのメモリコントローラパラメータ34Bを、メモリコントローラ22内のパラメータ34Aに復元する(ブロック48)ことができる。パラメータ34Bが、(メモリコントローラ22の電源を切断する前に)メモリコントローラ22で使用していた最新のパラメータ34Aのシャドウである場合、そのパラメータは、「復元」することができる。上述したように、別の実施形態では、パラメータ34Bは、メモリ12への正常なアクセスを可能にはするが最大性能のために最適化されていない一般的な「既知の良好な」パラメータのセットとしてもよい。この場合、パラメータを「復元する」とは、パラメータ34Aとして、この一般的なパラメータ34Bを設定することをいう。続いて、メモリコントローラ22は、メモリ12向けにトレーニングされる場合があり、パラメータを修正することができる。ある実施形態では、オーディオフィルタ回路24は、一致したサンプル及び後続サンプルを、サンプルバッファ30から、メモリコントローラ22を介して、メモリ12に書き込み、動作がCPU複合体14によって終了されるまで、サンプルの書き込みを継続することができる(ブロック50)。
更に、CPU複合体14のプロセッサが電源投入され、リセットされた後に、オペレーティングシステムでブートすることができる(ブロック52)。CPU複合体14上で実行するオペレーティングシステムは、メモリ12に記憶されたサンプルを処理し、キーワード/フレーズ/音声が確かに検出されたことを確認し、ユーザの要求が何であるかを判断することができる。機器5は、コマンド/要求(ブロック54)の実行に取りかかることができる。
オペレーティングシステムのブートは、SOC10のさまざまな構成要素を試験しプログラムすることを含むので、メモリコントローラ22の電源投入及び復元と比較して、時間を要するタスクとなる恐れがある。オペレーティングシステムは、ブート処理の早い段階で、ブートの理由が、キーワード/フレーズ/音声の検出によるか否かをチェックするように設計することができ、検出を検証するために、少なくとも、キーワード/フレーズ/音声を表すサンプルを処理してもよい。オペレーティングシステムは、オーディオフィルタ回路24による検出が誤りであったと判断した場合には、オペレーティングシステムはブート処理を中断し、機器5をアイドル状態に戻す(CPU複合体14及びメモリコントローラ22の電源をオフにする)ことができる。
フローチャートの一部は、低電力クロック(図2の水平な点線56より上)で動作するオーディオフィルタ回路によって実行され、残りの部分(点線56より下)は高品質クロックで実行されてもよい。低電力クロックから高品質クロックへの実際の遷移は、高品質クロックが利用可能になる(例えば、PLL38がロックされ、周波数が安定しているなど)と発生し得る。したがって、実際の遷移は、例えば、プロセッサのリセット(ブロック52)及びメモリパラメータの復元(ブロック48)の最中に起こり得る。
図3は、発振器36、PLL38、mux62、及び制御回路60を例示するブロック図である。mux62は、PLL38及び発振器36のクロック出力に接続され、フィルタクロック(フィルタ回路24用のクロック)に接続された出力を有する。制御回路は、mux62のためのmux選択制御部に接続され、PLL38から出力されるクロックレディ(Clk_Rdy)信号に接続される。
制御回路60及びmux62は、いずれの方向においても、PLLクロックと発振器クロックとの間で不具合なく遷移することができる。PLLクロックが再び利用可能になった場合、制御回路60は、PLLがロックしてPLL38によって出力される高品質クロックが安定していることを示すClk_Rdy信号のアサートを受信することができる。制御回路60は、双方のクロックを確実に低状態にするように構成することができ、続いて選択制御を発振器36からPLL38へ切り替えるように構成することができる。高品質クロックの次の立ち上がりエッジが発生し、続いてフィルタクロックは高品質クロックに追従することができる。
上記動作は、図4のフローチャートに例示されている。理解を容易にするために、特定の順序でブロックを示しているが、他の順序を用いてもよい。ブロックは、制御回路60内の組み合わせ論理回路によって、並列に実行されてもよい。ブロック、ブロックの組み合わせ、及び/又はフローチャート全体は、複数のクロックサイクルにわたって、パイプライン化することができる。制御回路60は、図4に示す動作を実行するように構成することができる。クロックレディアサートがPLL38から受信された場合(判定ブロック64、「はい」の脚)、発振器回路36からの発振器クロックとPLL38からのPLLクロックの双方が低状態である(判定ブロック66、「はい」の脚)場合、制御回路60は、mux62を介してPLLクロック(高品質クロック)を選択するように構成することができる(ブロック68)。
図5は、オーディオフィルタ回路によってキャプチャされたオーディオサンプルがメモリに書き込まれた後のメモリ12を示すブロック図である。図5に示すように、サンプルは、「Hey Siri」のキーフレーズ(又は、検証が完了していない場合にキーフレーズと思われる)を形成するサンプル82、並びにフレーズの残りの部分を形成するサンプル84を含む。サンプルの上の中括弧で示されるように、サンプル82及び(高品質クロックが利用可能になる前にキャプチャされた)最初のサンプル84のうちの1つ以上は、低電力クロックでキャプチャされ、残りのサンプル84は、高品質クロックでキャプチャすることができる。サンプル82及び84の下に中括弧で示すように、CPUは、サンプルが異なるクロックを使用してキャプチャされたとしても、サンプル82と84の組み合わせを全体として(即ち、単一の連続フレーズとして)処理することができる。
次に図6に移ると、機器5の一実施形態の動作を例示するタイミング図が示されている。図6において、時間は左から右へ増加する。タイミング図の開始において、左側で、機器5はアイドル状態の可能性があり、したがって、オーディオフィルタ回路24はオーディオサンプルを監視し得る。メモリコントローラ22及びCPU複合体14などのSOC10の他の部分の電源は、切断されている可能性がある。タイミング図の上方を横切る文は、ユーザにより発話されてもよく、この例ではキーフレーズは、「Hey Siri」とすることができる。しかし、さまざまな実施形態では、任意のキーワード/フレーズを使用することができる。
オーディオフィルタ回路24によって、マイクロフォンに応じて生成されたオーディオサンプルが処理されるときに、オーディオフィルタ回路24は、キーフレーズ(参照数字70)を検出することができる。この検出に応じて、オーディオフィルタ回路24は、メモリコントローラ22及びCPU複合体14の電源投入を要求することができる(参照数字72及び74)。オーディオフィルタ回路24は、パラメータ34Bからメモリコントローラ22を復元することができ、これによって、メモリコントローラ22は、書き込み動作を受け入れるように利用可能となり得る。続いて、オーディオフィルタ回路24は、パターンと一致するオーディオサンプル及び後続のサンプル(「一番近いピザ屋はどこ?」を表す)をメモリに書き込む(参照数字76)ことができる。
一方、CPUは電源投入され、リセットされ、オペレーティングシステムをブートする(参照数字74及び78)ことができる。図6に例示されるように、オーディオサンプルの処理を開始することができる(参照数字80)ようになる時点までの、オペレーティングシステムのブートは、メモリコントローラ22の復元よりも時間を要する恐れがある。メモリコントローラによって受信されキャプチャされるサンプル、例えば、キーワードの直後のワード(単数又は複数)は、ブート後のワードだけをオペレーティングシステムがキャプチャしていた場合には、キャプチャされることはない。したがって、ユーザによる連続的な発話をキャプチャすることができ、(ユーザに対して)より自然なインタフェースが利用可能となり得る。前述のように、いくつかの実施形態では、メモリコントローラ22と並列にCPUの電源を投入しなくてもよい。
上述の開示内容が十分に理解されれば、多くの変形及び修正が当業者にとって明らかになるであろう。以下の請求項はこのような変形及び修正を全て受け入れるように解釈すべきであることが意図されている。

Claims (20)

  1. 集積回路の第1の構成要素内のオーディオサンプルを、前記集積回路の残りの部分の電源が切断されている時間中に監視することであって、前記第1の構成要素は、前記時間中に電源がオンされ、かつ第1のクロックに従って動作している、ことと、
    前記第1の構成要素によって前記オーディオサンプル内のキーフレーズを検出することと、
    前記キーフレーズの出に応じて前記集積回路の少なくとも一部分の電源を投入することと、
    前記集積回路内で使用される第2のクロックが利用可能かどうか判定することであって、前記第2のクロックは、前記第1のクロックの対応する特性よりも、前記集積回路に対して高い性能/品質を示す少なくとも1つの特性を有する、ことと、
    前記第2のクロックが利用可能であると判定された場合、切り替え中に閾値数を超えるオーディオサンプルが失われたり破損されたりすることがないことを保証しながら、前記第1の構成要素において前記第2のクロックに切り替えることと、
    前記第1のクロックに従って動作する前記第1の構成要素によって、第1の複数の前記オーディオサンプルをキャプチャすることと、
    前記第2のクロックに従って動作する前記第1の構成要素によって、第2の複数の前記オーディオサンプルをキャプチャすることと、
    前記第1の複数の前記オーディオサンプルと前記第2の複数の前記オーディオサンプルとを、前記集積回路が接続されたメモリに書き込むことと、
    前記メモリからの前記第1の複数の前記オーディオサンプルと前記第2の複数の前記オーディオサンプルとを単一のフレーズとして処理することと、
    を含む方法。
  2. 前記少なくとも1つの特性は、位相雑音を含む、請求項1に記載の方法。
  3. 前記少なくとも1つの特性は、周波数精度を含む、請求項1に記載の方法。
  4. 前記少なくとも1つの特性は、デューティサイクルを含む、請求項1に記載の方法。
  5. 前記少なくとも1つの特性は、周期ジッタを含む、請求項1に記載の方法。
  6. 前記処理することは、前記キーフレーズの検出に応じて電源が投入される前記集積回路の前記一部分の一部であるプロセッサによって実行される、請求項に記載の方法。
  7. 前記電源を投入することは、前記プロセッサ上でオペレーティングシステムをブートすることを含む、請求項に記載の方法。
  8. 前記集積回路内の発振器において前記第1のクロックを生成することを更に含む、請求項1に記載の方法。
  9. 前記集積回路内の位相ロックループ(PLL)において前記第2のクロックを生成することを更に含む、請求項に記載の方法。
  10. 集積回路であって、
    1つ以上のプロセッサと、
    前記1つ以上のプロセッサに接続された第1の回路と、
    を備え、前記第1の回路は、
    前記1つ以上のプロセッサが電源を切断されている時間中に、電源が投入されたままであり、
    前記1つ以上のプロセッサが電源を切断されている時間中に、1つ以上のオーディオ入力デバイスによってキャプチャされた第1の複数のオーディオサンプルを受信し、ここで、前記第1の回路は、前記1つ以上のプロセッサが電源を切断されている前記時間中に第1のクロックに従って動作し、
    前記第1の複数のオーディオサンプル内の所定のパターンを検出し、
    前記所定のパターンの検出に応じて、前記1つ以上のプロセッサの電源を投入させ、ここで、前記電源の投入に応じて、第2のクロックが有効化され、
    前記第2のクロックが利用可能になったことに応じて、閾値数を超えるオーディオサンプルを欠落させることなしに前記第2のクロックに切り替え、
    前記第2のクロックに従って動作しながら、前記1つ以上のオーディオ入力デバイスによってキャプチャされた第2の複数のオーディオサンプルを受信し、
    前記第1の複数のオーディオサンプルと前記第2の複数のオーディオサンプルとを、前記集積回路が接続されたメモリに書き込み、
    前記1つ以上のプロセッサは、前記メモリからの前記第1の複数のオーディオサンプルと前記第2の複数のオーディオサンプルとを単一のフレーズとして処理するように構成される、
    集積回路。
  11. 前記所定のパターンは、1つ以上の単語の口頭による発語を含む音声を表す、請求項10に記載の集積回路。
  12. 前記第1の回路に接続されたメモリコントローラを更に備え、前記第1の回路は、前記電源の投入に応じた動作のために前記メモリコントローラをプログラムするための1つ以上のメモリコントローラパラメータを、前記メモリコントローラに提供するように構成されている、請求項10に記載の集積回路。
  13. 前記第1の回路は、前記第1の複数の前記オーディオサンプルと、前記電源の投入中及び投入後に受信された第2の複数のオーディオサンプルと、を記憶するように構成されたバッファを含、請求項10に記載の集積回路。
  14. 前記第2のクロックは、前記第1のクロックよりも使用中の位相雑音が小さい、請求項10に記載の集積回路。
  15. 前記第2のクロックは、前記第1のクロックよりも50%のデューティサイクルに近い、請求項10に記載の集積回路。
  16. 前記第2のクロックの周期ジッタは、前記第1のクロックの前記周期ジッタよりも小さい、請求項10に記載の集積回路。
  17. 前記第2のクロックの周波数精度は、前記第1のクロックの前記周波数精度よりも高い、請求項10に記載の集積回路。
  18. オーディオ入力デバイスと、
    前記オーディオ入力デバイスに接続され、かつ前記オーディオ入力デバイスによって検出された音声からオーディオサンプルを生成するように構成されたオーディオ符号器/復号器(コーデック)と、
    請求項10に記載の集積回路と、
    前記メモリと、
    備えるシステム。
  19. 前記集積回路は、前記第1のクロックを供給するオンチップ発振器と、前記第2のクロックを供給する位相ロックループとを含む、請求項18に記載のシステム。
  20. 1つ以上のプロセッサによって実行可能な命令を有するコンピュータプログラムであって、前記命令は、前記1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに請求項1から9のいずれか1項に記載の方法を実行させる、コンピュータプログラム。
JP2017542473A 2015-02-12 2015-12-17 常時オンの構成要素におけるクロック切り替え Active JP6401870B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/621,093 US9653079B2 (en) 2015-02-12 2015-02-12 Clock switching in always-on component
US14/621,093 2015-02-12
PCT/US2015/066310 WO2016130212A1 (en) 2015-02-12 2015-12-17 Clock switching in always-on component

Publications (2)

Publication Number Publication Date
JP2018513397A JP2018513397A (ja) 2018-05-24
JP6401870B2 true JP6401870B2 (ja) 2018-10-10

Family

ID=56615107

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017542473A Active JP6401870B2 (ja) 2015-02-12 2015-12-17 常時オンの構成要素におけるクロック切り替え

Country Status (7)

Country Link
US (2) US9653079B2 (ja)
EP (1) EP3257045B1 (ja)
JP (1) JP6401870B2 (ja)
KR (1) KR101994569B1 (ja)
CN (1) CN107210037B (ja)
TW (1) TWI637321B (ja)
WO (1) WO2016130212A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9653079B2 (en) * 2015-02-12 2017-05-16 Apple Inc. Clock switching in always-on component
BR112017021673B1 (pt) 2015-04-10 2023-02-14 Honor Device Co., Ltd Método de controle de voz, meio não-transitório legível por computador e terminal
US10651827B2 (en) * 2015-12-01 2020-05-12 Marvell Asia Pte, Ltd. Apparatus and method for activating circuits
US20180025731A1 (en) * 2016-07-21 2018-01-25 Andrew Lovitt Cascading Specialized Recognition Engines Based on a Recognition Policy
US10748531B2 (en) * 2017-04-13 2020-08-18 Harman International Industries, Incorporated Management layer for multiple intelligent personal assistant services
US10916252B2 (en) 2017-11-10 2021-02-09 Nvidia Corporation Accelerated data transfer for latency reduction and real-time processing
KR102629385B1 (ko) * 2018-01-25 2024-01-25 삼성전자주식회사 바지-인 관련 직접 경로를 지원하는 저전력 보이스 트리거 시스템을 포함하는 애플리케이션 프로세서, 이를 포함하는 전자 장치 및 그 동작 방법
US10861462B2 (en) * 2018-03-12 2020-12-08 Cypress Semiconductor Corporation Dual pipeline architecture for wakeup phrase detection with speech onset detection
US11250840B1 (en) * 2018-04-09 2022-02-15 Perceive Corporation Machine-trained network detecting context-sensitive wake expressions for a digital assistant
DE102018207280A1 (de) * 2018-05-09 2019-11-14 Robert Bosch Gmbh Verfahren und Vorrichtung zur luftschallakustischen Überwachung eines Außen- und/oder eines Innenraums eines Fahrzeugs, Fahrzeug sowie computerlesbares Speichermedium
CN110286741B (zh) * 2019-06-28 2020-12-29 深圳忆联信息系统有限公司 一种固态硬盘片上系统功耗管理方法及其装置
US11507158B2 (en) * 2019-07-03 2022-11-22 Advanced Micro Devices, Inc. Electrical design current throttling
CN112924850A (zh) * 2021-01-27 2021-06-08 胜达克半导体科技(上海)有限公司 一种应用于自动测试机soc芯片并行测试切换方法
CN113436643B (zh) * 2021-06-25 2024-05-24 平安科技(深圳)有限公司 语音增强模型的训练及应用方法、装置、设备及存储介质

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2704678B2 (ja) 1991-03-07 1998-01-26 国際電気株式会社 音声符号化処理回路
US5615296A (en) * 1993-11-12 1997-03-25 International Business Machines Corporation Continuous speech recognition and voice response system and method to enable conversational dialogues with microprocessors
JP3674990B2 (ja) * 1995-08-21 2005-07-27 セイコーエプソン株式会社 音声認識対話装置および音声認識対話処理方法
US5774841A (en) * 1995-09-20 1998-06-30 The United States Of America As Represented By The Adminstrator Of The National Aeronautics And Space Administration Real-time reconfigurable adaptive speech recognition command and control apparatus and method
US5619296A (en) * 1996-05-30 1997-04-08 Eastman Kodak Company Electromagnetic mechanism for providing a hard stop for moving blade aperture systems
US6028460A (en) * 1998-06-08 2000-02-22 Comtech Communications Corp. Hybrid analog-digital phase lock loop multi-frequency synthesizer
JP2003023252A (ja) 2001-07-10 2003-01-24 Ibiden Co Ltd 多層プリント配線板
US20020130725A1 (en) * 2001-03-16 2002-09-19 Han Jung Hee Jitter clean-up circuit for communications applications
US6408396B1 (en) * 2001-05-04 2002-06-18 Intel Corporation Method and apparatus for supporting wake-on voice and wake-on MIC technology
JP4436583B2 (ja) 2001-12-19 2010-03-24 富士フイルム株式会社 デジタルカメラ
US7151813B2 (en) * 2002-07-17 2006-12-19 Intel Corporation Techniques to reduce transmitted jitter
JP2004253056A (ja) * 2003-02-20 2004-09-09 Sanyo Electric Co Ltd デコード装置
US7124309B2 (en) * 2003-07-21 2006-10-17 Intel Corporation Method, system, and apparatus for an efficient power dissipation
US7418392B1 (en) * 2003-09-25 2008-08-26 Sensory, Inc. System and method for controlling the operation of a device by voice commands
JP2006127466A (ja) * 2004-09-29 2006-05-18 Denso Corp マイクロコンピュータ
US7911239B2 (en) * 2006-06-14 2011-03-22 Qualcomm Incorporated Glitch-free clock signal multiplexer circuit and method of operation
US8117475B2 (en) 2006-12-15 2012-02-14 Microchip Technology Incorporated Direct memory access controller
JP4971840B2 (ja) * 2007-03-13 2012-07-11 ルネサスエレクトロニクス株式会社 クロック生成回路、クロック選択回路、及び半導体集積回路
US20090292934A1 (en) * 2008-05-22 2009-11-26 Ati Technologies Ulc Integrated circuit with secondary-memory controller for providing a sleep state for reduced power consumption and method therefor
US8533504B2 (en) * 2008-05-29 2013-09-10 International Business Machines Corporation Reducing power consumption during execution of an application on a plurality of compute nodes
US8661285B2 (en) * 2008-06-06 2014-02-25 Uniquify, Incorporated Dynamically calibrated DDR memory controller
US8078800B2 (en) * 2009-06-05 2011-12-13 Apple Inc. Dynamic operating point modification in an integrated circuit
US20110291801A1 (en) * 2010-06-01 2011-12-01 Sommer William R Personal warning device
US9483103B2 (en) * 2010-10-22 2016-11-01 Hewlett-Packard Development Company, L.P. Process state of a computing machine
JP5681449B2 (ja) * 2010-11-02 2015-03-11 ルネサスエレクトロニクス株式会社 情報処理装置及び携帯端末
WO2012140311A1 (en) * 2011-04-15 2012-10-18 Nokia Corporation Method and apparatus for spectrum use
US8768707B2 (en) * 2011-09-27 2014-07-01 Sensory Incorporated Background speech recognition assistant using speaker verification
US9281827B2 (en) * 2011-11-21 2016-03-08 Cirrus Logic International Semiconductor Ltd. Clock generator
EP2788979A4 (en) * 2011-12-06 2015-07-22 Intel Corp LOW POWER SPEECH RECOGNITION
US9564131B2 (en) * 2011-12-07 2017-02-07 Qualcomm Incorporated Low power integrated circuit to analyze a digitized audio stream
CN102622079B (zh) * 2012-02-25 2015-02-04 华为终端有限公司 一种休眠方法、唤醒方法和移动终端设备
US9838810B2 (en) * 2012-02-27 2017-12-05 Qualcomm Technologies International, Ltd. Low power audio detection
US9552037B2 (en) * 2012-04-23 2017-01-24 Google Inc. Switching a computing device from a low-power state to a high-power state
US9117449B2 (en) 2012-04-26 2015-08-25 Nuance Communications, Inc. Embedded system for construction of small footprint speech recognition with user-definable constraints
KR20130133629A (ko) * 2012-05-29 2013-12-09 삼성전자주식회사 전자장치에서 음성명령을 실행시키기 위한 장치 및 방법
TWI492545B (zh) * 2012-09-14 2015-07-11 Univ Nat Chiao Tung 具有增益校正之鎖相迴路、用於鎖相迴路之增益量測方法、校正方法及抖動量測方法
US20140122078A1 (en) * 2012-11-01 2014-05-01 3iLogic-Designs Private Limited Low Power Mechanism for Keyword Based Hands-Free Wake Up in Always ON-Domain
US9794736B2 (en) * 2012-12-21 2017-10-17 Qualcomm Incorporated Low power always-on determination of indoor versus outdoor state
US20140218372A1 (en) * 2013-02-05 2014-08-07 Apple Inc. Intelligent digital assistant in a desktop environment
DE212014000045U1 (de) * 2013-02-07 2015-09-24 Apple Inc. Sprach-Trigger für einen digitalen Assistenten
US9542933B2 (en) * 2013-03-08 2017-01-10 Analog Devices Global Microphone circuit assembly and system with speech recognition
US9335809B2 (en) * 2013-03-15 2016-05-10 Seagate Technology Llc Volatile memory storing system data during low power mode operation and monitoring the voltage supplied to the memory during low power mode
US9712923B2 (en) * 2013-05-23 2017-07-18 Knowles Electronics, Llc VAD detection microphone and method of operating the same
US20140358552A1 (en) * 2013-05-31 2014-12-04 Cirrus Logic, Inc. Low-power voice gate for device wake-up
CN110096253B (zh) 2013-07-11 2022-08-30 英特尔公司 利用相同的音频输入的设备唤醒和说话者验证
US9756699B2 (en) * 2013-08-30 2017-09-05 Avago Technologies General Ip (Singapore) Pte. Ltd Low-power data acquisition system and sensor interface
CN103561175B (zh) * 2013-11-05 2015-04-01 广东欧珀移动通信有限公司 一种使用移动终端进行语音唤醒的方法及其装置
US9209783B2 (en) * 2014-02-05 2015-12-08 Dsp Group Ltd. Efficient drift avoidance mechanism for synchronous and asynchronous digital sample rate converters
US9348358B2 (en) * 2014-04-18 2016-05-24 Fujitsu Limited Clock multiplication and distribution
US9252792B2 (en) * 2014-05-12 2016-02-02 Texas Instruments Incorporated Tunable frequency-to-voltage controlled oscillation
US9653079B2 (en) * 2015-02-12 2017-05-16 Apple Inc. Clock switching in always-on component

Also Published As

Publication number Publication date
CN107210037B (zh) 2020-10-02
US9653079B2 (en) 2017-05-16
CN107210037A (zh) 2017-09-26
EP3257045A4 (en) 2018-08-15
TW201638776A (zh) 2016-11-01
US20160240193A1 (en) 2016-08-18
EP3257045B1 (en) 2019-06-05
US20170213557A1 (en) 2017-07-27
KR20170107492A (ko) 2017-09-25
TWI637321B (zh) 2018-10-01
US9928838B2 (en) 2018-03-27
EP3257045A1 (en) 2017-12-20
KR101994569B1 (ko) 2019-06-28
JP2018513397A (ja) 2018-05-24
WO2016130212A1 (en) 2016-08-18

Similar Documents

Publication Publication Date Title
JP6401870B2 (ja) 常時オンの構成要素におけるクロック切り替え
US11862173B2 (en) Always-on audio control for mobile device
US20130064025A1 (en) Dynamic data strobe detection
US9646607B2 (en) Managing wake-on-voice buffer quality based on system boot profiling
TW201602791A (zh) 具有重組態系統單晶片並支援儘記憶體通訊模式之常開處理器之系統單晶片
US20160034219A1 (en) System and method of calibration of memory interface during low power operation
US9659616B2 (en) Configuration fuse data management in a partial power-on state
KR20140035845A (ko) 에너지 보존을 갖는 연속적인 데이터 전달
US9891853B1 (en) Memory calibration abort

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180823

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180831

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180907

R150 Certificate of patent or registration of utility model

Ref document number: 6401870

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250