• 検索結果がありません。

カウンタによるスリップ制御を用いたビット同期回路の検討

N/A
N/A
Protected

Academic year: 2021

シェア "カウンタによるスリップ制御を用いたビット同期回路の検討 "

Copied!
10
0
0

読み込み中.... (全文を見る)

全文

(1)

静岡理工科大学紀要

15

カウンタによるスリップ制御を用いたビット同期回路の検討

Bit Synchronism Circuit with a Slip Control by a Counter Circuit

袴田 吉朗*

Yoshiro HAKAMATA

Abstract: We have been developed LD-CELP codec programs using C5402 DSPs, or C5510 DSPs. The codec algorithm is based on TTC standard JT-G728. We conllrmed the developed programs to work bit exactly according to the algorithm.

Total codec system, however, doesn't work well because the fabricated codec system operates on the basis of independent clock frequencies and it is not implemented with bit synchronism circuit. This time, we studied a bit synchronism circuit where a bit slip between a coder and a decoder clock frequencies are controlled by a slip control counter. The counter operates at dozens of higher frequencies more than transmission bit rate. The paper gives a method on how to construct a bit synchronism circuit with a slip control by a counter. Also described is an application of the method to LD-CELP codec.

1

‘ はじめに

本論文では

LD-CELP

アルゴリズムを適用した音声用コーデ ックに適用することを目的として,独立したクロックの下で動 作する

CODER

DECODER

間のビット同期をとる方式に関し て検討した結果を述べる,検討したビット同期方式では,

DECODER

において受信波形の持つクロック周波数の別倍の

高速クロックで受信波形を多点サンプリングし,カウンタによ ってスリップ制御を行いビット同期を確立する.

LD-CELP

アルゴリズムは

lIC

標準の勧告

if - G728

で規定 されている国.この方式では音声を

8kFlz

でサンプリングし,

16

ビット量子化した符号を

LD-CEI

了アルゴリズムに基づいて 符号化処理を行い

16kb/s

に」瑚者したコードブックインデックス

ICHAN

に変換して伝送する.高い圧縮率が実現できる上に

,

測器とフィルタ利得の係数の演算にバックワード適用を使用し て

625 ii. s

の低遅延を実現している.

筆者らは,固定小数点

DSP

を搭載した市販の

DSP

ボード

C54O2DSK

を使用してこの

LD-CELP

アルゴリズムを適用した 音声用コーデックの開発を行ってきた.

CODER

および

DECODER

プログラムを

C

言語およびアセンブリ言語を用いて

開発し,このプログラムをパソコンから

DSP

ボード上の

RAM

に書き込んで動作させ,

CODER

および

DECODER

がアルゴリ ズム通りに正しく動作することを確認した[

2

]ー[

3]

また,

CODER

および

DECODER

を組み込みシステムとして 単独動作させるために,開発したプログラムを

C54O2DSK

内の

FLASH ROM

に書き込んでおき,電源投入時にそのプログラム

RAM

にロードして動作させる,いわゆる

ROM

化について の検討を行った岡,この結果短いプログラムについては

ROM

化を実現することができたが,

C5402 DSP

の内蔵している

RAM

容量が

CODER

および

DECODER

を実現するには十分ではなく,

そのため

CODER

および

DECODER

を実現するまでには至らな かった

.

2009

2

17

日受理

*理工学部 電気電子工学科

