JP2004319890A - Semiconductor circuit - Google Patents

Semiconductor circuit Download PDF

Info

Publication number
JP2004319890A
JP2004319890A JP2003114229A JP2003114229A JP2004319890A JP 2004319890 A JP2004319890 A JP 2004319890A JP 2003114229 A JP2003114229 A JP 2003114229A JP 2003114229 A JP2003114229 A JP 2003114229A JP 2004319890 A JP2004319890 A JP 2004319890A
Authority
JP
Japan
Prior art keywords
data
bus
bit
serial
delay
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
JP2003114229A
Other languages
Japanese (ja)
Inventor
Takuya Ikeda
卓也 池田
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2003114229A priority Critical patent/JP2004319890A/en
Publication of JP2004319890A publication Critical patent/JP2004319890A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To realize a semiconductor circuit wherein there are made possible the corrections of the delaying differences among its signal lines, the dealing with its circuit alterations performed without any layout alteration of its buses, the reduction of its designing load, and the prevention of its malfunctions caused by the delaying differences of its signal lines, by controlling properly the driving abilities of the buffers of its bus driving circuit in response to the delaying differences of its signal lines. <P>SOLUTION: In the semiconductor circuit, after transmitting data by a transmitting portion 12 via buses 20, the data received by a receiving portion 32 are so converted into serial data as to send back the serial data to a data transmitting portion 10 via a serial-signal line 50. Then, after comparing the transmitted data and the sent-back data with each other by a delay deciding portion 14, there are sensed the bits of signals according to the compared results whose delays are so larger than other signals in a plurality of signal lines of the buses 20 that errors are generated thereby in their transferring data. According to the sensed results, the delaying differences among the signal lines are so corrected by controlling properly the driving abilities of buffers as to be able to prevent the errors of the transferring data caused by the delaying differences. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、バスを介してデータを転送する半導体回路において、データの転送先に転送されたデータの各ビットの遅延差を検出し、当該検出結果に応じてバス駆動回路の駆動能力を制御し、ビット間の遅延差を補正する半導体回路に関するものである。
【0002】
【従来の技術】
バスを介して複数ビットからなるデータを送信する半導体回路において、バスの各信号線の配置、または信号線の間の容量結合などによって、隣接する信号線の間で異なる遅延特性が生じてしまうことがある。バスの各信号線の間の遅延差が転送信号の誤りを生じ、半導体装置の誤動作を引き起こすこともある。
【0003】
従来では、バスの隣接する配線間の容量の差異によって信号の遅延差を解消するために、バスの各信号線の配線の寸法を調整する方法、またはバスに遅延回路を設ける方法などが採用されている。
図3は、バス信号線のレイアウトの一例を示す概念図である。図示のように、信号線の間の容量結合による影響を打ち消すため、nビットの転送データに対応するn本の信号線のうち、両側の信号線が他の信号線よりわずか長めに配線されている。これは、両側の配線、即ち、図3に示す0ビットとn−1ビットに対応する信号線は、片方にのみ他の信号線が隣接して配置されているいるので、信号線間の容量結合が他の信号線に較べて小さく、このため、0ビットとn−1ビットの伝搬遅延が他のビットに較べて小さいからである。
【0004】
図3に示すように、両側の信号線が他の信号線よりわずかに長めに配線することにより、これらの信号線の遅延時間がわずかに長くなる。これによって、他の信号線の遅延時間との差が補正される。
【0005】
【特許文献1】
特開平2002−246557号公報
【特許文献2】
特許平2002−033457号公報
【0006】
【発明が解決しようとする課題】
ところで、上述した従来の半導体回路では、回路構成の変更などによってバス配線のレイアウトに変更が生じてしまう場合、各信号線の間の容量結合が変化し、各信号線の遅延特性が変わる。このため、信号線間の遅延差を補正するために、各信号線の伝搬遅延を計算し直しレイアウト設計をやり直す必要が生じる。このため、設計段階において作業負荷が大きくなり、さらに回路構成がわずかな変化でもバス信号線のレイアウトに影響を与えることがあり、配線のレイアウトが不安定になる。
【0007】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、バスの信号線に設けられている信号線駆動回路の駆動能力を信号線の遅延時間差に応じて適宜制御することによって、信号線間の遅延差を補正でき、バスのレイアウトを変更させることなく回路変更に対応することができ、設計負荷を低減させ、かつ信号線の遅延差による誤動作を防止できる半導体回路を提供することにある。
【0008】
【課題を解決するための手段】
上記目的を達成するため、本発明の半導体回路は、駆動回路を介してバスに送信データを出力する送信部と、上記バスを介して送信されたデータを受信する受信部とを含む半導体回路において、上記バスの伝搬遅延を補正する半導体回路であって、上記受信部によって受信した受信データをシリアルデータに変換して、シリアル信号線を介して上記送信部に送信するシリアル送信部と、上記シリアル送信部によって送信された上記シリアルデータを受信し、当該受信データと上記バスに出力された上記送信データとを比較し、当該比較の結果に応じて上記バスの信号線の遅延差を判断し、当該遅延差を補正するため上記駆動回路の駆動能力を制御する遅延制御部とを有する。
【0009】
また、本発明では、好適には、上記遅延制御部は、上記受信したシリアルデータと上記送信データとをビットごとに比較し、当該比較の結果に応じて、上記送信データの各ビットに対応する上記駆動回路の駆動能力を制御する。
【0010】
また、本発明では、好適には、上記遅延制御部は、上記受信したシリアルデータと上記送信データとをビットごとに比較し、当該比較結果に応じて、上記受信したシリアルデータと上記送信データのうち、値が異なるビットに対応する上記駆動回路の駆動能力を通常より大きく制御する。
【0011】
また、本発明では、好適には、上記駆動回路には、上記送信データを増幅して上記バスを構成する信号線に出力する第1のバッファと、上記第1のバッファと並列に接続され、上記遅延制御部からの制御信号に応じて動作または非動作状態に制御され、動作時に上記送信データを増幅して上記信号線に出力する第2のバッファとが上記バスの各信号線ごとに設けられている。
【0012】
さらに、本発明では、好適には、上記制御部は、上記受信したシリアルデータと上記送信データとをビットごとに比較し、当該比較結果に応じて、上記受信したシリアルデータと上記送信データのうち、値が異なるビットに対応する上記駆動回路の上記第2のバッファを動作状態に制御する。
【0013】
本発明によれば、送信部によって駆動回路を介してバスに送信データが出力され、バスを介して転送される送信データが受信部によって受信される。受信されたデータがシリアル信号線を介して上記送信部に返送される。送信部において、受信したシリアルデータと上記送信データとが比較され、当該比較結果に応じて、バスの信号線の遅延差を判断できるので、当該判断結果に基づき上記駆動回路を構成するバッファの駆動能力を適宜制御することにより、バスの信号線の間の遅延差が補正され、信号線の遅延差によって生じた転送データの誤りを防止できる。
【0014】
【発明の実施の形態】
図1は本発明に係る半導体回路の一実施形態を示す構成図である。
図示のように、本実施形態の半導体回路はデータ送信部10、バス20、データ受信部30、バス20の各信号線を駆動するバス駆動回路40、及びシリアル信号線50を有している。
【0015】
データ送信部10は、例えば、CPU(Central Processing Unit )、またはDSP(Digital Signal Processor)などの処理回路であり、データ受信部30は、例えば、CPUまたはDSPからの制御命令またはデータに応じて処理を行う周辺回路などである。バス20は、CPUまたはDSPからデータ受信部30に制御命令またはデータを転送するための信号線からなり、転送するデータのビット数に応じて、複数本の信号線が設けられている。
【0016】
以下、図1を参照しつつ、本実施形態の半導体回路の各構成部分について説明する。
まず、データ送信部10の各構成部分について説明する。
図1に示すように、データ送信部10は、送信部12、遅延制御部14、レジスタ16、及びシリアル受信部18を有し、データ受信部30は、受信部32とシリアル転送部34とを有している。
【0017】
送信部12は、制御命令またはデータをバス駆動回路40を介して、バス20に出力する。送信部12によって出力される制御命令またはデータがバス20を介してデータ受信部30に転送される。
【0018】
遅延制御部14は、送信部12によってバス20に送信したデータと、シリアル受信部18によって受信したデータとを比較し、当該比較の結果に応じて、データ受信部30に転送された複数ビットのデータのうち、他のビットより遅延が大きく、それによって受信データに誤りが生じたビットを判断する。当該判断の結果に従って、遅延制御データD14を生成し、レジスタ16に出力する。
【0019】
レジスタ16は、遅延制御部14から入力される遅延補正データD14を保持し、保持したデータをバス駆動回路40の各バッファに出力する。これに応じて、バス駆動回路40の各バッファの駆動能力が制御されるので、他の信号線より遅延時間が大きく、データ受信部30に到達したとき遅延差により誤りが生じたビットを伝搬する信号線に対応するバッファの駆動能力を大きく制御することによって、他の信号線との遅延差を補正でき、遅延差による伝搬誤差を回避する。
【0020】
シリアル受信部18は、シリアル信号線50を介して転送されてきたシリアルデータを受信し、受信データを遅延制御部14に出力する。
【0021】
バス20は、nビット(nは整数、n≧1)のデータを転送するためのn本の信号線からなる。
【0022】
次に、データ受信部30の各構成部分について説明する。
図1に示すように、データ受信部30は、受信部32とシリアル転送部34を有している。
【0023】
受信部32は、バス20を介して入力されたデータを受信する。そして、受信部32は受信したデータをシリアル転送部34に出力する。
シリアル転送部34は、受信部32によって受信したデータをシリアルデータに変換して、シリアル信号線50を介してデータ送信部10に送信する。
【0024】
本実施形態の遅延制御回路において、データ受信部30では、受信部32によって受信したデータをシリアルデータに変換して、シリアル信号線50を介してデータ送信部10に送信するので、バスを用いる並列のデータ転送に較べて、信号線の遅延特性の差によって生じる誤りを回避できる。このため、データ送信部10の遅延制御部14において、データ受信部30に到達したデータと同一のデータを用いてバス20の各信号線の遅延差を判断することができ、当該判断の結果に従って遅延補正データD14を生成して、レジスタ16に出力する。これによって、バス20の各信号線の遅延差を正しく判断でき、判断結果に基づきバス信号線の遅延差による影響を回避でき、バス20によるデータ転送の信頼性を改善できる。
【0025】
次いで、バス駆動回路40の構成について説明する。
バス駆動回路40は、図示のようにバス20の各信号線に設けられているn個のバッファ40−1,40−2,…,40−nからなる。バス駆動回路40に設けられているそれぞれのバッファは、データ送信部10のレジスタ16からの制御データDC−1,DC−2,…,DC−nによって駆動能力が制御される。
【0026】
バス駆動回路40を構成するバッファ40−1,40−2,…,40−nは同じ構成を有しているので、ここで、バッファ40−1を例にその構成についてさらに詳しく説明する。
【0027】
図2は、バッファ40−1の一構成例を示す回路図である。
図示のように、バッファ40−1は、インバータ42、制御データDC−1によって動作または非動作状態に制御されるインバータ44、及び制御データDC−1の論理反転データをインバータ44に供給するインバータ46を有している。
【0028】
インバータ42は、図2に示すように、pMOSトランジスタP1とnMOSトランジスタN1によって構成されているMOSインバータである。インバータ42の入力端子が図1に示す送信部12の出力端子に接続され、その出力端子がバス20の信号線20−1に接続されている。
【0029】
インバータ44は、図示のように、pMOSトランジスタP2,P3及びnMOSトランジスタN2,N3によって構成されている。pMOSトランジスタP2とnMOSトランジスタN2のゲート同士が共通に接続され、当該接続点がインバータ44の入力端子を形成する。また、pMOSトランジスタP2とnMOSトランジスタN2のドレイン同士が共通に接続され、当該接続点がインバータ44の出力端子を形成する。
図2に示すように、インバータ44の入力端子は、インバータ42の入力端子に接続され、インバータ44の出力端子は、インバータ42の出力端子に接続されている。即ち、インバータ44と42が並列に接続されている。
【0030】
pMOSトランジスタP3は、pMOSトランジスタP2と電源電圧VDDの供給端子との間に接続され、nMOSトランジスタN3は、nMOSトランジスタN2と接地電位との間に接続されている。pMOSトランジスタP3のゲートがレジスタ16に接続され、nMOSトランジスタN3のゲートがインバータ46の出力端子に接続され、インバータ46の入力端子がレジスタ16に接続されている。
【0031】
このため、トランジスタP3とN3は、レジスタ16に保持されている制御データDC−1によって導通または遮断状態に制御される。例えば、レジスタ16に保持されている制御データDC−1が0のとき、トランジスタP3のゲートがローレベルに保持され、トランジスタN3のゲートがハイレベルに保持されるので、トランジスタP3とN3がともに導通状態にあり、インバータ44が動作状態に制御される。逆に、レジスタ16に保持されている制御データDC−1が1のとき、トランジスタP3のゲートがハイレベルに保持され、トランジスタN3のゲートがローレベルに保持されるので、トランジスタP3とN3がともに遮断状態にあり、インバータ44が非動作状態に制御される。
【0032】
インバータ44が動作状態にあるとき、バッファ40−1は、並列に接続されている二つのインバータ42と44によって形成され、その駆動能力が大きく制御され、バス20の信号線20−1に転送されるデータの遅延が小さく制御される。一方、インバータ44が非動作状態にあるとき、バッファ40−1は、インバータ42のみで形成され、その駆動能力が小さく制御され、信号線20−1に転送されるデータの遅延が大きくなる。
【0033】
上述のように、レジスタ16に保持されている制御データDC−1に応じて、バッファ40−1の駆動能力が制御される。
本実施形態の遅延制御回路において、バス駆動回路40は、バス20の信号線の本数に応じて設けられているn個のバッファ40−1,40−2,…,40−nによって構成されている。このため、レジスタ16に、例えばnビットの制御データDC−1,DC−2,…,DC−nを格納することによって、バス駆動回路40のすべてのバッファをそれぞれ独立に制御することができる。
【0034】
次に、上述した構成を有する本実施形態の半導体回路の動作について説明する。
半導体回路において、データ送信部10の送信部12によって出力される送信データがバス駆動回路40を介してバス20に出力される。そして、バス20によって送信データがデータ受信部30に転送される。データ受信部30において、受信部32によってバス20を介して転送されてきたデータが受信され、受信データがシリアル転送部34に出力される。
【0035】
シリアル転送部34において、受信部32によって受信したデータがシリアルデータに変換され、シリアル信号線50を介してデータ送信部10に返送される。データ送信部10において、シリアル受信部18によって、シリアル信号線50によって転送されてきたシリアルデータが受信され、これがパラレルのデータに変換され、遅延制御部14に出力される。
【0036】
遅延制御部14において、送信部12によってバス20に送信したデータとシリアル受信部18から入力したデータと比較される。当該比較の結果、両方のデータが一致している場合、バス20の各信号線の伝搬遅延特性がほぼ一致し、データ送信部10によって送信したデータがバス20を介して正しくデータ受信部30に伝搬されたことが分かる。この場合、バス駆動回路40のすべてのバッファに通常の駆動能力をもつように遅延制御データD14を生成し、レジスタ16に書き込む。このとき、バッファ16のすべてのビットが、例えば、1に設定される。これに応じて、それぞれのバッファ40−1,40−2,…40−nのうち、図2に示すインバータ42のみが動作し、インバータ44が非動作状態に制御される。
【0037】
一方、遅延制御回路14による比較の結果、送信部12によって送信したデータとシリアル受信部18によって受信したデータが一致しないとき、両方のデータが異なるビットを検出することによって、バス20によって転送されたnビットのデータのうち、信号線の遅延差によって誤りが生じたビットを判断することができる。この判断結果に基づいて、バス20のn本の信号線のうち他の信号線よりも伝搬遅延が大きい信号線を判断できる。このため、これらの信号線にデータを出力するバッファの駆動能力を大きく制御することによって、バス20の信号線の間の遅延差を補正でき、データ受信部30に到達したデータに生じた誤りを防止できる。
【0038】
具体的に、例えば、遅延制御回路14において、比較の結果、送信部12の送信データとシリアル受信部18の受信データとの間で、異なるビットが検出されたとき、そのビットに対応した遅延制御データD14のビットを0に設定し、それ以外のビットを1に設定する。制御データD14がレジスタ16に出力され、レジスタ16に保持される。そして、レジスタ16に保持されている遅延制御データD14に応じて、バス駆動回路40のn個のバッファがそれぞれ制御される。例えば、遅延制御データD14のうち、1となるビットに対応したバッファのうち、一つのインバータ(図2に示すインバータ42に相当するもの)のみが動作し、一方、遅延制御データD14のうち、0となるビットに対応したバッファにおいて両方のインバータ(図2に示すインバータ42と44に相当するもの)がともに動作するので、その駆動能力がインバータ一つのみ動作するバッファに較べて大きく制御される。このため、信号線の間の遅延差が保持され、当該遅延差によって生じた転送データの誤りを防止できる。
【0039】
以上説明したように、本実施形態の半導体回路において、データ送信部10の送信部12によってバス20を介してデータを送信し、データ受信部30の受信部32によって受信したデータがシリアルデータに変換され、シリアル信号線50を介してデータ送信部10に返送される。データ送信部10の遅延判断部14によって、送信部12の送信データと返送されたデータとを比較し、当該比較の結果に従ってバス20の複数の信号線のうち、他の信号より遅延が大きく、それによって伝搬されたデータに誤りが生じたビットが検出される。当該検出の結果に従って、バス駆動回路40のそれぞれのバッファの駆動能力を適宜制御すれば、バス20の信号線の間の遅延差を補正することができ、遅延差によって生じた転送データの誤りを防止できる。
【0040】
なお、上述した遅延判断及び当該判断結果に応じた遅延補正の処理は、すべてのバスに対して所定の時間間隔で行うか、または回路の所定の動作時間、例えば、電源投入後初期化のときに行うことによって、回路の動作状態に応じてバスの遅延特性の変化を逐一把握でき、それに従ってバス駆動回路のそれぞれのバッファの駆動能力が適宜制御することによって、バスの信号線の間の遅延差を常に最小となるように制御することができ、遅延差によって生じた転送データの誤りを防止できる。
【0041】
【発明の効果】
以上説明したように、本発明の半導体回路によれば、バスの信号線の遅延差を検出し、検出の結果に基づきバス駆動回路のバッファの駆動能力を適宜制御することによって、信号線の遅延差を補正でき、それによって生じたデータの誤りを防止できる利点がある。
また、本発明の半導体回路によれば、バスの遅延差の経時的な変化にも対応でき、半導体回路の使用状況などによってバスの遅延特性が変化しても、遅延特性の変化を逐一判断することができ、それに応じてバス駆動回路のバッファの駆動能力を適宜制御することで、遅延特性の変化を補正でき、バスの遅延特性の変化によって生じるデータの誤差を防止できる。
【図面の簡単な説明】
【図1】本発明に係る半導体回路の一実施形態を示す構成図である。
【図2】本実施形態の半導体回路を構成するバッファの一例を示す回路図である。
【図3】従来のバスのレイアウトを示す図である。
【符号の説明】
10…データ送信部、12…送信部、14…遅延制御部、16…レジスタ、18…シリアル受信部、
20…バス、20−1,20−2,…,20−n…バスの信号線
30…データ受信部、32…受信部、34…シリアル転送部、
40…バス駆動回路、40−1,40−2,…,40−n…バッファ、
50…シリアル信号線。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention detects a delay difference of each bit of data transferred to a data transfer destination in a semiconductor circuit that transfers data via a bus, and controls a driving capability of a bus drive circuit in accordance with the detection result. And a semiconductor circuit for correcting a delay difference between bits.
[0002]
[Prior art]
In a semiconductor circuit that transmits data consisting of a plurality of bits via a bus, different delay characteristics may occur between adjacent signal lines due to the arrangement of each signal line of the bus or capacitive coupling between the signal lines. There is. The delay difference between the signal lines of the bus may cause an error in the transfer signal, which may cause a malfunction of the semiconductor device.
[0003]
Conventionally, in order to eliminate a signal delay difference due to a difference in capacitance between adjacent wirings of a bus, a method of adjusting wiring dimensions of each signal line of the bus or a method of providing a delay circuit in the bus has been adopted. ing.
FIG. 3 is a conceptual diagram showing an example of a layout of a bus signal line. As shown in the figure, in order to cancel the influence of the capacitive coupling between the signal lines, of the n signal lines corresponding to the n-bit transfer data, the signal lines on both sides are arranged slightly longer than the other signal lines. I have. This is because the wirings on both sides, that is, the signal lines corresponding to the 0-bit and the (n-1) -th bits shown in FIG. This is because the coupling is smaller than the other signal lines, and therefore, the propagation delay of the 0-bit and the (n-1) -bit is smaller than the other bits.
[0004]
As shown in FIG. 3, by arranging the signal lines on both sides slightly longer than the other signal lines, the delay time of these signal lines becomes slightly longer. Thereby, the difference from the delay time of the other signal lines is corrected.
[0005]
[Patent Document 1]
JP-A-2002-246557 [Patent Document 2]
Japanese Patent Application Laid-Open No. 2002-033457
[Problems to be solved by the invention]
By the way, in the above-described conventional semiconductor circuit, when the layout of the bus wiring changes due to a change in the circuit configuration or the like, the capacitive coupling between the signal lines changes, and the delay characteristics of the signal lines change. For this reason, in order to correct the delay difference between the signal lines, it is necessary to recalculate the propagation delay of each signal line and redesign the layout. For this reason, the work load increases in the design stage, and even a slight change in the circuit configuration may affect the layout of the bus signal lines, and the wiring layout becomes unstable.
[0007]
The present invention has been made in view of such circumstances, and an object of the present invention is to appropriately control the driving capability of a signal line driving circuit provided in a signal line of a bus according to a delay time difference between signal lines. To provide a semiconductor circuit capable of correcting a delay difference between signal lines, adapting to a circuit change without changing a bus layout, reducing a design load, and preventing a malfunction due to a signal line delay difference. It is in.
[0008]
[Means for Solving the Problems]
In order to achieve the above object, a semiconductor circuit of the present invention is a semiconductor circuit including a transmitting unit that outputs transmission data to a bus via a driving circuit, and a receiving unit that receives data transmitted through the bus. A semiconductor circuit that corrects a propagation delay of the bus, converts a reception data received by the reception unit to serial data, and transmits the serial data to the transmission unit via a serial signal line; Receiving the serial data transmitted by the transmitting unit, comparing the received data with the transmission data output to the bus, and determining a delay difference of the signal line of the bus according to a result of the comparison; A delay control unit that controls the driving capability of the drive circuit to correct the delay difference.
[0009]
In the present invention, preferably, the delay control unit compares the received serial data and the transmission data bit by bit, and corresponds to each bit of the transmission data according to a result of the comparison. The driving capability of the driving circuit is controlled.
[0010]
In the present invention, preferably, the delay control unit compares the received serial data and the transmission data bit by bit, and according to the comparison result, compares the received serial data with the transmission data. The driving capability of the driving circuit corresponding to the bit having a different value is controlled to be larger than usual.
[0011]
In the present invention, preferably, the drive circuit is connected to a first buffer that amplifies the transmission data and outputs the amplified data to a signal line configuring the bus, and is connected in parallel with the first buffer. A second buffer is provided for each signal line of the bus, the second buffer being controlled to operate or not operate in response to a control signal from the delay control unit, and amplifying the transmission data during operation and outputting the amplified signal to the signal line. Have been.
[0012]
Further, in the present invention, preferably, the control unit compares the received serial data and the transmission data bit by bit, and according to a result of the comparison, among the received serial data and the transmission data, , The second buffer of the drive circuit corresponding to the bit having a different value is controlled to an operating state.
[0013]
According to the present invention, transmission data is output to the bus via the drive circuit by the transmission unit, and transmission data transferred via the bus is received by the reception unit. The received data is returned to the transmission unit via a serial signal line. In the transmission unit, the received serial data is compared with the transmission data, and a delay difference between the signal lines of the bus can be determined according to the comparison result. Based on the determination result, the driving of the buffer configuring the driving circuit is performed. By appropriately controlling the capability, the delay difference between the signal lines of the bus is corrected, and the transfer data error caused by the signal line delay difference can be prevented.
[0014]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a configuration diagram showing one embodiment of a semiconductor circuit according to the present invention.
As illustrated, the semiconductor circuit of the present embodiment includes a data transmission unit 10, a bus 20, a data reception unit 30, a bus driving circuit 40 for driving each signal line of the bus 20, and a serial signal line 50.
[0015]
The data transmitting unit 10 is, for example, a processing circuit such as a CPU (Central Processing Unit) or a DSP (Digital Signal Processor), and the data receiving unit 30 performs processing in response to, for example, a control command or data from the CPU or the DSP. Peripheral circuit for performing the above. The bus 20 includes signal lines for transferring control commands or data from the CPU or DSP to the data receiving unit 30, and a plurality of signal lines are provided according to the number of bits of data to be transferred.
[0016]
Hereinafter, each component of the semiconductor circuit of the present embodiment will be described with reference to FIG.
First, each component of the data transmission unit 10 will be described.
As shown in FIG. 1, the data transmission unit 10 includes a transmission unit 12, a delay control unit 14, a register 16, and a serial reception unit 18. The data reception unit 30 includes a reception unit 32 and a serial transfer unit 34. Have.
[0017]
The transmission unit 12 outputs a control command or data to the bus 20 via the bus driving circuit 40. The control command or data output by the transmission unit 12 is transferred to the data reception unit 30 via the bus 20.
[0018]
The delay control unit 14 compares the data transmitted to the bus 20 by the transmission unit 12 with the data received by the serial reception unit 18, and, based on the result of the comparison, transmits the data of the plurality of bits transferred to the data reception unit 30. Of the data, a bit having a longer delay than the other bits and thereby causing an error in the received data is determined. According to the result of the determination, the delay control data D14 is generated and output to the register 16.
[0019]
The register 16 holds the delay correction data D14 input from the delay control unit 14, and outputs the held data to each buffer of the bus drive circuit 40. In response to this, the driving capability of each buffer of the bus driving circuit 40 is controlled, so that the delay time is longer than that of the other signal lines. By largely controlling the driving capability of the buffer corresponding to the signal line, a delay difference from another signal line can be corrected, and a propagation error due to the delay difference is avoided.
[0020]
The serial receiving section 18 receives the serial data transferred via the serial signal line 50 and outputs the received data to the delay control section 14.
[0021]
The bus 20 includes n signal lines for transferring data of n bits (n is an integer, n ≧ 1).
[0022]
Next, each component of the data receiving unit 30 will be described.
As shown in FIG. 1, the data receiving unit 30 includes a receiving unit 32 and a serial transfer unit 34.
[0023]
The receiving unit 32 receives data input via the bus 20. Then, the receiving unit 32 outputs the received data to the serial transfer unit 34.
The serial transfer unit 34 converts the data received by the reception unit 32 into serial data, and transmits the serial data to the data transmission unit 10 via the serial signal line 50.
[0024]
In the delay control circuit of the present embodiment, the data receiving unit 30 converts the data received by the receiving unit 32 into serial data and transmits the serial data to the data transmitting unit 10 via the serial signal line 50. As compared with the data transfer of the above, an error caused by the difference in the delay characteristics of the signal lines can be avoided. For this reason, the delay control unit 14 of the data transmission unit 10 can determine the delay difference between the signal lines of the bus 20 using the same data as the data that has reached the data reception unit 30, and according to the result of the determination, The delay correction data D14 is generated and output to the register 16. Thus, the delay difference between the signal lines of the bus 20 can be correctly determined, the influence of the delay difference between the bus signal lines can be avoided based on the determination result, and the reliability of data transfer by the bus 20 can be improved.
[0025]
Next, the configuration of the bus drive circuit 40 will be described.
The bus drive circuit 40 includes n buffers 40-1, 40-2,..., 40-n provided on each signal line of the bus 20 as shown. Each of the buffers provided in the bus drive circuit 40 has its drive capability controlled by control data DC-1, DC-2,..., DC-n from the register 16 of the data transmission unit 10.
[0026]
Since the buffers 40-1, 40-2,..., 40-n that constitute the bus drive circuit 40 have the same configuration, the configuration will be described in further detail with the buffer 40-1 as an example.
[0027]
FIG. 2 is a circuit diagram showing a configuration example of the buffer 40-1.
As shown in the drawing, the buffer 40-1 includes an inverter 42, an inverter 44 that is controlled to be in an operation state or a non-operation state by the control data DC-1, and an inverter 46 that supplies logically inverted data of the control data DC-1 to the inverter 44. have.
[0028]
The inverter 42 is a MOS inverter configured by a pMOS transistor P1 and an nMOS transistor N1, as shown in FIG. The input terminal of the inverter 42 is connected to the output terminal of the transmission unit 12 shown in FIG. 1, and the output terminal is connected to the signal line 20-1 of the bus 20.
[0029]
The inverter 44 includes pMOS transistors P2 and P3 and nMOS transistors N2 and N3 as shown. The gates of the pMOS transistor P2 and the nMOS transistor N2 are commonly connected, and the connection point forms an input terminal of the inverter 44. The drains of the pMOS transistor P2 and the nMOS transistor N2 are commonly connected, and the connection point forms an output terminal of the inverter 44.
As shown in FIG. 2, the input terminal of the inverter 44 is connected to the input terminal of the inverter 42, and the output terminal of the inverter 44 is connected to the output terminal of the inverter 42. That is, the inverters 44 and 42 are connected in parallel.
[0030]
The pMOS transistor P3 is connected between the pMOS transistor P2 and a supply terminal of the power supply voltage VDD , and the nMOS transistor N3 is connected between the nMOS transistor N2 and the ground potential. The gate of the pMOS transistor P3 is connected to the register 16, the gate of the nMOS transistor N3 is connected to the output terminal of the inverter 46, and the input terminal of the inverter 46 is connected to the register 16.
[0031]
Therefore, the transistors P3 and N3 are controlled to be conductive or cut-off by the control data DC-1 stored in the register 16. For example, when the control data DC-1 held in the register 16 is 0, the gate of the transistor P3 is held at a low level and the gate of the transistor N3 is held at a high level, so that both the transistors P3 and N3 are conductive. State, and the inverter 44 is controlled to the operating state. Conversely, when the control data DC-1 held in the register 16 is 1, the gate of the transistor P3 is held at a high level and the gate of the transistor N3 is held at a low level. In the cutoff state, the inverter 44 is controlled to be in a non-operation state.
[0032]
When the inverter 44 is in operation, the buffer 40-1 is formed by two inverters 42 and 44 connected in parallel, the driving capability of which is largely controlled and transferred to the signal line 20-1 of the bus 20. Data delay is controlled to be small. On the other hand, when inverter 44 is in a non-operating state, buffer 40-1 is formed of only inverter 42, its driving capability is controlled to be small, and the delay of data transferred to signal line 20-1 increases.
[0033]
As described above, the drive capability of the buffer 40-1 is controlled according to the control data DC-1 held in the register 16.
In the delay control circuit of the present embodiment, the bus drive circuit 40 is configured by n buffers 40-1, 40-2,..., 40-n provided according to the number of signal lines of the bus 20. I have. Therefore, all buffers of the bus drive circuit 40 can be independently controlled by storing, for example, n-bit control data DC-1, DC-2,..., DC-n in the register 16.
[0034]
Next, the operation of the semiconductor circuit of the present embodiment having the above-described configuration will be described.
In the semiconductor circuit, transmission data output by the transmission unit 12 of the data transmission unit 10 is output to the bus 20 via the bus drive circuit 40. Then, the transmission data is transferred to the data receiving unit 30 by the bus 20. The data receiving unit 30 receives the data transferred by the receiving unit 32 via the bus 20, and outputs the received data to the serial transfer unit 34.
[0035]
In the serial transfer unit 34, the data received by the receiving unit 32 is converted into serial data, and is returned to the data transmitting unit 10 via the serial signal line 50. In the data transmission unit 10, the serial data transferred by the serial signal line 50 is received by the serial reception unit 18, converted into parallel data, and output to the delay control unit 14.
[0036]
In the delay control unit 14, the data transmitted to the bus 20 by the transmission unit 12 is compared with the data input from the serial reception unit 18. As a result of the comparison, when both data match, the propagation delay characteristics of each signal line of the bus 20 substantially match, and the data transmitted by the data transmitting unit 10 is correctly transmitted to the data receiving unit 30 via the bus 20. It can be seen that it has been propagated. In this case, the delay control data D14 is generated so that all the buffers of the bus drive circuit 40 have the normal driving capability, and the delay control data D14 is written into the register 16. At this time, all bits of the buffer 16 are set to, for example, 1. In response, only the inverter 42 shown in FIG. 2 among the buffers 40-1, 40-2,..., 40-n operates, and the inverter 44 is controlled to a non-operating state.
[0037]
On the other hand, as a result of the comparison by the delay control circuit 14, when the data transmitted by the transmission unit 12 and the data received by the serial reception unit 18 do not match, both data are transferred by the bus 20 by detecting different bits. Of the n-bit data, a bit in which an error has occurred due to the delay difference of the signal line can be determined. Based on this determination result, it is possible to determine which of the n signal lines of the bus 20 has a longer propagation delay than the other signal lines. Therefore, by largely controlling the driving capability of the buffer that outputs data to these signal lines, the delay difference between the signal lines of the bus 20 can be corrected, and errors occurring in the data reaching the data receiving unit 30 can be corrected. Can be prevented.
[0038]
Specifically, for example, when the delay control circuit 14 detects a different bit between the transmission data of the transmission unit 12 and the reception data of the serial reception unit 18 as a result of the comparison, the delay control circuit 14 The bit of the data D14 is set to 0, and the other bits are set to 1. The control data D14 is output to the register 16, and is held in the register 16. Then, the n buffers of the bus drive circuit 40 are controlled in accordance with the delay control data D14 held in the register 16, respectively. For example, in the buffer corresponding to the bit of 1 in the delay control data D14, only one inverter (corresponding to the inverter 42 shown in FIG. 2) operates, while, in the delay control data D14, 0 Since both the inverters (corresponding to the inverters 42 and 44 shown in FIG. 2) operate in the buffer corresponding to the following bit, the driving capability is controlled to be larger than that of the buffer in which only one inverter operates. For this reason, the delay difference between the signal lines is maintained, and transfer data errors caused by the delay difference can be prevented.
[0039]
As described above, in the semiconductor circuit of the present embodiment, the data is transmitted by the transmission unit 12 of the data transmission unit 10 via the bus 20 and the data received by the reception unit 32 of the data reception unit 30 is converted into serial data. Then, the data is returned to the data transmission unit 10 via the serial signal line 50. The transmission data of the transmission unit 12 and the returned data are compared by the delay determination unit 14 of the data transmission unit 10, and the delay is larger than other signals among the plurality of signal lines of the bus 20 according to the comparison result. As a result, an erroneous bit is detected in the transmitted data. By appropriately controlling the driving capability of each buffer of the bus driving circuit 40 according to the result of the detection, the delay difference between the signal lines of the bus 20 can be corrected, and the transfer data error caused by the delay difference can be corrected. Can be prevented.
[0040]
It should be noted that the above-described delay determination and delay correction processing according to the determination result are performed for all buses at predetermined time intervals, or when a predetermined operation time of the circuit, for example, after power-on and initialization. In this way, the change in the delay characteristic of the bus can be grasped one by one according to the operation state of the circuit, and the driving capability of each buffer of the bus drive circuit is appropriately controlled in accordance with the change, whereby the delay between the signal lines of the bus is controlled. The difference can always be controlled to be minimized, and errors in transfer data caused by the delay difference can be prevented.
[0041]
【The invention's effect】
As described above, according to the semiconductor circuit of the present invention, the delay difference of the signal line of the bus is detected, and the driving capability of the buffer of the bus drive circuit is appropriately controlled based on the result of the detection. There is an advantage that the difference can be corrected and the resulting data error can be prevented.
Further, according to the semiconductor circuit of the present invention, it is possible to cope with the temporal change of the delay difference of the bus, and even if the delay characteristic of the bus changes due to the use condition of the semiconductor circuit, etc., the change of the delay characteristic is judged one by one. By appropriately controlling the driving capability of the buffer of the bus drive circuit in response to the change, the change in the delay characteristic can be corrected, and the data error caused by the change in the bus delay characteristic can be prevented.
[Brief description of the drawings]
FIG. 1 is a configuration diagram showing one embodiment of a semiconductor circuit according to the present invention.
FIG. 2 is a circuit diagram illustrating an example of a buffer included in the semiconductor circuit according to the embodiment;
FIG. 3 is a diagram showing a layout of a conventional bus.
[Explanation of symbols]
10 data transmission unit, 12 transmission unit, 14 delay control unit, 16 register, 18 serial reception unit,
20, a bus, 20-1, 20-2,..., 20-n a bus signal line 30 a data receiving section, 32 a receiving section, 34 a serial transfer section,
40 bus drive circuits, 40-1, 40-2, ..., 40-n buffers
50 ... Serial signal line.

Claims (5)

駆動回路を介してバスに送信データを出力する送信部と、上記バスを介して送信されたデータを受信する受信部とを含む半導体回路において、上記バスの伝搬遅延を補正する半導体回路であって、
上記受信部によって受信した受信データをシリアルデータに変換して、シリアル信号線を介して上記送信部に送信するシリアル送信部と、
上記シリアル送信部によって送信された上記シリアルデータを受信し、当該受信データと上記バスに出力された上記送信データとを比較し、当該比較の結果に応じて上記バスの信号線の遅延差を判断し、当該遅延差を補正するため上記駆動回路の駆動能力を制御する遅延制御部と
を有する半導体回路。
A semiconductor circuit including a transmission unit that outputs transmission data to a bus via a driving circuit and a reception unit that receives data transmitted through the bus, wherein the semiconductor circuit corrects a propagation delay of the bus. ,
A serial transmission unit that converts reception data received by the reception unit into serial data and transmits the serial data to the transmission unit via a serial signal line,
Receiving the serial data transmitted by the serial transmission unit, comparing the received data with the transmission data output to the bus, and determining a delay difference between signal lines of the bus according to a result of the comparison; And a delay control unit for controlling the drive capability of the drive circuit to correct the delay difference.
上記遅延制御部は、上記受信したシリアルデータと上記送信データとをビットごとに比較し、当該比較の結果に応じて、上記送信データの各ビットに対応する上記駆動回路の駆動能力を制御する
請求項1記載の半導体回路。
The delay control unit compares the received serial data and the transmission data bit by bit, and controls a driving capability of the driving circuit corresponding to each bit of the transmission data according to a result of the comparison. Item 2. The semiconductor circuit according to item 1.
上記遅延制御部は、上記受信したシリアルデータと上記送信データとをビットごとに比較し、当該比較結果に応じて、上記受信したシリアルデータと上記送信データのうち、値が異なるビットに対応する上記駆動回路の駆動能力を通常より大きく制御する
請求項2記載の半導体回路。
The delay control unit compares the received serial data and the transmission data bit by bit, and according to a result of the comparison, among the received serial data and the transmission data, a bit corresponding to a bit having a different value. 3. The semiconductor circuit according to claim 2, wherein the driving capability of the driving circuit is controlled to be larger than usual.
上記駆動回路は、上記送信データを増幅して上記バスを構成する信号線に出力する第1のバッファと、
上記第1のバッファと並列に接続され、上記遅延制御部からの制御信号に応じて動作または非動作状態に制御され、動作時に上記送信データを増幅して上記信号線に出力する第2のバッファと
が上記バスの各信号線ごとに設けられている
請求項1記載の半導体回路。
A first buffer configured to amplify the transmission data and output the amplified signal to a signal line configuring the bus;
A second buffer that is connected in parallel with the first buffer, is controlled to operate or not operate according to a control signal from the delay control unit, and amplifies the transmission data during operation and outputs the amplified data to the signal line; 2. The semiconductor circuit according to claim 1, wherein the circuit is provided for each signal line of the bus.
上記制御部は、上記受信したシリアルデータと上記送信データとをビットごとに比較し、当該比較結果に応じて、上記受信したシリアルデータと上記送信データのうち、値が異なるビットに対応する上記駆動回路の上記第2のバッファを動作状態に制御する
請求項4記載の半導体回路。
The control unit compares the received serial data and the transmission data bit by bit, and, according to a result of the comparison, among the received serial data and the transmission data, the drive corresponding to a bit having a different value. 5. The semiconductor circuit according to claim 4, wherein said second buffer of said circuit is controlled to an operating state.
JP2003114229A 2003-04-18 2003-04-18 Semiconductor circuit Pending JP2004319890A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003114229A JP2004319890A (en) 2003-04-18 2003-04-18 Semiconductor circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003114229A JP2004319890A (en) 2003-04-18 2003-04-18 Semiconductor circuit

