(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-15
(45)【発行日】2024-04-23
(54)【発明の名称】半導体装置
(51)【国際特許分類】
H04R 3/00 20060101AFI20240416BHJP
【FI】
H04R3/00
(21)【出願番号】P 2020063933
(22)【出願日】2020-03-31
【審査請求日】2023-01-31
(31)【優先権主張番号】P 2019140350
(32)【優先日】2019-07-30
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】308033711
【氏名又は名称】ラピスセミコンダクタ株式会社
(74)【代理人】
【識別番号】100084995
【氏名又は名称】加藤 和詳
(74)【代理人】
【識別番号】100099025
【氏名又は名称】福田 浩志
(72)【発明者】
【氏名】甲斐 敦浩
【審査官】佐久 聖子
(56)【参考文献】
【文献】特開2004-109541(JP,A)
【文献】特開2001-351366(JP,A)
【文献】特開2014-049973(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04R 3/00- 3/14
H04S 1/00- 7/00
G10K 15/00-15/12
G10H 1/00- 7/12
(57)【特許請求の範囲】
【請求項1】
外部から入力されるシリアルオーディオデータの入力タイミングに合わせて同期信号を生成するタイミング生成部と、
前記同期信号に基づいてメモリから音声データを読出して音声再生処理を行い複数のチャネル情報を出力する再生処理部と、
前記複数のチャネル情報を前記シリアルオーディオデータとミキシングして音声信号を生成するミキシング部と、
を有
し、
前記タイミング生成部は、前記シリアルオーディオデータのチャネル切り替えクロックの立ち上がり又は立下りを検出したタイミングにおいて、基本クロックで値が増加するカウンタの値をカウンタ満了値として保持し、前記カウンタの値が前記カウンタ満了値と一致したタイミングで前記同期信号を生成し、前記カウンタの値をリセットすることを特徴とする半導体装置。
【請求項2】
前記タイミング生成部は、前記シリアルオーディオデータのチャネル切り替えクロックの立ち上がり又は立下りを検出し、検出に応じて前記同期信号を生成する、請求項1に記載の半導体装置。
【請求項3】
前記タイミング生成部は、所定の周期で前記カウンタ満了値を更新する、請求項
1に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、LSI(Large Scale Integration)に内蔵するメモリやLSI外部にあるメモリから音声データを読み出して再生する半導体装置において、I2S(Inter-IC Sound)など外部から入力されるシリアルオーディオ入力データとのミキシングに関する。
【背景技術】
【0002】
図1は、音声信号を出力する半導体装置100の構成例を示す図である。半導体装置100は、
図1に示すように、タイミング生成部110と、再生処理(デコード)部120と、ミキシング部130と、メモリ140とにより構成されている。タイミング生成部110は、半導体装置100内部の基本クロックを使ってカウンタを動作させてサンプリング周期を生成する。例えば、タイミング生成部110は、
図2に示すように任意のカウンタ満了値nを設定して基本クロックをカウントし、n回目の基本クロックの立ち上がりによってカウンタ一致信号を出力することで、その周期に同期した信号(fssync信号)を生成する。半導体装置100の動作としては、
図3に示すように、タイミング生成部110がfssync信号を生成し(1)、再生処理(デコード)部120が、このfssync信号をトリガに再生チャネルを時分割してメモリ140から音声データを読出し(2)、読み出した音声データをデコードし(3)、ミキシング部130が、デコードされた音声データを最終的にミキシングして出力している(4)。
【0003】
半導体装置100が、I2S等のシリアルオーディオデータとのミキシングを行う場合は、
図4のようにメモリ140からの読出し及び再生処理を4チャンネルから2チャンネルに減らし、メモリ読出しによる音声再生を2チャンネル、シリアルオーディオデータ(Lch/Rch)を2チャンネルの、合計4チャンネルでミキシング処理を行う。
【0004】
また、特許文献1は、システムクロックに基づいて生成されたBCLKをLRCLKの立ち上がり又は立ち下りエッジに同期するよう調整するクロック生成装置を開示している。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、I2Sなどを使って入力されたシリアルオーディオデータと、メモリから読み出した音声データとのミキシング再生を行おうとした場合、シリアルオーディオ入力のサンプリング周期とLSI内部で生成するサンプリング周期とにずれが生じると、シリアルオーディオ入力の重複取り込みや取りこぼしによる再生音の音質低下が起こる問題があった。
【0007】
本発明は、上記の点に鑑みてなされたものであり、メモリから読み出した音声データとシリアルオーディオデータとをミキシングする際に、シリアルオーディオデータの重複取り込みや取りこぼしを抑制し再生音の音質向上を可能とする半導体装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の第1態様に係る半導体装置は、外部から入力されるシリアルオーディオデータの入力タイミングに合わせて同期信号を生成するタイミング生成部と、前記同期信号に基づいてメモリから音声データを読出して音声再生処理を行い複数のチャネル情報を出力する再生処理部と、前記複数のチャネル情報を前記シリアルオーディオデータとミキシングして音声信号を生成するミキシング部と、を有する。
【0009】
本発明の第2態様に係る半導体装置は、第1態様に係る半導体装置であって、前記タイミング生成部は、前記シリアルオーディオデータのチャネル切り替えクロックの立ち上がり又は立下りを検出し、検出に応じて前記同期信号を生成する。
【0010】
本発明の第3態様に係る半導体装置は、第1態様に係る半導体装置であって、前記タイミング生成部は、前記シリアルオーディオデータのチャネル切り替えクロックの立ち上がり又は立下りを検出したタイミングにおいて、基本クロックで値が増加するカウンタの値をカウンタ満了値として保持し、前記カウンタの値が前記カウンタ満了値と一致したタイミングで前記同期信号を生成する。
【0011】
本発明の第4態様に係る半導体装置は、第3態様に係る半導体装置であって、前記タイミング生成部は、所定の周期で前記カウンタ満了値を更新する。
【発明の効果】
【0012】
本発明によれば、メモリから読み出した音声データとシリアルオーディオデータとをミキシングする際に、シリアルオーディオデータの入力タイミングに合わせて同期信号を生成することで、シリアルオーディオ入力の重複取り込みや取りこぼしを抑制し再生音の音質向上を可能とする半導体装置を提供することできる。
【図面の簡単な説明】
【0013】
【
図1】従来技術に係る半導体装置100のブロック構成図である。
【
図2】従来技術に係るfssync信号生成のタイムチャートである。
【
図3】従来技術に係る半導体装置100のタイムチャートである。
【
図4】従来技術に係る半導体装置100のタイムチャートである。
【
図5】従来技術に係る半導体装置100の課題を説明する図である。
【
図6】従来技術に係る半導体装置100の課題を説明する図である。
【
図7】本発明の実施の形態に係る半導体装置200のブロック構成図である。
【
図8】本発明の実施の形態に係るfssync信号生成のタイムチャートである。
【
図9】本発明の実施の形態に係る半導体装置200のタイムチャートである。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一または等価な構成要素および部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0015】
まず、I2Sなどを使って外部から入力されるシリアルオーディオデータと、内部のメモリから読み出した音声データとのミキシング再生を行おうとした場合に、シリアルオーディオ入力のサンプリング周期とLSI内部で生成するサンプリング周期のずれが生じる理由を説明する。
【0016】
図5は、外部から入力されるシリアルオーディオデータと、内部のメモリから読み出した音声データとのミキシング再生を説明するタイミングチャートである。LRCLKは、シリアルオーディオデータのチャネルを切り替えるためのクロックである。
図5に示したのは、シリアルオーディオデータの周期(LRCLK周期)が、半導体装置の内部の基本クロックに基づいて生成したfssync信号の周期より長い場合の例である。
【0017】
LRCLK周期の方がfssync信号の周期より長いと、LRCLK周期のパルスの立ち上がりのタイミングと、fssync信号が立ち上がるタイミングとが段々ずれていき、LRCLKの1周期の中にfssync信号が2度立ち上がる場合がありうる。
図5の例では、シリアルオーディオデータのn+3サンプル目において、LRCLKの1周期の中にfssync信号が2度立ち上がっている。
【0018】
このように、LRCLKの1周期の中にfssync信号が2度立ち上がると、シリアルオーディオデータのサンプルの重複取り込みが発生する。
図5の例では、シリアルオーディオデータのn+3サンプル目において、LRCLKの1周期の中にfssync信号が2度立ち上がっているため、半導体装置は、1つ前のシリアルオーディオデータのn+2サンプル目を2回取り込んでしまう。これがサンプルの重複取り込みである。その為、LRCLK周期の方がfssync信号の周期より長いと、音質の劣化が発生する。
【0019】
図6は、シリアルオーディオデータと、メモリから読み出した音声データとのミキシング再生を説明するタイミングチャートである。
図6に示したのは、シリアルオーディオデータの周期(LRCLK周期)が、半導体装置の内部の基本クロックに基づいて生成したfssync信号の周期より短い場合の例である。
【0020】
LRCLK周期の方がfssync信号の周期より短いと、LRCLK周期のパルスの立ち上がりのタイミングと、fssync信号が立ち上がるタイミングとが段々ずれていき、LRCLKの1周期の中にfssync信号が立ち上がらない場合がありうる。
図6の例では、シリアルオーディオデータのn+3サンプル目において、LRCLKの1周期の中にfssync信号が立ち上がっていない。
【0021】
このように、LRCLKの1周期の中にfssync信号が立ち上がらないと、シリアルオーディオデータのサンプルの取りこぼしが発生する。
図6の例では、シリアルオーディオデータのn+3サンプル目において、LRCLKの1周期の中にfssync信号が立ち上がっていないため、半導体装置は、1つ前のシリアルオーディオデータのn+2サンプル目を取り込むことができない。すなわち、半導体装置は、1つ前のシリアルオーディオデータのn+2サンプル目を取りこぼしてしまう。これがサンプルの取りこぼしである。その為、LRCLK周期の方がfssync信号の周期より短いと、長い場合と同様に音質の劣化が発生する。
【0022】
すなわち、I2Sなどを使って外部から入力されるシリアルオーディオデータと、内部のメモリから読み出した音声データとのミキシング再生を行おうとした場合に、LRCLK周期とfssync信号の周期とにずれが生じると、シリアルオーディオデータの重複取り込み又は取りこぼしに起因する音質の劣化が発生する。
【0023】
そこで本件発明者は、上述した点に鑑みて、LRCLK周期とfssync信号の周期とにずれが生じた場合であっても、シリアルオーディオデータの重複取り込み又は取りこぼしを防止して、音質を向上させることができる技術について、鋭意検討を行った。その結果、本件発明者は、以下で説明するように、LRCLK周期とfssync信号の周期とにずれが生じた場合であっても、シリアルオーディオデータの重複取り込み又は取りこぼしを防止して、音質を向上させることができる技術を考案するに至った。
【0024】
図7は、本発明の実施の形態に係る半導体装置200の構成例を示す図である。
図7に示した半導体装置200は、音声信号を出力する。半導体装置200は、
図7に示すように、タイミング生成部210と、再生処理(デコード)部120と、ミキシング部130と、メモリ140とにより構成されている。
【0025】
本実施の形態に係る半導体装置200では、I2Sなどを使って外部から入力されるシリアルオーディオデータとのミキシングを行う場合には、シリアルオーディオデータのLRCLKのエッジに同期した信号をサンプリング周期に同期した信号として使用して、その信号をトリガにメモリ140に格納された音声データの再生を行い、シリアルオーディオデータとのミキシングを行うものである。
【0026】
タイミング生成部210は、I2Sなどを使って外部から入力されるシリアルオーディオデータの入力タイミングに合わせて、基本クロックを使用してfssync信号を生成する。例えば、タイミング生成部210は、シリアルオーディオデータのLRCLKのエッジ、すなわちLRCLKの立ち上がり又は立ち下がりを検出し、検出したタイミングに応じて、再生処理(デコード)部120がメモリ140から音声データを読出すためのfssync信号を生成する。
【0027】
再生処理(デコード)部120は、タイミング生成部210が生成したfssync信号の立ち上がりのタイミングで、メモリ140に格納された音声データを読出し、読み出した音声データをデコードしてミキシング部130に出力する。本実施形態では、再生処理(デコード)部120は、メモリ140から2チャンネル分の音声データを読出し、デコードする。
【0028】
ミキシング部130は、再生処理(デコード)部120がデコードした音声データと、左右2チャンネル(Lch/Rch)のシリアルオーディオデータとのミキシングを行う。本実施形態では、ミキシング部130は、2チャンネルの音声データと2チャンネルのシリアルオーディオデータとをミキシングする。
【0029】
図8は、本発明の実施の形態に係るfssync信号生成のタイムチャートである。本実施の形態に係る半導体装置200は、LRCLKの立ち上がりを検出し、LRCLKの立ち上がりのタイミングで立ち上がるようなfssync信号を生成する。
図8の例では、LRCLKの立ち上がりのタイミングで立ち上がるようなfssync信号が生成されているが、タイミング生成部210は、LRCLKの立ち下がりのタイミングで立ち上がるようなfssync信号を生成してもよい。
【0030】
半導体装置200は、fssync信号の立ち上がりに応じてメモリ140から2チャンネル分の音声データを読出し、デコードする。そして半導体装置200は、デコードした2チャンネルの音声データと、2チャンネルのシリアルオーディオデータとをミキシングする。
【0031】
図9は、本発明の実施の形態に係る半導体装置200のタイムチャートである。タイミング生成部210は、LRCLKの立ち上がりを検出すると、内部の基本クロックに同期してLRCLKエッジ検出信号を“H”とする。タイミング生成部210は、LRCLKエッジ検出信号を“H”としたタイミングで、サンプリング周期用カウンタをクリアし、fssync信号を“H”にする。内部回路は、すなわち再生処理(デコード)部120及びミキシング部130は、fssync信号が“H”になったタイミングをトリガに、通常通りにメモリ140から音声データを読み出して、再生処理及びミキシング処理を行う。なお、
図9に示したタイムチャートでは、カウンタ一致信号は“L”固定である。
【0032】
以上のように、本実施の形態によれば、LRCLKの立ち上がりを検出し、LRCLKの立ち上がりのタイミングで立ち上がるようなfssync信号を生成することにより、シリアルオーディオデータの入力にLSIを同期させることができる。すなわち、本実施の形態によれば、シリアルオーディオデータの入力にLSIを同期させることができるため、シリアルオーディオデータの重複取り込み又は取りこぼしを防ぐことができる。
【0033】
図8に示した半導体装置200のタイムチャートでは、2チャンネルの音声データと2チャンネルのシリアルオーディオデータとをミキシングしていたが、本発明は係る例に限定されるものではない。ミキシングされるシリアルオーディオデータはLch又はRchのいずれか一方であってもよい。ミキシングされるシリアルオーディオデータはLch又はRchのいずれか一方である場合、半導体装置200は、最大3チャンネルの音声データと1チャンネルのシリアルオーディオデータとをミキシングする。
【0034】
また、
図8に示した半導体装置200のタイムチャートでは、メモリ140からチャネル1及びチャネル2の音声データが読み出されてシリアルオーディオデータとミキシングされていたが、メモリ140から読み出される音声データのチャネルは、チャンネル1及びチャンネル2に限定されるものではない。
【0035】
また、
図9に示した半導体装置200のタイムチャートでは、LRCLKの立ち上がりをLRCLKの毎周期で検出し、その立ち上がりのタイミングで立ち上がるようなfssync信号が生成されていたが、本発明は係る例に限定されるものではない。例えば、タイミング生成部210は、LRCLKの立ち上がり又は立ち下がりを検出したタイミングでのサンプリング周期用カウンタの値をカウンタ満了値として保持し、カウンタの値がカウンタ満了値と一致したタイミングで立ち上がるようなfssync信号を生成してもよい。すなわち、タイミング生成部210は、カウンタの値がカウンタ満了値と一致したタイミングでカウンタ一致信号を“H”にして、カウンタ一致信号が“H”になったタイミングで立ち上がるようなfssync信号を生成してもよい。サンプリング周期用カウンタの値がカウンタ満了値と一致したタイミングで立ち上がるようなfssync信号を生成することにより、半導体装置200は、LRCLKの立ち上がりを毎周期検出する必要がなくなる。
【0036】
なお、タイミング生成部210は、LRCLKの立ち上がり又は立ち下がりを検出したタイミングでのサンプリング周期用カウンタの値をカウンタ満了値として保持する場合、所定の周期でカウンタ満了値を更新してもよい。例えば、タイミング生成部210は、LRCLK周期の10周期に一度、LRCLKの立ち上がりを検出して、カウンタ満了値を更新してもよい。半導体装置200は、周期的にLRCLKの立ち上がりを検出してカウンタ満了値を更新することで、音声データとシリアルオーディオデータとを、より精度良くミキシングすることができる。
【0037】
LRCLKのサンプリング周期が内部の基本クロックのサンプリング周期よりも短い場合は、半導体装置200は、メモリの音声処理およびミキシング処理が完了するように、メモリ読出し、再生処理、ミキシング処理をLRCLKのずれよりも充分早く完了する回路構成にすれば良い。具体的には、LRCLKのサンプリング周期が内部の基本クロックのサンプリング周期よりも速い場合は、次のfssync信号までのWait区間を充分空けることで処理が間に合うように、LRCLKの周期をLSIとして規定すればよい。
【0038】
LRCLKのサンプリング周期が内部の基本クロックのサンプリング周期よりも長い場合は、半導体装置200は、内部の処理が完了したところでWait区間を開始し、次のシリアルオーディオの入力タイミングで次のサンプルの処理を開始するため、特に問題は生じない。
【0039】
このように、本実施の形態に係る半導体装置200は、LRCLKの立ち上がり毎に内部の処理を開始する構成とすることにより、LRCLK周期とfssync信号の周期とにずれが生じた場合であっても、非同期のシリアルオーディオ入力との同期を取ることが可能となる。
【0040】
なお、本発明は、音源やサウンドジェネレータなどサンプリング周期に同期して音声再生する機能を持つ装置とI2S等のシリアルオーディオデータの入力とのミキシングなどにおいても適用可能である。
【符号の説明】
【0041】
100、200 半導体装置
110、210 タイミング生成部
120 再生処理(デコード)部
130 ミキシング部
140 メモリ