そこでより高速で大容量メモリを搭載した(

551ODSK

を適用 して

CODER

および

DECODER

を実現するための検討を引き続 き進めてきた

.

具体的には(

i5510DSK

ボードにおけるクロック,

A1C23

コーデック,

McBSP, DMA

などの設定について精査し,

C551ODSK

の各種設定プログラムを作成した.また

C54O2DSK

で開発した

CODER/DECODER

プログラムの(

5510D5P

への移 植を進め,

C

言語で開発したプログラムはもとより,アセンブ リ言語で開発したプログラムの移植も含めてプログラム自体は ビットエグザクトに動作することを確認した‘さらに

ROM

の方法についても検討し,

ROM

化した

CODER

および

DECODER

を用いて対向試験を実施してみた.しかしながら

CODER

DECODER

が独立したクロックの下で動作している 状

I

,にあり必然の結果として音声を正しく復号することができ なかった.この経緯についてはヌ献巨]において詳細に報告した・

以上の経羅助、ら,本論文では独立したクロックの下で動作す る

CODER

DECODER

間のビット同期をとる方法を検討した

,

まず伝送路フォーマットを今までに検討してきたフォーマット に併せた

CODER/DECODER

のレイヤ

1

システムを構築するた めに

VHDL

でプログラムを作成し

,CPLD

(サイプレス社

CYc374i100Jd

を用いて試作した.検討したレイヤ

1

システム は,受信波形を受信波形の持つクロック周波数の

80

倍の高速ク ロックで多点サンプリングし,カウンタによってスリップ制御 を行い,ビット同期を確立する方式である

. 23

PN

符号を 用いて試作したシステムの符号誤り率を測定し,

10

時間の観測 においてエラーフリーを確認した(

35 Xl

ゲに相当).これより 本ビット同期方式の有効性を検証できたものと考えている

弓は続いて,検討したビット同期方式の

LD-CEI

了コーデッ クへの具体的な適用についての検討結果を示した.

以下本論文では一連の検討結果について述べる,

2'LD

CELP

方式

CODEC

の概要

2.1 CODER

および

DECORDER

のシステム構造

CODER

のシステム構造図を図

2.1

に,

DECODER

のシステ

ム構造図を図

2.2

に示す.

(2)

Mc耳SP1 McBSP2 interrupt

exchange

sampling rate

8kHz serial

port (McBSP)

sync. event

(REVT2) *rxPt 「 *src

*txptr *dst McBSPO

ICHAN(l0bit) +preamble(6bit)

CLKXO(25.6kItz)a FSXO(1.6kHz)

16

1 BCLK

* ibil

一一 32 bit …ーー‘

K

、・

DINノ DOUT

1 0 1 0

CLKX (25.6kHz)

(b)

図2.3 CODER~DECODER インタフエース

叫 ト

FSX →i 十

(

1.

6kHz

) ー i

1 0

ICHAN 」】

4- 6bit ト‘ lObit

ICHAN(lObil)

[ ノ

McBSP1 McBSP2 interrupt

exchange

sampling rate 8kHz

CLKRO(25. 6kHz) FSRO(1.6kHz) ICHAN(lobit) +preamble(6bil)

sync. event

(XEVT2) *txpt 「 *dst

*rXPtr *src serial

port (McBSP)

Vol.17, 2 0 0 9

非常に取扱いが難しいので

,

筆者らは符号語

ICHAN

6ビッ

トのプレアンブル、ターン

101010

を付加した独自の伝送路フ オーマットを用いて検討を行ってきたβ].このフォーマットを 図

2.3

⑤に示す.このフオーマットは

McBSPO と伝送路のイン

タフエースであり

,CODEPJDECODER

間における

25.6kHz

ク ロックのビット同期を確立しておく必要がある.

2.3⑧はMcBSP2 と ADDA変換器間のインタフエースであ

る.16 ビット×2 のステレオ音声がバースト伝送される.

2.1 CODER

のシステム構造図 BCLK = MCLKJ4 =3MHz

縄 1875 BCLK

FS(8kHz)

ーー一

4

2.2 DECODER

のシステム構造図

C551ODSK

には

DSP

のシリアルポート(

McBSP

:マルチチ ャネル・バッフアード・シリアルポート)が

3

チャネルある.

いずれもSPI インタフエースになっている,

McBSPl

はマルチプレクサ(SN74CBT3257) を介して

A1C23

コーデックと外部

IJF

に配線さ才にいる.デフォルトでは

MISC

レジスタの

MCBSP1SEL

ビットが

0

に設定されている. これよ り

McBSP l

はA1C23 コーデックの制御チャネル(SPI マスター)

として設定され,A1C23 コーデックの各種設定に使用される.

McBSP2

はマルチプレクサ(SN74CBD384) を介して

DSP

外部と接続されており,接続先を

A1C23

コーデックまたは高イ ンピーダンスに設定できる.デフォルトでは

MISC

レジスタの

MCBSP2SEL

ビットが

0

に設定されており,McBSP2 は

A1C23

コーデックのデータチャネルに接続されている,

McBSPO

むg ッファ

(SN74CBT3384)

を介して外部

I/F

に接 続さ才にいる.

CODER では符号語ICHAN

出力用のディジタル インタフエースとして使用する.伝送路クロック

25.6kHz

およ び

1.6kHz

のフレーム信号は,タイマー割り込みを用いて

DSP

クロックから生成する,

DECODER

では符号語

ICHAN

入力用のディジタルインタフ エースとして

McBSPO

を使用する.

CODER

と同じように

25.6kFIz

クロックと1.6kHz のフレーム信号はタイマー割り込み を用いてDSP クロックから生成するが,このときα)DER にお けるクロックと,

DECODER

におけるクロックの周波数偏差に 基づくスリップを防止する必要がある.

2.2

伝送路フオーマット

勧告

JT-0728 では符号語ICHAN

を単純に

16kb/s

のビットス トリームにして伝送するようになっている.しかしこの方法は

3.

カウンタによるスリップ制御を適用したビット同期回路

3.1

概要

送信部では符号語

ICHAN

に樹疑した入力PM 信号を

10ビッ

ト毎に区切り,6 ビットのプレアンブルパターンを付加し,

16kHz

25.6kHz に速度変換して図2.3

⑤の伝送路フォーマ ットに組み立てて送信する.8192kF1z の水晶発振回路の出力を 分周して

25.6kHz

および

16kHz

のクロックを作成している‘

16kHz

クロックは,パルス発生器の

FKF

入力端子に加え,

8192kHz

のクロックと同期の取れた

PN

信号を発生させる,

3.1

に受信部の構成図を示す,受信部は,カウンタにより スリップ制御を行って独立クロックで動作する送受信回路のビ ット同期をとり,またプレアンブル同期をとってフレーム信号 を生成する

(bit frame douki)

.プレアンニカl徐去回路(vconv rx) ではプレアンブルを除去し送信された

PN

信号を取り出す.ク ロック源は送信部と同じく

8192kHz

の水晶発振回路であり,こ

PN

信号

-H

vconv

図3.1 カウンタによるスリップ制御を適用した ビット同期回路のの構成図

l6kb/sPN信号 rx

(3)

IN C

(2048kHz)

d a

ふ ×

D

detect I ' SyUC

I

cin fo

一ー→

吟 o →ふ

elk

syncset

CLK(25.6kHz)

静岡理工科大学紀要

17

れを

4

分周した

2Q48kHz

クロックで動作させている.実際に

mCELP

方式コーデックで必要になるのは

bit frame douki

回 路であり,

vconv nc

回路は

bit frame douki

回路の特性を評価す る目的で試作したものである

.

32

ピット同期回路の動作

3.2

に検討したビット同期回路のブロック図を示す.また 図

3.3

はこの回路のタイミングチャートである

,

3.2

ビット同期回路のブロック構成

0 0 4F 4F

ー州 ~一

28h

3.3

ビット同期回路のタイ

25.6kb/s

のプレアンブル付き符号語

ICHAN (ll'4

)を

2048kHz

のクロック信号

dk

2

ビットのフリップフロップに入力し,

EX OR

を取ることによってエッジ(

Edge

)を取り出す.エッ

ジ間のクロック数をカウンタ

qtl

でカウントし,エッジが発生 したときに以下のようにカウンタをリセットする.

同期状態

clk=79 (4Th

)で

41=0

入力信号周波数が大

clk=78 (4Eh

)で叫

1=0

入力信号周波数が小

clk=0 (oh

) で

qtl=0

このようにリセットを契機として万

.6kHz

クロックの状態 を反転させて受信部の

25.6kHz

クロックを生成するので,スリ ップが起こらないように制御される.カウンタ叫

1

0

になっ た時を契機とするのは,入力クロックの周波数によって

qtl

が リセットされるタイミングが変動

するが,必ず

41=0

となる場合が 存在するためである.半周期後の 変化は

40

8h) elk

後である.ま たエッジがこない場合には同期状 態と同じように,

clk=79 (4Th

)に おいて軍

1=0

とさせるフライホー ル動作を行わせる

cLK(25 6kHZ

、 この結果,入力信号のクロック

周波数に対応してエッジの間隔が 変化し,したがって

16kHz

クロツ

クの立ち下がりエッジも変化してジッタが発生する‘しかしな がら図

22

に示した

DECODER

のシステム構造図から分かるよ

うに,

McBSPO

から入力される信号は一旦ダブルベッファーを

介して

DSP

に入力されるので,このときに

25.6k1

セクロックの ジッタは完全に抑圧される,

なお本検討で使用している図

2.3

ゆ)に示した

LD CELP

方式 の伝送路フォーマットでは,プレアンブル

101010

を前置してお り,

16

ビット以内に必ずエッジが来ることが保証されている.

このためビット同期回路にとっては緩い条件になっている,

33

プレアンブル同期回路の動作

本検討で対象としている

LD-CEI

了コーデックにおける

McBSPO

のインタフエースは

SPI

インタフエースである.した がってプレアンブル付き符号語

ICHAN

からフレーム同期信号

(プレアンブル同期信号)

fsr

を取り出す必要がある.

このため文献[

6

]の符号誤り率測定器において設計・試作し その動作が確認できているリセット計数形式のフレーム同期回

ー, 路を用ることにした.このフ

L

レーム同期回路は,ブリセッ トカウンタを使用した

1

ビッ イール動作

γ

玉ノ”「 ・」~ー ト即時シフト方式である.ブ

l I t

ri

口上。ノ

-, L -I

ゴで」、ープ。唾こ

2 1

ロック構成を図

3.4

に,タイ ミングチャートを図

3.5

に示

IN

Edge qtl 25.6kHz

「 1

ライホイール動作 = ライホイール動作

4FX 4F

I I I

I I- -, I I

す.

I

ー一

I

一』

I

一 “ 図

3.4

において,

CIx

はビ ミングチャート ット同期回路から供給される

25.6kHz

クロック(

25 6kHz I

)である.入力信号(

in

)はプレ アンブル付き符号語

ICHAN

であり,フリップフロップで

2048kHz

クロックとタイミングをとって入力する,またフレー

ム同期信号加および出力信号

ichan out

を,内部のシフトレジ スタを介してタイミングを会わせて出力する.両信号を後述の プレアンブル除去回路

(vconv rx

)に入力して使用する.

35

の左端の時刻における状態は同期はずれ状態であり,

Ioad=0, fp=1

になっている一入力信号からプレアンブルを検出 すると

detect=1

となり,この時点で

Ioad=1

となり

1

ビット即時 シフトが終了し同期弓は込み状態になる

.

このフレーム同期回 路では

3

段のカウンタを使用した保護回路を使用しているが

,

後方保護段数を

3

に設定しているので

,

r

3

個計数した時点

3.4

プレアンブル同期回路のブロック図

(4)

3.4

プレアンブル除去回路の動作

d in 州

CLK Pt (25.6kHz)

16

ビットシフトレジスタ

Sr out

1 I I

-edge_out

d out

cik . ' 64

進カウンタ

qtl

Ut (2048kHz).

16kHz

クロック発生 →→

fp_in

FF(3bit)

~ 25.6kHz~ I

c ノ ’ ト

edge_out

w

一 一

一瓢

J“・‘、“・= ,”』舌ソ‘"”・.v,’」“""‘.、“

i 1250 I 1300

、:,叱・‘‘・;呂’こ・苫’:''E呂呂・叱臣‘‘・:呂呂苫“可りト馴

綴鷺難欝鷺鷺

、’,''"'”、”‘"'"'"'',"""'"''''''"’い“".''’,、、、”‘、”‘''"'""""',’与”‘'",’.マ‘ん、、

700 I 750 i 800 t 850 i

'S・;・;S:呂り’就・;,召・;・;臣‘;・‘ '';郵・:臣‘'‘き;,;';・;LES・;':S・ES・】’;S叫苫’」‘く中剖‘‘臣」S・Eシ;,;片

“電 D ~‘ liI か I コ(三 i 回~(』 iI 動.昭,~‘ I 回‘廻 i 》四~”‘皇 ID 、 i 】田

I

》極

il

~(蓬~

(.i1

~

(r

~~(

i1

~

fl

~“一儀》

h

3.7

プレアンブル除去回路のシミュレーション結果

D"d,

'"fpn

c

sr_out

◇●曳

e_out

田つ

buf2.out

く’

d_out

亡ト

ciki

hzj

= cDcl6khzn

田心ト

qtl

α

18

CLK

detect

Vol.17,2 0 0 9

プレアンブル除去回路は,

プレアンブル付き符号語

load ICHAN

からプレアンブル

を除去し,送信回路・受信

QT1 o0oo01

)(

0o2

X x ( Val(0 域 00 xxx (知蜘咲 00xx (x)

Va(000001

回路を対向させて符号誤り 率特性を測定し

,

ビット同

七 期回路の特性を評価するた

fsr

QB coo( 001 x002 (oo3 (004

めの回路である.図

3.6

syncset

プレアンブル除去回路のブ

ロック図を示す,図

3.7

に シミュレーション結果を示 図

3.5

プレアンブル同期回路のタイミングチャート(

Val=Fh)

で信号

synaet

1

となり同期確立状態になる.

syncset

は同期 確立を示すための

LED

を点灯させる信号として使用した.なお 前方保護段数は

2

とした

.

フレーム信号

Jr

,出力信号

ichan_out

および

CLK(25.6kHz

)が,

SPI

インタフエースを構成するデコーダーに実際に入力する信 号である.

fp

vconv rx

に入力するためのフレーム信号であり,

島「よりも

25.6kHz

クロックで

1

クロックだけ遅延している.

m-i 二刻 10ビットンフトレジスタbuf2 out ト

0

<

3.6

プレアンブル除去回路のブロック図

す‘

c]k

2048kHz

クロックであり,

aK

はビット同期回路か ら供給されるクロック信号

c1k25 6kFlz

にある.

d

血は送信部から送信され,ビット同期回路を通過した

25.6kb/s

のプレアンブル付き符号語

ICHAN

である.

fpin

はフ レーム同期回路において生成されるフレーム同期信号

(fp

)であ り,先頭の

101010

のプレアンブルを検出し,次のフレームにお ける先頭ビットとタイミングを会わせて出力されている‘

(D

プレアンプル付き符号語

ICHAN

のシフトレジスタ

sr_out

への読み込み

25.6kb/s

のプレアンブル付き符号語に

HAN

25.6kHz

クロッ クの立ち下がりエッジにおいて,

16

ビットのシフトレジスタ

sr out

に格納しているが

,Tl

のタイミングにおいてレジスタの 内容は図

3.7

に示すように

ABO3h

になっている.符号語

ICHAN

はこの

srout@)~sr_out(9)

に入っている.

sr out

buf2_out

への読み込みタイミング 符号語

ICHAN

16k1

セクロックで動作する

10

ビットのレジ スタ

bu

out

に読み込み,プレアンブル除去と速度変換を行う,

読み込みのタイミングを得るために,

25.6kHz

クロックで半ク ロック遅れているフレーム同期パルス

fpin

の立ち上がりエッ ジ]

2

を用いる,そのためにフレーム同期信号

fpin

3

ビット のフリップフロップに入力して

2048kHz

クロック

do

の立ち上 がりでサンプリングし,そのエッジ

edge_out

を取り出す

フレーム同期信号

fpin

のエッジ

edge_out

が生成された時点

(5)

p11_in

C(2048kHz)

I eni, sr_sw生成

16kHz クロック生成

++

H

en2, ping_pong_change read mode生成

25.6kHzクロック生成

H

Pmgout ping_out

トトー

pongout

16kHz

output

-

AA

25.6kHz

‘ 読み

出し Pong=。ut →制御

4

1

, 《 きみ御 書込制

り喜ff:

響鷺難議麟繊二蕊薫蕪蕪二 I 二二薫蕊薫 I 蕊戴蕪

) 〉一 ー一

D rst

'’・“博

'pfl,

D.0k

ckl6khzj

output

LlI IlIIIlIIlII ー Ll ー 主ま 一 」 一 I ー一 t , ー I 土上上 I L 土上 1 1 ~

- en2.out

ィ’『●“ー”“ーα』● ~

p1質”博一phar*e

'..OO‘国●●田●1●●’●1●..‘●●.く●●.●.O''''''''

田◇cnt22Out 田◇pN.out

田◇poni.put (ItI"4ii加雪便ニ,匹,唖,(唇,gD 1E

静岡理工科大学紀要 19

では,図3.7Tlに示したようにシフトレジスタsr oulにはプ レアンブル付き符号語ICHANが格納されている. edge_out=1 のタイミング12Sout(の~srout(9)に入っている符号語 ICHANbuf2 outに読み込む,図3.7の例では,sr outに入っ ているABO3h の下位10ビットである303hbuoutに読み込 まれている.ABO3h は,図3.7におけるプレアンブル付き符号 語d 血においてエッジ間を16 進数で表した値に対応する.

buf2 outに読み込む具体的なタイミングは以下の通りである,

edge_in=1 fl elk1エッジ β16kHz クロックの生成

clkl6kHzl, clkl6kHzNおよび叫1 outはすべて2048kHzク ロックの立ち上がりエッジで動作する.4outは,2048kHzク ロックと16kHzクロックの上ヒ12812である64をカウントす る6ビットのカウンタである.edge_out=1あるいは41 out = 3Fh(63)になると反転し,16kHz クロックを生成する・

(4)符号語ICHANの取り出し

符号語ICHANを取り出すために,以下の条件を満足すると

きにシフトレジスタbuf2 outのシフトを行っている.

qtl_out63 fl clkl6kHz_I=0 fl ciktエッジ 4.送信部の構成

4.1 送信部の構成およびタイミングチャート

4.1に送信部のブロック構成を,図42に送信部全体のシミ ュレーションによるタイミングチャートを示す.16k1セクロッ クで動作する入力信号pn_hi6ビットのプレアンブルパター ン101010 をイ、」加し,25.6kHz のクロックに速度変換して出力信 号ouutを出力している・

速度変換のためにシリアル入力,パラレル出力動作の2つの 16ビットシフトレジスタpingmおよびpong_outを用いてダ ブルバッファー動作を行わせている,

41 16kHzクロックおよび25.6kHz クロックの生成 8192kHzの水晶発振回路からの入力cik512分周および320 分周し,16kHz クロックおよび25.6kHzクロックを生成してい る.16kHz クロックlシ、ルス発生器のFXf端子に入力し,C止 と同期のとれたPN 信号を発生させるために使用している.

25.6kHzクロックは,回路内部における使用が主目的であるが,

モニタするために外部にも取り出している.

4.1 送信部のブロック図

43 ダブフいッファーの制御信号 以下の制御信号を作成し使用している‘

'eni_out 16kb/s の入力信号(pn 血)の中央で立ち上がり,

8192kHz 1クロック後に立ち下がる信号.pn_in ping_o皿あるいはpong_outのどちらのバッフアー に書き込むかを制御する.

sr SW eni out=1のとき,8192kHz クロックc]kの立ち上が りで動作する(図示されていない)カウンタcntll 9になると状態を反転する.なお図4.2の表示で 先頭に波形のマークがついているのは内部信号であ り,実際には論理が反転されて表示されている,

くトck万欧hz ロ布

enl.oui

~~ ~ ~ ~

~

“賓一洲

4.2 送信部のシミュレーション結果

(6)

CLKRO(25 .6kHz) bit frame douki

FSRO(1 .6kHz)

serial port (MCBSPO)

ICHAN(lObit) 2048kHz(8192kHz) 25.6kHz

fsr out

IN to DSP

20 Vol.17, 2 0 0 9

・en2 out 25.6kHz

クロックの立ち上がりエッジで立ち上がり,

8192k1

セ で

1

クロック後に立ち下がる信号,

g_pong_change

信号と共にダブルバッファーから 信号を読み出すタイミングを制御する

.

・pingpong..phange en21out=1

のとき,いずれのバッファー からデータを読み出すかを制御する.

・re

mode out

読み出し時に,データとプレアンブを切

り分けるための制御信号,

4.4

ダブルバッフアーへの書き込みおよび読み出し

(1

) 書き込み

下記の条件が満足されるとき,

8192kHz

クロックの立ち上が りで書き込む.

sr sw=O fl eni out=1

pong

へ書き込み

sr sw=1 fl eni out=1

・・・

ping

へ書き込み

② 読み出し

下記の条件が満足されるとき,

8192kHz

クロックの立ち上が りで読み出す

ping_pong_change=O fl en2_out=1 fl read mode=1

・・・

ping

から読み出し

ping_pong_change=1 fl en2_out=1 fl read mode=1

・・・

pong

から読み出し なお

read mode=O

のときはプレアンブルを読み出す.読み出 しは

case

文を用いて記述した.

5

.ビット同期回路の特性評価

5.1

符号誤り率の測定

送信部からパルス発生器の

E)f

入力端子に加えた

16kHz

ク ロック信号によってパルス発生器を動作させ,

l6kb/s, 23

PN

信号を発生させ,その信号を送信部の

pn_in

端子に入力して プレアンブル付き符号語

ICHAN

に相当する信号を出力させた.

この信号を第二の水晶発振回路(

8192kHz

)のクロックで制御 される受信部に入力し,プレアンブルを除去して

PN

信号を取 り出し符号誤り率測定器に入力して符号誤り率を測定した,

測定は

2

回に分けて行い

,

5

時間の測定においてエラーフ リーを確認した.これは符号誤り率に換算して

3.5X1

ゲ以下を

2

回確認したことになる.

5.2

送信部および受信部における

25.6kHz

クロックの測定 図

5.1

は送信部の

25.6kHz

クロックでオシロスコープにトリ ガをかけて,受信音防、ら生成される

25.6kHz

クロックをストレ ージ機能を動作さて撮影した写真である

.

受信部クロックの立 ち下がりはクロック周波数の偏差に基づいて,太くなっている 部分にばらついており,ジッタを発生しているが,カウンタに よるスリップ制御の効果が確認できる‘ジッタの大きさは

4.6

pp

以下である.

5.3

ビット同期回路の周波数偏差に対する耐力

受信部の水晶発振回路(

8192kHz

)の代わりにパルス信号発 生回路を接続し,その周波数を変えて符号誤りが発生する限界

周波数を測定した.その結果パルス発生器の周波数が

8000kHz

~8470kHz

においてエラーフリーとなることを確認した.周波

数偏差に換算すると,

12.3%~+3.4

%が許容偏差であった.

5.1 25.6kHz

クロックの観測結果

α

SOOns/div) 6. LD-CELP

コーデックへの応用

6.1 CODER

への応用

CODER

では図

2.3

に示した伝送路フオーマツトを作成する

必要がある.このとき必要になる

25.6kHz

クロックを

DSP

クロ ックからタイマ

10

を用いて作成する.

25.6kHz

クロックの整数倍の関係にあるクロックとして

192MHz

を選択するものとすれば 図

6.1

に示したようにタイ

10

を設定すれば良い.このときプログラムにおいて以下の

C

言語命令を実行し,

CPLD

のセレクタを選択してタイマ

10

の出力先力汐陪

β

インタフエース①の

45

番ピンである

X_IDUTh

に出力されるようにしておく必要がある.

DSKS51O_rset(DSKS51O_MISC,TINOSEL);

1.6k1

セのフレーム信号は,内部のサンフりレレート生成器を図

6.1

に示したように設定することによって得られる.出力信号

X DXO

は外部インタフエース(②汝)

24

番ピンから出力される,

なお外部インタフエースの電源電圧は

3.3V

系になっている.

62 DECODER

における

DSP

クロックの選択

DECODER

にビット同期回路を実装するためには本検討で

示した

bit frame douki

回路を図

6.3

のように接続すれば良い.

ここで

2048k!

セ (あるいは

8192kHz

)クロックを

DSP

クロツ クに基づいて生成する必要がある.

6.3 DECODER

とビット同期回路の接続

(7)

フレーム 同期パルス の周期

(oh)

192MHz

【 I O/1 「コ【 う 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79

静岡理工科大学紀要

21

ED

フレーム同期 ビットの幅

、、

CLKGDV FPER FWID (25.6kHz) CLKR pin 1

→ト 」ー 」ー →ト 」ー 」ー

- I rer

三 - CLKRP pin + -L)t. を→ニ◆→ Frame PulseCLKG

CLKSM=0

丁一ーーーー」 ト

S

LKE

=」

McBSPO Clock Generation using DSP Sample Rate Generator.

TIMER PERIOD=3749

TIMER PRESCALE=0 CPLD

CP=1

(トグルモード)

(25.6kHz) X-TOUTO

+ ト

」 山 日

P

(25.6kHz)

階』

G

TIMER PERIOD+1

~ 十 十 十 十

TIM=0 TIM=0 TIM=OTIM=0

TIMO (7500

分周)

DSP TIN!

TOUTO T

ブログラムで

DSKS5 10_rset(D5K5510_MISC,TINOSEL)

を実行して

TOUT

出力を選択

1 357 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45

×

→く

x

×

X-DXO

橿

24

番ピン

25.6kHz

《 ―

X-.TOUTO (<X~CI KXI)

<<X-FSX

『首

》一

X-CLKRO

6.1 CODER

における外部インタフェースの配線図

+5V

JOB PLL MULT

5 4 32 1 0

~

PLL DIV PLL ENABLE BYPASS DIV BRAKLN LOCK Fig

DsP

192MHz

mTKER DtDJOD 'l

#と凸二 叫―

γI

+

Clock Mode Register(CLKMD

CLK MasterClock

cLK =PLLMULTI

DSP = x

(1280kHz)

:IO

ポートの

lCOOh )

CLKRO

>>X

>>X -FSRO

橿

(MasterCiock PLLDIV+1

= 24MHz)

TIMER PERIOD=74 TIMER PRESCALE=0 CP=1

(トグルモード)

<<X

)

-TOUTO 1280kHz CPLD

/

→く x

X-TOUTO

,TINOSEL

出力を選択

TIMO

(150

分周)

DSP TIN!

TOUTO

10_rset(DSK55

を実行して

TOUT DSK55

プログラムで

10_MISC

-DRO

\ +1

-

ハノ

UT

」 了

X

30

番 ピンへ 十 十 十 十

TIM=0 TIM=0 TIM=OTIM=0

、 13 579 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 喫談 『

×

『 ノ

6.2 DECODER

における外部インタフエースの配線図

15 14 13 12 11-7

ED

(8)

chan

''i'' ic

[

El 碑碑

ichan[397}

I ,, chan[

[ 叩 I

ichan[39

iclian[3]

一ー‘

2.00W 2 2.00W f -f-14.3a 500r / Sng1 +2 STOP

22

DSP

にクロックを供給する

DSP

クロック発生器の動作の制御,

監視は図

6.4

に示すクロックモードレジスタ

CLKMD q0

ポー

トの

lCOOh

)を通じて行うことができる.

15 14 13 12 11-7

lOB PLL MULT

6-5 4 32 0

PLL DIV PLL ENABLE BYPASS DIV BRAKLN LOCK

6.4 Clock Mode Register(CLKMD).

DSP

に入力されているマスタークロックは

24MIHJz

であり,こ れを内蔵の

P1

エを用いて最高で

200ll-Jz

にまで上昇させて用い ることができる,

Pu

」を使用するためには

PLLENABJE=1

にし てクロック発生器をロックモードに設定する

.DSP

クロックの 周波数は次式によって計算し

CLKMD

の値を決めれば良い.

DsP~cLK= PLLMULTI

DSP_CLK = x MasterCiock PLLDIV + 1 (1) (MasterClock = 24MHz)

また以下の命令を実行して設定する(

CLKMD=2CD3h

の場合)

. MOV #(2CD3h), port(#lcOOh)

タイマ

10

を用いて

DSP

クロックから受信部カウンタの高速 クロックを生成するためには以下の条件が必要である.

① 分周比が整数である.

② かつ偶数である

②の条件は,

DSP

のタイマ

10

からクロックを生成するときト グル動作を行わせるので,その結果として分周比が必然的に偶 数となるためである.

なお生成される周波数

TIIT

rate

は次式で与えられる.

llNT rate= Input clock rate TINT rate =

(PRD+1)x(TDDR +1)

ここに,

Input clock rate

DSP

クロック,

PRD

はメインの周期 レジスタ,

TDDR

はプリスケーラ周期レジスタである.

カウンタの高速クロックとして

2048kHz

あるいは

8192kHz

クロックを用いる場合について,これらのクロックと整数比と なる

DSP

クロックを探したところ,送信側と同一の

DSP

クロ

ック

192MHz

を含めて条件を満たすクロックは得られなかった.

次にカウンタの高速クロックの変更も含めて周波数を探った ところ,

DSP

クロックー

192MHz

,受信部の高速クロック=

= 1280kHz,

分周比=

150

と言う解が得られた.但し,この場合に は同期状態においてスリップを制御しビット同期を確立するた めに使用するカウンタの最大値は,

80

ではなく

50

とする必要 がある.

DSP

クロックー

192MHz

とする

PLLMULT

および

PLLD1V

の組み合わせは前述の式から

3

通りある

.P1

エのロツ

ク時間は

PLLMULT

の小さい方が小さくなる.したがって

DSP

のタイマ

10

を用いて

1280kHz

クロックを生成するためには,

P1

」八

lULT:

8, PLLD1V=0

として

CLKvD=2413h

に設定すれば 良い.

文献

[5

]における処理プログラムの実行時間の検討は,

200MHz

のクロックを用いたときに行っており,このときには

Vol.17, 2 0 0 9

処理時間に十分余裕のある結果が得られている.したがって

192MHz

DSP

クロックであればほぼ同等の結果が得られる ものと思われる.

DSP

クロックのその他の候補としては

128MHz

も考えられ この場合には分周比は

ltX

〕となる.しか しながら

DSP

クロックを

128MHz

に低下させる場合には,コー デックの実行時間の再評価が必要である,

63

ビットフレーム同期回路のシミュレーション結果 カウンタの高速クロックを

1280kHz,

カウンタの最大値を

50

としたビットフレーム同期回路のプログラムを

VHDL

で作成 し,シミュレーションを行った.

65

はリセット直後のシミュレーション結果である.この 時点では

syncset=0

であり,まだプレアンブル同期が確立されて いないが,約

19(X

S

においてプレアンブル同期が確立さ才に いる,

Ichan

血のエッジが

bi

edge_out

として抽出されているこ とが分かる.

6.6

6(mS

付近のプレアンブル近傍を拡大した図である.

25.6kHz

クロックが

2

つあるが,

1280k1

セ クロック

cik

から生成 されるのが

c1k25.6khz i

である.この信号を一旦

IC

の外に取り 出して再度入力して

25.6kHz

のクロックとして用いており,こ れが

c1k25.6khz

血である,この結果から以下が分かる.

bi

edge_out

ichan_

血 を

elk

で打ち抜いた

2

クロック目で 生成される,

c1k25.6khz_i

はカウンタ

qtl=0

および

qtl=25(19h

)で反転す る,その間の時間は正しく

1

周期の

1/2

になっている.

ichan out

cIk2S.6khz i

の立ち上がりエッジで,

cik

の立ち 上がりエッジで生成されている.

6.7

800 Us

付近の拡大図である.エッジの生成はないが フライホイール動作によって

clk2S.6khz_i

が正しく生成されて いる.

6.4 McBSP

におけるビットオーダリング

2.3

に示した伝送路フォーマットにおいて

16

ビットデータ が転送される場合には,データは

MSB

が最初に,

LSB

が最後 に伝送される.

CODER

におけるこの順序については文献国

で示した

Fig 7.3

の結果から確認ができている.これを図

65

に再掲する.

65 ROM

ベースで測定した

CODER

の出力波形

(上段】

ICHAN

,下段】

FSX)

(9)

インbitー~eーOut

19.531 25 us

fD

皿廷誠

I

馴助

i

且‘屠些》

g

,四唇》藍,母

O

働琶》.四を》邑蛇,

..E!,G,(

!】!》(叫@

‘》’c1c25.隊hz~m

い L-m

'856,

.叱可,',二l可,,.,可”=,,,削

854

一一

一一一

一思

ー 『一

一一

一一

'r 0.ck

CU電隊hzi 田つ中1.out

'"bhanh

く’fsr . cbanout

: yncset

6.8 ビットフレーム同期回路のシミュレーション結果(その3)

bit_edge_out

I I

. ,I,, ,I...

~

fsr でトiChfl_OUt

syncset

6.7 ビットフレーム同期回路のシミュレーション結果(その2)

静岡理工科大学紀要 23

6.6 ビットフレーム同期回路のシミュレーション結果(その1)

, ias31答 us ,

.色●ど

i

●〈

!1

》(愛”〈雪(ひ回(

iI,(ia(i

コ母母〈

i

」加】範恥ョ(浄 !馴

iI I

,”唾,

iD'Ii,iI

,《

mIl

馴助

IA

ck2b_6khz

ー 「――ー

I,

1

I-

(10)

24 Vol.17, 2 0 0 9

6.5

α)DER

のメモリに評価用のディジタル音声

spf

を内

蔵させておき,これを

ROM

ベースで構成した

α)DER

から出 力させて観測した符号語

ichan[

切近傍の波形である

.ichan[O

]に おいては

ICHAN

に前置させるプレアンブ

J

レベターンをオー

)

0

とし,他のワードでは

10

ノ、ターンであると言う規則性を強制 的に乱すようにした,すなわち符号則違反(

CRV

)を付加して おり,図の中心の直ぐ右側の部分に

CRV

が見えているにれ

によって

ICHAN

を特定できるようにしている

.

評価データは

ichan[396]=235h, ichan[397] = 336h, ichan[398j = 25Fh, ichan[399] = 255h , ichan[0] = 252h , ichan[1] = 39Eh , ichan[2] = 39Dh,chan[3] = 251h

である.図

6.5

の測定結果からプレアン ブルの後ろにこれらの

ICHAN

が確認でき,

MSB

からビットが 送信されていることを確認できる.また

ICHAM

とフレーム信 号

FSX

1

クロックの遅延になっている.

DECODER

においては,図

22

に示した

McBSPO

およびピンポ ンバッファ間では,図

2.3

に示した

16

ビットのデータが入力さ れるので

MSB

から送信が開始される順序が変わることはない.

但し,プレアンブルを取り除くために

DECODER

処理プログラ ムにおいてプレアンニカ

l

イ寸き符号語に

HAN

3FFh

との

AND

を取ってから入力する必要がある.

7

.むすび

本論文では,受信波形を受信波形の持つクロック周波数の

80

倍の高速クロックで多点サンプリングし,カウンタによってス リップ制御を行うことによってビット同期を確立する方式のレ イヤ

1

システムを設計,試作し評価した検討結果を示した.

(1) 16kb/s

23

PM

信号を用いて試作したレイヤ

1

システ ムの符号誤り率を測定し

10

時間の観測においてエラーフ リーを確認し,その有効性を検証した.

② 受信部におけるカウンタの高速クロックの周波数を変え ながら符号誤りが発生する限界周波数を測定したところ,

8000k11z~8470kHz

においてエラーフリーを確認した.周 波数偏差に換算すると

-2.3%- +3.4

%が許容偏差であった.

G

)検討したビット同期回路の

LD

CEI

了コーデックへの応用 を検討した.

CODER

では

DSP

クロックを

192MHz

とし,

これをタイマ

10

によって

7500

分周して

25.6kHz

クロック を作成してやれば良いことが分かった.

DECODER

では,タイマ

10

を用いて,

DSP

クロックから 受信部の高速クロックを生成するために,分周比が整数倍

でかつ偶数になる周波数関係を探る必要があった

.

その結果,

DSP

クロックー

192MHz

,受信部の高速クロックー

1280kHz,

分周比=

150

とすれば良いことが分かった,この場合には同 期状態において,スリップ制御を行ってビット同期を確立す るためのカウンタの分周比を

50

とする必要があることが分 かった.

以上の検討結果に基づいて,今後

LD-CELP

方式コーデック にビット同期回路を組み込み,コーデックを完成させてその特 性の評価を行っていくことを目指したい,

[謝辞]

ビット同期回路に関して有益なご助言を頂いた本学電気電子 工学科 郡 武治教授に感謝します.また卒業生の外間大介君,

市川琢磨君,卒研生のメ梶達也君には回路の製作および測定を 担当して頂いた.ここに記して感謝の意を表します一

[参考文献]

[1] "J1

G728

低遅延符号励振線形予測(

LD-CEU

り を用いた

l6kbit/s

音声符号化方式”,電信電話技術委員会

[司袴田吉朗,溝口真規,緒方渉,菅野純一,

"LD-CEI

了アル ゴリズムを適用した音声

CODER

の開発”,静岡理工科大学 紀要,第

11

巻,

pp.35

59 (2003)

[3

]袴田吉朗,石田雄三,

"LD

ー〔正

I

了アルゴリズムを適用した 音声

DECODER

の開発”

,

静岡理工科大学糸匿

g

,第

12

巻,

pp.75 96 (2004)

[司袴田吉朗,遠藤直樹,

'tD~cELP

音声コーデックの

ROM

に関する検討”

,

静岡理工科大学紀要,第

13

巻,

pp.9-14

(2005)

巨]袴田吉朗,

"C551ODSK

を用いた音声コーデックの開発”,静 岡理工科大学紀要,第

14

巻,

pp.13-24 (2006)

回増田智美,袴田吉朗,

'PN

信号発生器および符号誤り率測定器 の設計と試作”, 静岡理工科大学紀要,第

10

巻,

pp.37-54

(2002)

[7] "TMS320055x DSP CPU Reference Guide."

[8] "TLV32OAIC23 Stereo Audio CODEC, 8-to 96-kHz, With Integrated Headphone Amplifier Data Manual."

[9] "TMS320055x DSP Peripherals Overview Reference Guide."

[10] "TMS32OVCS5O1/5502/5503/5507/5509/5510 DSP Multichannel Buffered Serial Port (McBSP) Reference Guide."

[11] "TMS32OVC551O DSP Timers Reference Guide."

(1)

(4)

図 6.3 DECODER とビット同期回路の接続
図 6.2 DECODER における外部インタフエースの配線図

参照

関連したドキュメント

In this section, we present the transient queue length distribution at time t and a rela- tionship between the stationary queue length distributions at an arbitrary time and

The output of the sensor core is a 12-bit parallel pixel data stream qualified by an output data clock (PIXCLK), together with LINE_VALID (LV) and FRAME_VALID (FV) signals or a

The master then generates a (re)start condition and the 8-bit read slave address/data direction byte, and clocks out the register data, eight bits at a time. The master generates

This is done by starting a Byte Write sequence, whereby the Master creates a START condition, then broadcasts a Slave address with the R/W bit set to ‘0’ and then sends two

counter (may be divided into 8-bit timers), 16-bit timer (may be divided into 8-bit timers or 8-bit PWMs), four 8-bit timers with a prescaler, a base timer serving as a

TCLKP_AB TCLKN_AB DOUT0P_A_AB DOUT0N_A_AB DOUT1P_A_AB DOUT1N_A_AB DOUT0P_B_AB DOUT0N_B_AB DOUT1P_B_AB

Two register settings enable motor operation during this evaluation time: bit PDTC determines if the motor should be running during this time at all, and PDTSEL selects a motor

Should Buyer purchase or use ON Semiconductor products for any such unintended or unauthorized application, Buyer shall indemnify and hold ON Semiconductor and its officers,