JPH03214269A - 2次元配列データ回転機構 - Google Patents

2次元配列データ回転機構

Info

Publication number
JPH03214269A
JPH03214269A JP2009556A JP955690A JPH03214269A JP H03214269 A JPH03214269 A JP H03214269A JP 2009556 A JP2009556 A JP 2009556A JP 955690 A JP955690 A JP 955690A JP H03214269 A JPH03214269 A JP H03214269A
Authority
JP
Japan
Prior art keywords
data
unit
array
dimensional
row
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2009556A
Other languages
English (en)
Inventor
Toshio Kondo
利夫 近藤
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.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009556A priority Critical patent/JPH03214269A/ja
Publication of JPH03214269A publication Critical patent/JPH03214269A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、メモリのアクセスデータ数(データ語長が1
ビットの場合はデータ幅に等価)の拡大によって,高性
能化なけかる画偉処理装置.ノ冫ターン認識装置等にお
いて,コンパクトでかつ高速な2次元配列データの90
度回転機構を実現する技術に関するものである. [従来の技術] メモリに格納されている2次元配列データを,高速に9
0度の整数倍回転する方法としては縦と横がメモリから
一度Kアクセスするデータ数K等しいサブ2次元配列デ
ータの行と列の間を変換する90度回転器を用いる方法
が知られている(例えば,各データの語長が1ビットの
2次元配列データ(ビットプレーン)を扱う場合につい
てFia願昭59−170863号[イメージ回転処理
方式]参照). この方法を利用したビットプレーン用の回転機構の一例
の概略ブロック図を第2図に示す。ここで,IFiWx
Wのサブビットプレーン用の90度回転器.200はア
クセス幅が1ビットのランダムアクセスメモリ( RA
M )ユニット2のW個からなるRAMユニット配列(
いわゆるWビット幅のメモリ),3は制御部.4は幅が
Wビットのデータバスである。メモリ内の被回転ピット
プレーンをWxWのサブピットデレーンで切り出して,
一旦90度回転器に行単位で読みだし,その回転結果を
列単位で適当なアドレスに張シ込むことによク,回転後
のピット!レーンをメモリ内に形成するものである。
第3図は,この手順なWが3の場合について図示したも
のである。図の(i)は被回転ビットデレーンであり、
図の(b)の左側のような形で.RAMユニット配列2
の中K格納される。このピットプレーンの格納イメージ
の枠から90度回転器に向かう矢印は.RAMユニット
配列から3ピット長のワード単位K読みだしたデータを
3×3のサブピットプレーンの行として,90度回転器
に順次入力する様子を示している。この時適当なアドレ
スを順次与えることによって,3×3のサブピットデレ
ーンが,゛図示するように90度回転器内に形成される
。一方,90度回転器から,右側のメモリ格納イメージ
に向かう矢印は.90度回転器内の3×3のサブビット
プレーンの列を順に取シ出し3ピット長のワードとして
、RAMユニット配列内に再格納する様子を示している
。この再格納された配列データは図の(clのピットプ
レーンを表しており.ちょうどこれは,被回転ビットプ
レーンを反時計方向に90度回転したものとなっている
.ところでこの従来例での,サブビットデレーン当たり
の90度回転の所要時間は, RAMユニット配列から
の1ワードのアクセスを1単位時間で,RAMユニット
配列と90度回転器間の入出力をRAMユニット配列の
アクセスと並行して行なえるとすると,2W単位時間と
なる。
[発明が解決しようとする課題コ この方法では, RAMユニット配列から一度にアクセ
スするデータ数と回転器の入出力のデータ数とは同一で
あり,この両方をともに太き〈しなければ,回転速度の
向上は望めない。この場合,RAMユニット配列からの
アクセスデータ数は,メモIJ I Cを並列に並べる
ことKより比較的容易に拡張できる。しかし.回転器の
入出力データ数は,入出力データ数の2乗に比例して大
きくなるノ・一ドウェア量がネックとなり,容易に拡張
できない問題点があった。
本発明の目的は, RAMユニット配列から一度にアク
セスするデータ数を拡大しても,ハードウェア量14り
増大させることのない高速の2次元配列データ回転機構
を提供することにある。
〕Iを解決ナるための手段と作F!!]本発明は上記目
的を達成するために.全体で同一のアドレスをアクセス
する手段と行ごとK互いに異なるアドレスをアクセスす
る手段とな兼備する行列状に配列した記憶ユニットと.
2次元配列データを行単位に置換する手段と,2次元配
列データを90度の奇数倍回転する手段とを合わせ持つ
ことを特徴とするものである。
本発明は,回転対象のサブ2次元データ配列のN(Nは
2以上の整数)行分(あるいけN列分)のデータな記憶
ユニット配列から−闇にアクセスすることを最大の特徴
とする。一度に1行分(あるいは1列分)のデータしか
アクセスしない従来方式に比べると,記憶ユニット配列
からのアクセスデータ数が同一の場合.回転対象のサブ
2次元データ配列の行のサイズすなわち90度回転器の
一辺のサイズが1ハ・にできるために90f回転器のハ
ードウエア量を大きく低減できる。ここで,回転前のサ
ブ2次元配列データと回転後のサブ2次元配列データは
.いずれも記憶ユニット配列な2次元の配列と見なした
場合のある1行(あるいは列)の記憶ユニットに格納さ
れる。従って,これらのN行(あるいはN列)は,記憶
ユニット配列の1行(あるいは列)に属する記憶ユニッ
トに格納される状態から効率良くアクセスできる必要が
ある.このために,記憶ユニット配列の1行に格納され
るサブ2次元配列データのN行分を記憶ユニット配列全
体に分散させたりあるいはその逆?行なうことな目的と
した記憶ユニット配列の行ごとにアクセスされる配列デ
ータ間で相互に置換する手段と記憶ユニット配列の各行
ごとに互いに異なるアドレスからアクセスする手段な備
える点が本発明の構成上の特徴である。なお,さぎのN
行(あるいけN列)Fi.一つの回転対象のサブ2次元
配列データに属する珈合と複数の回転対象のサブ2次元
配列データに属する場合がある。以下,1つの回転対象
の全行を一度にアクセスする場合(N=Wの場合)の実
施例から順に説明する。
[実施例コ 第1図は本発明のtJ.1の実施例のブロック構成を示
した図であり,1は90度回転器,20〜z s 12
 RAM ユ=ット,soFi行間のデータの置換?行
なうためのスイッチングネットワーク.5b5ctiア
ドレス修飾器,6はアト゜レス信号入力端子,7はアド
レス修飾器を修飾モードと非修飾モードの間で切り換え
るための制御入力端子,8け90度回転器J,スイッチ
ングネットワークSO.RAMユニット20〜28間ケ
結ぶ,パスである。
アドレス修飾器5b ,5eけ,特許請求の範囲でいう
全体で同一のアドレスと行ごとに異なるアドレスを発生
するための手段であり,非修飾モードでは入力?そのま
ま出力し,修飾モート゜では入力信号な次のように修飾
して出力する。
5bのアドレス修飾器:our =A+1−{3[A+
1/3]−3[A/3]}・・・・・〈1) 5cのアドレス修飾器: OUT =A+2−(3「A
+2/3コー3[&3])・・・・・{2) ここで. OUTは出力のアドレス信号値,人け入力の
アドレス信号値,[]けガウス記号である。第4図は,
90度回転器lの構成を示しており、10ケ基本の回転
エレメント.1)t’iマスタスレイプ型のD−FF.
  ノ2ij}ライステートノぐクファ,13はセレク
