(57)【要約】【課題】ＲＬＣにおける秘匿処理をリアルタイムに実行するための秘匿処理装置を得ること。【解決手段】本発明にかかる秘匿処理装置は、トランスポートブロックを、特定の送信時間間隔に同期したタイミングで、ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードに分離および分解するＭＡＣ（３）による第１工程と、第１工程が終了した時点に同期したタイミングで、3GPP規格にて勧告された既知の処理で算出したKEY-STREAM-BLOCKを用いてペイロードに対して秘匿処理を行うＲＬＣ（５）による第２工程と、第２工程が終了した時点に同期したタイミングで、ＭＡＣヘッダ、ＲＬＣヘッダおよび秘匿処理により復号化されたペイロードに対して、トランスポートブロック単位の順序制御を行うＭＡＣ（３）による第３工程と、秘匿処理以外の3GPP規格にて勧告されたＲＬＣ機能を実行するＲＬＣ（５）による第４工程と、を有する。【選択図】        図３
2006020133.tif 000002
【特許請求の範囲】
【請求項１】
送信時間間隔でトランスポートブロックを受信し、一定時間内に秘匿処理に必要なパラメータを前記トランスポートブロックから抽出し、その抽出結果を用いて受信側における秘匿処理を行うＭＡＣ（Medium Access Control）およびＲＬＣ（Radio Link Control）による秘匿処理装置において、
前記トランスポートブロックを、前記送信時間間隔に同期したタイミングで、ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードに分離および分解するＭＡＣによる第１工程と、
前記第１工程が終了した時点に同期したタイミングで、3GPP規格にて勧告された既知の処理でKEY-STREAM-BLOCKを算出し、前記ペイロードと前記KEY-STREAM-BLOCKとの排他的論理和を演算することにより前記ペイロードに対して秘匿処理を行うＲＬＣによる第２工程と、
前記第２工程が終了した時点に同期したタイミングで、前記ＭＡＣヘッダ、ＲＬＣヘッダおよび秘匿処理により復号化されたペイロードに対して、トランスポートブロック単位の順序制御を行うＭＡＣによる第３工程と、
秘匿処理以外の3GPP規格にて勧告されたＲＬＣ機能を実行するＲＬＣによる第４工程と、
を含むことを特徴とする秘匿処理装置。
【請求項２】
前記送信時間間隔で受信したトランスポートブロックを、当該トランスポートブロックの最大量を記録可能な第１のメモリに記録し、
前記第１工程では、前記第１のメモリに記録されたトランスポートブロックを用いて前記分離および分解処理を行うことを特徴とする請求項１に記載の秘匿処理装置。
【請求項３】
前記第１工程では、前記分離および分解処理の結果として得られるＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードを、前記トランスポートブロックの最大量のＮ（任意の自然数）倍の量を記録可能な第２のメモリに記録し、
前記第２工程では、前記第２のメモリに記録されたペイロードに対して秘匿処理を行うことを特徴とする請求項１または２に記載の秘匿処理装置。
【請求項４】
前記第２のメモリにおいては、
前記ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードを、それぞれ異なるアドレスに配置し、
また、ペイロードを各メモリのワード長毎に分割して配置し、
さらに、ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードが、それぞれメモリのワード長の整数倍に合わない場合は、そのアドレスの空き領域にブランクを挿入することを特徴とする請求項３に記載の秘匿処理装置。
【請求項５】
前記第３工程では、前記ＭＡＣヘッダ、ＲＬＣヘッダおよび順序制御後のペイロードを、前記トランスポートブロックの最大量を記録可能な第３のメモリに記録し、
前記第４工程では、前記第３のメモリに記録された情報を用いてＲＬＣ機能を実行することを特徴とする請求項１〜４のいずれか一つに記載の秘匿処理装置。
【請求項６】
前記第３のメモリにおいては、
前記ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードを、それぞれ異なるアドレスに配置し、
また、ペイロードを各メモリのワード長毎に分割して配置し、
さらに、ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードが、それぞれメモリのワード長の整数倍に合わない場合は、そのアドレスの空き領域にブランクを挿入することを特徴とする請求項５に記載の秘匿処理装置。
【請求項７】
前記第１工程では、さらに、前記ＲＬＣヘッダに含まれる「RLC SN」を抽出し、
前記第２工程では、前記「RLC SN」を用いて前記KEY-STREAM-BLOCKを算出し、その結果を第４のメモリに記録し、前記ペイロードに対する秘匿処理を行わず、
前記第３工程では、前記ペイロードと前記第４のメモリに記録されたKEY-STREAM-BLOCKとの排他的論理和を演算することにより前記ペイロードに対して秘匿処理を行い、その後、前記順序制御を行うことを特徴とする請求項１〜６のいずれか１つに記載の秘匿処理装置。
【請求項８】
送信時間間隔でトランスポートブロックを受信し、一定時間内に秘匿処理に必要なパラメータを前記トランスポートブロックから抽出し、その抽出結果を用いて受信側における秘匿処理を行うＭＡＣ（Medium Access Control）およびＲＬＣ（Radio Link Control）による秘匿処理方法において、
前記トランスポートブロックを、前記送信時間間隔に同期したタイミングで、ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードに分離および分解するＭＡＣによる第１工程と、
前記第１工程が終了した時点に同期したタイミングで、3GPP規格にて勧告された既知の処理でKEY-STREAM-BLOCKを算出し、前記ペイロードと前記KEY-STREAM-BLOCKとの排他的論理和を演算することにより前記ペイロードに対して秘匿処理を行うＲＬＣによる第２工程と、
前記第２工程が終了した時点に同期したタイミングで、前記ＭＡＣヘッダ、ＲＬＣヘッダおよび秘匿処理により復号化されたペイロードに対して、トランスポートブロック単位の順序制御を行うＭＡＣによる第３工程と、
秘匿処理以外の3GPP規格にて勧告されたＲＬＣ機能を実行するＲＬＣによる第４工程と、
を含むことを特徴とする秘匿処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、3GPPで規定された秘匿処理を実現するための秘匿処理装置および秘匿処理方法に関するものであり、特に、受信側において秘匿処理をリアルタイムに実行するための秘匿処理装置および秘匿処理方法に関するものである。
【背景技術】
【０００２】
以下、従来の秘匿処理について説明する。たとえば、下記非特許文献１には、3GPP（3 rd Generation Partnership Project）規格によるプロトコルスタックの概要が記載されている。また、下記非特許文献２には、トランスポートチャネルHS-DSCH（High Speed Downlink Shared Channel）を使用する際のＵＥ（User Equipment）側のＭＡＣ（Medium Access Control）のアーキテクチャが記載されている。また、下記非特許文献３には、それぞれ非確認型データ転送（ＵＭ：Unacknowledged Mode）ＲＬＣ（Radio Link Control）、および確認型データ転送（ＡＭ：Acknowledge Mode）ＲＬＣの接続モデルが記載されている。
【０００３】
従来のユーザ端末のＲＬＣは、ＡＭまたはＵＭを使用する論理チャネルに対して秘匿（ciphering/deciphering）処理を行っている。秘匿処理は、「RLC PDU（Protocol Data Unit）」内のペイロードに対して行われる。
【０００４】
また、従来は、移動体端末試験装置におけるデータ送信処理でＵＭまたはＡＭの場合に、ＲＬＣが作成したパラメータをＭＡＣに通知し、ＭＡＣが専用化されたマスクデータ（key stream block）演算器によりマスクデータを算出することによって、移動体通信端末の秘匿に関する試験を高速かつ安定に行っていた。また、ＵＭ，ＡＭのデータ転送モードに関わらず、単一のマスクデータ演算器でマスクデータを算出することによって、試験装置の構成を簡素化していた（特許文献１参照）。
【０００５】
【特許文献１】特開２００３−３１８８００号公報  第４頁〜第５頁、第１図、第６図
【非特許文献１】3GPP Specification “TS25.301 Version 5.2.0” 3rd Generation Partnership Project, 13 September 2002, P31, Figure 12
【非特許文献２】3GPP Specification “TS25.321 Version 5.7.0” 3rd Generation Partnership Project, 04 January 2004, P8-13, Figure 4.2.3.2.1, Figure 4.2.3.3.1
【非特許文献３】3GPP Specification “TS25.322 Version 5.7.0” 3rd Generation Partnership Project, 04 January 2004, P10-16, Figure 4.3, Figure 4.4, P24-37, Figure 9.2, Figure 9.3
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に開示された、マスクデータ演算器を用いる従来の秘匿処理は、送信データにのみ適用可能であり、たとえば、受信データについては、ＲＬＣが、マスクデータ生成を行うためのパラメータを、ＭＡＣが受信データを処理する前に通知することができない、という問題があった。
【０００７】
上記問題点を図７，図８を用いて詳細に説明する。図７は、3GPPで規定されるHSDPA（High Speed Downlink Packet Access）通信でない場合のＵＥ側におけるプロトコル間のデータの流れを示す図である。また、図８は、3GPP（3GPP Specification “TS33.105 Version 4.1.0” 3rd Generation Partnership Project, 04 July 2001, P14-17, Figure 1）で規定される送信データと受信データに対する秘匿処理を示す図である。なお、図示のPLANETEXT,CIPHERTEXTは、秘匿対象である「RLC PDU」のペイロードに対応する。暗号化は、PLANETEXTに対してKEY-STREAM-BLOCKをビット毎に排他的論理和演算してCIPHERTEXTに変換する。また、復号は、CIPHERTEXTに対してKEY-STREAM-BLOCKをビット毎に排他的論理和演算してPLANETEXTに変換する。
【０００８】
まず、秘匿処理のためのマスクデータを生成するためのパラメータ算出には、ＲＬＣヘッダ１０１−２に含まれる情報を用いる必要がある。送信データの場合、ＲＬＣは、「RLC PDU」をＭＡＣへ送るときには既にＲＬＣヘッダ１０１−２の内容を知っているので、秘匿パラメータを算出して、その算出結果を「RLC PDU」と同時にＭＡＣへ通知することができる。しかしながら、受信データの場合、ＲＬＣヘッダ１０１−２は、通信相手のＲＬＣが付加した情報であり、その内容を知るにはＲＬＣがＲＬＣヘッダ１０１−２を解析する必要がある。したがって、「RLC PDU」をＭＡＣから受け取る前に、ＲＬＣは、秘匿パラメータをＭＡＣへ通知することができない。
【０００９】
したがって、従来の方法では、ＭＡＣは、受信時にマスクデータを算出することができず、装置を高速かつ安定に動作させることができない。
【００１０】
一方、3GPPのrelease5以降で標準化されたHSDPAのデータ受信に適用する場合は、下記の処理が行われる。図９は、3GPPで規定されるHSDPA通信の場合の、ＵＥ側におけるプロトコル間のデータの流れを示す図である。TS25.321によれば、HSDPAで通信を行う場合、ＭＡＣにおいては、自動再送制御(H-ARQ：Hybrid Automatic Repeat Request)を行う。H-ARQにより「MAC-hs PDU」毎に誤り制御が行われ、受信側にて訂正できない誤りが検出されると、受信側から送信側へ再送要求が通知され、誤りのあったデータが選択的に再送される。この結果、訂正できない誤りが発生する通信路では、データが元の順序と異なって受信される。そこで、ＭＡＣにおいては、順序制御（リオーダリング）を行い、順序制御が完了した「RLC PDU」をＲＬＣに通知することがTS25.321で勧告されている。
【００１１】
図１０は、ユーザ端末における一般的なMAC&RLCの構成を示す図であり、3GPPの規格に沿ってプロトコル階層により機能を分割したMAC&RLCの実装例を示している。Ｌ１（レイヤ１）のＰＨＹ１は、通信相手との間で通信媒体（電波）を用いたビット列の伝送サービスを提供する。Transport-Block-memory２は、ＰＨＹ１からの伝送単位であるトランスポートブロックのデータを記憶する。ＭＡＣ（reordering３−１，disassembly３−２）３は、TS25.321に勧告されるプロトコルを実行する機能を有し、RLC-PDU-memory４を介してＲＬＣ（deciphering５−１，AM/UM５−２）５に対して複数の論理チャネルによる伝送サービスを提供する。HSDPA通信の場合、ユーザ装置(ＵＥ)では、受信したトランスポートブロックを順序制御し、正しい順序に戻されたトランスポートブロックを分解し、その結果を論理チャネルのデータとしてＲＬＣ５へ通知する。Reordering-buffer-memory６は、Transport-Block-memory２から入力された複数のトランスポートブロックを、順序制御が完了するまで記憶する。ＲＬＣ５は、TS25.322に勧告されるプロトコルを実行する機能を有し、Ｌ３（レイヤ３）に対してリンクレベルのデータ転送サービスを提供する。このＲＬＣ５の機能には、秘匿処理が含まれる。
【００１２】
たとえば、ＰＨＹ１において訂正できない誤りが発生する場合、Reordering-buffer-memory６には複数のトランスポートブロックが滞留する。さらに、TS25.321によれば、１つのトランスポートブロックには、秘匿対象であるＲＬＣ５のペイロードが複数含まれることから、ＰＨＹ１において訂正できない誤りが多発する場合、Reordering-buffer-memory６には、大量のペイロードが滞留する。そして、ＭＡＣ３からＲＬＣ５へ大量のペイロードが一度に渡され、それらをRLC-buffer-memory７に記憶する。このとき、ＲＬＣ５は、大量のペイロードに対する秘匿処理を実行する必要が生じる。秘匿処理には、比較的長い演算時間が必要であり、大量のペイロードに対して秘匿処理を行うと、処理の輻輳や大きな処理遅延が発生する。
【００１３】
図１１は、ＵＥにおける一般的なMAC&RLCの動作を示すタイムチャートであり、ＲＬＣ５の処理が遅延する例を示している。ここでは、Reordering-buffer-memory６に滞留する４つのトランスポートブロックの秘匿処理を一度に実行している。したがって、次のトランスポートブロックがＭＡＣ３から渡されても、前に渡された４つのトランスポートブロックの秘匿処理が終了するまで、処理が待たされることになる。なお、この例では、４つのトランスポートブロックの場合について記載されているが、TS25.321の規格によれば、さらに多くのトランスポートブロックが一度にＲＬＣ５へ渡されることがある。このような場合、リアルタイム処理の破綻や通信スループット低下などのシステム性能の低下を引き起こす可能性がある。
【００１４】
本発明は、上記に鑑みてなされたものであって、ＲＬＣにおける秘匿処理をリアルタイムに実行するための秘匿処理装置を得ることを目的とする。
【００１５】
また、データ通信にHSDPAが適用され、ＭＡＣにおいて大量のデータが滞留するときであっても、ＲＬＣにおける秘匿処理をリアルタイムに実行し、処理の輻輳を防ぎ、通信スループット等のシステム性能を確保することが可能な秘匿処理装置を得ることを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決し、目的を達成するために、本発明にかかる秘匿処理装置は、送信時間間隔でトランスポートブロックを受信し、一定時間内に秘匿処理に必要なパラメータを前記トランスポートブロックから抽出し、その抽出結果を用いて受信側における秘匿処理を行うＭＡＣおよびＲＬＣによる秘匿処理装置であって、たとえば、前記トランスポートブロックを、前記送信時間間隔に同期したタイミングで、ＭＡＣヘッダ、ＲＬＣヘッダおよびペイロードに分離および分解するＭＡＣによる第１工程と、前記第１工程が終了した時点に同期したタイミングで、3GPP規格にて勧告された既知の処理でKEY-STREAM-BLOCKを算出し、前記ペイロードと前記KEY-STREAM-BLOCKとの排他的論理和を演算することにより前記ペイロードに対して秘匿処理を行うＲＬＣによる第２工程と、前記第２工程が終了した時点に同期したタイミングで、前記ＭＡＣヘッダ、ＲＬＣヘッダおよび秘匿処理により復号化されたペイロードに対して、トランスポートブロック単位の順序制御を行うＭＡＣによる第３工程と、秘匿処理以外の3GPP規格にて勧告されたＲＬＣ機能を実行するＲＬＣによる第４工程と、を含むことを特徴とする。
【００１７】
この発明によれば、ＭＡＣおよびＲＬＣの機能、すなわち、本発明にかかる秘匿処理装置を、上記第１工程〜第４に分割して実現することとした。
【発明の効果】
【００１８】
この発明によれば、たとえば、ＴＴＩ間隔でトランスポートブロックを受けてから一定時間内に、秘匿処理に必要なパラメータを当該トランスポートブロックから抽出できるので、受信側のＲＣＬにおける秘匿処理を、図３に示すようにＴＴＩに同期してリアルタイムに行うことができる。したがって、処理の輻輳を防ぐことができ、ＭＡＣおよびＲＬＣへの要求パフォーマンスを抑えることができるので、低コストで通信スループットなどのシステム性能を確保することができる、という効果を奏する。
【発明を実施するための最良の形態】
【００１９】
以下に、本発明にかかる秘匿処理装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００２０】
実施の形態１．
図１は、3GPP規格によるプロトコルスタックの概要を示す図であり、ユーザ端末（ＵＥ）は、Ｌ（レイヤ）１のＰＨＹ（Physical）１と、Ｌ２のＭＡＣ３，ＲＬＣ５と、Ｌ３からなるソフトウェア群を備え、ＮｏｄｅＢおよびＳＲＮＣ（Serving Radio Network Controller）に接続されている。
【００２１】
ここで、本発明にかかる秘匿処理装置を実現する実施の形態１のＬ２のMAC&RLCの構成について説明する。図２は、ＵＥの構成、および本発明にかかるMAC&RLCの詳細構成、を示す図である。
【００２２】
Ｌ１のＰＨＹ１は、通信媒体（電波）を用いたビット列の伝送サービスを提供し、ＲＦ回路，Ａ／Ｄコンバータ，Ｄ／Ａコンバータ，変復調器，符号化／復号器，制御や信号処理を行うＣＰＵやＤＳＰなどの回路、で構成されている。
【００２３】
Ｌ２のTransport-Block-memory２は、ＰＨＹ１からの伝送単位であるトランスポートブロックのデータを記憶する機能を有する。また、ＭＡＣ３のdisassembly３−１は、HSDPA通信でない場合、図７のデータフローのトランスポートブロックをＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３に分離する機能を有し、一方で、HSDPA通信の場合には、図９のデータフローのトランスポートブロックを「MAC-hs SDU（MAC-d PDUと同義）」へ分解し、さらに「MAC-hs SDU（Service Data Unit）」をＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３に分離する機能を有する。また、RLC-PDU-memory４は、分解および分離されたＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３を記憶する機能を有する。なお、図９のように、１つのトランスポートブロック（「MAC-hs PDU」に相当）に複数の「RLC PDU」が含まれることがあり、その場合は、RLC-PDU-memory４に、複数のＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３の組が記憶される。
【００２４】
また、ＲＬＣ５のdeciphering５−１は、RLC-PDU-memory４に記憶されているペイロード１０１−３に対して秘匿処理を行う機能を有する。また、ＭＡＣ３のreordering３−２は、HSDPA通信でない場合、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２および秘匿処理により復号されたペイロード１０１−３をReordering-buffer-memory６へ転送し、ＲＬＣ５のAM/UM５−２へ通知する機能を有し、一方で、HSDPA通信の場合には、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２および秘匿処理により復号されたペイロード１０１−３をReordering-buffer-memory６へ転送し、リオーダリングが完了した複数のＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３の組をＲＬＣ５のAM/UM５−２へ通知する機能を有する。また、Reordering-buffer-memory６は、秘匿処理により復号が完了してからAM/UM５−２が読み出してＬ３へ転送するまでの間、秘匿処理により復号された複数のＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３の組を記憶する機能を有する。また、ＲＬＣ５のAM/UM５−２は、秘匿以外のTS25.322に勧告されるプロトコルを実行する機能を有し、Ｌ３に対してリンクレベルのデータ転送サービスを提供する。
【００２５】
なお、本実施の形態においては、Ｌ１のＰＨＹ１，Ｌ２のdisassembly３−１，deciphering５−１，reordering３−２，AM/UM５−２の、機能または処理手続を定義しており、実装するハードウェアを規定するものではない。
【００２６】
つづいて、受信側のＵＥの動作について説明する。図３は、ＵＥのＭＡＣ３とＲＬＣ５の動作を示すタイムチャートである。
【００２７】
まず、Ｌ１のＰＨＹ１では、通信相手との間で、通信媒体（電波）を用いたビット列の伝送サービスを提供する。ＰＨＹ１では、受信側の動作として、復調後の受信シンボルを検波し、ＴＴＩ（Transmit Time Interval）単位に受信シンボルに対して誤り訂正および誤り検出を行う。そして、誤りがないと判断された受信データが、トランスポートブロックとしてTransport-Block-memory２に記録される。
【００２８】
Transport-Block-memory２は、図３に示すように、ＴＴＩ間隔で１回更新される。なお、Transport-Block-memory２の更新間隔が一定に描かれているが、ＰＨＹ１の処理時間はデータ量に依存し、データ量はＴＴＩ毎に変動するので、実際の更新間隔は必ずしも一定にはならない。
【００２９】
ＭＡＣ３のdisassembly３−１では、Transport-Block-memory２に記録されたトランスポートブロックをＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３に分離および分解する。処理タイミングとしては、Transport-Block-memory２が更新される度に処理を行えばよいので、実装が容易な一例として、ＴＴＩ周期で処理を開始するようにスケジューリングしている。また、disassembly３−１では、ペイロード１０１−３を、秘匿処理を行いやすいように配置してRLC-PDU-memory４へ記録する。なお、「秘匿処理を行いやすい配置」の詳細については後述する。HSDPA通信でない場合とHSDPA通信の場合で動作が異なるので、それぞれの場合についてさらに詳細に説明する。
【００３０】
たとえば、HSDPA通信でない場合、disassembly３−１では、図７に示すように、Transport-Block-memory２に記録された受信トランスポートブロックをＭＡＣヘッダ１０１−１と「RLC PDU」に分離する。そして、「RLC PDU」をＲＬＣヘッダ１０１−２とペイロード１０１−３に分離する。さらに、ＲＬＣヘッダ１０１−２からは秘匿処理に必要な情報を抽出し、ペイロード１０１−３を、秘匿処理を行いやすいように配置してRLC-PDU-memory４へ記録する。
【００３１】
一方、HSDPA通信の場合、disassembly３−１では、図９に示すように、Transport-Block-memory２に記録された受信トランスポートブロックを「MAC-hs SDU（「MAC-d PDU」と同義）」へ分解し、さらに、「MAC-d PDU」をＭＡＣヘッダ１０１−１と「RLC PDU」に分離する。そして、「RLC PDU」をＲＬＣヘッダ１０１−２とペイロード１０１−３に分離する。さらに、ＲＬＣヘッダ１０１−２からは秘匿処理に必要な情報を抽出し、ペイロード１０１−３を、秘匿処理を行いやすいように配置してRLC-PDU-memory４へ記録する。
【００３２】
ここで、ヘッダの分離とペイロード１０１−３の配置について説明する。図４は、RLC-PDU-memory４に記録されたデータの構造例を示す図であり、ここでは、特にペイロード１０１−３に着目する。通常、メモリは、特定のワード長（ビット幅：８ビット、１６ビット、３２ビットなど）を持つ。メモリ上のデータを処理する場合、メモリのワード長に合わせてデータが並んでいると処理を行いやすい。そこで、本実施の形態では、ペイロード１０１−３をメモリのワード長にあわせて分割し、並べる。また、本実施の形態では、ＭＡＣヘッダ１０１−１およびＲＬＣヘッダ１０１−２を、ペイロード１０１−３と異なるアドレスに配置する。これは、ペイロード１０１−３の先頭をメモリのワードのＭＳＢまでビットシフトさせることで実現できる。なお、図４については、後述する実施の形態３にて詳細に説明する。
【００３３】
このように、ＭＡＣ３のdisassembly３−１では、Transport-Block-memory２に記録されたトランスポートブロックに含まれる「MAC-PDU」を抽出し、ペイロード１０１−３の先頭をメモリのワードのＭＳＢまでビットシフトさせ、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３を分離してRLC-PDU-memory４へ書き込んでいる。そして、HSDPA通信の場合については、トランスポートブロックに含まれる複数の「MAC-d PDU」に対して同様の処理を行う。さらに、disassembly３−１は、これらの処理が終了すると、それぞれの「RLC PDU」のペイロード１０１−３の長さと、処理が終了したこと、をＲＬＣ５のdeciphering５−１へ通知する。
【００３４】
ＲＬＣ５のdeciphering５−１では、RLC-PDU-memory４に記録されている「RLC PDU」のペイロード１０１−３に対して秘匿処理を行う。処理タイミングを図３に例示する。ここでは、disassembly３−１の処理が終了した時点で処理を開始するようにスケジューリングしている。その結果、deciphering５−１は、ＴＴＩ周期で処理を開始することになる。また、秘匿処理には比較的長い時間を要するが、ＴＴＩ周期に受け取るデータ量（ペイロード１０１−３のサイズ）の最大値が決まっているので、最大データ量を受けたときにＴＴＩ時間以内に処理が終了するようにdeciphering５−１のパフォーマンスを設計することは比較的容易である。たとえば、演算量の多いKEY-STREAM-BLOCKの算出に専用のハードウェア・アクセラレータを用いる方法がある。
【００３５】
また、deciphering５−１による秘匿処理は、3GPP規格のTS33.105において勧告されており、図８に示すように、CIPHERTEXTもしくはPLANETEXTとKEY-STREAM-BLOCKとの排他的論理和を演算することで達成できる。なお、秘匿鍵CK（Cipher Key）、論理チャネルの種別を表すBEARER、上り／下りの違いを示すDIRECTIONは、通信のネゴシエーション時に上位のコントローラからＲＬＣ５へ通知される。また、LENGTHはKEY-STREAM-BLOCKの長さであり、ペイロード１０１−３の長さと同一なので、disassembly３−１から通知される。また、秘匿シーケンス番号COUNT-Cは、通信のネゴシエーション時に上位のコントローラからＲＬＣ５へ通知されるハイパーフレーム番号HFNと、秘匿対象であるペイロード１０１−３に対応するＲＬＣヘッダ１０１−２に含まれる「RLC Sequence Number（「RLC SN」）と、を組み合わせることにより、特定することができる。
【００３６】
したがって、deciphering５−１では、まず、上位のコントローラから通知されたHFNとＲＬＣヘッダ１０１−２に含まれる「RLC SN」から、「RLC PDU」毎のCOUNT-Cを算出する。つぎに、算出したCOUNT-C、上位のコントローラから通知されたCK、BEARERおよびDIRECTION、disassembly３−１から通知されたLENGTH、を入力として、KEY-STREAM-BLOCKを算出する。そして、受信したペイロード１０１−３と算出したKEY-STREAM-BLOCKとの排他的論理和を演算することにより秘匿処理を行う。全てのペイロード１０１−３に対して秘匿処理が終了すると、reordering３−２へ処理終了を通知する。
【００３７】
ＭＡＣ３のreordering３−２では、HSDPA通信でない場合、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２および秘匿処理により復号化されたペイロード１０１−３をReordering-buffer-memory６へ転送し、その旨をＲＬＣ５のAM/UM５−２へ通知する。一方、HSDPA通信の場合は、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２および秘匿処理により復号化されたペイロード１０１−３をReordering-buffer-memory６へ転送し、さらに、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３を含む複数のトランスポートブロック単位で順序制御を行い、正しい順序に復元したＲＬＣヘッダ１０１−２とペイロード１０１−３をAM/UM５−２へ通知する。reordering３−２の処理タイミングを図３に例示する。ここでは、deciphering５−１の処理が終了した時点で処理を開始するようにスケジューリングしている。その結果、reordering３−２は、ＴＴＩ周期で処理を開始することになる。
【００３８】
ＲＬＣ５のAM/UM５−２では、秘匿以外のTS25.322に勧告されるプロトコル処理を実行し、SDU（Service Data Unit）をＬ３へ通知する。処理タイミングを図３に例示する。たとえば、HSDPA通信でない場合は、ＴＴＩ間隔でデータを受信する度に上記処理を実行する。一方、HSDPA通信の場合は、reordering３−２から通知された複数ＴＴＩのデータ（ＲＬＣヘッダ１０１−２および秘匿処理により復号化されたペイロード１０１−３に対して一括して上記処理を実行する。
【００３９】
以上のように、本実施の形態においては、ＭＡＣ３およびＲＬＣ５の機能を、図２に示すように、disassembly３−１、RLC-PDU-memory４、deciphering５−１、reordering３−２、Reordering-buffer-memory６、AM/UM５−２、に分割して実現することとした。これにより、ＴＴＩ間隔でトランスポートブロックを受けてから一定時間内に、秘匿処理に必要なパラメータを当該トランスポートブロックから抽出できるので、受信側のdeciphering５−１における秘匿処理を、図３に示すように、ＴＴＩに同期してリアルタイムに行うことができる。特に、データ通信にHSDPAが適用され、reordering３−２において大量のデータがReordering-buffer-memory６に滞留する場合であっても、deciphering５−１における秘匿処理をリアルタイムに行うことができる。したがって、処理の輻輳を防ぐことができ、ＭＡＣ３およびＲＬＣ５への要求パフォーマンスを抑えることができるので、低コストで通信スループットなどのシステム性能を確保することができる。
【００４０】
つづいて、インタフェースとメモリ構成について説明する。なお、図２においては、インタフェースとして、たとえば、Transport-Block-memory２、RLC-PDU-memory４およびReordering-buffer-memory６を用いているが、メモリを用いる構成に限定するものではない。他のインタフェース（たとえば、直接信号線を介して入出力するなど）でも上記と同様の効果を得られる。メモリを用いる場合の効果について述べる。
【００４１】
まず、図１０を用いて、ユーザ端末における一般的なMAC&RLC内のTransport-Block-memory２について説明する。Ｌ１のＰＨＹ１は、通信路復号の演算量が多く、ＴＴＩに対して長い処理時間を有する。また、ＰＨＹ１の処理時間は、受信するデータ量にも依存し、ＰＨＹ１がTransport-Block-memory２へ書き込むタイミングは、一定とはならずに分布する。また、ＭＡＣ３の処理時間も受信するデータ量に依存し、Transport-Block-memory２から読み出す時間も、上記と同様に一定とはならずに分布する。
【００４２】
このため、Transport-Block-memory２に対して書き込みアクセスを行う時間と、読み出しアクセスを行う時間が重なる（図１１参照）。このような場合、簡易的には、Transport-Block-memory２を２方向から同時アクセス可能なデュアルポート・メモリで構成するか、あるいは、書き込み面と読み出し面をＴＴＩ周期で切り替える２面メモリで構成する。これらの方法を使う場合、Transport-Block-memory２のサイズは、記録されるトランスポートブロックの最大量の２倍以上（デュアルポートの場合は、それに相当する実装面積）が必要になる。
【００４３】
一方、本実施の形態においては、図２の構成を採用することにより、disassembly３−１の処理がＭＡＣ３全体の処理に比べ単純なので処理時間を短縮でき、さらに、ＰＨＹ１の処理時間が最大の場合であっても、ＴＴＩにおけるＰＨＹ１の処理と次のＴＴＩにおけるＰＨＹ１の処理の間にdisassembly３−１が処理を実行し、その結果をRLC-PDU-memory４へ記録することが容易に実現できる。disassembly３−１をこのようなタイミングで実行することにより、Transport-Block-memory２に対して、時分割に書き込みと読み出しを切り替えてアクセスすることが可能になるので、Transport-Block-memory２のサイズは、記録されるトランスポートブロックの最大量（×１）で実装できる。
【００４４】
つぎに、ＭＡＣ３とＲＬＣ５のインタフェースであるRLC-PDU-memory４について説明する。ＭＡＣ３は、順序制御が完了したトランスポートブロックを、分解および分離してＲＬＣ５へ出力するので、RLC-PDU-memory４のサイズは、トランスポートブロックの最大量のＮ倍（ＮはMAC-hsの受信ウィンドウサイズ）必要になる。
【００４５】
つぎに、Reordering-buffer-memoryについて説明する。たとえば、図１０の構成において、Reordering-buffer-memory６には、複数のトランスポートブロックが記録され、RLC-buffer-memory７には、複数のトランスポートブロックを分解および分離した、複数のＲＬＣヘッダ１０１−２とペイロード１０１−３の組が記録される。このように、記録するデータ構造が異なる。なお、Reordering-buffer-memory６とRLC-buffer-memory７の合計サイズは、3GPPで規定される能力を満たす必要がある。ところが、Reordering-buffer-memory６とRLC-buffer-memory７において異なるデータ構造を持つ図１０の構成では、各々のメモリにおいて、3GPPで規定される合計サイズの容量が必要となり、結果として、規定される能力の２倍のサイズのメモリが必要となる。
【００４６】
一方、本実施の形態においては、図２の構成を採用することにより、disassembly３−１によりRLC-PDU-memory４へ記録されたペイロード１０１−３に対する秘匿処理を、deciphering５−１が、ＴＴＩに同期してリアルタイムに実行し、その結果をReordering-buffer-memory６へ記録することができる。deciphering５−１が、秘匿処理をこのようなタイミングで実行することにより、RLC-PDU-memory４のサイズは、トランスポートブロックの最大量（×１）で実装できる。
【００４７】
このように、本実施の形態においては、ＭＡＣ３のreordering３−２の処理の前に、disassembly３−１とdeciphering５−１を行うため、reordering３−２が扱うデータ構造とAM/UM５−２が扱うデータ構造とを同一にできる。そのため、図１０のReordering-buffer-memory６とRLC-buffer-memory７を共有メモリとして実装することができる。その結果、上記共有メモリ（図２のReordering-buffer-memory６）を3GPPで規定される容量に抑えることができる。
【００４８】
実施の形態２．
つづいて、本発明にかかる秘匿処理装置を実現する実施の形態２のＬ２のMAC&RLCについて説明する。図５は、ＵＥの構成、および本発明にかかるMAC&RLCの詳細構成、を示す図である。実施の形態１の図２と比較すると、deciphering５−１が算出したKEY-STREAM-BLOCKを記憶するkey-stream-memory５−３が存在する点と、reordering３−２からRLC-PDU-memory４をアクセスする点、が異なる。以下、実施の形態１と異なる動作についてのみ詳細に説明する。
【００４９】
ここで、実施の形態２の受信側のＵＥの動作について説明する。図６は、ＵＥのＭＡＣ３とＲＬＣ５の動作を示すタイムチャートであり、disassembly３−１とdeciphering５−１が同時に動作する点が実施の形態１と異なる。なお、HSDPA通信時の、Ｌ１のＰＨＹ１の通信単位であるトランスポートブロックと秘匿対象単位であるペイロード１０１−３の関係は、図９に示す通りであり、トランスポートブロックには複数のペイロード１０１−３が含まれる。
【００５０】
ＭＡＣ３のdisassembly３−１では、実施の形態１と同様に、トランスポートブロックをデータの先頭から順次分解し、さらにＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２、ペイロード１０１−３に分離し、その結果をRLC-PDU-memory４へ記録する。そして、実施の形態１と異なる動作として、disassembly３−１は、ここで、ＲＬＣヘッダ１０１−２に含まれる「RLC SN」を抽出して、その都度、その抽出結果をペイロード１０１−３のサイズ（LENGTHと同義となる）とともにdeciphering５−１へ通知する。
【００５１】
ＲＬＣ５のdeciphering５−１では、「RLC SN」がdisassembly３−１から通知される度に、上位のコントローラから通知されたHFNと組み合わせて「RLC PDU」毎のCOUNT-Cを算出する。つぎに、算出したCOUNT-C、上位のコントローラから通知されたCK、BEARERおよびDIRECTION、disassembly３−１から通知されたLENGTH、を入力として、KEY-STREAM-BLOCKを算出し、その結果をkey-stream-memory５−３へ記録する。このとき、KEY-STREAM-BLOCKのビット配置を対応するペイロード１０１−３と同じになるようにする。トランスポートブロックには複数の「RLC PDU」が含まれるので、disassembly３−１による「RLC SN」の抽出と、deciphering５−１によるKEY-STREAM-BLOCKの算出は、同時に並列して処理することができる。したがって、図６の動作例に示すように、disassembly３−１がRLC-PDU-memory４への記録を完了する前に、deciphering５−１は、動作を開始することができる。また、deciphering５−１は、トランスポートブロックに含まれる全てのペイロード１０１−３に対応するKEY-STREAM-BLOCKの算出が終了すると、reordering３−２に処理終了を通知する。
【００５２】
また、本実施の形態の秘匿処理では、RLC-PDU-memory４に記録されたペイロード１０１−３とkey-stream-memory５−３に記録されたKEY-STREAM-BLOCKとの排他的論理和を演算する必要がある。そこで、reordering３−２では、deciphering５−１から処理終了を通知されると、RLC-PDU-memory４に記録されたペイロード１０１−３と、そのペイロード１０１−３に対応するkey-stream-memory５−３に記録されたKEY-STREAM-BLOCKと、を読み込み、それらの排他的論理和を演算し、その演算結果をreordering-buffer-memory６へ記録する。
【００５３】
以上のように、本実施の形態においては、ＭＡＣ３およびＲＬＣ５の機能を、図５に示すように、ＲＬＣヘッダ１０１−２に含まれる「RLC SN」を抽出し、その結果をdeciphering５−１へ通知する機能を加えたdisassembly３−１と、「RLC SN」がdisassembly３−１から通知される度にKEY-STREAM-BLOCKを算出し、その結果をkey-stream-memory５−３へ記録する機能を加えたdeciphering５−１と、deciphering５−１が算出したKEY-STREAM-BLOCKを記憶するkey-stream-memory５−３と、RLC-PDU-memory４に記録されたペイロード１０１−３とそのペイロードに対応するkey-stream-memory５−３に記録されたKEY-STREAM-BLOCKを読み込み、それらの排他的論理和を演算し、その演算結果をreordering-buffer-memory６へ記録する機能を有するreordering３−２と、に分割して実現することとした。これにより、図６に示すように、disassembly３−１とdeciphering５−１が同時並列に動作可能となり、その結果として、ＭＡＣ３、ＲＬＣ５の処理時間を短縮することができる。
【００５４】
なお、本実施の形態では、インタフェースの簡素化のために、key-stream-memory５−３を設け、reordering３−２が、秘匿処理の一部である排他的論理和を実行する構成としたが、たとえば、key-stream-memory５−３を設けずに、deciphering５−１内で、RLC-PDU-memory４に記録されたペイロード１０１−３とそのペイロードに対応するKEY-STREAM-BLOCKの排他的論理和を演算し、その演算結果をreordering-buffer-memory６へ記録する構成とした場合であっても、同様に処理時間を短縮することができる。
【００５５】
実施の形態３．
実施の形態３では、RLC-PDU-memory４およびreordering-buffer-memory６に記録されるデータの構造を規定する。図４は、RLC-PDU-memory４およびreordering-buffer-memory６に記録されたデータの構造を示す図であり、詳細には、前述した秘匿処理を行う前後において、RLC-PDU-memory４およびreordering-buffer-memory６に記録される、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３のデータ構造を示している。なお、ＵＥの構成、および本発明にかかるMAC&RLCの詳細構成、については、前述した図２または図５と同様である。
【００５６】
秘匿処理単位であるペイロード１０１−３は、メモリのワード長にあわせて配置される。また、ＲＬＣヘッダ１０１−２は、ペイロード１０１−３と異なるアドレスに配置される。また、ＭＡＣヘッダ１０１−１は、ペイロード１０１−３ともＲＬＣヘッダ１０１−２とも異なるアドレスに配置される。
【００５７】
また、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３の順序は、図７または図９のデータフローに示されるトランスポートブロックに含まれる順序が維持される。なお、3GPP TS25.321、TS25.322より、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３の大きさ（ビット幅）は可変であり、通信のネゴシエーション毎に決定される。
【００５８】
また、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３の大きさが、それぞれメモリのワード長の整数倍に合わない場合は、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３の間にブランクが挿入される。
【００５９】
つづいて、上記で規定したデータ構造に基づいて、下記（ａ）、（ｂ）、（ｃ）の処理を詳細に説明する。ここでは、図７または図９に示される下記（ａ）、（ｂ）、（ｃ）の処理を一括して行う。
（ａ）トランスポートブロックから「MAC PDU」へ分解する
（ｂ）「MAC PDU」をＭＡＣヘッダ１０１−１と「RLC PDU」に分離する
（ｃ）「RLC PDU」をＲＬＣヘッダ１０１−２とペイロード１０１−３に分離する
【００６０】
たとえば、HSDPA通信の場合、disassembly３−１は、図９のMAC-hsヘッダを解析することにより、「MAC PDU」の構造であるＭＡＣヘッダ１０１−１と「RLC PDU」の合計サイズを知る。また、disassembly３−１は、上位のコントローラからＭＡＣヘッダ１０１−１のサイズを通知され、ＲＬＣ３からＲＬＣヘッダ１０１−２のサイズを通知される。
【００６１】
そして、disassembly３−１は、トランスポートブロックを先頭から走査し、MAC-hsヘッダを除くデータの先頭から、上位のコントローラから通知されたＭＡＣヘッダ１０１−１のサイズ分のデータをRLC-PDU-memory４に記録する。ＭＡＣヘッダ１０１−１のサイズがRLC-PDU-memory４のワード長の整数倍に合わない場合は、ブランクを挿入した後にＭＡＣヘッダ１０１−１をRLC-PDU-memory４に記録することにより、ブランクとＭＡＣヘッダ１０１−１の合計サイズがRLC-PDU-memory４のワード長の整数倍となるように調整する。
【００６２】
つぎに、disassembly３−１は、トランスポートブロックの続きから、ＲＬＣ５より通知されたＲＬＣヘッダ１０１−２のサイズ分のデータをRLC-PDU-memory４に記録する。ＲＬＣヘッダ１０１−２のサイズがRLC-PDU-memory４のワード長の整数倍に合わない場合は、ブランクを挿入した後にＲＬＣヘッダ１０１−２をRLC-PDU-memory４に記録することにより、ブランクとＲＬＣヘッダ１０１−２の合計サイズがRLC-PDU-memory４のワード長の整数倍となるように調整する。
【００６３】
つぎに、disassembly３−１は、トランスポートブロックの続きから、ＲＬＣ５より通知されたペイロード１０１−３のサイズ分のデータをRLC-PDU-memory４に記録する。ペイロード１０１−３のサイズがRLC-PDU-memory４のワード長の整数倍に合わない場合、ペイロード１０１−３をRLC-PDU-memory４に記録した後にブランクを挿入することにより、ペイロード１０１−３とブランクの合計サイズがRLC-PDU-memory４のワード長の整数倍となるように調整する。
【００６４】
さらに、disassembly３−１は、トランスポートブロックの続きから、上記ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２、ペイロード１０１−３の処理を繰り返し実行することにより、トランスポートブロックに含まれる全てのＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２およびペイロード１０１−３について、分解・分離を行い、それぞれの結果を上記図４に示す形式でRLC-PDU-memory４へ記録する。
【００６５】
その結果、deciphering５−１は、RLC-PDU-memory４に記録されたペイロード１０１−３に対して秘匿処理を行う場合、ペイロード１０１−３がワード長にあわせて配置されているので、ワード単位に、ペイロード１０１−３とKEY-STREAM-BLOCKとの排他的論理和を容易に演算できる。
【００６６】
以上のように、本実施の形態においては、disassembly３−１が、上記のように、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２および秘匿対象であるペイロード１０１−３をメモリのワード長にあわせて配置することとした。これにより、deciphering５−１は、RLC-PDU-memory４に記録されたペイロード１０１−３とKEY-STREAM-BLOCKとの排他的論理和の演算を、ワード単位に高速に実行できる。
【００６７】
また、秘匿処理前のRLC-PDU-memory４のデータ構造と、秘匿処理後のreordering-buffer-memory６のデータ構造を共通にしているので、RLC-deciphering５−１は、ＭＡＣヘッダ１０１−１、ＲＬＣヘッダ１０１−２および秘匿処理後のペイロード１０１−３をreordering-buffer-memory６へ記録する処理を、ビットシフトを伴わず高速に実行できる。
【産業上の利用可能性】
【００６８】
以上のように、本発明にかかる秘匿処理装置は、3GPPで規定された秘匿処理を実現するユーザ端末およびそのユーザ端末を含む通信システムに有用であり、特に、上記秘匿処理をリアルタイムに実行することによりシステム性能の向上を図るユーザ端末に適している。
【図面の簡単な説明】
【００６９】
【図１】3GPP規格によるプロトコルスタックの概要を示す図である。
【図２】ＵＥの構成および本発明にかかるMAC&RLCの詳細構成を示す図である。
【図３】ＭＡＣとＲＬＣの動作を示すタイムチャートである。
【図４】RLC-PDU-memoryおよびreordering-buffer-memoryに記録されたデータの構造を示す図である。
【図５】ＵＥの構成および本発明にかかるMAC&RLCの詳細構成を示す図である。
【図６】ＭＡＣとＲＬＣの動作を示すタイムチャートである。
【図７】3GPPで規定されるHSDPA通信でない場合のＵＥ側におけるプロトコル間のデータの流れを示す図である。
【図８】3GPPで規定される送信データと受信データに対する秘匿処理を示す図である。
【図９】3GPPで規定されるHSDPA通信の場合のＵＥ側におけるプロトコル間のデータの流れを示す図である。
【図１０】ユーザ端末における一般的なMAC&RLCの構成を示す図である。
【図１１】ＵＥにおける一般的なMAC&RLCの動作を示すタイムチャートである。
【符号の説明】
【００７０】
１  ＰＨＹ
２  Transport-Block-memory
３  ＭＡＣ
３−１  disassembly
３−２  reordering
４  RLC-PDU-memory
５  ＲＬＣ
５−１  deciphering
５−２  AM/UM
５−３  key-stream-memory
６  Reordering-buffer-memory
１０１−１  ＭＡＣヘッダ
１０１−２  ＲＬＣヘッダ
１０１−３  ペイロード
【図１】
2006020133.tif 000003
【図２】
2006020133.tif 000004
【図３】
2006020133.tif 000005
【図４】
2006020133.tif 000006
【図５】
2006020133.tif 000007
【図６】
2006020133.tif 000008
【図７】
2006020133.tif 000009
【図８】
2006020133.tif 000010
【図９】
2006020133.tif 000011
【図１０】
2006020133.tif 000012
【図１１】
2006020133.tif 000013