Publications (1)

Publication Number Publication Date
JP2004319890A true JP2004319890A (en) 2004-11-11

Family

ID=33473890

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003114229A Pending JP2004319890A (en) 2003-04-18 2003-04-18 Semiconductor circuit

Country Status (1)

Country Link
JP (1) JP2004319890A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009158081A (en) * 2007-12-27 2009-07-16 Dongbu Hitek Co Ltd Apparatus for testing memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009158081A (en) * 2007-12-27 2009-07-16 Dongbu Hitek Co Ltd Apparatus for testing memory device

Similar Documents

Publication Publication Date Title
JP2650113B2 (en) Integrated circuit chip and its operating speed detecting method
US7843224B2 (en) Interface circuit that can switch between single-ended transmission and differential transmission
US20060095592A1 (en) Multi-channel memory architecture for daisy chained arrangements of nodes with bridging between memory channels
US20070229124A1 (en) Driving circuit
KR100605601B1 (en) Semiconductor memory device with on die termination circuit for reducing switching noise
KR100752650B1 (en) Tri-state output driver arranging method and semiconductor memory device using the same
JP2005304025A (en) Integrated circuit device, high speed output circuit, high speed input circuit, and method for changing swing width of input/output signal
US7352227B2 (en) Semiconductor device having plurality of circuits belonging to different voltage domains
JP4882584B2 (en) I / O circuit
US7688104B2 (en) On-die termination device to compensate for a change in an external voltage
US7728644B2 (en) Skew compensation circuit
US7843219B2 (en) XOR logic circuit
JP4888562B2 (en) MEMORY CIRCUIT AND MEMORY CIRCUIT DATA WRITE / READ METHOD
JP2004319890A (en) Semiconductor circuit
US20110074484A1 (en) Signal input circuit and semiconductor device having the same
JPH11264860A (en) Output circuit of semiconductor device with test mode
US7773449B2 (en) Apparatus and method of controlling bank of semiconductor memory
US6167321A (en) Interface module with protection circuit and method of protecting an interface
US7054220B2 (en) Memory device having repeaters
JPH10177439A (en) Data wiring malfunction preventing circuit and semiconductor integrated circuit
US20070229132A1 (en) Scannable domino latch redundancy for soft error rate protection with collision avoidance
US5418935A (en) Apparatus for preventing double drive occurrences on a common bus by delaying enablement of one driver after indication of disablement to other driver is received
US7183803B2 (en) Input device for a semiconductor device
JP2007527066A (en) Transmission module, reception module, system, and method
JP2820062B2 (en) Semiconductor integrated circuit and printed circuit board on which this circuit is mounted