JP4760052B2 - 伝送制御装置およびサンプリング周波数変換装置 - Google Patents

伝送制御装置およびサンプリング周波数変換装置 Download PDF

Info

Publication number
JP4760052B2
JP4760052B2 JP2005049510A JP2005049510A JP4760052B2 JP 4760052 B2 JP4760052 B2 JP 4760052B2 JP 2005049510 A JP2005049510 A JP 2005049510A JP 2005049510 A JP2005049510 A JP 2005049510A JP 4760052 B2 JP4760052 B2 JP 4760052B2
Authority
JP
Japan
Prior art keywords
data amount
remaining data
current
amount
vector
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.)
Expired - Fee Related
Application number
JP2005049510A
Other languages
English (en)
Other versions
JP2006238044A (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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2005049510A priority Critical patent/JP4760052B2/ja
Priority to US11/355,638 priority patent/US7570727B2/en
Priority to KR1020060017749A priority patent/KR100684245B1/ko
Priority to CNB2006100580286A priority patent/CN100521532C/zh
Publication of JP2006238044A publication Critical patent/JP2006238044A/ja
Application granted granted Critical
Publication of JP4760052B2 publication Critical patent/JP4760052B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)
  • Communication Control (AREA)

Description

この発明は、ジッタ吸収機能を有する伝送制御装置およびこの伝送制御装置を用いたサンプリング周波数変換装置に関する。
デジタルオーディオ等の分野では、各々独立したクロックに同期して動作する2つの機器間でデータの授受が行われることが多い。そのような場合、前段の機器では同機器のクロックに同期してデータ出力が行われ、後段の機器では同機器のクロックに同期してデータ入力が行われるが、両機器のクロックはジッタを有しているのが一般的である。そこで、両機器間にジッタ吸収のためのFIFO(First-In First-Out;先入れ先出し方式のバッファ)が介挿され、データ伝送はこのFIFOを介して行われることが多い。また、このようなFIFOの使用に加えて、クロックのジッタに起因してFIFOがオーバフローあるいはアンダフローを起こさぬようFIFO内の読み出し未了の残存データ量を監視し、残存データ量が適正値よりも増加した場合には、例えばFIFOにおけるデータ出力速度を増加させ、データ残量が適正値よりも低下した場合には、例えばFIFOにおけるデータ出力速度を低下させるPLL(Phase Locked Loop)制御が行われる場合もある。また、デジタルオーディオ等の分野では、様々なサンプリング周波数に対応した機器が提供されているため、サンプリング周波数の異なる機器同士が接続される場合も多い。そのような場合、例えば前段の機器から出力されるサンプルデータのサンプリング周波数を後段の機器のサンプリング周波数に合わせるサンプリング周波数変換装置が用いられる。特許文献1は、上述したFIFOおよびPLL制御をサンプリング周波数変換装置に適用した技術を開示している。
特開平11−55075号公報
ところで、上述した従来の技術においては、FIFO内の残存データ量の適正値からの差分に応じてFIFOにおけるデータ出力速度またはデータ入力速度の増減を行っていたため、この差分に応じた速度の増減操作が過剰となり、これにより残存データ量の時間変動を招き、データ伝送動作が不安定になる場合がある。すなわち、データ出力速度等の調整の結果が残存データ量の増加または減少となって現れるまでにはタイムラグがあり、その間も、データ出力速度等の調整が行われるため、残存データ量が安定した状態になっても、残存データ量の変動がやや大きくなってしまうのである。
この発明は上述した事情に鑑みてなされたものであり、FIFO内の残存データ量を適正値に収束させるデータ出力速度またはデータ入力速度の増減操作を適度に行って、残存データ量を速やかに適正値に収束させ、安定したデータ伝送を行うことができる伝送制御装置およびこれを用いたサンプリング周波数変換装置を提供することを目的としている。
この発明は、書き込み要求信号に応じて、新たに入力されるデータを記憶し、読み出し要求信号に応じて、記憶したデータを古いものから順に読み出して出力する先入れ先出し方式の記憶手段と、前記記憶手段に記憶された読み出し未了のデータの残存データ量を検出する残存データ量検出手段と、前記書き込み要求信号または読み出し要求信号の発生を許可する許可信号を周波数制御情報に応じた時間密度で生成する可変周波数発振手段と、前記残存データ量検出手段において検出された残存データ量を現在の残存データ量として保持すると共に、現在の残存データ量より過去に検出された第1残存データ量と第2残存データ量とを保持し、前記現在の残存データ量と前記第1残存データ量と前記第2残存データ量とから前記記憶手段における残存データ量の時間的変化を示すベクトルを検出するベクトル検出手段と、前記ベクトル検出手段において検出されたベクトルと、前記現在の残存データ量とに基づいて、前記現在の残存データ量を適正値に戻す方向に修正量を決定し、当該修正量に従って前記周波数制御情報を修正する周波数制御手段とを備え、前記ベクトル検出手段は、前記残存データ量検出手段により検出される現在の残存データ量が変化する毎に、その変化後における現在の残存データ量を第1残存データ量とし、それまで保持していた前記第1残存データ量を前記第2残存データ量として保持するよう制御し、前記周波数制御手段は、前記ベクトル検出手段において検出されたベクトルが、前記現在の残存データ量>前記第1残存データ量>前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値を超えている場合、前記ベクトルが前記現在の残存データ量<前記第1残存データ量<前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値より少ない場合、前記現在の残存データ量が上限値となっている場合、前記現在の残存データ量が下限値となっている場合のいずれかの場合に限り、前記現在の残存データ量と前記適正値との差分に相当する修正量に従って、前記周波数制御情報を修正することを特徴とする伝送制御装置を提供する。また、この発明は、かかる伝送制御装置を用いたサンプリング周波数変換装置を提供する。
かかる発明によれば、残存データ量を適正値に戻すための必要最低限の周波数制御情報の修正しか行われないため、残存データ量の発散を抑制して、残存データ量を速やかに適正値に収束させることができる。従って、安定したデータ伝送が実現される。また、かかる伝送制御装置をサンプリング周波数変換装置に用いることにより、波形歪の少ない高品質のサンプリング周波数変換が実現される。
以下、図面を参照して、本発明の最良な実施の形態について説明する。
<第1実施形態>
図1は、この発明の第1実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。このサンプリング周波数変換装置は、大別すると、伝送制御装置100Aと、補間部200Aと、インタフェース300Aにより構成されている。
補間部200Aは、図2に示すように、n段のシフトレジスタ201と、補間係数発生部202と、畳み込み演算部203とを有している。ここで、シフトレジスタ201は、補間部200Aの前段部から第1のサンプリング周波数のデータを順次取り込み、取り込んだ過去n個分のデータ列を補間演算用入力データ列として保持する。
補間係数発生部202には、伝送制御装置100Aから補間比Δtが供給される。この補間比Δtは、補間部200Aにおいて生成すべきデータのサンプリング点の位相を示している。さらに詳述すると、本実施形態において、補間部200Aは、図3に例示するように、シフトレジスタ201に保持された補間演算用入力データ列D〜Dn−1におけるデータDm+1とデータDとの間に存在するデータPを補間演算により求めるものであり、補間比Δtは、時間軸上においてデータDm+1のサンプリング点とデータDのサンプリング点との間のどの位置に補間演算により求めるべきデータPのサンプリング点があるかを示している。補間係数発生部202は、例えば各種の補間比Δtに対応した補間係数列を記憶したROMであり、伝送制御装置100Aから与えられる補間比Δtに対応した補間係数列a〜an−1を出力する。
畳み込み演算部203は、伝送制御装置100Aからメインクロックφに同期したデータ入力許可信号IEが与えられるのに応じて、シフトレジスタ201に保持された補間演算用入力データ列D〜Dn−1に補間係数発生部202から出力された補間係数列a〜an−1を畳み込み、第2のサンプリング周波数のデータPを出力する。ここで、メインクロックφは、第1のサンプリング周波数と同一の周波数を有するクロックであるが、伝送制御装置100Aは、このメインクロックφに同期したデータ入力許可信号IEを第2のサンプリング周波数に相当する時間密度で補間部200Aに供給する。なお、このような時間密度でデータ入力許可信号IEを発生するための構成については後述する。
補間演算により求めるべきデータのサンプリング点は、第2のサンプリング周波数に対応した速度で時間軸上を移動する。この結果、図3に例示するように、現在、補間演算により求めたデータPの次に求めるべきデータPk−1の位相がシフトレジスタ201に記憶されたデータDの位相よりも進むことが起こりうる。この場合には、データPの補間演算後、次のデータPk−1の補間演算に備えて、新たなデータD−1が前段の装置からシフトレジスタ201に取り込まれ、シフトレジスタ201内の最も古いデータDn−1は廃棄される。補間演算により求めるデータの位相を逐次進める操作は、現状の補間比Δtに対し、第1のサンプリング周波数と第2のサンプリング周波数との比に基づいて決定される周波数制御情報yを加える、という操作の繰り返しにより行われる。この操作は、伝送制御装置100Aにより行われるものであるが、詳細は後述する。
図1における伝送制御装置100Aは、以上説明した補間部200Aから第2のサンプリング周波数のデータ列を受け取って保存し、これをインタフェース300Aからの読み出し要求信号RRに同期したタイミングで出力する装置である。インタフェース300Aは、外部機器からのデータ要求信号LRCKに応じて、読み出し要求RRを伝送制御装置100Aに出力し、これに応じて伝送制御装置100Aから出力されるデータをシリアルなビット列SDOとして後段のDSPに出力する装置である。
次に、伝送制御装置100Aの構成について説明する。
FIFO10は、RAM(Random Access Memory)などにより構成される先入れ先出し形式のバッファであり、本実施形態のものは所定ビット数の入力データを最大8個記憶することができる。FIFO10は、補間部200Aから供給されるデータPを順次保存し、古いものから順にインタフェース300Aに出力する。書き込み制御部30は、メインクロックφがANDゲート101を通過して書き込み要求信号WRとして与えられたとき書き込みアドレスおよび書き込み要求信号WEを生成し、FIFO10に供給する。FIFO10に供給される入力データPは、書き込み要求信号WEにより、FIFO10内の書き込みアドレスによって指定されるエリアに書き込まれる。読み出し制御部40は、インタフェース300Aからの読み出し要求信号RRに応じて、読み出しアドレスおよび読み出し要求信号REを生成し、FIFO10へ供給する。ここで、読み出しアドレスは、FIFO10内に残存している読み出し未了の入力データのうち最も古いものを指定するように制御される。この読み出しアドレスにより指定された入力データは、読み出し要求信号REによりFIFO10から読み出され、インタフェース300Aに供給される。
残存データ量検出部50は、ANDゲート102を介してメインクロックφが与えられたとき、書き込み制御部30が発生している書き込みアドレスと読み出し制御部40が発生している読み出しアドレスとの差分、すなわち、現時点においてFIFO10に残存する読み出し未了の入力データの個数である残存データ量ΔSを検出する回路である。ベクトル検出回路51は、残存データ量検出部50から出力される残存データ量ΔSの時間的変化を表すベクトルを検出する回路である。
ここで、ベクトル検出回路51は、3個のポインタValid_0、Valid_1およびValid_ptrを有している。ポインタValid_ptrには、現在の残存データ量ΔSが格納される。このポインタValid_ptrの値は、ポインタValid_0と異なる値になると、ポインタValid_0に代入され、それまでのポインタValid_0の値はポインタValid_1に代入される。
従って、一般的には、Valid_0>Valid_1の関係にあれば、FIFO10の残存データ量ΔSは増加中であり、Valid_0<Valid_1であれば、FIFO10の残存データ量ΔSは減少中であるといえる。しかし、残存データ量ΔSが増加状態から減少状態に転じたり、減少状態から増加状態に転じたりすることがあり、そのような変化は、ポインタValid_0およびValid_1のみから判断することはできない。そこで、本実施形態において、ベクトル検出回路51は、3個のポインタValid_0、Valid_1およびValid_ptrを参照し、残存データ量ΔSの時間的変化の態様を示すベクトルを検出するようにしている。
残存データ量検出部50から出力される残存データ量ΔSは、FIFO10内のデータの残存データ量を示すと同時に、最後に書き込まれたデータPと、読み出し要求信号RRによって最後に読み出されたデータPとの位相差を示している。そして、上述した読み出し制御部40と、書き込み制御部30と、残存データ量検出部50と、ベクトル検出回路51と、周波数制御部60と、可変周波数発振部70は、この位相差を適正値に収束させるPLL80を構成している。
周波数制御部60は、変換部61、全加算器62、ラッチ回路63およびリミタ64から構成されている。変換部61は、残存データ量ΔSを修正量ΔTに変換するテーブルを有している。変換部61は、このテーブルとベクトル検出回路51からの指示に基づき、残存データ量検出部50から出力される現在の残存データ量ΔSを修正量ΔTに変換する。図4は、このベクトル検出回路51と変換部61とにより行われる変換内容を示している。また、図5(a)〜(d)は、「0」以外の修正量ΔTが変換部61から出力される場合の残存データ量ΔSの変化の態様を示している。
図5(a)に示すように、残存データ量ΔSが増加中(Valid_1<Valid_0<Valid_ptr)であり、かつ、残存データ量ΔSの現在値であるポインタValid_ptrの値が適正値である「4」を越えている場合(図4に示す例ではValid_ptr=5および6)、ベクトル検出回路51は、周波数制御情報を増加させる修正量ΔTの出力指示を変換部61に送る。この結果、変換部61は、現在の残存データ量ΔSと適正値「4」との差分に相当する大きさを有する正の修正量ΔTを出力する。また、図5(c)に示すように、現在の残存データ量ΔSが上限である「7」に達している場合には、その時点までの残存データ量ΔSの変化の態様とは無関係に、変換部61は、現在の残存データ量ΔSと適正値「4」との差分に相当する大きさを有する正の修正量ΔT(この例の場合、ΔT=+3)を出力する。従って、残存データ量ΔSとして上限値「7」が検出されて正の修正量ΔT=+3が出力された後、再び上限値「7」が検出された場合には、残存データ量ΔSは増加中であるとはいえないが、残存データ量ΔSが上限値「7」であることのみをもって、正の修正量ΔT=+3が再び出力される。
一方、図5(b)に示すように、残存データ量ΔSが減少中(Valid_1>Valid_0>Valid_ptr)であり、かつ、残存データ量ΔSの現在値であるポインタValid_ptrの値が適正値である「4」より少ない場合(図4に示す例ではValid_ptr=3、2および1)、ベクトル検出回路51は、周波数制御情報を減少させる修正量ΔTの出力指示を変換部61に送る。この結果、変換部61は、現在の残存データ量ΔSと適正値「4」との差分に相当する大きさを有する負の修正量ΔTを出力する。また、図5(d)に示すように、現在の残存データ量ΔSが下限である「0」に達している場合には、その時点までの残存データ量ΔSの変化の態様とは無関係に、変換部61は、負の修正量ΔT(この例の場合、ΔT=−3)を出力する。
そして、残存データ量ΔSが以上の挙動以外の挙動を示している場合、ベクトル検出回路51は、周波数制御情報の現状維持を変換部61に指示する。この場合、変換部61は、修正量ΔTとして「0」を出力する。
以上が残存データ量検出部50、ベクトル検出回路51および変換部61によって行われる処理の詳細である。
全加算器62およびラッチ回路63は、修正量ΔTに基づいて周波数制御情報yを修正する手段を構成している。まず、全加算器62は、ラッチ回路63に保持された現在の周波数制御情報yと変換部61から供給される修正量ΔTとに基づき、下記式(1)に示す演算を行う。全加算器62の出力データである新たな周波数制御情報yは、ANDゲート103を介してメインクロックφがラッチ回路63に与えられるとき、ラッチ回路63によりラッチされ、リミタ64によって、ある上限値以下に制限され、可変周波数発振部70に供給される。
y←y+ΔT・・・・・(1)
ラッチ回路63は、初期設定が可能な構成となっている。このサンプリング周波数変換装置が動作を開始するとき、ラッチ回路63には、周波数制御情報の初期値yとして次式で示される値が設定される。
y=定数×(f1/f2) ・・・・・(2)
ここで、f1はサンプリング周波数変換前の第1のサンプリング周波数、f2はサンプリング周波数変換後の第2のサンプリング周波数である。
可変周波数発振部70は、全加算器71と、ラッチ回路72と、ANDゲート73と、ダウンカウンタ74と、イネーブル信号発生回路75と、ラッチ回路76とにより構成されている。全加算器71は、周波数制御部60から出力される周波数制御情報yとラッチ回路72の出力データの小数部である補間比Δtとを加算して出力する。この周波数制御情報yと補間比Δtとの加算により、上述した「補間演算により求めるデータの位相を逐次進める操作」が行われる。ラッチ回路72は、ANDゲート73を介してメインクロックφが与えられたとき、全加算器71の出力データをラッチして出力する。ダウンカウンタ74には、このラッチ回路72の出力データの整数部から「1」を減じた値がプリセットデータとして与えられる。ダウンカウンタ74は、後述するイネーブル信号ENがアサートされているとき、メインクロックφに同期して、このプリセットデータをカウント値として取り込み、以後、メインクロックφによるダウンカウントを行う。イネーブル信号発生回路75は、例えばラッチ回路により構成されており、ダウンカウンタ74のカウント値が「0」になったとき、メインクロックφに同期してイネーブル信号ENをアサートする。なお、イネーブル信号発生回路75は、上述したラッチ回路63の初期設定が行われるときに同時に初期設定され、この初期設定の際にはダウンカウンタ74のカウント値の如何に拘わらずイネーブル信号ENをアサートするように構成されている。イネーブル信号ENがアサートされることにより、ラッチ回路76は、ラッチ回路72の出力データの小数部をラッチして補間比Δtとして補間部200Aに出力する。また、イネーブル信号ENがアサートされているとき、ANDゲート101は、メインクロックφを書き込み要求信号WRとして書き込み制御部30に出力し、ANDゲート104はメインクロックφをデータ入力許可信号IEとして補間部200Aに出力する。さらにANDゲート73、102および103は、イネーブル信号ENがアサートされているときに、ラッチ回路72、残存データ量検出部50およびラッチ回路63にメインクロックφを供給する。ANDゲート73を介してラッチ回路72にメインクロックφが与えられたとき、ラッチ回路72に格納されるデータの整数部が2以上増加する場合がある。これは、図3を参照して説明したように、この次に補間部200Aにおいて求めるべきデータの位相が、現在、シフトレジスタ201に保持されているデータDの位相よりも進んでいないことを意味する。従って、その場合にはダウンカウンタ74により数クロックのカウントダウンが行われた後、補間部200Aでは補間演算に必要な新たなデータを前段の装置からシフトレジスタ201に取り込む動作が行われる。
以上が伝送制御装置100Aの構成の詳細である。
次に本実施形態の動作を説明する。
このサンプリング周波数変換装置の動作が開始されるとき、初期設定動作が行われる。この初期設定動作では、伝送制御装置100A内のラッチ回路63に前掲式(2)により与えられる周波数制御情報の初期値yが書き込まれる。また、初期設定動作では、イネーブル信号発生回路75によってイネーブル信号ENがアサートされる。このため、ラッチ回路63に書き込まれた周波数制御情報yは、リミタ64および全加算器71を介してラッチ回路72に書き込まれ、このラッチ回路72に書き込まれた周波数制御情報yの整数部は、ダウンカウンタ74にプリセットされる。その後、ダウンカウンタ74では、メインクロックφに基づくダウンカウントが行われる。そして、ダウンカウンタ74のカウント値が「0」になると、イネーブル信号発生回路75によってイネーブル信号ENがアサートされる。この結果、メインクロックφがANDゲート73を介してラッチ回路72に供給され、その時点における全加算器71の出力データ、すなわち、周波数制御部60から出力される周波数制御情報とラッチ回路72の出力データの小数部との加算結果がラッチ回路72に書き込まれる。そして、ラッチ回路72の出力データの整数部はダウンカウンタ74にプリセットされ、小数部は補間比Δtとしてラッチ回路76に書き込まれる。このような動作が繰り返される結果、周波数制御情報に応じた平均的な時間密度でイネーブル信号ENが発生されるとともに周波数制御情報に応じた速度で変化する補間比Δtが発生される。
メインクロックφは、イネーブル信号ENが発生される度に、ANDゲート101および104を各々通過し、書き込み要求信号WRおよびデータ入力許可信号IEとして書き込み制御部30および補間部200Aに各々与えられる。また、メインクロックφは、イネーブル信号ENが発生される度に、ANDゲート102〜103を通過し、残存データ量検出部50およびラッチ回路63に与えられる。
補間部200Aでは、データ入力許可信号IEが与えられたとき、その時点において記憶されている過去n個の入力データに補間比Δtに応じた補間係数列が畳み込まれ、この補間演算の結果は、第2のサンプリング周波数のデータPとして出力される。
書き込み制御部30は、書き込み要求信号WRが与えられたとき、書き込みアドレスをインクリメントして、書き込み要求信号WEをFIFO10に供給する。この結果、補間部200Aの出力データがFIFO10における書き込みアドレスにより指定されるエリアに書き込まれる。
一方、インタフェース300Aは、外部機器からクロックLRCKが供給されるのに応じて、読み出し要求信号RRを出力する。読み出し制御部40は、この読み出し要求信号RRに応じて、FIFO10に記憶された最も古いデータを指定する読み出しアドレスを読み出し要求信号REとともにFIFO10に供給する。この結果、最も古いデータがFIFO10から読み出され、インタフェース300Aに供給される。
残存データ量検出部50は、イネーブル信号ENがアサートされ、ANDゲート102を介してメインクロックφが与えられたとき、その時点においてFIFO10に最後に供給された書き込みアドレスと読み出しアドレスとの差分を残存データ量ΔSとして求める。この残存データ量ΔSを求める動作は、イネーブル信号ENがアサートされる度に行われる。残存データ量検出部50により求められた残存データ量ΔSは、ポインタValid_ptrに格納される。そして、ポインタValid_ptrの値がポインタValid_0と異なる値になると、ポインタValid_ptrの値がポインタValid_0に代入され、それまでのポインタValid_0の値はポインタValid_1に代入される。
ベクトル検出回路51は、ポインタValid_ptr、Valid_0およびVaild_1に基づき、周波数制御情報を増加させるか減少させるか現状値を維持させるかの指示を変換部61に送る。変換部61は、この指示に従い、残存データ量検出部50から供給される残存データ量ΔS(=Valid_ptr)を修正量ΔTに変換する。この結果、次のような修正量ΔTが出力される。まず、残存データ量ΔSが増加中であり、かつ、残存データ量ΔSの現在値が適正値「4」を越えている場合には、現在の残存データ量ΔSと適正値「4」との差分に相当する大きさを有する正の修正量ΔTが出力される。また、残存データ量ΔSが上限値「7」である場合には、正の修正量「3」が出力される。一方、残存データ量ΔSが減少中であり、かつ、残存データ量ΔSの現在値が適正値「4」より少ない場合には、現在の残存データ量ΔSと適正値「4」との差分に相当する大きさを有する負の修正量ΔTが出力される。また、残存データ量ΔSが下限値「0」である場合には、負の修正量「−3」が出力される。そして、これら以外の場合には修正量ΔTとして「0」が出力される。
このようにして出力される修正量ΔTとラッチ回路63に記憶された現在の周波数制御情報yとが全加算器62により加算され、ANDゲート103からのメインクロックφにより、新たな周波数制御情報yとしてラッチ回路63に書き込まれる。この結果、正の修正量ΔTが出力されているときには周波数制御情報yが増加し、負の修正量ΔTが出力されているときには周波数制御情報yが減少し、修正量ΔTとして「0」が出力されているときには周波数制御情報yは現状値を維持する。
周波数制御部60では、このように修正量ΔTに基づく周波数制御情報yの増減の調整が行われ、可変周波数発振部70では、このような調整を経た周波数制御情報yに基づきイネーブル信号ENが出力される。ここで、周波数制御情報yが増加する場合には、ダウンカウンタ74がプリセットされてからカウント値が「0」になるまでに必要な平均的なメインクロックφの個数が増加し、イネーブル信号ENの平均的な時間密度が減少する。このため、FIFO10に対するデータの書き込み速度が低下する。逆に、周波数制御情報yが減少する場合には、イネーブル信号ENの平均的な時間密度が増加するため、FIFO10に対するデータの書き込み速度が上昇する。
そして、FIFO10におけるデータの書き込み速度(すなわち、イネーブル信号ENの周波数)が読み出し速度(すなわち、読み出し要求信号RRの周波数)よりも低い場合には残存データ量ΔSが減少し、この減少過程において負の修正量ΔTが発生されると、周波数制御情報yが減少し、データの書き込み速度は上昇することとなる。逆にFIFO10におけるデータの書き込み速度が読み出し速度よりも高い場合には残存データ量ΔSが増加し、この増加過程において正の修正量ΔTが発生されると、周波数制御情報yが増加し、データの書き込み速度は低下することとなる。このように残存データ量ΔSの増減に応じたPLL制御が行われる結果、FIFO10における書き込み速度は読み出し速度に追従し、FIFO10内の残存データ量ΔSは適正値「4」に収束することとなる。
図6は、本実施形態における残存データ量ΔSの時間的変化の例を示すタイムチャートである。この図において、符号A1によって示す区間では、残存データ量ΔSが順次増加し、ΔS=「6」となった時点において、Valid_1<Valid_0<Valid_ptrであり、かつ、Valid_ptrが適正値「4」より大きいという条件を満たしている。従って、この時点において、周波数制御情報yを増加させてFIFO10のデータ入力速度を低下させる正の修正量ΔT=Valid_ptr−適正値=+2が発生される。その後、正の修正量または負の修正量を発生させる条件が満たされないため、修正量ΔTとして「0」が発生されるが、符号A2によって示す時点において残存データ量ΔSが上限値である「7」に達する。この時点において正の修正量ΔTを発生する条件が満たされるため、FIFO10のデータ入力速度を低下させる正の修正量ΔT=Valid_ptr−適正値=+3が発生される。
図示の例では、この2度に亙る正の修正量ΔTの発生により、適正値「4」から上方に向けて発散していた残存データ量ΔSが適正値「4」に向けて戻される。その後、符号A3によって示す区間では、符号A1によって示す区間よりも緩やかな時間勾配で、残存データ量ΔSが低下し、ΔS=「3」となった時点において、Valid_1>Valid_0>Valid_ptrであり、かつ、Valid_ptrが適正値「4」より小さいという条件が満たされる。従って、この時点において、周波数制御情報yを減少させてFIFO10のデータ入力速度を上昇させる負の修正量ΔT=Valid_ptr−適正値=−1が発生される。このとき発生される修正量ΔTの絶対値は、先の符号A1やA2により示されるタイミングにおいて発生された修正量ΔTの絶対値よりも小さい。従って、このとき残存データ量ΔSを適正値「4」に向けて戻す作用の強さ(以下、便宜上、適正値への復帰力という)は、符号A1の区間の終了タイミングや符号A2のタイミングにおいて発生される適正値への復帰力よりも弱い。しかし、符号A3によって示す区間では、既に残存データ量ΔSの変動の振幅は十分に減衰しているので、適正値への復帰力は、この程度の微妙なものであることが望まれる。何故ならば、残存データ量ΔSの変動が十分に減衰した場合には、適正値への復帰力が過剰であると、却って残存データ量ΔSを適正値「4」から発散させることとなるからである。
符号A3によって示す区間以降、残存データ量ΔSは、適正値「4」±1の範囲の振動を繰り返す(符号A3およびA4参照)。これは、FIFO10におけるデータの入力と出力のタイミングがずれているため、FIFO10にデータが1個入力されたときにΔS=適正値「4」+1、FIFO10からデータが1個出力されたときにΔS=適正値「4」−1となるものである。この状態は、FIFO10におけるデータの入力速度がデータの出力速度に完全に同期しており、FIFO10の残存データ量ΔSが安定した状態であるといえる。
図6には示されていないが、例えばインタフェース300Aから供給される読み出し要求信号RRの周波数が本来想定していた第2のサンプリング周波数f2からずれている等の理由により周波数制御情報の初期設定値が適切な値でない場合には、残存データ量ΔSが適正値から完全に外れ、残存データ量ΔSとして、複数回連続して上限値「7」または下限値「0」が検出されることが起こりうる。この場合には、残存データ量ΔSとして上限値「7」(下限値「0」)が検出される度に、正の修正量ΔT=+3(負の修正量ΔT=−3)が発生される。これにより、周波数制御情報は、読み出し要求信号RRの周波数に見合った適切な値に急速に近づき、以後、図6に例示するような動作により残存データ量ΔSは適正値に収束することとなる。
以上のように、本実施形態によれば、残存データ量ΔSが適正値から発散しようとする挙動を示している場合および残存データ量ΔSが完全に発散しているときのみ残存データ量ΔSを適正値に戻す方向の正または負の修正量ΔTが発生され、それ以外の場合には修正量ΔTとして「0」が発生される。このように残存データ量ΔSを適正値に戻すための修正量ΔTが必要な期間のみ発生されるため、残存データ量ΔSの時間的変動を発生させることなく速やかに残存データ量ΔSを適正値に収束させることができる。よって、波形歪の発生が少ない高品質のデータ伝送を実現することができる。
<第2実施形態>
図7は、この発明の第2実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。本実施形態では、伝送制御装置100Bの前段にインタフェース300Bが、後段に補間部200Bが設けられている。インタフェース300Bは、伝送制御装置100Bに対し、書き込み要求信号WRとともに第1のサンプリング周波数のデータDinを供給する。補間部200Bは、第1実施形態における補間部200Aと同様な構成を有する。この補間部200Bは、内蔵のシフトレジスタにFIFO10から取り込んだ過去一定個数のデータ列を保持し、上記第1実施形態と同様、ラッチ回路76から供給される補間比Δtに応じた補間用係数列をこのデータ列に畳み込み、この畳み込み演算の結果である出力データPを、第2のサンプリング周波数を有する出力クロックCKoutに同期したタイミングで出力する。伝送制御装置100Bの構成は、次の点において第1実施形態に係る伝送制御装置100Aと異なる。まず、書き込み制御部30には、インタフェース300Bから第1のサンプリング周波数と同一周波数の書き込み要求信号WRが直接供給される。また、第1実施形態におけるANDゲート101および104に代えて、読み出し要求信号RRを発生する読み出し要求信号発生部105が設けられており、イネーブル信号発生回路75から出力されるイネーブル信号ENがこの読み出し要求信号発生部105と補間部200Bに供給される。ここで、補間部200Bに供給されるイネーブル信号ENは、第2のサンプリング周波数のデータの補間演算および出力を許可するデータ出力許可信号としての役割を果たす。それ以外は上記第1実施形態と同様である。
伝送制御装置100Bでは、第2のサンプリング周波数と同一周波数のメインクロックφに同期して、残存データ量ΔSを安定化するためのPLL制御が行われ、この制御の過程において、メインクロックφに同期し、かつ、第1のサンプリング周波数に対応した時間密度でイネーブル信号ENがアサートされる。補間部200Bは、イネーブル信号ENがアサートされた場合に、出力クロックCKoutに同期したタイミングで読み出し要求許可信号RREを出力する。読み出し要求信号発生部105は、イネーブル信号ENがアサートされた後、読み出し要求許可信号RREが出力された場合に、読み出し要求信号RRを読み出し制御部40に出力する。これにより、読み出し制御部40は、読み出しアドレスを「1」だけ増加させて、読み出し要求信号REを出力する。この結果、FIFO10における読み出し未了のデータのうち最も古いものが読み出され、補間部200Bに供給される。補間部200Bでは、このようにしてFIFO10から供給されるデータがシフトレジスタの初段に書き込まれ、シフトレジスタ内の既存のデータは順次後段にシフトされ、最終段のデータは廃棄される。そして、出力クロックCKoutの発生に合わせて、シフトレジスタに保持されたデータ列と補間比Δtに応じた補間係数列とを用いた補間演算が行われ、演算結果である第2のサンプリング周波数のデータが出力クロックCKoutに同期して出力される。
上記第1実施形態では、FIFO10におけるデータ入力速度をデータ出力速度に追従させるためのPLL制御が行われたが、本実施形態ではFIFO10におけるデータ出力速度をデータ入力速度に追従させるためのPLL制御が行われる。このPLL制御は、上記第1実施形態と同様な方法により行われる。従って、本実施形態においても上記第1実施形態と同様な効果が得られる。
この発明の第1実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。 同実施形態における補間部の構成例を示すブロック図である。 同補間部の動作を説明する波形図である。 同実施形態における修正量の発生方法を示す図である。 同実施形態において修正量として「0」以外の値が発生される場合を示す図である。 同実施形態における残存データ量の時間的変化の例を示すタイムチャートである。 この発明の第2実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。
符号の説明
100A,100B…伝送制御装置、200A,200B…補間部、201…シフトレジスタ、202…補間係数発生部、201…畳み込み演算部、300A,300B…インタフェース、10…FIFO、30…書き込み制御部、40…読み出し制御部、50・・・残存データ量検出部、51…ベクトル検出回路、60…周波数制御部、70…可変周波数発振部、80…PLL(位相同期ループ)。

Claims (3)

  1. 書き込み要求信号に応じて、新たに入力されるデータを記憶し、読み出し要求信号に応じて、記憶したデータを古いものから順に読み出して出力する先入れ先出し方式の記憶手段と、
    前記記憶手段に記憶された読み出し未了のデータの残存データ量を検出する残存データ量検出手段と、
    前記書き込み要求信号または読み出し要求信号の発生を許可する許可信号を周波数制御情報に応じた時間密度で生成する可変周波数発振手段と、
    前記残存データ量検出手段において検出された残存データ量を現在の残存データ量として保持すると共に、現在の残存データ量より過去に検出された第1残存データ量と第2残存データ量とを保持し、前記現在の残存データ量と前記第1残存データ量と前記第2残存データ量とから前記記憶手段における残存データ量の時間的変化を示すベクトルを検出するベクトル検出手段と、
    前記ベクトル検出手段において検出されたベクトルと、前記現在の残存データ量とに基づいて、前記現在の残存データ量を適正値に戻す方向に修正量を決定し、当該修正量に従って前記周波数制御情報を修正する周波数制御手段とを備え、
    前記ベクトル検出手段は、前記残存データ量検出手段により検出される現在の残存データ量が変化する毎に、その変化後における現在の残存データ量を第1残存データ量とし、それまで保持していた前記第1残存データ量を前記第2残存データ量として保持するよう制御し、
    前記周波数制御手段は、前記ベクトル検出手段において検出されたベクトルが、前記現在の残存データ量>前記第1残存データ量>前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値を超えている場合、前記ベクトルが前記現在の残存データ量<前記第1残存データ量<前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値より少ない場合、前記現在の残存データ量が上限値となっている場合、前記現在の残存データ量が下限値となっている場合のいずれかの場合に限り、前記現在の残存データ量と前記適正値との差分に相当する修正量に従って、前記周波数制御情報を修正することを特徴とする伝送制御装置。
  2. 補間手段と、伝送制御手段とを具備し、
    前記補間手段は、
    第1のサンプリング周波数のデータを順次取り込んで、補間演算用入力データ列として保持する補間演算用入力データ保持手段と、
    前記伝送制御手段により発生される補間比に応じた補間係数と前記補間演算用入力データ保持手段に保持された補間演算用入力データ列とを用いた補間演算により第2のサンプリング周波数のデータを生成して出力する補間演算手段とを具備し、
    前記伝送制御手段は、
    書き込み要求信号に応じて、前記補間手段から出力される第2のサンプリング周波数のデータを記憶し、読み出し要求信号に応じて、記憶したデータを古いものから順に読み出して出力する先入れ先出し方式の記憶手段と、
    前記記憶手段に記憶された読み出し未了のデータの残存データ量を検出する残存データ量検出手段と、
    前記書き込み要求信号の発生を許可する許可信号を周波数制御情報に応じた時間密度で生成するとともに前記周波数制御情報に応じた速度で変化する前記補間比を発生する可変周波数発振手段と、
    前記残存データ量検出手段において検出された残存データ量を現在の残存データ量として保持すると共に、現在の残存データ量より過去に検出された第1残存データ量と第2残存データ量とを保持し、前記現在の残存データ量と前記第1残存データ量と前記第2残存データ量とから前記記憶手段における残存データ量の時間的変化を示すベクトルを検出するベクトル検出手段と、
    前記ベクトル検出手段において検出されたベクトルと、前記現在の残存データ量とに基づいて、前記現在の残存データ量を適正値に戻す方向に修正量を決定し、当該修正量に従って前記周波数制御情報を修正する周波数制御手段とを備え、
    前記ベクトル検出手段は、前記残存データ量検出手段により検出される現在の残存データ量が変化する毎に、その変化後における現在の残存データ量を第1残存データ量とし、それまで保持していた前記第1残存データ量を前記第2残存データ量として保持するよう制御し、
    前記周波数制御手段は、前記ベクトル検出手段において検出されたベクトルが、前記現在の残存データ量>前記第1残存データ量>前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値を超えている場合、前記ベクトルが前記現在の残存データ量<前記第1残存データ量<前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値より少ない場合、前記現在の残存データ量が上限値となっている場合、前記現在の残存データ量が下限値となっている場合のいずれかの場合に限り、前記現在の残存データ量と前記適正値との差分に相当する修正量に従って、前記周波数制御情報を修正することを特徴とするサンプリング周波数変換装置。
  3. 補間手段と、伝送制御手段とを具備し、
    前記補間手段は、
    第1のサンプリング周波数のデータを前記伝送制御手段から順次取り込んで、補間演算用入力データ列として保持する補間演算用入力データ保持手段と、
    前記伝送制御手段により発生される補間比に応じた補間係数と前記補間演算用入力データ保持手段に保持された前記補間演算用入力データ列とを用いた補間演算により、第2のサンプリング周波数のデータを生成して出力する補間演算手段とを具備し、
    前記伝送制御手段は、
    書き込み要求信号に応じて、第1のサンプリング周波数のデータを前段の装置から取り込んで記憶し、読み出し要求信号に応じて、記憶したデータを古いものから順に読み出して出力する先入れ先出し方式の記憶手段と、
    前記記憶手段に記憶された読み出し未了のデータの残存データ量を検出する残存データ量検出手段と、
    前記読み出し要求信号の発生を許可する許可信号を周波数制御情報に応じた時間密度で生成するとともに前記周波数制御情報に応じた速度で変化する前記補間比を発生する可変周波数発振手段と、
    前記残存データ量検出手段において検出された残存データ量を現在の残存データ量として保持すると共に、現在の残存データ量より過去に検出された第1残存データ量と第2残存データ量とを保持し、前記現在の残存データ量と前記第1残存データ量と前記第2残存データ量とから前記記憶手段における残存データ量の時間的変化を示すベクトルを検出するベクトル検出手段と、
    前記ベクトル検出手段において検出されたベクトルと、前記現在の残存データ量とに基づいて、前記現在の残存データ量を適正値に戻す方向に修正量を決定し、当該修正量に従って前記周波数制御情報を修正する周波数制御手段とを備え、
    前記ベクトル検出手段は、前記残存データ量検出手段により検出される現在の残存データ量が変化する毎に、その変化後における現在の残存データ量を第1残存データ量とし、それまで保持していた前記第1残存データ量を前記第2残存データ量として保持するよう制御し、
    前記周波数制御手段は、前記ベクトル検出手段において検出されたベクトルが、前記現在の残存データ量>前記第1残存データ量>前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値を超えている場合、前記ベクトルが前記現在の残存データ量<前記第1残存データ量<前記第2残存データ量であることを示し且つ前記現在の残存データ量が前記適正値より少ない場合、前記現在の残存データ量が上限値となっている場合、前記現在の残存データ量が下限値となっている場合のいずれかの場合に限り、前記現在の残存データ量と前記適正値との差分に相当する修正量に従って、前記周波数制御情報を修正することを特徴とするサンプリング周波数変換装置。
