読者です 読者をやめる 読者になる 読者になる

ますはらの日記(?)

無線通信の勉強をしてる学生のぼやき(?)

テールビット

どうも。今日も気楽に書きたいと思います。

 

早速ですが、タイトルに書いた「テールビット」とは、一体何でしょう?

 

説明しよう!

畳み込み符号を用いた通信を行う際に、実際に送信したいデータの後ろに余分なビット列を付加することで、畳み込み符号を生成する際に用いるメモリを初期状態(通常、全部0が入った状態)に戻し、畳み込み符号を復号(ビタビ復号)する際により正確に元のデータに復号する。

この時に付加される余分なビットこそがテールビットなのだ!

気になる方は「畳み込み符号」とか「テールビット」って調べるとよくわかりますよ〜

ここではあえて引用したりしないでおきます。(ただ単に選ぶのがめんどくさい←

 

まぁ、茶番?はこのくらいにしましょう(笑)

最近では畳み込み符号を用いた通信のシミュレーションに取り組んでいるのですが、ビタビ復号も実装に手間取っていますが、同時にテールビットの生成も手間取っていました。

畳み込み符号を生成するときのメモリ数に応じて付加するテールビットの長さも変わりますし、何より状態遷移を考慮して考えるのがもう。。。

 

ところが、明朝3時に64状態の非組織的で再帰式の符号器におけるテールビットの生成関数(符号器に組み込んでしまっているので単体の関数ではないですが)を作ることができました(笑)

ランダムに生成した送信信号を元に、何回も何回も腐るほど実行し、確認。

最後のメモリの状態が初期状態に戻っている。すごく気持ちいい。

 

こんな感じで充実しております(笑)

 

余談ですが、講義の課題でMATLABでプログラムを書く機会がありました。便利すぎるがゆえに訳がわからないという問題もありましたが、いずれは使いこなしたいものです☆*:.。. o(≧▽≦)o .。.:*☆

 

ではでは、今日はこの辺で!