(57)【要約】  本開示はシリアル通信装置を提供する。この装置は、マスタマシンの高性能バスに通信可能に結合される第１のインタフェースモジュールと、スレーブマシンのデータインタフェースに通信可能に結合される第２のインタフェースモジュールと、制御モジュールと、トランシービングイネーブルモジュールと、シフトレジスタモジュールと、割り込み生成モジュールとを含む。シフトレジスタモジュールは、マスタマシンによって送信された書き込むためのデータを第１のインタフェースモジュール経由で取得し、シフトイネーブル信号が有効な場合は書き込むためのデータをシリアルにシフトアウトし、シフトアウトされたシリアルデータは、第２のインタフェースモジュール経由でスレーブマシンに送信される。シフトレジスタモジュールは、スレーブマシンによってアップロードされたシリアルデータを第２のインタフェースモジュール経由で取得し、シフトイネーブル信号が有効な場合はシリアルデータをシリアルにシフトインし、シフトインされたシリアルデータに従って読み取るためのデータを獲得し、読み取るためのデータは、第１のインタフェースモジュール経由でマスタマシンにアップロードされる。本開示は、マスタマシンのシリアル通信中に消費される資源を節約することができる。
2021507363.tif 000002
【特許請求の範囲】
【請求項１】
マスタマシンとスレーブマシンとの間のデータ伝送を実施するように構成されるシリアル通信装置であって、
前記マスタマシンの高性能バスに通信可能に結合される第１のインタフェースモジュールと、
前記スレーブマシンのデータインタフェースに通信可能に結合される第２のインタフェースモジュールと、
前記マスタマシンによって送信される制御情報を前記第１のインタフェースモジュール経由で取得するように、及び前記制御情報に基づいて１組の制御信号を出力するように構成される制御モジュールと、
前記１組の制御信号のうちの１つ又は複数の制御信号に従ってシフトイネーブル信号を生成するように構成されるトランシービングイネーブルモジュールと、
前記マスタマシンによって送信されるデータを前記第１のインタフェースモジュール経由で取得し、前記シフトイネーブル信号が有効な場合は前記データをシリアルにシフトアウトし、前記シリアルにシフトアウトされたデータを前記第２のインタフェースモジュール経由で前記スレーブマシンに送信するように、及び
前記スレーブマシンによってアップロードされるシリアルデータを前記第２のインタフェースモジュール経由で取得し、前記シフトイネーブル信号が有効な場合は前記シリアルデータをシリアルにシフトインし、前記シリアルにシフトインされたデータに従ってデータを獲得し、前記獲得したデータを前記第１のインタフェースモジュール経由で前記マスタマシンにアップロードする
ように構成されるシフトレジスタモジュールと、
前記１組の制御信号のうちの１つ又は複数の制御信号、前記シフトイネーブル信号、及び前記シリアルにシフトインされたデータに従って割り込み要求信号を生成するように構成される割り込み生成モジュールであって、前記割り込み要求信号は前記制御情報を再送するように前記マスタマシンに通知する、割り込み生成モジュールと
を含む、シリアル通信装置。
【請求項２】
前記１組の制御信号が、伝送イネーブル信号、伝送方向信号、ボーレート信号、伝送長信号、モニタリングイネーブル信号、及びモニタリングタイプ信号を含む、請求項１に記載のシリアル通信装置。
【請求項３】
前記トランシービングイネーブルモジュールが、前記伝送イネーブル信号及び前記ボーレート信号に従って前記シフトイネーブル信号を生成する、請求項２に記載のシリアル通信装置。
【請求項４】
前記シフトレジスタモジュールが、直列接続された複数のシフトサブモジュールを含み、前記複数のシフトサブモジュールは、最初のシフトサブモジュール、最後のシフトサブモジュール、及び前記最初のシフトサブモジュールと前記最後のシフトサブモジュールとの間に配置される１つ又は複数の任意の中間シフトサブモジュールを含む、請求項２及び３の何れか一項に記載のシリアル通信装置。
【請求項５】
前記最初のシフトサブモジュールが、前記シリアルにシフトインされたデータを入力として受信するように構成され、
前記最後のシフトサブモジュールが、前記シリアルにシフトアウトされたデータを出力するように構成される、
請求項４に記載のシリアル通信装置。
【請求項６】
前記複数のシフトサブモジュールの各シフトサブモジュールが、第１の制御への入力として前記シフトイネーブル信号を受信するように、第２の制御への入力として書き込みイネーブル信号を受信するように、書き込まれる１ビットのデータを入力として受信するように、及び読み取られるデータの１ビットデータを出力するように構成される、請求項４及び５の何れか一項に記載のシリアル通信装置。
【請求項７】
前記複数のシフトサブモジュールの各シフトサブモジュールが、
第１の入力端子、第２の入力端子、制御端子、及び出力端子を有する第１のマルチプレクサと、
第１の入力端子、前記第１のマルチプレクサの前記出力端子に接続される第２の入力端子、制御端子、及び出力端子を有する第２のマルチプレクサと、
前記第２のマルチプレクサの前記出力端子に接続される入力端子、及び前記第１のマルチプレクサの前記第１の入力端子に接続される出力端子を有するＤフリップフロップと
を含む、請求項５及び６の何れか一項に記載のシリアル通信装置。
【請求項８】
シフトサブモジュールの前記第１のマルチプレクサの前記第１の入力端子は、前記シフトサブモジュールの第１の入力端子に接続され、
前記第１のマルチプレクサの前記制御端子は、前記シフトサブモジュールの前記第１の制御端子に接続され、
前記第２のマルチプレクサの前記第２の入力端子は、前記シフトサブモジュールの第２の入力端子に接続され、
前記第２のマルチプレクサの前記制御端子は、前記シフトサブモジュールの前記第２の制御端子に接続され、
前記Ｄフリップフロップの前記出力端子は、前記シフトサブモジュールの出力端子に接続される、
請求項７に記載のシリアル通信装置。
【請求項９】
前記割り込み生成モジュールが、前記伝送イネーブル信号、前記シフトイネーブル信号、及び前記伝送長信号に従って伝送割り込み要求信号を生成するように構成される、請求項２乃至８の何れか一項に記載のシリアル通信装置。
【請求項１０】
前記割り込み生成モジュールは、前記シリアルにシフトインされたデータ又は前記シリアルにシフトアウトされたデータのビット数が、前記伝送長信号による設定された伝送長に達するとき、前記伝送割り込み要求信号を生成するように構成される、請求項９に記載のシリアル通信装置。
【請求項１１】
前記割り込み生成モジュールが、前記モニタリングイネーブル信号、前記モニタリングタイプ信号、及び前記シリアルにシフトインされたデータに従ってモニタリング割り込み要求信号を生成するように構成される、請求項９及び１０の何れか一項に記載のシリアル通信装置。
【請求項１２】
前記割り込み生成モジュールは、前記シリアルにシフトインされたデータ又は前記シリアルにシフトアウトされたデータが、１組の変化エッジを満たすとき、前記モニタリング割り込み要求信号を生成するように構成される、請求項１１に記載のシリアル通信装置。
【請求項１３】
前記割り込み生成モジュールは、前記伝送割り込み要求信号及び前記モニタリング割り込み要求信号に対してＯＲ演算を完了することによって、前記割り込み要求信号を生成するように構成される、請求項１１及び１２の何れか一項に記載のシリアル通信装置。
【請求項１４】
前記第２のインタフェースモジュールは、入力ユニット及び出力ユニットを含み、
前記入力ユニットは、カスケードにした２つのＤフリップフロップを含み、前記シリアルデータを入力として受信するように及び前記シリアルにシフトインされたデータを出力するように構成され、
前記出力ユニットは、マルチプレクサ及びＤフリップフロップを含み、前記マルチプレクサの前記第１の入力端子は、前記シリアルにシフトアウトされたデータを入力し、前記マルチプレクサの前記制御端子は、前記シフトイネーブル信号を入力し、前記マルチプレクサの前記出力端子は、前記Ｄフリップフロップの前記入力端子に接続され、前記Ｄフリップフロップの前記出力端子は、前記マルチプレクサの前記第２の入力端子に接続され、前記Ｄフリップフロップの前記出力端子は、前記スレーブマシンに送信されるシリアルデータを出力する、
請求項２乃至１３の何れか一項に記載のシリアル通信装置。
【請求項１５】
前記第２のインタフェースモジュールが、出力イネーブル信号を伝送するように構成される出力イネーブル信号線を更に含み、前記出力イネーブル信号は前記伝送方向信号に従って得られる、請求項２乃至１４の何れか一項に記載のシリアル通信装置。
【請求項１６】
前記高性能バスが高性能周辺バス（ＡＰＢ）である、請求項１乃至１５の何れか一項に記載のシリアル通信装置。
【請求項１７】
マスタマシンとスレーブマシンとの間のデータ伝送を実施する方法であって、
高性能バスに結合されるマスタマシンによって送信される制御情報を第１のインタフェースモジュール経由で取得すること、
前記制御情報に基づいて１組の制御信号を出力すること、
前記１組の制御信号のうちの１つ又は複数の制御信号に従ってシフトイネーブル信号を生成すること、
前記マスタマシンによって送信されるデータを前記第１のインタフェースモジュール経由で取得すること、
前記シフトイネーブル信号が有効であることに応答して前記データをシリアルにシフトアウトすること、
前記シリアルにシフトアウトされたデータを第２のインタフェースモジュール経由でスレーブマシンに送信すること、
前記スレーブマシンによってアップロードされたシリアルデータを前記第２のインタフェースモジュール経由で取得すること、
前記シフトイネーブル信号が有効であることに応答して前記シリアルデータをシリアルにシフトインすること、
前記シリアルにシフトインされたデータに従ってデータを獲得すること、
前記獲得したデータを前記第１のインタフェースモジュール経由で前記マスタマシンにアップロードすること、及び
前記１組の制御信号のうちの１つ又は複数の制御信号、前記シフトイネーブル信号、及び前記シリアルにシフトインされたデータに従って割り込み要求信号を生成することであって、前記割り込み要求信号は、前記制御情報を再送するように前記マスタマシンに通知する、生成すること
を含む、方法。
【請求項１８】
前記１組の制御信号が、伝送イネーブル信号、伝送方向信号、ボーレート信号、伝送長信号、モニタリングイネーブル信号、及びモニタリングタイプ信号を含む、請求項１７に記載の方法。
【請求項１９】
前記１組の制御信号のうちの１つ又は複数の制御信号に従って前記シフトイネーブル信号を生成することが、前記伝送イネーブル信号及び前記ボーレート信号に従って前記シフトイネーブル信号を生成することを更に含む、請求項１８に記載の方法。
【請求項２０】
前記データをシリアルにシフトアウトすること及び前記シリアルデータをシリアルにシフトインすることが、直列接続された複数のシフトサブモジュールを使用することを伴い、前記複数のシフトサブモジュールは、最初のシフトサブモジュール、最後のシフトサブモジュール、及び前記最初のシフトサブモジュールと前記最後のシフトサブモジュールとの間に配置される１つ又は複数の中間シフトサブモジュールを含む、請求項１８及び１９の何れか一項に記載の方法。
【請求項２１】
前記最初のサブモジュールにおいて前記シリアルにシフトインされたデータを入力として受信すること、及び
前記最後のシフトサブモジュールにおいて前記シリアルにシフトアウトされたデータを出力すること
を更に含む、請求項２０に記載の方法。
【請求項２２】
割り込み要求信号を生成することが、前記伝送イネーブル信号、前記シフトイネーブル信号、及び前記伝送長信号に従って伝送割り込み要求信号を生成することを更に含む、請求項１８乃至２１の何れか一項に記載の方法。
【請求項２３】
割り込み要求信号を生成することが、前記シリアルにシフトインされたデータ又は前記シリアルにシフトアウトされたデータのビット数が、前記伝送長信号による設定された伝送長に達することに応答して、前記伝送割り込み要求信号を生成することを更に含む、請求項２２に記載の方法。
【請求項２４】
割り込み要求信号を生成することが、前記モニタリングイネーブル信号、前記モニタリングタイプ信号、及び前記シリアルにシフトインされたデータに従ってモニタリング割り込み要求信号を生成することを更に含む、請求項２２及び２３の何れか一項に記載の方法。
【請求項２５】
割り込み要求信号を生成することが、前記シリアルにシフトインされたデータ又は前記シリアルにシフトアウトされたデータが１組の変化エッジを満たすとき、前記モニタリング割り込み要求信号を生成することを更に含む、請求項２４に記載の方法。
【請求項２６】
割り込み要求信号を生成することが、前記伝送割り込み要求信号及び前記モニタリング割り込み要求信号に対してＯＲ演算を完了することによって、前記割り込み要求信号を生成することを更に含む、請求項２４及び２５の何れか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
［1］  本開示は、参照によりその全体を本明細書に援用する、２０１７年１２月２１日に出願された中国特許出願第２０１７１１３９５７６１．１号の優先権の利益を主張する。
【背景技術】
【０００２】
背景
［2］  シリアル通信は、コンピュータ周辺機器及び工業制御等の例において広く使用され広範に適用されている通信方式である。シリアル通信中、周辺装置のシリアルデータ入力を受信し、コンピュータ内で必要とされるパラレルデータに変換することができ、又はコンピュータ内のパラレルデータをシリアルデータに変換し、周辺装置に送信することができる。シリアル通信を使用することは、データ伝送速度の要件が低い装置のためのコスト効率の良い設計スキームである。
【発明の概要】
【課題を解決するための手段】
【０００３】
開示の概要
［3］  本開示はシリアル通信装置を提供する。マスタマシンは、シリアル通信装置経由でスレーブマシンと通信するとき大量の資源を消費する必要がない。
【０００４】
［4］  本開示は、マスタマシンの高性能バスに接続される第１のインタフェースモジュールと、スレーブマシンのデータインタフェースに接続される第２のインタフェースモジュールと、第１のインタフェースモジュール経由で制御情報を取得するように構成される制御モジュールと、制御信号に従ってシフトイネーブル信号を生成するように構成されるトランシービングイネーブルモジュールと、第１のインタフェースモジュール経由で書き込むためのデータを取得するように構成されるシフトレジスタモジュールと、割り込み要求信号を生成するように構成される割り込み生成モジュールとを含む、マスタマシンとスレーブマシンとの間のデータ伝送を実施するように構成されるシリアル通信装置を提供する。
【図面の簡単な説明】
【０００５】
図面の簡単な説明
【図１】［5］本開示のいくつかの実施形態による、例示的なシリアル通信装置の概略図である。
【図２】［6］本開示のいくつかの実施形態による、高性能バスによってデータを書き込む例示的なタイミング図である。
【図３】［7］本開示のいくつかの実施形態による、高性能バスによってデータを読み取る例示的なタイミング図である。
【図４】［8］本開示のいくつかの実施形態による、制御モジュールの例示的な回路構造の概略図である。
【図５】［9］本開示のいくつかの実施形態による、トランシービングイネーブルモジュールの例示的な回路の概略図である。
【図６】［10］本開示のいくつかの実施形態による、シフトレジスタモジュールの例示的な回路の概略図である。
【図７】［11］本開示のいくつかの実施形態による、割り込み生成モジュールの例示的な回路の概略図である。
【図８】［12］本開示のいくつかの実施形態による、入出力インタフェースモジュールの例示的な回路の概略図である。
【図９】［13］本開示のいくつかの実施形態による、例示的なマスタマシンがシリアル通信装置を介したデータのシリアル送信を実施することを示す流れ図である。
【図１０】［14］本開示のいくつかの実施形態による、例示的なマスタマシンがシリアル通信装置を介したデータのシリアル受信を実施することを示す流れ図である。
【発明を実施するための形態】
【０００６】
詳細な説明
［15］  本開示の実施形態の目的、技術的解決策、及び利点をより明確にするために、本開示の実施形態における技術的解決策を本開示の実施形態の中で添付図面を参照して以下で説明する。記載する実施形態は本開示の全ての実施形態ではなく一部に過ぎないことは明らかである。本開示における実施形態に基づき、創造的な取り組みなしに当業者によって得られる他の全ての実施形態が本開示の保護範囲に全て含まれるものとする。
【０００７】
［16］  従来のシステムでは、マスタマシンがバスによって汎用入出力（ＧＰＩＯ）内にレベルを書き込み、又はＧＰＩＯのレベルを読み取り、それによりシリアル通信を実施することができる。これらの従来のシステムでは、マスタマシンが割り込みを送信／受信することによってＧＰＩＯ経由でシリアル通信を実施する必要がある。シリアル通信装置はマスタマシンに対する割り込み要求を頻繁に開始する場合があり、マスタマシンは割り込み要求に応答してシリアルデータをビット単位で頻繁に書き込み又は読み取る。このプロセスでは大量のマスタマシンの資源を消費する必要がある。
【０００８】
［17］  本開示の実施形態は、頻繁な割り込みなしにシリアルデータを受信又は送信し、従ってマスタマシンのシリアル通信中に消費される資源を節約することができる。本開示のいくつかの実施形態は、マスタマシンとスレーブマシンとの間のデータ伝送を実施するように構成されるシリアル通信装置を提供する。図１は、いくつかの実施形態によるシリアル通信装置の概略図である。図１に示すように、この装置は、高性能周辺バス（ＡＰＢ）インタフェースモジュール１と、入出力インタフェースモジュール２と、制御モジュール３と、トランシービングイネーブルモジュール４と、シフトレジスタモジュール５と、割り込み生成モジュール６とを含む。
【０００９】
［18］  ＡＰＢインタフェースモジュール１は、マスタマシンのＡＰＢに接続され、ＡＰＢマスタマシンと通信する役割を担う。
【００１０】
［19］  入出力インタフェースモジュール２は、スレーブマシンのデータインタフェースに接続され、スレーブマシンと通信する役割を担う。
【００１１】
［20］  制御モジュール３は、マスタマシンによって送信される制御情報をＡＰＢインタフェースモジュール１経由で取得し、制御信号を出力する。
【００１２】
［21］  トランシービングイネーブルモジュール４は、制御信号に従ってシフトイネーブル信号を生成する。
【００１３】
［22］  シフトレジスタモジュール５は、書き込まれるデータ（以下「書き込みデータ」と呼ぶ）及び書き込みイネーブル信号をマスタマシンからＡＰＢインタフェースモジュール１経由で取得する。更にシフトレジスタモジュール５は、トランシービングイネーブルモジュール４からシフトイネーブル信号を取得する。書き込みイネーブル信号がハイレベルにある場合、シフトレジスタモジュール５は書き込みデータを並列に書き込む。書き込みイネーブル信号がローレベルにあり且つシフトイネーブル信号がハイレベルにある場合、シフトレジスタモジュール５はデータをシリアルにシフトアウトし、スレーブマシンに、シフトアウトされたシリアルデータを入出力インタフェースモジュール２経由で送信する。加えてシフトレジスタモジュール５は、スレーブマシンによってアップロードされたシリアルデータを入出力インタフェースモジュール２経由で取得し、シフトイネーブル信号が有効な場合はシリアルデータをシリアルにシフトインし、シフトインされたシリアルデータに従って、読み取られるデータ（以下「読み取りデータ」と呼ぶ）を獲得し、読み取るためのデータはＡＰＢインタフェースモジュール１経由でマスタマシンにアップロードされる。
【００１４】
［23］  割り込み生成モジュール６は、制御信号、シフトイネーブル信号、及びシフトレジスタモジュール５によってシフトインされるシリアルデータに従って、割り込み要求信号を生成する。生成されると、割り込み生成モジュール６は、割り込み要求信号INT_REQをマスタマシンに送信し、制御情報を再送するようにマスタマシンに通知する。
【００１５】
［24］  いくつかの実施形態では、ＡＰＢインタフェースモジュール１は、ＡＰＢによって定められた全ての信号線を有する。アイドル時間中、選択信号PSEL及びイネーブル信号PENABLEはどちらもローであり、データPDATA及びアドレスPADDRは無効である。
【００１６】
［25］  図２は、本開示のいくつかの実施形態による、高性能バスによってデータを書き込む例示的なタイミング図である。準備サイクルで、マスタマシンがデータPWDATA及びアドレスPADDRを準備し、同時に選択信号PSELをハイに設定する。イネーブルサイクルで、マスタマシンがイネーブル信号PENABLEをハイに設定する。これらの信号は、イネーブルサイクルの端の立ち上がりエッジにおいてハイのままである。この立ち上がりエッジにおいて、アドレスに従って対応するレジスタ内にデータが書き込まれる。
【００１７】
［26］  図３は、本開示のいくつかの実施形態による、高性能バスによってデータを読み取る例示的なタイミング図である。準備サイクルで、マスタマシンがアドレスPADDRを準備し、選択信号PSELをハイに設定する。イネーブルサイクルで、マスタマシンがイネーブル信号PENABLEをハイに設定し、同時にＡＰＢインタフェースモジュールがアドレスに従ってデータPRDATAを準備する。これらの信号は、イネーブルサイクルの端の立ち上がりエッジにおいてハイのままである。この立ち上がりエッジにおいてマスタマシンがデータを読み取る。
【００１８】
［27］  図４は、本開示のいくつかの実施形態による、制御モジュール３の例示的な回路構造の概略図である。図４に示すように、制御モジュール３は、マルチプレクサ３０１及びレジスタ３０２を含む。マルチプレクサ３０１の第１の入力端子は、２４ビットの制御情報wdata[23:0]を入力する。マルチプレクサ３０１の制御端子は、制御モジュール３から書き込みイネーブル信号wen_0を入力する。マルチプレクサ３０１の出力端子は、レジスタ３０２の入力端子に接続される。レジスタ３０２の出力端子は、マルチプレクサ３０１の第２の入力端子に接続される。wen_0が有効である場合、例えばwen_0が１に等しい場合、制御情報wdata[23:0]がレジスタ３０２内に書き込まれる。レジスタ３０２の出力端子は制御信号を出力する。この制御信号は、伝送イネーブル信号r_trans_en、伝送方向信号r_direction、ボーレート信号r_baud、伝送長信号r_num、モニタリングイネーブル信号r_mnt_en、及びモニタリングタイプ信号r_mnt_typeを含む。
【００１９】
［28］  伝送イネーブル信号r_trans_enは、伝送イネーブル信号がハイレベルにあるとき、シリアルデータの送信又は受信を可能にする。
【００２０】
［29］  伝送方向信号r_directionは、伝送方向信号がハイレベルにあるとき、データの受信を示し、ローレベルにあるときデータの送信を示す。
【００２１】
［30］  ボーレート信号r_baudは、データが送信され又は受信されるボーレートを示す。
【００２２】
［31］  伝送長信号r_numは、送信され又は受信されるデータのビット数を示す。
【００２３】
［32］  モニタリングイネーブル信号r_mnt_enは、モニタリングイネーブル信号がハイレベルにあるとき、シリアル入力されたデータ信号の変化エッジをモニタすることを可能にする。
【００２４】
［33］  モニタリングタイプ信号r_mnt_typeは、モニタリングタイプ信号がハイレベルにあるとき、シリアル入力されたデータ信号の立ち下がりエッジの検出を示し、ローレベルにあるとき、シリアル入力されたデータ信号の立ち上がりエッジの検出を示す。
【００２５】
［34］  いくつかの実施形態では、トランシービングイネーブルモジュール４が、伝送イネーブル信号r_trans_en及びボーレート信号r_baudに従って、シフトイネーブル信号shift_enを生成する。図５は、本開示のいくつかの実施形態による、トランシービングイネーブルモジュール４の例示的な回路の概略図である。図５に示すように、トランシービングイネーブルモジュール４は、マルチプレクサ４０１、レジスタ４０２、加算器４０３、比較器４０４、ＯＲゲート４０５、インバータ４０６、及びＡＮＤゲート４０７を含む。マルチプレクサ４０１の第１の入力端子は、ローレベル信号を入力する。マルチプレクサ４０１の出力端子は、レジスタ４０２の入力端子に接続される。レジスタ４０２の出力端子は、加算器４０３の第１の入力端子及び比較器４０４の第１の入力端子のそれぞれに接続される。加算器４０３の第２の入力端子は値１を入力する。加算器４０３の出力端子は、マルチプレクサ４０１の第２の入力端子に接続される。比較器４０４の第２の入力端子は、ボーレート信号r_baudを入力する。比較器４０４の出力端子は、ＯＲゲート４０５の第１の入力端子及びＡＮＤゲート４０７の第１の入力端子のそれぞれに接続される。伝送イネーブル信号r_trans_enが、ＡＮＤゲート４０７の第２の入力端子に直接入力される。同時に伝送イネーブル信号r_trans_enが、インバータ４０６によって反転され、ＯＲゲート４０５の第２の入力端子に入力される。ＯＲゲート４０５の出力端子は、マルチプレクサ４０１の制御端子に接続される。ＡＮＤゲート４０７の出力端子は、シフトイネーブル信号shift_enに接続される。
【００２６】
［35］  トランシービングイネーブルモジュール４は、設定されたボーレートに従ってシフトイネーブル信号shift_enを生成することができる。伝送イネーブル信号r_trans_enがハイレベルにあるとき、レジスタ４０２の値が、クロック立ち上がりエッジにおいて増加される。レジスタ４０２の値がボーレート信号r_baudの値に等しいとき、シフトイネーブル信号shift_enがハイに設定される。次のクロック立ち上がりエッジにおいてレジスタ４０２はリセットされ、時間調整を再開する。
【００２７】
［36］  図６は、本開示のいくつかの実施形態による、シフトレジスタモジュール５の例示的な回路の概略図である。図６に示すように、シフトレジスタモジュール５は、４個のシフトサブモジュール５０１から５０４を含む。シフトサブモジュールの数は、マスタマシンとの通信中のパラレルデータのビット数、つまり書き込みデータのビット数又は読み取りデータのビット数によって決まる。シフトサブモジュールは同じ構造のものであり、それぞれが第１のマルチプレクサ、第２のマルチプレクサ、及びＤフリップフロップを含む。第１のマルチプレクサの出力端子は、第２のマルチプレクサの第２の入力端子に接続される。第２のマルチプレクサの出力端子は、Ｄフリップフロップの入力端子に接続される。Ｄフリップフロップの出力端子は、第１のマルチプレクサの第２の入力端子に接続される。第１のマルチプレクサの第１の入力端子は、シフトサブモジュールの第１の入力端子の役割を果たす。第１のマルチプレクサの制御端子は、シフトサブモジュールの第１の制御端子の役割を果たす。第２のマルチプレクサの第１の入力端子は、シフトサブモジュールの第２の入力端子の役割を果たす。第２のマルチプレクサの制御端子は、シフトサブモジュールの第２の制御端子の役割を果たす。Ｄフリップフロップの出力端子は、シフトサブモジュールの出力端子の役割を果たす。
【００２８】
［37］  シフトサブモジュール５０１から５０４はシーケンシャルに直列接続される。サブモジュール５０１の第１の入力端子がシリアルデータshift_inを受信する。サブモジュール５０１の出力端子は、サブモジュール５０２の第１の入力端子に接続される。サブモジュール５０２の出力端子は、サブモジュール５０３の第１の入力端子に接続される。サブモジュール５０３の出力端子は、サブモジュール５０４の第１の入力端子に接続される。サブモジュール５０４の出力端子は、シフトアウトされたシリアルデータshift_outを出力する。サブモジュール５０１からサブモジュール５０４の第１のマルチプレクサの制御端子は、シフトイネーブル信号shift_enを受信する。サブモジュール５０１からサブモジュール５０４の第２のマルチプレクサの制御端子は、シフトレジスタモジュールの書き込みイネーブル信号wen_1を受信する。サブモジュール５０１からサブモジュール５０４の第２のマルチプレクサの入力端子は、４ビットの書き込みデータwdata[3:0]の１ビットデータをそれぞれ受信し、第１の入力端子はビットwdata[3]を受信し、第２の入力端子はビットwdata[2]を受信し、第３の入力端子はビットwdata[1]を受信し、第４の入力端子はビットwdata[0]を受信する。サブモジュール５０１から５０４の出力端子のそれぞれが４ビットの読み取りデータrdata[3:0]の１ビットデータをそれぞれ出力し、第１の出力端子はビットrdata[3]を出力し、第２の出力端子はビットrdata[2]を出力し、第３の出力端子はビットrdata[1]を出力し、第４の出力端子はビットrdata[0]を出力する。
【００２９】
［38］  例えばマスタマシンがスレーブマシン内にデータを書き込み、wen_1が有効である場合（例えばwen_1が１に等しい場合）、シフトレジスタモジュール５は、各Ｄフリップフロップの入力として、書き込むための４ビットデータwdata[3:0]を選択する。wen_1が無効であり且つシフトイネーブル信号shift_enが有効である場合（例えばwen_1が０に等しくshift_enが１に等しい場合）、シフトレジスタモジュール５は、パラレルデータをシリアルにシフトアウトする。別の例では、マスタマシンがスレーブマシン内に記憶されているデータを読み取り、シフトイネーブル信号shift_enが有効である場合（例えばshift_enが１に等しい場合）、シフトレジスタモジュール５は、各Ｄフリップフロップ内にシリアルデータshift_inをシーケンシャルにシフトする。マスタマシンは、読み取りデータrdata[3:0]を読み取ることによって、パラレルデータを取得する。
【００３０】
［39］  いくつかの実施形態では、割り込み生成モジュール６が、制御情報を再送するようにマスタマシンに通知するために、データ伝送プロセス内で１組の条件が満たされる場合に、割り込み要求信号を生成する。例えば割り込み生成モジュール６は、シフトレジスタモジュール５によってシフトインされる又はシフトアウトされるシリアルデータのビット数が、設定された伝送長に達するとき、伝送割り込み要求信号を生成し、又はシフトレジスタモジュール５によってシフトインされるシリアルデータが１組の変化エッジを満たすとき、モニタリング割り込み要求信号を生成する。
【００３１】
［40］  図７は、本開示のいくつかの実施形態による、割り込み生成モジュールの例示的な回路の概略図である。このモジュールは、２つの回路ユニット６１及び６２に分けられる。回路ユニット６１は、伝送割り込み要求信号int_transを生成する。回路ユニット６２は、モニタリング割り込み要求信号int_mntを生成し、ＯＲゲート６３によってこの２つの割り込み要求信号（int_trans及びint_mnt）に対してＯＲ演算を行った後、これらの割り込み要求信号が信号INT_REQとしてマスタマシンに入力される。
【００３２】
［41］  回路ユニット６１は、伝送イネーブル信号r_trans_en、シフトイネーブル信号shift_en、及び伝送長信号r_numに従って、伝送割り込み要求信号int_transを生成する。回路ユニット６１は、マルチプレクサ６１０１、マルチプレクサ６１０２、レジスタ６１０３、加算器６１０４、比較器６１０５、インバータ６１０６、ＡＮＤゲート６１０７、及びＯＲゲート６１０８を含む。
【００３３】
［42］  マルチプレクサ６１０１の出力端子は、マルチプレクサ６１０２の第２の入力端子に接続される。マルチプレクサ６１０２の第１の入力端子はローレベル信号を受信する。マルチプレクサ６１０２の出力端子は、レジスタ６１０３の入力端子に接続される。レジスタ６１０３の出力端子は、マルチプレクサ６１０１の第２の入力端子に接続される。レジスタ６１０３の出力端子は、加算器６１０４の第１の入力端子及び比較器６１０５の第１の入力端子に更に接続される。加算器６１０４の第２の入力端子はハイレベル信号、例えば値１を受信する。加算器６１０４の出力端子は、マルチプレクサ６１０１の第１の入力端子に接続される。比較器６１０５の第２の入力端子は伝送長信号r_numを受信する。比較器６１０５の出力端子は、ＡＮＤゲート６１０７の第１の入力端子に接続される。伝送イネーブル信号r_trans_enはインバータ６１０６によって反転され、ＯＲゲート６１０８の第１の入力端子に入力される。シフトイネーブル信号shift_enは、ＡＮＤゲート６１０７の第２の入力端子に入力される。ＡＮＤゲート６１０７の出力端子は、ＯＲゲート６１０８の第２の入力端子に接続される。ＯＲゲート６１０８の出力端子は、マルチプレクサ６１０２の制御端子に接続される。伝送割り込み要求信号int_transは、ＡＮＤゲート６１０７の出力端子において得られる。
【００３４】
［43］  回路ユニット６１では、シフトイネーブル信号shift_enがハイレベルにあるとき、レジスタ６１０３の値がクロック立ち上がりエッジにおいて増加される。レジスタ６１０３内の値が伝送長信号r_numの値に等しいとき、伝送割り込み要求信号int_transがハイに設定され、次のクロック立ち上がりエッジにおいてレジスタ６１０３がリセットされる。
【００３５】
［44］  回路ユニット６２は、モニタリングイネーブル信号r_mnt_en、モニタリングタイプ信号r_mnt_type、及びシフトレジスタモジュール５によってシフトインされるシリアルデータshift_inに従って、モニタリング割り込み要求信号int_mntを生成する。回路ユニット６２は、Ｄフリップフロップ６２０１、インバータ６２０２、マルチプレクサ６２０３、排他的ＯＲゲート６２０４、ＡＮＤゲート６２０５、及びＡＮＤゲート６２０６を含む。
【００３６】
［45］  shift_in信号が、Ｄフリップフロップ６２０１の入力端子及び排他的ＯＲゲート６２０４の第２の入力端子に入力される。Ｄフリップフロップ６２０１の出力端子は、インバータ６２０２の入力端子、マルチプレクサ６２０３の第１の入力端子、及び排他的ＯＲゲート６２０４の第１の入力端子に接続される。インバータ６２０２の出力端子は、マルチプレクサ６２０３の第２の入力端子に接続される。マルチプレクサ６２０３の制御端子は、モニタリングタイプ信号r_mnt_typeに接続される。マルチプレクサ６２０３の出力端子は、ＡＮＤゲート６２０５の第１の入力端子に接続される。排他的ＯＲゲート６２０４の出力端子は、ＡＮＤゲート６２０５の第２の入力端子に接続される。ＡＮＤゲート６２０５の出力端子は、ＡＮＤゲート６２０６の第１の入力端子に接続される。ＡＮＤゲート６２０６の第２の入力端子は、モニタリングイネーブル信号r_mnt_enに接続される。モニタリング割り込み要求信号int_mntが、ＡＮＤゲート６２０６の出力端子において得られる。
【００３７】
［46］  回路ユニット６２では、モニタリングイネーブル信号r_mnt_enが有効である場合、シリアルデータshift_inの変化エッジがモニタされる。モニタリングタイプ信号r_mnt_typeがハイレベルにあるとき、shift_inの立ち下がりエッジがモニタされる。モニタリングタイプ信号r_mnt_typeがローレベルにあるとき、shift_inの立ち上がりエッジがモニタされる。対応する変化エッジが検出される場合、モニタリング割り込み要求信号int_mntがハイに設定される。
【００３８】
［47］  いくつかの実施形態では、入出力インタフェースモジュール２が、スレーブマシンにシリアルデータshift_outを出力し、スレーブマシンによってアップロードされたシリアルデータに従い、シフトレジスタモジュール５によってシフトインされるシリアルデータshift_inを得る。入出力インタフェースモジュール２は、シリアル出力されるデータの有効性を示す出力イネーブル信号を更に伝送する。
【００３９】
［48］  図８は、本開示のいくつかの実施形態による、入出力インタフェースモジュール２の例示的な回路の概略図である。図８に示すように、入出力インタフェースモジュール２は、入力ユニット２１及び出力ユニット２２を含む。
【００４０】
［49］  入力ユニット２１は、２つのＤフリップフロップ２１１及び２１２をカスケードすることによって形成されるシンクロナイザを採用する。Ｄフリップフロップ２１１の入力端子は、スレーブマシンによってアップロードされるシリアルデータS_INを入力する。Ｄフリップフロップ２１２は、シリアルデータshift_inを出力する。データが受信される場合、シリアルデータshift_inを生成するようにS_INがシンクロナイザによってローカルクロックに同期される。
【００４１】
［50］  出力ユニット２２は、マルチプレクサ２２１及びＤフリップフロップ２２２を含む。マルチプレクサ２２１の第１の入力端子は、シリアルデータshift_outを入力する。マルチプレクサ２２１の制御端子は、シフトイネーブル信号shift_enを受信する。マルチプレクサ２２１の出力端子は、Ｄフリップフロップ２２２の入力端子に接続される。Ｄフリップフロップ２２２の出力端子は、マルチプレクサ２２１の第２の入力端子に接続される。Ｄフリップフロップ２２２の出力端子は、スレーブマシンに送信されるシリアルデータS_OUTを出力する。シフトイネーブル信号shift_enがハイレベルにあるとき、シリアルデータshift_outが出力ユニット２２によって出力される。
【００４２】
［51］  いくつかの実施形態では、入出力インタフェースモジュール２が、出力イネーブル信号S_OE_Nを伝送するための出力イネーブル信号線を更に含む。出力イネーブル信号S_OE_Nは、伝送方向信号r_directionに従って得られる。伝送方向信号r_directionがデータの受信を示すハイレベルにあるとき、出力イネーブル信号S_OE_Nはローレベルにある。伝送方向信号r_directionがデータの送信を示すローレベルにあるとき、出力イネーブル信号S_OE_Nはハイレベルにある。
【００４３】
［52］  要約すると、本開示の実施形態の中で提供するシリアル通信装置に従い、トランシービングイネーブルモジュールが制御モジュールのアクション下でシフトイネーブル信号を生成する。シフトイネーブル信号によって制御されるシフトレジスタモジュールが、シリアルデータをシフトインし又はシフトアウトする。設定された条件が満たされる場合、割り込み生成モジュールが、データ伝送状態を変更するための割り込みを生成する。従来のシステムと比較し、本開示は頻繁な割り込みなしにシリアルデータを受信又は送信し、それによりマスタマシンの資源を節約することができる。同時に、データ伝送は設定されたボーレートに従って行われ、従ってデータの送信速度又は受信速度を制御することができる。
【００４４】
［53］  図９は、本開示のいくつかの実施形態による、例示的なマスタマシンがシリアル通信装置を介したデータのシリアル送信を実施することを示す流れ図である。マスタマシンは、送信されるパラレルデータをシフトレジスタモジュール内に最初に書き込む。マスタマシンは、ボーレート（r_baud）、伝送長（r_num）、及び伝送方向（r_direction）を設定することもでき、伝送イネーブルを有効にすることができる（例えばr_trans_en=1）。次いでマスタマシンは、他のトランザクションのために性能を解放することができる。マスタマシンがシリアル通信装置によって送信される割り込み要求を受信すると、マスタマシンはデータ送信の完了を知り、伝送イネーブルを無効にし（例えばr_trans_en=0）、データ送信が終了することを示すことができる。
【００４５】
［54］  図１０は、本開示のいくつかの実施形態による、例示的なマスタマシンがシリアル通信装置を介したデータのシリアル受信を実施することを示す流れ図である。マスタマシンはまずモニタ開始条件を構成し（例えば、立ち下がりエッジであるようにモニタタイプを構成し（例えばr_mnt_type=1））、モニタイネーブルを有効にする（例えばr_mnt_en=1）。次いで、マスタマシンを他のトランザクションのために解放することができる。
【００４６】
［55］  マスタマシンがシリアル通信装置によって送信される割り込み要求を受信すると、マスタマシンは開始条件が検出されていることを知ることができる。マスタマシンはモニタイネーブルを無効にすることができ（例えばr_mnt_en=0）、ボーレート（r_baud）、伝送長（r_num）、及び伝送方向（r_direction）を設定する。更に、マスタマシンは伝送イネーブルを有効にすることができる（例えばr_trans_en=1）。その後、マスタマシンを他のトランザクションのために解放することができる。
【００４７】
［56］  マスタマシンがシリアル通信装置によって送信される割り込み要求を受信すると、マスタマシンはデータ受信の完了を知り、伝送イネーブルを無効にすることができる（例えばr_trans_en=0）。最後に、マスタマシンはシフトレジスタモジュールからパラレルデータを読み取る。
【００４８】
［57］  従って、マスタマシンは、シリアル通信装置を使用してスレーブマシンからデータを読み取り、スレーブマシンにデータを書き込み、頻繁な割り込み要求に応答する必要がなく、従って大量の資源を節約することが明白である。
【００４９】
［58］  上記の実施形態の方法の中の手続きの全て又は一部は、関連するハードウェアに命令するコンピュータプログラムによって実装できることを当業者なら理解されよう。プログラムはコンピュータ可読記憶媒体の中に記憶することができる。実行されるとき、プログラムは方法の実施形態の中で記載した手続きを含むことができる。記憶媒体は磁気ディスク、光ディスク、読取専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）等とすることができる。
【００５０】
［59］  本明細書で使用するとき、明確な定めのない限り、「又は（or）」という語は実行不可能な場合を除いてあり得る全ての組み合わせを包含する。例えば、データベースがＡ又はＢを含み得ると述べられている場合、明確な定めのない限り又は実行不可能でない限り、データベースはＡ若しくはＢ又はＡ及びＢを含むことができる。第２の例として、データベースがＡ、Ｂ、又はＣを含み得ると述べられている場合、明確な定めのない限り又は実行不可能でない限り、データベースはＡ若しくはＢ若しくはＣ、又はＡ及びＢ、又はＡ及びＣ、又はＢ及びＣ、又はＡ及びＢ及びＣを含むことができる。
【００５１】
［60］  本開示の特定の実装形態を上記で説明したが、本開示の保護範囲は特定の実施形態に限定されない。本開示の趣旨及び原理から逸脱することなく行われる任意の修正、等価の置換、及び改善が本開示の保護範囲に含まれるものとする。
【図１】
2021507363.tif 000003
【図２】
2021507363.tif 000004
【図３】
2021507363.tif 000005
【図４】
2021507363.tif 000006
【図５】
2021507363.tif 000007
【図６】
2021507363.tif 000008
【図７】
2021507363.tif 000009
【図８】
2021507363.tif 000010
【図９】
2021507363.tif 000011
【図１０】
2021507363.tif 000012
【国際調査報告】
2021507363.tif 000013
2021507363.tif 000014