JP2007264853A - 入出力共用端子制御回路 - Google Patents

入出力共用端子制御回路 Download PDF

Info

Publication number
JP2007264853A
JP2007264853A JP2006086708A JP2006086708A JP2007264853A JP 2007264853 A JP2007264853 A JP 2007264853A JP 2006086708 A JP2006086708 A JP 2006086708A JP 2006086708 A JP2006086708 A JP 2006086708A JP 2007264853 A JP2007264853 A JP 2007264853A
Authority
JP
Japan
Prior art keywords
output
data
signal
control signal
input
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.)
Granted
Application number
JP2006086708A
Other languages
English (en)
Other versions
JP4699927B2 (ja
Inventor
Teiji Fukubeyama
禎治 福戸山
Masahiro Maeda
昌宏 前田
Satoru Kagohashi
悟 篭橋
Yuji Kubo
悠司 久保
Yoshiharu Ito
芳治 伊藤
Atsushi Fujita
藤田  淳
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006086708A priority Critical patent/JP4699927B2/ja
Priority to TW095125842A priority patent/TWI327420B/zh
Priority to US11/490,151 priority patent/US7456657B2/en
Priority to CN200610104269XA priority patent/CN101047380B/zh
Priority to KR1020060074667A priority patent/KR100776937B1/ko
Publication of JP2007264853A publication Critical patent/JP2007264853A/ja
Application granted granted Critical
Publication of JP4699927B2 publication Critical patent/JP4699927B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1731Optimisation thereof
    • H03K19/1732Optimisation thereof by limitation or reduction of the pin/gate ratio
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/002Switching arrangements with several input- or output terminals
    • H03K17/005Switching arrangements with several input- or output terminals with several inputs only
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0175Coupling arrangements; Interface arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Electronic Switches (AREA)

Abstract

【課題】ソフトウェアシーケンスを組むことなく、汎用I/Oピンからのハザード出力を防止する入出力共用端子制御回路を提供する。
【解決手段】データ選択手段101は、複数の回路からの複数のデータ信号の中から、データ信号を選択し、方向選択手段102は、それらの回路からの複数の方向制御信号の中から、同じ回路の方向制御信号を選択する。データ保持手段103および方向保持手段104は、選択されたデータ信号および方向制御信号をそれぞれ保持する。データ選択手段105は、データ選択手段101またはデータ保持手段103からのデータ信号を選択し、方向選択手段106は、方向選択手段102または方向保持手段104からの方向制御信号を選択する。出力手段107は、方向選択手段106からの方向制御信号に従って、データ選択手段105からのデータ信号を入出力共用端子108に出力する。
【選択図】図1

Description

本発明は、汎用入出力(I/O)制御に係り、CPU(中央処理装置)等の入出力共用端子を有するデバイスにおける入出力共用端子制御回路に関する。
従来より、1つの汎用I/Oピンに対して2つ以上の機能を選択可能な回路を構成する場合、セレクタを用いて信号を切り替える方法が用いられている。
図7は、このような従来の入出力共用端子制御回路の構成例を示している。この制御回路は、回路11、12、セレクタ13、14、ラッチ回路(レジスタ)15、およびスリーステートバッファ16を備え、スリーステートバッファ16の出力側に設けられたI/Oピン(不図示)を、2つの回路11および12で共用するための制御を行う。
回路11と回路12は、それぞれ異なる機能を有する。回路11は、その動作状態に応じてI/Oピンの方向が入力か出力かを指定する制御信号dir1を出力し、出力の場合にはデータ信号data1を出力する。同様に、回路12は、I/Oピンの方向を指定する制御信号dir2とデータ信号data2を出力する。
ラッチ回路15は、例えば、フリップフロップで構成され、セレクタ13および14を切り替えるための選択信号sel_dataをラッチして、選択信号selとして出力する。
セレクタ13は、選択信号selがHigh(論理“1”)のときdata1を選択し、選択信号selがLow(論理“0”)のときdata2を選択して、選択されたデータ信号をsw_dataとして出力する。
セレクタ14は、選択信号selが論理“1”のときdir1を選択し、選択信号selが論理“0”のときdir2を選択して、選択された制御信号をsw_dirとして出力する。この制御信号sw_dirは、負論理でスリーステートバッファ16のイネーブル端子に入力され、論理“1”のときI/Oピンの方向が入力であることを示し、論理“0”のときI/Oピンの方向が出力であることを示す。
制御信号sw_dirが論理“1”のとき、スリーステートバッファ16は高インピーダンス状態(入力状態)zとなり、I/Oピンから入力された信号は、不図示の信号経路を経由して回路11または12に転送される。また、制御信号sw_dirが論理“0”のとき、スリーステートバッファ16は出力状態となって、データ信号sw_dataをoutdataとしてI/Oピンに出力する。
下記の特許文献1は、端子切り替え用のソフトウェアが起動していない場合でも端子の切り替えを可能にする共用端子制御装置に関する。
特開2004−192051号公報
上述した従来の入出力共用端子制御回路には、次のような問題がある。
図7に示した回路構成をとる場合、回路11と回路12を切り替える際にハザード出力が発生する可能性がある。図8および図9は、このようなハザード出力のパターンを示すタイミングチャートである。
ラッチ回路15は、クロック信号clkに従って動作し、その立上りエッジで選択信号sel_dataをラッチし、選択信号selとして出力する。したがって、時刻t1において選択信号sel_dataが論理“1”から論理“0”に切り替わると、1サイクル遅れて時刻t2において選択信号selが論理“1”から論理“0”に切り替わる。
まず、図8に示すように、時刻t2において選択信号selが論理“1”(回路11)から論理“0”(回路12)へ切り替わった後、データ信号sw_dataの変化より遅れて、時刻t3において制御信号sw_dirが論理“0”(出力)から論理“1”(入力)に切り替わったとする。この場合、時刻t2とt3の間の期間Tにおいてハザード出力が発生する。
次に、図9に示すように、時刻t2において選択信号selが論理“1”から論理“0”へ切り替わった後、時刻t3におけるデータ信号sw_dataの変化よりも先に、制御信号sw_dirが論理“1”から論理“0”に切り替わったとする。この場合も、やはり期間Tにおいてハザード出力が発生する。
近年のCPUチップでは、I/Oピン数の制限と汎用性を考慮した結果、様々な用途に対応可能な汎用I/Oピンを搭載しておき、ソフトウェアにより特定のI/Oピンに接続される信号を選択する構成が採用されている。
図10は、このようなCPUチップにおける入出力共用端子制御回路の構成例を示している。図10のCPU21は、内部レジスタ31、ペリフェラル回路32、セレクタ33、およびI/Oバッファ34を備える。外部I/Oピン22は、負荷回路23を介してHighレベル(VDD)に接続されており、CPU21への信号入力およびCPU21からの信号出力に用いられる。
この場合、内部レジスタ31およびペリフェラル回路32は、図7の回路11および回路12にそれぞれ対応し、セレクタ33はセレクタ13および14に対応し、I/Oバッファ34はスリーステートバッファ16に対応する。
デフォルト(リセット)時には、セレクタ33は必ず内部レジスタ31を選択しており、I/Oバッファ34は入力状態となる。このとき、単純にソフトウェアにより、I/Oピン22の接続元を内部レジスタ31からペリフェラル回路32へ切り替えると、接続先へハザード出力する可能性がある。
内部レジスタ31からペリフェラル回路32へ接続が切り替わる場合、図11に示すように、制御信号sw_dirが論理“1”から論理“0”に切り替わり、I/Oバッファ34は入力状態から出力状態へ切り替わる。
内部レジスタ31が選択されているときは、I/Oピン22は負荷回路23によりHighレベルにプルアップされているため、データ信号outdataは論理“1”である。このとき、ペリフェラル回路32へ切り替えられると、ペリフェラル回路32の出力データ信号data2も論理“1”なので、データ信号outdataは一度も論理“0”になるべきではない。しかし、内部遅延により、期間Tにおいて一瞬、論理“0”のハザード出力が発生する可能性がある。
I/Oピン22の接続先が回路のクロック端子やライトイネーブル端子である場合、信号の立上りエッジでその回路が動作するため、接続先回路の誤動作の要因となっていた。このため、従来技術では、ソフトウェアにより適切なシーケンスを組むことによって、このようなハザード出力を未然に防止していた。
図10の例では、図12に示すように、ペリフェラル回路32へ切り替える前に、事前に内部レジスタ31の出力データ値を論理“0”から論理“1”へ変更しておき、その後セレクタ33を切り替えることにより、期間Tにおけるハザード出力を防止することができる。
しかしながら、汎用化が進むにつれてCPUチップのI/Oピンの数も増加する傾向にあり、ソフトウェア制御工数とソフトウェアシーケンスのチェック工数が増加しており、ハザード消去の自動化が望まれている。
本発明の課題は、ソフトウェアシーケンスを組むことなく、汎用I/Oピンからのハザード出力を防止する入出力共用端子制御回路を提供することである。
図1は、本発明の入出力共用端子制御回路の原理図である。
本発明の第1の局面において、入出力共用端子制御回路は、データ選択手段101、105、方向選択手段102、データ保持手段103、および出力手段107を備える。
データ選択手段101は、複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子108に転送されるデータ信号を選択して出力する。方向選択手段102は、上記複数の回路からそれぞれ出力される複数の方向制御信号の中から、データ選択手段101から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する。データ保持手段103は、データ選択手段101から出力されるデータ信号を保持する。
データ選択手段105は、データ選択手段101から出力されるデータ信号とデータ保持手段103により保持されたデータ信号のいずれかを選択して出力する。出力手段107は、方向選択手段102から出力される方向制御信号が出力方向を示しているとき、データ選択手段105から出力されるデータ信号を入出力共用端子108に出力する。
データ選択手段101から出力されるデータ信号は、出力手段107に直接転送されるのではなく、データ保持手段103およびデータ選択手段105を経由して出力手段107に転送される。データ保持手段103には、データ選択手段101から以前に出力されたデータ信号が保持されているため、データ選択手段105は、現在のデータ信号を以前のデータ信号に置き換えることができる。
したがって、図8に示したように、データ信号の切り替えより遅れて方向制御信号が出力方向から入力方向に切り替わった場合でも、切り替え後のデータ信号の代わりに切り替え前のデータ信号を出力手段107から出力することができ、ハザード出力が防止される。
本発明の第2の局面において、入出力共用端子制御回路は、データ選択手段101、方向選択手段102、106、方向保持手段104、および出力手段107を備える。
データ選択手段101は、複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子108に転送されるデータ信号を選択して出力する。方向選択手段102は、上記複数の回路からそれぞれ出力される複数の方向制御信号の中から、データ選択手段101から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する。方向保持手段104は、方向選択手段102から出力される方向制御信号を保持する。
方向選択手段106は、方向選択手段102から出力される方向制御信号と方向保持手段104により保持された方向制御信号のいずれかを選択して出力する。出力手段107は、方向選択手段106から出力される方向制御信号が出力方向を示しているとき、データ選択手段101から出力されるデータ信号を入出力共用端子108に出力する。
方向選択手段102から出力される方向制御信号は、出力手段107に直接転送されるのではなく、方向保持手段104および方向選択手段106を経由して出力手段107に転送される。方向保持手段104には、方向選択手段102から以前に出力された方向制御信号が保持されているため、方向選択手段106は、現在の方向制御信号を以前の方向制御信号に置き換えることができる。
したがって、図9に示したように、データ信号の切り替えより先に方向制御信号が入力方向から出力方向に切り替わった場合でも、切り替え後の方向制御信号の代わりに切り替え前の方向制御信号を出力手段107に出力することができる。これにより、出力手段107からデータ信号が出力されるタイミングを遅らせることができるため、ハザード出力が防止される。
本発明の第3の局面において、入出力共用端子制御回路は、データ選択手段101、105、方向選択手段102、106、データ保持手段103、方向保持手段104、および出力手段107を備える。
データ選択手段101は、複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子108に転送されるデータ信号を選択して出力する。方向選択手段102は、上記複数の回路からそれぞれ出力される複数の方向制御信号の中から、データ選択手段101から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する。データ保持手段103は、データ選択手段101から出力されるデータ信号を保持する。方向保持手段104は、方向選択手段102から出力される方向制御信号を保持する。
データ選択手段105は、データ選択手段101から出力されるデータ信号とデータ保持手段103により保持されたデータ信号のいずれかを選択して出力する。方向選択手段106は、方向選択手段102から出力される方向制御信号と方向保持手段104により保持された方向制御信号のいずれかを選択して出力する。出力手段107は、方向選択手段106から出力される方向制御信号が出力方向を示しているとき、データ選択手段105から出力されるデータ信号を入出力共用端子108に出力する。
このような構成によれば、図8および図9に示した両方の場合において、ハザード出力を防止することができる。
後述する図2の入出力共用端子制御回路において、データ選択手段101、105、方向選択手段102、106、データ保持手段103、方向保持手段104、および出力手段107は、セレクタ202、235、203、236、ラッチ回路204、222、およびスリーステートバッファ208にそれぞれ対応する。
また、後述する図5の入出力共用端子制御回路において、データ選択手段101、105、方向選択手段102、106、データ保持手段103、方向保持手段104、および出力手段107は、セレクタ502、535、503、536、ラッチ回路504、522、およびスリーステートバッファ508にそれぞれ対応する。
本発明によれば、CPU等の入出力共用端子を有するデバイスにおいて、データ信号の切り替えより遅れて端子の方向が出力から入力に切り替わった場合、および/または、データ信号の切り替えより先に端子の方向が入力から出力に切り替わった場合に、端子からのハザード出力が防止される。
以下、図面を参照しながら、本発明を実施するための最良の形態を詳細に説明する。
図2は、図7の入出力共用端子制御回路においてハザード対策回路を設けた構成例を示している。この制御回路は、セレクタ202、203、ラッチ回路201、204、選択信号比較回路205、方向制御信号比較回路206、ハザード条件検出回路207、およびスリーステートバッファ208を備え、スリーステートバッファ208の出力側に設けられたI/Oピン(不図示)を、2つの回路11および12で共用するための制御を行う。
このうち、セレクタ202、203、ラッチ回路201、およびスリーステートバッファ208の動作は、図7のセレクタ13、14、ラッチ回路15、およびスリーステートバッファ16の動作と同様である。
ラッチ回路204は、クロック信号clkの立上りエッジでデータ信号sw_dataをラッチし、データ信号sw_data_cptとして出力する。このデータ信号sw_data_cptは、1サイクル前のデータ信号sw_dataの値を示している。
選択信号比較回路205は、ラッチ回路211およびXOR回路212を含み、最新の選択信号sel_dataと以前の選択信号selを比較し、比較結果を示す信号sel_changeを生成する。
ラッチ回路211は、クロック信号clkの立上りエッジで選択信号selをラッチし、選択信号sel_shiftとして出力する。この選択信号sel_shiftは、2サイクル前の選択信号sel_dataの値を示している。XOR回路212は、sel_dataとsel_shiftの排他的論理和を、信号sel_changeとして出力する。
したがって、最新の選択信号sel_dataが2サイクル前の値と同じであれば、信号sel_changeは論理“0”となり、最新の選択信号sel_dataが2サイクル前の値と異なれば、信号sel_changeは論理“1”となる。これにより、選択信号sel_dataの状態変化が検出される。
方向制御信号比較回路206は、セレクタ221、ラッチ回路222、およびXOR回路223を含み、最新の制御信号dir1またはdir2と以前の制御信号sw_dirを比較し、比較結果を示す信号dir_changeを生成する。
セレクタ221は、選択信号sel_dataが論理“1”のときdir1を選択し、選択信号sel_dataが論理“0”のときdir2を選択して、選択された制御信号をsel_dirとして出力する。この制御信号sel_dirは、最新の選択信号sel_dataにより選択される制御信号dir1またはdir2の値を示している。
ラッチ回路222は、クロック信号clkの立上りエッジで制御信号sw_dirをラッチし、制御信号sw_dir_cptとして出力する。この制御信号sw_dir_cptは、2サイクル前の制御信号sel_dirの値を示している。XOR回路223は、sw_dir_cptとsel_dirの排他的論理和を、信号dir_changeとして出力する。
したがって、最新の制御信号sel_dirが2サイクル前の値と同じであれば、信号dir_changeは論理“0”となり、最新の制御信号sel_dirが2サイクル前の値と異なれば、信号dir_changeは論理“1”となる。これにより、制御信号sel_dirの状態変化が検出される。
ハザード条件検出回路207は、AND回路231、233、234、インバータ232、およびセレクタ235、236を含み、信号sel_changeと信号dir_changeからハザード条件を検出し、データ信号sw_dataまたは制御信号sw_dirを1サイクル前の値に置き換えることで、データ信号sw_data_oまたは制御信号sw_dir_oを生成する。
AND回路231は、信号sel_changeと信号dir_changeの論理積を、ハザード条件検出信号hazardとして出力し、インバータ232は、制御信号sw_dir_cptの否定を出力する。AND回路233は、インバータ232の出力と信号hazardの論理積を、信号data_lockとして出力し、AND回路234は、制御信号sw_dir_cptと信号hazardの論理積を、信号dir_lockとして出力する。
セレクタ235は、信号data_lockが論理“1”のときデータ信号sw_data_cptを選択し、信号data_lockが論理“0”のときデータ信号sw_dataを選択して、選択されたデータ信号をsw_data_oとして出力する。
セレクタ236は、信号dir_lockが論理“1”のとき制御信号sw_dir_cptを選択し、信号dir_lockが論理“0”のとき制御信号sw_dirを選択して、選択された制御信号をsw_dir_oとして出力する。
この制御信号sw_dir_oは、負論理でスリーステートバッファ208のイネーブル端子に入力される。したがって、制御信号sw_dir_oが論理“1”のとき、スリーステートバッファ208は入力状態となり、制御信号sw_dir_oが論理“0”のとき、スリーステートバッファ208は出力状態となって、データ信号sw_data_oをoutdataとしてI/Oピンに出力する。
このような入出力共用端子制御回路によれば、下記の条件(1)および(2)が同時に成立する場合、ハザード条件検出信号hazardが論理“1”となり、ハザード条件検出回路207はハザードデータ出力を回避するように動作する。
(1)最新の選択信号sel_dataと2サイクル前の値を比較した結果、値が変化している(信号sel_changeが論理“1”)。
(2)回路11の制御信号dir1と回路12の制御信号dir2の方向が異なっている(信号dir_changeが論理“1”)。
なお、条件(1)および(2)が同時に成立しない場合は、ハザードデータが出力されないため、必ずタイミングレスでデータ信号outdataの出力制御が可能である。
図3および図4は、条件(1)および(2)が同時に成立する場合にハザード出力が回避されることを示すタイミングチャートである。
まず、図3のタイミングチャートでは、図8と同様に、時刻t12において選択信号selが論理“1”から論理“0”に切り替わった後、データ信号sw_dataの変化より遅れて、制御信号sw_dirが論理“0”から論理“1”に切り替わる。その後、時刻t13において選択信号sel_shiftが論理“1”から論理“0”に切り替わる。
このため、選択信号sel_dataが変化した時刻t11と、選択信号sel_shiftが変化した時刻t13の間の期間において、信号sel_changeが論理“1”となる。同様にして、制御信号sel_dirが変化した時刻t11と、制御信号sw_dir_cptが変化した時刻t13の間の期間において、信号dir_changeも論理“1”となる。したがって、時刻t11から時刻t13までの2サイクルの間、信号hazardが論理“1”となる。
この2サイクルの間は、制御信号sw_dir_cptが論理“0”なので、信号data_lockは論理“1”となり、信号dir_lockは論理“0”となる。このため、データ信号sw_data_cptがsw_data_oとして出力され、制御信号sw_dirがsw_dir_oとして出力される。
このように、信号data_lockにより、2サイクルの間、データ信号sw_data_oの値は、変化する前のデータ信号sw_dataの値に固定される。したがって、時刻t12とt13の間に、制御信号sw_dir_oによりスリーステートバッファ208の方向を切り替えても、ハザードデータがoutdataとして出力されることはない。
なお、図2の制御回路では、時刻t11から時刻t13までの2サイクルの間、データ信号sw_dataをデータ信号sw_data_cptに置き換える構成になっているが、この期間を3サイクル以上の所定期間に延長することも可能である。
次に、図4のタイミングチャートでは、図9と同様に、時刻t12において選択信号selが論理“1”から論理“0”へ切り替わった後、データ信号sw_dataの変化よりも先に、制御信号sw_dirが論理“1”から論理“0”に切り替わる。その後、時刻t13において選択信号sel_shiftが論理“1”から論理“0”に切り替わる。
このため、図3の場合と同様に、時刻t11から時刻t13までの2サイクルの間、信号sel_changeが論理“1”となり、信号dir_changeも論理“1”となる。したがって、この2サイクルの間、信号hazardが論理“1”となる。
この期間は、制御信号sw_dir_cptが論理“1”なので、信号data_lockは論理“0”となり、信号dir_lockは論理“1”となる。このため、データ信号sw_dataがsw_data_oとして出力され、制御信号sw_dir_cptがsw_dir_oとして出力される。
このように、信号dir_lockにより、2サイクルの間、制御信号sw_dir_oの値は、変化する前の制御信号sw_dirの値に固定される。したがって、時刻t12とt13の間に、スリーステートバッファ208の方向が切り替えられることはなく、ハザードデータがoutdataとして出力されることはない。この期間に、データ信号sw_data_oの切り替えが完了する。
なお、図2の制御回路では、時刻t11から時刻t13までの2サイクルの間、制御信号sw_dirを制御信号sw_dir_cptに置き換える構成になっているが、この期間を3サイクル以上の所定期間に延長することも可能である。
さらに、図2の制御回路では、回路11と回路12の2つの回路でI/Oピンを共用する構成となっているが、本発明は3つ以上の回路に対しても適用可能である。例えば、4つの回路でI/Oピンを共用する場合、入出力共用端子制御回路の構成は図5のようになる。
図5の制御回路は、セレクタ502、503、ラッチ回路501、504、選択信号比較回路505、方向制御信号比較回路506、ハザード条件検出回路507、およびスリーステートバッファ508を備え、スリーステートバッファ508の出力側に設けられたI/Oピン(不図示)を、4つの回路A、B、C、およびD(不図示)で共用するための制御を行う。
このうち、ラッチ回路504およびスリーステートバッファ508の動作は、図2のラッチ回路204およびスリーステートバッファ208の動作と同様である。
回路A、B、C、およびDは、データ信号data1、data2、data3、およびdata4と、制御信号dir1、dir2、dir3、およびdir4をそれぞれ出力する。
ラッチ回路501は、セレクタ502および503を切り替えるための2ビットの選択信号sel_data[1:0]をラッチして、選択信号sel[1:0]として出力する。
セレクタ502は、選択信号sel[1:0]の値が“00”のときdata1を選択し、“01”のときdata2を選択し、“10”のときdata3を選択し、“11”のときdata4を選択して、選択されたデータ信号をsw_dataとして出力する。
セレクタ503は、選択信号sel[1:0]の値が“00”のときdir1を選択し、“01”のときdir2を選択し、“10”のときdir3を選択し、“11”のときdir4を選択して、選択された制御信号をsw_dirとして出力する。
選択信号比較回路505は、ラッチ回路511および比較回路512を含み、最新の選択信号sel_data[1:0]と以前の選択信号sel[1:0]を比較し、比較結果を示す信号sel_changeを生成する。
ラッチ回路511は、クロック信号clkの立上りエッジで選択信号sel[1:0]をラッチし、選択信号sel_shift[1:0]として出力する。
比較回路512は、図6に示すように、XOR回路601、602、およびOR回路603を含む。XOR回路601は、sel_data[0]とsel_shift[0]の排他的論理和を出力し、XOR回路602は、sel_data[1]とsel_shift[1]の排他的論理和を出力する。OR回路603は、XOR回路601の出力とXOR回路602の出力の論理和を、信号sel_changeとして出力する。これにより、選択信号sel_data[1:0]の状態変化が検出される。
方向制御信号比較回路506は、セレクタ521、ラッチ回路522、およびXOR回路523を含み、最新の制御信号dir1、dir2、dir3、またはdir4と以前の制御信号sw_dirを比較し、比較結果を示す信号dir_changeを生成する。
セレクタ521は、選択信号sel_data[1:0]の値が“00”のときdir1を選択し、“01”のときdir2を選択し、“10”のときdir3を選択し、“11”のときdir4を選択して、選択された制御信号をsel_dirとして出力する。ラッチ回路522およびXOR回路523の動作は、図2のラッチ回路222およびXOR回路223の動作と同様である。したがって、信号dir_changeにより、制御信号sel_dirの状態変化が検出される。
ハザード条件検出回路507は、AND回路531、533、534、インバータ532、およびセレクタ535、536を含み、図2のハザード条件検出回路207と同様にして、信号sel_changeと信号dir_changeからハザード条件を検出し、データ信号sw_data_oおよび制御信号sw_dir_oを出力する。
このような入出力共用端子制御回路によれば、図2の場合と同様に、下記の条件(1)および(2)が同時に成立する場合、ハザード条件検出信号hazardが論理“1”となり、ハザード条件検出回路507はハザードデータ出力を回避するように動作する。
(1)最新の選択信号sel_data[1:0]と2サイクル前の値を比較した結果、値が変化している(信号sel_changeが論理“1”)。
(2)切り替え前の回路の制御信号diriと切り替え後の回路の制御信号dirj(i,j=1,2,3,4,i≠j)の方向が異なっている(信号dir_changeが論理“1”)。
(付記1)複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子に転送されるデータ信号を選択して出力する第1のデータ選択手段と、
前記複数の回路からそれぞれ出力される複数の方向制御信号の中から、前記第1のデータ選択手段から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する方向選択手段と、
前記第1のデータ選択手段から出力されるデータ信号を保持するデータ保持手段と、
前記第1のデータ選択手段から出力されるデータ信号と前記データ保持手段により保持されたデータ信号のいずれかを選択して出力する第2のデータ選択手段と、
前記方向選択手段から出力される方向制御信号が出力方向を示しているとき、前記第2のデータ選択手段から出力されるデータ信号を前記入出力共用端子に出力する出力手段と
を備えることを特徴とする入出力共用端子制御回路。
(付記2)前記第2のデータ選択手段は、前記方向選択手段から出力される方向制御信号が示す方向が、出力方向から入力方向に切り替わるときに、前記データ保持手段により保持されたデータ信号を選択して出力することを特徴とする付記1記載の入出力共用端子制御回路。
(付記3)前記第1のデータ選択手段および方向選択手段を制御する第1の選択信号の変化を検出する第1の検出手段と、前記方向選択手段から出力される方向制御信号の変化を検出する第2の検出手段と、該第1の検出手段および第2の検出手段の出力信号からハザード条件を検出して、前記第2のデータ選択手段を制御する第2の選択信号を出力する第3の検出手段とをさらに備えることを特徴とする付記1または2記載の入出力共用端子制御回路。
(付記4)前記第1の検出手段は、所定期間経過前と経過後の前記第1の選択信号の値を比較して、前記第1のデータ選択信号の変化を検出し、前記第2の検出手段は、該所定期間経過前と経過後の前記方向制御信号の値を比較して、前記方向制御信号の変化を検出することを特徴とする付記3記載の入出力共用端子制御回路。
(付記5)前記方向選択手段から出力される方向制御信号を保持する方向保持手段をさらに備え、前記第3の検出手段は、該方向保持手段により保持された方向制御信号の値に応じて前記第2の選択信号の値を変更することを特徴とする付記3または4記載の入出力共用端子制御回路。
(付記6)複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子に転送されるデータ信号を選択して出力するデータ選択手段と、
前記複数の回路からそれぞれ出力される複数の方向制御信号の中から、前記データ選択手段から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する第1の方向選択手段と、
前記第1の方向選択手段から出力される方向制御信号を保持する方向保持手段と、
前記第1の方向選択手段から出力される方向制御信号と前記方向保持手段により保持された方向制御信号のいずれかを選択して出力する第2の方向選択手段と、
前記第2の方向選択手段から出力される方向制御信号が出力方向を示しているとき、前記データ選択手段から出力されるデータ信号を前記入出力共用端子に出力する出力手段と
を備えることを特徴とする入出力共用端子制御回路。
(付記7)前記第2の方向選択手段は、前記第1の方向選択手段から出力される方向制御信号が示す方向が、入力方向から出力方向に切り替わるときに、前記方向保持手段により保持された方向制御信号を選択して出力することを特徴とする付記6記載の入出力共用端子制御回路。
(付記8)前記データ選択手段および第1の方向選択手段を制御する第1の選択信号の変化を検出する第1の検出手段と、前記第1の方向選択手段から出力される方向制御信号の変化を検出する第2の検出手段と、該第1の検出手段および第2の検出手段の出力信号からハザード条件を検出して、前記第2の方向選択手段を制御する第2の選択信号を出力する第3の検出手段とをさらに備えることを特徴とする付記6または7記載の入出力共用端子制御回路。
(付記9)前記第1の検出手段は、所定期間経過前と経過後の前記第1の選択信号の値を比較して、前記第1のデータ選択信号の変化を検出し、前記第2の検出手段は、該所定期間経過前と経過後の前記方向制御信号の値を比較して、前記方向制御信号の変化を検出することを特徴とする付記8記載の入出力共用端子制御回路。
(付記10)前記第3の検出手段は、前記方向保持手段により保持された方向制御信号の値に応じて前記第2の選択信号の値を変更することを特徴とする付記8または9記載の入出力共用端子制御回路。
(付記11)複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子に転送されるデータ信号を選択して出力する第1のデータ選択手段と、
前記複数の回路からそれぞれ出力される複数の方向制御信号の中から、前記第1のデータ選択手段から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する第1の方向選択手段と、
前記第1のデータ選択手段から出力されるデータ信号を保持するデータ保持手段と、
前記第1の方向選択手段から出力される方向制御信号を保持する方向保持手段と、
前記第1のデータ選択手段から出力されるデータ信号と前記データ保持手段により保持されたデータ信号のいずれかを選択して出力する第2のデータ選択手段と、
前記第1の方向選択手段から出力される方向制御信号と前記方向保持手段により保持された方向制御信号のいずれかを選択して出力する第2の方向選択手段と、
前記第2の方向選択手段から出力される方向制御信号が出力方向を示しているとき、前記第2のデータ選択手段から出力されるデータ信号を前記入出力共用端子に出力する出力手段と
を備えることを特徴とする入出力共用端子制御回路。
本発明の入出力共用端子制御回路の原理図である。 第1の入出力共用端子制御回路の構成図である。 第1の切り替え動作のタイミングチャートである。 第2の切り替え動作のタイミングチャートである。 第2の入出力共用端子制御回路の構成図である。 比較回路の構成図である。 従来の入出力共用端子制御回路の構成図である。 従来の第1の切り替え動作のタイミングチャートである。 従来の第2の切り替え動作のタイミングチャートである。 従来のCPUにおける入出力共用端子制御回路の構成図である。 従来のCPUにおける第1の切り替え動作のタイミングチャートである。 従来のCPUにおける第2の切り替え動作のタイミングチャートである。
符号の説明
11、12 回路
13、14、33、202、203、221、235、236、502、503、521、535、536 セレクタ
15、201、204、211、222、501、504、511、522 ラッチ回路
16、208、508 スリーステートバッファ
21 CPU
22 I/Oピン
23 負荷回路
31 内部レジスタ
32 ペリフェラル回路
34 I/Oバッファ
101、105 データ選択手段
102、106 方向選択手段
103 データ保持手段
104 方向保持手段
107 出力手段
205、505 選択信号比較回路
206、506 方向制御信号比較回路
207、507 ハザード条件検出回路
212、223、523、601、602 XOR回路
231、233、234、531、533、534 AND回路
232、532 インバータ
512 比較回路
603 OR回路

Claims (9)

  1. 複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子に転送されるデータ信号を選択して出力する第1のデータ選択手段と、
    前記複数の回路からそれぞれ出力される複数の方向制御信号の中から、前記第1のデータ選択手段から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する方向選択手段と、
    前記第1のデータ選択手段から出力されるデータ信号を保持するデータ保持手段と、
    前記第1のデータ選択手段から出力されるデータ信号と前記データ保持手段により保持されたデータ信号のいずれかを選択して出力する第2のデータ選択手段と、
    前記方向選択手段から出力される方向制御信号が出力方向を示しているとき、前記第2のデータ選択手段から出力されるデータ信号を前記入出力共用端子に出力する出力手段と
    を備えることを特徴とする入出力共用端子制御回路。
  2. 前記第2のデータ選択手段は、前記方向選択手段から出力される方向制御信号が示す方向が、出力方向から入力方向に切り替わるときに、前記データ保持手段により保持されたデータ信号を選択して出力することを特徴とする請求項1記載の入出力共用端子制御回路。
  3. 前記第1のデータ選択手段および方向選択手段を制御する第1の選択信号の変化を検出する第1の検出手段と、前記方向選択手段から出力される方向制御信号の変化を検出する第2の検出手段と、該第1の検出手段および第2の検出手段の出力信号からハザード条件を検出して、前記第2のデータ選択手段を制御する第2の選択信号を出力する第3の検出手段とをさらに備えることを特徴とする請求項1または2記載の入出力共用端子制御回路。
  4. 前記第1の検出手段は、所定期間経過前と経過後の前記第1の選択信号の値を比較して、前記第1のデータ選択信号の変化を検出し、前記第2の検出手段は、該所定期間経過前と経過後の前記方向制御信号の値を比較して、前記方向制御信号の変化を検出することを特徴とする請求項3記載の入出力共用端子制御回路。
  5. 複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子に転送されるデータ信号を選択して出力するデータ選択手段と、
    前記複数の回路からそれぞれ出力される複数の方向制御信号の中から、前記データ選択手段から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する第1の方向選択手段と、
    前記第1の方向選択手段から出力される方向制御信号を保持する方向保持手段と、
    前記第1の方向選択手段から出力される方向制御信号と前記方向保持手段により保持された方向制御信号のいずれかを選択して出力する第2の方向選択手段と、
    前記第2の方向選択手段から出力される方向制御信号が出力方向を示しているとき、前記データ選択手段から出力されるデータ信号を前記入出力共用端子に出力する出力手段と
    を備えることを特徴とする入出力共用端子制御回路。
  6. 前記第2の方向選択手段は、前記第1の方向選択手段から出力される方向制御信号が示す方向が、入力方向から出力方向に切り替わるときに、前記方向保持手段により保持された方向制御信号を選択して出力することを特徴とする請求項5記載の入出力共用端子制御回路。
  7. 前記データ選択手段および第1の方向選択手段を制御する第1の選択信号の変化を検出する第1の検出手段と、前記第1の方向選択手段から出力される方向制御信号の変化を検出する第2の検出手段と、該第1の検出手段および第2の検出手段の出力信号からハザード条件を検出して、前記第2の方向選択手段を制御する第2の選択信号を出力する第3の検出手段とをさらに備えることを特徴とする請求項5または6記載の入出力共用端子制御回路。
  8. 前記第1の検出手段は、所定期間経過前と経過後の前記第1の選択信号の値を比較して、前記第1のデータ選択信号の変化を検出し、前記第2の検出手段は、該所定期間経過前と経過後の前記方向制御信号の値を比較して、前記方向制御信号の変化を検出することを特徴とする請求項7記載の入出力共用端子制御回路。
  9. 複数の回路からそれぞれ出力される複数のデータ信号の中から、入出力共用端子に転送されるデータ信号を選択して出力する第1のデータ選択手段と、
    前記複数の回路からそれぞれ出力される複数の方向制御信号の中から、前記第1のデータ選択手段から出力されるデータ信号と同じ回路の方向制御信号を選択して出力する第1の方向選択手段と、
    前記第1のデータ選択手段から出力されるデータ信号を保持するデータ保持手段と、
    前記第1の方向選択手段から出力される方向制御信号を保持する方向保持手段と、
    前記第1のデータ選択手段から出力されるデータ信号と前記データ保持手段により保持されたデータ信号のいずれかを選択して出力する第2のデータ選択手段と、
    前記第1の方向選択手段から出力される方向制御信号と前記方向保持手段により保持された方向制御信号のいずれかを選択して出力する第2の方向選択手段と、
    前記第2の方向選択手段から出力される方向制御信号が出力方向を示しているとき、前記第2のデータ選択手段から出力されるデータ信号を前記入出力共用端子に出力する出力手段と
    を備えることを特徴とする入出力共用端子制御回路。
JP2006086708A 2006-03-27 2006-03-27 入出力共用端子制御回路 Active JP4699927B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2006086708A JP4699927B2 (ja) 2006-03-27 2006-03-27 入出力共用端子制御回路
TW095125842A TWI327420B (en) 2006-03-27 2006-07-14 Common input/output terminal control circuit
US11/490,151 US7456657B2 (en) 2006-03-27 2006-07-21 Common input/output terminal control circuit
CN200610104269XA CN101047380B (zh) 2006-03-27 2006-08-07 共用输入/输出端子控制电路
KR1020060074667A KR100776937B1 (ko) 2006-03-27 2006-08-08 입출력 공용 단자 제어 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006086708A JP4699927B2 (ja) 2006-03-27 2006-03-27 入出力共用端子制御回路

Publications (2)

Publication Number Publication Date
JP2007264853A true JP2007264853A (ja) 2007-10-11
JP4699927B2 JP4699927B2 (ja) 2011-06-15

Family

ID=38637805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006086708A Active JP4699927B2 (ja) 2006-03-27 2006-03-27 入出力共用端子制御回路

Country Status (5)

Country Link
US (1) US7456657B2 (ja)
JP (1) JP4699927B2 (ja)
KR (1) KR100776937B1 (ja)
CN (1) CN101047380B (ja)
TW (1) TWI327420B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008102923A (ja) * 2006-09-28 2008-05-01 Samsung Electronics Co Ltd システムオンチップ
KR101468572B1 (ko) * 2013-04-25 2014-12-04 주식회사 뉴티씨 (Newtc) 데이터 구분 입출력 회로

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120083473A1 (en) 2010-09-21 2012-04-05 Johanna Holldack Treatment of conditions by toll-like receptor modulators
CN103078624B (zh) * 2011-10-26 2014-07-16 迈实电子(上海)有限公司 信号输入电路和方法以及具有信号输入电路的芯片
US8748798B2 (en) * 2012-09-05 2014-06-10 Omnivision Technologies, Inc. Comparator circuit for reduced output variation
WO2014187470A1 (en) * 2013-05-20 2014-11-27 Abb Ab Machine safety apparatus and a method of operating a machine safety apparatus
US10268601B2 (en) * 2016-06-17 2019-04-23 Massachusetts Institute Of Technology Timely randomized memory protection
JP2018163498A (ja) * 2017-03-24 2018-10-18 エイブリック株式会社 監視回路

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63205754A (ja) * 1987-02-21 1988-08-25 Nec Corp デイジタル処理装置の内部バス拡張方式
US6636070B1 (en) * 1997-10-16 2003-10-21 Altera Corp Driver circuitry for programmable logic devices with hierarchical interconnection resources
JP2004192051A (ja) * 2002-12-06 2004-07-08 Ricoh Co Ltd 共用端子制御装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960003748Y1 (ko) * 1991-07-13 1996-05-07 임종호 호퍼분리형 선별기
US5802882A (en) * 1996-06-03 1998-09-08 General Motors Corporation Knitted cover
JP2003233584A (ja) * 2002-02-12 2003-08-22 Ricoh Co Ltd データ転送装置
JP2005165592A (ja) * 2003-12-02 2005-06-23 Matsushita Electric Ind Co Ltd データ転送装置
KR102407406B1 (ko) * 2017-06-23 2022-06-13 삼성디스플레이 주식회사 장식 인쇄 부재 및 장식 인쇄 부재를 포함하는 표시 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63205754A (ja) * 1987-02-21 1988-08-25 Nec Corp デイジタル処理装置の内部バス拡張方式
US6636070B1 (en) * 1997-10-16 2003-10-21 Altera Corp Driver circuitry for programmable logic devices with hierarchical interconnection resources
JP2004192051A (ja) * 2002-12-06 2004-07-08 Ricoh Co Ltd 共用端子制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008102923A (ja) * 2006-09-28 2008-05-01 Samsung Electronics Co Ltd システムオンチップ
KR101468572B1 (ko) * 2013-04-25 2014-12-04 주식회사 뉴티씨 (Newtc) 데이터 구분 입출력 회로

Also Published As

Publication number Publication date
CN101047380B (zh) 2010-09-29
TW200737712A (en) 2007-10-01
US20080001631A1 (en) 2008-01-03
JP4699927B2 (ja) 2011-06-15
CN101047380A (zh) 2007-10-03
US7456657B2 (en) 2008-11-25
KR20070096747A (ko) 2007-10-02
TWI327420B (en) 2010-07-11
KR100776937B1 (ko) 2007-11-21

Similar Documents

Publication Publication Date Title
JP4699927B2 (ja) 入出力共用端子制御回路
US7622961B2 (en) Method and apparatus for late timing transition detection
US7574638B2 (en) Semiconductor device tested using minimum pins and methods of testing the same
US8013637B2 (en) Clock signal selection circuit
US7586337B2 (en) Circuit for switching between two clock signals independently of the frequency of the clock signals
US6720813B1 (en) Dual edge-triggered flip-flop design with asynchronous programmable reset
US20190103861A1 (en) Skew sensor with enhanced reliability
JP3604323B2 (ja) クロック切替回路
US7716528B2 (en) Method and system for configurable trigger logic for hardware bug workaround in integrated circuits
JP2009177659A (ja) パルスラッチ回路
JP2008204177A (ja) 遅延調整回路を有するアレイ型プロセッサ
JP2003316566A (ja) パイプラインプロセッサ
JP4862588B2 (ja) クロック制御回路および半導体集積回路
JP3963158B2 (ja) 半導体回路装置及びそのテスト方法
JP3776895B2 (ja) 位相調整回路
JP5117957B2 (ja) フリップフロップ回路
JP2008058098A (ja) 半導体集積回路
JP2005309652A (ja) マイクロコントローラ
JP2007304073A (ja) 半導体装置および半導体装置のテスト実行方法
JP2013156073A (ja) 半導体装置
JP2001257566A (ja) イネーブル付きラッチ回路
JP4620492B2 (ja) バスインターフェイス回路
JP2007336216A (ja) フリップフロップ回路およびそれを用いた半導体集積回路装置
JP2008196917A (ja) 非同期式カウンタ回路
JP2012182702A (ja) リセット回路および半導体装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081017

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: 20110301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110303

R150 Certificate of patent or registration of utility model

Ref document number: 4699927

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250