(57)【要約】ユニバーサル非同期受信機／伝送機（ＵＡＲＴ）インターフェースが開示される。ＵＡＲＴインターフェースは、構成可能な非同期受信機および伝送機ユニットと、構成可能な状態マシンとを含み得、状態マシンは、受信機および伝送機ユニットの構成が種々のボーレートをサポートし、スタートビットおよびストップビット構成を提供することを可能にし、状態マシンはさらに、複数の通信プロトコルを自動的にサポートするように構成可能である。
2018524859.tif 000002
【特許請求の範囲】
【請求項１】
ユニバーサル非同期受信機／伝送機（ＵＡＲＴ）インターフェースであって、前記ＵＡＲＴインターフェースは、
構成可能な非同期受信機および伝送機ユニットと、
構成可能な状態マシンと
を備え、
前記状態マシンは、前記受信機および伝送機ユニットの構成が種々のボーレートをサポートし、スタートビットおよびストップビット構成を提供することを可能にし、前記状態マシンはさらに、複数の通信プロトコルを自動的にサポートするように構成可能である、ＵＡＲＴインターフェース。
【請求項２】
前記複数の通信プロトコルは、ＤＭＸプロトコルを備える、請求項１に記載のＵＡＲＴインターフェース。
【請求項３】
前記複数の通信プロトコルは、ＤＡＬＩプロトコルを備える、請求項１に記載のＵＡＲＴインターフェース。
【請求項４】
前記複数の通信プロトコルは、ＬＩＮプロトコルを備える、請求項１に記載のＵＡＲＴインターフェース。
【請求項５】
動作モードは、構成レジスタを通して設定される、前記請求項のうちの１項に記載のＵＡＲＴインターフェース。
【請求項６】
前記状態マシンは、第２のモードでブレイク、ＭＡＢ、フレーム幅、ＭＴＢＦ、およびＭＴＢＰのための自動サポートを提供する、前記請求項のうちの１項に記載のＵＡＲＴインターフェース。
【請求項７】
前記請求項のうちの１項に記載のＵＡＲＴインターフェースを備える、マイクロコントローラ。
【請求項８】
前記マイクロコントローラは、８ビットマイクロコントローラ、１６ビットマイクロコントローラ、および３２ビットマイクロコントローラから成る群から選択される、請求項７に記載のマイクロコントローラ。
【請求項９】
前記ＵＡＲＴインターフェースに結合されたタイマをさらに備える、請求項７に記載のマイクロコントローラ。
【請求項１０】
前記動作モードは、マンチェスタモードを備える、前記請求項のうちの１項に記載のＵＡＲＴインターフェース。
【請求項１１】
ユニバーサル非同期受信機／伝送機（ＵＡＲＴ）インターフェースであって、前記ＵＡＲＴインターフェースは、構成可能な非同期受信機および伝送機ユニットと、構成可能な状態マシンとを備え、前記状態マシンは、前記受信機および伝送機ユニットの構成が種々のボーレートをサポートし、スタートビットおよびストップビット構成を提供することを可能にし、前記状態マシンはさらに、複数の通信プロトコルを自動的にサポートするように構成可能である、ＵＡＲＴインターフェースと、
前記ＵＡＲＴインターフェースを備えるマイクロコントローラと、
前記ＵＡＲＴインターフェースを介してデータを受信および伝送するように動作可能である、前記マイクロコントローラに結合された複数のコンポーネントと
を備える、マイクロコントローラシステム。
【請求項１２】
前記複数の通信プロトコルは、ＤＭＸプロトコルを備える、請求項１１に記載のマイクロコントローラシステム。
【請求項１３】
前記複数の通信プロトコルは、ＤＡＬＩプロトコルを備える、請求項１１に記載のマイクロコントローラシステム。
【請求項１４】
前記複数の通信プロトコルは、ＬＩＮプロトコルを備える、請求項１１に記載のマイクロコントローラシステム。
【請求項１５】
動作モードは、構成レジスタを通して設定される、請求項１１−１４のうちの１項に記載のマイクロコントローラシステム。
【請求項１６】
前記状態マシンは、第２のモードでブレイク、ＭＡＢ、フレーム幅、ＭＴＢＦ、およびＭＴＢＰのための自動サポートを提供する、請求項１１−１５のうちの１項に記載のマイクロコントローラシステム。
【請求項１７】
前記マイクロコントローラは、８ビットマイクロコントローラである、請求項１１−１６のうちの１項に記載のマイクロコントローラシステム。
【請求項１８】
前記ＵＡＲＴインターフェースに結合されたタイマをさらに備える、請求項１１−１７のうちの１項に記載のマイクロコントローラシステム。
【請求項１９】
動作モードは、マンチェスタモードを備える、請求項１１−１８のうちの１項に記載のマイクロコントローラシステム。
【請求項２０】
前記複数のコンポーネントは、複数の視聴覚コンポーネントを備える、請求項１１−１９のうちの１項に記載のマイクロコントローラシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願への相互参照）
本出願は、同一出願人の、２０１５年６月１８日に出願された米国仮特許出願第６２／１８１，５３３号に対して優先権を主張する。上記文献は、全体としてここで参照することによって本明細書において援用される。
【０００２】
（技術分野）
本開示は、シリアルインターフェース、具体的には、自動プロトコルを用いたユニバーサル非同期受信機／伝送機（「ＵＡＲＴ」）インターフェースに関する。
【背景技術】
【０００３】
（背景）
ＵＡＲＴは、周知であり、通信チャネルを提供するためにマイクロコントローラで一般的に使用されている。ＵＡＲＴインターフェースは、パラレルデータをシリアル伝送形態に変換する。種々のタイプのプロトコルが存在し、Ｅｌｅｃｔｒｏｎｉｃ  Ｉｎｄｕｓｔｒｉｅｓ  Ａｌｌｉａｎｃｅ規格ＲＳ−２３２、ＲＳ−４２２、またはＲＳ−４８５等の種々の通信規格によって定義されるようにＵＡＲＴ通信で使用される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
（要約）
複数の自動プロトコルをサポートするように動作可能なユニバーサル非同期受信機／伝送機インターフェースを提供する必要性が存在する。
【課題を解決するための手段】
【０００５】
ユニバーサル非同期受信機／伝送機（ＵＡＲＴ）インターフェースが開示される。ＵＡＲＴインターフェースは、構成可能な非同期受信機および伝送機ユニットと、構成可能な状態マシンとを含み得、状態マシンは、受信機および伝送機ユニットの構成が種々のボーレートをサポートし、スタートビットおよびストップビット構成を提供することを可能にし、状態マシンはさらに、複数の通信プロトコルを自動的にサポートするように構成可能である。
【０００６】
いくつかの実施形態では、複数の通信プロトコルは、ＤＭＸプロトコルを含んでもよい。同一または代替実施形態では、複数の通信プロトコルは、ＤＡＬＩプロトコルを含んでもよい。同一または代替実施形態では、複数の通信プロトコルは、ＬＩＮプロトコルを含んでもよい。
【０００７】
いくつかの実施形態では、動作モードが、構成レジスタを通して設定される。いくつかの実施形態では、状態マシンは、ブレイク、ＭＡＢ、フレーム幅、ＭＴＢＦ、およびＭＴＢＰのための自動サポートを提供する。
【０００８】
いくつかの実施形態では、マイクロコントローラシステムも開示される。マイクロコントローラシステムはまた、ＵＡＲＴを含むマイクロコントローラを含んでもよい。そのような実施形態では、マイクロコントローラは、８ビットマイクロコントローラ、１６ビットマイクロコントローラ、および３２ビットマイクロコントローラから成る群から選択されてもよい。そのような実施形態では、マイクロコントローラはさらに、ＵＡＲＴインターフェースに結合されるタイマを含んでもよい。
【０００９】
いくつかの実施形態では、動作モードは、マンチェスタモードを含んでもよい。
【図面の簡単な説明】
【００１０】
【図１】図１は、本開示のある実施形態による、第１から第５１２のバイトの例示的伝送を図示する。
【図２】図２は、本開示のある実施形態による、例示的な対応するＤＭＸ受信プロトコルを図示する。
【図２Ａ】図２は、本開示のある実施形態による、例示的な対応するＤＭＸ受信プロトコルを図示する。
【図２Ｂ】図２は、本開示のある実施形態による、例示的な対応するＤＭＸ受信プロトコルを図示する。
【図３】図３は、本開示のある実施形態による、特定のデータサイズ（例えば、レジスタＰ１＝２（バイト））に設定されたメモリ部分を伴う例示的１６ビットＤＡＬＩデバイスを図示する。
【図３Ａ】図３は、本開示のある実施形態による、特定のデータサイズ（例えば、レジスタＰ１＝２（バイト））に設定されたメモリ部分を伴う例示的１６ビットＤＡＬＩデバイスを図示する。
【図３Ｂ】図３は、本開示のある実施形態による、特定のデータサイズ（例えば、レジスタＰ１＝２（バイト））に設定されたメモリ部分を伴う例示的１６ビットＤＡＬＩデバイスを図示する。
【図４】図４は、本開示のある実施形態による、ＤＡＬＩ伝送のための例示的タイミング図を図示する。
【図５】図５は、本開示のある実施形態による、ＬＩＮマスタ／スレーブモードの例示的タイミング図を図示する。
【図６】図６は、本開示のある実施形態による、ＬＩＮマスタ／スレーブモードの継続的な例示的タイミング図を図示する。
【図７】図７は、本開示のある実施形態による、ＬＩＮスレーブ専用モードの例示的タイミング図を図示する。
【図８】図８は、本開示のある実施形態による、ＬＩＮスレーブ専用モードの継続的な例示的タイミング図を図示する。
【図９】図９は、本開示のある実施形態による、伝送のための例示的マンチェスタ復号方式を図示する。
【図１０】図１０は、本開示のある実施形態による、受信のための例示的マンチェスタ復号方式を図示する。
【図１１】図１１は、本開示のある実施形態による、受信のための継続的な例示的マンチェスタ復号方式を図示する。
【図１２】図１２は、本開示のある実施形態による、受信のためのさらに継続的な例示的マンチェスタ復号方式を図示する。
【図１３】図１３は、本開示のある実施形態による、受信のためのなおもさらなる例示的マンチェスタ復号方式を図示する。
【発明を実施するための形態】
【００１１】
（詳細な説明）
種々の実施形態によると、データ相互作用のみを使用して、デジタル多重化（「ＤＭＸ」）、ローカル相互接続ネットワーク（「ＬＩＮ」）、デジタルアドレス指定可能照明インターフェース（「ＤＡＬＩ」）等のマルチステッププロトコルが実装されることを可能にする、ユニバーサル非同期受信機／伝送機（「ＵＡＲＴ」）が、提供されることができる。ソフトウェアが、ブレイク（「ＢＲＫ」）文字、ＳＴＡＲＴビット、ＳＴＯＰビット、チェックサム等を配置する場所について気にする必要はない。これらの要素の全ての物理層配置は、自動的に対処され得る。ソフトウェアは、リンクを経由してデータを読み取ることおよび書き込むことのみに責任があり得る。
【００１２】
各プロトコルでは、ユーザは、伝送または受信されるデータを書き込み、かつ読み取ってもよい。本開示の目的のために、「ユーザ」は、任意の適切な電子デバイスおよび／または該デバイスのオペレータを指し得る。次いで、ＵＡＲＴは、ＳＴＡＲＴ、ＳＴＯＰ、ＩＤＬＥ周期、チェックサム計算、データ挿入、パリティビット等を自動的に挿入してもよい。したがって、少なくとも以下のプロトコル、すなわち、自動ＤＭＸプロトコル、自動ＤＡＬＩプロトコル、自動ＬＩＮプロトコルが、実装されることができる。
【００１３】
ある従来のＵＡＲＴは、ビットの比較的低レベルの制御のみを提供し得る。より高レベルの問題（例えば、ＳＴＡＲＴおよびＳＴＯＰビット、チェックサム等を配置する場所）は、殆どのマイクロコントローラが利用可能な多数のソフトウェアサイクルを有するため、ソフトウェアで対処される。しかしながら、８ビットマイクロコントローラ等のより小さいソリューションでは、全利用可能ソフトウェアサイクルがより少数であるため、ハードウェアブロックが、ソフトウェアから負担を取り除くために活用され得る。
【００１４】
種々の実施形態によると、一般的なプロトコルソフトウェアセットが提供されてもよい。例えば、ユーザが複数の利用可能なプロトコルモードのうちの１つを選択することを可能にする、複数のビットが提供されてもよい。これは、例えば、ＵＡＲＴ構成レジスタにおいて制御ビット、例えば、ＵＳＥ＿ＰＲＯＴ＝１を設定することによって、達成されてもよい。さらに、要求されたクロックレートが選択されたクロックから分割されることができるように、ボーレート値（例えば、ボーレートジェネレータビット「ＢＲＧＨ／Ｌ」）が、設定されることができる。これらのクロックレートは、一例のみとして提供される。ハードウェアは、クロックレートにいかなる制限も施行しない場合がある。クロックレートは、異なるプロトコルのために提供されてもよく、例えば、ＤＭＸは、５〜２５０ＫＨｚのクロックレートを使用し、ＤＡＬＩは、２１８０〜２６６６Ｈｚのクロックレート（ピンにおけるマンチェスタ１０９０〜１３３３ボーに変換する）を使用し、ＬＩＮは、１００Ｈｚ〜２０ＫＨｚのクロックレートを使用してもよい。
【００１５】
いくつかの実施形態では、ウォーターマーク値が、要求されたウォーターマークに設定されてもよい。例えば、伝送先入れ先出し（「ＦＩＦＯ」）が３に達するときに、割込が所望される場合、特定の構成が、ＴＩＮＴＦＬＧ［２：０］を３に設定してもよい。他の構成値もまた、本開示の範囲から逸脱することなく使用されてもよい。例えば、適切な信号ピン上の論理レベルが、プロトコルに応じて、所望の値に設定されることができ、伝送極性ビットが、設定されてもよい、モデル選択信号が、所望のモードに設定されてもよい、伝送イネーブル信号が、設定されてもよい、受信イネーブル信号が、設定されてもよい等である。
【００１６】
ＢＲＫを有するプロトコル（例えば、ＤＭＸおよびＬＩＮ）を組み込む、いくつかの実施形態では、ＢＲＫがパケットの途中で受信される（予期しない早期ＢＲＫ）場合、状態マシンは、新しいパケットが開始した場合のように挙動するであろう。受信バッファのコンテンツは、フラッシュされないであろう。ユーザは、これらを読み出さなければならない、または（例えば、ＲＸＦＬＳＨビットをアクティブ化することによって）意図的にバッファコンテンツをフラッシュしなければならない。
【００１７】
いくつかの実施形態では、チェックサム値、パリティ内部加算器（およびその稼働レジスタのうちのいずれか）が、全てのプロトコルモードの開始時に消去される。しかしながら、チェックサムおよびパリティステータスビットは、消去されない。これらは、いくつかの実施形態によると、ユーザによって消去されてもよい。
【００１８】
ＤＭＸプロトコル状態マシン
種々の実施形態では、自動プロトコルを用いたＵＡＲＴは、ＤＭＸプロトコルを利用してもよい。そのような実施形態では、特定のプロトコルは、ユーザが複数の利用可能なプロトコルモードのうちの１つを選択することを可能にする複数のビットによって、選定されてもよい。例えば、特定の構成が、「ＵＳＥ＿ＰＲＯＴ」信号を論理高に設定することによって、ＤＭＸプロトコルを選択してもよい。ＤＭＸは、舞台および演劇機器で使用されるプロトコルである。これは、照明、煙霧機等を含む。プロトコルは、コマンドを送出する制御コンソール、およびこれらのコマンドを受信する劇場照明等の機器から成る。プロトコルは、コマンドを伝送するコンソールおよびそれらを受信する機器を伴って一方向性である。機器は、決して何も伝送せず、コンソールは、決して何も受信しない。また、ＤＭＸ構成は、エラー制御または再伝送機構を含まない。
【００１９】
ＤＭＸまたはＤＭＸ−５１２は、公知であり得るように、５１２個のチャネルの「領域」から成る。これは、１つのコンソールが単一のＤＭＸリンク上で最大５１２バイトを出力できることを意味する。ライン上の各機器は、これらのバイトのうちの１つ以上をリッスンするようにプログラムされる。例えば、領域のうちの１つに接続される煙霧機は、バイト数１０から始まって受信し、４バイトカウントを受信するようにプログラムされてもよく、照明ユニットは、バイト数２２にプログラムされ、１バイトカウントを受信してもよい。
【００２０】
各ＤＭＸ伝送は、「開始コード」と呼ばれるバイトが後に続く、ＢＲＥＡＫで始まってもよい。ＢＲＥＡＫの幅は、特定のレジスタ、例えば、Ｐ１レジスタを用いて設定される。ブレイクの後には、「Ｍａｋｅ  Ａｆｔｅｒ  Ｂｒｅａｋ（ＭＡＢ）」が続く。図１は、本開示のある実施形態による、第１から第５１２のバイトの例示的伝送を図示する。伝送される各バイトは、特定の信号（例えば、ＵＳＥ＿ＦＩＦＯ）が特定の論理レベル（例えば、０）に設定されるときに、割込イベントを生じるであろう。割込頻度は、その信号が改変されるときに改変してもよい。例えば、信号が反対論理レベル（例えば、１）に設定されるとき、割込頻度は、ウォーターマーク設定に依存し得る。
【００２１】
いくつかの実施形態では、ＵＡＲＴが受信機として構成されるとき、ＵＡＲＴは、所定の長さ（例えば、幅が少なくとも１１個のクロック）であるＢＲＥＡＫ文字をリッスンしてもよい。ＢＲＥＡＫの直後に、ＵＡＲＴは、ＭＡＢを確認するであろう。本空間は、ＵＡＲＴによって無視されてもよい。次いで、ＵＡＲＴは、開始コードを確認するであろう。開始コードは、常に、ＵＡＲＴの特定のメモリ部分（例えば、受信バッファ）の中へ時間記録されるであろう。開始コードは、常に、ＦＩＦＯ占有率にかかわらず、割込イベントを生じるであろう。割込頻度信号が特定の論理レベルに設定される（例えば、ＵＳＥ＿ＦＩＦＯ＝１）場合、受信割込は、ウォーターマーク設定に従ってフラグを付けられるであろう。
【００２２】
開始コード後に、ＵＡＲＴは、第１から第５１２のバイトを受信するであろう。受信されたバイトに５１２回の割込を有するのではなく、ＵＡＲＴは、着目されるものが受信されるまで、受信されたバイトを無視することができる。これは、ＵＡＲＴの他のメモリ部分（例えば、Ｐ２およびＰ３レジスタ）を使用して行われる。１つのメモリ部分（例えば、Ｐ２レジスタ）は、受信プロセスを開始するバイト数の値を保持してもよい。上記に列挙される煙霧機の場合、例えば、ユーザは、Ｐ２レジスタを１０にプログラムしてもよい。以前に議論された照明器具は、数２２にプログラムされてもよい。別のメモリ部分（例えば、レジスタＰ３）は、受信するバイト数の値を保持してもよい。煙霧機の場合、他のメモリ部分（例えば、Ｐ３）は、ＵＡＲＴが合計４つのバイトである、バイト１０、１１、１２、および１３を受信するように、値４を保持するであろう。図２は、本開示のある実施形態による、例示的な対応するＤＭＸ受信プロトコルを図示する。
【００２３】
伝送ソフトウェアモデル
種々の実施形態では、自動ＤＭＸプロトコルを用いたＵＡＲＴはまた、伝送ソフトウェアモデルを含んでもよい。伝送ソフトウェアモデルは、特定の信号をアサートすることによって設定されてもよい。例えば、ピン信号（例えば、Ｐ１Ｈ／Ｌ）が、伝送されたＢＲＥＡＫの所望の持続時間に設定されてもよい。典型的値は、１３である。
【００２４】
いくつかの実施形態では、次いで、モデルは、開始コードを通信バス（例えば、ＴＸＢ［７：０］）に書き込んでもよい。これは、最初のワードがＦＩＦＯに書き込まれるときに、ＵＡＲＴにＢＲＥＡＫを伝送させてもよい。ＢＲＥＡＫは、（例えば、「Ｐ１Ｈ／Ｌ」上で設定されるクロックカウントの数によって）所望の持続時間にわたって持続してもよい。次いで、ＵＡＲＴは、残りのチャネルを通信バス（例えば、ＴＸＢ［７：０］）に書き込んでもよい。開始コード後に、次のチャネルが、バスＦＩＦＯから伝送される。伝送割込信号（例えば、ｉｎｔ＿ｔｘ）が、ウォーターマークに達する（例えば、ＵＳＥ＿ＦＩＦＯ＝１）度に、またはバスが満杯である（ＵＳＥ＿ＦＩＦＯ＝０）ときに、設定されてもよい。
【００２５】
残りのチャネルのうちのいずれかが書き込まれていない場合、伝送出力は、高くなり、より多くのバスコンテンツが利用可能になるまで、高いままであってもよい。これは、バス上のさらなる空間が利用可能にされるまで、トグリングしないことから伝送タイマリセット信号（例えば、ｕａｒｔ＿ｔｉｍｅｒ＿ｒｅｓｅｔ＿ｔｘ）をもたらし得る。タイマ２等の外部タイマは、本トグル間の時間をカウントし、ＤＭＸ接続がタイムアウトしたかどうかを判定してもよい。タイムアウトした場合、ソフトウェアは、伝送状態マシンを再始動させるために、（例えば、ＴＸＥＮ＝０、次いで、ＴＸＥＮ＝１を設定することによって）伝送イネーブル信号を交互に入れ替えてもよい。これはまた、バスをフラッシュするであろう。いくつかの実施形態では、ＵＡＲＴは、ＭＡＢおよび２−ＳＴＯＰビットを自動的にハンドリングしてもよい。
【００２６】
受信ソフトウェアモデル
種々の実施形態では、自動ＤＭＸプロトコルを用いたＵＡＲＴはまた、受信ソフトウェアモデルを含んでもよい。受信ソフトウェアモデルは、特定の信号をアサートすることによって設定されてもよい。例えば、第１のピン信号（例えば、Ｐ２Ｈ／Ｌ）は、データを受信し始める所望のバイトカウントに設定されてもよい。加えて、第２のピン信号（例えば、Ｐ３Ｈ／Ｌ）は、第１のピン信号から始まって、受信するバイトの所望のカウントに設定されてもよい。いくつかの実施形態では、ＵＡＲＴは、ＢＲＥＡＫがライン上に出現することを待ってもよい。それが出現するとき、サンプリングクロックが同期化されてもよい。
【００２７】
いくつかの実施形態では、受信される第１のバイトは、ＳＴＡＲＴコードであり、常にＦＩＦＯにロードされる。受信ウォーターマーク割込信号（例えば、ｉｎｔ＿ｒｘ）は、常に、ウォーターマーク／ＦＩＦＯ設定にかかわらず、ＳＴＡＲＴコードが受信されるときにフラグを付けられる。開始コード後のバイトから始まって、第１のピン信号によって規定されるバイトカウント（アドレス）が、合致される。いったん合致されると、第２のピン信号上の値は、ＦＩＦＯにロードされてもよい。受信ウォーターマーク割込信号（例えば、ｉｎｔ＿ｒｘ）は、ウォーターマークに達する度に割込に設定されてもよい。受信ラインが所定の時間（例えば、１秒）を上回ってアイドル状態である場合、ＤＭＸリンクは、無効と見なされてもよい。ＵＡＲＴが所定の時間をカウントするために十分に大きいタイマを有していない場合に、本所定の時間を計測するために、外部タイマが使用されてもよい。
【００２８】
ＤＡＬＩプロトコル状態マシン
種々の実施形態では、自動プロトコルを用いたＵＡＲＴは、ＤＡＬＩプロトコルを利用してもよい。そのような実施形態では、特定のプロトコルは、ユーザが複数の利用可能なプロトコルモードのうちの１つを選択することを可能にする複数のビットによって、選定されてもよい。例えば、特定の構成が、「ＵＳＥ＿ＰＲＯＴ」信号を論理高に設定することによって、ＤＡＬＩプロトコルを選択してもよい。ＤＡＬＩは、オフィスおよび工場等の大きな建物の中の照明を制御するために使用されるプロトコルである。これは、２つのモード、すなわち、「デバイス」および「ギヤ」から成る。「デバイス」は、コマンドを照明器具に送出するメインコントローラである。照明器具自体が、「ギヤ」として公知である。全ビット伝送は、ハードウェアによって行われる、マンチェスタ符合化で行われてもよい。ＤＡＬＩワイヤは、半二重であり、伝送および受信ラインは、ＡＣ変圧器を通してともに電気的に結び付けられる。
【００２９】
全ての他のプロトコルと異なり、ＤＡＬＩは、最初に最上位ビット（「ＭＳｂ」）を伝送される。ＵＡＲＴトランザクションは、「デバイス」が伝送を開始するときに始まってもよい。デバイス伝送は、ＤＡＬＩ１．０では２つのバイト、ＤＡＬＩ２．０では３つのバイトから成る。最初の１つは、「ＹＡＡＡＡＡＡＳ」によって指定される制御バイトであり、その後に１つまたは２つのデータバイトが続く。デバイスから出てくるこれらのバイトは、「フォワードフレーム」と呼ばれる。図３は、本開示のある実施形態による、特定のデータサイズ（例えば、レジスタＰ１＝２（バイト））に設定されたメモリ部分を伴う例示的１６ビットＤＡＬＩデバイスを図示する。伝送される各バイトは、ＵＳＥ＿ＦＩＦＯ＝０であるときに、割込イベントを生じるであろう。ＵＳＥ＿ＦＩＦＯ＝１であるとき、割込頻度は、ウォーターマーク設定に依存し得る。いくつかの構成では、ＵＳＥ＿ＦＩＦＯ＝０を設定したデバイスで、１つだけの伝送バス（例えば、「ＴＸＢ」）および１つのシフタが利用可能であり得るため、３つのワードを立て続けに書き込むことが可能ではない場合がある。したがって、３つのバイトが伝送されなければならない、ＤＡＬＩ２．０デバイス用のコードを書き込むとき、ソフトウェアは、割込信号（例えば、ｉｎｔ＿ｔｘまたはＴＸＢＥ／ＴＸＢＦ）および割込衝突信号（例えば、ＴＸＭＴＩＦ）を監視しなければならない。伝送バスが利用可能になるとすぐに、シフタが空になる前に、第３のバイトがバスに書き込まれなければならない。これは、３つのバイトが途切れることなく立て続けに伝送されることを確実にするであろう。
【００３０】
ライン上の全てのギヤが、本フォワードフレームを受信してもよい。ギヤのうちの１つは、返信として、「バックフレーム」と呼ばれる単一のバイトでこれに応答してもよい。ＤＡＬＩプロトコルは、本バックフレームが１１ボークロックサイクル内で受信され始めなければならないことを要求する。バックフレームの開始が受信される場合、デバイスは、バックフレームの終了後にさらに１１のクロックサイクルを待つことを要求される。本時間後に、デバイスは、別のフォワードフレームを自由に伝送する。図４は、本開示のある実施形態による、ＤＡＬＩ伝送のための例示的タイミング図を図示する。受信される各バイトは、ＵＳＥ＿ＦＩＦＯ＝０であるときに、割込イベントを生じるであろう。ＵＳＥ＿ＦＩＦＯ＝１である場合、受信割込は、ウォーターマーク設定に従ってフラグを付けられるであろう。
【００３１】
ＤＡＬＩモードであるとき、ＵＡＲＴは、現在のバイトが有効受信と見なされる前に、両方のＳＴＯＰビットが正しく受信されることを確認しなければならない。いずれかのＳＴＯＰビットが正しく受信されない場合、受信バイトは、シフタからＲＸＢに転送する前に破棄される。ＵＡＲＴハードウェアは、ＳＴＯＰビットの要求された数を検出し、その数が検出されない場合に、エラーでユーザに応答するであろう。
【００３２】
ＤＡＬＩデバイスソフトウェアモデル
種々の実施形態では、自動ＤＡＬＩプロトコルを用いたＵＡＲＴは、デバイスソフトウェアモデルを含んでもよい。デバイスソフトウェアモデルは、特定の信号をアサートすることによって設定されてもよい。例えば、ピン信号（例えば、Ｐ１Ｈ／Ｌ）は、フォワードフレームの間のクロックサイクルの所望の数に設定されてもよい。典型的には、本値は、１１またはそれを上回るであろう。次いで、ＵＡＲＴは、ＹＡＡＡＡＡＡＳの直後に、（例えば、Ｘ［７：０］上で）データを伝送してもよい。したがって、伝送が始まることができる前に、両方のバイトが利用可能でなければならない。次いで、ＵＡＲＴは、「ＹＡＡＡＡＡＡＳ」ヘッダの値を伝送バス（例えば、ＴＸＢ［７：０］）の一部に書き込んでもよい。これは、バスへの最初の書き込みであるため、伝送シフタの中へ即時にコピーされてもよく、バス上の１つの場所を解放する。
【００３３】
次いで、ＵＡＲＴは、（例えば、Ｘ［７：０］上で）伝送データから伝送バス上に（例えば、ＴＸＢ［７：０］上に）データバイトの値を書き込んでもよい。２４ビットＤＡＬＩ２．０伝送が所望される場合、伝送シフタが空になる前に、第３のバイトがバスに書き込まれなければならない。バスが空のままである場合、伝送ラインは、高くなり、高いままであってもよい。次いで、ＵＡＲＴは、伝送タイマリセット信号（例えば、ｕａｒｔ＿ｔｉｍｅｒ＿ｒｅｓｅｔ＿ｔｘ出力）をアサートしてもよい。いくつかの実施形態では、外部タイマが、タイムアウトについて監視するために使用されてもよい。タイムアウトした場合、ソフトウェアは、伝送状態マシンを再始動させるために、（例えば、ＴＸＥＮ＝０、次いで、ＴＸＥＮ＝１を設定することによって）伝送イネーブル信号を切り替えなければならない。ソフトウェアはまた、伝送バスをフラッシュすることを選定してもよい。
【００３４】
第１のフレーム後に、ＵＡＲＴは、ピン信号（例えば、Ｐ１Ｈ／Ｌ）上で規定されるフレームの間のクロックの数を待ってもよい。本時間の間に、伝送出力は、高く保持される。ＤＡＬＩに関して、本値は、１１であり、バックフレームを待つためにＵＡＲＴに１１個のクロックを待たせるであろう。次いで、ＵＡＲＴは、伝送バスＦＩＦＯから次のチャネルを伝送してもよい。伝送ウォーターマーク割込信号（例えば、ｉｎｔ＿ｔｘ）は、ウォーターマークに達する度に割込をトリガしてもよい。いくつかの実施形態では、ＵＡＲＴは、各フレームのための伝送を開始する前に、ヘッダ・データバイトペアが存在することを確認してもよい。いくつかの実施形態では、ＵＡＲＴは、マンチェスタタイミングを自動的に生成してもよい。
【００３５】
ＤＡＬＩギヤソフトウェアモデル
種々の実施形態では、自動ＤＡＬＩプロトコルを用いたＵＡＲＴは、ギヤソフトウェアモデルを含んでもよい。ギヤソフトウェアモデルは、特定の信号をアサートすることによって設定されてもよい。例えば、ピン信号（例えば、Ｐ１Ｈ／Ｌ）は、バックフレームを開始するように、フォワードフレームの後にクロックサイクルの所望の最大数に設定されてもよい。典型的には、本値は、１１未満（例えば、２２のハーフビットタイム）でなければならない。ＵＡＲＴがギヤモードに設定されるとき、ＵＡＲＴは、受信されたフォワードフレームをリッスンし始めてもよい。これは、バックフレームが伝送される前に、フォワードフレームが受信されなければならないため、必要とされる。フォワードフレームが受信されるとき、これは、アプリケーションソフトウェアによって処理される。バックフレームの値は、伝送バス（例えば、ＴＸＢ［７：０］）の一部に書き込まれる。
【００３６】
バスの一部が空ではないとき、ＵＡＲＴは、フォワードフレームの後に所望の最大数よりも少ないクロックサイクルが経過したことを確実にしてもよい。本時間が満了する前にバスワードが利用可能にされる場合、これは、バックフレームとして伝送される。それを上回るものが経過した場合、シフタのコンテンツが破棄される。ワードは、バスから伝送シフタの中へ転送されるであろうが、伝送されないであろう。次のバックフレームに関して、新しいバスワードが、ユーザによってバス上に書き込まれなければならない。
【００３７】
第１のフレーム後に、ＵＡＲＴは、別のフォワードフレームを待ってもよい。本時間の間に、伝送出力は、高く保持されてもよい。次いで、ＵＡＲＴは、次のフォワードフレームが受信されるときに、バスＦＩＦＯから次のチャネルを伝送してもよい。伝送ウォーターマーク割込信号（例えば、ｉｎｔ＿ｔｘ）は、ウォーターマークに達する度に割込をトリガしてもよい。
【００３８】
ＬＩＮプロトコル状態マシン
種々の実施形態では、自動プロトコルを用いたＵＡＲＴは、ＬＩＮプロトコルを利用してもよい。そのような実施形態では、特定のプロトコルは、ユーザが複数の利用可能なプロトコルモードのうちの１つを選択することを可能にする複数のビットによって、選定されてもよい。例えば、特定の構成が、「ＵＳＥ＿ＰＲＯＴ」信号を論理高に設定することによって、ＬＩＮプロトコルを選択してもよい。ＬＩＮは、自動車アプリケーションで使用されるプロトコルである。ＬＩＮネットワークは、２種類のソフトウェアプロセス、すなわち、「マスタ」プロセスおよび「スレーブ」プロセスから成る。各ネットワークは、１つのマスタプロセスのみを有し、かつ１つ以上のスレーブプロセスを有する。マスタプロセスは、１つのプロセッサＵＡＲＴ上に常駐する。ネットワーク上の全ての他のＵＡＲＴは、スレーブソフトウェアプロセスによって駆動される。物理層の観点から、１つだけのマスタプロセスが１つのネットワーク上に存在する限り、１つのプロセッサ上のＵＡＲＴマクロが、マスタおよびスレーブプロセスの両方によって駆動されてもよい。
【００３９】
いくつかの実施形態では、ＵＡＲＴは、マスタプロセスがブレイクを伝送することによって伝送を開始するときに始まり、その後にデリミタビットが続き、その後に同期フィールドおよび保護識別（「ＰＩＤ」）バイトが続く。ＰＩＤは、いずれのスレーブプロセスがマスタに応答することを予期されるかを判定する。ＰＩＤバイトの後には、その長さがＵＡＲＴのメモリ部分（例えば、Ｐ３レジスタ）によって設定される、インターバイトスペースがある。インターバイトスペースが満了する前に、スレーブプロセスのうちの１つ以上が、マスタプロセスに応答してもよい。インターバイトスペース内で何も応答しない場合、マスタは、別の伝送を自由に開始する。
【００４０】
スレーブソフトウェアプロセスは、マスタと同一のＵＡＲＴを駆動してもよい、または完全に別のＵＡＲＴもしくは別のプロセッサデバイス上に常駐してもよい。スレーブプロセスは、マスタフレームを待つことによって開始する。ＰＩＤが合致する場合、スレーブプロセスは、何もしないことによって、または要求された応答を伝送することによってのいずれかで、応答する。いくつかの実施形態では、最大８つのバイトが、スレーブによって伝送されてもよい。これらのバイトの終了時に、スレーブＵＡＲＴは、伝送されたワードのチェックサムを自動的に計算し、これらのバイトの終了時に（例えば、第９のデータバイトにおいて）それをデータバイトとして伝送し、ＬＩＮトランザクションを完了する。チェックサムは、一度に付加的ビット（例えば、８つのビット）を加算し、キャリービットを結果に加算することによって計算されてもよい。次いで、本チェックサムは、伝送データとともに伝送されてもよい。
【００４１】
データが受信ＵＡＲＴによって受信されるとき、チェックサムが、同一のアルゴリズムを使用して計算される。伝送機によって計算されるチェックサム値である、次のバイト（例えば、第９のバイト）は、逆転させられ、ローカルで計算されたチェックサムに加算される。例えば、結果が全て「１」である場合には、チェックサムがパスしている。以下の表１は、ＬＩＮ２．２Ａ仕様からとられた実施例を図示する。表１は、０ｘ４Ａ、０ｘ５５、０ｘ９３、０ｘＥ５である、計算に関与する４つのデータバイトの例示的値を使用する。
【表１】
2018524859.tif 000003
【００４２】
いくつかの実施形態では、２種類のチェックサム、すなわち、レガシーおよび強化が利用可能であり得る。レガシーチェックサムでは、データバイトＤ０からＤ７のみが、チェックサムを計算するために使用される。強化チェックサムでは、データＤ０からＤ７およびＰＩＤが含まれる。いずれのチェックサムが計算で使用されるかは、特定のビット（例えば、Ｃ０ＥＮビット）を使用して、ソフトウェアによって制御されることができる。
【００４３】
ＬＩＮ伝送ソフトウェアモデル
種々の実施形態では、自動ＬＩＮプロトコルを用いたＵＡＲＴは、伝送ソフトウェアモデルを含んでもよい。伝送ソフトウェアモデルは、特定の信号をアサートすることによって設定されてもよい。例えば、ピン信号（例えば、Ｐ２Ｈ／Ｌ）は、伝送する所望のバイト数に設定されてもよい。いくつかの実施形態では、マスタ／スレーブＬＩＮモードでは、マスタプロセスは、ＰＩＤが伝送されるための値を（例えば、Ｐ１Ｌ［５：０］上で）ロードしてもよい。スレーブプロセスは、伝送バスＦＩＦＯの中へ伝送される最大８つのバイトを書き込んでもよい。いくつかの実施形態では、スレーブ専用モードでは、ＰＩＤ伝送が必要とされないため、値が無視されてもよい。
【００４４】
いくつかの実施形態では、マスタスレーブモードでは、ＰＩＤ値を書き込むことが、伝送プロセスを開始してもよい。伝送プロセスは、ブレイクを含んでもよく、その後にＳＹＮＣバイトが続き、その後に（例えば、Ｐ１Ｌ［５：０］からの）ロードされた値のコンテンツが続く。コンテンツの直後に、ＰＩＤ値が、ハードウェアによって計算され、伝送されてもよい。この後に、ＵＡＲＴは、伝送バス占有率をチェックしてもよい。バスが空ではない場合、これは、スレーブプロセスが、バイトを伝送することを所望するＵＡＲＴ上に常駐することを意味する。バスの中のバイトは、ピン信号（例えば、Ｐ２Ｈ）上に記憶された伝送バイトの数まで伝送される。バスが空である場合、伝送出力（例えば、ＴＸＳ）は、どちらが最初であっても、バスが書き込まれるまで、またはロードされた値のコンテンツが書き込まれるまでのいずれかで、高く保持されてもよい。ロードされた値（例えば、Ｐ１Ｌ）が書き込まれる場合、マスタが新しいフレームを開始しており、チェックサム／パリティエンジンがリセットされ、ＢＲＥＡＫ−ＳＹＮＣ伝送プロセス全体が再び開始することが仮定される。
【００４５】
いくつかの実施形態では、スレーブ専用モードでは、ＳＹＮＣを受信することは、バイトを伝送するようにＵＡＲＴを「アーム」する。バスを書き込むことは、伝送プロセスを開始する。ＳＹＮＣが受信される前に伝送バスが書き込まれる場合、伝送は、ＳＹＮＣが完了するまで阻止される。利用可能である場合、次のバイトは、バスが空になる場合に非アクティブ出力を用いて、伝送バス（例えば、ＴＸＢ［７：０］）ＦＩＦＯから伝送される。これは、ＵＡＲＴがピン信号（例えば、Ｐ２Ｈ／Ｌ）からバイト数を伝送するまで繰り返される。いくつかの実施形態では、伝送ウォーターマーク割込信号（例えば、ｉｎｔ＿ｔｘ）は、ウォーターマークに達する度に割込をトリガしてもよい。ピン信号（例えば、Ｐ２Ｈ／Ｌデータワード）からのバイト数の終了時に、ＵＡＲＴは、チェックサムビット（例えば、チェックサム０（ビットＣ０ＥＮ＝１）またはチェックサム１（ビットＣ０ＥＮ＝１）のいずれか）を計算して伝送してもよい。いくつかの実施形態では、マスタ／スレーブモードでは、新しい伝送を開始するために、最後のデータが伝送された後に、ロードされた値（例えば、Ｐ１Ｌ）のコンテンツが書き込まれなければならない。ロードされた値（例えば、Ｐ１Ｌ）を書き込むことが新しいパケットをトリガするため、スレーブ伝送の途中にロードされた値を書き込むことは、無視されるであろう。
【００４６】
２．１４．２  ＬＩＮ受信（スレーブ専用）専用ソフトウェアモデル
種々の実施形態では、自動ＬＩＮプロトコルを用いたＵＡＲＴは、あるスレーブ専用モードのための受信ソフトウェアモデルを含んでもよい。伝送ソフトウェアモデルは、特定の信号をアサートすることによって設定されてもよい。例えば、ピン信号（例えば、Ｐ３Ｈ／Ｌ）は、受信する所望のバイト数に設定されてもよい。いくつかの実施形態では、ＵＡＲＴは、ＢＲＥＡＫがライン上に出現することを待ってもよい。それが出現するとき、サンプリングクロックが、同期フレームと同期化される。受信割込衝突信号（例えば、ＲＸＢＩＦ）が、フラグを付けられ、チェックサムおよびパリティ計算機が、リセットされる。いくつかの実施形態では、受信される第１のバイトは、ＰＩＤである。受信割込（例えば、ｉｎｔ＿ｒｘ）は、常に、ウォーターマーク／ＦＩＦＯ設定にかかわらず、ＰＩＤが受信されるときにフラグを付けられる。ＵＡＲＴは、自動的に他の値（例えば、Ｐ０およびＰ１）を計算して検証してもよい。それらが一致しない場合、衝突割込信号（例えば、ＰＥＲＩＦ）が、フラグを付けられてもよい。ピン信号（例えば、Ｐ３Ｈ／Ｌ）からのバイト数が受信されるまで、入力バイトが受信される。
【００４７】
いくつかの実施形態では、あるビット（例えば、Ｃ０ＥＮ）は、パケット内の最後のバイトのスタートビットが受信される前に、正しい値に設定されなければならない。受信ウォーターマーク割込信号（例えば、ｉｎｔ＿ｒｘ）は、ウォーターマークに達する度に割込をトリガするであろう。（例えば、Ｐ３Ｈ／Ｌからの）所望のデータバイト数が受信されるとき、ＵＡＲＴは、自動的にチェックサム（例えば、チェックサム０または１）を計算し、全て１を得るように、受信されたチェックサムと排他論理和（ＸＯＲ）をとってもよい。ローカルで計算されたチェックサムは、メモリ部分（例えば、ＵｘＲＸＣＨＫレジスタ）の中に記憶されてもよい。受信入力から受信されるチェックサムは、それがデータであった場合のように受信バスの中に記憶されてもよい。
【００４８】
図５は、本開示のある実施形態による、ＬＩＮマスタ／スレーブモードの例示的タイミング図を図示する。図６は、本開示のある実施形態による、ＬＩＮマスタ／スレーブモードの継続的な例示的タイミング図を図示する。図７は、本開示のある実施形態による、ＬＩＮスレーブ専用モードの例示的タイミング図を図示する。図８は、本開示のある実施形態による、ＬＩＮスレーブ専用モードの継続的な例示的タイミング図を図示する。
【００４９】
非同期アドレス検出モード
いくつかの実施形態では、ＵＡＲＴは、非同期アドレス検出モードで動作してもよい。非同期アドレス検出モードは、１つのバスに接続された複数の受信機がある、モードに使用されてもよい。伝送機が本バス上で伝送するとき、全受信機が、それがアドレス指定されているかどうかを把握することが有用である。これは、各受信ＵＡＲＴがそのＣＰＵへの不必要な割込を排除することを可能にする。
【００５０】
いくつかの実施形態では、各トランザクションは、それに先行するＢＲＥＡＫを伴って、または伴わずに、スタートビットを伝送する伝送機から始まる。本スタートビットの後には、データワードが続く。データがゼロに設定された第９のビットを有する場合、全てのＵＡＲＴが、これをデータであると知覚するであろう。伝送機が１に設定された第９のビットとともにバイトを伝送するとき、全ての受信ＵＡＲＴが、これをアドレスであると知覚する。次いで、それらは、第２のメモリ部分（例えば、レジスタＰ３）内のマスクと論理積されたメモリ部分（例えば、Ｐ２）の中へプログラムされるアドレスとそれを合致させようとしてもよい。合致がある場合には、データは、受信バッファの中へ時間記録されるであろう。伝送および受信される各バイトは、ＵＳＥ＿ＦＩＦＯ＝０であるときに、割込イベントを生じるであろう。ＵＳＥ＿ＦＩＦＯ＝１であるとき、割込頻度は、ウォーターマーク設定に依存する。
【００５１】
アドレス検出ＴＸソフトウェアモデル
種々の実施形態では、ＵＡＲＴは、アドレス検出伝送ソフトウェアモデルを含んでもよい。いくつかの実施形態では、本モデルは、ＭＯＤＥ信号を設定することによって設定されてもよい。例えば、ＭＯＤＥは、アドレス検出を用いた非同期９ビットモード（「０１０１」）を選定するように設定されてもよい。いくつかの実施形態では、ＵＡＲＴは、ＢＲＥＡＫ伝送を引き起こしてもよい。例えば、ＵＡＲＴは、論理１をＳＥＮＤＢビットに書き込んでもよい。ＳＥＮＤＢの直後にメモリ部分（例えば、Ｐ１レジスタ）に書き込むことが、ＢＲＥＡＫを伝送させるであろう。いったんＢＲＥＡＫ伝送が完了すると、ＳＥＮＤＢビットは、自動消去されてもよい。この後には、メモリ部分（例えば、Ｐ１）の８ビット値が伝送されてもよい。第９のビットが、１として自動的に伝送されてもよい。これは、アドレス伝送である。ＳＥＮＤＢの直後に伝送バスレジスタに書き込むことが、ＢＲＥＡＫを伝送させるであろう。いったんＢＲＥＡＫ伝送が完了すると、ＳＥＮＤＢビットは、自動消去されるであろう。この後には、伝送バス値の８ビット値が伝送されるとともに、第９のビットがゼロとして自動的に伝送される。これは、データ伝送である。ＢＲＥＡＫの直後に何を伝送するかという決定は、メモリ部分（例えば、Ｐ１レジスタ）が書き込まれるかどうかに依存する。メモリ部分（例えば、Ｐ１）および伝送バスが両方とも書き込まれる場合、メモリ部分（例えば、Ｐ１）のコンテンツが後に続く、ＢＲＥＡＫが伝送され、その後に伝送バスの任意のコンテンツが続く。
【００５２】
ＢＲＥＡＫ伝送が所望されない場合、ＳＥＮＤＢビットは、無視される、またはゼロに書き込まれることができる。メモリ部分（例えば、Ｐ１レジスタ）に書き込むことが、１として自動的に伝送される第９のビットとともに、メモリ部分（例えば、Ｐ１）のコンテンツの８ビット値を伝送させてもよい。これは、アドレス伝送である。伝送バスレジスタに書き込むことが、０として自動的に伝送される第９のビットとともに、伝送バスの８ビット値を伝送させるであろう。これは、データ伝送である。最初に何を伝送するかという決定は、メモリ部分（例えば、Ｐ１レジスタ）が書き込まれるかどうかに依存する。メモリ部分（例えば、Ｐ１）および伝送バスが両方とも書き込まれる場合、メモリ部分（例えば、Ｐ１）のコンテンツが伝送され、その後に伝送バスの任意のコンテンツが続く。
【００５３】
アドレス検出ＲＸソフトウェア
種々の実施形態では、ＵＡＲＴは、アドレス検出受信ソフトウェアモデルを含んでもよい。いくつかの実施形態では、本モデルは、ＭＯＤＥ信号を設定することによって設定されてもよい。例えば、ＭＯＤＥは、アドレス検出を用いた非同期９ビットモード（「０１０１」）を選定するように設定されてもよい。いくつかの実施形態では、ＵＡＲＴは、合致するアドレスを伴って第１のメモリ部分（例えば、Ｐ２）を設定してもよい。いくつかの実施形態では、第２のメモリ部分（例えば、Ｐ３）は、アドレスマスクとして設定されてもよい。全てのアドレスを受信するために、例えば、「００００  ００００」をＰ３に書き込む。（受信アドレスＸＯＲ  Ｐ２）論理積（ＡＮＤ）Ｐ３＝００００  ００００は、「アドレス合致」を意味する。
【００５４】
アドレス合致が起こるとき、未加工受信アドレスが、受信ＦＩＦＯにロードされる。次いで、後に続く任意のデータ（ゼロに設定された第９のビットを伴う８ビットバイト）が、受信ＦＩＦＯにロードされる。本プロセスは、第１のメモリ部分（例えば、Ｐ２）のコンテンツと合致しない別のアドレス（例えば、１に設定された第９のビットを伴う８ビットバイト）が受信されるまで継続する。
【００５５】
非同期マンチェスタモード
種々の実施形態では、自動プロトコルを用いたＵＡＲＴは、非同期マンチェスタプロトコルを利用してもよい。そのような実施形態では、特定のプロトコルは、ユーザが複数の利用可能なプロトコルモードのうちの１つを選択することを可能にする複数のビットによって、選定されてもよい。例えば、特定の構成が、「ＵＳＥ＿ＰＲＯＴ」信号を論理高に設定することによって、マンチェスタプロトコルを選択してもよい。本モードは、全てのビットがハードウェアによってマンチェスタ符号化されることを除いて、一般的ＵＡＲＴ接続モードである。ＤＡＬＩモードで使用される同一のハードウェアが、ここで再利用されてもよい。
【００５６】
いくつかの実施形態では、ユーザは、伝送方向に伝送ワードを伝送バス（例えば、ＴＸＢ＜７：０＞）に書き込んでもよい。次いで、バスのコンテンツが後に続く、低から高のスタートビットが伝送されてもよい。受信方向に、各ワードが受信されると、受信バス（例えば、ＲＸＢ＜７：０＞）にロードされ、入力マンチェスタから復号される。伝送および受信される各バイトは、ＵＳＥ＿ＦＩＦＯ＝０であるときに、割込イベントを生じるであろう。ＵＳＥ＿ＦＩＦＯ＝１であるとき、割込頻度は、ウォーターマーク設定に依存する。
【００５７】
図９は、本開示のある実施形態による、伝送のための例示的マンチェスタ復号方式を図示する。図１０は、本開示のある実施形態による、受信のための例示的マンチェスタ復号方式を図示する。図１１は、本開示のある実施形態による、受信のための継続的な例示的マンチェスタ復号方式を図示する。図１２は、本開示のある実施形態による、受信のためのさらに継続的な例示的マンチェスタ復号方式を図示する。図１３は、本開示のある実施形態による、受信のためのなおもさらなる例示的マンチェスタ復号方式を図示する。いくつかの実施形態では、受信データのクロックレートは、伝送データのものと異なり得る。したがって、ＢＲＧから出てくるクロックをカウントするために別個のレジスタを維持することが必要であり得る。これらのタイミング図では、本レジスタは、ＢＲＧ−ＲＸと呼ばれてもよい。これは、内部レジスタであり、ＳＦＲ空間で読み出す、または書き込むために利用可能ではない。
【００５８】
いくつかの実施形態では、ＵＡＲＴは、ハードウェアを使用して、マンチェッスタ符号化を復号することができる。ソフトウェアは、マンチェスタ復号方式の高から低の遷移をハンドリングするために起動される必要はない。むしろ、ＵＡＲＴは、単純に、回収されたデータビットを受信する。これは、バイトの間にブレイクを必要とすることなく、無限（連続）数のバイトのマンチェスタ伝送を可能にする。
【００５９】
ＴＸソフトウェアモデル
種々の実施形態では、自動プロトコルを用いたＵＡＲＴは、伝送ソフトウェアモデルを利用してもよい。そのような実施形態では、モデルは、ＵＡＲＴが伝送されるワードを伝送バスに書き込むことから始まってもよい。これは、低から高の遷移である、ＳＴＡＲＴを出力させてもよく、その後に１バイトのデータが続く。シフタが空になる前に、伝送ワードが伝送バスに書き込まれる限り、その間にＳＴＡＲＴビットを伴わずに、ビットが立て続けに伝送される。これは、無限数のバイトがＳＴＡＲＴビットの後に立て続けに伝送されることを可能にする。シフタが空になるときに、伝送ラインが非アクティブになる。次いで、新しいワードが、伝送バスが空になった後にそれに書き込まれるとき、ＵＡＲＴは、新しいＳＴＡＲＴビットを伝送し、その後に伝送バスワードが続き、サイクルを繰り返すであろう。
【００６０】
ＲＸソフトウェアモデル
種々の実施形態では、自動プロトコルを用いたＵＡＲＴは、受信ソフトウェアモデルを利用してもよい。そのような実施形態では、モデルは、非アクティブ（１）から始まってもよく、その後にマンチェスタ「１」が続く（低から高）。マンチェスタハーフビットタイムが、最初の低遷移から導出される。受信される任意のデータが、マンチェスタから復号され、受信ＦＩＦＯにロードされる。
【図１】
2018524859.tif 000004
【図２】
2018524859.tif 000005
【図２Ａ】
2018524859.tif 000006
【図２Ｂ】
2018524859.tif 000007
【図３】
2018524859.tif 000008
【図３Ａ】
2018524859.tif 000009
【図３Ｂ】
2018524859.tif 000010
【図４】
2018524859.tif 000011
【図５】
2018524859.tif 000012
【図６】
2018524859.tif 000013
【図７】
2018524859.tif 000014
【図８】
2018524859.tif 000015
【図９】
2018524859.tif 000016
【図１０】
2018524859.tif 000017
【図１１】
2018524859.tif 000018
【図１２】
2018524859.tif 000019
【図１３】
2018524859.tif 000020
【国際調査報告】
2018524859.tif 000021
2018524859.tif 000022