JP2005049510A 2005-02-24 2005-02-24 伝送制御装置およびサンプリング周波数変換装置 Expired - Fee Related JP4760052B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2005049510A JP4760052B2 (ja) 2005-02-24 2005-02-24 伝送制御装置およびサンプリング周波数変換装置
US11/355,638 US7570727B2 (en) 2005-02-24 2006-02-15 Data transmission controller and sampling frequency converter
KR1020060017749A KR100684245B1 (ko) 2005-02-24 2006-02-23 데이터 전송 제어기 및 샘플링 주파수 변환기
CNB2006100580286A CN100521532C (zh) 2005-02-24 2006-02-24 数据传输控制和采样频率转换器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005049510A JP4760052B2 (ja) 2005-02-24 2005-02-24 伝送制御装置およびサンプリング周波数変換装置

Publications (2)

Publication Number Publication Date
JP2006238044A JP2006238044A (ja) 2006-09-07
JP4760052B2 true JP4760052B2 (ja) 2011-08-31

Family

ID=36936237

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005049510A Expired - Fee Related JP4760052B2 (ja) 2005-02-24 2005-02-24 伝送制御装置およびサンプリング周波数変換装置

Country Status (2)

Country Link
JP (1) JP4760052B2 (ja)
CN (1) CN100521532C (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4386079B2 (ja) 2007-01-22 2009-12-16 ヤマハ株式会社 サンプリング周波数変換装置
JP2012049954A (ja) * 2010-08-30 2012-03-08 Yamaha Corp サンプリング周波数変換装置
JP2012138681A (ja) * 2010-12-24 2012-07-19 Sony Corp データ入出力装置、情報処理装置、及びデータ入出力方法
JP5741202B2 (ja) * 2011-05-13 2015-07-01 富士通株式会社 通信装置および発熱抑制方法
JP5948361B2 (ja) * 2014-03-28 2016-07-06 株式会社Pfu 情報処理装置、および、出力調整方法
ES2901827T3 (es) * 2018-07-31 2022-03-23 Buehler Ag Dispositivo de entrada para un molino de cilindros, molino de cilindros con un dispositivo de entrada de este tipo, procedimiento para la determinación del nivel de relleno de material de molienda de un depósito de almacenamiento de un molino de cilindros
CN113485672B (zh) * 2021-09-07 2021-11-19 苏州浪潮智能科技有限公司 基于fifo存储器的信息生成方法、装置、设备及介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05219037A (ja) * 1992-02-05 1993-08-27 Fuji Xerox Co Ltd 独立同期型シリアルデータ通信装置
JPH08149179A (ja) * 1994-11-22 1996-06-07 Nec Corp データ通信制御装置
JPH09270779A (ja) * 1996-04-01 1997-10-14 Fuji Electric Co Ltd データ同期方式
JPH1051314A (ja) * 1996-08-01 1998-02-20 Oki Electric Ind Co Ltd 基準クロック発生装置及び復号化装置
JP3470561B2 (ja) * 1997-07-31 2003-11-25 ヤマハ株式会社 非同期信号入力装置およびサンプリング周波数変換装置
JPH1155076A (ja) * 1997-07-30 1999-02-26 Yamaha Corp サンプリング周波数変換装置
JPH11112440A (ja) * 1997-10-07 1999-04-23 Matsushita Electric Ind Co Ltd サンプリングレートコンバータ
JP3921821B2 (ja) * 1998-07-09 2007-05-30 ソニー株式会社 標本化周波数変換装置およびこれを具備した電子機器
JP3536792B2 (ja) * 2000-02-28 2004-06-14 ヤマハ株式会社 同期制御装置および同期制御方法
JP2003224849A (ja) * 2002-01-29 2003-08-08 Victor Co Of Japan Ltd 画像データ受信装置

Also Published As

Publication number Publication date
JP2006238044A (ja) 2006-09-07
CN1825760A (zh) 2006-08-30
CN100521532C (zh) 2009-07-29

Similar Documents

Publication Publication Date Title
JP4760052B2 (ja) 伝送制御装置およびサンプリング周波数変換装置
JP4251094B2 (ja) 非同期信号入力装置およびサンプリング周波数変換装置
JP4661284B2 (ja) 伝送制御装置
KR100684245B1 (ko) 데이터 전송 제어기 및 샘플링 주파수 변환기
JP4213132B2 (ja) タイミングリカバリ回路及び間引きクロック生成方法
JP5105978B2 (ja) 半導体メモリ装置
JPWO2008102475A1 (ja) 最尤復号装置及び情報再生装置
US7692564B2 (en) Serial-to-parallel conversion circuit and method of designing the same
JP4386079B2 (ja) サンプリング周波数変換装置
JP4735268B2 (ja) サンプリング周波数変換装置
JP6413585B2 (ja) 送信回路、集積回路及びパラレルシリアル変換方法
JP2012049954A (ja) サンプリング周波数変換装置
US10873441B2 (en) Method for synchronizing digital data sent in series
JP2003091923A (ja) 再標本化アドレスジェネレータ回路
US7136004B2 (en) Image signal processing system
JP4442199B2 (ja) 非同期信号入力装置及びサンプリング周波数変換装置
JP4778872B2 (ja) 楽音出力装置
JP5023434B2 (ja) サンプリング周波数変換装置
JP2020161986A (ja) 伝送装置、伝送装置の制御方法、クロック生成装置、および、データ補間装置
JP4143703B2 (ja) デジタル演算処理方法
KR20140082339A (ko) 반도체 장치
JP2001034270A (ja) トーン・ジェネレータとその制御方法
JP2000341726A (ja) トーンジェネレータ
JP2006266849A (ja) 標本化周波数比検出装置
JP2008139128A (ja) 半導体試験装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100622

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101116

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110112

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: 20110510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110523

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140617

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4760052

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees