JPS61223939A - Arithmetic and logical unit - Google Patents

Arithmetic and logical unit

Info

Publication number
JPS61223939A
JPS61223939A JP6378385A JP6378385A JPS61223939A JP S61223939 A JPS61223939 A JP S61223939A JP 6378385 A JP6378385 A JP 6378385A JP 6378385 A JP6378385 A JP 6378385A JP S61223939 A JPS61223939 A JP S61223939A
Authority
JP
Japan
Prior art keywords
instruction
data
reverse
memory
bit
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
JP6378385A
Other languages
Japanese (ja)
Inventor
Toshio Sugino
杉野 敏夫
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP6378385A priority Critical patent/JPS61223939A/en
Publication of JPS61223939A publication Critical patent/JPS61223939A/en
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE:To execute a data processing at a high speed by generating newly an instruction for reversing the sequence of a bit train. CONSTITUTION:An instruction of a bit train reverse sequence instruction which has been generated newly is formed by an OP code 20, an operand part 21 for indicating an address in a memory 12 in which a data which is to be brought to reverse sequence has been stored, and an operand 22 for showing the number of words of a data which is to be brought to reverse sequence. In this state, when the execution of a program advances, and it is detected by an instruction decoder 6 to be the bit train reverse sequency instruction, it is brought to an execution processing by one instruction by utilizing said instruction code.

Description

【発明の詳細な説明】 LM業上の利用分野」 本発明は命令を解読、実行するデータ処理のための論理
演算装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION Field of Application in LM Business The present invention relates to a logical arithmetic device for data processing that decodes and executes instructions.

L開示の概要」 本明細書及び図面は論理演算装置において、データを構
成するビットの位置を逆順にする命令を解読、実行する
裏により、高速のデータ処理を行う技術を開示する。
Summary of the Disclosure This specification and the drawings disclose a technique for performing high-speed data processing by decoding and executing an instruction to reverse the order of the bits forming data in a logical arithmetic unit.

L従来の技術」 データ処理システ、ムを構成する論理演算装置がデータ
の加工処理を行う過程で、データを構成するビットを逆
順にする必要性がある場合が多い。
2. Description of the Related Art In the process of processing data by a logical arithmetic unit forming a data processing system, it is often necessary to reverse the order of the bits forming the data.

しかし、従来の論理演算装置ではビット列を逆順にする
命令を持たないため、ビット列を逆順にする際には、1
ビツトごと順次取り出し逆順に並べる処理を行わなけれ
ばならず、従って処理速度が遅いという欠点があった。
However, conventional logical arithmetic units do not have an instruction to reverse the bit string, so when reversing the bit string, 1
It is necessary to take out each bit one by one and arrange them in reverse order, which has the disadvantage of slow processing speed.

又、複数命令を繰り返してプログラムを作成せねばなら
ぬというプログラム作成上の問題もあった。
Furthermore, there is a problem in creating a program that a program must be created by repeating a plurality of instructions.

E発明が解決しようとする問題点」 本発明は上述した従来技術の欠点に鑑みなされたもので
、単一命令によりデータを構成するビット位置を逆順に
する事のできる論理演算装置を提供する。
E. Problems to be Solved by the Invention The present invention has been made in view of the above-mentioned drawbacks of the prior art, and provides a logic arithmetic device that can reverse the order of bit positions constituting data by a single instruction.

L問題点を解決するための手段J 上記課題を達成するための本発明に係る実施例の基本構
成を第1図に示す、第1図において、論理演X装置10
0は記憶装置101と接続されており、論理演算装!1
100は命令解読部102とビット列逆順処理部103
とを有す。
Means for solving the problem
0 is connected to the storage device 101 and is a logical operation unit! 1
100 is an instruction decoding unit 102 and a bit string reverse order processing unit 103
It has

1作用」 上記構成において、命令解読部102は記憶装置101
より命令を読み出し解読する。読み出した命令がビット
逆順にする命令であれば、ビット列逆順処理部103は
記憶装置101からデータを読み出して、読み出したデ
ータを構成する各ビットを逆順にするというものである
1 action” In the above configuration, the instruction decoding unit 102
Read and decipher the instructions. If the read instruction is an instruction to reverse bit order, the bit string reverse order processing unit 103 reads data from the storage device 101 and reverses each bit making up the read data.

[実施例] 第2図は第1図の実施例をより具体化したもので、論理
演算装置100の機能ブロック、記憶装置101の構成
が示されている0図中、lは汎用演算レジスタ(以下、
GR)、2は算術論理演算器(以下、ALU ) 、 
3は後述の制御記憶15に記憶され第7図(a)、(b
)の如き制御手順のマイクロプログラム制御を行う制御
回路、4はプログラムカウンタ(以下、pc) 、 s
は命令レジスタ(以下、IR) 、6はIR5の解析を
行う命令デコーダ(以下、10) 、 7はメモリアド
レスレジスタ(以下、MAR) 、  8はメモリデー
タレジスタ(以”下、にIR)、9はビット列逆順回路
、lOは内部バス、11はメモリ制御回路(以下、MC
) 、  12はメモリ(以下、MEMORY)である
[Embodiment] FIG. 2 is a more specific embodiment of the embodiment shown in FIG. below,
GR), 2 is an arithmetic logic unit (hereinafter referred to as ALU),
3 is stored in the control memory 15, which will be described later, and shown in FIGS.
); 4 is a program counter (hereinafter referred to as PC); s;
is an instruction register (hereinafter referred to as IR), 6 is an instruction decoder (hereinafter referred to as 10) that analyzes IR5, 7 is a memory address register (hereinafter referred to as MAR), 8 is a memory data register (hereinafter referred to as IR), 9 is a bit string reverse order circuit, lO is an internal bus, and 11 is a memory control circuit (hereinafter referred to as MC).
), 12 is a memory (hereinafter referred to as MEMORY).

第3図は制御回路3の詳細図である0本実施例の制御回
路3はマイクロプログラム制御を用いており、13はマ
イクロプロセサ(以下、ルーCPυ)、15はマイクロ
プログラムを格納しておく制御記憶(以下、C9)、1
4は論理演算装置100内の様々の構成要素との間で制
御情報を授受する制御バスインターフェースである。
FIG. 3 is a detailed diagram of the control circuit 3. The control circuit 3 of this embodiment uses microprogram control, and 13 is a microprocessor (hereinafter referred to as CPυ), and 15 is a control for storing the microprogram. Memory (hereinafter referred to as C9), 1
Reference numeral 4 denotes a control bus interface for exchanging control information with various components within the logical arithmetic unit 100.

第4図はビット列を逆順にする命令の一例に係るフォー
マット図である。20は命令の種類を表わす命令コード
(以下、0P−CODり、21は逆順にされるデータが
格納されているMENORYI Z内の番地を指すオペ
ランド(以下、A−ADDRESS ) 、 22は逆
順にすべきデータの語数を表すオペランド(以下1語数
〕である0本実施例では説明をwllにするため、1語
は8ビツトで構成されるているものとする。
FIG. 4 is a format diagram of an example of an instruction for reversing a bit string. 20 is an instruction code (hereinafter referred to as 0P-COD) representing the type of instruction; 21 is an operand (hereinafter referred to as A-ADDRESS) indicating the address in MENORYZ where data to be reversed is stored; and 22 is an instruction code to be reversed. The operand (hereinafter referred to as 1 word number) representing the number of words of exponent data is 0. In this embodiment, in order to simplify the explanation, it is assumed that one word is composed of 8 bits.

第5図は8とットデータが本実施例によりビットを逆順
にされる様子を示している0図中、b7〜boは信号位
置を、V7〜VOは2進のデータ値を表す。
FIG. 5 shows how the bits of the 8-bit data are reversed according to this embodiment. In the figure, b7 to bo represent signal positions, and V7 to VO represent binary data values.

146図はビット列逆順回路9と旧R8との関係を表し
ている0図中、35はマルチプレクサで、そのデータは
MEMORYI 2から読み出されたデータであるNR
7〜MRo 、及びアキュムレータ31の出力であるA
CCフ〜ACG oである。マルチプレクサ35のセレ
クト入力は−メモリリード°′及びACC+NIR″で
ある。30も8ビツトのマルチプレクサで、アキュムレ
ータ31への入力をセレクトする、その入力の1組はb
 o ” bフで、他の組の入力信号は当該論理演算装
置100内で使用される色々のデータ信号であり、あえ
てここでは図示しない、旧R8の山刃りフ〜boがマル
チプレクサ30の入力端子では逆順となっている事に注
意すべきである。信号REV33がマルチプレクサ30
に入力すると、マルチプレクサ30は入力の組b o 
” b 7をセレクトして、アキュムレータ31へ入力
する。アキュムレータ31は信号″NIR→Ace ”
 34により、マルチプレクサ30の出力をラッチする
Figure 146 shows the relationship between the bit string reverse order circuit 9 and the old R8.
7 to MRo, and A which is the output of the accumulator 31
CC Fu~ACG o. The select inputs of multiplexer 35 are -memory read °' and ACC + NIR''. 30 is also an 8-bit multiplexer, and one set of its inputs selects the input to accumulator 31.
The other sets of input signals are various data signals used within the logical operation device 100, and the old R8's crest f~bo, which is not shown here, is the input to the multiplexer 30. It should be noted that the terminals are in reverse order.The signal REV33 is sent to the multiplexer 30.
, the multiplexer 30 selects the set of inputs b o
"b7" is selected and inputted to the accumulator 31.The accumulator 31 receives the signal "NIR→Ace".
34 latches the output of multiplexer 30.

こうしてMEMORYI 2から読み出されたデータは
にIR8を介してアキュムレータ31に逆順にストアさ
れる。逆順にされたデータはMIR8を介して再びME
MORYI 2に格納されるか、内部バスlOを介して
当該論理演算装置100内で使われる。
The data thus read from MEMORY I2 is stored in the accumulator 31 in reverse order via IR8. The reversed data is sent to ME again via MIR8.
It is stored in MORYI 2 or used within the logic operation unit 100 via the internal bus IO.

尚、図中ツメ% u IJ −F ”ACC−+1ll
IR”、”MIR→AGO” 、  ”REV ’”な
る信号は制御回路3内で作られるマイクロオペレータで
ある。
In addition, the tabs in the figure % u IJ -F ”ACC-+1ll
The signals ``IR'', ``MIR→AGO'', and ``REV''' are microoperators generated within the control circuit 3.

次に、第7図(a)、(b)のフローチャートに基いて
、実施例の基本動作を説明する。かかる制御手順は制御
回路3内のC915に記憶されているプログラムである
。以下に説明する命令の一例は第3図のフォーマットの
命令に従っており、MEMORYl2から読み出したデ
ータをビット逆順にして、再びMEMORYI 2に格
納するというものである。
Next, the basic operation of the embodiment will be explained based on the flowcharts of FIGS. 7(a) and 7(b). This control procedure is a program stored in the C915 in the control circuit 3. An example of the instruction described below follows the instruction format shown in FIG. 3, and is to reverse the bit order of data read from MEMORY12 and store it in MEMORY12 again.

第7図(a)はFETC)I CYCLEのフローチャ
ートである。 887図(a)は論理演算装置100の
FETCHCYCLEのフローチャートで、先ずステッ
プ510、S12にて、PO2で指定されたMEMOR
Y 12のデータを読み出す、ステップS14で、読み
出したデータをMIR8を介してIR5にロードする。
FIG. 7(a) is a flowchart of FETC) I CYCLE. 887 (a) is a flowchart of FETCHCYCLE of the logical operation device 100. First, in step 510, S12, the MEMOR specified by PO2 is
In step S14, the data of Y12 is read, and the read data is loaded into the IR5 via the MIR8.

その命令がビット列逆順命令以外の命令であるならば(
ステップ516でNO)、ステップS22へ進み、その
命令処理(EXECU’rE CYCLE ) ヲ行い
、ステップ324でPO2を適当な偏にセットして、ス
テップSIOへ戻る。
If the instruction is an instruction other than the bit string reverse order instruction (
If NO in step 516), the process proceeds to step S22, where the command processing (EXECU'rE CYCLE) is performed, and in step 324, PO2 is set to an appropriate bias, and the process returns to step SIO.

ステップS16での判断がYESならば、ステップS1
8に進み、ビット列逆順の処理を行うものである。その
処理を終了してステップ320でPO2を1つ進めて、
再び他の命令のFETCHCYCLEを開始する。
If the determination in step S16 is YES, step S1
8, the bit string is processed in reverse order. Finish the process and advance PO2 by one in step 320.
Start FETCHCYCLE of another instruction again.

第7 図(b ) (tEXEcUTE CYCLE 
(F) フo−チャートである。ステップS30でMA
R7にA−ADDRESS21の内容をセットする0次
にステップS32でメモリリードすると共に、−メモリ
リード″なる信号をマルチプレクサ35に送出し、にI
R8にデータをラッチする。
Figure 7 (b) (tEXEcUTE CYCLE
(F) It is an o-chart. MA in step S30
Set the contents of A-ADDRESS21 in R7.0 Next, in step S32, the memory is read, and a signal "-memory read" is sent to the multiplexer 35, and the I
Latch data into R8.

ステップS34で信号”REV ” 、  ”MIR+
ACC°′をビット列道順回路9へ送出して、アキュム
レータ31に道順データをラッチする。ステップ336
で再びMAR7にA−ADDRESS 21の内容をセ
ットして、ステップ538で信号”ACC→MIR”を
送出して、MIR8にデータをラッチして、ステップ5
40でメモリライトを行う0次に、ステップS42で語
数カウンタ32を1カウントダウンして、ステップS4
4でA−ADDRESS 21を1番地カウントアツプ
する。上記のステップ330〜S40の動作をステップ
346で語数カウンタ32が′″θ′′になるまで繰り
返す、こうして、1命令でMEMORY、12内の指定
されたデータがビット逆順にされた事になる。
In step S34, the signals "REV" and "MIR+"
ACC°' is sent to the bit string route circuit 9, and the route data is latched into the accumulator 31. Step 336
Then, set the contents of A-ADDRESS 21 in MAR7 again, send the signal "ACC→MIR" in step 538, latch the data in MIR8, and proceed to step 5.
Then, in step S42, the word counter 32 is counted down by 1, and in step S4
4, A-ADDRESS 21 is counted up to address 1. The operations of steps 330 to S40 described above are repeated until the word counter 32 reaches ``''θ'' in step 346. In this way, the bits of the specified data in MEMORY 12 are reversed with one instruction.

上記実施例では、MEMORYl 2から読み出したデ
ータをビット逆順にしてMEMORYI 2へ再格納す
る命令を一例としてあげて説明したが、他の命令として
GRI内のデータを逆順にして再びGRIに戻す等の命
令も考えられる。
In the above embodiment, an instruction for re-storing the data read from MEMORYl 2 in reverse bit order into MEMORYl 2 was given as an example, but other instructions include reversing the data in GRI and returning it to GRI again. Commands can also be considered.

以上説明したように、ビット列を逆順にするという命令
を加えたことにより、画像処理等、大量のビット列を扱
う際に高速処理が可能になる。
As explained above, by adding an instruction to reverse the bit string, high-speed processing becomes possible when handling a large amount of bit strings, such as in image processing.

(発明の効果」 以上説明したように本発明によれば、単一の命令でデー
タの構成ビットの位置を逆順にするので、高速のデータ
処理が可能となる。
(Effects of the Invention) As described above, according to the present invention, the positions of constituent bits of data are reversed with a single instruction, so high-speed data processing is possible.

【図面の簡単な説明】[Brief explanation of the drawing]

!!81図は実施例の基本構成図、 882図は実施例の詳細構成図、 第3図は制御回路の構成図、 第4図は一例に係る命令のフォーマット図。 第5図はビット列道順の動作説明図。 第6図はビット列逆順回路の詳細図、 1117図(a)、(b)は実施例の制御手順のフロー
チャートである。 特許出願人    キャノン株式会社 鳴−1,−− 第1図 第7図 (0)
! ! FIG. 81 is a basic configuration diagram of the embodiment, FIG. 882 is a detailed configuration diagram of the embodiment, FIG. 3 is a configuration diagram of a control circuit, and FIG. 4 is an instruction format diagram according to an example. FIG. 5 is an explanatory diagram of the operation of the bit string route. FIG. 6 is a detailed diagram of the bit string reverse order circuit, and FIGS. 1117(a) and (b) are flowcharts of the control procedure of the embodiment. Patent applicant Canon Co., Ltd. Mei-1, -- Figure 1 Figure 7 (0)

Claims (1)

【特許請求の範囲】[Claims] 命令解読部と命令実行部とを有してデータ処理する論理
演算装置において、前記命令実行部は、前記命令解読部
の指示に基ずいてデータを構成するビットの位置を逆順
にするビット逆順処理部を有する事を特徴とする論理演
算装置。
In a logical arithmetic device that processes data and has an instruction decoding section and an instruction execution section, the instruction execution section performs bit reversal processing for reversing the positions of bits constituting data based on instructions from the instruction decoding section. A logic operation device characterized by having a section.
JP6378385A 1985-03-29 1985-03-29 Arithmetic and logical unit Pending JPS61223939A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6378385A JPS61223939A (en) 1985-03-29 1985-03-29 Arithmetic and logical unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6378385A JPS61223939A (en) 1985-03-29 1985-03-29 Arithmetic and logical unit

Publications (1)

Publication Number Publication Date
JPS61223939A true JPS61223939A (en) 1986-10-04

Family

ID=13239319

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6378385A Pending JPS61223939A (en) 1985-03-29 1985-03-29 Arithmetic and logical unit

Country Status (1)

Country Link
JP (1) JPS61223939A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6488826A (en) * 1987-09-30 1989-04-03 Takeshi Sakamura Data processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6488826A (en) * 1987-09-30 1989-04-03 Takeshi Sakamura Data processor

Similar Documents

Publication Publication Date Title
TWI489779B (en) Boolean logic in a state machine lattice
TW201342110A (en) Counter operation in a state machine lattice
JPH0414385B2 (en)
US5991872A (en) Processor
KR920003180B1 (en) Data processor with bypass circuit
CA1119307A (en) Microcomputer having separate bit and word accumulators and separate bit and word instruction sets
JPS61223939A (en) Arithmetic and logical unit
KR910001708B1 (en) Central processing unit
US5828859A (en) Method and apparatus for setting the status mode of a central processing unit
US20070220074A1 (en) Sharing of a logic operator having a work register
JPS58178464A (en) Parallel arithmetic processing unit
RU2066067C1 (en) Central processor for multiple-processor computer system
KR920003182B1 (en) Microprocessor
JPS58107977A (en) Accessing system for storage device
JPS60134957A (en) Parallel operation processing device
JPS60214043A (en) Pipeline control circuit
JPS58205253A (en) Arithmetic device
JPS61223938A (en) Arithmetic and logical unit
RU2049347C1 (en) Control device
JPS635433A (en) Branch control system
RU2046396C1 (en) Control device
JPS6253857B2 (en)
JPS6218937B2 (en)
JPS6155731A (en) Processor provided with condition code discriminating function
JPS59160240A (en) Data processing device