タである。第5図はスイッチングネットワーク30の構
成図であり,3ノはローテート可能なシフタ,32けパ
ス8につながる入出力端子である一 次に第6図のように20〜28のRAMユニット配列の
AからA+1番地に格納されたOOから88までの2次
元配列データを本実施例によって回転ナる手順について
ステップ?追って貌明する。
◎ステノデ1 アドレス修飾器5b ,5cを非修飾モードとして、2
(I−211のRAMユニット配列のA+1.A+4.
A+7iI地のデータをスイッチングネットワーク30
に読みだし.行単位で距離】だけ紙面の奥の方向から手
前に向かってローテートシフトし結果をD+l .D+
4 t D+7番地に格納することを順に行なう。20
〜28のRAMユニクト配列のA+2番地、A+5番地
,A+8番地のデータについてもスイッチングネットワ
ーク30に読みだして,行単位で同方向K距離2だけロ
ーテートシフトし結果をD+2,D+5 ,D+8番地
に格納することを順に行なう。A , A+3 , A
+6番地については、そのまま,D,D+3,D+6番
地に転送する。その結果.20〜28のRAMユニット
配列内のD−D+8番地に.第7図に示す2次元配列デ
ータが得られる。
◎ステッデ2 アト゜レス修飾器5b.5cを修飾モードに設定し、2
0〜28のアト゜レス修飾器の入力にDを加えて、20
〜28のRAMユニット配列からデータを90度回転器
lに読みだ寸,.RAMユニット20,21.22K対
しては入力Dがそのままアドレスとして加わるため,D
番地がアクセスされるが、RAMユニットの23t24
.25および26,27,213についてはアドレス修
飾器5b,5cを介してアドレスが供給されるために.
入力Dが修飾され.それぞれD+1とD+2がアドレス
としてWわり,D+1番地とD+2番地がアクセスされ
る。結果として,もともと20〜28のRAMユニット
配列内に格納されていたサブ2次元配列が1次元配列に
展開された形で一回のアクセスで読みだされ.第8図f
a)のサブ2次元配列として90度回転器1に格納され
る。なお.90度回転器Jへの格納は、第4図のセレク
タ13をRAMユニット20〜28からの入力を選ぶよ
う設定することで行なえる・ ◎ステップ3 このサブ2次元配列を,90度回転器1のセレクタ13
を左側の他の回転エレメントからの入力な選ぶことによ
り,第8図の(b)に示すように時計方向に90度回転
する。
◎ステッデ4 この90度回転したサブ2次元配列データな,バス8を
介してスイッチングネットワーク30に転送し、行単位
で紙面の奥から手前に向かって距離1だけローテートシ
フトし,アドレス修飾器5b.5cを修飾モード、入力
アト゜レスtB+2として,第9図(alのように格納
する。
◎ステップ5 ステップ2ff入カアドレスをD+3として繰り返す。
結果として第10図(轟)のサブ2次元配列が90度回
転器7K読みだされる。
◎ステップ6 ステップ3と同様の処理を行ない,第lO図(blのよ
うに回転する。
◎ステップ7 この90度回転したサブ2次元配列データを,パス8な
介して、アドレス修飾器5b+5cを修飾モード,入力
アドレスなBとして,第9図(b1のように20〜28
のRAMユニット配列に格納する。
◎ステッデ8 ステップ2な人カアドレスをD+6として繰り返す。結
果として第11図(1)のサブ2次元配列が90度回転
器7K読みだされる。
◎ステッデ9 ステップ3と同梯の処理を行ない、第11図(blのよ
うに回転する。
◎ステッデ10 この90度回転したサブ2次元配列データを,パス8を
介してスイッチングネットワーク30に転送し,行単位
で距離1だけステップ4とは逆方向にローテートシフト
し,アドレス修飾器sb.5cを修飾モート9,入カア
ドレスをB+1として、第9図1clのように格納する
◎ステッデIノ 第9図(c)の結果な,スイッチングネットワーク30
を用いて,行単位に列方向にローテートシフトシ,結果
をCからC+2番地に格納する。その結果が、第9図(
dtである。これは元の2次元配列データの左側3列が
時計方向に90度回転された形である。ここまでのステ
ッ+′2から11を繰リ返すことで,00から88の2
次元配列データ全体を時計方向に90度回転することが
できる。この際.回転対象の列と結果の格納先が変わる
のに応じて.aみだしアドレス,書き込みアドレス,シ
フト量等は適宜変更される必要がある、本実施例でのW
xWのサブビットプレーン当たりの回転所要時間は,2
0〜28の副ユニット配列から回転器1あるいはスイッ
チングネットワーク30に対するアクセス所要時間を1
単位時間,スイッチングネットワーク30での任意量の
ローテートシフトを1単位時間,90度回転器1での9
0度回転を1単位時間,スイッチングネットワーク30
・回転器J開の転送の所!時間を1単位時間とすると,
ステッデ1で3単位時間,ステンf2 , 5 . 8
で1単位時間、ステップ3.6.9で1単位時間,ステ
ップ4,7.10で3単位時間,ステン7′1ノで3単
位時間となり,全体で11単位時間となる。この所要時
間は短いとは言えないが,これはパイプライン的な処理
機構を導入することで解決可能である。
第30図は,その実現例の一つである本発明の第2の実
施例を示している。ここで,1′は入出力の方向を上方
向でも下方向でも設定可能な双方回の90度回転器.3
0社双方向のスイッチングネットワーク,90〜98は
もう一つのRAMユニット.99はもう一つのアドレス
信号入力端子J8#−1 RAMユニット20〜28と
スイッチングネットワーク30′の開を結ぶパス,88
′はスイッチングネットワークs olと90度回転器
1′の間を結ぶパス.88竹90度回転器1′とRAM
ユニット90〜98の間を結ぶパスである。本実施例の
動作は基本酌に第1の実施例と同じである。違いは,A
〜A+8番地とC−C+S番地を90〜98のRAMユ
ニット配列に割付け.回転処理の各々をRAMユニノト
MP列の20〜28と90〜98の間な往復する間に行
なうようにする点である.90度回転器1′における回
転処理,スイッチングネットワーク30Qlcおケルロ
ーテートシフ}.RAMユニット20〜28と90〜9
8の読みだしと書き込みの任意の組み合わせが1単位時
間で実行できれば.あるいはこれが不可能でも,各処理
をパイデラインの一段ずつに割り当てて・ぞイプライ/
処理を行ない等価的に1麺位時間で実行すれば、先の所
要時間は大きく低減される。′fなわち,ステップの1
お・よび4は. RAMユニット配列90〜98から,
RAMユニット配列20〜28に向かう処理としてそれ
ぞれ1単位時間で,ステッデ2,3および1zl′iR
AMユニット配列20〜28から. RAMユニット配
列90〜98に向かう処理としてそれぞれ1単位時間で
実行できる。従って,全体の所要時間は4単位時間とな
る。
W.12図は本発明の第3の実施例のブロック構成図で
あり,20〜Z8はRAMユニット,40〜48はシフ
トレジスタ,6竹アドレス信号入力端子,7′はシフト
レジスタ制御信号入力端子,9は2次元シフトユニット
制御信号入力端子,10′は2次元シフトエレメント,
8′はシフトレジスタ40〜イ8.RA111ユニット
20〜28、2次元シフトエレメントi o’間を結ぶ
バスである。2次元シフトエレメント1 0’の3×3
の配列と隣接エレメント間の接続ノソス全体でスイッチ
ングネットワークと90度回転器な兼ねる2次元シフト
ユニットな構成する。第13図の(ml , (b) 
,(clは、それぞれ,40〜42.43〜45 .4
6〜48のシフトレジスタの内部檜成を示ナブロック樽
成図であり,5J,52はセレクタ,53,54.55
はマスタスレイプ型のD−FF.56はデータ入力端子
,57はデータ出力端子である。D− FF55の出力
はセレクタ51にフィート0バックされており,53〜
55のデータけローテートシ7トナることが可能である
(ローテート可能なシフトレジスタ)。なお.第13図
の(轟1 , (bl , (clのシフトレジスタ間
の違いは,セレクタ52に対する入力のパスが異なる点
である。これによって行単位で一段ずつずれたアドレス
から出力することができる。従って,本実施例ではこの
シフトレジスタの配列が.%.*請求の範囲でいう全体
で同一のアドレスのアクセスと行ごとに異なるアドレス
のアクセスの両方を行なう手段な有する記憶ユニット配
列となる。第14図は,2次元シフトエレメントJO′
のブロック構成を示した図であl),Jx,11′はマ
スタスレイプ型のD−FF.12はトライステートノぐ
ツファ,13’,13”は入カセレクタ,ノ5.16,
17.18はそれぞれ,紙面に関して奥行き側,手前側
,右側,左側の隣接エレメントとの間を結ぶための入出
力端子,19はバス8/に対する入出力端子である。
次に先の第1の実施例の場合と同様に,第6図のように
20〜28のRAMユニット配列のAからA+1番地に
格納されたOO〜88までの2次元配列データな時計方
向に90度回転する手順についてステップを追って説明
する。
◎ステップ1 20〜28のRAMユニット配列のA+1番地,A+4
番地,A+7番地のデータを,2次元シフトユニットに
読みだし(2次元シフトエレメント7(7/のセレクタ
13′ケパス8′からの入力を選ぶように設定し、列方
向のシフト機能を利用して,紙面の奥から手前に向かっ
て行単位に1だけローテートシ7トし結果を元の番地に
戻すことを順に行なう。20〜28のRAMユニット配
列のA+2番地,A+5番地、A+8番地についても2
次元シフトユニットに読みだし,同方向に行単位で2(
逆方向に1でもよい)ローテートシフトし結果を元の番
地に戻すことな順に行なう。その結果は先の第1の実施
例の第7図に示ナようになる。ただし,この場合にはア
ドレスはDではなくAのままである。ここで,2次元シ
フトユニットにおける行方向のシフトは、2次元シフト
エレメントJ()/で端子15を入力に,端子17を出
力K,セレクタ13′を端子15からの入力を選択する
ように設定することで実現される。
◎ステッデ2 シフトレジスタ40〜48のセレクタ5ノをパス8′か
らの入力を選択するよう設定し,20〜28のRAMユ
ニット配列のA番地からA+2番地着で順次,シフトレ
ゾスタ配列に読みだす。その結果、各シフトレジスタ4
0〜48のD−FF53〜55の内容の配列は第15図
に示すとおりとなる。
◎ステッf3 〔サブステッデJ〕 シフトレジスタユニットの入カセレクタ5ノは左側の入
力を,出力セレクタ52は右側からの入力を選択するよ
う設定し,シフトレジスタ40〜48内でローテートシ
フトを行ないながら2次元シフトユニットに読みだナ。
この読みだしは,2次元シフトユニットの各2次元シフ
トエレメントlO′でパス8′からの入力シ取り込むよ
うにセレクタ1 3’を設定することで行なえる。この
結果,2次元シフトユニットのD−FFM1の配列には
、初めに第8図(alのデータ配列が入る。
〔サブステッデ2〕 このデータ配列を列方向のシフトユニット?用いて手前
から奥に向かって行単位でシフトナるとともに、そのシ
フトデータな行方向のシフト転送系に逐一取り込み,右
から左方向に向かって列単位でシフト転送することによ
って,時計方向に90度回転した結果(第8図(b))
を,シフト転送ユニットのD−FFII’の配列に得る
。この回転結果をRAMユニット20〜28のC番地に
格納する。ここで、2次元シフトユニットにおける右か
ら左に向かう行方向のシフトは,2次元シフトエレメン
ト10′の入出力端子16を入力に,入出力端子l8を
出力に,セレクタI J”を端子J6からの入力を選ぶ
ように設定することによって実籾できる。この際、右端
の2次元シフトエレメントJ O’には2同時に行なわ
れている列方向のシフトデータが順次入るようパスが接
続されているので,列・行方向同時のシフト転送を3回
繰り返すことで,時計方向の90度回転を実現すること
ができる。
〔サブステッ−y’ 3 ) サブステッデ1と同様の処理な行なう。この場合,D−
FFIIに読みだされるデータは,第16図(a)のよ
うに列方向にシフトがかかった形になっている。この場
合には逆方向に1回シフトし第16図fb)のような正
規のサブ2次元配列を得る。
〔サブステッデ4〕 サブステッデ2と同様の処理を行なう。ただし格納先は
C+1番地とする。
〔サブステップ5〕 サプステッ′7″3と同様の処理な行なう。
[サブステッf6] サブステップ2と同様の処理を行なう。ただし,格納先
けC+2番地と干る。
以上により,第6図のAからA+2番地のデータ配列は
第17図CからC+2番地のように変換される。
◎ステップ4 ステッデ2と同様の処理を行なう。ただし,読みだしア
ト゛レスけA+3〜A+5番地とする。
◎ステッデ5 ステッデ3と同様の処理を行なう。ただし,書き込みア
ドレスけC+3〜c+5番地とする。結果は、第17図
C+3〜C+5番地のようになる。
◎ステッデ6 ステッ+′2と同様の処理な行なう。ただし,読みだし
アドレスはA+6〜A+8番地とする。
◎ステッデ7 ステッデ3と同様の処理な行なう。ただし、省き込みア
ドレスけC+6〜C+8番地とする。結果は、第17図
C+6〜C+8番地のようになる。
ft5)ステップ8 20〜28のRAMユニット配列のC−C+2番地のデ
ータを2次元シフトユニットに鯖.みだし,列方向のシ
フト機能を利用して,紙面の奥から手前に向かって行単
位に2(逆方向に1でもよい)ローテートシフトし結果
な元の番地に戻すことを順に行なう。20〜28のRA
Mユニット配列のC+3〜C+5番地についても2次元
シフトユニットに読みだし,同方向に行単位で1だけロ
ーテートシフトし2結果な元の番地に戻すことを順に行
なう。その結果は第18図に示すとおりとなる。
◎ステップ9 シフトレジスタのセレクタ5ノをパス8′からの入力を
選択するよう設定し,20〜28のRAMユニット配列
のC+5,C+3,C番地の順次,40〜48のシフト
レジスタ配列に読みだす。結果は第19に示すとおりと
なる。
(Q)ステップ10 シフトレ・クスタユニットの入力セレクタ51は左側の
入力?.出力セレクタ52は右側からの入力ケ選択する
よう設定し,シフトレジスタ40〜48内でローテート
シフトを行ないながら2次元シフトユニットに読みだす
。この結果,2次元シ7hユニットのD−FFIIの配
列には,第20図(a) * (bl e (c)のデ
ータ配列が順次読みだされる。
第20図(1)についてはそのまi RAMユニット2
0〜28のB番地に,第20図(b) , (c)につ
いてはシフトがかかっているので.2次元シフトユニッ
トの列方向のシフト機能を利用して.正規の形に戻して
から、13+l ,B+2番地に格納する。この結果は
ちょうど第6図の左側3列が時計方向に90度回転した
第9図(dlとなる。ステッデ9.10を,C+3〜C
+5およびC+6〜C+8番地のデータに対し繰り返す
ことで第6図の2次元配列データの全体に対する90度
回転データを得ることができる。
本発明の第1l第2および第3の実施例では、RAMユ
ニット20〜28内に格納された2次元配列データを1
次元配列データに展開する際に,実効的に1,2式のよ
うなアドレスの修飾ケ.行単位の置換としてローテート
シフトナ,それぞれ用いている。しかし,サブ2次元配
列データの1次元配列デー,夕への展開は.2次元アド
レスアクセスメモ1)を構成する漸合[文献二元岡他「
2次元記憶を甲いた速想処理システム」信学技報E C
 76−80]と同様,こねとは違つ九行単位の置換,
アドレス修飾によって本可能である。
第21図は本発明の第4の実施例のブロック構成図であ
って、l 0 0 , J 0 0’, 1 0 0N
は記憶ユニットと90度回転器を兼ねる2次元シフトユ
ニット,6はアドレス信号入力端子,20〜28はRA
Mユニット,30#′lltスイッチングネットワーク
.sid RAMユニット20〜28.スイッチングネ
ットワーク30.2次元シフトユニット100,1 0
 0’,1 0 0’の間を結ぶバス.60〜68は2
次元シフトユニットのデータ入出力端子である。
第22図の(al T (bl y (e)はそれぞれ
2次元シフトユニットJ 00 , J 00’,1 
00“のブロック構成図であって,60〜68はデータ
入出力端子,70は入カセレクタ.71は出力セレクタ
.110〜ノ18,120〜128,130〜138は
2次元シフトエレメント.g oは2次元シフト二二ツ
トを構成する列ユニットである。第23図は2次元シフ
トエレメントのブロック構成図であクて,1 1 . 
I J’はマスタスレープ型のD−FF.72は入カセ
レクタ,75は紙面の上方向への出力端子,76Fi紙
面の右方向からの入力端子,77は紙面の下方向からの
入力端子,78は紙面の左方向への出力端子である。
次に本実施例により第6図のRAMユニット配列内の2
次元配列データを時計方向に90度回転する場合につい
てステッザを追って説明する。
◎ステッデI AからA+2番地まで順に読みだして、2次元シフトユ
ニット2 0 0 , 1 0 0’, 2 0 0”
の各D一FFIIに,第24図に示すように格納する。
ここでます目の内容は対応する2次元シフトエレメント
内のD−FF7Jの内容な表している。
◎ステッデ2 2次元シフトユニット100.100’,100”の各
々の2次元シフトエレメントにおいてセレクタ72をD
−FFM 1の出力を選択することで,D−FFIJの
内容をD−FFMJ’に移す。
◎ステッデ3 2次元シフトユニット7 00 , 1 00’, J
 00’KおいてD−FF7J’の配列に格給されてい
る2次元配列データを.90度回転し.D−FFI 1
の配列に格納する。その格納結果を第25図に示す。こ
こで,90度回転は,各々の2次元シフトエレメントの
入力セレクタを右隣からの入力を選択するように設定し
て,D−FFIIの内容を右から左にシフトしながら,
各列ユニット80のセレクタ70を横方向のシフト系か
らの入力な選択するように設定して,2次元シフトユニ
ット100,J 0 0’. 1 0 0’の左端から
の出力データな下から上に向かって入力することを3回
繰り返すことで実行する。
◎ステッデ4 2次元シフトユニット1 0 0 , J 0 0’,
 1 0 0’のD−FFIIの内容を,列ユニット8
0のセレクタ7ノを最上段の入力?選択するようにして
,一旦,スイッチングネットワーク30に移し,行D−
FF7Jの内容をD−FFJノ′に移す。
◎ステップ3 2次元シフトユニット7 0 0 , 1 0 0’,
 J 0 0’においてD−FFJ7’の配列に格納さ
れている2次元配列データを,90度回転し,D−FF
J7の配列に格納する。その格納結果を第25図に示す
。ここで,90度回転Vi,各々の2次元シフトエレメ
ントの入力セレクタを右隣からの入力?選択するように
設定して、D−FFJ 7の内容を右から左にシフトし
ながら,各列ユニット80のセレクタvof横方向のシ
フト系からの入力を選択するように設定して.2次元シ
フトユニッ} 100,1 0 0’, 1 0 0“
の左端からの出力データな下から上に向かって入力する
ことを3回繰り返すことで実行する。
◎ステップ4 2次元シフトユニットJ 0 0 , J 0 0’,
 7 0 0#のD−FFIノの内容を,列ユニット8
0のセレクタ7lを最上段の入力を選択するようにして
,一旦,スイッチングネットワーク30に移し.行単位
で紙面の手前から奥に向かって.1.O,−1だけロー
テートシフトした後、列ユニット80のセレクタ70を
外部バス8からの入力を選ぶようにして,再度2次元シ
フトユニットloo,J 0 0’. J 0 0’ 
に戻し,D−FFJ 1の配列に第26図に示す結果を
得る。ここで角の符号は逆方向への転送な表している。
◎ステッデ5 列ユニット80でセレクタ70を最上段の2次元シフト
エレメントからの入力な選択するように,セレクタ7ノ
を90度回転器ごとK異なる段の2次元シフトエレメン
トからの入力(ブロック図で左側の入力)?選択するよ
うにそれぞれ設定し,各列ユニット80ごとでD−FF
I Jの内容を下から上方向にローテートシフトしなが
ら.D−FFJノの配列内の2次元配列データケ.パス
8を介して,20〜28のRAMユニット配列のC+2
,C,C+1番地の順に格納する。結果の20〜28の
RAMユニット配列の内容?第27図に示す。
以上のステップ1から5を,20〜28のRAMユニッ
ト配!1{のA十3〜A+5およびA+6〜A+8番地
に対しても同様に行なう。違いは,ステッデ4における
スイッチングネットワーク30による行単位のシフト量
を−1.1.0と0.−1.1にすることと,ステッデ
5での格納先をそれぞれC+3〜C+5およびC+6〜
C+S番地にすることである。これらの結果として,2
0〜28のRAMユニット配列のC−C+8番地に,第
28図に示す結果を得る。
◎ステップ6 2次元シフトユニットJ 00,lθ”+ 1 0 0
’の各列ユニット80のセレクタ70をパス8からの入
力な選択するように設定し.下から上に向かうシフト動
作な実行しながら, RAMユニット20〜28のC+
5 ,C+3 ,C番地の内容を,順次,各2次元シフ
トエレメン}・のD−FFJ JO中に読みだし.第2
9図の結果を得る。ここで各ます目の内容はD− FF
 1 1の保持データを表している。
◎ステップ7 列ユニット80でセレクタ70ttil上段の2次元シ
フトエレメントからの入刀な選択するようにセレクタ7
ノを90度回転器ごとに異なる段の2次元シフトエレメ
ントからの入カを選択するようにそれぞれ設定し,各列
ユニット8oごとでD−FFIIの内容を下から上方向
にローテートシフトシナがら.D−FFJ Jの配列内
の2次元配列データを、パス8に出方し,スイッチング
ネットワーク30を経由してから,20〜28のRAM
ユニット配列のB t B + 2 * B + 1番
地に領次格納し,第9図fd)と同じ結果を得る。ここ
で、スイッチングネットワーク3θでのシフト量は,紙
面の手前から奥に向かって0,2.1の順である。
ステップ6,7と同様な処理を20〜28のRAM ユ
ニ, ト配列のC+1 ,C+4 .C+7およびC+
2 ,c+5 ,C+8番地に対して行ない.その結果
?それぞれB+3〜B+5およびB+6〜B+8番地に
格納する(この際,20〜28のRAMユニット配列の
アドレスのアク+スm%およびスイッチ/グネ・ノトワ
ーク3o上でのシフト量は適当に変更する必要がある。
)ことで、第6図の2次元配列データを時計方向に90
度回転した結果なB − B + 8番地に得ることが
できる。
次に,効果Kついて訳明する。
初めにハードウェア規模の低減効果について評価する。
本発明の第1,2および3の実施例では,RAMユニッ
ト配列のアクセスデータ数がLの場合WはLで.90度
回転器のサイズをWがLそのものになる従来の方法と比
べると,辺のサイズで1/VL,ハードウエア規模でI
Aとなる。本発明の第4の実施例では辺のサイズがLの
90度回転器をL個程度並列に持つためハードウエア却
模が増大するがそれでも従来の方法に比べると.90度
回転器全体のハードウエア規模は1/XTJM f+と
なる。
Lが小さい場合には、アト゜レス修飾機構,シフトレジ
スタ配列等の余分に付加するハードウエアで相殺されて
しまい,ハードウェア低減効果は小さいが,Lが大きい
場合,例えば64以上にもなると本発明の効果は非常に
大きbことがわかる。なお、ハードウェア規模の評価で
. RAMユニット配列を除外しているのは、他の用途
で使うものを流用できると考えているからである。この
流用可能性性こそが本発明でハードウェア規模を低減で
きる本質的な理由と貫える。また,W=,/τの関係は
,RAMユニット配列からのアクセスを時分割(分割数
二N)で行ない等価的にRAMユニット配列のサイズな
大きくすれば,W=V鼠とすることが可能である。これ
によクて,設計条件に応じて,LとWを適宜選択するこ
とができる。
一方,高速化の効果については,従来法の所要時間が2
W単位時間、本発明の・ぞイプライン的な処理が可能な
構成を採用した第2の実施例が4単位時間であることか
ら、90度回転器のサイズが同一の東件では、最犬W/
2倍程度の高速化率が得られる。例えば、Wが8(L=
64)の場合に目, 従来の方法の所要時間    :16単位時間本発明の
第2の実施例所要時間: 4車位時間で,4倍の高速化
が,さらにWが2倍の16(L=256)の場合には. 従来の方波の所要時間    =32麺位時関本発明の
第20寮施例所要時間= 4単位時間で、8倍の高速化
が,それぞれ達成される6なお,第3,第4の実施例は
このままでは第2の実施例に比べ速度性能は劣るが,パ
イデライン的な処理構成を採用することで、第2の実施
例と同等の値まで所要時開を短縮することができる。
ところで,実施例1と実施fl.’ 3t 4の違いは
主に90度回転器の構成にある。実施例1の回転器は、
90度回転を高速に実行する点では優れているが,回転
エレメント間の結線が不規則であり規模の大きなものを
作るのは比較的難しい。一方.実施例2,3の90度回
転用の2次元シフトユニットは構造が規則的であゆ作る
のは比較的容易である。実施例4はこの回転性訃の向上
のために90度回転器の数な増やしたものといえる。
このように各実施例はそれぞれ特徴があるので2実際に
本発明を利甲する場合には,性能要求.設計条件?勘案
し,最適な構成を選択する必要がある。
[発明の効!] 以上説明したように、本発明はRAMユニット配列のア
クセスデータ数(データの語長が1ビットの場合にはア
クセスデータ@)8−大きくしても、小形でかつ比較的
高速な90度回転機構を構成できる。従って、本発明は
2次元データ処理装置(例えば画像処理装W)の全体の
性能の向上のためにRAMユニット配列からのアクセス
データ数(アクセス幅)ケ大きくしようとする際のlJ
・形化・高速化の技術として極めて有効である。
【図面の簡単な説明】
第1図は本発明の第1の実施例のブロック構成図、 第2図は従来のピットデレーン用90度U転機構のブロ
ック構成図、 第3Lシ:は従来回転機構による90度回転の手順な示
す詐明図, 第4図は本発明に係る90度回転器の一例を示すブロッ
ク構成図, 第5図は本発明に係るスイッチングネットワークの一例
を示ナブロック構成図, 第6図は本発明に係るRAMユニット配夕11に格納さ
れている回転対象の2次元配列データのーfl1を示′
″F説明図, 第7図は第6図の2次元配列データをねじることによっ
て生成した2次元配列データの訣明図、第8図.第10
図,銅11図の(a)はそれぞれ本発明に係る90度回
転器に読みだした回転対象のサブ2次元配列データの一
例を示+設明図,第8図,第10図,第11図の[bl
けそれぞれ同図(a)の90度回転後のサブ2次元配列
データを示す説明図, 第9図は本発明に係る回転後のサブ2次元配列デー汐を
111次RAMユニット配列に格ゼ、していく様子な示
忙戚明図、 第1 2 [’Z+は本発明の第2の実施例のブロック
構成図, 第13図:(at , (b) , (clはそれぞれ
本発明に係るシフトし/ノスタのブロック伊成図、 第14図は本発明に係る2次元シフトエレメントの一例
を示すブロック構成図, 第15は本発明K係るRAMユニット配列のA〜A+2
番地を順次シフトレ・ゾスタ配列に読みだした結果のD
−FFの配列の内容を示子説明図、第16図bl Vi
本発明に係る列方向にシフトのかかったD−FFの配列
の格納データを示す説明図,第16図(blぱ本発明に
係る2次元シフトユニットによる紙面の手前から奥に向
かうシフトにより得た正規のサブ2次元配列データの形
式の格納データを示す説明図, 第17図は本発明に係るサブ2次元配列データを各アド
レスごとに格納して得たRAMユニット配トレ・ノスタ
に読み出した結果のD−FFの配列の内容を示す説明図
、 第20図は第19図のシフトレノスタの内容を2次元シ
フトユニットのD− FFの配列に順次読みだした結果
な・示一t説明図, 第21曖は本発明のr3の実旅例のブロック機成図, 第22図fal , fbl , !clは第21図の
2次元シフトユニットのブロック楕成図、 第23図は第22図の2次元シフトエレメントのブロッ
ク構成図, 第24図は第6図のRAMユニット配列内の2次元配列
データのA−A+2番地な順次2次元シフトユニットの
D−FFの配列に読みだした結果を示す説明図, 第25図は第24図の配列データを2次元シフトユニッ
トの機能により90度回転して得たD−FFの配列の内
容?示す訣明図. 第26図は第25図の配列データをスイッチングネット
ワークによってねじって得たD−FFの配列の内容な示
ナ説明図、 第27図は第26図のD−FFの配列の内容をRAMユ
ニソト配列のC − C + 2番地に格納した結果を
示す訣明図, 第28図は第27区のC − C +2番地と巨]様に
して得たc+3〜C+8番地までt合わせたRAMユニ
ット配列内の2次元配列データを示す説明図,第29図
は第28図のC+6,C+3,C番地を順次,2次元シ
フトユニットのD−FFに読みだした結果を示す訣明図
, 第30図は本発明の第2の実施例のブロック構成図であ
る。 1.1′・・・90度回転器、2・・・RAMユニット
、3・・・制a部,4・・・パス.5b,5c・・・ア
ドレス修飾器,6.6’,99・・・アドレス信号入力
端子.7・・・アドレス修飾制御入力端子、7′・・・
シフトレジスタ制ケ入力端子, 8 . 8’, 8 
lj , 8 B’, 8 8’・・・パス、Jlll
l・・・回転エレメント%10′・・・2次元シフトエ
レメント、11.11’.53,54.55・・・マス
タスレーブD−FF.12・・トライステートパノファ
、l 3 , 1 3’, 1 3“,51 ,52,
70 .7172・・・セレクタ,ノ5・・・上方向の
入出力端子,l6・・・右方向の入出力端子,17・・
・下方向の入出力端子、J8・・・左方向の入出力端子
,20〜28.90〜98・・・RAMユニノト,30
・・・スイッチングネットワーク、3ノ・・・シフタ.
32・・・データ入出力端子、40〜48・・・シフト
レジスタ、56,76.77・・・データ入力端子.5
7,75.78・・・データ出力端子、60〜68・・
・パス8に対する2次元シフトユニットの入出力端子、
80・・・2次元シフトユニット内の列ユニット. 7
 00 , 100’,100”・・・2次元シフトユ
ニット,110〜ノ18,I2θ〜1:’11,13σ
〜138・・・2次元シフトエレメント,2θO・・・
誠ユニット配列。

Claims (4)

    【特許請求の範囲】
  1. (1)全体で同一のアドレスをアクセスする手段と行ご
    とに互いに異なるアドレスをアクセスする手段とを兼備
    する行列状に配列した記憶ユニットと、2次元配列デー
    タを行単位に置換する手段と、2次元配列データを90
    度の奇数倍回転する手段とを合わせ持つことを特徴とす
    る2次元配列データ回転機構。
  2. (2)請求項1記載の2次元配列データ回転機構におい
    て、全体で同一のアドレスをアクセスする手段と行ごと
    に互いに異なるアドレスをアクセスする手段とを兼備す
    る行列状に配列した記憶ユニットを、ランダムアクセス
    型のメモリユニットの2次元配列とそれに供給するアド
    レスを必要に応じて行単位で修飾する手段とで構成した
    ことを特徴とする2次元配列データ回転機構。
  3. (3)請求項1記載の2次元配列データ回転機構におい
    て、全体で同一のアドレスをアクセスする手段と行ごと
    に互いに異なるアドレスをアクセスする手段とを兼備す
    る行列状に配列した記憶ユニットを、入力の取り込み口
    あるいは出力の引き出し口を行単位に変えられるように
    したローテート可能なシフトレジスタの2次元配列で構
    成したことを特徴とする2次元配列データ回転機構。
  4. (4)請求項1記載の2次元配列データ回転機構におい
    て、記憶ユニットの行列状の配列の各行ごとに2次元配
    列データを90度の奇数倍回転する手段を有することを
    特徴とする2次元配列データ回転機構。
JP2009556A 1990-01-19 1990-01-19 2次元配列データ回転機構 Pending JPH03214269A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009556A JPH03214269A (ja) 1990-01-19 1990-01-19 2次元配列データ回転機構

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009556A JPH03214269A (ja) 1990-01-19 1990-01-19 2次元配列データ回転機構

Publications (1)

Publication Number Publication Date
JPH03214269A true JPH03214269A (ja) 1991-09-19

Family

ID=11723557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009556A Pending JPH03214269A (ja) 1990-01-19 1990-01-19 2次元配列データ回転機構

Country Status (1)

Country Link
JP (1) JPH03214269A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006523340A (ja) * 2003-03-14 2006-10-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 2次元データメモリ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006523340A (ja) * 2003-03-14 2006-10-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 2次元データメモリ

Similar Documents

Publication Publication Date Title
US10818325B2 (en) Data processing method and data processing system for scalable multi-port memory
CN102460503B (zh) 显示源图像的变形版本的设备和方法
US10754584B2 (en) Data processing method and system for 2R1W memory
US20190332313A1 (en) Data buffer processing method and data buffer processing system for 4r4w fully-shared packet
JPH0323917B2 (ja)
JPS6126712B2 (ja)
WO1988008566A1 (en) Method and apparatus for simulating m-dimension connection networks in an n-dimension network where m is less than n
WO2025026330A1 (zh) 数据缓存方法、装置及电子设备
TW202034340A (zh) 記憶體裝置以及用於操作記憶體裝置的方法
US20240037433A1 (en) Method and device for constructing quantum circuit of qram architecture, and method and device for parsing quantum address data
JP3074229B2 (ja) 画像回転回路
CN108053852B (zh) 一种基于交叉点阵列的阻变存储器的写入方法
JPH03214269A (ja) 2次元配列データ回転機構
JPS61186991A (ja) メモリシステム
JP2020160828A (ja) 2次元画像をアフィン変換するための画像データ処理装置
JP3151788B2 (ja) 矩形原画像の回転方法
EP4254275A1 (en) Data reading method and apparatus, storage medium and electronic apparatus
JPS6037930B2 (ja) 情報記憶装置
CN101310237B (zh) 查表乘法器
JP7619139B2 (ja) メモリアクセス制御装置
US11734608B2 (en) Address interleaving for machine learning
JPH05204744A (ja) 2次元配列データアクセス装置
JPH061449B2 (ja) 画像編集用イメ−ジメモリ
CN107577625A (zh) 数据处理芯片和系统、数据存储转发处理方法
JP3185278B2 (ja) 直交メモリ