In Bearbeitung

Bitte warten ...

Einstellungen

Einstellungen

Gehe zu Anmeldung

1. JP2008509464 - メッセージハンドラ、および通信モジュールが有するメッセージメモリ中のデータへのアクセスを制御する方法

Document

Description

Title of Invention メッセージハンドラ、および通信モジュールが有するメッセージメモリ中のデータへのアクセスを制御する方法 DE 102004038211.5 20040805 EP2005053074 20050629 WO2006015910 20060216 20070207

Technical Field

0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052  

Brief Description of Drawings

0053   0054  

Claims

1   2   3   4   5   6   7    

Drawings

1   2   3   4   5   6   7   8   9   10   11   12    

Description

メッセージハンドラ、および通信モジュールが有するメッセージメモリ中のデータへのアクセスを制御する方法

DE 102004038211.5 20040805 EP2005053074 20050629 WO2006015910 20060216 20070207

Technical Field

[0001]
本発明は、独立請求項の上位概念に記載された、メッセージハンドラ、および通信モジュールが有するメッセージメモリ中のデータへのアクセスを制御する方法に関する。
[0002]
(背景技術)
近年、最新の車両製造、または機械製作、特に工作機械分野において、あるいはオートメーション分野においても、通信システムおよびバスシステム、従って通信接続を用いることによる、制御装置、センサ技術およびアクター技術のネットワーク化が著しく進展している。この場合、複数の制御装置への機能分散によるシナージー効果が得られる。ここで、システムの分散が問題となる。種々の装置間の通信は、バスシステム、従って通信システムを介して頻繁に行われる。バスシステム上の通信トラフィック、アクセス機構、受信機構およびエラー処理は、プロトコルを介して制御される。この種の既知のプロトコルとしては、CANプロトコルまたはTTCANプロトコルおよびFlexRayプロトコルがあり、FlexRayプロトコル標準V2.0が現時点で基準とされる。この場合、FlexRayは、特に車載装備される、高速かつ決定論的であり、エラー許容性を有するバスシステムである。FlexRayプロトコルは、時分割多重アクセス(TDMA)の手順に従って作動し、コンポーネント、従って加入者もしくは伝送すべきメッセージは、固定のタイムスロットを割当てられ、タイムスロット中で通信接続への排他的アクセスを有する。これは、同様にTTCANにも適用される。この場合、タイムスロットが固定されたサイクルで繰り返されるので、バスを介してメッセージが伝送されるべきタイミングが正確に予測でき、バスアクセスが決定論的に行われる。バスシステム上でメッセージ伝送用の帯域幅を最適に利用するために、FlexRayは、サイクルを静的部分と動的部分とに分割する。この場合、固定タイムスロットがバスサイクルの始端の静的部分にある。動的部分では、タイムスロットが動的に与えられる。ここで、排他的なバスアクセスは、各々に短時間、いわゆるミニスロットの間でのみ可能となる。ミニスロット間でバスアクセスが行われた場合にのみ、タイムスロットが必要な時間で延長される。よって、実際に必要とされる場合にのみ帯域幅が使用される。この場合、FlexRayは、物理的に分離された2本の通信線を介して、最大10MB/秒のデータ速度で通信する。この場合、2つのチャネルは、特にOSI(Open System Architecture)階層モデルの物理層に相当する。これらは、冗長的かつエラー許容性を伴うメッセージ伝送の場合に主として用いられるが、異なるメッセージ伝送の場合にも用いられ、その場合にはデータ速度が二倍となる。しかし、FlexRayは、より低いデータ速度でも作動可能である。
[0003]
機能の同期化を実現し、かつ2つのメッセージ間の小さなマージンにより帯域幅を最適化するために、通信ネットワーク上で分散されたコンポーネント、従って加入者は、共通の時間基準、いわゆるグローバルな時間を必要とする。時計の同期化のために、サイクルの静的部分で同期化通知が伝送され、FlexRay標準に準拠する特殊なアルゴリズムを用いて、コンポーネントのローカルな時計時間が、全てのローカルな時計がグローバルな時計に同期して作動するように、補正される。この同期化は、TTCANネットワーク内でも、同様に行われる。
[0004]
FlexRayネットノードまたはFlexRay加入者またはホストは、加入者プロセッサ、従ってホストプロセッサ、FlexRayコントローラまたは通信コントローラ、ならびにバス監視用のバスガーディアンを有する。この場合、ホストプロセッサ、従って加入者プロセッサは、FlexRay通信コントローラを介して伝送されるデータを提供して処理する。FlexRayネットワーク上の通信のために、例えば254データバイトまでのメッセージもしくはメッセージオブジェクトが構成されうる。このメッセージもしくはメッセージオブジェクトを物理層、従って通信接続とホストプロセッサとの間で伝送するために、通信モジュール、特に通信コントローラが使用される。
[0005]
本発明の課題は、データ一貫性が確保され、かつ伝送速度が最適化されるように、データ伝送を制御することである。
[0006]
(発明の利点)
本発明は、アクセスによりデータが入出力されるメッセージメモリを有する通信モジュールのメッセージハンドラ、およびメッセージメモリのデータへのアクセスを制御する方法に関する。この場合、メッセージメモリが第1のバッファメモリ構成および第2のバッファメモリ構成に接続され、かつデータへのアクセスが第1または第2のバッファメモリ構成を介して行われる。メッセージハンドラは、第1のバッファメモリ構成を介したメッセージメモリへのアクセスを制御する少なくとも1つの第1の状態機械または有限状態機械と、第2のバッファメモリ構成を介したメッセージメモリへのアクセスを制御する少なくとも1つの第2の状態機械または有限状態機械と、第3の状態機械または有限状態機械とを備えており、その場合に少なくとも1つの第1および第2の状態機械または有限状態機械がアクセス要求を行い、かつアクセス要求に従って第3の状態機械または有限状態機械が少なくとも1つの第1および第2の状態機械または有限状態機械にメッセージメモリへのアクセスを割当てる。
[0007]
すなわち、本発明は、必要とされるデータ一貫性および記憶すべきメッセージの高い伝送速度が確保されるように、メッセージメモリ、従ってメッセージRAMと入力バッファおよび出力バッファとの間、ならびにメッセージメモリと通信バスへの送信ユニットおよび受信ユニットとの間のデータ伝送を制御する方法および装置に関する。
[0008]
データは、メッセージハンドラによって制御され、各々に双方向性を有する2つのデータ経路に第1のバッファメモリ構成を介して伝送され、第1のバッファメモリ構成が第1のデータ経路のための第1のバッファメモリと第2のデータ経路のための第2のバッファメモリとを有しており、かつデータ経路毎に第1の状態機械または有限状態機械を備えるので、第1のバッファメモリ構成のために2つの状態機械が用いられ、2つの第1の状態機械または有限状態機械の各々がバッファメモリを介したメッセージメモリへのアクセスを制御するようにしてもよい。
[0009]
クロック手段が備えられており、クロック手段によってデータが予め設定可能なクロック周期で伝送され、第3の状態機械または有限状態機械が、アクセス要求に従って第1および第2の状態機械または有限状態機械の各々に次々とクロック周期を割当てるようにしてもよい。
[0010]
全アクセス時間が、第3の有限状態機械によって、同時のアクセス要求の数に応じて均等に分割され、かつ状態機械毎に、従って有限状態機械毎に、常に同時に1つのアクセス要求のみが許されるように、クロック周期が分割されるようにしてもよい。
[0011]
前述された方法と前述されたメッセージハンドラおよびこの種のメッセージハンドラを有する相当する通信モジュールが、ホストCPUが動作の進行中にメッセージメモリ内の各任意のメッセージオブジェクト、従って各任意のメッセージを読取り、または書込むことを可能にし、ホストCPUのアクセスが継続中には、例えばFlexRayバスの2つのチャネル上、従って物理層上のデータ交換に際して、選択されたメッセージオブジェクトが加入者によって遮断されることがない。同時に、クロック単位でアクセスを入れ子にすることによって、メッセージメモリ内に格納されているデータの一貫性が確保され、高い伝送速度が保証される。
[0012]
(実施例)
他の利点と好ましい形態は、明細書と請求項に記載された特徴から明らかにされる。以下、実施例を用いて本発明を詳細に説明する。
[0013]
図1は、加入者またはホスト102をFlexRay通信接続101、従ってFlexRayの物理層に結合するためのFlexRay通信モジュール100を概念的に示す。このために、FlexRay通信モジュール100は、接続107を介して加入者もしくは加入者プロセッサ102に、接続106を介して通信接続101に各々に接続される。一方で伝送時間に関して、他方でデータ一貫性に関して問題なく結合するために、FlexRay通信モジュールは、本質的に3つの構成として概念的に区別される。この場合、第1の構成105は、伝送すべきメッセージの少なくとも一部を、特に一時的に記憶するために用いられる。加入者102と第1の構成105との間には、接続107および108を介して第2の構成104が接続される。同様に、通信接続101と第1の構成105との間には、接続106および109を介して第3の構成103が接続される。これにより、最適な速度によりデータ一貫性を保証しつつ、メッセージ、特にFlexRayメッセージの一部としてのデータが、極めてフレキシブルに、第1の構成105に/から入力/出力できる。
[0014]
図2には、望ましい実施例での通信モジュール100がさらに詳細に示される。各接続106〜109も、同様に詳細に示される。この場合、第2の構成104は、入力バッファメモリ201(Input Buffer IBF)、出力バッファメモリ202(Output Buffer OBF)、および2つの部分203、204からなるインターフェースモジュールを有しており、第1の部分モジュール203が加入者に依存せず、第2の部分モジュール204が加入者に依存する。加入者に依存する部分モジュール204(Customer CPU Interface CIF)は、加入者固有のホストCPU102、従ってクライアント固有の加入者をFlexRay通信モジュールに接続する。このために、双方向のデータ線216、アドレス線217および制御入力218が設けられる。同様に、インターラプト出力または中断出力219が設けられる。加入者に依存する部分モジュール204が加入者に依存しない部分モジュール203(Generic CPU Interface GIF)に接続されており、従ってFlexRay通信モジュールまたはFlexRay−IPモジュールは、標準的、従って一般的なCPUインターフェースを有しており、該当する加入者に依存する部分モジュール204を介して、多数の異なるクライアント固有のホストCPUに接続される。これにより、加入者に応じて部分モジュール204のみが変更されるので、労力およびコストが著しく低減される。
[0015]
入力バッファメモリ201と出力バッファメモリ202とは、1つのメモリモジュールまたは異なるメモリモジュールに形成されうる。この場合、入力バッファメモリ201は、メッセージメモリ300に伝送するためのメッセージを一時的に記憶するために用いられる。この場合、入力バッファモジュールは、特に設定データを有するヘッドセグメントと、データセグメントまたはペイロードセグメントとからなる、2つの完全なるメッセージを記憶できるように形成されることが望ましい。この場合、入力バッファメモリは2つに分割されて(部分バッファメモリとシャドウメモリ)形成されており、それによって、入力バッファメモリの2つの部分への交互書込み、またはアクセス交替により、加入者CPU102とメッセージメモリ300との間の伝送が促進される。出力バッファメモリ(Output Buffer OBF)も、同様にメッセージメモリ300から加入者CPU102に伝送するためのメッセージを一時的に記憶するために用いられる。この場合、出力バッファ202も、特に設定データを有するヘッドセグメントと、データセグメント、従ってペイロードセグメントとからなる、2つの完全なるメッセージが記憶されるように形成される。ここでも、出力バッファメモリ202が2つの部分、すなわち部分バッファメモリとシャドウメモリとに分割されており、それによって、2つの部分への交互読取り、またはアクセス交替により、加入者CPUもしくはホストCPU102とメッセージメモリ300との間の伝送が促進される。構成201〜204からなる第2の構成104が、図示するように、第1の構成105に接続される。
[0016]
構成105は、メッセージハンドラ200(Message Handler MHD)およびメッセージメモリ300(Message RAM)からなる。メッセージハンドラは、入力バッファメモリ201および出力バッファメモリ202とメッセージメモリ300との間のデータ伝送を管理もしくは制御する。同様に、メッセージハンドラは、第3の構成105を介して他の方向でのデータ伝送を管理もしくは制御する。メッセージメモリは、望ましくはシングルポートRAMとして形成される。このRAMメモリは、メッセージもしくはメッセージオブジェクト、従って本来のデータを設定データおよびステータスデータと共に記憶する。メッセージメモリ300の構成が、図3に詳細に示される。
[0017]
第3の構成103は、ブロック205〜208からなる。FlexRay物理層の2つのチャネルに従って、構成103は、各々に双方向性を有する2つのデータ経路に分割される。これが、接続213および214によって表されており、そこでは、チャネルAについて受信(RxA)および送信(TxA)のための2つのデータ方向RxAおよびTxAと、チャネルBについてRxBおよびTxBが示される。接続215によって、選択的な双方向の制御入力が示される。第3の構成103の結合は、チャネルBについては第1のバッファメモリ205、チャネルAについては第2のバッファメモリ206を各々に介して行われる。2つのバッファメモリ(Transient Buffer RAMs RAM A, RAM B)は、第1の構成105から/へのデータ伝送のためのバッファメモリとして用いられる。2つのチャネルに従って、2つのバッファメモリ205および206は、インターフェースモジュール208および207に各々に接続されており、インターフェースモジュールは、送信/受信シフトレジスタおよびFlexRayプロトコル有限状態機械からなる、FlexRayプロトコルコントローラまたはバスプロトコルコントローラを有する。よって、2つのバッファメモリ205および206は、インターフェースモジュールのシフトレジスタまたはFlexRayプロトコルコントローラ207および208と、メッセージメモリ300との間でデータを伝送するための一時的なメモリとして用いられる。ここでも、各バッファメモリ205または206によって、2つのFlexRayメッセージのデータフィールド、従ってペイロードセグメントまたはデータセグメントが記憶されることが望ましい。
[0018]
さらに、通信モジュール100には、グローバルタイムユニット209(Global Time Unit GTU)が示されており、それはFlexRay内でグローバルタイムラスタの表示、従ってミクロ的なμTおよびマクロ的なMTを担当する。同様に、グローバルタイムユニット209を介して、サイクルカウンタ(Cycle Counter)のエラー許容性を有する時計同期化およびFlexRayの静的および動的セグメントにおける時間進行の管理が制御される。
[0019]
ブロック210は、FlexRay通信コントローラのオペレーションモードを管理かつ制御する、一般的なシステム制御(System Universal Control SUC)を示す。オペレーションモードには、例えば、ウェイクアップ、スタートアップ、リインテグレーションもしくはインテグレーション、通常オペレーションおよび受動オペレーションなどが属する。
[0020]
ブロック211は、FlexRayプロトコル標準v2.0に記述されるような、ネットワークおよびエラーマネージメント(Network- and Error Management NEM)を示す。そして、ブロック212は、ステータスおよびエラー中断フラグ(status and error interrupt flags)を管理し、かつ加入者CPU102への中断出力219を管理もしくは制御する、中断制御(Interrupt Control INT)を示す。ブロック212は、さらに、時間中断またはタイムインターラプトを発生させるための、絶対タイマーおよび相対タイマーもしくはタイミングジェネレータを有する。
[0021]
FlexRayネットワーク内で通信するために、254データバイトまでのメッセージオブジェクトもしくはメッセージ(Message Buffer)が構成されうる。メッセージメモリ300は、例えば、最大64メッセージオブジェクトまでを記憶可能な、メッセージRAMメモリである。メッセージ自体の処理もしくは管理に関する全ての機能は、メッセージハンドラ200に実装される。この機能は、例えば、承認フィルタリング(Akzeptanzfilterung)、2つのFlexRayプロトコルコントローラブロック207および208とメッセージメモリ300、従ってメッセージRAMとの間のメッセージの伝送、および送信順序の管理と設定データもしくはステータスデータの準備である。
[0022]
外部のCPU、従って加入者プロセッサ102の外部のプロセッサは、インターフェースモジュールの加入者に依存する部分204を有する加入者インターフェースを介して、FlexRay通信モジュールのレジスタへ直接アクセスすることができる。この場合、多数のレジスタが使用される。レジスタは、FlexRayプロトコルコントローラ、従ってメッセージハンドラ200のインターフェースモジュール207および208、グローバルタイムユニット209、一般的なシステムコントローラ210、ネットワークおよびエラーマネージメントユニット211、中断コントローラ212、およびメッセージRAM、従ってメッセージメモリ300へのアクセスを、構成し、制御し、同様に該当するステータスを表示するために使用される。少なくともレジスタのこれらの部分について、図4〜6および7〜9でさらに詳細に説明する。この種の記載された、本発明に基づくFlexRay通信モジュールは、FlexRay標準v2.0の簡単な変換または移植(Umsetzung)を可能にし、それによって然るべきFlexRay機能性を有するASICまたはマイクロコントローラが容易に形成されうる。
[0023]
図3には、メッセージメモリ300の分割が詳細に示される。FlexRayプロトコル標準に従って要求される、FlexRay通信コントローラの機能性のために、送信すべきメッセージを準備し(Transient Buffer)、かつエラーを伴わずに受信されたメッセージを格納する(Receive Buffer)ためのメッセージメモリが必要である。FlexRayプロトコルは、0〜254バイトのデータ領域、従ってペイロード領域を有するメッセージを許容する。図2に示すように、メッセージメモリは、FlexRay通信モジュール100の一部である。以下で説明する方法および該当するメッセージメモリは、特にランダムアクセスメモリ(RAM)を使用しながら、送信すべきメッセージおよび受信されたメッセージの記憶を記述し、本発明に基づく機構によって、予め設定されたサイズのメッセージメモリ内に可変の数のメッセージを記憶することを可能にする。この場合、記憶可能なメッセージ数は、各メッセージのデータ領域のサイズに依存し、それによって、一方では、メッセージのデータ領域のサイズを制限することなしに、必要とされるメモリのサイズを最小限に抑えることができ、他方では、メモリの最適な使用が行われる。以下では、FlexRay通信コントローラのための、特にRAMベースのメッセージメモリの可変分割について詳細に説明する。
[0024]
実装のために、例えば、nビット(例えば8、16、32など)の固定されたワード幅と、mワードの予め設定されたメモリ深度とを有するメッセージメモリが予め設定される(自然数m、n)。この場合、メッセージメモリ300は、2つのセグメント、ヘッダセグメントまたはヘッドセグメントHSとデータセグメントDS(ペイロードセクション、ペイロードセグメント)とに分割される。よって、メッセージ毎にヘッダ領域HBとデータ領域DBとが割当てられる。よって、メッセージ0、1〜k(自然数k)のために、ヘッダ領域HB0、HB1〜HBkとデータ領域DB0、DB1〜DBkとが割当てられる。よって、1つのメッセージ内で第1と第2のデータが区別され、第1のデータは、FlexRayメッセージに関する設定データおよび/またはステータスデータに相当し、ヘッダ領域HB(HB0、HB1、…、HBk)に格納される。伝送すべき本来のデータに相当する第2のデータは、データ領域DB(DB0、DB1、…、DBk)に格納される。よって、各メッセージについて、第1のデータのための第1のデータ範囲(ビット、バイトまたはメモリワードで測定)と、第2のデータのための第2のデータ範囲(同様にビット、バイトまたはメモリワードで測定)とが生じており、メッセージ毎の第2のデータ範囲は各々に異なることができる。ヘッドセグメントHSとデータセグメントDSとの間の分割は、メッセージメモリ300内で可変であり、すなわち領域間に予め設定された境界が存在しない。本発明によれば、ヘッドセグメントHSとデータセグメントDSとの間の分割は、メッセージ数kと、1つのメッセージもしくはk全てのメッセージについて合計された第2のデータ範囲、従って本来のデータの範囲に依存する。本発明によれば、各メッセージの設定データKD0、KD1〜KDkに、ポインタ素子またはデータポインタDP0、DP1〜DPkが各々に直接対応づけられる。特殊な形態においては、各ヘッド領域HB0、HB1〜HBkに固定数のメモリワード、ここでは2つが対応づけられるので、常に設定データKD(KD0、KD1、…、KDk)とポインタ素子DP(DP0、DP1、…、DPk)とがヘッダ領域HBに一緒に格納される。記憶されるべきメッセージの数kに依存する第1のデータ範囲、もしくはそのサイズのヘッダ領域HBを有するヘッドセグメントHSには、本来のメッセージデータD0、D1〜Dkを記憶するためのデータセグメントDSが続く。データセグメント(またはデータセクション)DSのデータ範囲は、格納された各メッセージデータのデータ範囲とに依存しており、ここでは例えば、DB0が6ワード、DB1が1ワード、DBkが2ワードである。よって、各ポインタ素子DP0、DP1〜DPkは、各メッセージ0、1〜kのデータD0、D1〜Dkについて、常に開始を、従ってデータ領域DB0、DB1〜DBkの開始アドレスを示す。よって、ヘッドセグメントHSとデータセグメントDSとの間のメッセージメモリの分割は、可変であり、メッセージ自体の数および各メッセージのデータ範囲と、第2のデータ範囲の全体とに依存する。構成されるメッセージが少ない場合、ヘッドセグメントが小さくなり、メッセージメモリ内の未使用領域は、データセグメントDSの追加として、データを記憶するために使用される。この可変性によって、最適なメモリ使用が保証されるので、より小さなメモリ使用も可能となる。よって、記憶されるメッセージ数kと各メッセージの第2のデータ範囲との組合せに同様に依存する、未使用データセグメントFDS、特にそのサイズが最小となり、特別な場合には0となりうる。
[0025]
ヘッドセグメントHS内のヘッド領域HB0〜HBkの順序とデータセグメントDS内のデータ領域DB0〜DBkの順序とが各々に同一であるので、ポインタ素子を使用する代わりに、第1と第2のデータ、従って設定データKD(KD0、KD1、…、KDk)と本来のデータD(D0、D1、…、Dk)とを予め設定可能な順序で格納することも可能となる。この場合、条件に応じては、ポインタ素子が省略されうる。
[0026]
特に望ましい形態では、HSおよびDSにはメモリワード毎または領域(HBおよび/またはDB)毎に、チェックサムを特にパリティビットとして一緒に格納できるので、HSおよびDSに格納されているデータの正確さを保証するために、メッセージメモリにエラー認識ジェネレータ、特にパリティビットジェネレータ素子、およびエラー認識チェッカー、特にパリティビット検査素子が対応づけられる。他のコントロール識別子、例えばCRC(Cyclic Redundancy check)またはECC(Error Code Correction)のような強力な識別子も考えられる。よって、メッセージメモリの固定的な分割に比較して、以下の利点が得られる。
[0027]
利用者は、プログラミングするに際して、より小さなデータフィールドを有するより多くのメッセージを使用するか、より大きなデータフィールドを有するより少ないメッセージを使用するかを決定できる。異なるサイズのデータ領域を有するメッセージを構成するに際して、使用可能なメモリスペースが最適に使用される。利用者は、様々な形式のメッセージに対して、共通のデータ領域を使用する可能性を得る。
[0028]
集積された回路上に通信コントローラを実装するに際して、通信コントローラの他の機能を変更することなしに、使用されるメモリのメモリ深度を適合させることによって、メッセージメモリのサイズがアプリケーションの要求に適合させられる。
[0029]
以下において、図4〜6および7〜9を用いて、ホストCPUアクセス、従ってバッファメモリ構成201および202による、設定データもしくはステータスデータおよび本来のデータの書込みおよび読取りについて詳しく説明する。この場合、データ一貫性が確保され、かつ同時に高い伝送速度が保証されるように、データ伝送に関する分離を形成することが目的である。このプロセスの制御は、後述する図10、11および12でさらに詳細に説明されるように、メッセージハンドラ200を介して行われる。
[0030]
図4、5および6では、まず、加入者CPUのホストCPU102による入力バッファメモリ201を介したメッセージメモリ300への書込みアクセスが詳細に説明される。このために、図4は通信モジュール100を再び示しており、説明の便宜上、通信モジュール100の重要な部分のみが示される。まず、シーケンス制御に責任を有するメッセージハンドラ200、2つの制御レジスタ403および404が示されており、制御レジスタは、図示するように、通信モジュール100内でメッセージハンドラ200の外部に収容されるが、メッセージハンドラ200自体にも収容されうる。この場合、制御レジスタ403が入力要求レジスタ(Input Buffer Command Request Register)であり、制御レジスタ404が入力マスクレジスタ(Input Buffer Command Mask Register)である。よって、メッセージメモリ300へのホストCPU102の書込みアクセスは、中間に接続された入力バッファメモリ201を介して行われる。入力バッファメモリ201は、特に部分バッファメモリ400とそれに付属するシャドウメモリ401として、分割され、もしくは二重に設計される。よって、以下で説明するように、メッセージもしくはメッセージオブジェクトあるいはメッセージメモリ300のデータに対して、ホストCPU102の連続アクセスが可能となり、それによって、データ一貫性および加速された伝送が保証されうる。アクセスの制御は、入力要求レジスタ403および入力マスクレジスタ404により行われる。レジスタ403では、例えば32ビットの幅について0〜31の数を用いて、レジスタ403の各ビット位置が示される。レジスタ404およびレジスタ404のビット位置0〜31についても同様である。
[0031]
本発明によれば、例えば、レジスタ403のビット位置0〜5、15、16〜21および31は、シーケンス制御に関して特別な機能を有する。すなわち、レジスタ403のビット位置0〜5には、メッセージ識別子としての識別子IBRH(Input Buffer Request Host)が入力可能である。同様に、レジスタ403のビット位置16〜21には、識別子IBRS(Input Buffer Request Shadow)が入力可能である。同様に、レジスタ403のビット位置15にはIBSYH、ビット位置31にはIBSYSがアクセス識別子として入力される。レジスタ404のビット位置0〜2も特徴を有しており、ビット位置0および1には、LHSH(Load Header Section Host)およびLDSH(Load Data Section Host)によって、データ識別子としての他の識別子が入力される。これらのデータ識別子は、ここでは最も単純な形式、すなわち各々に1ビットとして形成される。レジスタ404のビット位置2には、STXRH(Set Transmission X Request Host)によってスタート識別子が登録される。以下では、入力バッファを介したメッセージメモリへの書込みアクセスのシーケンスについて説明する。
[0032]
ホストCPU102が、伝送すべきメッセージのデータを入力バッファメモリ201に書込む。この場合、ホストCPU102は、メッセージメモリのヘッダセグメントHSのためにメッセージの設定データおよびヘッダデータのみ、またはメッセージメモリのデータセグメントDSのためにメッセージの伝送すべき本来のデータDのみ、あるいは両方を書込むことができる。メッセージのどの部分、従って設定データおよび/または本来のデータを伝送するべきかについては、入力マスクレジスタ404の特殊なデータ識別子LHSHおよびLDSHによって定められる。この場合、LHSHによって、ヘッダデータ、従って設定データKDが伝送されるべきかが定められ、LDSHによって、データDが伝送されるべきかが定められる。入力バッファメモリ201がバッファメモリ400の部分とそれに付属するシャドウメモリ401とによって二分して形成され、交互アクセスを行う必要があることにより、LHSHおよびLDSHに対するペアとして、シャドウメモリ401に関連付けられる他の2つのデータ識別子領域が設けられる。レジスタ404のビット位置16および17のデータ識別子は、LHSS(Load Header Section Shadow)およびLDSS(Load Data Section Shadow)で示される。これらによって、シャドウメモリ401に関する伝送プロセスが制御される。
[0033]
開始ビットもしくはスタート識別子STXRHが入力マスクレジスタ404のビット位置2に設定されている場合、伝送すべき設定データおよび/または本来のデータがメッセージメモリ300に各々に伝送された後に、該当するメッセージオブジェクトのための送信要求(Transmission Request)が自動的に設定される。すなわち、スタート識別子STXRHによって、伝送されるメッセージオブジェクトの自動送信が制御され、特に開始される。
[0034]
シャドウメモリのための、それに対するペアは、スタート識別子STXRS(Set Transmission X Request Shadow)であって、例えば入力マスクレジスタ404のビット位置18に含まれており、ここでも最も単純な形式、同様に1ビットとして形成される。STXRSの機能は、STXRHの機能と同様であるが、シャドウメモリ401に関連する。
[0035]
ホストCPU102がメッセージ識別子、特に入力バッファメモリ201のデータが伝送されるべき、メッセージメモリ300内のメッセージオブジェクトの番号を、入力要求レジスタ403のビット位置0〜5、従ってIBRHに書込んだ場合、入力バッファメモリ201の部分バッファメモリ400とそれに付属するシャドウメモリ401とが交替され、もしくは2つの部分メモリ400および401に対するホストCPU102およびメッセージメモリ300の各アクセスが、半円形の矢印で示唆されるように交替される。この場合、例えばデータ伝送、従ってメッセージメモリ300へのデータ伝送が開始される。メッセージメモリ300へのデータ伝送自体は、シャドウメモリ401から行われる。同時に、レジスタ領域IBRHとIBRSとが交換される。同様に、LHSHおよびLDSHがLHSSおよびLDSSに交換される。同様に、STXRHがSTXRSに交換される。よって、IBRSは、メッセージの識別子、従ってシャドウメモリ401から伝送中のメッセージオブジェクトの番号、もしくはシャドウメモリ401から最後のデータ(KDおよび/またはD)として得られた、メッセージメモリ内のメッセージオブジェクト、従って領域を示す。入力要求レジスタ403のビット位置31の識別子(ここでは、例えば1ビット)IBSYSによって、シャドウメモリ401が関与する伝送が行われているかが表示される。すなわち、例えば、IBSYS=1であれば、シャドウメモリ401から伝送中であり、IBSYS=0であれば、伝送中ではない。ビットIBSYSは、例えば、シャドウメモリ401とメッセージメモリ300との間で伝送中であることを表示するために、レジスタ403のIBRH、従ってビット位置0〜5への書込みによって設定される。メッセージメモリ300へのデータ伝送が終了すると、IBSYSが再び初期化される。
[0036]
シャドウメモリ401からのデータ伝送が進行中に、ホストCPU102は、次の伝送すべきメッセージを入力バッファメモリもしくは部分バッファメモリ400に書込める。例えばレジスタ403のビット位置15の他のアクセス識別子IBSYH(Input Buffer Busy Host)を用いて、識別子がさらに繊細化されうる。シャドウメモリ401とメッセージメモリ300との間で伝送が進行中に、従ってIBSYS=1である場合に、ホストCPU102がIBRH、従ってレジスタ403のビット位置0〜5に書込むと、入力要求レジスタ403にIBSYHが設定される。進行中の伝送が終了するとすぐに、要求された伝送(前述されたSTXRHによる要求)が開始され、ビットIBSYHが初期化される。データがメッセージメモリに伝送されていることを表示するために、全期間において、ビットIBSYSが設定された状態にある。この場合、全ての実施例で使用される全てのビットは、1ビット以上の識別子としても形成されうる。メモリおよび処理の効率化の観点より、1ビットによる解決が効果的である。
[0037]
前述で説明された機構は、入力バッファメモリへのホストCPU102のアクセス速度がFlexRay−IPモジュール、従って通信モジュール100の内部におけるデータ伝送速度より低い、または等しいことを前提として、ホストCPU102が、ヘッダ領域HBおよびデータ領域DBからなる、メッセージメモリ内のメッセージオブジェクトにデータを連続的に伝送することを可能にする。
[0038]
図7、8および9では、ホストCPUもしくは加入者CPU102による出力バッファメモリ202を介したメッセージメモリ300への読取りアクセスが詳細に説明される。このために、図7は通信モジュール100を再び示しており、説明の便宜上、通信モジュール100の重要な部分のみが示される。まず、シーケンス制御に責任を有するメッセージハンドラ200、2つの制御レジスタ703および704が示されており、制御レジスタは、図示のように、通信モジュール100内でメッセージハンドラ200の外部に収容されるが、メッセージハンドラ200自体にも収容されうる。この場合、制御レジスタ703が出力要求レジスタ(Output Buffer Command Request Register)であり、制御レジスタ704が出力マスクレジスタ(Output Buffer Command Mask Register)である。よって、メッセージメモリ300へのホストCPU102の読取りアクセスは、中間に接続された出力バッファメモリ202を介して行われる。出力バッファメモリ202は、同様に、特に部分バッファメモリ700とそれに付属するシャドウメモリ701として、分割され、もしくは二重に設計される。よって、ここでも以下で説明するように、メッセージもしくはメッセージオブジェクトあるいはメッセージメモリ300のデータに対して、ホストCPU102の連続アクセスが可能となり、それによって、メッセージメモリからホストへの逆方向でデータ一貫性および加速された伝送が保証されうる。アクセスの制御は、出力要求レジスタ703および出力マスクレジスタ704を介して行われる。レジスタ703でも、例えば32ビットの幅について0〜31の数字を用いて、レジスタ703の各ビット位置が示される。レジスタ704およびレジスタ704のビット位置0〜31についても同様である。
[0039]
本発明によれば、例えば、レジスタ703のビット位置0〜5、8、9、15および16〜21は、読取りアクセスのシーケンス制御に関して特別な機能を有する。すなわち、レジスタ703のビット位置0〜5には、メッセージ識別子としての識別子OBRS(Output Buffer Request Shadow)が入力可能である。同様に、レジスタ703のビット位置16〜21には、識別子OBRH(Output Buffer Request Host)が入力可能である。同様に、レジスタ703のビット位置15には、アクセス識別子として識別子OBSYS(Output Buffer Busy Shadow)が入力可能である。出力マスクレジスタ704のビット位置0および1も特徴を有しており、ビット位置0および1には、RHSS(Read Header Section Shadow)およびRDSS(Read Data Section Shadow)によって、データ識別しとしての他の識別子が入力される。例えばビット位置16および17には、RHSH(Read Header Section Host)およびRDSH(Read Data Section Host)によって、他のデータ識別子が設けられる。これらのデータ識別子は、ここでも最も単純な形式、すなわち各々に1ビットとして形成される。レジスタ703のビット位置9には、スタート識別子REQが登録される。さらに、例えばレジスタ703のビット位置8に登録される、切替識別子VIEWが設けられる。
[0040]
ホストCPU102は、所望のメッセージの識別子、特に所望のメッセージオブジェクトの番号を、OBRS、従ってレジスタ703のビット位置0〜5に書込むことによって、メッセージメモリ300からメッセージオブジェクトのデータを要求する。この場合、ホストCPUは、反対方向と同様に、メッセージのステータスデータもしくは設定データおよびヘッダデータKDのみを、従ってヘッダ領域から、またはメッセージの伝送すべき本来のデータDのみを、従ってデータ領域から、あるいは両方を読取ることができる。この場合に、ヘッダ領域および/またはデータ領域から伝送されるべきデータの部分は、逆方向と同様に、RHSSおよびRDSSによって決定される。すなわち、RHSSはヘッダデータが読取られるべきかを表し、RDSSは本来のデータが読取られるべきかを表す。
[0041]
スタート識別子は、メッセージメモリからシャドウメモリ700への伝送を開始させるために用いられる。すなわち、識別子として、最も簡単な形式で1ビットが使用される場合、出力要求レジスタ703のビット位置9にビットREQが設定されることによって、メッセージメモリ300からシャドウメモリ700への伝送が開始される。進行中の伝送は、アクセス識別子として、最も簡単な形式で、レジスタ703のビットOBSYSによって表示される。データ衝突を回避するために、OBSYSが設定されておらず、従って伝送が進行中でない場合にのみ、ビットREQが設定可能であれば効果的である。ここでは、その後、メッセージメモリ300とシャドウメモリ700との間でメッセージ伝送も行われる。本来のシーケンスは、一方では、図4、5および6の表示とは反対方向で制御され(相補的なレジスタ占有)、かつ実行され、または、他方では、付加的な識別子、すなわちレジスタ703のビット位置8の切替識別子VIEWによって実行されうる。すなわち、伝送の終了後に、ビットOBSYSが初期化され、出力要求レジスタ703にビットVIEWを設定することによって、部分バッファメモリ701とそれに付属するシャドウメモリ700とが交換され、もしくはそれらに対するアクセスが交替されて、ホストCPU102は、メッセージメモリから要求されたメッセージオブジェクト、従って該当するメッセージを部分バッファメモリ701から読取ることができる。この場合、ここでも、図4〜6の逆方向の伝送と同様に、レジスタセルOBRSとOBRHとが交換される。同様に、RHSSおよびRDSSがRHSHおよびRDSHに交換される。ここでも、OBSYSが設定されておらず、従って伝送が進行中でない場合にのみ、ビットVIEWが設定可能となることで、保護機構として設けられうる。
[0042]
よって、メッセージメモリ300へのホストCPU102の読取りアクセスは、中間に接続された出力バッファメモリ202を介して行われる。出力バッファメモリは、入力バッファメモリと同様に、メッセージメモリ300内に格納されるメッセージオブジェクトへのホストCPU102の連続アクセスを保証するために、二分され、もしくは二重に設計される。ここでも、高いデータ一貫性および加速された伝送という利点が得られる。
[0043]
説明された入力バッファおよび出力バッファを用いることによって、モジュール内部の待ち時間にもかかわらず、中断することなしに、ホストCPUによるメッセージメモリへのアクセスが確保される。
[0044]
データ一貫性を確保するために、データ伝送、特に通信モジュール100内の転送(Weiterleitung)がメッセージハンドラ200(Message Handler MHD)によって行われる。このために、図10には、メッセージハンドラ200が示される。メッセージハンドラは、機能性に関して、複数の状態機械または状態オートマトン、従って有限オートマトン、いわゆる有限状態機械(FSM)によって表示可能である。この場合、少なくとも3つの状態機械、特に望ましい実施例では4つの有限状態機械が設けられる。第1の有限状態機械がIOBF−FSM501で示される(Input/Output Buffer State Machine)。IOBF−FSMは、入力バッファメモリまたは出力バッファメモリに関する各伝送方向に応じて、2つの有限状態機械、IBF−FSM(Input Buffer FSM)とOBF−FSM(Output Buffer FSM)とに分割可能であり、それによって最大5つの状態オートマトン(IBF-FSM, OBF-FSM, TBF1-FMS, TBF2-FSM, AFSM)が考えられる。しかし、共通のIOBF−FSMが設けられることが望ましい。ここでは、少なくとも第2の有限状態機械は、望ましい実施例の特徴として図2に記述するように、2つのブロック502および503に分割されており、メモリ205および206に関する2つのチャネルAおよびBを操作する。この場合、2つのチャネルを操作するために、1つの有限状態機械を設けることができ、または、望ましい形式として、チャネルAのための有限状態機械TBF1−FSM(Transient Buffer 1(206, RAM A)状態機械)502と、チャネルBのためのTBF2−FSM(Transient Buffer 2(205, RAM B)状態機械)503とが示される。
[0045]
望ましい実施例では、3つの有限状態機械501〜503のアクセスを制御するために、アービター有限状態機械、いわゆるAFSM500が用いられる。データ(KDおよび/またはD)は、通信モジュール内で、例えばVCO(Voltage controlled oscillator)、振動クォーツなどのようなクロック手段によって生成された、またはそれらに基づいて適合されたクロックで伝送される。この場合、クロックTは、モジュール内で生成可能であり、または例えば、外部からのバスクロックとして設けられうる。アービター有限状態機械AFSM500は、3つの有限状態機械501〜503のいずれか1つに対して、特に各クロック周期Tに亘って、メッセージメモリへのアクセス権を交互に与える。すなわち、使用可能な状態にある時間が、各状態オートマトン501、502、503のアクセス要求に応じて、要求する状態オートマトンに割当てられる。有限状態機械のいずれか1つのみからアクセス要求が行われた場合、その有限状態機械がアクセス時間の100%、従って全てのクロックTを取得する。2つの状態オートマトンからアクセス要求が行われた場合、各有限状態機械がアクセス時間の50%を取得する。そして、3つの状態オートマトンからアクセス要求が行われた場合、各有限状態機械がアクセス時間の1/3を取得する。これによって、使用可能な各帯域幅が最適に使用される。
[0046]
第1の有限状態機械501、従ってIOBF−FSMは、必要に応じて以下の動作を実行する:
−入力バッファメモリ201からメッセージメモリ300内の選択されたメッセージオブジェクトへのデータ伝送
−メッセージメモリ300内の選択されたメッセージオブジェクトから出力バッファメモリ202へのデータ伝送
[0047]
チャネルAのための状態機械502、従ってTBF1FSMは、以下の動作を実行する:
−メッセージメモリ300内の選択されたメッセージオブジェクトからチャネルAのバッファメモリ206へのデータ伝送
−バッファメモリ206からメッセージメモリ300内の選択されたメッセージオブジェクトへのデータ伝送
−メッセージメモリ内での適切なメッセージオブジェクトのサーチ、その場合、受信に際しては、承認フィルタリングの範囲内で、チャネルAで受信されたメッセージを格納するためのメッセージオブジェクト(Receive Buffer)がサーチされ、送信に際しては、チャネルAで送信すべき後続のメッセージオブジェクト(Transmit Buffer)がサーチされる。
[0048]
TBF2−FSM、従ってブロック503のチャネルBのための有限状態機械の動作も同様である。TBF2−FSMは、メッセージメモリ300内の選択されたメッセージオブジェクトからチャネルBのバッファメモリ205へのデータ伝送と、バッファメモリ205からメッセージメモリ300内の選択されたメッセージオブジェクトへのデータ伝送を実行する。サーチ機能も、TBF1−FSMと同様に、メッセージメモリ内の適切なメッセージオブジェクトがサーチされ、その場合に受信に際しては、承認フィルタリングの範囲内で、チャネルBで受信されたメッセージを格納するためのメッセージオブジェクト(Receive Buffer)がサーチされ、送信に際しては、チャネルBで送信すべき後続のメッセージもしくはメッセージオブジェクト(Transmit Buffer)がサーチされる。
[0049]
図11には、シーケンスおよび伝送路が再び示される。3つの状態機械501〜503が、各コンポーネントの間の各データ伝送を制御する。この場合、ホストCPU102、入力バッファメモリ201、および出力バッファメモリ202が示される。また、メッセージメモリ300、チャネルAおよびチャネルBのための2つのバッファメモリ206および205が示される。インターフェース素子207および208も、同様に示される。第1の状態オートマトンIOBF−FSM501は、データ伝送Z1A、従って入力バッファメモリ201からメッセージメモリ300への伝送と、データZ1B、従ってメッセージメモリ300から出力バッファメモリ202への伝送を制御する。この場合、データ伝送は、例えば32ビットのワード幅を有するデータバスを介して実行されるが、他のビット数でも実行可能である。メッセージメモリとバッファメモリ206との間の伝送Z2についても、同様である。データ伝送は、TBF1−FSM、従ってチャネルAのための状態機械502によって制御される。メッセージメモリ300とバッファメモリ205との間の伝送Z3は、状態オートマトンTBF2−FSM503によって制御される。ここでも、データ伝送は、例えば32ビットのワード幅を有するデータバスを介して実行されるが、他のビット数でも実行可能である。通常、前述した伝送路を介して完全なメッセージオブジェクトを伝送するには、複数のクロック周期Tが必要とされる。よって、アービター、従ってAFSM500によって、クロック周期Tに関連付けられた伝送時間の分割が行われる。図11には、メッセージハンドラによって管理されるメモリコンポーネント間のデータ経路が示される。メッセージメモリ内に記憶されているメッセージオブジェクトのデータ一貫性を確保するために、望ましくは、図示される経路、従ってZ1AおよびZ1B、ならびにZ2およびZ3のいずれか1つのみで、同一時点で同時にデータが交換される必要がある。
[0050]
図12には、使用可能な状態にあるシステムクロックTがアービター、従ってAFSM500によって、3つの要求する状態オートマトンに対してどのように分割されるかが例示される。位相1では、状態オートマトン501および502によるアクセス要求が行われ、すなわち、全アクセス時間が2つの要求する状態オートマトンに50%ずつ分割される。位相1のクロック周期に関して、状態オートマトン501がクロック周期T1およびT3でアクセスを取得し、状態オートマトン502がクロック周期T2およびT4でアクセスを取得する。位相2では、状態オートマトン501によるアクセス要求のみが行われるので、3つのクロック周期の全て、従ってT5〜T7のアクセス時間の100%をIOBF−FSMが取得する。位相3では、3つの状態オートマトン501〜503の全てによるアクセス要求が行われるので、全アクセス時間が3分割される。この場合、アービターAFSMは、全アクセス時間を、例えば、クロック周期T8およびT11で有限状態機械501が、クロック周期T9およびT12で有限状態機械502が、クロック周期T10およびT13で有限状態機械503が各々にアクセスを取得するように分割する。そして、位相4では、通信モジュールの2つのチャネルAおよびB上で、2つの状態オートマトン502および503によるアクセスが行われるので、クロック周期T14およびT16で有限状態機械502が、T15およびT17で有限状態機械503が各々にアクセスを取得するように分割される。
[0051]
よって、2つ以上の状態機械がメッセージメモリ300にアクセスを要求した場合には、アービター状態オートマトンAFSM500によって、アクセスは、クロック単位で交互に、要求した状態機械に分割される。この方法により、メッセージメモリ内に格納されたメッセージオブジェクトの一貫性、従ってデータ一貫性が確保される。例えば、受信されたメッセージがメッセージオブジェクト内に書込まれている最中に、ホストCPU102が出力バッファメモリ202を介して当該メッセージオブジェクトを読取ろうとした場合、最初に開始された要求に応じて古い状態または新たな状態が読取られるので、メッセージメモリ内のメッセージオブジェクト内でのアクセス自体が衝突しない。
[0052]
前述した方法は、ホストCPUが動作の進行中にメッセージメモリ内の各任意のメッセージオブジェクトを読取り、または書込むことを可能にし、ホストCPUのアクセスが継続中には、例えばFlexRayバスの2つのチャネル上のデータ交換に際して、選択されたメッセージオブジェクトが加入者によって遮断される(Buffer Locking)ことがない。同時に、クロック単位でアクセスを入れ子にすることによって、メッセージメモリ内に格納されているデータの一貫性が確保され、全帯域幅の使用によっても、伝送速度が向上する。

