(58)【調査した分野】(Int.Cl.,DB名)
保持するデータの出力信号への組み込みを要求する要求信号を調停部に送付し、前記要求信号に対する許可信号を受けた場合に前記データを含むデータ信号を前記調停部へ逐次送り、それとともに、前記要求信号の送信時から前記許可信号を受領しない時間が閾値以上の場合に、通知信号を前記調停部に送る送付部からなる送付部群と、
前記送付部群の各送付部から送られた前記データ信号について、前記通知信号を受けない場合は予め設定された前記送付部についての優先順に従う後段への出力を行い、また、前記通知信号を受けた場合には、当該通知信号から定めた前記送付部から受けた前記データ信号の前記出力を行う、前記調停部と
を備え、
前記要求信号、前記データ信号、前記許可信号及び前記通知信号の各々について前記送付部又は前記調停部が行う処理がプログラムの実行によるものを含まず、
前記優先順の設定を、前記要求信号の各々をある時間無効化するマスク信号の設定により行い、
入力される第二信号により、前記マスク信号の信号レベルを、すべて、前記無効化を行う信号レベルにする、
出力装置。
特定の前記送付部からの前記要求信号についての前記許可信号が、前記調停部からその前記送付部に送付されている間は、その前記調停部は、その前記許可信号を、他の前記送付部に係る前記許可信号に切り替えない、請求項1乃至請求項4のうちのいずれか一に記載された出力装置。
【発明を実施するための形態】
【0013】
実施形態において説明する出力装置は、いずれも、特許文献1が開示する転送装置をプログラムによる処理を用いずに構成したものである。
<第一実施形態>
第一実施形態は、チャネル(以下、CHとも記す)ごとのデータ出力の優先順と、優先順の低いCHにおけるデータの滞留とのバランスをとり得る出力装置に関する実施形態である。
【0014】
なお、以下の実施形態の説明は、各信号のレベルを、1をアクティブレベル、0を非アクティブレベルとする正論理で表すが、負論理を適用しても良い。また、後述のマスクを行う信号については、マスクを行う信号レベルを非アクティブレベルとし、マスクを行わない信号レベルをアクティブレベルとする。
[構成と動作]
図1は、第一実施形態の出力装置の例である出力装置100の構成を表す概念図である。
【0015】
出力装置100は、予め設定されたCHの優先順に従い各CHに係るデータ列の部分をつなぎ合わせ、出力装置100の後段に出力するための装置である。ここで、前記CHは、通信用に割り当てられた周波数帯域を表すものである。
出力装置100は、例えば、モバイルワイヤレス通信における基地局において用いられる(特許文献1参照)。
【0016】
出力装置100の各構成は、図示しない共通のクロック信号発生源からのクロック信号に同期して、各処理を行うものとする。
【0017】
図1に表すように、出力装置100はCH部901乃至90nのn個のCH部と、調停部401とを備える。
【0018】
CH部90v(vは1以上n以下)は、マスタ10vと、FIFO20vと、ALM検出部30vとを備える。ここで、FIFOは、First In First Outの略である。また、ALMはAlarmの略である。
【0019】
なお、vが2以上の各CH部が備える上述の構成は、図示を省略してある。
【0020】
各CH部には、前述のCHの優先順に対応する優先順が設定されている。ここでは、仮に、前記vの値が小さいものほど優先順が高いものとする。
【0021】
まず、出力装置100の構成及び動作の概要の説明を行う。
【0022】
FIFO20vは、マスタ10v(vは1以上n以下)から送付されたデータを格納し、調停部401との間で送付に関する合意が取れた場合に、そのデータを調停部401に送付する。当該合意は、FIFO20v(vは1以上n以下)からの送付要求に対する許可が調停部401から得られることにより成立する。
【0023】
FIFO20vから調停部401に前記データが送付された場合は、調停部401は、その信号を、一本の出力信号に組み込んで、調停部401の後段に出力する。
【0024】
前記許可は、原則は、前記優先順に従って行われる。従い、二つのFIFO20vから、調停部401に対して、同時に前記送付要求が送付された場合には、前記許可は、原則として、vの値がより小さいFIFO20vからの前記送付要求に対して、調停部401から送られる。
【0025】
ALM検出部30v(vは1以上n以下)は、FIFO20vから調停部401に対して前記送付要求を送付してから、調停部401からFIFO20vに対して、その送付要求についての前記許可が送付される間での時間を監視する。当該時間は、FIFO20vから調停部401への前記データの送付が滞留している時間を表す。
【0026】
ALM検出部30vは、前記時間が所定の閾値を超えると、調停部401に、その送付要求に対する前記許可を、前記優先順に拘わらず強制的に送付させるための信号を送付する。
【0027】
それにより、調停部401は、その送付要求に対する前記許可をFIFO20vに対して送付する。これにより、FIFO201は、保持する前記データを、調停部401に送付する。
【0028】
以上により、出力装置100においては、原則前記優先順に従う各CH部からのデータの出力と、各CH部のデータの出力に所定の滞留が生じた場合のそのCH部のデータの強制出力とが行われる。
【0029】
以下、
図1に表す構成を、より詳細に説明する。
【0030】
マスタ10v(vは1以上n以下)は、前述の所定のデータを保持している。そして、マスタ10vは、前記データを含むデータ信号svdtをFIFO20vに送り、格納させる。
【0031】
マスタ10vは、また、FIFO20vに、データ信号svdtの書き込みと停止とを行わせるための信号s1weを送付する。
【0032】
マスタ10vは、また、FIFO20vから送付された信号svflの信号レベルが1か0かを判定する。信号svflは、FIFO20vが備える図示しない記録部が保持している前記データの量が閾値を超えた場合に、1のレベルになる信号である。
【0033】
FIFO20v(vは1以上n以下)は、マスタ10vから送付される信号svweが、FIFO20vにデータ信号svdtが1のレベルである時間帯に、データ信号svdtにより送られたデータを格納する。
【0034】
FIFO20vは、また、FIFO20vの備える前記記録部が格納するデータの量が前記閾値を超えた場合に、マスタ10vに送付する信号svflを1の信号レベルにする。
【0035】
FIFO20vは、また、前記記録部が前記データを格納している場合に、調停部401に送付する読み込みを要求する要求信号svrqを、要求することを表すvの信号レベルにする。
【0036】
FIFO20vは、また、調停部401がFIFO20vに入力する、データ信号の送付を許可する許可信号svakが、許可することを表す1の信号レベルである場合に、FIFO20vが保持する前記データを順次読み出す。そして、FIFO20vは、読み出した前記データを、データ信号svrdtに含め、調停部401に送付する。
【0037】
FIFO20vから調停部401に送付される要求信号svrqと、調停部401からFIFO20vに送付される許可信号svakとは、ALM検出部30vにも送付される。
【0038】
ALM検出部30v(vは1以上n以下)は、FIFO20vから送付された要求信号svrqが1の信号レベルに変わった時刻から、調停部401から入力された許可信号svakが1の信号レベルに変わる時刻までの時間をカウントする。ALM検出部30vは、前記カウントに係るカウント値が閾値Tthに到達すると、調停部401に送るアラーム信号svalを、アラームがあることを表す1の信号レベルにする。
【0039】
図1に表す調停部401には、CH部90v(vは1以上n以下)の各々が送付する、要求信号svrq、アラーム信号sval及びデータ信号svrdtが入力される。調停部401は、これらの信号から、調停後データ信号sdtと、調停後データ信号sdtに係るイネーブル信号である可能化信号senとを作成し、調停部401の後段に出力する。ここで、調停は、CH部90v(vは1以上n以下)に設定された優先順を考慮して調停部401からのデータの出力順序を決めることである。また、前記優先順は、調停部401がそのCH部のデータを出力する優先度の順位である。ただし前記優先度は原則的なものであり、後述のようにあるCH部においてデータの滞留が生じた場合には、そのCH部のデータを優先的に出力する処理が行われる。
【0040】
図1に表すFIFO201としては、例えば、非特許文献3に記載されたものを用いる。同文献が開示するFIFOは、ハードウェアであるFPGAにより構成されている。
【0041】
図2は、
図1に表すALM検出部301の構成例を表す概念図である。
【0042】
ALM検出部301は、AND素子311と、カウンタ316と、比較器321と、反転素子326と、AND素子331と、反転素子336とを備える。
【0043】
図2に表す端子H及びIは、
図1に表すFIFO201及び調停部401に接続されている。また、端子Jは、調停部401に接続されている。
【0044】
AND素子331は、端子Hを介してFIFO201から入力される要求信号s1rqと、調停部401から端子Iを介して入力される許可信号s1akとの信号レベルが等しい場合には0を、異なる場合には1を、それぞれ、出力する。当該出力に係る出力先は、反転素子336及びカウンタ316のリセット(R)端子である。
【0045】
その結果、AND素子311は、要求信号s1rqの信号レベルが1で、かつ、許可信号s1akの信号レベルが0の場合に1を、それ以外の場合は0を、それぞれ、カウンタ316に出力する。
【0046】
カウンタ316には、前述のクロック信号が入力されている。カウンタ316は、AND素子331からの出力が1に変わるとクロック周期のカウントを開始する。そして、カウンタ316は、AND素子311から入力される信号の信号レベルが1の間、1クロック周期ごとに1加算した出力信号を、比較器321に出力する。カウンタ316は、AND素子311から入力される信号の信号レベルが0の間は、0を出力する。
【0047】
比較器321は、カウンタ316からの出力信号の値が、設定されている閾値を超えるとアラーム信号s1alの信号レベルを0から1に切り替える。比較器321は、カウンタ316からの出力信号の値が、設定されている閾値を下回ると、アラーム信号s1alの信号レベルを0に切り替える。
【0048】
図3は、
図2に表すALM検出部301の動作例を表す概念図である。ここでは、前述の閾値は127であるものとしている。
【0049】
図3に表すように時刻t1で要求信号s1rqの信号レベルが0から1に切り替わり、許可信号の信号レベルは0のままだとする。この場合、
図2に表すAND素子311は、カウンタ316に1の信号レベルの信号を出力し、カウンタ316はカウントを開始する。
【0050】
そして、カウンタ316のカウント値が120の時に、許可信号s1akの信号レベルが0に切り替わったとする。その場合、AND素子311からの信号レベルが0に切り替わるので、カウンタ316は出力値を0に切り替える。
【0051】
図2に表す比較器321は、カウンタ316からの出力値が保持している127より小さいので、アラーム信号s1alの信号レベルを0に維持する。
【0052】
その後、時刻t3で要求信号s1rqの信号レベルが0になるが、AND素子311からの信号レベルは0のままである。
【0053】
その後、
図3に表すように時刻t4で要求信号s1rqの信号レベルが0から1に切り替わり、許可信号の信号レベルは0のままだとする。この場合、
図2に表すAND素子311は、カウンタ316に1の信号レベルの信号を出力し、カウンタ316はカウントを開始する。
【0054】
そして、時刻t5で、比較器321は、カウンタ316からのカウント値が127に達した場合に、アラーム信号s1alの信号レベルを1にする。
【0055】
その後、時刻t6で、要求信号s1rqの信号レベルが0になり、それにともない、AND素子311からの信号レベルが0に切り替わる。そして、カウンタ316はカウント値を0にする。そして、比較器321は、アラーム信号s1alの信号レベルを0に切り替える。
【0056】
図4は、
図1に表す調停部401の構成例を表す概念図である。
【0057】
図1に表す調停部401は、例えば、
図4に表すように、変換部411と、マスク部412と、PE413とを備える。ここで、PEは、プライオリティエンコーダの略である。
【0058】
変換部411には、各CH部から出力されたアラーム信号sval(vは1以上n以下)が入力される。変換部411は、アラーム信号svalの入力により、マスク信号svmkを、マスク部412に出力する。変換部411に入力されるアラーム信号と変換部411から出力されるマスク信号との対応関係の例は、
図11を参照して後述する。ここで、マスク信号は、そのマスク信号がマスクを行う0の信号レベルの期間、相手方の信号を0の信号レベルにする信号である。
【0059】
前記対応関係を表す情報は、変換部411に、予め格納されている。
【0060】
変換部411としては、例えば、周知のデュアルポートRAM(Random Access Memory、非特許文献1及び2参照)を用いる。
【0061】
マスク部412は、要求信号svrq(vは1以上n以下)の各々を、この順に、変換部411から入力されたマスク信号svmkの各々によりマスクしたマスク後要求信号svmrqをPE413に入力する。
【0062】
PE413は、マスク部412から入力されたマスク後要求信号svmrq(vは1以上n以下)により定める優先順に従い、要求信号svrqのいずれかを有効化し、他を無効化する。そして、PE413は、有効化した要求信号に係るCH部についての、許可信号を1の信号レベルにする。
【0063】
PE413は、また、CH部90v(vは1以上n以下)より入力されたデータ信号svrdtから、1の信号レベルの許可信号に対応するCH部のデータ信号svrdtのいずれかを選択する。そして、PE413は、選択したデータ信号を、調停後データ信号sdtとして、前記後段に出力する。PE413は、調停後データ信号sdtの出力とともに、前記後段において調停後データ信号sdtに関する処理を可能にする可能化信号sen信号を、前記後段に出力する。
【0064】
図5は、
図4に表すマスク部412の構成例を表す概念図である。
【0065】
図5に表すマスク部412は、n個のAND素子であるAND素子42v(vは1以上n以下)を備える。
【0066】
各AND素子には、
図1に表すCH部90v(vは1以上n以下)の対応する各々からの要求信号(要求信号svrqのいずれか)と、マスク信号(マスク信号svmkのいずれか)とが入力される。
【0067】
各AND素子は、入力された要求信号とマスク信号との論理積であるマスク後要求信号svmrq(vは1以上n以下)を、
図4に表すPE413に出力する。
【0068】
図6は、
図4に表すPE413の構成例を表す概念図である。
図6に表す各素子において、同図に向かって左側の端子が入力端子であり、右側の端子が出力端子である。
【0069】
PE413は、n−1個のAND素子であるAND素子432乃至43nと、n個のSRタイプのフリップフロップ(FF)であるFF441乃至44nと、セレクタ(SEL)であるSEL451と、を備える。
【0070】
図6に表すPE413は、
図1に表す出力装置100において、符号の数字の小さいCH部ほど、前記優先順が高いことを前提としている。
【0071】
各AND素子には、同図においてそのAND素子の並びの左側からマスク後要求信号(マスク後要求信号svmrqのうちのいずれか)が入力される。
【0072】
AND素子432乃至43nの各々には、また、入力されるマスク後要求信号のsの次の数字よりsの次の数字が小さい符号で表す二次マスク後要求信号の1と0とを反転させた信号が、すべて、入力される。ここで、二次マスク後要求信号は、次に説明するように、各AND素子からの出力信号である。
【0073】
各AND素子は、入力されたすべての信号の論理積である、前述の二次マスク後要求信号(二次マスク後要求信号s2amrq乃至snamrqのいずれか)を出力する。
【0074】
なお、二次マスク後要求信号s1amrqは、マスク後要求信号s1mrqに等しい。
【0075】
このように、いずれの前記二次マスク後信号も、前記二次マスク後信号を表す符号がより小さい前記二次マスク後信号のいずれかの信号レベルが1の間は0になる。そのため、二次マスク後要求信号s2amrq乃至snamrqの各々における1の信号レベルは、時間軸において、互いに重なり合わない。また、二次マスク後要求信号smamrq(mは1以上n以下)においては、mが小さいものほど、1の信号レベルをとることが、優先されている。
【0076】
一方、各FFのR端子(リセット端子)には、データ出力完了信号が入力される。データ出力完了信号は、パルス状の信号であり、すべてのマスタのデータの転送が完了したタイミングで、各FFに入力される。各FFが保持する情報は、データ出力完了信号の入力によりクリアされる。
【0077】
PE413においては、マスク後要求信号s1mrqは、特に他の信号によりマスクされずに、FF441のS端子に入力される。また、PE413においては、wの値が2以上n以下のマスク後要求信号swmrqは、マスク後要求信号s(w−1)mrqの反転信号によりマスクされる。そのため、マスク後要求信号swmrqは、マスク後要求信号s(w−1)mrqが1の期間は0になる。当該マスクが行われたマスク後要求信号swmrqである第二マスク後要求信号swamrqは、対応する各FFのS端子に入力される。上記により、各第二マスク後要求信号は、一段上位の第二マスク後信号が1の期間はマスクされ0になる。
【0078】
各FFのR端子に入力されるデータ出力信号の信号レベルは、いずれかのマスタに転送すべきデータがある間は0である。その間、FF441乃至44nの各々は、S端子に1が入力される期間は、1を出力し、S端子に0が入力される期間は何も出力しない。
【0079】
各FFからの出力は、対応する許可信号(許可信号s1ak乃至snakのいずれか)になる。許可信号s1ak乃至snakは、
図1に表すCH部のうちの対応するものが備えるFIFOに入力される。許可信号s1ak乃至snakは、また、SEL451にも入力される。
【0080】
SEL451には、許可信号s1ak乃至snakと、データ信号s1rdt乃至snrdtとが入力される。
【0081】
SEL451は、許可信号spak(pは1以上n以下)が1の信号レベルの時に、データ信号sprdtを、調停後データ信号sdtとして出力する。
【0082】
SEL451は、許可信号spak(pは1以上n以下)のうちのいずれかが1の信号レベルの時に信号レベルを1とする可能化信号senを、出力装置100の後段に出力する。
【0083】
PE413は、優先順のより高いCH部のマスク後要求信号により、優先順のより低いCH部の読み込み要求信号をマスクする。そのため、PE413は、原則、優先順の高いCH部のデータ信号を、原則、優先的に、調停後データ信号に組み込んで、後段に出力する。
【0084】
ただし、優先順のより高いCH部のデータ信号の後段への出力が過度に優先されると、優先順の低いCH部のデータ信号の後段への出力に過度の滞留が生じる場合があり得る。この問題を防ぐための調整は、ALM検出部30q(qは1以上n以下)と
図4に表す変換部411と、マスク部412とが行う。ALM検出部30qは、FIFOが要求信号を1の信号レベルに変更してから、調停部401がその要求信号に対応する許可信号を1の信号レベルに変更するまでの時間により、あるCH部のデータ信号に滞留があることを検出する。そして、ALM検出部30qは、そのCHについてのアラーム信号を変換部411に送付する。そして、変換部411及びマスク部412は、当該滞留の解消を目指すように予め設定されたマスク後要求信号を、PE413に入力する。
【0085】
これらにより、出力装置100は、CH部ごとのデータ出力の優先順と、優先順の低いCH部におけるデータの滞留とのバランスをとることを、可能にする。
【0086】
出力装置100は、さらに、上記説明により明らかなように、プログラムによる処理を用いずに構成することが可能である。
[具体例]
図7乃至
図10は、
図1に表す出力装置100における、各信号の動作タイミング例を表す図である。
【0087】
図7乃至
図9の各々は、この順に、CH部901乃至903の各々における各信号の動作タイミング例を表す。また、
図10は、調停部401における各信号の動作タイミング例を表す。
【0088】
また、
図7乃至
図10では、
図1に表す出力装置100は、CH部901乃至903の三つのCH部を備え、各CH部から出力されるデータの前記優先順は、チャンネルを表す符号の番号が小さいものほど高いとする。また、ALM検出部301が調停部401にアラーム信号を出力するまでのカウント値をFFFFとする。
【0089】
また、以下の説明においては、変換部411が保持する、入力されるアラーム信号と出力するマスク信号との対応関係は、後述の
図11に表すものとする。
【0090】
FIFO201は、
図7に表すように、時刻T1以降において、要求信号s1rqの信号レベルを1にすることを仮定する。
【0091】
また、FIFO202は、
図8に表すように、時刻T3からT8の間で、要求信号s2rqの信号レベルを1にすることを仮定する。
【0092】
FIFO203は、
図9に表すように、時刻T2からT7の間で、要求信号s3rqを1にすることを仮定する。
【0093】
これらを受けて、
図1に表す調停部401は、
図7に表すように、時刻T1からT5の間及びT8以降で許可信号s1akを1にすることを仮定する。また、調停部401は、時刻T7とT8の間で、許可信号s2akを1にすることを仮定する。また、調停部401は、時刻T5とT7の間で、許可信号s2akを1にすることを仮定する。
【0094】
以下、以上説明した事項を前提に、出力装置100の動作例を説明する。
【0095】
図7に表すように、要求信号s1rqの信号レベルが0から1に変化した時刻と許可信号s1akの信号レベルが0から1に変化した時刻とは共に時刻T1である。ALM検出部301は、要求信号s1rqが0から1になってから時間のカウント値がFFFFにならないうちに許可信号s1akが0から1になったため、
図7に表すようにアラーム信号s1alの信号レベルを0に維持し続ける。
【0096】
また、時刻T1からT5及びT8以降において要求信号s1rqの信号レベルと許可信号s1akの信号レベルとは、共に1である。そのため、FIFO201は、調停部401へのデータ信号s1rdtの送付を行う。
図7は、時刻T1からT5において、データ信号s1rdtにより、データD1−1乃至D1−100が送付され、時刻T8以降において、データD1−101以降が送付された旨を表す。
【0097】
一方、
図8は、要求信号s2rqの信号レベルが時刻T3において0から1に変化しても、許可信号s2akの信号レベルはすぐには0から1に変化しないことを表す。そのため、ALM検出部302は、要求信号s2rqが0から1になってから時間のカウントをはじめる。そして、ALM検出部301は、時刻T6において、当該カウント値がFFFFを超えたとする。その場合、ALM検出部301は、アラーム信号s2alの信号レベルを0から1に切り替える。その後、ALM検出部301は、時刻T8において、要求信号s2rqが1から0に変化すると、アラーム信号s2alを1から0に切り替える。
【0098】
図8に表すように、時刻T7からT8の間は、要求信号s2rqの信号レベルとアラーム信号s2alの信号レベルとは共に1である。そのため、FIFO202は、時刻T7からT8の間、調停部401へのデータ信号s2rdtの送付を行う。
図8には、データ信号s2rdtにより、データD2−1乃至D2−3の送付が行われたことを表してある。
【0099】
また、
図9に表すように、要求信号s3rqの信号レベルが時刻T2において0から1に変わっても、許可信号s3akの信号レベルはすぐには0から1に変わらない。そのため、ALM検出部303は、要求信号s3rqの信号レベルが0から1に切り替わった時刻T2から、時間のカウントをはじめる。そして、ALM検出部301は、時刻T4において、当該カウントに係るカウント値がFFFFを超えたことを判定したとする。その場合、ALM検出部301は、時刻T4において、アラーム信号s3alの信号レベルを0から1に切り替える。そして、ALM検出部301は、時刻T7において、要求信号s3rqの信号レベルが1から0に切り替わると、アラーム信号s3alの信号レベルを1から0に切り替える。
【0100】
図9に表すように、また、時刻T5からT7の間は、要求信号s3rqの信号レベルとアラーム信号s3alの信号レベルとが共に1である。そのため、FIFO203は、時刻T5からT7の間、調停部401へのデータ信号s3rdtの送付を行う。
図9は、データ信号s3rdtにより、データD3−1乃至D3−3が調停部401に送付されたことを表す。
【0101】
一方、
図10に表す、
図4に表す調停部401での各信号のタイミングチャートの説明は次の通りである。
【0102】
図7乃至
図9に表すように、時刻T1とT4との間の期間は、
図4に表す変換部411には、ALM検出部301乃至303のいずれからも1の信号レベルのアラーム信号は入力されない。そのため、変換部411は、
図11に表す対応に従い、
図10に表すように、時刻T1とT4との間の期間は、マスク信号s1mk乃至s3mkの信号レベルはいずれもマスクを行わない信号レベルである1とする。
【0103】
すると、時刻T1とT4との間の期間の要求信号s1rqの信号レベルが1であることに従い、マスク後要求信号s1mrqの信号レベルは、時刻T1とT4との間の期間は1になる。
【0104】
これにともない、二次マスク後要求信号s1amrqの信号レベルは、時刻T1とT4との間の期間は1になる。
【0105】
また、時刻T2とT4との間の期間の要求信号s3rqの信号レベルが1であることに従い、マスク後要求信号s3mrqの信号レベルは、時刻T2とT4との間の期間は1になる。
【0106】
マスク後要求信号s3mrqは、
図6では図示を省略してあるAND素子433により、マスク後要求信号s1mrqの信号レベルが1の間はマスクされる。
【0107】
そのため、二次マスク後要求信号31mrqの信号レベルは、時刻T1とT4との間の期間は0になる。
【0108】
そのため、前述のように、
図7に表すように、時刻T1とT4との間の期間は、PE413において予め最も優先順が高く設定されている二次マスク後要求信号s1arqに対応する許可信号s1akの信号レベルが1になる。
【0109】
許可信号s1akは、
図6に表すSEL451にも入力される。前述のように、時刻T1とT4との間の期間は、
図1に表すFIFO201が、SEL451のデータ信号s1rdtを送付する期間である。
【0110】
そのため、SEL451は、時刻T1とT4との間の期間は、データ信号s1rdtに含まれるデータD1−1乃至D1−100を調停後データ信号sdtとして後段に出力する。
【0111】
次に、
図9に表すように、時刻T4において、ALM検出部303から変換部411に入力されるアラーム信号s3alの信号レベルが0から1に切り替わる。これにより、アラーム信号s1al、s2al及びs3alの信号レベルは、この順に、0、0及び1となる。これを受けて、変換部411は、
図11に表す対応に従い、マスク信号s1mk、s2mk及びs2mkの信号レベルを、この順に、0、0及び1とする。
【0112】
この時、要求信号s1rq、s2rq及びs3rqの信号レベルは、この順に1、1及び1なので、マスク後要求信号s1mrq、s2mrq及びs3mrqの信号レベルは、この順に、0、0、1になる。
【0113】
これにより、二次マスク後要求信号s1amrq、s2amrq及びs3amrqの信号レベルは、この順に、0、0、1になる。
【0114】
これにより、データ信号s1rdt及びs2rdtのPE413による調停後データ信号sdtとしての出力は行われなくなる。一方、データ信号s3rdtのPE413による調停後データ信号sdtとしての出力は行われる。そのため、時刻T4とT6との間の期間においては、データ信号s3rdtに含まれるデータD3−1乃至D3−3が調停後データ信号sdtに組み込まれ、後段に出力される。
【0115】
そして、
図8に表すように、時刻T6において、ALM検出部303から変換部411に入力されるアラーム信号s2alの信号レベルが0から1に切り替わる。それにより、アラーム信号s1al、s2al及びs3alの信号レベルは、この順に、0、1及び1となる。これを受けて、変換部411は、後述の
図11に表す対応関係に従い、マスク信号s1mk、s2mk及びs3mkの信号レベルを、この順に、0、1及び1とする。
【0116】
時刻T6において、要求信号s1rq、s2rq及びs3rqの信号レベルは、この順に1、1及び1なので、マスク後要求信号s1mrq、s2mrq及びs3mrqの信号レベルは、この順に、0、1、1になる。
【0117】
これにより、時刻T6以降、二次マスク後要求信号s1amrqの信号レベルは、0である。
【0118】
二次マスク後要求信号s1amrqの信号レベルが0なので、二次マスク後要求信号s2amrqの信号レベルは時刻T6で1になる。
【0119】
また、二次マスク後要求信号s3amrqの信号レベルは、二次マスク後要求信号s2amrqの信号レベルが1の間はマスクされる。そのため、二次マスク後要求信号s2amrqの信号レベルは時刻T6で1に切り替わるが、二次マスク後要求信号s3amrqの信号レベルは0のままである。
【0120】
これらにより、データ信号s1rdt及びs2rdtのPE413による調停後データ信号sdtとしての出力は行われなくなる。一方、データ信号s3rdtのPE413による調停後データ信号sdtとしての出力は行われる。そのため、時刻T4とT6との間においては、データ信号s2rdtに含まれるデータD2−1乃至D2−3が調停後データ信号sdtに組み込まれ、後段に出力される。
【0121】
その後、
図9に表すように、時刻T7において、アラーム信号s3alの信号レベルが1から0に切り替わる。これにより、アラーム信号s1al、s2al及びs3alの信号レベルは、この順に、0、1及び0となる。これを受けて、変換部411は、
図11に表す対応関係に従い、マスク信号s1mk、s2mk及びs3mkの信号レベルを、この順に、0、1及び1とする。
【0122】
図7乃至
図9に表すように、時刻T7において、要求信号s1rq、s2rq及びs3rqの信号レベルは、この順に1、1及び0である。そのため、マスク後要求信号s1mrq、s2mrq及びs3mrqの信号レベルは、
図10に表すように、この順に、0、1、0になる。
【0123】
これを受けて、二次マスク後要求信号s2amrqの信号レベルは、T7以降1になる。一方、二次マスク後要求信号s1amrq及びs3amrqの信号レベルは、共に0である。
【0124】
これらにより、時刻T7以降、データ信号s1rdt及びs3rdtの、PE413による調停後データ信号sdtとしての出力は行われない。一方、データ信号s2rdtのPE413による調停後データ信号sdtとしての出力は行われる。そのため、時刻T7とT8との間においては、データ信号s2rdtが含むデータD2−1乃至D2−3のみが、調停後データ信号sdtに組み込まれ、後段に出力される。
【0125】
その後、時刻T8において、アラーム信号s2alの信号レベルが1から0に切り替わる。これにより、アラーム信号s1al、s2al及びs3alの信号レベルは、この順に、0、0及び0となる。これを受けて、変換部411は、
図11に表す対応関係に従い、マスク信号s1mk、s2mk及びs3mkの信号レベルを、この順に、1、1及び1とする。
【0126】
図7乃至
図9に表すように、時刻T8において、要求信号s1rq、s2rq及びs3rqの信号レベルは、この順に1、0及び0である。そのため、
図10に表すように、マスク後要求信号s1mrq、s2mrq及びs3mrqの信号レベルは、この順に、1、0、0になる。
【0127】
そのため、二次マスク後要求信号s1amrq、s2amrq及びs3amrqの信号レベルは、この順に、1、0、0になる。
【0128】
これらにより、時刻T8以降は、データ信号s2rdt及びs3rdtのPE413による調停後データ信号sdtとしての出力は行われなくなる。一方、データ信号s1rdtのPE413による調停後データ信号sdtとしての出力は行われる。そのため、時刻T8以降においては、データ信号s1rdtに含まれるデータD1−101以降のデータが調停後データ信号sdtに組み込まれ、後段に出力される。
【0129】
図11は、変換部411に入力されるアラーム信号の信号レベルと、変換部411が出力するマスク信号の信号レベルとの関係例を表す図である。
【0130】
変換部411は、アラーム信号a1al乃至a3alの信号レベルが、いずれかの行に表される組合せの場合に、その行のマスク信号a1mk乃至a3mkの信号レベルの組合せを出力する。
【0131】
なお、
図11に表す「状態」は、変換部411にその状態の行に表されたアラーム信号a1al乃至a3alの信号レベルの組合せとマスク信号a1mk乃至a3mkの信号レベルの組合せとの対応が設定された理由である。当該理由は、変換部411が直接保持する情報ではなく、本説明のために記述されたものである。
【0132】
例えば、No.1及び8の各行の「正常」は次を表す。すなわち、アラーム信号a1al乃至a3alがすべて0であるということは、全く異常がなく正常であることを表す。そのため、マスク信号a1mk乃至a3mkをすべて1にし、マスクを行わないということである。
【0133】
また、No.2の行の「後段異常」は、次を表す。すなわち、アラーム信号a1alが1であるということは、変換部411の後段において異常が発生していることを意味する。そのため、マスク信号s1mkの信号レベルを0にし、要求信号s1rqをマスク部412においてマスクし、PE413におけるデータ信号s1rdtの読み込みを行わせない。これにより、アラーム信号a1alが0になるのを待つということである。
【0134】
また、No.3、4及び7の各行の「CH部2の調整出力」は次を表す。アラーム信号s2alが1であるということは、要求信号s2rqが送付されているにも拘らずなかなか許可信号s2akが送付されないことを意味する。従い、データ信号s2rdtの出力装置100から後段への出力にかなりの滞留が生じていることを意味する。そこで、マスク信号s1mkの信号レベルを0にし、マスク部412において要求信号s1rqの信号レベルを0にマスクする。これにより、マスク後要求信号s2mrqとs3mrqの信号レベルが1になり得る。PE413においては、前述のように、マスク後要求信号s2mrqとs3mrqとでは、マスク後要求信号s2mrqの方が優先される。そのため、データ信号s2rdtの出力装置100からの後段への出力を、予め設定された前記優先中順に反しても優先的に行う、調整出力を行うということである。当該調整出力は、データ信号s2rdtの出力装置100から後段への出力の滞留量が、所定の信号レベル以下になり、アラーム信号s2alの信号レベルが0になるまで行われる。
【0135】
また、No5及び6の各行の、「CH部3の調整出力」は次を表す。アラーム信号s3alの信号レベルが1であるということは、要求信号s3rqの信号レベルが1であるにも拘らずなかなか許可信号s3akの信号レベルが1にならないことを意味する。その間、データ信号s2rdtの出力装置100から後段への出力にかなりの滞留が生じる。そこで、マスク信号s1mk及びs2mkの信号レベルを共に0にし、マスク部412において要求信号s1rq及びs1rqの信号レベルを共に0にする。これにより、マスク後要求信号s3mrqの信号レベルのみが1になる。これにより、データ信号s3rdtの出力装置100から後段への出力を、予め設定された前記優先中順に反しても優先的に行う、調整出力を行う。当該調整出力は、データ信号s3rdtの出力装置100から後段への出力の滞留量が、所定の信号レベル以下になり、アラーム信号s3alが0になるまで、行われる。
【0136】
第一実施形態の出力装置のPEは、優先順のより高いCH部のマスク後要求信号により、優先順のより低いCH部の読み込み要求信号をマスクする。そのため、前記出力装置は、原則として、優先順の高いCH部のデータ信号を、優先的に、調停後データ信号に組み込んで、後段に出力する。
【0137】
ただし、優先順のより高いCH部のデータ信号の後段への出力が過度に優先されると、優先順の低いCH部のデータ信号の後段への出力に過度の滞留が生じる場合があり得る。この問題を防ぐため、前記出力装置の所定のCH部のデータ信号の後段への出力に滞留があることを、FIFOが要求信号を出力してから、調停部がその要求信号に対応する許可信号をそのFIFOに出力するまでの時間により検出する。そして、前記出力装置は、当該滞留の解消を目指した前述の調整出力を行うための、マスク後要求信号を、PEに入力する。
【0138】
これらにより、前記出力装置100は、CH部ごとのデータ出力の優先順と、優先順の低いCH部におけるデータの滞留とのバランスをとることを、可能にする。
【0139】
前記出力装置は、さらに、以上の説明により明らかなように、各構成をプログラムによる処理を用いずに構成することが可能である。そのため、前記出力装置は、上記に加えて、中央演算処理装置の負荷が少なく、プログラムによる処理の暴走の懸念やプログラムの作り込みが不要であるという効果を奏する。
[効果]
第一実施形態の出力装置は、要求信号の送付時と許可信号の受領時との時刻差が閾値より小さい場合は、CH部から送付されたデータ信号について予め定められた優先順に従い、前記データ信号を送付する。
【0140】
前記出力装置は、また、前記時刻差が前記閾値以上の場合は、予め定められた対応に従い、前記時刻差が前記閾値以上であるCH部から定めたCH部のデータ信号を出力する前記調整出力を行う。これにより、前記出力装置は、優先順の低いCH部におけるデータ出力の滞留を緩和することができる。
【0141】
そのため、前記出力装置は、CH部ごとのデータ出力の優先順と、優先順の低いCH部におけるデータの滞留とのバランスをとることを、可能にする。
【0142】
すなわち、前記出力装置は、チャネル部ごとのデータに係る出力優先順と滞留とのバランスをとることが可能である。前記出力装置は、中央演算処理装置への負荷が少なく、またプログラムによる処理の暴走の懸念がなくプログラムの作り込みが必要ない構成で実現できている。
<第二実施形態>
本実施形態は、変換部にアラーム信号以外の信号を入力することにより変換部からの出力を変更する、出力装置に関する実施形態である。
[構成と効果]
第二実施形態の出力装置の構成例は、
図1に表す第一実施形態の出力装置100の構成と同じである。
【0143】
図12は、
図1に表す第二実施形態の調停部401の構成例を表す概念図である。
【0144】
図12に表す第二実施形態の調停部401においては、変換部411に、アラーム信号s1al乃至snalに加えて追加信号sadが、出力装置100の外部から入力される。当該外部は、例えば、出力装置100を含むシステムが備える中央演算処理装置である。
【0145】
変換部411は、追加信号sadの信号レベルが所定(ここでは、仮に、1とする)の場合は、出力するすべてのマスク信号の信号レベルを0にする。これにより、マスク部412から出力されるマスク後要求信号の信号レベルはすべて0になる。そのため、PE413は、調停後データ信号sdt及び可能化信号senの後段への出力を停止する。
【0146】
前記外部は、例えば、前記システムの異常を検出した場合に、追加信号sadの信号レベルを1にすることにより出力装置100からの調停後データ信号sdt等の出力を停止する。
【0147】
変換部411は、追加信号sadの信号レベルが0の場合は、第一実施形態の変換部411と同じ動作を行う。
【0148】
第二実施形態の変換部411の説明は、上記を除いて、第一実施形態の変換部411の説明と同じである。ただし、上記説明と第一実施形態の説明とが矛盾する場合は、上記説明を優先する。
【0149】
なお、
図1に表す第二実施形態のマスク部412の構成例は、
図5に表す第一実施形態のマスク部412の構成と同じである。
【0150】
また、
図1に表す第二実施形態のPE413の構成例は、
図6に表す第一実施形態のPE413の構成と同じである。
【0151】
図13は、変換部411に入力されるアラーム信号と、変換部411が出力するマスク信号との対応関係の例を表す図である。
図13に表す対応関係は、
図11に表すものと同様に、出力装置100が3つのCH部であるCH部901、CH部902及びCH部903を備えることを前提とする。
【0152】
図13に表す対応関係は、追加信号sadの信号レベルが0の時は、
図8に表すものと同じである。また、追加信号sadの信号レベルが1の時は、変換部411に入力されるアラーム信号の信号レベルに関係なく、マスク信号の信号レベルはいずれも0である。
[効果]
第二実施形態の出力装置は、第一実施形態の出力装置と同様の構成を備えることから、まず、第一実施形態の出力装置と同様の効果を奏する。
【0153】
それに加えて、第二実施形態の出力装置は、所定の信号レベルの追加信号が入力された場合には、調停後信号等の出力を停止する。これにより、第二実施形態の出力装置は、出力装置を含むシステムに異常が検出された場合に、調停後信号等の出力を停止することが可能である。
<第三実施形態>
第三実施形態は、変換部におけるアラーム信号とマスク信号との対応関係を変更し得る出力装置に関する実施形態である。
[構成と動作]
第三実施形態の出力装置の構成例は、
図1に表す第一実施形態の出力装置100の構成と同じである。
【0154】
図14は、
図1に表す第二実施形態の調停部401の構成例を表す概念図である。
【0155】
図14に表す第二実施形態の調停部401においては、変換部411に、アラーム信号s1al乃至snalに加えてライト信号sw、ライトアドレス信号swad及びライトデータ信号swdが、出力装置100の外部から入力される。当該外部は、例えば、出力装置100を含むシステムが備える中央演算処理装置である。
【0156】
変換部411は、格納している対応関係を表す情報のうち、ライトアドレス信号swadが表すアドレスに格納された内容を、ライト信号swに従い、ライトデータ信号swdが表す内容に、書き換える。前記対応関係は、入力される各アラーム信号の信号レベルと出力する各マスク信号の信号レベルとの対応関係である。
【0157】
例えば、何かの原因によりアラーム信号s2alが頻繁に送付されたとする。そして、前記外部が、当該送付をCH902関連の異常である旨を判定したとする。その場合、前記外部は、例えば、アラーム信号s2alの信号レベルが1の場合は、マスク信号s2mkが0になるように。前記対応関係を変更する。
【0158】
前記外部は、上記により、異常であるが判定されたCH2からのデータ信号s2rdtが、調停後データ信号sdtに組み込まれて出力されないようにする。
【0159】
第三実施形態の変換部411の説明は、上記を除いて、第一実施形態の変換部411の説明と同じである。ただし、上記説明と第一実施形態の説明とが矛盾する場合は、上記説明を優先する。
【0160】
なお、
図1に表す第二実施形態のマスク部412の構成例は、
図5に表す第一実施形態のマスク部412の構成と同じである。
【0161】
また、
図1に表す第二実施形態のPE413の構成例は、
図6に表す第一実施形態のPE413の構成と同じである。
[効果]
第三実施形態の出力装置は、第一実施形態の出力装置と同様の構成を備えることから、まず、第一実施形態の出力装置と同様の効果を奏する。
【0162】
それに加えて、第三実施形態の出力装置は、外部から入力されるライト信号及びライトデータ信号により、各アラーム信号の信号レベルと各マスク信号の信号レベルとの関係を変更する。そのため、第三実施形態の出力装置は、異常等が生じた可能性があるCH部のデータ信号が、調停後データ信号に組み込まれて出力されるのを防ぎ得る。
<第四実施形態>
第四実施形態は、出力データに、パケットのような、一連のデータを連続して出力する必要のあるものを用いることが可能な出力装置についての実施形態である。
[構成と動作]
第四実施形態の出力装置100の構成、動作及びそれらの説明は、以下の説明を除いて、
図1乃至
図6に表す第一実施形態の出力装置100の構成と同じである。以下の説明と第一実施形態の説明とが矛盾する場合は、以下の説明を優先する。
【0163】
以下の説明においては、
図1に表す信号svfl(vは1以上n以下)及びデータ信号svrdtにより搬送されるデータはパケットである場合についてのものである。
【0164】
図15は、信号svfl及びデータ信号svrdtにより搬送されるパケットの例であるパケット701を表すイメージ図である。
【0165】
パケット701は、16ビットのワードをyワード、備える。
【0166】
図15に表すbit列番号を付与された各bit列(同図の縦の並び)の各データは、並列で処理されることが想定されている。さらに、ワード番号が付与されたあるワード(
図15に表すある一行)の各ビット列のビット情報は、同一の1クロック周期において処理されることが想定されている。
【0167】
1ワード目(同図の1行目)には、先頭パターンが格納されている。また、2ワード目(2行目)の0ビット目から7ビット目には、パケット701のワード数yが8ビットのデータとして格納されており、8ビット目以降は0が格納されている。ここで、yは、3以上255以下の数である。3ワード目(3行目)以降には、データが格納されている。yワード目(y行目)には、最終パターンが格納されている。
【0168】
以下の説明においては、
図1に表すデータ信号svdt及びsvrdt(vは1以上n以下)の各々においては、1クロック周期に
図15に表す各bit列の情報が同時に転送されるものとする。すなわち、
図1に表すデータ信号svrdtの各々が通過する信号線は
図1では1本で表してあるが、その一本は、16bitの各bit列に対応する16本の信号線を束ねたものであるとする。
【0169】
図16は、
図4に表す第四実施形態のPE413の構成例を表す概念図である。
【0170】
図16に表すPE413は、
図6に表すPE413の構成に、AND素子431と、NOR素子456と最終データ検出部461とを追加した構成を備える。
【0171】
NOR素子456は、FF441乃至44nから入力された許可信号s1ak乃至snakの信号レベルのうちのいずれもがゼロの場合に、n個のAND素子431乃至43nの各々に1を出力する。NOR素子456は、それ以外の時は、AND素子431乃至43nの各々に0を出力する。
【0172】
AND素子431乃至43nの各々は、NOR素子456からの出力信号と、その他の入力信号との論理和を表す信号を、二次マスク後要求信号s1amrq乃至snamrqの各々をFF441乃至44nの対応する各々に出力する。
【0173】
最終データ検出部461は、
図15に表すパケット701の2ワード目に格納されている転送ワード数を読み込む。そして、SEL451に入力されるデータ信号が最終データパターンであるクロック周期になったとする。その場合、最終データ検出部461は、次の1クロック周期、FF441乃至44nの各々のR入力に入力するデータ転送完了信号の信号レベルを1に保持する。ただし、最終データ検出部461は、当該保持を、マスク後要求信号と許可信号との論理積の、各CH部についての論理積である有効要求信号smrqの信号レベルが1の場合のみに行う。
【0174】
FF441乃至44nの各々は、R端子に入力される信号レベルが1になると、動作をリセットする。
【0175】
そして、FF441乃至44nの各々は、次のクロック周期における要求信号の信号レベルが1であることを検出すると、許可信号s1ak乃至snakの各々の信号レベルを1にする。
【0176】
なお、
図16に表すデータ信号svrdt(vは1以上n以下)及び調停後データ信号sdtの各々においては、1クロック周期に
図15に表す各bit列の情報が同時に転送されるものとする。
図16に表すデータ信号svrdt及び調停後データ信号sdtの各々が通過する信号線は
図16では1本で表してある。当該一本は、
図15に表す各ワードの16bitの各bit列のbitが同じクロック周期に通過する、16本の信号線を束ねたものであるとする。
【0177】
図17は、
図16に表す最終データ検出部461の構成例を表す概念図である。
【0178】
最終データ検出部461は、AND素子471乃至47nと、OR素子466及び481と、データカウンタ486と、ラッチ回路491と、タイミング生成回路496とを備える。
【0179】
AND素子471乃至47nの各々は、この順に、マスク後要求信号s1mrq乃至snmrqの各々と、許可信号s1ak乃至snakの各々との論理和を表す信号をOR素子481に出力する。
【0180】
OR素子481は、これらの信号の論理和を表す有効要求信号smrqを、タイミング生成回路496に出力する。
【0181】
OR素子466は、可能化信号senの信号レベルが1であるか最終データタイミング信号の信号レベルが1であるかのいずれかの場合に信号レベルの1をデータカウンタ486のR端子(リセット端子)に出力する。
【0182】
データカウンタ486は、OR素子466から入力される信号の信号レベルが1の場合に、カウント値を0にリセットする。そして、データカウンタ486は、リセット後の次のクロック周期から、クロック周期のカウントを行い、当該カウントに係るカウント値をラッチ回路191及びタイミング生成回路496に出力する。
【0183】
ラッチ回路491は、入力されたカウント値が2である場合に、次のクロック周期で、調停後データ信号sdtに含まれる0ビット目から7ビット目のデータの値の各々を保持する。当該値は、
図15に表すパケット701のワード数yを表す。ラッチ回路491は、保持したワード数yを、さらに次のクロック周期で、タイミング生成回路496に出力する。
【0184】
タイミング生成回路496は、データカウンタ486から入力されたカウント値が、ラッチ回路491から送付されたワード数より2少ない値である場合に、最終ワードタイミング信号の信号レベルを1クロック周期分1にする。ワード数より2少ない値である場合に最終ワードタイミング信号を出力する理由は、調停後データ信号sdtの出力を、データ信号の入力に対して遅延させることにしているためである。すなわち、調停後データ信号sdt中のあるデータのSEL451からの出力タイミングが、その信号のデータ信号s1rdt乃至snrdtのいずれかにおけるSEL451への入力タイミングから、2クロック周期分遅延させるためである。
【0185】
タイミング生成回路496は、また、OR素子481から入力された有効要求信号smrqの信号レベルが1である場合には、最終ワードタイミング信号と同じタイミングでデータ転送完了信号の信号レベルを1クロック周期分1にする。
【0186】
以上により、データ転送完了信号の信号レベルは、あるCH部からのデータ信号の調停後データ信号としての出力が継続されている場合は0である。データ転送完了信号の信号レベルは、あるCH部からのデータ信号の調停後データ信号としての出力が終了した次のクリック周期に1になる。
【0187】
なお、
図17に表す調停後データ信号sdtにおいては、1クロック周期に
図15に表す各bit列の情報が同時に転送されるものとする。
図17に表す調停後データ信号sdtが通過する信号線は
図17では1本で表してあるが、その一本は、
図15に表す各ワードの16bitの各bit列のbitが同じクロック周期に通過する16本の信号線を束ねたものであるとする。
【0188】
図18は、
図17に表すラッチ回路491の構成例を表す概念図である。
【0189】
ラッチ回路491は、反転素子4911と、NOR素子4912と、8個のセレクタであるSEL群4913と、8個のフリップフロップであるFF群4914とを備える。
【0190】
ここで、
図17に表すデータカウンタ486は8ビットのカウンタであることを前提としている。データカウンタ486からは、カウンタbit0乃至7の各々の信号レベルが入力される。
【0191】
反転素子4911は、カウンタbit1の信号の信号レベルが1の場合に0の信号レベルをNOR素子4912に出力する。
【0192】
NOR素子4912からの出力信号の信号レベルは、カウンタbit1の信号の信号レベルが1になったクロック周期で1になり、それ以外のクロック周期では0になる。すなわち、当該信号レベルは、カウンタ値が2の時に1クロック周期の間1になり、それ以外のタイミングでは0である。
【0193】
SEL群4913に含まれる各セレクタは、NOR素子4912からの入力信号が1の間の1クロック周期内に、調停後データ信号sdtのワードに含まれるデータ列の0bit目から7ビット目の各々を、FF群4914の各FFに導く。そして、そのクロック周期内に、前記FFの各々は、データ列の0bit目から7ビット目の各々を格納する。
【0194】
そして、前記FFの各々は、次のクロック周期において、格納したデータを、
図17に表すタイミング生成回路496に出力する。
【0195】
図15に表すパケット701の、ワード数が2の0ビット目から7ビット目のデータは、パケット701のワード数である。従い、上述の動作により、パケット701のワード数が、
図17に表すタイミング生成回路496に出力される。
【0196】
なお、
図18に表す調停後データ信号sdtにおいては、1クロック周期に
図15に表す各bit列の情報が同時に転送されるものとする。
図18に表す調停後データ信号sdtが通過する信号線は
図17では1本で表してあるが、その一本は、
図15に表す各ワードの16bitの各bit列のbitが同じクロック周期に通過する16本の信号線を束ねたものであるとする。
【0197】
また、FF群4914から出力されるワード数は8bitで表されている。ワード数を表す信号の通過する信号線は、
図18には一本で表してあるが、当該一本の信号線は、前記8bitの各々が同じクロック周期に通過する8本の信号線を束ねたものである。
【0198】
図19は、
図17に表すタイミング生成回路496の構成例を表す概念図である。
【0199】
タイミング生成回路496は、減算回路4961と8個のXNOR素子であるXNOR素子4970乃至4977と、AND素子4962と、NOT素子4963と、AND素子4964と、FF4981乃至4984とを備える。
【0200】
減算回路4961には、
図17に表すラッチ回路491から、ワード数が入力される。ワード数は、bit0乃至bit7の8ビットにより表されている。
【0201】
減算回路4961は、ワード数から2を減算した値についての各bitの値を、XNOR素子4970乃至4977の各々に出力する。
【0202】
XNOR素子4970乃至4977の各々には、
図17に表すカウンタ値を表すカウンタbit0乃至カウンタbit7の各々が
図19に表すように入力される。
【0203】
XNOR素子4970乃至4977の各々は、入力された二つの信号の排他的論理和を出力する。
【0204】
AND素子4962は、XNOR素子4970乃至4977の各々についての論理積を出力する。これにより、AND素子4962からの出力の信号レベルは、カウンタ値の各カウンタbitの値が、減算回路4961からの各bitの値とすべて一致したタイミングで1クロック周期の間1になり、それ以外のタイミングでは0になる。
【0205】
AND素子4962からの出力の1の信号レベルの出力は、FF4983及び4984により2クロック周期分遅延され、最終ワードタイミング信号として出力される。
【0206】
NOT素子4963は、有効要求信号smrqの信号レベルが1の場合に0を、有効要求信号smrqの信号レベルが0の場合に1を、それぞれ出力する。
【0207】
AND素子4964は、AND素子4962からの出力とNOT素子4963との論理積を表す信号をFF4981に出力する。当該信号は、調停後データ信号sdtの出力が行われている期間は、0の信号レベルになる。すなわち、当該期間は、AND素子4962からの出力の1の信号レベルの出力があっても、当該信号の信号レベルは0である。
【0208】
AND素子4964からの出力の1の信号レベルの出力は、FF4981及び4982により2クロック周期分遅延され、データ転送完了信号として出力される。
【0209】
次に、
図17及び
図18を参照して、
図16に表すPE413が行う動作の具体例を説明する。
【0210】
ここで、
図1に表すCH部の数は3であるとする。また、調停後データ信号sdtには、クロック信号の3周期分の遅延が与えられているものとする。そのため、許可信号s1ak乃至s3akの各々の調停後データ信号sdtへの反映は、クロック信号の2周期分遅延して行われる。また、
図15に表す各ワードは、クロック信号の各周期に同期して、調停後データ信号sdtとして出力される。
【0211】
図20は、PEにおける信号のタイミングチャート例(その1)を表す概念図である。
図20においては、PEは、要求信号s1rqに従い、ワード数yが32の
図15に表すパケット701を一つ出力する場合を想定されている。
【0212】
まず、時刻a1において、二次マスク後要求信号s1amrqの信号レベルが0から1になり、この際に二次マスク後要求信号s2amrq及びs3amrqの信号レベルはいずれも0であるとする。
【0213】
時刻a1より1クロック周期前において、各許可信号の信号レベルは0である。そのため、
図16に表すNOR素子456は、時刻a1において、1の信号レベルを
図15に表すAND素子431乃至433の各々に出力する。
【0214】
これにより、時刻a1において、FF441には1のレベルが格納される。そして、時刻a1より1クロック周期分遅れた時刻である時刻a2において、FF441は1のレベルの許可信号s1akを出力する。その後、FF441は1のレベルの許可信号s1akの出力を継続する。
【0215】
図15に表すSEL451は、許可信号s1akの信号レベルが0から1に切り替わってから、クロック信号の2周期遅れた時刻a3から、調停後データ信号sdtの出力を行う。
【0216】
要求信号s1rqの信号レベルは、時刻a1からクロック信号の32周期経過した時刻a4において、1から0に切り替わる。
【0217】
AND素子431からの二次マスク後要求信号s1amrqは、時刻a4において、1から0に切り替わる。
【0218】
FF441は、時刻a4から1クロック周期遅れた時刻a5に、許可信号s1akを1から0に切り替える。
【0219】
一方、
図15に表す最終データ検出部461は、
図15に表すデータ信号s1rdt乃至s3rdtのいずれかに、
図15に表すy行目の最終パターンを検出すると、1クロック周期分遅れた時刻a4においてデータ転送完了信号の信号レベルを1にする。
【0220】
これにより、FF441は、時刻a5における許可信号s1akの信号レベルを0にリセットする。すなわち、
図20に表す例では、許可信号s1akは、二次マスク後要求信号s1amrqの1から0への切替えと、最終データ検出部461によるFF441のリセットにより、二重にゼロに切り替えられる。
【0221】
SEL451からの調停後データ信号sdtの出力は、許可信号s1akが0に切り替わった後も、時刻a6まで、固定遅延の2クロック周期分行われる。
【0222】
図21は、PEにおける信号のタイミングチャート例(その2)を表す概念図である。
図21においては、CH部901に係るデータ信号s1rdtの調停後データ信号sdtとしての出力が行われている期間に、二次マスク後要求信号がs1amrqからs3amrqに切り替わる場合を想定している。
【0223】
図21では、
図1に表すFIFO201は、データ信号s1rdとして、まず32ワードの第一パケットを調停部401に送付し、それに続いて16ワードの第二パケットを調停部401に送付することを想定している。そして、前記第二パケットの送付中に、二次マスク後要求信号が切り替わった場合を想定している。
【0224】
図21に表すように、二次マスク後要求信号s1amrqの信号レベルが、時刻b1で0から1に切り替わったとする。
【0225】
そして、時刻b1より1クロック周期次に時刻b2で、
図16に表すFF441から許可信号s1akが、
図1に表すFIFO201に出力されたする。
【0226】
すると、時刻b2より二クロック周期分遅れた時刻b3で、CH1データの調停後データ信号sdtとしての出力が開始される。
【0227】
そして、
図17に表すタイミング生成回路496は、時刻b4において、データ信号s1rdtにおける前述の最終 ワードタイミング信号の信号レベルが1クロック周期の間1になる。なお、前述の2クロック周期分の固定遅延があるので、最終ワードタイミングは、調停後データ信号sdtにおいては、データ信号上より2クロック周期分遅れた、時刻b5とb6の間になる。
【0228】
時刻b4とb5との間では、データ転送完了信号の出力レベルは0に維持される。これは、
図16に表すSEL451へのデータ信号s1rdtの入力が続いていることを表す、前述の有効要求信号smrqの信号レベルが1であるためである(
図19に表すAND素子4964の前述の動作参照)。
【0229】
その後、時刻b7で、二次マスク後要求信号s1amrqの信号レベルが0になり、それによ二次マスク後要求信号s3amrqの信号レベルが1になるとする。
【0230】
この時、
図16に表すFF441乃至FF443の各々のR端子に入力されるデータ転送完了信号の信号レベルは0に維持されるので、FF441は許可信号s1akの信号レベルを1に維持する。また、SS442及びFF443の各々は、許可信号s2ak及びs3akの信号レベルを1に維持する。
【0231】
次に、前記第二パケットの最終ワードである16ワード目の調停後データ信号としての出力が行われる時刻より2クロック周期分早い、時刻b8とb9との間に、最終ワードタイミング信号の信号レベルを1にする。
【0232】
時刻b8とb9との間では、FIFO201からの第二パケットの
図6に表すSEL451への送付は完了しており、有効要求信号smrqの信号レベルは0である。
【0233】
そのため、
図16に表す最終データ検出部461は、FF441乃至443の各々のR端子に入力するデータ転送完了信号の信号レベルを、時刻b8とb9の間の1クロック周期の間1にする。
【0234】
これにより、FF441乃至443の各々はリセットされる。
【0235】
そして、FF443は、次のクロック周期において、s3akの信号レベルを1にする。
【0236】
これにより時刻b10から、CH部902のFIFOから
図16に表すSEL451へのデータ信号s3dtの入力が開始される。これにともない、時刻b10より固定遅延分の2クロック周期分遅れた時刻b12かた、データ信号s3dtに含まれるCH3データの調停後データ信号としての出力が開始される。
[効果]
第四実施形態の出力装置は、第一実施形態の出力装置が備える構成を備え、第一実施形態の出力装置と同様の効果を奏する。
【0237】
それに加えて、第四実施形態の出力装置の調停部は、あるチャネルについてのデータ信号の調停部への入力が継続している間は、許可信号の信号レベルを切り替えない。そのため、パケットデータのように一連のデータを連続して送付する必要があるデータについても、出力することが可能である。
【0238】
図22は、実施形態の出力装置の最小限の構成である出力装置100xの構成を表すブロック図である。
【0239】
出力装置100xは、送付部群900xと、調停部400xとを備える。
【0240】
送付部群900xの各送付部は、保持するデータの出力信号への組み込みを要求する要求信号を調停部に送付し、前記要求信号に対する許可信号を受けた場合に前記データを含むデータ信号を前記調停部へ逐次送る。
【0241】
前記各送付部は、それとともに、前記要求信号の送付時と前記許可信号の受領時との差が閾値以上の場合に、通知信号を前記調停部に送る。
【0242】
調停部400xは、前記送付部群の各送付部から送られた前記データ信号について、前記通知信号を受けない場合は予め設定された前記送付部についての優先順に従う後段への出力を行う。調停部400xは、また、前記通知信号を受けた場合には、当該通知信号から定めた前記送付部から受けた前記データ信号の前記出力を行う。
【0243】
前記要求信号、前記データ信号、前記許可信号及び前記通知信号の各々について前記送付部又は前記調停部が行う処理がプログラムの実行によるものを含まない。
【0244】
出力装置100xは、前記要求信号の送付時と許可信号の受領時との時刻差が閾値より小さい場合は、送付部から送付されたデータ信号について予め定められた優先順に従い、前記データ信号を送付する。
【0245】
出力装置100xは、また、前記時刻差が前記閾値以上の場合は、予め定められた対応に従い、前記時刻差が前記閾値以上である送付部におけるデータ出力の滞留を緩和することができる。
【0246】
そのため、出力装置100xは、送付部ごとのデータ出力の優先順の設定と、優先順の低い送付部におけるデータの滞留とのバランスをとることを、可能にする。
【0247】
出力装置100xは、さらに、各構成をプログラムによる処理を用いずに構成する。そのため、出力装置100xは、上記に加えて、中央演算処理装置の負荷が少なく、プログラムによる処理の暴走の懸念やプログラムの作り込みが不要であるという効果を奏する。
【0248】
そのため、出力装置100xは、前記構成により、[発明の効果]の項に記載した効果を奏する。
【0249】
なお、調停部400xは、例えば、
図1、
図12及び
図14に表す調停部401である。また、前記送付部は、例えば、
図1、
図12及び
図14に表すCH部901乃至90nの各々のうちの、各FIFOと各ALM検出部からなる部分である。
【0250】
以上、本発明の各実施形態を説明したが、本発明は、前記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で更なる変形、置換、調整を加えることができる。例えば、各図面に示した要素の構成は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。