JPH0673106B2 - パイプライン回路 - Google Patents

パイプライン回路

Info

Publication number
JPH0673106B2
JPH0673106B2 JP12354988A JP12354988A JPH0673106B2 JP H0673106 B2 JPH0673106 B2 JP H0673106B2 JP 12354988 A JP12354988 A JP 12354988A JP 12354988 A JP12354988 A JP 12354988A JP H0673106 B2 JPH0673106 B2 JP H0673106B2
Authority
JP
Japan
Prior art keywords
data
input
timing
selection signal
register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP12354988A
Other languages
English (en)
Other versions
JPH01292534A (ja
Inventor
芳文 藤原
輝 石塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP12354988A priority Critical patent/JPH0673106B2/ja
Priority to US07/351,084 priority patent/US5142685A/en
Priority to EP89108962A priority patent/EP0342674B1/en
Priority to DE68927241T priority patent/DE68927241T2/de
Publication of JPH01292534A publication Critical patent/JPH01292534A/ja
Publication of JPH0673106B2 publication Critical patent/JPH0673106B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータ処理装置に関し、特にデータのタイミン
グ調整用のパイプライン回路に関する。
一般に、この種のパイプライン回路は、処理装置間のデ
ータ転送のタイミング調整用,特に他の処理装置からイ
ンタリーブ方式の処理装置へのデータ転送時のタイミン
グ調整用に使用されている。ここで、インタリーブ方式
の処理装置とは、例えば複数のバンクで構成され、各バ
ンクを時分割で使用するメモリ装置が代表的なものであ
る。また、低速で処理する演算器を複数台並べ、これら
を時分割で使用して全体で高速演算を実行する演算装置
等も、インタリーブ方式の処理装置の一例である。
第7図は一連のデータA=〔a1,a2,…,am〕,及び一連
のデータB=〔b1,b2,…,bL〕を4個のバンクBANK1,BAN
K2,BANK3,BANK4で構成されるメモリ904に書込むことが
できるデータ処理装置のメモリ周辺回路のブロック図の
一例であり、第8図は第7図の入力クロスバ903の動作
を示すタイムチャートである。
第7図および第8図において、メモリ904の各バンクBAN
K1〜BANK4は、データ書込みのために2つのタイミング
サイクルの時間を必要とし、データA=〔a1,a2,…,a
m〕を入力とする入力レジスタRIAは、クロスバ制御の基
準タイミングサイクルの1を割当てられ、データB=
〔b1,b2,…,bL〕を入力とする入力レジスタRIBは、基準
タイミングサイクルの3を割り当てられるものとする。
出力レジスタROR1は、選択信号SL1をデコードするデコ
ーダD1とこのデコーダD1の出力に応じた入力を選択して
出力する選択回路SE1を有し、選択信号SL1によって、基
準タイミングサイクルが1の時は、入力レジスタRIAの
出力データを選択して格納し、基準タイミングサイクル
が3の時は入力レジスタRIBの出力データを選択して格
納し、基準タイミングサイクルが2および4の時は以前
のデータを保持する。
出力レジスタROR2,ROR3,ROR4は、選択信号SL2,SL3,SL4
をデコードするデコーダD2,D3,D4と、このデコーダD2,D
3,D4の出力に応じて入力を選択して出力する選択回路SE
2,SE3,SE4を有し、それぞれ選択信号SL2,SL3,SL4によっ
て、出力レジスタROR1と同様に動作する。
第8図において、出力レジスタROR1は、タイミングt1で
は選択信号SL1の値1によって入力レジスタRIAの出力デ
ータa1を選択し、タイミングt2で格納し、タイミングt3
まで保持する。タイミングt3では選択信号SL1の値3に
よって入力レジスタRIBの出力データb1を選択している
ので、タイミングt4ではb1を格納し、タイミングt5まで
保持する。この様にして2組の一連のデータAおよびB
の4×k+1番目(但しkは自然数)のデータa1,b1,
a5,b5,a9,b9,…は出力レジスタROR1に順次格納され、メ
モリ904のバンクBANK1の入力データとなる。
同様に2組の一連のデータAおよびBの4×k+2番目
のデータa2,b2,a6,b6,a10,b10,…は出力レジスタROR2を
通してバンクBANK2へ入力され、4×k+3番目のデー
タa3,b3,a7,b7,a11,b11,…はバンクBANK3へ入力され、
4×k+4番目のデータa4,b4,a8,b8,a12,b12,…はバン
クBANK4へ入力される。
第8図において説明した動作は、入力クロスバ903の基
準タイミングサイクルが1の時に一連のデータAの4×
k+1番目のデータa1,a5,a9,…が入力レジスタRIAに入
力され、一連のデータBの4×k+3番目のデータb3,b
7,b11,…が入力レジスタRIBに入力され、基準タイミン
グサイクルが2の時にデータAの4×k+2番目のデー
タa2,a6,a10,…が入力レジスタRIAに,データBの4×
k+4番目のデータb4,b8,b12,…が入力レジスタRIBに
入力され、基準タイミングサイクルが3の時にデータA
の4×k+3番目のデータa3,a7,a11,…が入力レジスタ
RIAに、データBの4×k+1番目のデータb1,b5,b9,…
が入力レジスタRIBに入力され、基準タイミングサイク
ルが4の時にデータAの4×k+4番目のデータa4,a8,
a12,…が入力レジスタRIAに,データBの4×k+2番
目のデータb2,b6,b10,…が入力レジスタRIBに入力され
る事が前提条件となっている。
しかし、実際のデータ処理装置において、メモリに書込
むデータが上記タイミングと合致するようにするために
は、一般的に何らかのタイミング調整を要する。タイミ
ング調整の方式としては、そのデータ処理命令の起動タ
イミングを調整して、処理終了後のデータが前記タイミ
ングで入力クロスバ903に到達するようにする方式と、
入力クロスバ903の直前に後述のパイプライン回路のよ
うにタイミング調整用の回路を備える方式とが考えられ
る。
前者の方式は、タイミング調整用の回路を備える必要が
ない代わりに、命令の起動タイミグの制御が複雑とな
り、さらにメモリ以外の他の処理装置の処理開始時間に
まで影響を与え、データ処理装置全体の性能を悪化させ
る要因ともなるため、通常は後者の方式を採用する。
第7図において、パイプライン回路901,902は、前述の
ようなデータ転送のタイミング調整のための回路であ
り、第9図は第7図のパイプライン回路901あるいは902
の従来構成のブロック図であり、第10図,第11図および
第12図はその動作を示すタイムチャートである。
第9図において、パイプライン回路8000は、選択情報セ
ット信号STと、選択情報S0と、一連のデータA=〔a1,a
2,…,am〕とを入力とし、一連のデータY=〔y1,y2,…,
ym〕を出力する。
選択信号レジスタ801は選択情報セット信号STによって
選択情報S0を格納し、選択信号Sとして出力する。
データ保持回路802は、選択信号SをデコーダDCDでデコ
ードすることによって、4段のデータ保持手段R1,R2,R
3,R4用の選択信号s1,s2,s3,s4を生成し、入力データA
を4段のデータ保持手段R1,R2,R3,R4のうちのいずれか
一つに格納する。例えば選択信号s1,s2,s3,s4のうちの
選択信号s3が有効(論理“1")の時は、データAはデー
タ保持手段R3に格納される。データ保持手段R3に格納さ
れたデータAは、1タイミングサイクル後にデータ保持
手段R4に格納され、データ保持回路802の出力データす
なわちパイプライン回路8000の出力データYとして出力
される。
データ保持手段R2は、例えば図示のような2入力1出力
の選択回路SE12と選択信号s2に応じて選択回路SE12の第
1段目あるいは第2段目を選択するゲートG12を有する
レジスタRG2で実現でき、選択信号s2が有効の時はデー
タAを、選択信号s2が無効(論理“0")の時はデータ保
持手段R1の出力データを選択して格納する。
データ保持手段R3,R4もデータ保持手段R2と同様に2入
力1出力の選択回路SE13,SE14と選択信号s3,s4に応じて
選択回路SE13,SE14の第1段目あるいは第2段目を選択
するゲートG13,G14を有するレジスタRG3,RG4で実現で
き、データ保持手段R1は選択信号s1が有効な時に入力を
出力する選択回路SE11を有し、そのときにデータAを格
納するレジスタRG1で実現できる。
データ保持手段R1,R2,R3,R4内の前記レジスタをそれぞ
れ第1,第2,第3,第4レジスタとし、パイプライン回路80
00の出力データYを入力して格納しデータZとして出力
するレジスタをZレジスタ803として、パイプライン回
路8000の動作を第10図,第11図および第12図のタイムチ
ャートを参照して以下に説明する。
第10図は、パイプライン回路8000においてデータAのタ
イミング調整のためのデータ保持時間が最も少ない場合
(ベストケース)を示したタイムチャートである。
第10図において、入力データA=〔a1,a2,a3,…,am〕の
入力タイミングがベストケースとすると、データAはパ
イプライン回路8000の出力レジスタでもある第4レジス
タRG4に直接入力され、次のタイミングで格納されて、
パイプライン回路8000の出力データYとして出力され
る。パイプライン回路8000の第4レジスタRG4から出力
されたデータYは、次のタイミングでZレジスタ803に
格納される。
ここで、このパイプライン回路8000を第7図におけるパ
イプライン回路901として使用したとすると、前記Zレ
ジスタ803は入力レジスタRIAに該当する。入力レジスタ
RIAは、前述したように入力クロスバ903の基準タイミン
グサイクルの1を割当てられているから、第10図におけ
るタイミングt5(一連のデータA=〔a1,a2,…,am〕の
第1番目のデータa1がZレジスタ803すなわち入力レジ
スタRIAに格納されるタイミング)では、クロスバ基準
タイミングサイクルが1のはずであり、タイミングt3
(パイプライン回路8000の入力データとしてa1が入力さ
れるタイミング)をパイプライン回路8000の入力部の基
準タイミングサイクルの1とすると、クロスバ基準タイ
ミングサイクルおよびパイプライン入力部基準タイミン
グサイクルのタイミングは第10図のようになる。ここで
示した基準タイミングサイクルはそれぞれサイクルカウ
ンタ等のハードウェアを持っているという意味ではな
く、データ転送を制御するための回路を設計あるいは検
証するための仮想的なタイミングサイクルであって、デ
ータ処理装置内の各部のタイミングが相対的につじつま
が合っていればよい。
第10図において、パイプライン入力部の基準タイミング
サイクルが1の時に、一連のデータA=〔a1,a2,…,a
m〕の第1番目のデータa1が入力されると、入力タイミ
ングがベストケースであることを判断し、選択信号S=
4がセットされ、一連のデータA=〔a1,a2,…,am〕は
第4レジスタRG4のみを経由してZレジスタ803(すなわ
ち入力レジスタRIA)に入力される。
第11図は第9図におけるパイプライン回路において、パ
イプライン入力部の基準タイミングサイクルが2の時に
前記データa1が入力された場合(ワーストケース)の動
作を示すタイムチャートである。
第11図において、パイプライン入力部の基準タイミング
サイクルが2の時にデータa1が入力されると、入力タイ
ミングがワーストケースであることを判断し、選択信号
S=1がセットされ、一連のデータA=〔a1,a2,…,a
m〕は第1から第4レジスタの全て(4段)のレジスタ
を経由してZレジスタ803に入力される。
第12図は、第11図と同様にデータa1の入力タイミングの
ワーストケースについて、選択信号Sの生成を別方式に
した例のタイムチャートである。
パイプライン入力部の基準タイミングサイクルが2のタ
イミングt4にデータa1が入力されると、選択信号Sはベ
ストケースの時と同じで4を示しているため第4レジス
タRG4に格納され、パイプライン入力部の基準タイミン
グサイクルが1でないため選択信号Sを3とする。続い
てパイプライン入力部の基準タイミングサイクルが3の
タイミングt5でデータa2が入力されると、選択信号S=
3により、第3レジスタRG3に格納され、まだパイプラ
イン入力部の基準タイミングサイクルが1でないため選
択信号Sを2とする。データa3に関しても同様に動作
し、選択信号Sを1とする。パイプライン入力部の基準
タイミングサイクルが1のタイミングt7でデータa4が入
力されると、選択信号S=1により第1レジスタRG1に
格納され、パイプライン入力部の基準タイミングサイク
ルが1となったので、選択信号Sはタイミングt7以降は
同じ値(S=1)とし、第1から第4レジスタまでのデ
ータ保持状態を解き、タイミングt8以降順次Zレジスタ
803に一連のデータA=〔a1,a2,…,am〕が入力される。
第12図で説明した方式は、効果が第11図と同等であるに
もかかわらず選択信号Sの制御が第11図に比べて複雑と
なり、さらに第2レジスタRG2,第3レジスタRG3,第4レ
ジスタRG4には、格納したデータを複数タイミングサイ
クルの期間保持する機能が必要となる。このため、通
常、第12図で示した方式よりは第11図で説明した方式が
採用される。また、第10図で示したベストケースおよび
第11図または第12図で示したワーストケース以外にその
中間のケース(すなわち、パイプライン入力部の基準タ
イミングサイクルが3又は4の時にデータa1が入力され
た場合)は、ベストケースとワーストケースから容易に
考えられるので、説明は省略する。
〔発明が解決しようとする問題点〕
上述した従来のパイプライン回路は、一連のデータA=
〔a1,a2,…,am〕を入力とし、第1番目のデータa1の出
力タイミングを選択信号Sによって調整し、データa1
降のデータa2,a3,…はデータa1出力時の選択信号Sを保
つことによってインタリーブ方式の処理装置への入力デ
ータとしてインタリーブのタイミングに合致するように
制御しているため、データの入力タイミングが不規則な
場合(例えば、データの値等によって処理時間の異なる
処理装置の出力データ)、あるいは一連のデータの中に
インタリーブ方式の処理装置で処理しない無効なデータ
を含む場合(例えば、マスク付ベクトル処理用のデー
タ)には使用することが出来ないという欠点がある。
本発明の目的は、各データの入力タイミングが不規則な
場合あるいは入力データが無効なデータを含む場合であ
っても、後続の処理対象となる有効なデータのみを適切
なタイミングで送出することができるパイプライン回路
を提供することにある。
〔問題点を解決するための手段〕
本発明のパイプライン回路は、上記目的を達成するため
に、 一連のm個の入力データA1,A2,…,Amのうちの1個のデ
ータAjに対応して入力される入力指示信号Tjが無効を示
す時は、周期的なn通りの値1,2,…,n,1,2,…のうち、
以前の選択信号Sj-1の示す値の次の値を示す選択信号Sj
を出力し、前記入力指示信号Tjが有効を示す時は、選択
信号Sj-1の示す値と同じ値を示す選択信号Sjを出力する
選択信号生成回路と、 前記データAj,該データAjに対応する前記選択信号Sj及
び前記入力指示信号Tjを入力とし、前記選択信号Sjの示
す値がiの時は、n段のデータ保持手段R1,R2,…,Rnの
うちのi段目のデータ保持手段Riに前記データAjおよび
前記入力指示信号Tjを入力し、該入力指示信号Tjが有効
を示す時はn−i段のデータ保持手段Ri+1,Ri+2,…,R
nを経由してデータAjの入力からn−i+1タイミング
サイクル後にデータAjを出力し、前記入力指示信号Tjが
無効を示す時は前記データAjを無効とするデータ保持回
路とを備え、 前記m個のデータA1,A2,…,Aj,…,Amと、該データの各
々に対応するm個の入力指示信号T1,T2,…,Tj,…,Tmと
を入力し、m個のデータのうちの有効なデータをn×k
+1(但しkは整数)タイミングサイクルの間隔で順次
出力する構成を有する。
〔作用〕
データ保持回路でのデータ保持時間を決定するための選
択信号を生成する選択信号生成回路は、入力データA1,A
2,…,Aj,…,Amの有効,無効を示す入力指示信号T1,T2,
…,Tj,…,Tmによって制御され、入力指示信号T1,T2,…,
Tj,…,Tmが連続して有効を示すときは、選択信号は最初
の入力データのときの値を保持するが、途中に無効を示
す入力指示信号Tjが入力されると、選択信号を次の値に
変更する。データ保持回路は上記の選択信号生成回路で
生成された選択信号および前記入力指示信号に従ってデ
ータ保持時間および入力データAjの有効,無効を制御す
ることにより、データの入力タイミングが不規則な場合
あるいはデータ内に有効データおよび無効データが混在
する場合でも、後続の処理対象となる有効データのみを
適切なタイミングで送出する。
〔実施例〕
次に、本発明の実施例について図面を参照して説明す
る。
先ず、本発明で対象とするデータ形式及びそのデータ形
式に対する以下の説明上の記述方法について述べる。
(1) 本発明の対象とするデータの一つのタイプは、
一連のデータX=〔X1,X2,…,Xm〕の要素データx1,x2
の間隔が不規則な場合である。
この例としては、データの値等によって処理時間の異な
る処理装置の出力データがある。オペランドの一連のデ
ータY=〔y1,y2,…,ym〕と一連のデータW=〔w1,w2,
…,wm〕との間で、データに対応する制御信号V=〔v1,
v2,…,vm〕によって異なる演算処理を行ない、塩酸の種
類およびデータの値等によって処理時間の異なるような
演算装置または処理装置から出力されたデータR=
〔r1,r2,…,rm〕は、上述の要素データの間隔が不規則
な場合の一例である。例えば、第1番目のデータr1が出
力されて5タイミングサイクル後に第2番目のデータr2
が出力され、その3タイミングサイクル後に第3番目の
データr3が出力される如く、順次不規則に出力される場
合、次のデータが出力されるまでは前のデータが保持さ
れるタイプの演算装置であれば、時間軸上に等間隔(つ
まり、1タイミングサイクル毎)の記述で表現するとD
=〔r1,r1,r1,r1,r1,r2,r2,r2,r3,…,rm〕となり、有効
なデータの間に無効なデータが出力される場合は、E=
〔r1,−,−,−,r2,−,−,r3,…,rm〕のように表現さ
れる。このような演算装置の出力としては、有効なデー
タのタイミングを示す信号がデータ対応に必要であり、
有効を“1",無効を“0"のように表現すると、上記Dま
たはEのデータの有効データを指示する信号Fは、F=
〔1,0,0,0,0,1,0,0,1,…,1〕となり、DおよびEを代表
した表現のデータG=〔g1,g2,…,gL〕と一対の一で対
応する。上記の例の場合、g1=r1,g6=r2,g9=r3,…,gL
=rmであり、その他の要素データg2,g3,g4,g5,g7,g8,…
は無効データとしてその値は関知しない。
一連のデータの要素データの間隔が不規則となる他の例
としては、アドレスによってアクセス時間が異なるメモ
リからの読出しデータがある。また、運用形態や装置の
状態(例えば通常3台の処理装置で処理を行ない、1台
が故障時には残り2台で処理を続行する処理装置のその
時の処理装置台数)によってデータの転送レートの異な
る処理系からのデータも、その運用形態や装置の状態に
かかわらず同一制御で動作させる場合には前述のように
有効なデータと無効なデータを含む一連のデータと、そ
のデータに対応し各要素データの有効または無効を示す
信号との組み合わせが必要となり、そのデータ及び指示
信号は前記データG及び指示信号Fのように表現でき
る。
(2) 本発明の対象となるデータの他のタイプは、ソ
フトウェア上(言い換えるとプログラム上)で、一連の
データの個々のデータの有効,無効を別のデータで指示
するタイプである。例えば、ベクトルデータ処理装置に
おいては、ベクトルデータ内の有効な要素データ及び無
効な要素データを示すためにマスクビットという概念が
取り入れられている。マスクビットによってオペランド
のベクトルデータ内の有効なデータを指示し、有効なデ
ータのみを演算する、あるいは演算は全てのデータに対
して実行し、演算結果のデータの有効あるいは無効をマ
スクビットによって指示する等に利用され、これらをマ
スク付き演算等と呼んでいる。これらのマスク付きベク
トルデータは、前述(1)の第1のタイプのデータと同
様に、ベクトルデータH=〔h1,h2,…,hL〕およびマス
クデータJ=〔j1,j2,…,jL〕のように表現できる。
そこで以下の説明では、前記第1と第2のタイプを代表
して、入力の一連のデータA=〔a1,a2,…,am〕および
データの有効または無効を指示する指示信号T=〔1,0,
…,1〕のような記述を使用する。これは、1タイミング
サイクル毎に連続して要素データa1,a2,…,amが入力さ
れ、a1は有効データ、a2は無効データ,…,amは有効デ
ータであることを意味する。
さて、第1図は本発明の第1の実施例を示すブロックで
ある。
第1図において、パイプライン回路3000は、入力指示信
号Tと、一連のデータA=〔a1,a2,…,am〕とを入力と
し、一連のデータY=〔y1,y2,…,yL〕を出力する。
データ保持回路302は、選択信号生成回路301から選択信
号Sを入力し、これをデコーダDCDでデコードすること
によって4段のデータ保持手段R1,R2,R3,R4用の選択信
号s1,s2,s3,s4,を生成し、入力データAを4段のデータ
保持手段R1,R2,R3,R4のうちのいずれか1つに格納す
る。例えば選択信号s1,s2,s3,s4のうちの選択信号s3
有効(たとえば論理“1")の時は、データAはデータ保
持手段R3に格納される。但し、入力指示信号Tが無効
(例えば論理“0")の時はデータAは無効となり、デー
タ保持手段R3には格納されない。入力指示信号Tが有効
の時にデータ保持手段R3に格納されたデータAは1タイ
ミングサイクル後にデータ保持手段R4に格納され、デー
タ保持回路302の出力データすなわちパイプライン回路3
000の出力データYとして出力される。
データ保持手段R2は、例えば図示のように、第1段目入
力に第1データ保持手段R1の出力が加わり第2段目入力
に入力データAが加わる2入力1出力の選択回路SE12,
選択信号s2の反転信号を選択回路SE12の第1段目に加え
ると共に選択信号s2をそのまま出力するゲートG12,入力
指示信号Tと選択信号s2との論理積を選択回路SE12の第
2段目に加えるゲートG13を有するレジスタRG2で実現で
き、入力指示信号Tが有効で且つ選択信号s2が有効の時
はデータAを、選択信号s2が無効の時はデータ保持手段
R1の出力データを選択して格納する。
データ保持手段R3,R4も、データ保持手段R2と同様に、
第1段目入力に前段のデータ保持手段R2,R3の出力が加
わり第2段目入力に入力データAが加わる2入力1出力
の選択回路SE13,SE14と、選択信号s3,s4の反転信号を選
択回路SE13,SE14の第1段目に加えると共に選択信号s3,
s4をそのまま出力するゲートG14,G16と、入力指示信号
Tと選択信号s3,s4との論理積を選択回路SE13,SE14の第
2段目に加えるゲートG15,G17を有するレジスタRG3,RG4
とで実現でき、データ保持手段R1は、選択信号s1と入力
指示信号Tとの論理積を出力するゲートG11の出力が有
効な時に入力データAを出力する選択回路SE11を有し、
この選択回路SE11を介して入力データAを格納するレジ
スタRG1で実現できる。
選択信号生成回路301は、データAに対応して入力され
る入力指示信号Tが無効(論理“0")を示す時は、周期
的な4通りの値1,2,3,4,1,2,…のうち、以前の選択信号
Sの示す値の次の値を示す選択信号Sを生成し出力す
る。例えば、選択信号Sが1を示す時に、入力指示信号
T=0が入力されると、次のタイミングでは選択信号S
は2を示す。同様に選択信号Sが2を示す時に入力指示
信号T=0が入力されると、次のタイミングでは選択信
号Sは3を示し、選択信号Sが3を示す時に入力指示信
号T=0が入力されると、次のタイミングでは選択信号
Sは4を示し、選択信号Sが4を示す時に入力指示信号
T=0が入力されると次のタイミングでは選択信号Sは
1を示す。
逆に入力指示信号Tが有効(論理“1")を示す時は、以
前の選択信号Sの示す値を保持する。例えば、選択信号
Sが1を示す時に入力指示信号T=1が入力されると、
次のタイミングでも選択信号Sは1を示している。
上記のような選択信号生成回路301は、図示のように、
1段目入力に+1回路ADの出力が加わり2段目入力に現
在の選択信号Sの値が加わる2入力1出力の選択回路SE
21と、入力指示信号Tの反転信号を選択回路SE21の第1
段目に加え、第2段目に入力指示信号Tを加えるゲート
G21とを有するサイクルカウンタCNT1で実現できる。こ
のサイクルカウンタCNT1は、入力指示信号T=0の時は
+1回路ADの出力である「S+1」の値を選択し、入力
指示信号T=1の時は「S」の値を選択することによっ
てタイミングサイクルと同期して選択信号Sの値を変化
させる。この選択信号Sの示す値の範囲は1,2,3,4の4
通りとなっている。
データ保持手段R1,R2,R3,R4内の前記レジスタRG1〜RG4
を、それぞれ第1,第2,第3,第4レジスタとし、パイプラ
イン回路3000の出力データYを入力して格納しデータZ
として出力するレジスタをZレジスタ304として、パイ
プライン回路3000の動作を第2図のタイムチャートを参
照して以下説明する。
第2図において、入力データA=〔a1,a2,a3,…〕に対
応する入力指示信号Tを〔0,1,0,0,1,1,0,0,0,1,0,0,1,
0,0,0,0,…〕とする。つまり、a2,a5,a6,a10,a13,…が
有効データ、逆にa1,a3,a4,a7,a8,a9,a11,a12,a14,a15,
a16,a17,…が無効データである。
また、一連の入力データAの第1番目の要素データa1
入力されたタイミングをt1、その時の選択信号Sを2と
する。データa1が入力される以前、つまりタイミングt1
以前では、選択信号Sは、周期的な4通りの値1,2,3,4,
1,2,3,4,1,…を示すように周期的に変化していて、タイ
ミングt1の時に2の値を示したとする。
第2図において、タイミングt1で入力されたデータa1
入力指示信号Tが無効(論理“0")のためにその時の選
択信号Sが2ではあるが、第2レジスタRG2に入力され
ず、無効となる。タイミングt2での選択信号Sは、以前
のタイミングt1における入力指示信号T=0により、タ
イミングt1の時の選択信号S=2の次の値3を示す。
続いて、タイミングt2で入力されたデータa2は、入力指
示信号Tが有効(論理“1")であるので、その時の選択
信号S=3によって第3レジスタRG3に入力され、次の
タイミングt3で格納される。タイミングt3での選択信号
Sは、以前のタイミングt2の時の入力指示信号T=1に
よって、タイミングt2の時の選択信号S=3を保持す
る。
タイミングt3における選択信号S=3によって、第3レ
ジスタRG3の出力データa2は第4レジスタRG4に入力さ
れ、次のタイミングt4で格納される。
さらに、タイミングt3で入力されたデータa3は、入力指
示信号T=0のためにその時の選択信号Sが3であって
も第3レジスタRG3に入力されず、無効となる。タイミ
ングt4での選択信号Sは、タイミングt3の時の入力指示
信号T=0,選択信号S=3より次の値4を示す。
続いてタイミングt4で入力されたデータa4は、その時の
選択信号S=4,入力指示信号T=0によって、第4レジ
スタRG4には入力されず、無効となる。タイミングt5で
の選択信号Sは、タイミングt4の時の入力指示信号T=
0,選択信号S=4により、次の値1を示す。
以下タイミングt5以降も同様な動作が繰り返され、パイ
プライン回路3000の出力レジスタでもある第4レジスタ
RG4には、データa2,a5,a6,a10,a13,…がそれぞれタイミ
ングt4,t9,t10,t11,t16,…で格納され、パイプライン回
路3000の出力データYの要素データとなり、次のタイミ
ングt5,t10,t11,t12,t17,…でZレジスタ304に格納され
る。
ここで、入力データA=〔a1,a2,a3,…〕の要素データ
のうちの有効データa2,a5,a6,a10,a13,…の出力タイミ
ングの間隔は、データa2とa5の間が5(=4×1+1)
タイミングサイクル,データa5とa6との間が1(=4×
0+1)タイミングサイクル,データa6とa10との間が
1タイミングサイクル,データa10とa13との間が5タイ
ミングサイクル,……のように4×k+1タイミングサ
イクル(但しkは整数)の間隔となる。
パイプライン回路3000を第7図におけるパイプライン回
路901および902として使用したとすると、前記Zレジス
タ304は、入力レジスタRIAおよびRIBに該当する。ここ
で、前述したように入力レジスタRIAは入力クロスバ903
の基準タイミングサイクルの1を、入力レジスタRIBは
入力クロスバ903の基準タイミングサイクルの3を割り
当てられ、第2図で示したタイミングt5(データa2がZ
レジスタ304すなわち入力レジスタRIAに格納されるタイ
ミング)がクロスバ基準タイミングの1と合致している
(すなわち第2図の動作はパイプライン回路901の動作
である)とした時のパイプライン回路902の動作の例を
第3図のタイムチャートを参照して以下に説明する。
第3図において、タイミングt0以前のタイミングでは、
選択信号SBはクロスバ基準タイミングより1タイミング
サイクル先行して変化している。即ちこの状態で最初の
有効データが(入力指示信号T=1を伴って)入力され
ると、その有効データは、クロスバ基準タイミングが1
の時にZレジスタ304(すなわち入力レジスタRIB)に格
納されてしまう。前述したようにデータBを入力とする
入力レジスタRIBはクロスバ基準タイミングの3を割り
当てられているので、動作タイミングをずらす必要があ
る。
そこで、例えば、最初の有効データが入力される前のタ
イミングでダミーの入力指示信号T=1を2回入力すれ
ば、パイプライン回路902は、最初の有効データをクロ
スバ基準タイミングが3の時に入力レジスタRIBに格納
できる。即ち、第3図において、タイミングt2およびt3
の時にダミーの入力指示信号T=1を入力させることに
よって、タイミングt4では、クロスバ基準タイミングよ
り1タイミングサイクル遅れた状態で待機している。
その状態でタイミングt5から入力データB=〔b1,b2,
b3,…〕と、そのデータに対応する入力指示信号T=
〔0,0,1,1,1,0,1,1,0,0,0,1,…〕とを入力すると、第2
図で説明したパイプライン回路と同様に動作し、パイプ
ライン回路902の出力レジスタでもある第4レジスタに
は、データb3,b4,b5,b7,b8,…がそれぞれタイミング
t10,t11,t12,t13,t14,…で格納され、次のタイミングt
11,t12,t13,t14,t15,…でZレジスタすなわち入力レジ
スタRIBに格納される。
第2図および第3図で示した動作により、入力レジスタ
RIA,RIBに入力されたデータは、第4図のタイムチャー
トで示す動作によりメモリ904の各バンクBANK1,BANK2,B
ANK3,BANK4へ入力される。
前述したように、入力レジスタRIAは基準タイミングサ
イクルの1を割り当てられ、入力レジスタRIBは基準タ
イミングサイクルの3を割り当てられており、出力レジ
スタROR1は、基準タイミングサイクルが1の時は、入力
レジスタRIAの出力データを選択して入力し、基準タイ
ミングサイクルが2の時に格納し、基準タイミングサイ
クルが3の時は、以前のデータを保持すると共に、入力
レジスタRIBの入力データを選択して入力し、基準タイ
ミングサイクルが4の時に格納し、再び基準タイミング
サイクルが1となると、以前のデータを保持すると共に
入力レジスタRIAの出力データを選択して入力し、基準
タイミングサイクルが2の時に格納し、……、のように
4タイミングサイクルの周期で同じ動作を繰返す。
また同じく前述したように出力レジスタROR2は、出力レ
ジスタROR1の動作を1タイミングサイクル送らせたとき
と同じ動作をする。すなわち、基準タイミングサイクル
が2の時に入力レジスタRIAの出力データを選択して入
力し、次のタイミングで格納し、基準タイミングサイク
ルが4の時に入力レジスタRIBの出力データを選択して
次のタイミングで格納するという動作を4タイミングサ
イクルの周期で繰返す。出力レジスタROR3は出力レジス
タROR2の動作をさらに1タイミングサイクル遅らせたと
きと同じ動作をし、出力レジスタROR4は、出力レジスタ
ROR3の動作をさらに1タイミングサイクル遅らせたとき
と同じ動作をする。
これらの動作により、第4図に示すように基準タイミン
グサイクルが1のタイミングt5で入力レジスタRIAに格
納されたデータa2は、タイミングt6で出力レジスタROR1
に格納され、基準タイミングサイクルが2のタイミング
t10で入力レジスタRIAに格納されたデータa5は、タイミ
ングt11で出力レジスタROR2に格納され、基準タイミン
グサイクルが3のタイミングt11で入力レジスタRIA,RIB
に入力されたデータa6,b3は、タイミングt12でそれぞれ
出力レジスタROR3,ROR1に格納され、以降同様な動作が
繰り返され、データa2,b3,b8,a13,…は出力レジスタROR
1を経由してメモリのバンクBANK1へ入力され、データ
a5,b4,…は出力レジスタROR2を経由してメモリのバンク
BANK2へ入力され、データa6,b5,…は出力レジスタROR3
を経由してメモリのバンクBANK3へ入力され、データ
a10,b7,…は出力レジスタROR4を経由してメモリのバン
クBANK4に入力される。
ここで入力データA=〔a1,a2,a3,…〕の要素データの
うち有効データのみのデータD=〔d1,d2,d3,d4,d5,
…〕=〔a2,a5,a6,a10,a13,…〕及び入力データB=〔b
1,b2,b3,…〕の要素データのうち有効データのみのデー
タF=〔f1,f2,f3,f4,f5,…〕=〔b3,b4,b5,b7,b8,…〕
を考えると、データD及びFの4×k+1番目(但しk
は整数)のデータd1(=a2),f1(=b3),d5(a
13),f5(=b8),…はメモリのバンクBANK1へ、デー
タDおよびFの4×k+2番目のデータd2(=a5),f2
(=b4),…はメモリのバンクBANK2へ、データD及び
Fの4×k+3番目のデータd3(=a6),f3(=b5),
…はメモリのバンクBANK3へ、データD及びFの4×k
+4番目のデータd4(=a10),f4(=b7),…はメモリ
のバンクBANK4へ入力されていることがわかる。
すなわち、入力データの中に無効データを含んでいて
も、有効データのみの順番に沿ってインタリーブ方式の
処理装置へデータを供給するためのタイミング調整用の
回路として本発明のパイプライン回路が有効であること
がわかる。
第5図は、本発明の第2の実施例のブロック図であり、
第1図の第1の実施例における入力データAの他に入力
指示信号Tもデータ保持回路に入力することによって本
発明のパイプライン回路の効果を向上させた例である。
なお、第5図において第1図と同一符号は同一部分を示
す。
第5図において、パイプライン回路6000は、入力指示信
号Tと一連のデータA=〔a1,a2,…,am〕とを入力と
し、出力指示信号Hと一連のデータYを出力する。
データ保持回路602は、選択信号生成回路301から選択信
号Sを入力し、デコーだDCDによって4段のデータ保持
手段R1,R2,R3,R4用の選択信号s1,s2,s3,s4を生成し、デ
ータAと、データAに対応する入力指示信号Tを一対一
対応に並べたデータPを4段のデータ保持手段R1,R2,R
3,R4のうちのいずれか一つに格納する。例えば選択信号
s1,s2,s3,s4のうちの選択信号s3が有効の時は、データ
Pはデータ保持手段R3に格納される。但し、入力指示信
号Tが無効(例えば論理“0")を示す時はデータPは無
効となり、データ保持手段R3には格納されない。入力指
示信号Tが有効(たとえば論理“1")を示す時にデータ
保持手段R3に格納されたデータPは、1タイミングサイ
クル後にデータ保持手段R4に格納され、データ保持回路
602の出力データ、すなわちパイプライン回路6000の出
力データとなる。この出力データのうち、入力データA
に対応する出力データをY,入力指示信号Tに対応するデ
ータをHとし、出力データY,Hを入力して格納し、デー
タZ,Eとして出力するレジスタを、それぞれZレジスタ6
03,Eレジスタ604とする。
出力データHつまりEレジスタ604の出力データEが有
効を示すタイミングで、データ保持回路602から出力さ
れるデータYつまりZレジスタ603の出力データZは、
常に有効なデータであることから、データHはデータY
の制御信号(例えば書込イネーブル信号等として後段の
回路で使用することができる。
パイプライン回路6000内の他の各部は、第1図における
パイプライン回路3000と同様である。
第6図は本発明の第3の実施例のブロック図である。第
1図の第1の実施例における入力データAおよび入力指
示信号Tの他に、選択信号初期値30と、初期値設定指示
信号STとを入力することによって、本発明のパイプライ
ン回路の効果を向上させた例であり、第1図と同等部分
は同一符号により示されている。
第6図において、選択信号生成回路303は、選択信号初
期値S0と、初期値設定指示信号STと、入力指示信号Tと
を入力し、初期値設定指示信号STが有効を示す時は、選
択信号初期値S0を次のタイミングの選択信号Sとして出
力し、初期値設定指示信号STが無効を示し且つ入力指示
信号Tが無効を示す時は、周期的な4通りの値1,2,3,4,
1,2,…のうち、以前の選択信号Sの示す値の次の値を示
す選択信号Sを生成して出力し、さらに初期値設定指示
信号STが無効を示し且つ入力指示信号Tが有効を示す時
は、以前の選択信号Sの示す値を保持する。
上記のように選択信号生成回路303は、図示のように、
第1段目入力に選択信号初期値S0,第2段目入力に+1
回路ADの出力,第3段目入力に現在の選択信号の値がそ
れぞれ入力される3入力1出力の選択回路SE31と、初期
値設定指示信号STを選択回路SE31の第1段目に加えると
共にその反転信号を生成するゲートG31と、入力指示信
号T及びその反転信号を出力するゲートG32と、初期値
設定指示信号STの反転信号と入力指示信号Tの反転信号
との論理積を選択回路SE31の第2段目に加えるゲートG3
3と、初期値設定指示信号STの反転信号と入力指示信号
Tとの論理積を選択回路SE31の第3段目に加えるゲート
G34とを有するサイクルカウンタCNT2で実現できる。こ
のサイクルカウンタCNT2は、初期値設定指示信号ST=1
の時は選択信号初期値S0の値を選択し、初期値設定指示
信号ST=0且つ入力指示信号T=0の時は「S+1」の
値を選択し、初期値設定指示信号ST=0且つ入力指示信
号T=1の時は「S」の値を選択することによって、タ
イミングサイクルと同期して選択信号Sの値を変化させ
る。この選択信号Sの示す値の範囲は1,2,3,4の4通り
となっている。
なお、パイプライン回路7000内の他の各部は第1図にお
けるパイプライン回路3000と同等である。
上述したパイプライン回路7000は、例えば第3図及び第
7図で説明したパイプライン回路902として使用される
場合、最初の有効データをクロスバ基準タイミングが3
の時に入力レジスタRIBに格納できるように、クロスバ
基準タイミングから1タイミングサイクル遅れた値を選
択信号初期値S0として、初期値設定指示信号STと共に入
力することによって、選択信号Sのタイミング調整をす
ることができる。
〔発明の効果〕
以上説明したように、本発明のパイプライン回路は、パ
イプライン回路内でのデータ保持時間を決定するための
選択信号の生成に、入力データの有効または無効を示す
信号を使用して制御することにより、データの入力タイ
ミングが不規則な場合あるいは、データ内に有効データ
および無効データが混在する場合にも、後続の処理対象
となる有効データのみを適切なタイミングで送出し、且
つ、その制御回路も単純で且つ少ないハードウェア量で
実現することが出来るという効果がある。
【図面の簡単な説明】
第1図は本発明の第1の実施例のブロック図、 第2図は第1の実施例のパイプライン回路内の動作を示
すタイムチャート、 第3図は第1図の実施例のパイプライン回路の動作タイ
ミングをずらす方法の一例を示すタイムチャート、 第4図は第1の実施例のパイプライン回路からの出力を
使用する入力クロスバの動作例を示すタイムチャート、 第5図は本発明の第2の実施例のブロック図、 第6図は本発明の第3の実施例のブロック図、 第7図は4個のバンクで構成されるメモリを持つデータ
処理装置のメモリ周辺回路のブロック図、 第8図は第7図の入力クロスバ903の動作例を示すタイ
ムチャート、 第9図は従来のパイプライン回路のブロック図および、 第10図,第11図および第12図は第9図のパイプライン回
路の動作を示すタイムチャートである。 図において、 301,303……選択信号生成回路 302,602……データ保持回路 3000,6000,7000……パイプライン回路 901,902……パイプライン回路 903……入力クロスバ 904……メモリ 801……選択信号レジスタ 802……データ保持回路 8000……パイプライン回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】一連のm個の入力データA1,A2,…,Amのう
    ちの1個のデータAjに対応して入力される入力指示信号
    Tjが無効を示す時は、周期的なn通りの値1,2,…,n,1,
    2,…のうち、以前の選択信号Sj-1の示す値の次の値を示
    す選択信号Sjを出力し、前記入力指示信号Tjが有効を示
    す時は、選択信号Sj-1の示す値と同じ値を示す選択信号
    Sjを出力する選択信号生成回路と、 前記データAj,該データAjに対応する前記選択信号Sj及
    び前記入力指示信号Tjを入力とし、前記選択信号Sjの示
    す値がiの時は、n段のデータ保持手段R1,R2,…,Rnの
    うちのi段目のデータ保持手段Riに前記データAjおよび
    前記入力指示信号Tjを入力し、該入力指示信号Tjが有効
    を示す時はn−i段のデータ保持手段Ri+1,Ri+2,…,R
    nを経由してデータAjの入力からn−i+1タイミング
    サイクル後にデータAjを出力し、前記入力指示信号Tjが
    無効を示す時は前記データAjを無効とするデータ保持回
    路とを備え、 前記m個のデータA1,A2,…,Aj,…,Amと、該データの各
    々に対応するm個の入力指示信号T1,T2,…,Tj,…,Tmと
    を入力し、m個のデータのうちの有効なデータをn×k
    +1(但しkは整数)タイミングサイクルの間隔で順次
    出力することを特徴とするパイプライン回路。
JP12354988A 1988-05-20 1988-05-20 パイプライン回路 Expired - Lifetime JPH0673106B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP12354988A JPH0673106B2 (ja) 1988-05-20 1988-05-20 パイプライン回路
US07/351,084 US5142685A (en) 1988-05-20 1989-05-12 Pipeline circuit for timing adjustment of irregular valid and invalid data
EP89108962A EP0342674B1 (en) 1988-05-20 1989-05-18 Pipeline circuit for timing adjustment
DE68927241T DE68927241T2 (de) 1988-05-20 1989-05-18 Pipelineschaltung für Zeitablaufregelung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12354988A JPH0673106B2 (ja) 1988-05-20 1988-05-20 パイプライン回路

Publications (2)

Publication Number Publication Date
JPH01292534A JPH01292534A (ja) 1989-11-24
JPH0673106B2 true JPH0673106B2 (ja) 1994-09-14

Family

ID=14863351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12354988A Expired - Lifetime JPH0673106B2 (ja) 1988-05-20 1988-05-20 パイプライン回路

Country Status (1)

Country Link
JP (1) JPH0673106B2 (ja)

Also Published As

Publication number Publication date
JPH01292534A (ja) 1989-11-24

Similar Documents

Publication Publication Date Title
US5410727A (en) Input/output system for a massively parallel, single instruction, multiple data (SIMD) computer providing for the simultaneous transfer of data between a host computer input/output system and all SIMD memory devices
JPH04111127A (ja) 演算処理装置
US5142685A (en) Pipeline circuit for timing adjustment of irregular valid and invalid data
JPH0673106B2 (ja) パイプライン回路
JPH0673107B2 (ja) パイプライン回路
JP3696625B2 (ja) データ駆動型情報処理装置
JPH09101889A (ja) パイプライン演算装置
JPH0644051A (ja) マイクロコンピュータ
KR960016401B1 (ko) 레지스터 페이지 포인터를 이용한 레지스터 페이지간의 페이지 선택회로
JP2667810B2 (ja) ベクトル処理装置
JPH01284926A (ja) 演算装置の命令読出方式
JPH02204861A (ja) ベクトルデータ処理装置
SU1161952A1 (ru) Устройство для вычисления логических функций
JPH0668055A (ja) ディジタル信号処理装置
JPH10334081A (ja) リストベクトル処理装置
JPH09114779A (ja) 情報処理装置のウェイト制御方式
KR950006609A (ko) 제어시스템의 대기시간 제어장치
JPH04343132A (ja) 中央演算処理装置
JPH03246726A (ja) アドレス生成装置
JPS62168233A (ja) 情報処理装置
JPH0634205B2 (ja) ベクトル演算処理装置
JPH01211050A (ja) 外部メモリを有するプロセッサ
JPS58203532A (ja) タイミングパルス発生回路
JPS62217482A (ja) メモリ制御方式
JPH1074190A (ja) 並列プロセッサ