Brief Description of Drawings

[0053]
[fig. 1] 通信モジュールおよび通信モジュールの物理層への結合、従って通信接続と通信加入者またはホスト加入者との結合を概念的に示す説明図である。
[fig. 2] 図1に示す通信モジュールおよび通信モジュールの結合を特別な実施例で詳細に示す説明図である。
[fig. 3] メッセージメモリの構成を示す説明図である。
[fig. 4] 加入者からメッセージメモリへの方向における、アーキテクチャおよびデータアクセスのプロセスを概念的に示す説明図である。
[fig. 5] 加入者からメッセージメモリへの方向における、アーキテクチャおよびデータアクセスのプロセスを概念的に示す説明図である。
[fig. 6] 加入者からメッセージメモリへの方向における、アーキテクチャおよびデータアクセスのプロセスを概念的に示す説明図である。
[fig. 7] メッセージメモリから加入者への方向における、アーキテクチャおよびデータアクセスのプロセスを概念的に示す説明図である。
[fig. 8] メッセージメモリから加入者への方向における、アーキテクチャおよびデータアクセスのプロセスを概念的に示す説明図である。
[fig. 9] メッセージメモリから加入者への方向における、アーキテクチャおよびデータアクセスのプロセスを概念的に示す説明図である。
[fig. 10] メッセージハンドラおよびメッセージハンドラ中に含まれる有限状態機械を概念的に示す説明図である。
[fig. 11] 通信モジュールの構成部分および加入者、ならびにメッセージハンドラによって制御される対応するデータ経路を再び概念的に示す説明図である。
[fig. 12] 図11に示すデータ経路に関してアクセス分割を示す説明図である。

符号の説明

[0054]
100 通信モジュール
200 メッセージハンドラ
201、202 第2のバッファメモリ構成
205、206 第1のバッファメモリ構成
300 メッセージメモリ
501 第2の有限状態機械
502、503 第1の有限状態機械
500 第3の有限状態機械

Claims

[1]
アクセスによりデータが入出力されるメッセージメモリ(300)を有する通信モジュール(100)のメッセージハンドラ(200)であって、前記メッセージメモリ(300)が第1のバッファメモリ構成(205、206)および第2のバッファメモリ構成(201、202)に接続され、かつ前記データへのアクセスが前記第1または第2のバッファメモリ構成を介して行われる、前記メッセージハンドラにおいて、
前記メッセージハンドラ(200)が、前記第1のバッファメモリ構成(205、206)を介した前記メッセージメモリへの前記アクセスを制御する少なくとも1つの第1の有限状態機械(502、503)と、前記第2のバッファメモリ構成(201、202)を介したメッセージメモリへの前記アクセスを制御する少なくとも1つの第2の有限状態機械(501)と、第3の有限状態機械と、を備え、
少なくとも1つの前記第1および第2の有限状態機械がアクセス要求を行い、かつ前記アクセス要求に従って前記第3の有限状態機械が少なくとも1つの前記第1および第2の有限状態機械に前記メッセージメモリへのアクセスを割当てることを特徴とする、通信モジュールのメッセージハンドラ。
[2]
各々に双方向性を有する2つのデータ経路に前記第1のバッファメモリ構成(205、206)を介して前記データが伝送され、前記第1のバッファメモリ構成(205、206)が第1のデータ経路のための第1のバッファメモリ(206)と第2のデータ経路のための第2のバッファメモリ(205)とを有しており、かつデータ経路毎に前記第1の有限状態機械(502、503)の各々を備えており、2つの前記第1の有限状態機械の各々が前記バッファメモリを介した前記メッセージメモリへの前記アクセスを制御することを特徴とする、請求項1に記載のメッセージハンドラ。
[3]
クロック手段を備えており、前記クロック手段によって前記データが予め設定可能なクロック周期(T)で伝送され、前記第3の有限状態機械(500)が、前記アクセス要求に従って前記第1の有限状態機械(502、503)および前記第2の有限状態機械(501)の各々に次々とクロック周期(T1〜T17)を割当てることを特徴とする、請求項1または2に記載のメッセージハンドラ。
[4]
全アクセス時間が、前記第3の有限状態機械(500)によって、同時のアクセス要求の数に応じて均等に分割され、かつ有限状態機械毎に、常に同時に1つのアクセス要求のみが許されることを特徴とする、請求項1または2に記載のメッセージハンドラ。
[5]
請求項1に記載のメッセージハンドラを有する通信モジュール。
[6]
通信モジュールが有するメッセージメモリ(300)中のデータへのアクセスをメッセージハンドラ(200)によって制御する方法であって、アクセスによりデータが前記メッセージメモリ(300)に入力または前記メッセージメモリから出力され、前記メッセージメモリが第1のバッファメモリ構成および第2のバッファメモリ構成に接続され、かつ前記データへのアクセスが前記第1または第2のバッファメモリ構成を介して行われる、前記方法において、
前記メッセージハンドラが、前記第1のバッファメモリ構成を介した前記メッセージメモリへの前記アクセスを第1のアクセス経路として制御する少なくとも1つの第1の有限状態機械と、前記第2のバッファメモリ構成を介した前記メッセージメモリへの前記アクセスを第2のアクセス経路として制御する少なくとも1つの第2の有限状態機械とを備え、
同時にいずれか1つの前記アクセス経路でのみ前記データがアクセスされることを特徴とする、メッセージメモリ中のデータへのアクセスを制御する方法。
[7]
各々に双方向性を有する2つのデータ経路に前記第1のバッファメモリ構成を介して前記データが伝送され、前記第1のバッファメモリ構成が第1のデータ経路のための第1のバッファメモリと第2のデータ経路のための第2のバッファメモリとを有し、かつデータ経路毎に第1の有限状態機械を備えており、2つの前記第1の有限状態機械の各々が前記バッファメモリを介した前記メッセージメモリへの前記アクセスを制御することで、第3のアクセス経路が生じ、かつ同時にいずれか1つの前記アクセス経路でのみ前記データがアクセスされることを特徴とする、請求項6に記載の方法。

Drawings

[ Fig. 1]

[ Fig. 2]

[ Fig. 3]

[ Fig. 4]

[ Fig. 5]

[ Fig. 6]

[ Fig. 7]

[ Fig. 8]

[ Fig. 9]

[ Fig. 10]

[ Fig. 11]

[ Fig. 12]