JP3882300B2 - Serial data holding circuit - Google Patents

Serial data holding circuit Download PDF

Info

Publication number
JP3882300B2
JP3882300B2 JP35581797A JP35581797A JP3882300B2 JP 3882300 B2 JP3882300 B2 JP 3882300B2 JP 35581797 A JP35581797 A JP 35581797A JP 35581797 A JP35581797 A JP 35581797A JP 3882300 B2 JP3882300 B2 JP 3882300B2
Authority
JP
Japan
Prior art keywords
data
holding
signal
serial data
register
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.)
Expired - Fee Related
Application number
JP35581797A
Other languages
Japanese (ja)
Other versions
JPH11184672A (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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP35581797A priority Critical patent/JP3882300B2/en
Publication of JPH11184672A publication Critical patent/JPH11184672A/en
Application granted granted Critical
Publication of JP3882300B2 publication Critical patent/JP3882300B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、シリアルデータを受信してパラレルデータに変換し、その内容を保持・記憶してパラレルデータとして周辺装置に渡すことが可能なデータ通信の受信装置において、入力されたシリアルデータを保持するシリアルデータ保持回路に関する。
【0002】
【従来の技術】
一般に、電子機器間においてデータの送受信を行う場合には、シリアル伝送方式によってデータがやり取りされる。一方、電子機器の内部において、データの読み出しや記憶等を行う場合には、電子機器を構成する各部でパラレル伝送方式によってデータをやり取りすることが多い。また、電子機器に接続された周辺装置に対して、パラレル伝送方式でデータを送受信する場合がある。このため、データ通信の受信側の電子機器には、シリアル伝送方式で受信したデータをパラレル方式に変換する装置を備えている場合が多い。
【0003】
このような、シリアルデータを変換する装置においては、シリアルデータ保持回路を設けて、予め、例えば32ビットのシリアルデータを4個のシリアルデータに分割し、8ビット単位のシリアルデータとして保持しておくことにより、その後容易にパラレルデータに変換することができる。
【0004】
図4は、上記のようなシリアルデータを変換する装置において、従来用いられていたシリアルデータ保持回路の一例として、シリアルデータ保持回路10の構成を示すブロック図である。尚、この図4に示すデータ保持回路10においては、8ビット×4(32ビット)のシリアルデータを受信するものとし、受信データは、1ビット分のパルスであるフレームパルス82と、このフレームパルス82を起点として続く8ビット×4=32ビット分のシリアルデータとによって構成される。
【0005】
図4において、シリアルデータ保持回路10は、バッファ制御回路5、バッファ回路6および出力制御回路7によって構成される。バッファ制御回路5は、フレームパルス82およびクロック信号83が入力されると、これらの信号に基づいて信号85を出力する。バッファ回路6には入力データ81、信号85及びクロック信号83が入力され、このバッファ回路6によって入力データ81は一時的に保持され、信号18が出力される。出力制御回路7は、信号88、信号85、クロック信号83を入力とし、信号87を出力する。
【0006】
図5は、シリアルデータ保持回路10の各部の内部構成を示す回路図である。同図に示すように、バッファ制御回路5は、カウンタ5Aとレジスタ5Bとで構成される。カウンタ5Aは5ビットのカウンタであり、フレームパルス82が入力されることによってリセットされ、カウント値「00000」から「11111」までのカウントを実行する。カウント値が「11111」に達すると、信号51をレジスタ5Bに出力する。レジスタ5Bには、信号51とともにクロック信号83が入力され、信号51はクロック信号83に同期して、1ビット遅れて信号85として出力される。
【0007】
バッファ回路6は、シフトレジスタ6Aおよびレジスタ6Bによって構成される。このシフトレジスタ6Aは、入力データ81が入力されるとこの入力データ81をシフトして32ビットのパラレル変換データ61に変換して、このパラレル変換データをレジスタ6Bに対して出力する。レジスタ6Bは、入力された信号85のデータを保持し、信号88として出力する。
【0008】
一般に、遠隔制御インタフェース(TC−IF)では、フレームパルスを起点として、8ビット×32の256ビットで送信されるシリアル受信データについて、その有効性を判定し、データの取り込み、廃棄を行う。即ち、有効データは周辺装置に渡し、無効データは渡さないという処理を行う。この判定のための判定条件として、CRC(Cyclic Redundancy Check :周期冗長検査)演算比較結果が含まれることがあるが、このCRCはデータを全て受信した後で受信したデータ全体に対して行われるので、CRC演算比較結果はデータの最終6ビットに付加される。このため、データの判定を行うには、1フレーム分のデータを一度全て取り込む必要がある。また、データを受信した際に、受信データがさらに連続している可能性があり、シリアル・パラレル変換と、取り込みデータ保持を行う必要があるので、図4に示すバッファ回路6は、シフトレジスタ6Aと取り込みデータ保持用のレジスタ6Bとを備えている。
【0009】
出力制御回路7は、レジスタ7A、カウンタ7B及びセレクタ7Cによって構成される。レジスタ7Aは、セット入力端子にバッファ制御回路5から信号85が入力されることによってセットされ、信号71をカウンタ7Bに対して出力する。また、レジスタ7Aのリセット入力にはカウンタ7Bから信号74が入力され、この信号74の入力によって、信号71の出力は「0」となる。
【0010】
カウンタ7Bは、レジスタ7Aから入力される信号71が「1」になることにより、2値のカウント(「00」〜「11」)を開始する。そして、カウント値が「11」に達すると、信号74をレジスタ7Aのリセット入力端子に対して出力し、レジスタ7Aをリセットさせる。これによって信号71が「0」になり、カウンタ7Bはカウントを停止する。また、カウンタ7Bは、2値のカウント値を、信号72及び信号73に「0」又は「1」を出力することによって随時セレクタ7Cに対して出力する。例えば、カウント値が「10」である場合には、信号73に「1」、信号72に「0」を出力する。
【0011】
セレクタ7Cは、32ビットのデータから指定された8ビットのデータを抽出して出力する4to1セレクタである。バッファ6から入力される32ビットの信号88において、カウンタ7Bから信号73,72によって入力されるカウント値に基づいて、カウント値が「00」の場合には7〜0ビット、「01」では15〜8ビット、「10」では23〜16ビット、「11」では31〜24ビットの各8ビットの部分をそれぞれ選択して、周辺装置に対してこの8ビットのデータを信号87として出力する。
【0012】
図6は、シリアルデータ保持回路10の動作を示すタイミングチャートである。図中、(1)は入力データ81、(2)はフレームパルス82、(3)はクロック信号83を示す。また、(4)は信号61を示し、(5)は信号51を、(6)は信号85を、(7)は信号88を示す。そして、(8)は信号71を示し、(9)、(10)はそれぞれカウンタ7Bの信号72、73を、(11)はカウンタ7Bの出力信号74を、(12)は信号17を示している。尚、図中、T1は1フレーム分のデータを受信する期間を示し、T2は、シリアルデータ保持回路10から周辺装置に対してデータが出力される期間を示す。
【0013】
この図6に示すように、シリアルデータ保持回路10に対して、フレームパルス82に続いて32ビットの入力データ81が入力されると、バッファ回路6内のシフトレジスタ6Aによって、レジスタ6Bに対してパラレル変換データが信号61として出力される。
【0014】
その後、期間T1が経過して32ビットの入力データ81の受信が終了するとともに、バッファ制御回路5内のカウンタ5Aのカウント値が「11111」に達し、信号51がレジスタ5Bに出力され、さらにレジスタ5Bから1ビット遅れて信号85が出力される。
【0015】
このレジスタ5Bから出力された信号85はレジスタ6Bのイネーブル信号入力端子に入力され、時刻Cにおいて、シフトレジスタ6Aから出力され、レジスタ6Bに保持された信号61のデータが信号88として出力される。
【0016】
また、レジスタ5Bから出力された信号85によって、出力制御回路7内のレジスタ7Aがセットされて信号71が出力され、この信号71の入力によってカウンタ7Bがカウントを開始する。このカウンタ7Bがカウントを開始してから、期間T2の間は、信号72と信号73とによってカウント値「00」,「01」,「10」,「11」が出力される。その後、期間T2において、このカウント値に従って、セレクタ7Cからパラレル変換データ(32ビット)のうち8ビットが選択され、信号87として順次出力される。
【0017】
【発明が解決しようとする課題】
ところが、上記従来のシリアルデータ保持回路10においては、図4及び図5に示すように、組合せ回路の規模の大きな部分が出力制御回路7のセレクタ7Cに集中しているために、その部分の遅延値が大きくなるという問題があった。
【0018】
即ち、32ビットのパラレル変換データを8ビット毎に抽出して出力する処理は、セレクタ7Cのみによって実行されている。同期回路における回路全体としての動作速度は、遅延値が最も大きな部分の遅延値によって決定されるため、複雑な回路構成を有する一部分に処理が集中して動作速度が遅くなると、全体の動作速度が低下することになってしまう。このため、32ビットのデータを8ビットの複数のデータに変換する処理をセレクタ7Cのみにおいて順番に実行することは、効率の低下を招く恐れがあった。
【0019】
また、データ全体の構成を変更する場合等には、セレクタ7C部分を大きく変更しなければ対応できないという問題があった。
【0020】
そこで本発明は、局所的な組合せ回路の集中を避け、遅延値の分散化を行って全体の動作速度を向上させることが可能であり、さらに、各種の変更に対しても柔軟に対応することが可能で、処理速度が大きく変動しないシリアルデータ保持回路を提供することを目的としている。
【0021】
【課題を解決するための手段】
上記課題を解決するため、請求項1記載の発明は、
シリアルデータを受信し、該シリアルデータに基づいて、所定のビット長のパラレルデータを生成して出力するシリアルデータ変換装置において、前記シリアルデータを前記所定のビット長のデータに加工して保持するシリアルデータ保持回路であって、
受信した前記シリアルデータを加工して前記所定のビット長の複数のデータを生成し、該複数のデータを独立して保持する第1の保持手段と、
この第1の保持手段によって生成された前記複数のデータを保持して、前記シリアルデータに対応する順序で順次出力する第2の保持手段と、
前記第1の保持手段に保持された前記複数のデータを、同時に前記第2の保持手段に対して転送する転送手段と、
を備えることを特徴としている。
【0022】
この請求項1記載の発明によれば、シリアルデータを受信し、該シリアルデータに基づいて、所定のビット長のパラレルデータを生成して出力するシリアルデータ変換装置において、シリアルデータを所定のビット長のデータに加工して保持するシリアルデータ保持回路であって、第1の保持手段により、受信した前記シリアルデータを加工して所定のビット長の複数のデータを生成し、該複数のデータを独立して保持し、転送手段により、第1の保持手段に保持された複数のデータを同時に第2の保持手段に転送し、第2の保持手段により、第1の保持手段によって生成された複数のデータを保持して、シリアルデータに対応する順序で順次出力する。
【0023】
従って、従来のように、受信したシリアルデータをそのまま保持し、出力する際に所定のビット長に加工する場合に比べて、複数のデータを同時に転送することが可能であるので、処理の高速化を図ることができる。また、第1の保持手段と第2の保持手段とを備え、第1の保持手段から第2の保持手段には複数のデータが同時に転送されるので、並列的な処理を行うことによって、局所的な組合わせ回路の集中が無く、遅延値が分散され、より効率よく処理を行うことができる。
【0024】
請求項2記載の発明は、請求項1記載のシリアルデータ保持回路において、
前記第1の保持手段は、前記シリアルデータを受信している途中において、既に受信した部分を加工して前記所定のビット長のデータを生成することが可能であること、
を特徴としている。
【0025】
この請求項2記載の発明によれば、請求項1記載のシリアルデータ保持回路において、第1の保持手段は、シリアルデータを受信している途中において、既に受信した部分を加工して、所定のビット長のデータを生成することが可能である。
【0026】
従って、シリアルデータの全部分を受信して保持し、その後加工する場合に比べて、処理速度が向上し、効率よく処理を行うことができる。例えば、シリアルデータの末尾6ビットに記載された上記のCRC演算比較結果を参照する場合には、先にシリアルデータを加工し、生成したデータを第1の保持手段に保持しておき、CRC演算比較結果を参照した後、すぐに第2の保持手段に転送することによって、シリアルデータをそのまま保持する場合に比べて、より効率よく処理を行うことができる。
【0027】
請求項3記載の発明は、請求項1または2記載のシリアルデータ保持回路において、
前記第1の保持手段と、前記第2の保持手段とは、前記所定のビット長のデータをそれぞれ保持する複数のデータ保持手段を含んでなり、
前記第1の保持手段が有する前記複数のデータ保持手段と、前記第2の保持手段が有する前記複数のデータ保持手段とは、互いに対をなして1対1に接続されていて、
前記転送手段は、前記第1のデータ保持手段と前記第2のデータ保持手段との間で、互いに1対1に接続された前記データ保持手段の間において前記所定のビット長のデータを転送すること、
を特徴としている。
【0028】
請求項3記載の発明によれば、請求項1または2記載のシリアルデータ保持回路において、第1の保持手段と、第2の保持手段とは、所定のビット長のデータをそれぞれ保持する複数のデータ保持手段を含んでなり、第1の保持手段が有する複数のデータ保持手段と、第2の保持手段が有する複数のデータ保持手段とは、互いに対をなして1対1に接続されていて、転送手段は、第1のデータ保持手段と第2のデータ保持手段との間で、互いに1対1に接続されたデータ保持手段の間において所定のビット長のデータを転送する。
【0029】
従って、複数のデータ保持手段に保持されたデータを、複数の保持手段に対して転送するので、並列的な処理が可能であり、処理速度を向上させ、効率よく処理を行うことができる。
【0030】
請求項4記載の発明は、請求項1、2または3記載のシリアルデータ保持回路において、
所定の時間毎に第1のクロック信号を発信する第1の発信手段と、
この第1の発信手段とは異なる時間毎に第2のクロック信号を発信する第2の発信手段と、
を更に備え、
前記第1の保持手段は、前記第1の発信手段によって発信される前記第1のクロック信号に同期して、前記シリアルデータを加工して前記複数のデータを生成して保持し、
前記転送手段は、前記第2の発信手段によって発信される前記第2のクロック信号に基づいて、前記第1の保持手段から前記第2の保持手段に対して同時に前記複数のデータを転送すること、
を特徴としている。
【0031】
この請求項4記載の発明によれば、請求項1、2または3記載のシリアルデータ保持回路において、第1の発信手段により、所定の時間毎に第1のクロック信号を発信し、第2の発信手段により、第1の発信手段とは異なる時間毎に第2のクロック信号を発信し、第1の保持手段は、第1の発信手段によって発信される信号に同期してシリアルデータを加工して複数のデータを生成して保持し、転送手段は、第2の発信手段によって発信される信号に基づいて第1の保持手段から第2の保持手段に対して同時に複数のデータを転送する。
【0032】
従って、例えば受信するシリアルデータのビット長等の変更が有った場合にも、回路構成を変更することなく、第1の発信手段及び第2の発信手段が信号を発信する周期を変更することによって対応が可能であり、高い柔軟性を有する回路を実現することができる。
【0033】
【発明の実施の形態】
以下、この発明の実施の形態について、図1〜図3の図面を参照しながら説明する。
【0034】
図1は、本発明の実施の形態としてのシリアルデータ保持回路の構成を示すブロック図である。この図1に示すように、シリアルデータ保持回路1は、バッファ制御回路2、バッファ回路3及び出力制御回路4によって構成される。また、図2は、図1に示すシリアルデータ保持回路1の各部の回路構成を示す図である。以下、図1及び図2に基づいて、構成を説明する。
【0035】
尚、以下に述べる実施の形態においては、入力されるデータは、1ビットのパルス信号であるフレームパルス12と、フレームパルス12に続いて受信された32ビットのシリアルデータである入力データ11とによって1フレームが構成されるデータとする。
【0036】
バッファ制御回路2は、カウンタ2A及びレジスタ2C,2Dによって構成され、このバッファ制御回路2には外部からフレームパルス12と、クロック信号13とが入力され、バッファ回路3に対して信号14を出力し、出力制御回路4に対しては信号15を出力する。
【0037】
カウンタ2Aは、フレームパルス12がリセット入力端子に入力されることによってリセットされ、クロック信号13に同期して「00000」から「11111」までの5値(32ビット)のカウントを実行するカウンタである。このカウンタ2Aは、信号23,22,21に「0」または「1」を出力することによって、カウント値の下3桁、即ち「000」から「111」までのカウント値を随時ゲート28に対して出力する。例えば、信号23に「1」、信号22に「0」、信号21に「0」が出力された場合には、カウント値の下3桁は「100」である。
【0038】
ゲート2Bは、カウンタ2Aから入力される信号23,22,21の論理和をとって、レジスタ2Cに対して信号24として出力するゲート素子であり、カウンタ2Aから入力された信号23,22,21が全て「1」の場合、即ちカウンタ2Aのカウント値が「111」に達した場合に、信号24に「1」を出力する。尚、カウンタ2Aのカウント値がその他の値である場合には、信号24には「0」が出力される。
【0039】
従って、カウンタ2Aのカウント値の下3桁が「111」となる場合に、ゲート2Bから信号24に「2」が出力されるので、信号24には8ビット毎に「1」が出力される。
【0040】
一方、カウンタ2Aは5値(32ビット)のカウンタであるので、カウント値が「11111」に達する毎に、即ち、フレームパルス12が入力されてから32ビット毎に、信号25がレジスタ2Dのデータ入力端子に出力される。
【0041】
レジスタ2Cは、そのデータ入力端子にゲート2Bから入力される信号24のデータを保持し、そのデータを、クロック信号13に同期して、レジスタ3B,3C,3Dのイネーブル信号入力端子に信号14として出力する。即ち、レジスタ2Cは、ゲート2Bから入力された信号24を、1ビット遅れて信号14として出力する。
【0042】
レジスタ2Dは、データ入力端子にカウンタ2Aから入力される信号25のデータを保持し、クロック信号13に同期して(即ち、信号25から1ビット遅れて)、レジスタ3Eのイネーブル信号入力端子、レジスタ3F,3G,3Hのロード入力端子及び出力制御回路4に対して信号15を出力する。
【0043】
出力制御回路4は、レジスタ4A及びカウンタ4Bによって構成される。レジスタ4Aは、バッファ制御回路2内のレジスタ2Dからセット入力端子に入力される信号15によってセットされ、クロック信号13に同期して、信号16をカウンタ4B及びバッファ回路3に対して出力する。また、レジスタ4Aのリセット入力端子には、カウンタ4Bから信号42が入力される。
【0044】
カウンタ4Bは、レジスタ4Aから信号16がイネーブル信号入力端子に入力されることによって、クロック信号13に同期してカウントを開始する2値(4ビット)のカウンタであり、カウント値が「11」に達すると信号42をレジスタ4Aのリセット入力端子に対して出力し、レジスタ4Aをリセットする。
【0045】
従って、出力制御回路4によれば、信号15が入力されてから、カウンタ4Bのカウント値が「11」となってレジスタ4Aに信号42が入力されるまでの4ビットの間、レジスタ4Aより連続して信号16が出力される。
【0046】
バッファ回路3は、第1バッファ部301と、第2バッファ部とによって構成され、第1バッファ部301は、シフトレジスタ3A及びレジスタ3B,3C,3Dによって構成され、第2バッファ部302は、レジスタ3E,3F,3G,3Hによって構成される。
【0047】
シフトレジスタ3Aは、32ビットのシリアルデータである入力データ11が入力されると、このデータを8ビットに分割してパラレル変換データに変換し、シフトさせる8ビットのシフトレジスタである。得られたパラレル変換データは、パラレル変換データ31としてレジスタ3Bのデータ入力端子及び第2バッファ部302のレジスタ3Eのデータ入力端子に対して出力される。
【0048】
レジスタ3B,3C,3Dは、何れも8ビットのレジスタであり、データ入力端子に入力された信号のデータを保持して、イネーブル信号入力端子に入力される信号14が「1」のとき、クロック入力端子に入力されるクロック信号13に同期して、保持している8ビットのデータを出力する。
【0049】
レジスタ3Bは、シフトレジスタ3Aからパラレル変換データ31として入力されたデータのうち8ビットを保持し、レジスタ3C及び第2バッファ部302のレジスタ3Fのデータ入力端子に信号32として出力する。レジスタ3Cは、信号32によって入力された8ビットのデータを信号33としてレジスタ3D及びレジスタ3Gのデータ入力端子に出力する。同様に、レジスタ3Dは、信号33によって入力された8ビットのデータを信号34として第2バッファ部のレジスタ3Hのデータ入力端子に出力する。これらのレジスタ3B,3C,3Dによるデータの出力は、上記のカウンタ2A、ゲート2B及びレジスタ2Cによって8ビット毎に出力される信号14がイネーブル信号入力端子に入力されたときに実行される。
【0050】
第2バッファ部302の各レジスタ3E,3F,3G,3Hのデータ入力端子には、前述のように、第1バッファ部のシフトレジスタ3A及びレジスタ3B,3C,3Dから出力されるパラレル変換データ31及び信号32,33,34がそれぞれ入力される。そして、レジスタ3Eは、イネーブル信号入力端子にレジスタ4Aから32ビット毎に入力される信号16が「1」のときに、シフトレジスタ3Aからデータ入力端子に入力されるパラレル変換データ31のデータを、信号35としてレジスタ3Fに出力する。
【0051】
また、レジスタ3F,3G,3Hは、ロード信号入力端子に信号15のパルスが入力されると、それぞれデータ入力端子に入力されるデータを保持し、イネーブル信号入力端子に信号16が入力されると該データを出力する。
【0052】
即ち、第1バッファ部301より第2バッファ部302に転送されたパラレル変換データ31及び信号32,33,34は、レジスタ3Eからレジスタ3Fへ、レジスタ3Fからレジスタ3Gへ、レジスタ3Gからレジスタ3Hへと転送される。そして、レジスタ3Hから信号17として、シリアルデータ保持回路1の外部へと出力される。
【0053】
図3は、シリアルデータ保持回路1の動作を示すタイミングチャートであり、この図3において、(1)は入力データ11、(2)はフレームパルス12、(3)はクロック信号13、(4)はパラレル変換データ31、(5)は信号32、(6)は信号33、(7)は信号34、(8)は信号21、(9)は信号22、(10)は信号23、(11)は信号24、(12)は信号25、(13)は信号14、(14)は信号15、(15)は信号16、(16)は信号42、(17)は信号35、(18)は信号36、(19)は信号37、(20)は信号17を示す。
【0054】
また、図中、T1で示す期間は、入力データ11の1フレーム(32ビット)を示し、T2で示す期間は、このシリアルデータ保持回路1に接続された周辺機器に対して8ビットのパラレル変換データの出力を行っている期間である。T3は、入力データ11を8ビット毎に区切った期間である。
【0055】
先ず、フレームパルス12が入力されると、このフレームパルス12に続いてシリアルデータである入力データ11(32ビット)が入力される。すると、シフトレジスタ3Aはクロック信号13に同期して入力データ11をパラレル変換データに変換し、入力データ11の入力から1ビット遅れてパラレル変換データ31を出力する。
【0056】
一方、カウンタ2Aは、フレームパルス12の入力によってカウントを開始し、信号23,22,21は、それぞれ「0」と「1」とに変化して、順次「0,0,0」,「0,1,1」,…のように、期間T1の間、3値のデータとしてカウンタ2Aのカウント値を伝達する。
【0057】
そして、カウンタ2Aのカウント値が「111」に達すると、ゲート2Bより信号24に「1」が出力され、レジスタ2Cによって、信号24より1ビット遅れて信号14に「1」が出力される。この信号14はレジスタ3B,3C,3Dのイネーブル信号入力端子に入力され、レジスタ3B,3C,3Dはクロック信号13に同期して信号32,33,34の出力を開始する。
【0058】
即ち、先ず、入力データ12は、シフトレジスタ3Aにおいてパラレル変換データに変換され、シフトレジスタ3A内に保持される。そして、シフトレジスタ3Aから8ビットで1まとまりとなったパラレル変換データ31がレジスタ3Bに入力され、保持される(時刻A)。また、この8ビットのパラレル変換データは、第2バッファ部のレジスタ3Eにも入力され、保持される。
【0059】
その後、8ビットが経過すると、信号14にパルスが出力され、レジスタ3Bに保持されていた先頭の8ビットのデータはレジスタ3Cに転送され、さらに、シフトレジスタ3Aに保持されていた2番目の8ビットのデータがレジスタ3B及びレジスタ3Eに転送される。
【0060】
更に8ビット経過すると、再度、信号14にパルス信号が出力され、レジスタ3Cに保持されていた先頭8ビットのデータはレジスタ3Dへ、レジスタ3Bに保持されていた2番目の8ビットのデータはレジスタ3Cへ、レジスタ3Aからは3番目の8ビットのデータがレジスタ3B及びレジスタ3Eへ転送される。
【0061】
そして、信号14にパルス信号が出力されると、同時にカウンタ25のカウント値が「11111」に達することによって、信号15に1ビット幅のパルス信号が出力されることによって(時刻B)、レジスタ3Eのイネーブル信号入力端子及びレジスタ3F,3G,3Hのロード信号入力端子にパルス信号が入力され、第1バッファ部301の各レジスタから第2バッファ部の各レジスタにデータが転送される。
【0062】
即ち、レジスタ3Dから先頭8ビットのデータがレジスタ3Hへ転送され、レジスタ3Cからは2番目の8ビットのデータがレジスタ3D及びレジスタ3Gに転送され、レジスタ3Bから3番目の8ビットのデータがレジスタ3C及びレジスタ3Fに転送され、レジスタ3Aからは4番目の8ビットのデータがレジスタ3B及びレジスタ3Eに転送される。
【0063】
従って、時刻Bにおいては、レジスタ3Aによって8ビットデータ×4のパラレル変換データの内、先頭の8ビットデータはレジスタ3Hに、2番目の8ビットデータはレジスタ3D,3Gに、3番目の8ビットデータはレジスタ3C,3Fに、4番目の8ビットデータはレジスタ3B,3Eに保持されている。従って、時刻Bの1ビット後に信号16に「1」が出力され、レジスタ3F,3G,3Hのイネーブル信号入力端子に入力されると、各レジスタに3F,3G,3H保持されたデータが順次転送されるとともに、レジスタ3Hからは、先頭の8ビットデータ、2番目の8ビットデータ、…の順に、8ビットで1まとまりのデータが出力される。
【0064】
従って、図6に示す期間T2の間に、信号17によってパラレル変換データが8ビット毎に、接続された周辺機器に対して出力される。
【0065】
以上のように、本発明の実施の形態であるシリアルデータ保持回路1によれば、バッファ回路3内に備えるシフトレジスタ3Aによって、32ビットで1フレームを構成するシリアルデータをパラレル変換データに変換し、このパラレル変換データを8ビット毎にレジスタ3B,3C,3D,3E,3F,3G,3Hによって順次転送し、並列して保持し、信号17として8ビット毎に出力するので、ごく一部の回路において集中的に処理を実行する場合に比べ、レジスタによる遅延値が集中することがないので、シリアルデータ保持回路1全体の遅延値を増大させることがない。これによって、遅延値の増大による無駄を省き、効率よくシリアルデータをパラレルデータに変換することができる。
【0066】
また、異なるビット長のシリアルデータを扱う場合にも、バッファ回路3内の構成を大きく変更する必要はなく、バッファ制御回路2や、出力制御回路4において、例えば信号16にパルス信号を出力するタイミング等の調整を行うことによって対応することが可能である。
【0067】
なお、上記実施の形態のシリアルデータ保持回路1において、入力されるデータは32ビットで1フレームを構成するものであるとし、このデータを8ビットのパラレル変換データに変換して出力するものとしたが、例えば、マルチプレクサ等の回路を内部に備え、複数のデータバスを介してパラレルデータを出力する構成としてもよく、また、データのビット長についても、上記のように変更可能であり、その他、細部の構成についても、本発明の趣旨を逸脱しない範囲において、適宜変更可能である。
【0068】
【発明の効果】
請求項1記載の発明によれば、従来のように、受信したシリアルデータをそのまま保持し、出力する際に所定のビット長に加工する場合に比べて、複数のデータを同時に転送することが可能であるので、処理の高速化を図ることができる。また、並列的な処理を行うことによって、局所的な組合わせ回路の集中が無く、遅延値が分散され、より効率よく処理を行うことができる。
【0069】
請求項2記載の発明によれば、シリアルデータの全部分を受信して保持し、その後加工する場合に比べて、処理速度が向上し、効率よく処理を行うことができる。例えば、シリアルデータの末尾6ビットに記載された上記のCRC演算比較結果を参照する場合には、先にシリアルデータを加工し、生成したデータを第1の保持手段に保持しておき、CRC演算比較結果を参照した後、すぐに第2の保持手段に転送することによって、シリアルデータをそのまま保持する場合に比べて、より効率よく処理を行うことができる。
【0070】
請求項3記載の発明によれば、複数のデータ保持手段に保持されたデータを、複数の保持手段に対して転送するので、並列的な処理が可能であり、処理速度を向上させ、効率よく処理を行うことができる。
【0071】
請求項4記載の発明によれば、各種の変更が有った場合にも、回路構成を変更することなく、第1の発信手段及び第2の発信手段が信号を発信する周期を変更することによって対応が可能であり、高い柔軟性を有する回路を実現することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態としてのシリアルデータ保持回路の構成を示すブロック図である。
【図2】図1のシリアルデータ保持回路の回路構成を示す回路図である。
【図3】図1のシリアルデータ保持回路を構成する各部の動作を示すタイミングチャートである。
【図4】従来のシリアルデータ保持回路の構成の一例を示すブロック図である。
【図5】図4のシリアルデータ保持回路の回路構成を示す回路図である。
【図6】図4のシリアルデータ保持回路を構成する各部の動作を示すタイミングチャートである。
【符号の説明】
1 シリアルデータ保持回路
2 バッファ制御回路
2A カウンタ
2B ゲート
2C,2D レジスタ
3 バッファ回路
3A シフトレジスタ
3B,3C,3D,3E,3F,3G,3H
レジスタ
4 出力制御回路
4A レジスタ
4B カウンタ
[0001]
BACKGROUND OF THE INVENTION
The present invention retains input serial data in a data communication receiving apparatus that can receive serial data, convert it into parallel data, hold and store the contents, and pass the data as parallel data to a peripheral device. The present invention relates to a serial data holding circuit.
[0002]
[Prior art]
In general, when data is transmitted and received between electronic devices, data is exchanged by a serial transmission method. On the other hand, when data is read or stored in an electronic device, data is often exchanged by a parallel transmission method between each part of the electronic device. In some cases, data is transmitted / received to / from a peripheral device connected to an electronic device using a parallel transmission method. For this reason, electronic devices on the receiving side of data communication often include a device that converts data received by a serial transmission method into a parallel method.
[0003]
In such an apparatus for converting serial data, a serial data holding circuit is provided to divide, for example, 32-bit serial data into four pieces of serial data and hold the serial data in units of 8 bits. Therefore, it can be easily converted into parallel data thereafter.
[0004]
FIG. 4 is a block diagram showing a configuration of a serial data holding circuit 10 as an example of a serial data holding circuit conventionally used in the apparatus for converting serial data as described above. Note that the data holding circuit 10 shown in FIG. 4 receives serial data of 8 bits × 4 (32 bits), and the received data includes a frame pulse 82 which is a 1-bit pulse and the frame pulse. It is composed of 8 bits × 4 = 32 bits of serial data starting from 82.
[0005]
In FIG. 4, the serial data holding circuit 10 includes a buffer control circuit 5, a buffer circuit 6, and an output control circuit 7. When the frame pulse 82 and the clock signal 83 are input, the buffer control circuit 5 outputs a signal 85 based on these signals. Input data 81, a signal 85 and a clock signal 83 are input to the buffer circuit 6, and the input data 81 is temporarily held by the buffer circuit 6 and a signal 18 is output. The output control circuit 7 receives the signal 88, the signal 85, and the clock signal 83 and outputs a signal 87.
[0006]
FIG. 5 is a circuit diagram showing an internal configuration of each part of the serial data holding circuit 10. As shown in the figure, the buffer control circuit 5 includes a counter 5A and a register 5B. The counter 5A is a 5-bit counter, is reset when the frame pulse 82 is input, and executes a count from “00000” to “11111”. When the count value reaches “11111”, the signal 51 is output to the register 5B. A clock signal 83 is input to the register 5B together with the signal 51. The signal 51 is output as a signal 85 with a delay of 1 bit in synchronization with the clock signal 83.
[0007]
The buffer circuit 6 includes a shift register 6A and a register 6B. When the input data 81 is input, the shift register 6A shifts the input data 81 to convert it into 32-bit parallel conversion data 61, and outputs the parallel conversion data to the register 6B. The register 6B holds the data of the input signal 85 and outputs it as a signal 88.
[0008]
In general, in the remote control interface (TC-IF), the validity of serial reception data transmitted by 256 bits of 8 bits × 32 starting from a frame pulse is determined, and the data is taken in and discarded. That is, processing is performed in which valid data is passed to the peripheral device and invalid data is not passed. As a determination condition for this determination, a CRC (Cyclic Redundancy Check) calculation comparison result may be included. This CRC is performed on the entire data received after all the data is received. The CRC operation comparison result is added to the last 6 bits of the data. For this reason, in order to perform data determination, it is necessary to capture all data for one frame once. In addition, when data is received, there is a possibility that the received data is further continuous, and it is necessary to perform serial-parallel conversion and capture data holding. Therefore, the buffer circuit 6 shown in FIG. And a register 6B for holding captured data.
[0009]
The output control circuit 7 includes a register 7A, a counter 7B, and a selector 7C. The register 7A is set when the signal 85 is input from the buffer control circuit 5 to the set input terminal, and outputs the signal 71 to the counter 7B. Further, the signal 74 is input from the counter 7B to the reset input of the register 7A, and the input of the signal 74 causes the output of the signal 71 to be “0”.
[0010]
The counter 7B starts a binary count (“00” to “11”) when the signal 71 input from the register 7A becomes “1”. When the count value reaches “11”, the signal 74 is output to the reset input terminal of the register 7A to reset the register 7A. As a result, the signal 71 becomes “0” and the counter 7B stops counting. Further, the counter 7B outputs a binary count value to the selector 7C as needed by outputting “0” or “1” to the signal 72 and the signal 73. For example, when the count value is “10”, “1” is output to the signal 73 and “0” is output to the signal 72.
[0011]
The selector 7C is a 4to1 selector that extracts and outputs 8-bit data designated from 32-bit data. Based on the count values input from the counter 7B by the signals 73 and 72 in the 32-bit signal 88 input from the buffer 6, 7 to 0 bits when the count value is “00” and 15 for “01”. 8 bits, 23 to 16 bits for “10”, and 31 to 24 bits for “11” are selected, and the 8-bit data is output as a signal 87 to the peripheral device.
[0012]
FIG. 6 is a timing chart showing the operation of the serial data holding circuit 10. In the figure, (1) indicates input data 81, (2) indicates a frame pulse 82, and (3) indicates a clock signal 83. (4) shows the signal 61, (5) shows the signal 51, (6) shows the signal 85, and (7) shows the signal 88. (8) shows the signal 71, (9) and (10) show the signals 72 and 73 of the counter 7B, (11) shows the output signal 74 of the counter 7B, and (12) shows the signal 17, respectively. Yes. In the figure, T1 indicates a period during which data for one frame is received, and T2 indicates a period during which data is output from the serial data holding circuit 10 to the peripheral device.
[0013]
As shown in FIG. 6, when 32-bit input data 81 is input to the serial data holding circuit 10 following the frame pulse 82, the shift register 6A in the buffer circuit 6 causes the register 6B to Parallel conversion data is output as a signal 61.
[0014]
Thereafter, the reception of the 32-bit input data 81 ends after the period T1 has elapsed, the count value of the counter 5A in the buffer control circuit 5 reaches “11111”, the signal 51 is output to the register 5B, and the register A signal 85 is output with a delay of 1 bit from 5B.
[0015]
The signal 85 output from the register 5B is input to the enable signal input terminal of the register 6B. At time C, the data of the signal 61 output from the shift register 6A and held in the register 6B is output as the signal 88.
[0016]
The register 7A in the output control circuit 7 is set by the signal 85 output from the register 5B and the signal 71 is output. The counter 7B starts counting by the input of the signal 71. The count values “00”, “01”, “10”, and “11” are output by the signal 72 and the signal 73 during the period T2 after the counter 7B starts counting. Thereafter, in the period T2, 8 bits are selected from the parallel conversion data (32 bits) from the selector 7C according to the count value, and sequentially output as the signal 87.
[0017]
[Problems to be solved by the invention]
However, in the conventional serial data holding circuit 10, as shown in FIGS. 4 and 5, since a large portion of the combinational circuit is concentrated on the selector 7 </ b> C of the output control circuit 7, the delay of that portion is delayed. There was a problem that the value increased.
[0018]
That is, the process of extracting and outputting 32-bit parallel conversion data every 8 bits is executed only by the selector 7C. Since the operation speed of the entire circuit in the synchronous circuit is determined by the delay value of the portion with the largest delay value, if the processing speed is reduced due to the processing concentrated on a part having a complicated circuit configuration, the overall operation speed is reduced. It will be reduced. For this reason, performing the process of converting 32-bit data into a plurality of 8-bit data in order using only the selector 7C may cause a reduction in efficiency.
[0019]
Further, when changing the configuration of the entire data, there is a problem that it cannot be dealt with unless the selector 7C is largely changed.
[0020]
Therefore, the present invention can improve the overall operation speed by avoiding local concentration of combinational circuits, distributing delay values, and flexibly responding to various changes. An object of the present invention is to provide a serial data holding circuit which can be processed and whose processing speed does not vary greatly.
[0021]
[Means for Solving the Problems]
In order to solve the above problem, the invention according to claim 1
A serial data converter that receives serial data, generates parallel data of a predetermined bit length based on the serial data, and outputs the parallel data. The serial data is processed into the data of the predetermined bit length and retained. A data holding circuit,
First holding means for processing the received serial data to generate a plurality of data of the predetermined bit length, and independently holding the plurality of data;
Second holding means for holding the plurality of data generated by the first holding means and sequentially outputting them in an order corresponding to the serial data;
Transfer means for simultaneously transferring the plurality of data held in the first holding means to the second holding means;
It is characterized by having.
[0022]
According to the first aspect of the present invention, in a serial data conversion device that receives serial data, generates parallel data having a predetermined bit length based on the serial data, and outputs the parallel data, the serial data is converted into a predetermined bit length. A serial data holding circuit that processes and holds the data into a plurality of data, wherein the first holding means processes the received serial data to generate a plurality of data of a predetermined bit length, and the plurality of data are independently The plurality of data held in the first holding means are simultaneously transferred to the second holding means by the transfer means, and the plurality of data generated by the first holding means are transferred by the second holding means. The data is held and sequentially output in the order corresponding to the serial data.
[0023]
Therefore, compared to the case where the received serial data is held as it is and processed into a predetermined bit length at the time of output, a plurality of data can be transferred simultaneously, so that the processing speed is increased. Can be achieved. In addition, since the first holding means and the second holding means are provided, and a plurality of data are simultaneously transferred from the first holding means to the second holding means, it is possible to perform local processing by performing parallel processing. There is no concentration of combinational circuits, delay values are distributed, and processing can be performed more efficiently.
[0024]
The invention according to claim 2 is the serial data holding circuit according to claim 1,
The first holding unit is capable of processing the already received part and generating the data of the predetermined bit length while receiving the serial data.
It is characterized by.
[0025]
According to the second aspect of the present invention, in the serial data holding circuit according to the first aspect, the first holding means processes the already received portion in the middle of receiving the serial data to obtain a predetermined data. Bit length data can be generated.
[0026]
Therefore, the processing speed is improved and processing can be performed efficiently as compared with the case where all the serial data is received and held and then processed. For example, when referring to the CRC calculation comparison result described in the last 6 bits of the serial data, the serial data is first processed and the generated data is held in the first holding means, and the CRC calculation is performed. By referring to the comparison result and immediately transferring it to the second holding means, the processing can be performed more efficiently than when the serial data is held as it is.
[0027]
The invention according to claim 3 is the serial data holding circuit according to claim 1 or 2,
The first holding means and the second holding means include a plurality of data holding means for holding data of the predetermined bit length,
The plurality of data holding units included in the first holding unit and the plurality of data holding units included in the second holding unit are connected to each other in a one-to-one relationship.
The transfer unit transfers the data having the predetermined bit length between the first data holding unit and the second data holding unit between the data holding units connected to each other on a one-to-one basis. thing,
It is characterized by.
[0028]
According to a third aspect of the present invention, in the serial data holding circuit according to the first or second aspect, the first holding means and the second holding means are a plurality of pieces of data each holding predetermined bit length data. A plurality of data holding means included in the first holding means and a plurality of data holding means included in the second holding means are connected to each other in a one-to-one manner. The transfer unit transfers data having a predetermined bit length between the first data holding unit and the second data holding unit between the data holding units connected one-to-one.
[0029]
Therefore, since the data held in the plurality of data holding means is transferred to the plurality of holding means, parallel processing is possible, processing speed can be improved, and processing can be performed efficiently.
[0030]
The invention according to claim 4 is the serial data holding circuit according to claim 1, 2, or 3,
First transmitting means for transmitting a first clock signal at predetermined time intervals;
Second transmission means for transmitting the second clock signal at different times from the first transmission means;
Further comprising
The first holding unit generates and holds the plurality of data by processing the serial data in synchronization with the first clock signal transmitted by the first transmission unit,
The transfer means transfers the plurality of data simultaneously from the first holding means to the second holding means based on the second clock signal transmitted by the second transmitting means. ,
It is characterized by.
[0031]
According to the fourth aspect of the present invention, in the serial data holding circuit according to the first, second, or third aspect, the first clock signal is transmitted every predetermined time by the first transmission means, and the second data The transmission means transmits the second clock signal at a time different from that of the first transmission means, and the first holding means processes the serial data in synchronization with the signal transmitted by the first transmission means. The plurality of data is generated and held, and the transfer means transfers the plurality of data simultaneously from the first holding means to the second holding means based on the signal transmitted by the second transmitting means.
[0032]
Therefore, for example, even when there is a change in the bit length of serial data to be received, the cycle at which the first transmission unit and the second transmission unit transmit signals is changed without changing the circuit configuration. Therefore, a circuit with high flexibility can be realized.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to FIGS.
[0034]
FIG. 1 is a block diagram showing a configuration of a serial data holding circuit as an embodiment of the present invention. As shown in FIG. 1, the serial data holding circuit 1 includes a buffer control circuit 2, a buffer circuit 3, and an output control circuit 4. FIG. 2 is a diagram showing a circuit configuration of each part of the serial data holding circuit 1 shown in FIG. Hereinafter, the configuration will be described with reference to FIGS. 1 and 2.
[0035]
In the embodiment described below, input data is composed of a frame pulse 12 that is a 1-bit pulse signal and input data 11 that is 32-bit serial data received following the frame pulse 12. It is assumed that data constitutes one frame.
[0036]
The buffer control circuit 2 includes a counter 2A and registers 2C and 2D. The frame control circuit 2 receives a frame pulse 12 and a clock signal 13 from the outside, and outputs a signal 14 to the buffer circuit 3. The signal 15 is output to the output control circuit 4.
[0037]
The counter 2 </ b> A is a counter that is reset when the frame pulse 12 is input to the reset input terminal, and performs counting of five values (32 bits) from “00000” to “11111” in synchronization with the clock signal 13. . The counter 2A outputs “0” or “1” to the signals 23, 22, 21 to thereby output the last three digits of the count value, that is, the count value from “000” to “111” to the gate 28 as needed. Output. For example, when “1” is output as the signal 23, “0” is output as the signal 22, and “0” is output as the signal 21, the last three digits of the count value are “100”.
[0038]
The gate 2B is a gate element that takes the logical sum of the signals 23, 22, and 21 input from the counter 2A and outputs the logical sum to the register 2C as the signal 24. The signals 23, 22, and 21 input from the counter 2A. Are all “1”, that is, when the count value of the counter 2A reaches “111”, “1” is output to the signal 24. If the count value of the counter 2A is any other value, “0” is output to the signal 24.
[0039]
Therefore, when the last three digits of the count value of the counter 2A are “111”, “2” is output from the gate 2B to the signal 24, and therefore “1” is output to the signal 24 every 8 bits. .
[0040]
On the other hand, since the counter 2A is a 5-value (32-bit) counter, every time the count value reaches “11111”, that is, every 32 bits after the frame pulse 12 is input, the signal 25 is the data in the register 2D. Output to the input terminal.
[0041]
The register 2C holds the data of the signal 24 input from the gate 2B at its data input terminal, and the data is synchronized with the clock signal 13 as the signal 14 at the enable signal input terminals of the registers 3B, 3C, 3D. Output. That is, the register 2C outputs the signal 24 input from the gate 2B as the signal 14 with a delay of 1 bit.
[0042]
The register 2D holds the data of the signal 25 input from the counter 2A at the data input terminal, and synchronizes with the clock signal 13 (that is, 1 bit behind the signal 25) to enable the enable signal input terminal of the register 3E, the register The signal 15 is output to the load input terminals 3F, 3G, and 3H and the output control circuit 4.
[0043]
The output control circuit 4 includes a register 4A and a counter 4B. The register 4A is set by a signal 15 input to the set input terminal from the register 2D in the buffer control circuit 2, and outputs a signal 16 to the counter 4B and the buffer circuit 3 in synchronization with the clock signal 13. The signal 42 is input from the counter 4B to the reset input terminal of the register 4A.
[0044]
The counter 4B is a binary (4-bit) counter that starts counting in synchronization with the clock signal 13 when the signal 16 from the register 4A is input to the enable signal input terminal, and the count value is set to “11”. When it reaches, the signal 42 is output to the reset input terminal of the register 4A to reset the register 4A.
[0045]
Therefore, according to the output control circuit 4, after the signal 15 is input, the count value of the counter 4B becomes “11” and the signal 42 is input to the register 4A for 4 bits. Then, the signal 16 is output.
[0046]
The buffer circuit 3 includes a first buffer unit 301 and a second buffer unit. The first buffer unit 301 includes a shift register 3A and registers 3B, 3C, and 3D, and the second buffer unit 302 includes a register It is composed of 3E, 3F, 3G, 3H.
[0047]
The shift register 3A is an 8-bit shift register that, when input data 11 that is 32-bit serial data is input, divides the data into 8 bits, converts the data into parallel conversion data, and shifts the data. The obtained parallel conversion data is output as parallel conversion data 31 to the data input terminal of the register 3B and the data input terminal of the register 3E of the second buffer unit 302.
[0048]
Each of the registers 3B, 3C, and 3D is an 8-bit register, holds data of a signal input to the data input terminal, and clocks when the signal 14 input to the enable signal input terminal is “1”. The held 8-bit data is output in synchronization with the clock signal 13 input to the input terminal.
[0049]
The register 3B holds 8 bits of the data input as the parallel conversion data 31 from the shift register 3A, and outputs it as a signal 32 to the data input terminals of the register 3C and the register 3F of the second buffer unit 302. The register 3C outputs the 8-bit data input by the signal 32 as a signal 33 to the data input terminals of the register 3D and the register 3G. Similarly, the register 3D outputs the 8-bit data input by the signal 33 as the signal 34 to the data input terminal of the register 3H of the second buffer unit. The data output by these registers 3B, 3C, 3D is executed when the signal 14 output every 8 bits by the counter 2A, the gate 2B and the register 2C is input to the enable signal input terminal.
[0050]
As described above, the parallel conversion data 31 output from the shift register 3A and the registers 3B, 3C, and 3D of the first buffer unit is input to the data input terminals of the registers 3E, 3F, 3G, and 3H of the second buffer unit 302, respectively. And signals 32, 33, and 34 are input, respectively. Then, when the signal 16 input every 32 bits from the register 4A to the enable signal input terminal is “1”, the register 3E receives the data of the parallel conversion data 31 input from the shift register 3A to the data input terminal. The signal 35 is output to the register 3F.
[0051]
The registers 3F, 3G, and 3H hold the data input to the data input terminals when the pulse of the signal 15 is input to the load signal input terminal, and the signals 16 are input to the enable signal input terminal. The data is output.
[0052]
That is, the parallel conversion data 31 and the signals 32, 33, and 34 transferred from the first buffer unit 301 to the second buffer unit 302 are transferred from the register 3E to the register 3F, from the register 3F to the register 3G, and from the register 3G to the register 3H. And transferred. Then, the signal 3 is output from the register 3H to the outside of the serial data holding circuit 1.
[0053]
3 is a timing chart showing the operation of the serial data holding circuit 1. In FIG. 3, (1) is input data 11, (2) is a frame pulse 12, (3) is a clock signal 13, (4). Is parallel conversion data 31, (5) is signal 32, (6) is signal 33, (7) is signal 34, (8) is signal 21, (9) is signal 22, (10) is signal 23, (11 ) Is signal 24, (12) is signal 25, (13) is signal 14, (14) is signal 15, (15) is signal 16, (16) is signal 42, (17) is signal 35, (18) Indicates a signal 36, (19) indicates a signal 37, and (20) indicates a signal 17.
[0054]
In the figure, a period indicated by T1 indicates one frame (32 bits) of the input data 11, and a period indicated by T2 is an 8-bit parallel conversion for peripheral devices connected to the serial data holding circuit 1. This is the period during which data is output. T3 is a period in which the input data 11 is divided every 8 bits.
[0055]
First, when a frame pulse 12 is input, input data 11 (32 bits) as serial data is input following the frame pulse 12. Then, the shift register 3A converts the input data 11 into parallel conversion data in synchronization with the clock signal 13, and outputs the parallel conversion data 31 with a delay of 1 bit from the input of the input data 11.
[0056]
On the other hand, the counter 2A starts counting in response to the input of the frame pulse 12, and the signals 23, 22, and 21 change to “0” and “1”, respectively, and sequentially change to “0, 0, 0”, “0”. , 1, 1 ”,..., During the period T1, the count value of the counter 2A is transmitted as ternary data.
[0057]
When the count value of the counter 2A reaches “111”, “1” is output to the signal 24 from the gate 2B, and “1” is output to the signal 14 by 1 bit later than the signal 24 by the register 2C. This signal 14 is input to the enable signal input terminals of the registers 3B, 3C, and 3D, and the registers 3B, 3C, and 3D start outputting signals 32, 33, and 34 in synchronization with the clock signal 13.
[0058]
That is, first, the input data 12 is converted into parallel conversion data in the shift register 3A and held in the shift register 3A. Then, the parallel conversion data 31 that is grouped by 8 bits from the shift register 3A is input to the register 3B and held (time A). The 8-bit parallel conversion data is also input to and held in the register 3E of the second buffer unit.
[0059]
Thereafter, when 8 bits have elapsed, a pulse is output to the signal 14, the first 8 bits of data held in the register 3B are transferred to the register 3C, and further, the second 8 bits held in the shift register 3A. Bit data is transferred to the registers 3B and 3E.
[0060]
When another 8 bits have elapsed, a pulse signal is output to the signal 14 again, the first 8 bits of data held in the register 3C are transferred to the register 3D, and the second 8 bits of data held in the register 3B are transferred to the register 3B. 3C, the third 8-bit data is transferred from the register 3A to the register 3B and the register 3E.
[0061]
When a pulse signal is output as the signal 14, the count value of the counter 25 reaches “11111” at the same time, and a 1-bit width pulse signal is output as the signal 15 (time B). The enable signal input terminal and the load signal input terminals of the registers 3F, 3G, and 3H are input with pulse signals, and data is transferred from each register of the first buffer unit 301 to each register of the second buffer unit.
[0062]
That is, the first 8-bit data is transferred from the register 3D to the register 3H, the second 8-bit data is transferred from the register 3C to the registers 3D and 3G, and the third 8-bit data is transferred from the register 3B to the register 3H. 3C and the register 3F are transferred, and the fourth 8-bit data is transferred from the register 3A to the register 3B and the register 3E.
[0063]
Therefore, at time B, among the 8-bit data × 4 parallel conversion data by the register 3A, the first 8-bit data is stored in the register 3H, and the second 8-bit data is stored in the registers 3D and 3G. The data is held in the registers 3C and 3F, and the fourth 8-bit data is held in the registers 3B and 3E. Therefore, when “1” is output to the signal 16 one bit after the time B and is input to the enable signal input terminals of the registers 3F, 3G, and 3H, the data held in the 3F, 3G, and 3H is sequentially transferred to the registers. At the same time, the register 3H outputs a set of 8-bit data in the order of the first 8-bit data, the second 8-bit data,.
[0064]
Therefore, during the period T2 shown in FIG. 6, parallel conversion data is output to the connected peripheral device by the signal 17 every 8 bits.
[0065]
As described above, according to the serial data holding circuit 1 according to the embodiment of the present invention, serial data constituting one frame with 32 bits is converted into parallel conversion data by the shift register 3A provided in the buffer circuit 3. The parallel conversion data is sequentially transferred by the registers 3B, 3C, 3D, 3E, 3F, 3G, and 3H every 8 bits, held in parallel, and output as the signal 17 every 8 bits. Compared with the case where the processing is executed intensively in the circuit, the delay value by the register is not concentrated, so that the delay value of the entire serial data holding circuit 1 is not increased. As a result, waste due to an increase in the delay value can be eliminated, and serial data can be efficiently converted into parallel data.
[0066]
Even when serial data with different bit lengths is handled, it is not necessary to greatly change the configuration in the buffer circuit 3, and in the buffer control circuit 2 or the output control circuit 4, for example, a timing for outputting a pulse signal to the signal 16 It is possible to cope with this by making adjustments.
[0067]
In the serial data holding circuit 1 of the above embodiment, the input data constitutes one frame with 32 bits, and this data is converted into 8-bit parallel conversion data and output. However, for example, a circuit such as a multiplexer may be provided therein, and parallel data may be output via a plurality of data buses. Also, the bit length of the data can be changed as described above. The detailed configuration can be changed as appropriate without departing from the spirit of the present invention.
[0068]
【The invention's effect】
According to the first aspect of the present invention, it is possible to transfer a plurality of data at the same time as compared with the conventional case where the received serial data is held as it is and processed into a predetermined bit length when output. Therefore, the processing speed can be increased. Also, by performing parallel processing, there is no concentration of local combinational circuits, delay values are distributed, and processing can be performed more efficiently.
[0069]
According to the second aspect of the present invention, the processing speed can be improved and the processing can be efficiently performed as compared with the case where all the serial data is received and held and then processed. For example, when referring to the CRC calculation comparison result described in the last 6 bits of the serial data, the serial data is first processed and the generated data is held in the first holding means, and the CRC calculation is performed. By referring to the comparison result and immediately transferring it to the second holding means, the processing can be performed more efficiently than when the serial data is held as it is.
[0070]
According to the invention described in claim 3, since the data held in the plurality of data holding means is transferred to the plurality of holding means, parallel processing is possible, the processing speed is improved, and the efficiency is improved. Processing can be performed.
[0071]
According to the invention described in claim 4, even when various changes are made, the period at which the first transmitting means and the second transmitting means transmit signals is changed without changing the circuit configuration. Therefore, a circuit with high flexibility can be realized.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a serial data holding circuit according to an embodiment of the present invention.
2 is a circuit diagram showing a circuit configuration of the serial data holding circuit of FIG. 1; FIG.
3 is a timing chart showing the operation of each part constituting the serial data holding circuit of FIG. 1;
FIG. 4 is a block diagram showing an example of a configuration of a conventional serial data holding circuit.
5 is a circuit diagram showing a circuit configuration of the serial data holding circuit of FIG. 4;
6 is a timing chart showing the operation of each part constituting the serial data holding circuit of FIG. 4;
[Explanation of symbols]
1 Serial data holding circuit
2 Buffer control circuit
2A counter
2B gate
2C, 2D registers
3 Buffer circuit
3A shift register
3B, 3C, 3D, 3E, 3F, 3G, 3H
register
4 Output control circuit
4A register
4B counter

Claims (4)

シリアルデータを受信し、該シリアルデータに基づいて、所定のビット長のパラレルデータを生成して出力するシリアルデータ変換装置において、前記シリアルデータを前記所定のビット長のデータに加工して保持するシリアルデータ保持回路であって、
受信した前記シリアルデータを加工して前記所定のビット長の複数のデータを生成し、該複数のデータを独立して保持する第1の保持手段と、
この第1の保持手段によって生成された前記複数のデータを保持して、前記シリアルデータに対応する順序で順次出力する第2の保持手段と、
前記第1の保持手段に保持された前記複数のデータを、同時に前記第2の保持手段に対して転送する転送手段と、
を備えることを特徴とするシリアルデータ保持回路。
A serial data converter that receives serial data, generates parallel data of a predetermined bit length based on the serial data, and outputs the parallel data. The serial data is processed into the data of the predetermined bit length and retained. A data holding circuit,
First holding means for processing the received serial data to generate a plurality of data of the predetermined bit length, and independently holding the plurality of data;
Second holding means for holding the plurality of data generated by the first holding means and sequentially outputting them in an order corresponding to the serial data;
Transfer means for simultaneously transferring the plurality of data held in the first holding means to the second holding means;
A serial data holding circuit comprising:
前記第1の保持手段は、前記シリアルデータを受信している途中において、既に受信した部分を加工して前記所定のビット長のデータを生成することが可能であること、
を特徴とする請求項1記載のシリアルデータ保持回路。
The first holding unit is capable of processing the already received part and generating the data of the predetermined bit length while receiving the serial data.
The serial data holding circuit according to claim 1.
前記第1の保持手段と、前記第2の保持手段とは、前記所定のビット長のデータをそれぞれ保持する複数のデータ保持手段を含んでなり、
前記第1の保持手段が有する前記複数のデータ保持手段と、前記第2の保持手段が有する前記複数のデータ保持手段とは、互いに対をなして1対1に接続されていて、
前記転送手段は、前記第1のデータ保持手段と前記第2のデータ保持手段との間で、互いに1対1に接続された前記データ保持手段の間において前記所定のビット長のデータを転送すること、
を特徴とする請求項1または2記載のシリアルデータ保持回路。
The first holding means and the second holding means include a plurality of data holding means for holding data of the predetermined bit length,
The plurality of data holding units included in the first holding unit and the plurality of data holding units included in the second holding unit are connected to each other in a one-to-one relationship.
The transfer unit transfers the data having the predetermined bit length between the first data holding unit and the second data holding unit between the data holding units connected to each other on a one-to-one basis. thing,
The serial data holding circuit according to claim 1 or 2, wherein:
所定の時間毎に第1のクロック信号を発信する第1の発信手段と、
この第1の発信手段とは異なる時間毎に第2のクロック信号を発信する第2の発信手段と、
を更に備え、
前記第1の保持手段は、前記第1の発信手段によって発信される前記第1のクロック信号に同期して、前記シリアルデータを加工して前記複数のデータを生成して保持し、
前記転送手段は、前記第2の発信手段によって発信される前記第2のクロック信号に基づいて、前記第1の保持手段から前記第2の保持手段に対して同時に前記複数のデータを転送すること、
を特徴とする請求項1、2または3記載のシリアルデータ保持回路。
First transmitting means for transmitting a first clock signal at predetermined time intervals;
Second transmission means for transmitting the second clock signal at different times from the first transmission means;
Further comprising
The first holding unit generates and holds the plurality of data by processing the serial data in synchronization with the first clock signal transmitted by the first transmission unit,
The transfer means transfers the plurality of data simultaneously from the first holding means to the second holding means based on the second clock signal transmitted by the second transmitting means. ,
4. The serial data holding circuit according to claim 1, 2, or 3.
JP35581797A 1997-12-24 1997-12-24 Serial data holding circuit Expired - Fee Related JP3882300B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP35581797A JP3882300B2 (en) 1997-12-24 1997-12-24 Serial data holding circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35581797A JP3882300B2 (en) 1997-12-24 1997-12-24 Serial data holding circuit

Publications (2)

Publication Number Publication Date
JPH11184672A JPH11184672A (en) 1999-07-09
JP3882300B2 true JP3882300B2 (en) 2007-02-14

Family

ID=18445907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35581797A Expired - Fee Related JP3882300B2 (en) 1997-12-24 1997-12-24 Serial data holding circuit

Country Status (1)

Country Link
JP (1) JP3882300B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6216563B2 (en) * 2013-08-06 2017-10-18 ラピスセミコンダクタ株式会社 Data output circuit, PLL device and data output method

Also Published As

Publication number Publication date
JPH11184672A (en) 1999-07-09

Similar Documents

Publication Publication Date Title
JP4098410B2 (en) Serial interface device with register for both transmission and reception
US5570356A (en) High bandwidth communications system having multiple serial links
JP3882300B2 (en) Serial data holding circuit
JP3064435B2 (en) Apparatus for doubling or halving a series of bit stream frequencies
JP3630591B2 (en) Clock transfer method and circuit
JP2019036833A (en) Signal processing apparatus and signal processing method
JPH05250316A (en) Inter-device interface system
JP2958733B2 (en) Synchronous signal transmission device
JP2944412B2 (en) Data transfer method and data transfer method
JPS59178037A (en) Phase matching circuit
JP2548709B2 (en) Multiple frame aligner
JPH03222539A (en) Start bit detection circuit
JPH0210952A (en) Serial transmission equipment
KR970002073B1 (en) Vld device using pipe line structure
JPH03258132A (en) Communication terminal equipment
KR0155718B1 (en) Apparatus for generating synchronization data
JPH04261235A (en) Communication signal multiplex system
JPH0145774B2 (en)
JPH04270521A (en) Multiplex channel receiver
JPH0744584B2 (en) Interrupt signal transmission method and device
JPS58161575A (en) Parallel-serial converting circuit
JPH08149157A (en) Serial port control method
JPH05292049A (en) Data multiplex system for multiplexer
JPH01276945A (en) Sampling distortion correction circuit
JPH05189197A (en) Signal processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040914

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041001

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050216

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061019

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061024

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061106

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees