JPS60110042A - Address generating circuit of program memory - Google Patents
Address generating circuit of program memoryInfo
- Publication number
- JPS60110042A JPS60110042A JP21900983A JP21900983A JPS60110042A JP S60110042 A JPS60110042 A JP S60110042A JP 21900983 A JP21900983 A JP 21900983A JP 21900983 A JP21900983 A JP 21900983A JP S60110042 A JPS60110042 A JP S60110042A
- Authority
- JP
- Japan
- Prior art keywords
- address
- program memory
- output
- supplied
- sequencer
- 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
Links
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
Description
【発明の詳細な説明】
「産業上の利用分野」
この発明は、例えばマイクロプログラム制御部に含捷れ
、次に実行すべきマイクロ命令のアドレスを決定するマ
イクロゾログラムシーケンサに適用されるプログラムメ
モリのアドレス発生回路に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a program memory that is included in a microprogram control unit and applied to a microzologram sequencer that determines the address of a microinstruction to be executed next. The present invention relates to an address generation circuit.
「背景技術とその問題点」
マイクロゾログラムシーケンサ(以下、シーケンサと称
する)1は、第1図に示すように、プログラムメモリ2
に対するアドレスを発生する。ゾログラムメモリ2から
読出されたマイクロ命令は、レジスタ3に取シ込まれる
。シーケンサ1には、アドレスバス4を介して外部から
のアドレスが供給される。この外部からのアドレスは、
シーケンサ1がアクセスするプログラムメモリ2が発生
するジャンプアドルスPR,ネクストアドレスコントロ
ール信号NACの他に、上位のゾログラムレベルからの
インストラクションを解比して発生したアドレスMAP
、インターラゾトにより与えられるベクトルアドレス
VE 等がある。更に、セレクタ5にコンディション信
号が供給され、レジスタ3からのコンディションセレク
ト信号によりセレクタ5が制御される。コンディション
信号は、アキュムレータの内容などであって、ジャンプ
或いはザブルーチンに行くかどうかを決定するために用
いられる。"Background technology and its problems" A microzologram sequencer (hereinafter referred to as sequencer) 1 has a program memory 2 as shown in FIG.
Generates an address for. The microinstruction read from the zologram memory 2 is loaded into the register 3. Sequencer 1 is supplied with an address from the outside via address bus 4 . This external address is
In addition to the jump address PR and next address control signal NAC generated by the program memory 2 accessed by the sequencer 1, there is also an address MAP generated by comparing instructions from the upper zologram level.
, the vector address VE given by Interlazoto, etc. Further, a condition signal is supplied to the selector 5, and the selector 5 is controlled by the condition select signal from the register 3. The condition signal is the contents of an accumulator, etc., and is used to determine whether to jump or go to a subroutine.
」二連のシーケンサ1は、第2図において、破線で囲ん
だ構成を有している。シーケンサ1から出力されるアド
レスは、セレクタ6から発生する。'' The double sequencer 1 has a configuration surrounded by a broken line in FIG. 2. The address output from the sequencer 1 is generated from the selector 6.
セレクタ6には、I、S、’D、Hの入力が供給されて
いる。セレクタ6の出力に加算器7により」−1がなさ
れたアドレスがレジスタ8に供給され、このレジスタ8
の出力が入力■とされる。この人力■をセレクタ6が選
択していれば、シーケンサ1は、いわゆるカウンタの動
作をし、クロックごとに1づつアドレスが歩進する。加
算器7及びレジスタ8からなるインクリメンタからのア
ドレスがスタック9に一時格納され、スタック9の出力
がセレクタ6の入力Sとされる。The selector 6 is supplied with inputs I, S, 'D, and H. The address obtained by adding "-1" to the output of the selector 6 by the adder 7 is supplied to the register 8, and this register 8
The output of is considered as input ■. If the selector 6 selects this manual input (2), the sequencer 1 operates as a so-called counter, and the address increments by 1 every clock. An address from an incrementer consisting of an adder 7 and a register 8 is temporarily stored in a stack 9, and the output of the stack 9 is used as the input S of the selector 6.
スタック9は、LIFO(La5t −in 、 fi
rst”out)と呼ばれ、順次、別のアドレスを記憶
し、一番最後に入れた(ブツシュ)ものを一番最初に取
り出す(ポツプ)するものである。このスタック9は、
マイクロプログラムのサブルーチンを何重にもコールす
るために必要である。つまり、レジスタ8からの現アド
レスに+1されたアドレスがスタック9に格納されてお
り、リターン命令がくると、スタック9の出力が選択さ
れる。Stack 9 is LIFO(La5t-in, fi
This stack 9 is called rst"out" and stores different addresses in sequence, and the one that was put in last is the first one to be taken out.This stack 9 is
It is necessary to call the subroutine of the microprogram multiple times. That is, an address obtained by adding 1 to the current address from register 8 is stored in stack 9, and when a return instruction comes, the output of stack 9 is selected.
セレクタ6のD入力は、外部のアドレスバス4から与え
られるもので、アドレスのジャンプに相当するものであ
る。ゾログラムメモリ2が発生するジャンプアドレスP
R,上位のプログラムレベルからのインストラクション
を解読することで得られ、複数のマイクロプログラムを
選択するための初期アドレスとしてのジャンプアドレス
MAP 、インターラゾトにより与えられるベクトルア
ドレスVECが夫々I・ライスチー1・からなるバッフ
ァ10゜11.12により選択的にアドレスバス4に供
給される。外部か−らのアドレスは、必ずしも使うタイ
ミングで力えられるとは限らないので、そのため、セレ
クタ6の入力と接続されるレジスタ13が設げられ、そ
のようなアドレスは、事前にレジスタ13に受けておい
て、必要なタイミングで使用される。The D input of the selector 6 is given from the external address bus 4 and corresponds to an address jump. Jump address P where zologram memory 2 occurs
R, a jump address MAP obtained by decoding instructions from a higher program level and serving as an initial address for selecting multiple microprograms, and a vector address VEC given by Interazoto, each consisting of I and Raichi1. Buffers 10, 11, and 12 selectively supply the address bus 4. Addresses from the outside cannot necessarily be input at the timing of use, so a register 13 is provided that is connected to the input of the selector 6, and such an address can be input to the register 13 in advance. and use it when needed.
バッファ10,11.12は、デコーダ14の出力によ
って制御される。セレクタ6に対するセレクト信号、ス
タック9のコントロール信号、デコーダ140入力信号
は、コントローラ15により形成される。コントローラ
15は、プログラムメモリ2が発生するネクストアドレ
スコントロール信号NACに従って、各部が所定の動作
をするように、このネクストアドレスコントロ−ルNA
Cを解読して各部にコントロール信号を与える。Buffers 10, 11.12 are controlled by the output of decoder 14. A select signal for the selector 6, a control signal for the stack 9, and an input signal for the decoder 140 are generated by the controller 15. The controller 15 controls the next address control signal NAC generated by the program memory 2 so that each part operates in a predetermined manner.
C is decoded and control signals are given to each part.
このネクストアドレスコントロール信号NACは、ジャ
ンプ、ジャンプザブルーチン、インクリメントなどの意
味の命令をコード化したものである。This next address control signal NAC is coded with instructions such as jump, jump subroutine, and increment.
また、コントローラ15には、外部のセレクタ5(第1
図参照)からのフンデインヨン信号が供給される。この
コンディション信号は、条件つきジャンプ、条件つきジ
ャンプサブルーチン、条件つp IJターンなどをする
ためのもので、条件をつけよという意味の命令がネクス
トアドレスコントロール
をこの:Jンデイション信号をみて行なうようになされ
る。The controller 15 also includes an external selector 5 (first
(See figure). This condition signal is used to perform conditional jumps, conditional jump subroutines, conditional IJ turns, etc. A command meaning to set a condition is used to control the next address by looking at this condition signal. Ru.
上述の従来のシーケンサ1において、外部から入力され
るアドレスは、次のような手順で実行される。In the conventional sequencer 1 described above, an address input from the outside is executed in the following procedure.
まず、プログラムメモリ2がアクセスされて、外部のア
ドレスを選択する命令(ネクストアドレスコントロール
信号 号NAC )カニコントローラ15に供給され、
フントローラ15により解読される。First, the program memory 2 is accessed, and a command to select an external address (next address control signal NAC) is supplied to the crab controller 15.
It is decoded by the hunt roller 15.
次に、デコーダ14によりデコードされ、例えば、バッ
ファ10が開かれ、外部からのアドレスMΔPがアドレ
スバス4を介してセレクタ6に入力され、セレクタ6に
より選択されて再びプログラムメモリ2に与えられる。Next, it is decoded by the decoder 14, for example, the buffer 10 is opened, and the external address MΔP is input to the selector 6 via the address bus 4, selected by the selector 6, and given to the program memory 2 again.
この動作において、動作速度は、プログラムメ汚り2の
出力側に設けられたレジスタ3から命令が出力され、こ
のレジスタ3に安定した次の命令か読み出されるまでの
時間で決まる。したがって、動作速度は、シーケンサ1
及びプログラムメモリ20両者によって定する。従来の
シーケンサ1は、アドレスの選択がノくツファ10、1
1.12の選択とセレクタ6に、しる選択02段になっ
ており、出力にアドレスが出るまでに時間がかかる欠点
があった。また、ネクストアドレスコントロ−ル
号でなく、コード化されているので解読に時間がかかる
欠点があった。In this operation, the operating speed is determined by the time from when an instruction is output from the register 3 provided on the output side of the programmer 2 to when the next stable instruction is read into the register 3. Therefore, the operating speed of sequencer 1 is
and program memory 20. The conventional sequencer 1 does not allow address selection.
1.12 selection and selector 6 have 02 stages of mark selection, which has the disadvantage that it takes time for the address to appear on the output. Furthermore, since it is not a next address control code but is encoded, it has the disadvantage that it takes time to decipher it.
更に、従来のシーケンサ1は、通常、1チツプのIC
の構成とされるが、アドレスのピッI・数の入力及び出
力が必要となるため, IC の端子数が多く,IC
構成とする時にコストアップの問題が生じた。Furthermore, the conventional sequencer 1 is usually a one-chip IC.
However, since it is necessary to input and output address pins and numbers, the number of IC terminals is large, and the IC
The problem of increased costs arose when constructing the structure.
「発明の目的」
したがって、この発明の目的は、動作が従来より高速化
されたアドレス発生回路を提供することにある。``Object of the Invention'' Therefore, an object of the present invention is to provide an address generation circuit that operates faster than the conventional one.
この発明の他の目的は, IC 回路の構成とする時に
、端子の数を減少させることができるアドレス発生回路
を提供することにある。Another object of the present invention is to provide an address generation circuit that can reduce the number of terminals when configured as an IC circuit.
F−発明の概要」
この発明は、クロックごとに歩進するために、現アドレ
ス値に1を加えるアドレスインクリメンタと、このアド
レスインクリメンタの出力を格納するスタックメモリと
、アドレスインクリメンタ及びスタックメモリの出力と
外部とに共通に接続されるアドレスバスとを備え、外部
のプログラムメモリからのネクストアドレスコントロー
ル信号を受けて、プログラムメモリの次のクロックサイ
クルでのアドレスを決め、アドレスをアドレスバスから
与えるようにしたプログラムメモリのアドレス発生回路
である。F-Summary of the Invention This invention provides an address incrementer that adds 1 to the current address value in order to increment every clock, a stack memory that stores the output of this address incrementer, and an address incrementer and a stack memory. It is equipped with an address bus that is commonly connected to the output of the program memory and the outside, receives a next address control signal from an external program memory, determines the address of the program memory in the next clock cycle, and gives the address from the address bus. This is an address generation circuit for a program memory.
「実施例」
以下、この発明の一実施例について第3図を参照して説
明する。"Embodiment" Hereinafter, an embodiment of the present invention will be described with reference to FIG.
第3図において、破線で囲んで示す21がこの発明が適
用されたシーケンサであり、IC 回路の構成とされて
いる。・このIC の内から外へ通じるアドレスバス2
2が設けられており、アドレス選択は、全てこのアドレ
スバス22のバスソース選択で実現する。シーケンサ2
1内には、加算器23及びレジスタ24からなるインク
リメンタとインクリメンタの出力が供給されるスタック
25とが設り゛られ、インクリメンタの入力がアドレス
バス22と接続されると共に、その出力がバッファ31
を介してアドレスバス22に接続され、スタック25の
出力がバッファ32を介してアドレスバス22に接続さ
れる。In FIG. 3, numeral 21 surrounded by a broken line is a sequencer to which the present invention is applied, and has an IC circuit configuration.・Address bus 2 leading from the inside of this IC to the outside
2 is provided, and all address selection is achieved by selecting the bus source of this address bus 22. Sequencer 2
1 includes an incrementer consisting of an adder 23 and a register 24, and a stack 25 to which the output of the incrementer is supplied.The input of the incrementer is connected to the address bus 22, and the output thereof is connected to the address bus 22. Buffer 31
The output of the stack 25 is connected to the address bus 22 via a buffer 32.
シーケンサ21の外部で、ベクトルアドレスVECがバ
ッファ33を介してアドレスノ(ス22に供給され、ジ
ャンシアドレスMAPがレジスタ28及びバッファ34
を介してアドレスバス22に供給され、ゾログラムメモ
リからのジャンプアドレスPR がバッファ35を介し
てアドレスノぐス22に供給されると共に、レジスタ2
9及び)(ソファ36を介してアドレスバス22に供給
される。シーケンサ21の発生するアドレスは、シーケ
ンサ21の外部でアドレスバス22から取り出されゾロ
グラムメモリに供給される。Outside the sequencer 21, the vector address VEC is supplied to the address node 22 via the buffer 33, and the vector address MAP is supplied to the register 28 and the buffer 34.
The jump address PR from the zologram memory is supplied to the address bus 22 via the buffer 35, and the jump address PR from the register 2 is supplied to the address bus 22 via the buffer 35.
9 and ) (supplied to the address bus 22 via the sofa 36. The addresses generated by the sequencer 21 are taken from the address bus 22 outside the sequencer 21 and supplied to the zologram memory.
シーケンサ21内のコントローラ26には、プログラム
メモリから読出された命令に含まれるネクストアドレス
コントロール
ンヨン化号とが供給され、コントローラ26−によりス
タック25のゾツシュ/ポツゾ動作が制御される。シー
ケンサ21内には、デコーダ21が設けられ、このデコ
ーダ27に、コントローラ26の出力とプログラムメモ
リから読出された命令に含まれるアドレスバスソース選
択信号ABSとコンディション信号とが供給される。デ
コーダ27により、バッファ31 、32 、33 、
34 、35 。A controller 26 in the sequencer 21 is supplied with the next address control code included in the instruction read from the program memory, and the controller 26- controls the stack/pop operation of the stack 25. A decoder 21 is provided in the sequencer 21, and the decoder 27 is supplied with the output of the controller 26, an address bus source selection signal ABS included in the instruction read from the program memory, and a condition signal. The decoder 27 provides buffers 31 , 32 , 33 ,
34, 35.
36を制御するコントロール信号が形成される。A control signal is generated to control 36.
このように、アドレスバスソースの選択は、ネクストア
ドレスコントロールと分けて考え、直接デコードするの
でプログラムメモリのレジスタからの指示は、直ちにデ
コードされ、各バッファを選択するので、高速にfoダ
ラムメモリがアクセスされる。In this way, address bus source selection is considered separately from next address control and is directly decoded, so instructions from program memory registers are immediately decoded and each buffer is selected, so fo Durham memory can be accessed at high speed. be done.
また、シーケンサ21と外部とを結合するためのIC
端子の数は、アドレスバス22のアドレスビット数とコ
ンディション信号、ネタストアドレスコントロール信号
NAC 、アドレスバスソース選択信号ABSの各々の
ピット数との総和になる。Also, an IC for connecting the sequencer 21 and the outside
The number of terminals is the sum of the number of address bits of the address bus 22 and the number of pits of each of the condition signal, netast address control signal NAC, and address bus source selection signal ABS.
「発明の効果」
この発明に依れば、従来のシーケンサ1と異なり、アド
レスの選択がバッファの一段となると共に、アドレスバ
スソース選択信号を直ちにデコードしているので、従来
のシーケンサ1より高速動作が可能なシーケンサ21を
実現することができる。斗だ、この発明は、アドレス入
力及びアドレス出力の両者のIC端子を必要とせず、I
Cの端子−数を少なくできると共に、ICに内蔵される
回路も従来の7−ケンサより簡単となる利点がある。"Effects of the Invention" According to the present invention, unlike the conventional sequencer 1, the address selection is performed in one stage of the buffer, and the address bus source selection signal is immediately decoded, so the operation is faster than the conventional sequencer 1. A possible sequencer 21 can be realized. This invention does not require IC terminals for both address input and address output;
This has the advantage that the number of C terminals can be reduced, and the circuit built into the IC is simpler than the conventional 7-controller.
第1図はこの発明を適用することができる従来のマイク
ロプログラム制御部の一例のブロック図、第2図は従来
のシーケンサのブロック図、第3図はこの発明の一実施
例のブロック図である。
21 ・・ /−ケンザ、22・・・・−・・・アドレ
スバス、31.32.33.34.35.36・・・・
・−・・・バッファ。
代理人 杉 浦 正 知FIG. 1 is a block diagram of an example of a conventional microprogram control unit to which the present invention can be applied, FIG. 2 is a block diagram of a conventional sequencer, and FIG. 3 is a block diagram of an embodiment of the present invention. . 21.../-kenza, 22...-address bus, 31.32.33.34.35.36...
・-・・・Buffer. Agent Masato Sugiura
Claims (1)
えるアドレスインクリメンタと、このアドレスインクリ
メンタの出力を格納するスタックメモリと、上記アドレ
スインクリメンタ及び上記スタックメモリの出力と外部
とに共通に接続されるアドレスバスとを備え、外部のプ
ログラムメモリからのネクストアドレスコントロール信
号を受けて、」1記プログラムメモリの次のクロツクザ
イクルでのアドレスを決め、上記アドレスを上記アドレ
スバスから与えることを特徴とするゾログラムメモリの
アドレス発生回路。An address incrementer that adds 1 to the current address value in order to increment every clock, a stack memory that stores the output of this address incrementer, and an output common to the output of the address incrementer and the stack memory and the outside. It is equipped with an address bus to be connected, receives a next address control signal from an external program memory, determines the address in the next clock cycle of the program memory described in 1., and provides the address from the address bus. Characteristic address generation circuit of zologram memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21900983A JPS60110042A (en) | 1983-11-19 | 1983-11-19 | Address generating circuit of program memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21900983A JPS60110042A (en) | 1983-11-19 | 1983-11-19 | Address generating circuit of program memory |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS60110042A true JPS60110042A (en) | 1985-06-15 |
Family
ID=16728826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21900983A Pending JPS60110042A (en) | 1983-11-19 | 1983-11-19 | Address generating circuit of program memory |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60110042A (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS575156A (en) * | 1980-05-07 | 1982-01-11 | Fairchild Camera Instr Co | Interruptible microprogram sequence device |
-
1983
- 1983-11-19 JP JP21900983A patent/JPS60110042A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS575156A (en) * | 1980-05-07 | 1982-01-11 | Fairchild Camera Instr Co | Interruptible microprogram sequence device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4616313A (en) | High speed address calculation circuit for a pipeline-control-system data-processor | |
US4539635A (en) | Pipelined digital processor arranged for conditional operation | |
JPS61122747A (en) | Data processor | |
US4674063A (en) | Information processing apparatus having a sequence control function | |
US4598358A (en) | Pipelined digital signal processor using a common data and control bus | |
KR920007253B1 (en) | Controlling apparatus for micro-program | |
US5390306A (en) | Pipeline processing system and microprocessor using the system | |
US4812970A (en) | Microprogram control system | |
US4641278A (en) | Memory device with a register interchange function | |
JPS59116855A (en) | Control memory mechanism | |
US4831572A (en) | Polynomial vector arithmetic operation control system | |
JPS60110042A (en) | Address generating circuit of program memory | |
US5978925A (en) | System for improving processing efficiency in a pipeline by delaying a clock signal to a program counter and an instruction memory behind a system clock | |
JPH02126321A (en) | Decoder for instruction code | |
US5490277A (en) | Digital computation integrated circuit | |
JP2581080B2 (en) | Microprocessor for debugging | |
KR950006585B1 (en) | Micro program control apparatus and control method thereof | |
JP2601055B2 (en) | Microprogram sequencer | |
JPS6355090B2 (en) | ||
JPH03204028A (en) | Central processing unit | |
JPS6015969B2 (en) | Microinstruction address generation method | |
JPH01253032A (en) | Microprogram control type processor | |
JPS6341091B2 (en) | ||
JPH0810429B2 (en) | Micro program controller | |
JPS6028014B2 (en) | microprocessor |