JP2018512761A - 線路多重化uart - Google Patents

線路多重化uart Download PDF

Info

Publication number
JP2018512761A
JP2018512761A JP2017544715A JP2017544715A JP2018512761A JP 2018512761 A JP2018512761 A JP 2018512761A JP 2017544715 A JP2017544715 A JP 2017544715A JP 2017544715 A JP2017544715 A JP 2017544715A JP 2018512761 A JP2018512761 A JP 2018512761A
Authority
JP
Japan
Prior art keywords
uart
control circuit
buffer
input impedance
rts
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017544715A
Other languages
English (en)
Inventor
ミシュラ、ララン・ジー
ウィートフェルト、リヒャルト・ドミニク
ウィレイ、ジョージ・アラン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2018512761A publication Critical patent/JP2018512761A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/16Multiplexed systems, i.e. using two or more similar devices which are alternately accessed for enqueue and dequeue operations, e.g. ping-pong buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Dc Digital Transmission (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

UART送信とCTS機能を送信ピン上に多重化し、UART受信とRTS機能を受信ピン上に多重化する線路多重化UARTインターフェースが提供される。この様式では、線路多重化UARTインターフェースが単に送信ピンと受信ピンとを使用するように、さらなるRTSピンおよびさらなるCTSピンについての従来の必要性が取り除かれる。

Description

関連出願の相互参照
[0001]本出願は、参照によりその全体が本明細書に組み込まれる、2015年2月25日に出願された、米国非仮特許出願第14/631,078号の利益を主張する。
[0002]本出願は、汎用非同期式受信器送信器(UART)に関し、より詳細には、線路多重化UARTに関する。
[0003]従来型のマイクロプロセッサは、典型的には、他のエンティティとの通信のために、汎用非同期式受信器送信器(UART)インターフェースを含む。UARTインターフェースは、各受信ビットが16個のサンプルによって表現されるように、従来では16倍のビットレートであるオーバーサンプリングクロックを使用する。UART送信プロトコルの下で2進数の1を送るために、送信UARTインターフェースは、そのオーバーサンプリングクロックの16サイクルにより決定されるようなビット期間の継続時間の間、そのTXピンを電源電圧VDDへと駆動する。受信UARTインターフェースは、それ自体のオーバーサンプリングクロックを使用してそのビット期間をカウントする。論理0の送信は、送信UARTインターフェースが、それのオーバーサンプリングクロック(16サイクル)により決定されるようなビット期間の継続時間の間、その送信ピンをグランドにするという点で、類似する。結果として得られるデータ送信は、8ビットのフレームとなり、パリティおよびチェックサムビットを含み得る。
[0004]ハードウェアフロー制御を有するUART送信プロトコルは、デバイス1およびデバイス2についてのUARTインターフェースを図示する図1を参照すると、より良好に理解され得る。各UARTインターフェースは、4つのピンまたは端子、すなわち、送信ピンTXと、受信ピンRXと、送信要求(RTS)ピンと、送信可(CTS)ピンとを有する。各デバイスについての送信ピンは、反対側のデバイスについての受信ピンに結合する。同様に、各デバイスについてのRTSピンは、反対側のデバイスについてのCTSピンに結合する。デバイス1が、デバイス2からのデータを受信する準備ができていると仮定する。デバイス1は、次いで、結果としてアサートされた電圧がデバイス2についてのCTSピン上で受信されるように、そのRTSピン上の電圧をアサートすることになる。デバイス2が送信するべきデータのフレームを有する場合、デバイス2は、次いで、デバイス1についてRXピン上で受信されるべきデータフレームを、デバイス2のTXピンを介して送ることになる。デバイス1からデバイス2へデータを送信するための送信プロトコルは、デバイス2がそのRTSピン上の電圧をアサートした場合に、デバイス1がデータのフレームを送ることのみ行い得ることに類似する。結果として得られる送信プロトコルは、有利には、ソフトウェアの介在または制御を必要としない。両方のデバイス中のプロセッサは、こうして、UARTデータ送信に関する、いかなる管理負担からも解放される。
[0005]UARTインターフェースは簡単で比較的堅牢であるが、集積回路は、それらの実装のために4つのピンを要求する必要がある。これらの追加ピンにより、結果として得られる集積回路の費用および複雑さが増すことになる。したがって、減らした数のピンを有するUARTインターフェースが当技術分野において求められている。
[0006]UARTインターフェースのための4つのピンについての、従来の必要性をなくすため、UART送信バッファとUART送信可(CTS)バッファの両方が共有送信ピンを使用して働く、「線路多重化」UARTインターフェースが提供される。同様に、UART受信バッファとUART送信要求(RTS)制御回路の両方が、共有受信端子を使用して働く。この様式では、従来型のRTSピンと従来型のCTSピンの両方が取り除かれ得る。
[0007]これらの有利な特徴およびさらなる有利な特徴は、例示的な実施形態の、以下の詳細な記載に関して、より良好に理解され得る。
[0008]1対のデバイス中の、従来型UARTインターフェースのブロック図。 [0009]本開示の実施形態による、1対のデバイス中の線路多重化UARTインターフェースのブロック図。 [0010]本開示の実施形態による、線路多重化UARTインターフェースによるストップビット送信の時図表。 [0011]図2Aのデバイス中のUARTインターフェースのさらに詳細な図。 [0012]図3AのUARTインターフェース中のインピーダンス切換回路を図示する図。 [0013]本開示の実施形態による、UARTフレームについての低インピーダンス期間および高インピーダンス期間を図示する図。 [0014]本開示の実施形態による、線路多重化UARTインターフェースについての動作の例示的な方法のためのフローチャート。
[0015]本開示の実施形態およびそれらの利点は、以下の詳細な記載を参照することによって最も良好に理解される。図のうちの1つまたは複数に図示される同様の要素を識別するために、同様の参照番号が使用されることを理解されたい。
[0016]密度を増加しピン数を減少するため、送信(TX)ピンと対応する受信(RX)ピンとの間の信号伝達にフロー制御が組み込まれる、修正UARTインターフェースが提供される。対照的に、従来型UARTシステムは、RTSメッセージングの送信に対応するためのさらなる送信要求(RTS)ピンと、RTSメッセージングの受信に対応するためのさらなる送信可(CTS)ピンとを必要とする。RTS/CTSフロー制御がTXおよびRXピンを介する信号伝達に組み込まれるため、結果として得られる修正UARTインターフェースは、本明細書では「線路多重化」UARTインターフェースとして示される。本明細書で使用する、「ピン」、「端子」、または「パッド」という用語は、集積回路が外部デバイスに結合する、入出力手段を一般的に呼ぶために交換可能に使用される。本明細書で使用する「ピン」という用語は、したがって、パッドおよび他の代替的な入出力集積回路構造を包含する。
[0017]デバイス201とデバイス202が両方とも線路多重化UARTインターフェースで構成され、各々が送信(TX)バッファおよび送信フロー制御論理回路205と受信(RX)バッファおよび受信フロー制御論理回路210とを含む、例示的なシステム200が図2Aに示される。デバイスが、そのUARTインターフェースのためにただ2つのピン、すなわちTXピンとRXピンとを有することに留意されたい。図1の従来型UARTインターフェースに関して議論したように、各デバイス201および202は、そのTXピンを駆動するためのTXバッファ215を含む。同様に、各デバイス201および202は、そのRXピンに結合されるRXバッファ225を含む。導線203が、デバイス201上のTXピンを、デバイス202上のRXピンに結合する。同様に、導線204が、デバイス202上のTXピンを、デバイス201上のRXピンに結合する。CTS機能性は、TXピンを通して生じる。したがって、デバイス201および202は、それぞれ、そのTXピンに結合されるCTS制御回路220を有する。同様に、RTS機能性は、RXピンを通して生じる。デバイス201および202は、それぞれ、そのRXピンに結合されるRTS制御回路230を有する。
[0018]従来と同様に、TXバッファ215により送信されるUARTフレームは、TXピン電圧が電源電圧(VDD)レベルにアサートされるストップビットで終了する。言い換えると、ストップビットは、2進数のハイの値である。以前に議論したように、UARTフレームを送信および受信することに関し、UARTインターフェースが16Xオーバーサンプリングクロックを使用することが、通常である。バッファ215および220ならびに制御回路225および230を通した信号送信および受信は、UART技術で通常であるように、16Xオーバーサンプリングクロックに従って計時され得る。その点に関し、2進数の1を送信するため、TXバッファ215は、そのTXピンの電圧を、オーバーサンプリングクロックの16サンプルにわたって、電源電圧レベルにアサートし得る(図示せず)。この電圧アサートに関し、TXバッファ215は、TXピン上へのCTS機能性の多重化を可能にするため、可変出力インピーダンスを有するように構成される。TXバッファおよび送信フロー論理回路205は、したがって、UARTフレーム中のデータビットの送信期間に、TXバッファ215が50Ωなどの比較的低い出力インピーダンスを有するように、TXバッファ215についての出力インピーダンスを制御する。16Xオーバーサンプリングクロックに対応する8ビットUARTフレーム中で、TXバッファ215は、したがって、ストップビットを含まないデータフレーム送信のための8X16=128サンプリングクロックサイクルにわたって、低い出力インピーダンスを有することになる。ストップビットは、オーバーサンプリングクロックのさらなる16サイクルを示す。各TXバッファ215が、導線203および204などのその導線を介してストップビットの先頭を確実にハイに駆動するために、TXバッファおよび送信フロー論理回路205は、ストップビットの少なくとも最初のオーバーサンプリングクロックサイクルの間に、TXバッファ215の出力インピーダンスをローのままであるように制御する。これが低い出力インピーダンスであるとすると、TXバッファ215は、次いで、TXピンの電圧(したがって、導線203または204を通じた、受信デバイス中の対応するRXピンの電圧)を電源電圧VDDレベルへと迅速にアサートし得る。ストップビットの残りの期間、TXバッファおよび送信フロー論理回路205は、TXバッファ215の出力インピーダンスを、10Kオームなどの比較的高いレベルに変える。
[0019]代表的なストップビット250が図2B中に図示される。最初の低い出力インピーダンス期間Aおよびその後の高い出力インピーダンス期間Bの継続時間は、16X UARTオーバーサンプリングクロックのサイクルに応答して決定される。一実施形態では、最初の低い出力インピーダンス期間は、16X UARTオーバーサンプリングクロックの最初の2サイクルの期間に生じる。そのような実施形態では、高い出力インピーダンス期間は、次いで、16X UARTオーバーサンプリングクロックの残りの14サイクルにわたって生じる。最初の低い出力インピーダンス期間に照らして、ストップビット250は、所望の論理ハイのレベルに迅速に駆動され得る。
[0020]図2Aを再び参照して、TXバッファの出力インピーダンス制御は、RTS/CTS機能性が以下のように進むことを可能にする。たとえば、デバイス201がUARTフレーム中のデータビットを少し前に送信し、ストップビット送信期間に、そのTXバッファ215の出力インピーダンスを今やハイに駆動したと仮定する。デバイス202中のRXバッファおよび受信フロー制御論理回路210は、ストップビットの送信を検出し、デバイス202が別のUARTフレームを受信する準備ができているかを決定する。以前に議論したように、そのような決定は、従来型UARTインターフェース中のルーチンである。別のUARTフレームを受信する準備ができている場合、従来型のUARTデバイスは、この点で、そのRTSピンの電圧を電源電圧VDDレベルへと駆動することになる。このアサートされた電圧は、次いで、従来型の送信しているUARTデバイスによって、2進数のハイのCTS信号として受信されることになる。逆に、従来型の受信しているUARTデバイスは、それが別のUARTフレームを受信する準備ができていない場合、そのRTSピン上の電圧を放電し得る。この従来型のRTS/CTS信号伝達は、別個のRTSおよびCTSピンを使用することなく、本明細書に開示されるように、有利に対応される。この密度の向上を達成するために、RTS制御回路230は、TXバッファ215が2つの選択可能な出力インピーダンスを有するのと同様に、2つの選択可能な入力インピーダンスを有するように構成される。たとえば、RTS制御回路230は、50オームなどの低い入力インピーダンスと、10Kオームなどの高い入力インピーダンスとを有し得る。
[0021]受信UARTフレームのフローを制御するため、RXバッファおよび受信フロー制御論理回路210は、RTS制御回路230についての入力インピーダンスを制御する。デバイス201が、UARTフレーム中のデータビットと、フレームのストップビットの最初のサイクルとを低い出力インピーダンスで送信し、次いで残りのストップビットサンプリングサイクルでは高いインピーダンスに切り換えられる例を続けると、デバイス202がさらなるUARTフレームを今のところ受信することができない場合であり得る。たとえば、デバイス202は、いっぱいであり、したがってUARTフレームをこれ以上記憶することが不可能な(下でさらに議論される)受信FIFOバッファを有し得る。そのような場合、RXバッファおよび受信フロー制御論理回路210は、そのRTS制御回路230に、ストップビット送信の最初のサンプリングサイクル後に低い入力インピーダンス状態へ入るよう命令することになる。デバイス201中のTXバッファ215はそのときに高い出力インピーダンス状態であるため、デバイス202中のRTS制御回路230の低い入力インピーダンスは、そのRTSピン上の電荷を迅速に激減させ、したがって、デバイス201についてのTXピンにおける電圧を下げる。デバイス201中のCTS制御回路は、そのTXピン上の電圧の低下を検出し、そのTXバッファに信号伝達し、フロー制御論理回路205にさらなるUARTフレームを送るのを控えるように送信する。UARTフレーム送信間のデフォルト状態では、各TXバッファ215は、高い出力インピーダンスを通してそのTXピンを供給電圧レベルに駆動するように構成される。いくつかの点において、RXバッファおよび受信フロー制御論理回路210がそのRTS制御回路230にそのデフォルト入力が高い入力インピーダンスモードを再び呈するよう命令するように、デバイス202はその受信バッファをクリアすることになる。デバイス201中のTXバッファ215からの駆動は、次いで、そのTXピン上の電圧を回復することになり、このことは、従来型UARTインターフェース中のアサートされたCTS信号の検出に類似して、対応するCTS制御回路220によって検出される。そのTXピン上でハイの電圧を検出すると、デバイス201中のCTS制御回路220は、次いで、このハイの電圧検出を対応するTXバッファおよび送信フロー制御論理回路205に信号伝達することになる。これに応じて、TXバッファおよび送信フロー制御論理回路205は、別のUARTフレーム送信を開始し得る。
[0022]デバイス202中のFIFOバッファがいっぱいでない場合、そのRXバッファおよび受信フロー制御論理回路210は、そのRTS制御回路230についてデフォルトの高い入力インピーダンスモードを変更しないことになる。デバイス201中のTXバッファ215は、次いで、ストップビットの継続時間の間、そのTXピンをハイの電圧に維持することになる。このハイの電圧は、そのTXバッファおよび送信フロー制御論理回路205が、いかなる一時的な静止または待機期間もなしに別のUARTフレーム送信を開始するように、デバイス201中のCTS制御回路220によって検出される。これらの有利な特性は、TXバッファおよび送信フロー制御論理回路205およびRXバッファおよび受信フロー制御論理回路210についての以下の例示的な実施形態に関して、より良好に理解され得る。
[0023]システム200のより詳細な視点が図3Aに示される。デバイス201と202の両方が集積回路である。説明をわかりやすくするために、デバイス201中では、送信する回路だけが示され、一方デバイス202は、その受信する回路だけを示す。TXバッファおよび送信フロー制御論理回路205、TXバッファ215、CTS制御回路220、および送信FIFOバッファ300は、したがって、デバイス201中にのみ示される。逆に、RXバッファおよび受信フロー制御論理回路210、RXバッファ225、RTS制御回路230、および受信FIFOバッファ320は、デバイス202中にのみ示される。デバイス201中のプロセッサまたは他のデータ発生源(図示せず)は、送信FIFO300にシステムバスを通して、UARTデータワードを提供する。従来と同様に、各FIFO300および320は、さらなるデータを受信するため、その機能を監視するFIFOウォーターマーク論理を含み得る。その先入れ先出し論理によれば、送信FIFO300は、次いで、その最も早くロードされたUARTデータワードを送信シフトレジスタ305へとロードすることになる。送信制御回路310は、16Xオーバーサンプリングクロックの16サイクルの期間に従ってごとに繰り返すシフトクロックを使用して、そのUARTデータワードをシフトインするために、シフトレジスタ305をストローブする(図示せず)。送信制御回路310は、シフトレジスタ305からのシフトインされたビットを受信し、シフトインされたビットの2進数値に従って、TXピンの電圧を駆動するために、TXバッファ215を制御する。たとえば、TXバッファ215は、2進数1のデータビットを送信するために、16xオーバーサンプリングクロックの16サイクルにわたって、そのTXピンを電源電圧VDDで駆動するように制御され得る。逆に、TXバッファ215は、2進数0のデータビットを送信するために、16xオーバーサンプリングクロックの16サイクルにわたって、そのTXピンをグランドにするよう制御され得る。
[0024]UARTフレーム中のデータビット送信期間に、送信制御回路310は、その低い出力インピーダンスを使用するようにTXバッファ215に命令する。加えて、送信制御回路310は、16xオーバーサンプリングクロックのうちの1または2サイクルにわたってなど、後続のストップビットのいくつかの最初の部分にわたって、その低い出力インピーダンスを使用するようにTXバッファ215に命令する。送信制御回路310は、次いで、ストップビット送信の残りの間、およびやはりUARTフレーム送信間の任意の待機時間の期間に、その高い出力インピーダンスを使用するように、TXバッファ215に命令する。ストップビット送信の残りの期間に、CTS制御回路220は、次いで、VDD/2などの何らかの閾値レベルを使用して、送信ピン電圧が2進数1であるのか2進数0であるのかを検出する。CTS制御回路220は、次いで、その出力信号(TX OK)をそれに応じて駆動し得る。CTS制御回路220が、たとえばその出力信号をグランドにすることに応答して、CTS制御回路220がその出力信号をそれに応じてアサートするような、TXピン電圧が2進数のハイの値であるとCTS制御回路220が再び検出するまで、送信制御回路310は、次のUARTデータワードをシフトインするためシフトレジスタ305をストローブしないことになる。送信制御回路310は、次いで、(送信FIFOバッファ300の状態に依存する、送信するべきものがあると仮定して)別のUARTフレーム送信を始めるために、TXバッファ215に、その低い出力インピーダンス状態へ入るよう命令することになる。
[0025]デバイス202では、RXバッファ225が、典型的には、TXバッファ215の高い出力インピーダンスモードに匹敵する、比較的高い入力インピーダンスを有することになる。たとえば、RXバッファ225は、RXピンからの受信信号がインバータトランジスタのゲートを駆動するインバータ(またはコンパレータ)を備え得る。MOSFETトランジスタは、それらのゲートで比較的高いインピーダンスを呈するため、結果として得られるRXバッファ225は、それに対応する高い入力インピーダンスを有する。RXピン上の受信電圧信号の2進数状態に基づいて、RXバッファ225は、受信制御回路225へ出力ビットを駆動し、受信制御回路225が、今度は、シフトクロックのストローブに応答して出力ビットを受信シフトレジスタ325へとシフトする。送信制御回路310に関して議論したように、受信制御回路335は、16xオーバーサンプリングクロックを受信する(図示せず)。代替実施形態では、他のオーバーサンプリングクロック周波数が使用され得る。受信シフトレジスタ325のシフトクロックストローブは、16xオーバーサンプリングクロックの16サイクルごとに生じ得る。一度、シフトレジスタ325中にロードされる全UARTデータワード、UARTデータワードは、それが、最終的にデバイス202中のプロセッサまたは他のデータシンク(図示せず)にシステムバスを介して並列に提示され得るように、受信FIFOバッファ320へとシフトされ得る。
[0026]受信制御回路335は、デバイス202中のRTS制御回路230の出力インピーダンスを制御する。UARTデータビットとストップビットの最初の部分とを受信するときなど、デフォルトモード期間に、受信制御回路335は、RTS制御回路230に10Kオームなど比較的高い出力インピーダンスを使用するよう命令する。このデフォルトモード期間に、RTS制御回路230は、RXピンの電圧に影響を及ぼすことから、このように有効に分離される。受信制御回路335は、受信ストップビットの先頭を検出し、受信FIFOバッファ320が別のUARTワードを受信するのに利用可能な十分な記憶域を有するかを決定するため、受信FIFOバッファ320内の受信(RX)FIFOレベルを検査する。送信FIFOバッファ300のように、受信FIFOバッファ320は、RX FIFOレベル信号を生成するため、ウォーターマーク論理または他の好適な回路を含み得る。利用可能な十分な記憶域がある場合、受信制御回路335は、スタートビットの残りにわたって、RTS制御回路230についてのデフォルトの高い出力インピーダンスを変えない。しかし利用可能な十分な記憶域がない場合、受信制御回路335は、RTS制御回路230の出力インピーダンスを50オームなどの比較的低いレベルに変える。送信バッファ215の比較的高い出力インピーダンスと比較したRTS制御回路230の比較的低い出力インピーダンスによって引き起こされる結果として得られる電圧分割器が、RTS制御回路230に、デバイス201についてのTXピン上と同様にそのRXピン上の電荷を迅速に激減させる。デバイス201中のCTS制御回路220は、次いで、TXピン電圧が回復されるまでデバイス201がさらなるUARTフレームを送信するのを控える待機モードにデバイス201が入るように、この電圧低下を検出する。デバイス202中のRX制御回路335は、別のUARTフレームを受信するための記憶能力があるとRX FIFOレベルが示すときを決定し、その後、RX制御回路335が、RTS制御回路230にそのデフォルトの高い出力インピーダンスを再開するよう命令する。デバイス201のTXピンにおける電圧の結果として得られる回復が、次いで、別のUARTフレームの送信をトリガする。
[0027]一実施形態では、TXバッファおよび送信フロー制御論理回路205は、送信端子を介してUARTフレームを送信するためのUART送信バッファを多重化するため、および送信端子を介してCTS信号を受信するための送信可(CTS)制御回路を多重化するための第1の手段を備えると見なされ得る。同様に、RXバッファおよび受信フロー制御論理は、受信端子を介してUARTフレームを受信するためのUART受信バッファを多重化するため、および受信端子を介してRTS信号を送信するための送信要求(RTS)制御回路を多重化するための第2の手段を備えると見なされ得る。
[0028]TXバッファ215およびRTS制御回路230についての例示的な実施形態が図3Bに示される。TXバッファ215中のスイッチS1は、抵抗器RHighを通してTXバッファ出力に結合する。同様に、別のスイッチS2が、抵抗器RLowを通してTXバッファ出力に結合する。RHighの抵抗値は、10Kオームなどと比較的高く、一方抵抗器RLowの抵抗値は、50オームなどとはるかに低い。UARTデータビットの送信期間に、TXバッファ215中のスイッチS2が閉じられ、一方スイッチS1は開かれる。これは、TXバッファに、上で議論された比較的低い出力インピーダンスをもたらす。同様に、比較的高い出力インピーダンスをもたらすために、スイッチS1が閉じられ、スイッチS2が開かれる。スイッチS3およびS4ならびにRTS制御回路230中の抵抗器RHighおよびRLowの別の対の類似の配置が、その所望の低い入力インピーダンスと、高い入力インピーダンスとをもたらす。
[0029]デバイス201または202によって送信される例示的なUARTフレームが図4に示される。加えて、送信デバイス中のTXバッファについて、および受信デバイス中のRTS制御回路についてのインピーダンス状態がやはり示される。この実施形態では、フレームは、8ビット長であるが、そのような長さは、代替実施形態では変更され得る。UART技術における慣例として、送信UARTデバイスは、スタートビット継続時間の間、そのTXピンをローにプルすることによってフレームを開始する。フレーム中のデータビットおよびストップビットのように、スタートビットは、16xオーバーサンプリングクロックの16サイクルの期間を有し得る。代替実施形態では、異なるサンプリングクロックレートが、UARTフレーム中のビットの継続時間を計時するために使用され得る。データビットは、次いで、TXピンを常にハイにプルするストップビットが続いて送信され得る。
[0030]UART技術においてやはり慣例として、受信UARTデバイスは、16xオーバーサンプリングクロックなどのオーバーサンプリングクロックを使用して受信フレームをサンプリングする。スタートビット、UARTデータビット、およびストップビットの最初の部分の送信期間に、送信デバイス中のTXバッファはその低い出力インピーダンスを使用する。このときの期間に、受信デバイス中のRTS制御回路は、TXバッファがデータビットの内容に応答してTXバッファのTXピンの電圧を適切な2進数値(VDDまたはグランド)へと迅速にスイングし得るように、RTS制御回路の高い入力インピーダンスを使用する。加えて、TXバッファは、16xオーバーサンプリングクロックの1サイクルにわたってなど、ストップビットの最初の部分の期間に、TXピンをVDDへとやはり迅速に充電し得る。図2Bに関して以前に議論したように、ストップビットについてのオーバーサンプリングクロックの残りのサイクルにわたって、TXバッファは、その高い出力(O/P)インピーダンスを使用する。ストップビットのこのTXバッファの高い出力インピーダンス期間の間、図4に図示される2つの受信器状態が存在する。第1の状態(ケース#1)では、RX FIFOレベルは、受信器制御回路(図示せず)内で決定されるようなFIFO閾値設定点より低い。そのような条件は、受信FIFOバッファ(図示せず)内に記憶能力があることを示す。受信デバイス中のRTS制御回路は、こうして、ストップビットの継続時間の間、そのデフォルトの高い出力インピーダンスを維持する。第2の状態(ケース#2)では、RX FIFOレベルはFIFO閾値設定点より大きい。図2Bのストップビット250に関して上で議論したように、TXバッファは、最初に、低い出力インピーダンスを使用して、ストップビットの先頭を駆動する。たとえば、TXバッファは、オーバーサンプリングクロックの最初の2サイクルの間、低い出力インピーダンスを使用して、ストップビットを始めるために、ハイの電圧でTXピンを駆動し得る。ストップビットのオーバーサンプリングクロックの残りのサイクルの間、TXバッファは、高い出力インピーダンスでTXピンを駆動する。TXバッファが、最初に、低い出力インピーダンスを使用してストップビットを駆動するため、TXバッファは、非常に迅速にTXピン電圧(したがって、受信ノードについてのRXピン電圧)を電源電圧VDDにプルする。電圧がハイを確立されると、送信器は、次いで、高い出力インピーダンスを使用してストップビットの残りを駆動し得る。
[0031]ストップビットについてのRXピンのハイの電圧を検出することに応答して、受信ノード中のRTS制御回路は、2つのことのうちの1つを行い得る。RTS制御回路は、低い入力インピーダンスを通して、または高い入力インピーダンスを通してRXピンをグランドに結合し得る。RTS制御回路は、受信UARTインターフェースが別のフレームを受信する準備ができているかに応答してそのような選択を行う。受信UARTインターフェースがフレームを受信する準備ができている(図4では、ケース#1について、RX=OK条件として示される)場合、RTS制御回路は、高い入力インピーダンス、好ましくは、TXバッファで使用される高い出力インピーダンスよりもはるかに大きい高いインピーダンスを通してRXピンをグランドに結合する。その結果、受信UARTインターフェースがフレームを受信する準備ができている場合、TXバッファおよびRTS制御回路は、RXピン電圧をハイに維持する電圧分割器を形成することになる。送信UARTインターフェースは、そのCTS制御回路を通してこのハイの電圧を検知する。ストップビット期間の高い出力インピーダンス部の間にCTS制御回路のTXピン電圧がハイであるとCTS制御回路が検知する場合、送信UARTインターフェースは別のデータのフレームを自由に送ることができる。
[0032]一方、受信UARTインターフェースが別のデータのフレームを受信する準備ができていない(図4では、ケース#2について、RX=Not OK条件として示される)場合、RTS制御回路は、それがストップビットを受信するときに、比較的低いインピーダンスを通してRXピンをグランドに結合する。TXバッファは、高い出力インピーダンスを通してTXピンをハイに駆動するため、その結果、送信デバイスによって、CTS信号=0条件であると解釈される、RXおよびTXピン電圧が実質的にグランドに放電されることになる。送信デバイスが別のデータのフレームを送るのを控えるように、従来型UARTインターフェースが(ここで現存しない)CTSピンのロー状態を検知するのと同様に、送信UARTインターフェース中のCTS制御回路は、そのTXピン上のこのローの電圧を検知する。図4のケース#1でのように、受信UARTインターフェース中のRTS制御回路がそのRXピンをその高い入力インピーダンスを通してグランドに結合すると、送信UARTインターフェースは、別のフレームを送信するように進み得る。線路多重化UARTインターフェースについての動作の例示的な方法が、ここで議論されることになる。
[0033]第1のデバイス中の線路多重化UARTインターフェースのための動作の例示的な方法についてのフローチャートが図5に示される。最初の行為500は、第1のデバイスについての、第1の入力インピーダンスを有する端子を介して、第1のUARTフレーム中のデータビットを受信することを備える。ケース#1について図4に示されるような、「高Z」入力インピーダンスを介するUARTフレーム中のデータビットの受信は、行為500の例である。加えて、方法は、第1のデバイスが第2のUARTフレームを受信する準備ができているという決定に応答し、第1のUARTフレーム中のストップビットを第1のデバイスが受信する間、第1の入力インピーダンスを維持することを備える行為505を含む。図4に図示されるケース#1は、受信デバイス中のRTS制御回路が、ストップビットの残りの大部分の受信期間に、そのデフォルトの高い入力インピーダンス(したがって、そのRXピンについてのデフォルトの高い入力インピーダンス)を維持する行為505の例である。最後に、方法は、第1のデバイスが第2のUARTフレームを受信する準備ができていないという決定に応答し、第1のUARTフレーム中のストップビットを第1のデバイスが受信する間、端子の入力インピーダンスを第1の入力インピーダンスから第1のインピーダンスより低い第2の入力インピーダンスに変えることを備える行為510を含む。図4に図示されるケース#2は、受信デバイス中のRTS制御回路が、ストップビットの残りの大部分の受信期間に、その低い入力インピーダンスに切り換える行為510の例である。
[0034]図2Aのデバイスが、図1に関して議論されたような従来型UART信号伝達と後方互換であり得るように、従来型RTSおよびCTSピンでやはり構成され得ることに留意されたい。加えて、本明細書に議論したようなインピーダンス制御を通したハードウェアフロー制御は、UART以外の他の通信インターフェースに適用され得る。
[0035]当業者が今では理解するように、当面の特定の用途に依存して、本開示のデバイスの材料、装置、構成および使用方法の中および材料、装置、構成および使用方法へと、その精神および範囲から逸脱することなく、多くの変更、代替および変形がなされ得る。これに照らして、本開示の範囲は、それらが単にそれらのいくつかの例であるので、本明細書に説明され記載される特定の実施形態のものに制限されるべきでなく、むしろ、下に添付される請求項およびそれらの機能的な等価物のものと完全に相応するべきである。

Claims (20)

  1. 汎用非同期式受信器送信器(UART)送信端子と、
    前記UART送信端子に結合される送信バッファ、ここで、前記送信バッファが第1の出力インピーダンスと第2の出力インピーダンスとからなるグループから出力インピーダンスを選択するように構成され、前記第1の出力インピーダンスが前記第2の出力インピーダンスよりも大きい、と、
    前記UART送信端子上で受信されるCTS信号を検出するように構成される送信可(CTS)制御回路と、
    を備える、集積回路。
  2. 前記送信バッファが遠隔の集積回路に前記送信端子を介して第1のUARTフレーム中のデータビットを送信している間、前記送信バッファに前記第1の出力インピーダンスを選択するよう命令するように構成される送信制御回路
    をさらに備える、請求項2に記載の集積回路。
  3. 前記送信バッファが、前記第1のUARTフレーム中の前記データビットの後に続くストップビットの最初の部分を送信している間、前記送信バッファに前記第1の出力インピーダンスを選択するよう命令し、前記送信バッファが前記ストップビットの残りの部分を送信している間、前記送信バッファに前記第2の出力インピーダンスを選択するよう命令するように前記送信制御回路がさらに構成される、請求項2に記載の集積回路。
  4. 前記第1のUARTフレームの前記データビットを前記送信バッファにシフトするように構成されるシフトレジスタ
    をさらに備える、請求項2に記載の集積回路。
  5. 前記シフトレジスタに前記第1のUARTフレームを提供するように構成される送信FIFOバッファ
    をさらに備える、請求項4に記載の集積回路。
  6. 前記送信制御回路が、前記CTS制御回路が前記CTS信号のアサートを検出することに応答して、前記送信バッファに第2のUARTフレームを送信するよう命令するようにさらに構成される、請求項2に記載の集積回路。
  7. 前記送信制御回路が、前記CTS制御回路が前記CTS信号のアサート停止を検出することに応答して、前記送信バッファに第2のUARTフレームの送信を控えるよう命令するようにさらに構成される、請求項6に記載の集積回路。
  8. 受信端子と、
    前記受信端子を介して遠隔の集積回路から第2のUARTフレームを受信するように構成される受信バッファと、
    前記受信端子に結合される送信要求(RTS)制御回路、ここで、前記RTS制御回路が、第1の入力インピーダンスと第2の入力インピーダンスとからなるグループから入力インピーダンスを選択するように構成され、前記第1の入力インピーダンスが前記第2の入力インピーダンスより大きい、と、
    をさらに備える、請求項1に記載の集積回路。
  9. 前記第1の出力インピーダンスが前記第1の入力インピーダンスと等しく、前記第2の出力インピーダンスが前記第2の入力インピーダンスと等しい、請求項8に記載の集積回路。
  10. 前記第1の出力インピーダンスが少なくとも10,000オームであり、前記第2の出力インピーダンスが50オーム以下である、請求項1に記載の集積回路。
  11. 前記受信端子が前記第2のUARTフレーム中のデータビットを受信している間、前記RTS制御回路に前記第1の入力インピーダンスを選択するよう命令するように構成される受信制御回路
    をさらに備える、請求項8に記載の集積回路。
  12. 前記受信制御回路が、前記受信端子が前記第2のUARTフレーム中の前記データビットに続く前記ストップビットの最初の部分を受信している間、前記RTS制御回路に前記第1の入力インピーダンスを選択するよう命令するようにさらに構成される、請求項11に記載の集積回路。
  13. 前記受信制御回路が、前記集積回路がさらなるUARTフレームを受信する準備ができていないという決定に応答して、前記受信制御回路が前記第2のUARTフレーム中の前記ストップビットの残りの部分を受信している間、前記RTS制御回路に前記第2の入力インピーダンスを選択するよう命令するようにさらに構成される、請求項12に記載の集積回路。
  14. 第1のデバイスにおいて、第1の入力インピーダンスを有する端子を介して第1のUARTフレーム中のデータビットを受信することと、
    前記第1のデバイスが前記第1のUARTフレーム中のストップビットの最初の部分を受信する間、前記第1の入力インピーダンスを維持することと、
    前記第1のデバイスが第2のUARTフレームを受信する準備ができていないという決定に応答して、前記第1のデバイスが前記第1のUARTフレーム中の前記ストップビットの残りの最後の部分を受信する間、前記端子の入力インピーダンスを前記第1の入力インピーダンスから前記第1の入力インピーダンスより低い第2の入力インピーダンスへと変えることと、
    を備える方法。
  15. 前記第1のデバイスが前記第2のUARTフレームを受信する準備ができているという決定に応答して、前記第1のデバイスが前記ストップビットの前記残りの最後の部分を受信する間、前記第1の入力インピーダンスを維持すること
    をさらに備える、請求項14に記載の方法。
  16. 前記第1の入力インピーダンスを維持することが、前記端子に結合される送るための受信(RTS)制御回路に、前記第1の入力インピーダンスに等しい入力インピーダンスを選択するよう命令することを備える、請求項14に記載の方法。
  17. 送信端子と、
    前記送信端子を介してUARTフレームを送信するためのUART送信バッファを多重化するため、および前記送信端子を介してCTS信号を受信するための送信可(CTS)制御回路を多重化するための第1の手段と
    を備える、集積回路。
  18. 受信端子と、
    前記受信端子を介してUARTフレームを受信するためのUART受信バッファを多重化するため、および前記受信端子を介してRTS信号を送信するための送信要求(RTS)制御回路を多重化するための第2の手段と
    をさらに備える、請求項17に記載の集積回路。
  19. 前記第2の手段が、前記RTS制御回路について第1の入力インピーダンスと第2の入力インピーダンスとの間で選択することにより、前記受信端子を介して前記RTS信号を送信する前記RTS制御回路を多重化するように構成される、請求項18に記載の集積回路。
  20. 前記第2の手段が、ストップビットの最後の部分の期間に、前記RTS信号を送信するように構成される、請求項19に記載の集積回路。
JP2017544715A 2015-02-25 2016-02-03 線路多重化uart Pending JP2018512761A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/631,078 2015-02-25
US14/631,078 US9684487B2 (en) 2015-02-25 2015-02-25 Line-multiplexed UART
PCT/US2016/016454 WO2016137703A1 (en) 2015-02-25 2016-02-03 Line-multiplexed uart

Publications (1)

Publication Number Publication Date
JP2018512761A true JP2018512761A (ja) 2018-05-17

Family

ID=55487075

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017544715A Pending JP2018512761A (ja) 2015-02-25 2016-02-03 線路多重化uart

Country Status (5)

Country Link
US (1) US9684487B2 (ja)
EP (1) EP3262520A1 (ja)
JP (1) JP2018512761A (ja)
CN (1) CN107257965A (ja)
WO (1) WO2016137703A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3343386B1 (en) * 2016-12-30 2020-02-05 GN Audio A/S Apparatus with inter-communicating processors

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787299A (en) 1994-09-16 1998-07-28 Philips Electronics North American Corporation Pin selection system for microcontroller having multiplexer selects between address/data signals and special signals produced by special function device
US5799208A (en) 1996-04-03 1998-08-25 United Microelectronics Corporation Apparatus for data communication between universal asynchronous receiver/transmitter (UART) modules and transceivers in a chip set by selectively connecting a common bus between multiplexer/demultiplexer units
US5944803A (en) * 1997-03-25 1999-08-31 Sony Corporation Isolatable multi-point serial communication utilizing a single universal asynchronous receiver and transmitter (UART)
US5884102A (en) 1997-05-30 1999-03-16 Intel Corporation Method and apparatus for a configurable means of connection between an embedded processor and a personal computer
US7162549B2 (en) 2001-10-29 2007-01-09 Onspec Electronics, Inc. Multimode controller for intelligent and “dumb” flash cards
US6700403B1 (en) 2002-05-15 2004-03-02 Analog Devices, Inc. Data driver systems with programmable modes
JP4035714B2 (ja) * 2002-07-18 2008-01-23 日本電気株式会社 通信ノードおよびスイッチ装置
US7102394B1 (en) 2005-09-27 2006-09-05 Micrel, Inc. Programming and control of an integrated circuit using an externally connected resistor network
CN102841871B (zh) * 2012-08-10 2015-06-17 无锡众志和达数据计算股份有限公司 基于高速串行总线的DMA结构的pipeline读写方法
CN104156335A (zh) * 2014-08-08 2014-11-19 成都联星微电子有限公司 一种uart多接口复用方法

Also Published As

Publication number Publication date
WO2016137703A1 (en) 2016-09-01
US9684487B2 (en) 2017-06-20
EP3262520A1 (en) 2018-01-03
US20160246570A1 (en) 2016-08-25
CN107257965A (zh) 2017-10-17

Similar Documents

Publication Publication Date Title
US9563398B2 (en) Impedance-based flow control for a two-wire interface system with variable frame length
US9971666B2 (en) Technique of link state detection and wakeup in power state oblivious interface
US8661168B2 (en) Specialized universal serial bus controller
US8175173B2 (en) Methods and systems for transmitting signals differentially and single-endedly across a pair of wires
US7292067B2 (en) Method and apparatus for buffering bi-directional open drain signal lines
KR20160066037A (ko) 최소의 phy 변경들로 그리고 프로토콜 변경들 없이 mipi d-phy 링크 레이트를 향상시키기 위한 방법
TW201017431A (en) Discovery of connections utilizing a control bus
US11567893B2 (en) Method and a mirrored serial interface (MSI) for transferring data
CN113424164B (zh) USB 2.0转接驱动器和eUSB2中继器中的功耗降低
KR20190006487A (ko) 라인 멀티플렉싱된 uart 플로우 제어를 위한 디지털 시그널링 방식들
TW201716924A (zh) 具有位元級確認及錯誤校正之串列介面
CN114691576A (zh) 具有不同i/o信号的装置之间的基于帧的低功率接口
US9933834B2 (en) Clock-free dual-data-rate link with built-in flow control
US8635389B2 (en) Variable depth buffer
JP2018512761A (ja) 線路多重化uart
WO2021150653A1 (en) Eusb2 to usb 2.0 data transmission with surplus sync bits
KR101232057B1 (ko) 이중 모드 리시버
CN116436489A (zh) 一种半双工模式下的uart交互系统及其方法