JP2006332919A - 半導体集積回路 - Google Patents
半導体集積回路 Download PDFInfo
- Publication number
- JP2006332919A JP2006332919A JP2005151749A JP2005151749A JP2006332919A JP 2006332919 A JP2006332919 A JP 2006332919A JP 2005151749 A JP2005151749 A JP 2005151749A JP 2005151749 A JP2005151749 A JP 2005151749A JP 2006332919 A JP2006332919 A JP 2006332919A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- count
- signal
- delay
- oscillation
- 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.)
- Withdrawn
Links
Images
Abstract
【課題】 クロック信号を用いない非同期式で設計されたシステムを内蔵する半導体集積回路において、消費電力や電磁ノイズを抑えながら回路ブロックの動作終了のタイミングを安定して生成する。
【解決手段】 半導体集積回路は、発振信号を生成するリングオシレータ40と、リングオシレータによって生成される発振信号に含まれているパルスをカウントすることにより計測カウント値を求め、計測カウント値を設定カウント値と比較することによりカウント終了信号を活性化するカウント回路50と、被制御回路ブロックにおけるイベント開始のタイミングに同期してリングオシレータに供給すべき発振制御信号を活性化すると共に、カウント回路から出力されるカウント終了信号の活性化に同期して被制御回路ブロックにおけるイベント終了のタイミングを生成する遅延制御回路30とを具備する。
【選択図】 図1
【解決手段】 半導体集積回路は、発振信号を生成するリングオシレータ40と、リングオシレータによって生成される発振信号に含まれているパルスをカウントすることにより計測カウント値を求め、計測カウント値を設定カウント値と比較することによりカウント終了信号を活性化するカウント回路50と、被制御回路ブロックにおけるイベント開始のタイミングに同期してリングオシレータに供給すべき発振制御信号を活性化すると共に、カウント回路から出力されるカウント終了信号の活性化に同期して被制御回路ブロックにおけるイベント終了のタイミングを生成する遅延制御回路30とを具備する。
【選択図】 図1
Description
本発明は、一般に、ICやLSI等の半導体集積回路に関し、特に、クロック信号を用いない非同期式で設計されたシステムを内蔵する半導体集積回路に関する。
クロック信号を用いない非同期式で設計されたCPU(中央演算装置)は、1つの動作が終了すると直ちに次の動作を開始することができるので、同期式のCPUと比較して高速動作が可能であるという利点を有している。しかしながら、クロック信号を用いないので、回路モジュール(被制御回路ブロック)の動作終了のタイミングをCPUに知らせることが必要となる。
そのための代表的な構成として、2線式回路と呼ばれる構成が知られている。2線式回路においては、1ビットのデータが、2つの信号線におけるレベル(0又は1)で表される。即ち、データ「0」及び「1」が、それぞれ「01」及び「10」で表され、値が確定していない無効データは、「00」又は「11」で表される。無効データ以外のデータは、有効データと呼ばれる。無効データが全て有効データに変化した時点で、回路モジュールの動作終了が認識される。
2線式回路によれば、1ビットのデータを表すために2つの信号線が用いられるので、同期式回路と比較して回路規模が2倍になってしまうという問題がある。そこで、非同期式において回路規模が増大することを避けるために、回路モジュールの動作終了のタイミングを別途生成することも行われている。
回路モジュールの動作終了のタイミングを生成するためには遅延回路が必要になるが、遅延を生成するためにゲート遅延又は受動素子を用いると、半導体集積回路の製造プロセスのばらつきや電源電圧等の動作条件によって遅延時間が変化するので、遅延時間の制御が困難である。
また、クロック信号に基づいて遅延を生成することも考えられるが、その場合には、クロック信号を用いない非同期式回路の利点が失われてしまう。特に、クロック信号を発生するために高速なクロック信号発生回路を使用すると、クロック信号発生回路による消費電力が大きくなると共に、クロック信号発生回路から発生する電磁ノイズも大きくなる。また、クロック信号を用いた集積回路において消費電力の削減のためクロック信号の発生を停止すると、クロック信号の発生を再開するまでに時間がかかるという問題がある。
関連する技術として、下記の特許文献1には、より小さな回路規模で、非同期回路に近い高速性を有する回路の構成方式と、その構成方式の回路の設計手法が開示されている。この回路構成は、回路モジュールと、回路モジュールの動作終了信号と、制御信号により遅延時間を制御できる遅延回路とから成っている。遅延回路の入力と回路モジュールの動作開始信号、遅延回路の出力と動作終了信号、遅延回路の制御信号と回路モジュールのデータ入力が接続される。遅延回路の遅延時間は、回路モジュール内をデータが伝播して出力が安定するまでの時間と等しいか、その時間を越えてできるだけその時間に近くなるように設計される。
特許文献1の回路構成方式は、非同期回路の動作時間よりも大きな遅延時間を別途用意して非同期回路の動作終了を判断するものであるが、この遅延時間を生成するための具体的な手段が開示されていない。また、特許文献1の図7においては、遅延時間を生成するためにクロックパルスが用いられているが、このクロックパルスを生成するための具体的な手段が開示されていない。
特開平8−96008号公報(第1頁、図1)
そこで、上記の点に鑑み、本発明は、クロック信号を用いない非同期式で設計されたシステムを内蔵する半導体集積回路において、消費電力や電磁ノイズを抑えながら、被制御回路ブロックの動作終了のタイミングを安定して生成することを目的とする。
以上の課題を解決するため、本発明に係る半導体集積回路は、発振制御信号に従って発振することにより発振信号を生成するリングオシレータと、リングオシレータによって生成される発振信号に含まれているパルスをカウントすることにより計測カウント値を求め、計測カウント値を設定カウント値と比較することによりカウント終了信号を活性化するカウント回路と、被制御回路ブロックにおけるイベント開始のタイミングに同期してリングオシレータに供給すべき発振制御信号を活性化すると共に、カウント回路から出力されるカウント終了信号の活性化に同期して被制御回路ブロックにおけるイベント終了のタイミングを生成する遅延制御回路とを具備する。
ここで、カウント回路が、複数種類の遅延コードに対応して、複数種類の遅延量を得るためにそれぞれ必要な複数の設定カウント値を格納するテーブルを含むようにしても良い。その場合に、カウント回路が、供給される遅延コードに対応する設定カウント値をテーブルから読み出し、リングオシレータによって生成される発振信号に含まれているパルスをカウントすることにより求められる計測カウント値がテーブルから読み出された設定カウント値に達すると、発振信号に含まれている次のパルスに同期してカウント終了信号を活性化するようにしても良い。
以上の様に構成した本発明によれば、被制御回路ブロックにおけるイベント開始のタイミングに同期してリングオシレータに供給すべき発振制御信号を活性化すると共に、カウント回路から出力されるカウント終了信号の活性化に同期して被制御回路ブロックにおけるイベント終了のタイミングを生成するようにしたので、消費電力や電磁ノイズを抑えながら、被制御回路ブロックの動作終了のタイミングを安定して生成することができる。
以下、本発明を実施するための最良の形態について、図面を参照しながら詳しく説明する。なお、同一の要素には同一の番号を付して、説明を省略する。
図1は、本発明の一実施形態に係る半導体集積回路の構成を示す図である。図1に示すように、本実施形態に係る半導体集積回路は、非同期方式で設計されたCPU10と、CPU10によって制御される回路モジュールである被制御回路ブロック20と、CPU10から出力されるイベント要求信号を遅延させてイベント確認信号を出力する遅延制御回路30と、所望の遅延時間を生成するために用いられるリングオシレータ40及び遅延カウント回路50とを有している。
図1は、本発明の一実施形態に係る半導体集積回路の構成を示す図である。図1に示すように、本実施形態に係る半導体集積回路は、非同期方式で設計されたCPU10と、CPU10によって制御される回路モジュールである被制御回路ブロック20と、CPU10から出力されるイベント要求信号を遅延させてイベント確認信号を出力する遅延制御回路30と、所望の遅延時間を生成するために用いられるリングオシレータ40及び遅延カウント回路50とを有している。
被制御回路ブロック20としては、CPU10の制御の下で動作を行う様々な回路を用いることができる。CPU10は、被制御回路ブロック20の動作を制御するためのイベント制御信号を、被制御回路ブロック20に供給する。さらに、CPU10と被制御回路ブロック20との間で、各種の信号が送受信される。例えば、被制御回路ブロック20がメモリである場合には、CPU10が、アドレス信号等を被制御回路ブロック20に送信し、書込みデータ又は読出しデータを送信又は受信する。
CPU10は、被制御回路ブロック20に所望のイベントを行わせる際に、遅延カウント回路50に遅延コードを供給してイベントを特定すると共に、遅延制御回路30にイベント要求信号を出力する。これにより、CPU10は、遅延制御回路30から出力されるイベント確認信号に基づいて、被制御回路ブロック20において行われるイベントの終了に対応する遅延情報を得ることができる。ここで、イベント要求信号は、被制御回路ブロック20におけるイベント開始のタイミングに同期して活性化され、イベント確認信号は、被制御回路ブロック20におけるイベント終了のタイミング(設定値)に同期して活性化される。
遅延制御回路30は、イベント要求信号が活性化されると、リングオシレータ40に供給すべき発振制御信号をハイレベルに活性化する。リングオシレータ40は、例えば、NAND回路41及び複数のインバータ42によって構成されており、発振制御信号がハイレベルに活性化されると、発振を開始して発振信号を生成する。
遅延カウント回路50は、RAM又は不揮発性メモリ等に記憶されたテーブル51を含んでいる。テーブル51は、複数種類の遅延コードに対応して、複数種類の遅延量を得るためにそれぞれ必要な複数の設定カウント値を格納している。
遅延カウント回路50は、発振制御信号がハイレベルに活性化されると、供給された遅延コードに対応する設定カウント値をテーブル51から読み出すと共に、リングオシレータ40によって生成される発振信号に含まれているパルスをカウントすることにより、計測カウント値を求める。
遅延カウント回路50は、求めた計測カウント値をテーブル51から読み出された設定カウント値と比較し、計測カウント値が設定カウント値に達すると、発振信号に含まれている次のパルスの立ち上がりエッジに同期してカウント終了信号を活性化する。遅延制御回路30は、遅延カウント回路50から出力されるカウント終了信号の活性化に同期して、被制御回路ブロック20におけるイベント終了のタイミングを生成する。
次に、本発明の一実施形態に係る半導体集積回路の動作について説明する。
前提として、被制御回路ブロック20を設計する際に、被制御回路ブロック20における各種のイベントに要する最大遅延時間が評価され、その最大遅延時間にマージンの遅延時間を加算することにより、所望の遅延時間が求められる。また、リングオシレータ40を設計する際に、リングオシレータ40の発振周波数又は発振周期が評価され、発振信号の1周期に対応する遅延時間が求められる。
前提として、被制御回路ブロック20を設計する際に、被制御回路ブロック20における各種のイベントに要する最大遅延時間が評価され、その最大遅延時間にマージンの遅延時間を加算することにより、所望の遅延時間が求められる。また、リングオシレータ40を設計する際に、リングオシレータ40の発振周波数又は発振周期が評価され、発振信号の1周期に対応する遅延時間が求められる。
これらの値に基づいて、複数種類の被制御回路ブロック及び/又は複数種類のイベントの内の1つを特定するための複数種類の遅延コードに対応して、複数種類の遅延量を得るためにそれぞれ必要な複数の設定カウント値が、CPU10の制御の下で、遅延カウント回路50のテーブル51に予め格納される。
図2は、図1に示す半導体集積回路の動作を説明するためのタイミングチャートである。ここでは、CPU10から遅延カウント回路50に供給された遅延コードに従って、発振信号の8周期分の遅延時間に対応する設定カウント値「8」がテーブル51に格納されているものとする。
CPU10がイベント要求信号をハイレベルに活性化すると、遅延制御回路30は、発振制御信号をハイレベルに活性化する。発振制御信号がハイレベルに活性化されると、リングオシレータ40は、発振動作を開始して発振信号を生成する。また、遅延カウント回路50は、CPU10から供給される遅延コードに対応する設定カウント値「8」をテーブル51から読み出すと共に、リングオシレータ40によって生成される発振信号に含まれているパルスのカウントを開始する。
発振信号に含まれているパルスをカウントすることにより求められる計測カウント値がテーブル51から読み出された設定カウント値「8」に達すると、遅延カウント回路50は、発振信号に含まれている次のパルスの立ち上がりエッジに同期してカウント終了信号をハイレベルに活性化し、これに応答して、遅延制御回路30が、イベント確認信号をハイレベルに活性化する。これにより、被制御回路ブロック20におけるイベントに要する最大遅延時間とマージンの遅延時間との和に対応する所望の遅延量を得ることができる。
ここで、被制御回路ブロック20とリングオシレータ40とは、同一の半導体集積回路に内蔵されており、さらに、両者を近傍に配置することにより、半導体集積回路の製造プロセスのばらつきや電源電圧等の動作条件等を揃えることができるので、両者における遅延時間の増減が追従することが期待され、安定した回路動作を実現することができる。なお、回路レイアウトの設計完了後、又は、半導体集積回路の試作終了後に、被制御回路ブロック20のイベントに要する遅延時間又はリングオシレータ40の発振周波数が予定されていた値と大きく異なっている場合には、CPU10の制御の下で、テーブル51に格納されている設定カウント値を変更することにより、容易に対処可能である。
さらに、CPU10は、イベント確認信号がハイレベルに活性化されると、イベント要求信号をローレベルに非活性化する。遅延制御回路30は、イベント要求信号がローレベルに非活性化されると、イベント確認信号及び発振制御信号をローレベルに非活性化する。発振制御信号がローレベルに非活性化されることにより、リングオシレータ40が発振動作を停止すると共に、遅延カウント回路50が、カウント終了信号をローレベルに非活性化し、計測カウント値を「0」にリセットする。
上記において、被制御回路ブロック20がパイプライン構造を有する場合には、リングオシレータ40によって生成される発振信号に基づいて、パイプライン構造における各段の回路を動作させるためのクロック信号を生成するようにしても良い。いずれの場合においても、本実施形態に係る半導体集積回路は、被制御回路ブロック20がイベント終了時の応答信号を返さない場合に、適切な動作タイミングを生成するために利用することができる。
図3は、被制御回路ブロック20がメモリである場合について、クロック同期方式における動作と本実施形態における動作とを比較して説明するためのタイミングチャートである。ここでは、メモリからデータを読み出すために、イベント制御信号としてリード信号が用いられる。
図3の(a)は、一般的なクロック同期方式におけるタイミングチャートである。クロック同期方式のCPUは、メモリからデータを読み出すために、クロック信号に同期してアドレス信号及びチップイネーブル信号(負論理)を確定し、その後、クロック信号に同期してリード信号(負論理)をアサートする。メモリからは、リード信号がアサートされてからアクセス時間TAが経過した後に、有効なデータが出力される。従って、クロック同期方式のCPUは、クロック信号に基づいて、リード信号をアサートしてからアクセス時間TAが経過した後のタイミングで、リード信号をデアサートすると共に、メモリからデータを読み出す。
図3の(b)は、本実施形態におけるタイミングチャートである。非同期方式のCPUは、メモリからデータを読み出すために、アドレス信号及びチップイネーブル信号(負論理)を確定し、メモリからデータを読み出すイベントを特定する遅延コードを出力した後に、イベント要求信号を活性化すると共に、リード信号(負論理)をアサートする。メモリからは、リード信号がアサートされてからアクセス時間TAが経過した後に、有効なデータが出力される。従って、非同期方式のCPUは、イベント要求信号が再び非活性化されるのに基づいて、リード信号をアサートしてからアクセス時間TAが経過した後のタイミングで、リード信号をデアサートすると共に、メモリからデータを読み出す。
以上説明した実施形態によれば、リングオシレータを用いて局所的に発振信号を生成するので、半導体集積回路全体にクロック信号を供給するようなクロック同期式設計と比較して、消費電力や電磁ノイズを低減することができる。また、被制御回路ブロックを動作させるときにのみ発振信号を生成するので、非同期式設計の利点が損なわれない。さらに、ゲート遅延や受動素子の遅延を用いて遅延を発生させる場合と比較して、遅延量の調整が容易である。
10 CPU、 20 被制御回路ブロック、 30 遅延制御回路、 40 リングオシレータ、 41 NAND回路、 42 インバータ、 50 遅延カウント回路、 51 テーブル
Claims (3)
- 発振制御信号に従って発振することにより発振信号を生成するリングオシレータと、
前記リングオシレータによって生成される発振信号に含まれているパルスをカウントすることにより計測カウント値を求め、計測カウント値を設定カウント値と比較することによりカウント終了信号を活性化するカウント回路と、
被制御回路ブロックにおけるイベント開始のタイミングに同期して前記リングオシレータに供給すべき発振制御信号を活性化すると共に、前記カウント回路から出力されるカウント終了信号の活性化に同期して前記被制御回路ブロックにおけるイベント終了のタイミングを生成する遅延制御回路と、
を具備する半導体集積回路。 - 前記カウント回路が、複数種類の遅延コードに対応して、複数種類の遅延量を得るためにそれぞれ必要な複数の設定カウント値を格納するテーブルを含む、請求項1記載の半導体集積回路。
- 前記カウント回路が、供給される遅延コードに対応する設定カウント値を前記テーブルから読み出し、前記リングオシレータによって生成される発振信号に含まれているパルスをカウントすることにより求められる計測カウント値が前記テーブルから読み出された設定カウント値に達すると、発振信号に含まれている次のパルスに同期してカウント終了信号を活性化する、請求項2記載の半導体集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005151749A JP2006332919A (ja) | 2005-05-25 | 2005-05-25 | 半導体集積回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005151749A JP2006332919A (ja) | 2005-05-25 | 2005-05-25 | 半導体集積回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006332919A true JP2006332919A (ja) | 2006-12-07 |
Family
ID=37554155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005151749A Withdrawn JP2006332919A (ja) | 2005-05-25 | 2005-05-25 | 半導体集積回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006332919A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2450313A (en) * | 2006-05-22 | 2008-12-24 | Siano Mobile Silicon Ltd | Ring oscillator clock |
JP2010136002A (ja) * | 2008-12-03 | 2010-06-17 | Renesas Electronics Corp | 遅延回路 |
US20140254742A1 (en) * | 2011-11-21 | 2014-09-11 | Fujitsu Limited | Delay measurement device, method and medium |
JP2017525184A (ja) * | 2014-06-06 | 2017-08-31 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | メモリインターフェースのための遅延構造 |
-
2005
- 2005-05-25 JP JP2005151749A patent/JP2006332919A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2450313A (en) * | 2006-05-22 | 2008-12-24 | Siano Mobile Silicon Ltd | Ring oscillator clock |
JP2010136002A (ja) * | 2008-12-03 | 2010-06-17 | Renesas Electronics Corp | 遅延回路 |
US20140254742A1 (en) * | 2011-11-21 | 2014-09-11 | Fujitsu Limited | Delay measurement device, method and medium |
JP2017525184A (ja) * | 2014-06-06 | 2017-08-31 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | メモリインターフェースのための遅延構造 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100256004B1 (ko) | 반도체 기억 장치 시스템 및 반도체 기억 장치 | |
US9772648B2 (en) | Low power asynchronous counters in a synchronous system | |
US6222406B1 (en) | Semiconductor integrated circuit device, semiconductor memory system and clock synchronous circuit | |
US5550489A (en) | Secondary clock source for low power, fast response clocking | |
JP3549751B2 (ja) | 半導体集積回路装置 | |
KR102161083B1 (ko) | 반도체 메모리 장치 | |
US9196349B2 (en) | Semiconductor device | |
US6192004B1 (en) | Semiconductor integrated circuit | |
JP2010183243A (ja) | 半導体装置 | |
US9013208B1 (en) | Method and apparatus for clocking | |
US7379376B2 (en) | Internal address generator | |
JP3756231B2 (ja) | 同期型半導体記憶装置 | |
JP2000156635A (ja) | セルフ・タイミング制御回路 | |
JP2008278482A (ja) | マルチスピードリングオシレータ | |
JP2007048022A (ja) | 非同期バスインタフェース及びその処理方法 | |
JP2006332919A (ja) | 半導体集積回路 | |
US6320818B1 (en) | Semiconductor storage device, and method for generating timing of signal for activating internal circuit thereof | |
KR101747885B1 (ko) | 시프트 회로 | |
US7042267B1 (en) | Gated clock circuit with a substantially increased control signal delay | |
US6639436B2 (en) | Semiconductor integrated circuit with function to start and stop supply of clock signal | |
JP2009124532A (ja) | 半導体集積回路 | |
JP2006072777A (ja) | 半導体論理回路におけるクロック分配回路およびその方法 | |
JP2009099156A (ja) | フューズラッチ回路及びフューズラッチ方法 | |
JP2008099002A (ja) | Dll回路 | |
JP2006314006A (ja) | 半導体集積回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080508 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090610 |