DE3609056C2 - - Google Patents
Info
- Publication number
- DE3609056C2 DE3609056C2 DE3609056A DE3609056A DE3609056C2 DE 3609056 C2 DE3609056 C2 DE 3609056C2 DE 3609056 A DE3609056 A DE 3609056A DE 3609056 A DE3609056 A DE 3609056A DE 3609056 C2 DE3609056 C2 DE 3609056C2
- Authority
- DE
- Germany
- Prior art keywords
- counter
- carry
- signal
- address
- switching elements
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/321—Program or instruction counter, e.g. incrementing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
Description
Die vorliegende Erfindung betrifft einen Zählerschaltkreis
gemäß dem Oberbegriff des Anspruchs 1.
Derartige mit einer Addier- und/oder Subtraktionsfunktion
versehene Zählerschaltkreise können beispielsweise als Adreßzählerschaltkreis
in Verbindung mit einem Adressiergenerator oder auch in einem
allgemeinen Zähler verwendet werden.
Aufgrund des technologischen Fortschritts auf dem
Gebiet der Hochintegration (LSI) können heutzutage integrierte
Mikroprozessoren mit hoher Arbeitsgeschwindigkeit
hergestellt werden. Derartige Mikroprozessoren
werden dabei auf dem Gebiet der komplexen Datenverarbeitung,
beispielsweise zur Signalverarbeitung benötigt.
Ein derartiger Signalprozessor ist dabei in der Lage,
große Datenmengen zu manipulieren, so wie sie beispielsweise
bei der Verarbeitung von Ton- oder Bilddaten auftreten.
Bei einer derartigen Datenverarbeitung müssen
bestimmte Vorgänge, beispielsweise rasch durchzuführende
Fourier-Transformationen (FFT) oder besondere
Filtervorgänge vorgenommen werden, bei welchen ein
Zugriff zu aufeinanderfolgenden Daten und nicht
aufeinanderfolgenden Daten erforderlich ist. Der Zugriff
zu aufeinanderfolgenden Daten wird dabei mit Hilfe
eines bekannten Programmzählers durchgeführt, bei welchem
der jeweilige Zählwert jeweils um einen Wert "1"
hoch oder herunter gezählt wird. Der Zugriff zu nicht
aufeinanderfolgenden Daten erfordert hingegen das
Vorhandensein komplexer Stromkreise.
Bei der Durchführung eines (FFT) Fourier-Transformationsvorgangs
muß beispielsweise ein Produkt und eine Summe
gebildet werden, was beim Stand der Technik dadurch
erfolgt, indem eine Mehrzahl von Daten innerhalb
eines Speichers, beispielsweise eines RAM-Speichers
eingespeichert wird, worauf jeweils zwei dieser Daten
zu einem vorgegebenen Zeitintervall aus dem Speicher
entnommen und mit Hilfe eines Multiplikators miteinander
multipliziert werden, worauf das auf diese Weise
gebildete Produkt in der Folge integriert bzw. aufaddiert
wird.
Bei einem derartigen Vorgang müssen zwei Arten von
Datenzugriffen vorgenommen werden. In dem einem Fall
ist ein aufeinanderfolgender Datenzugriff notwendig,
indem zwei Daten dem Speicher entnommen werden, welche
an zwei aufeinanderfolgenden Adressierstellen des
Speichers eingespeichert sind. Im zweiten Fall muß jedoch
ein nicht aufeinanderfolgender Datenzugriff vorgenommen
werden, indem zwei Daten von zwei nicht aufeinanderfolgenden
Adressierstellen des Speichers benötigt
werden. Während der erste Vorgang durch Einsatz eines
bereits erwähnten Programmierzählers durchgeführt
wird, erfordert der zweite Vorgang beim Stand der
Technik das Vorsehen eines bestimmten Adressierzählers.
Ein derartiger Adressierzähler muß beispielsweise
eine Adresse erzeugen, welche um einen Faktor
2 n jeweils erhöht oder erniedrigt wird. Aus diesem
Grunde ergibt sich, daß beim Stand der Technik der
Programmzähler nicht selber in der Lage ist, die nicht
aufeinanderfolgenden Adressen zu erzeugen, so daß
jeweils ein Addierer oder Subtrahierer erforderlich
ist, um diese nicht aufeinanderfolgenden Adressen zu
bilden.
Die Erzeugung einer Adresse unter Einsatz eines
zusätzlichen Addierers oder Subtrahierers erhöht jedoch
den Zeitaufwand und ist demzufolge immer dann schlecht
einsetzbar, falls die jeweilige Signalverarbeitung mit
hoher Geschwindigkeit durchgeführt werden muß. Da der
jeweilige Addier- oder Subtrahierkreis unabhängig von
der das jeweilige Produkt und die Summe bildenden
Einheit vorgesehen werden muß, erhöht sich damit die
Anzahl der Bauelemente bei dem jeweiligen Signalprozessor.
Es erweist sich somit schwierig, einen derartigen
Signalprozessor zu schaffen, welcher in Form eines
einzigen Halbleiterplättchens ausgebildet ist.
Der Zugriff zu nicht aufeinanderfolgenden Daten ist
dabei nicht nur bei Adressiervorgängen, sondern auch
bei numerischen Operationen und allgemeinen bzw. speziellen
Digitaldatenverarbeitungsabläufen erforderlich.
Bei den bisher bekannten Zählern konnte dabei die
Arbeitsgeschwindigkeit nicht über einen bestimmten Wert
erhöht werden, welcher durch die Technologie des
Vorsehens eines getrennten Addier- oder Subtrahierkreises
festgelegt war.
Aus US-PS 41 30 868 ist ein Microprozessor bekannt,
der zwei aus Zählschaltkreisen aufgebaute Adressenregister
aufweist, die unabhängig voneinander durch von einer
Steuerschaltung zugeführte Adressenänderungssignale
inkrementell erhöht oder erniedrigt werden können.
Über die Steuerung des Übertrags zwischen den einzelnen
Zählstufen jedes Adressenregisters ist jedoch nichts
ausgesagt, und ein mit der Erfindung vergleichbarer
beschleunigter Zugriff zu nicht aufeinanderfolgenden
Adressen bzw. Daten ist hierbei nicht verwirklicht.
Es ist demzufolge Aufgabe der vorliegenden Erfindung,
die Zählschaltung der eingangs genannten Art dahingehend
weiterzubilden, daß bei Verwendung eines Signalprozessorplättchens
kleiner Abmessungen eine Adressierung von
nicht aufeinanderfolgenden sowie aufeinanderfolgenden
Daten mit hoher Geschwindigkeit durchführbar ist.
Erfindungsgemäß wird dies durch Vorsehen der im
kennzeichnenden Teil des Anspruchs 1 aufgeführten Merkmale
erreicht.
Vorteilhafte Weiterbildungen der Erfindung ergeben sich
anhand der Unteransprüche.
Die erfindungsgemäße Zählschaltung, mit welcher entweder
Daten oder Adressen erzeugt werden können, weist den Vorteil auf, das der Zugriff
zu nicht aufeinanderfolgenden Daten mit sehr hoher Geschwindigkeit
durchgeführt werden kann, ohne daß dabei
ein zusätzlicher Addier- oder Subtraktionskreis
erforderlich ist. Die erfindungsgemäße Zählschaltung kann
demzufolge in den verschiedensten Anwendungsfällen eingesetzt
werden.
Ausführungsformen der Erfindung werden anhand der
Zeichnungen näher erläutert. Es zeigt
Fig. 1 ein Blockschaltbild eines Signalprozessors,
bei dem ein Zählerschaltkreis gemäß dem Stand
der Technik verwendet wird;
Fig. 2 einen Zeitplan für die Adressenproduktion mit
dem Zählerschaltkreis gemäß dem Stand der Technik;
Fig. 3 ein Blockschaltbild eines Signalprozessors, bei
dem ein Zählerschaltkreis gemäß einer ersten
Ausführungsform der vorliegenden Erfindung
verwendet ist;
Fig. 4 eine Befehlsstruktur für den Befehlscode zum
Steuern einer Adressenproduktion;
Fig. 5 ein Blockschaltbild des Zählerschaltkreises
gemäß Fig. 3;
Fig. 6 einen Zeitplan der Adressenproduktion mit dem
Zählerschaltkreis gemäß Fig. 5; und
Fig. 7 ein Schaltbild zur Erläuterung der Einzelheiten
des Zählerschaltkreises gemäß Fig. 5.
Als erstes wird ein Zählerschaltkreis gemäß dem Stand
der Technik, anhand der Fig. 1 beschrieben, die ein
Blockschaltbild eines wesentlichen Teils eines Signalprozessors
zeigt, der den bekannten Zählerschaltkreis,
wie beispielsweise einen Adreßgeneratorschaltkreis
aufweist. Der bekannte Adreßgeneratorschaltkreis
besteht aus einem Adreßzähler 1, einem Register 2 und
einem Addierwerk 3. Der herkömmliche Zählerschaltkreis
wird zur Erzeugung des Adreßzählers 1 verwendet. Daher
hat der Adreßzähler 1 eine Erhöhungs-(oder Verringerungs)-
Funktion zur Erzeugung von fortlaufenden
Adressen. Das heißt, der Adreßzähler 1 kann seinen
Inhalt fortlaufend ändern (z. B. n, n ∓ 1, n ∓ 2, n ∓ 3...).
Die vom Adreßzähler 1 erzeugten Adressen werden fortlaufend
auf einen Adreßdekoder 6 über eine Adreßsammelschiene
4 übertragen. Jede Adresse wird durch
den Adreßdekoder 6 dekodiert und verwendet, um aus
einem Datenspeicher (RAM) 7 ein Datum herauszulesen.
Das herausgelesene Datum wird auf einen Operationsschaltkreis
8 zur Signalverarbeitung (beispielsweise
der FFT-Operation, einer Filteroperation) über eine
Datensammelschiene 5 übertragen. In diesem Zustand
wird die an den Datenspeicher 7 angelegte Adresse um
+1 oder -1 erhöht. Somit werden in einem vorbestimmten
Zeitintervall fortlaufende Adressen erzeugt.
Der Adreßzähler 1 kann jedoch keine nicht
fortlaufenden Adressen (beispielsweise n, n ∓ a, n ∓ 2a,
n ∓ 3a, ...) selbst produzieren. Daher ist das Register
2 zum Speichern des Wertes a und das Addierwerk (oder
Subtraktionswerk) 3 erforderlich. Das Addierwerk 3 erhält
den Inhalt n des Adreßzählers 1 und den Wert a
des Registers 2 und bildet eine Addition (oder Subtraktion)
derselben. Das Resultat (n ∓ a) wird in dem
Adreßzähler 1 gespeichert und danach wird der Wert
(n ∓ a) auf den Adreßdekoder 6 über die Adreßsammelschiene
4 übertragen und weiterhin auch auf das
Addierwerk 3 übertragen, um eine nächste Adresse (n ∓ 2a)
zu erzeugen. Diese Operationen werden in einem vorbestimmten
Zeitintervall wiederholt.
Wie vorstehend beschrieben, erfordert der bekannte
Zählerschaltkreis komplexe Abläufe und Hardware-
Schaltkreise. Weiterhin sind wenigstens 4 Zyklen
erforderlich, um nicht fortlaufende Adressen zu erzeugen,
wie dies aus der Fig. 2 zu ersehen ist. Der erste
Zyklus T₁ wird zum Eingeben der Inhalte des
Adreßzählers AC 1 und des Registers R 2 auf das Addierwerk
ADD 3 verwendet. Im zweiten Zyklus T₂ wird die
Addition durchgeführt. Das Ergebnis der Addition wird
in einem dritten Zyklus T₃ im Adreßzähler AC 1
gespeichert. Danach kann in einem vierten Zyklus T₄ ein
Speicherzugang erlaubt werden. Daher wird eine lange
Zeitdauer benötigt, um bei nicht fortlaufendem Adressenmodus
Zugang zum Datenspeicher zu haben.
Fig. 3 zeigt ein Blockschaltbild eines wesentlichen
Teils eines Signalprozessors, der auf einem einzigen
Halbleiterchip ausgebildet ist, bei dem ein Zählerschaltkreis
gemäß einem Ausführungsbeispiel der vorliegenden Erfindung als
Einrichtung zum Erzeugen von Adressen verwendet wird. Wie
vorstehend erwähnt, speichert der Datenspeicher RAM 7
mehrere Daten, die bei der Signalverarbeitung verwendet
werden. Eine durch einen Adreßzählerschaltkreis 11
erzeugte Adresse wird im Adreßdekoder 6 dekodiert.
Als ein Ergebnis wird das für die Signalverarbeitung
erforderliche Datum aus dem Datenspeicher RAM 7
herausgelesen und auf den Operationsschaltkreis 8
übertragen, der die FFT-Operation, Filteroperation
oder dgl. ausüben kann. Der Adreßzähler 11 enthält
einen wesentlichen Teil des Zählerschaltkreises
und ist im einzelnen in der Fig. 5 dargestellt. Ein Eingang des
Adreßzählers 11 ist mit einem Adreßregister 10 verbunden,
während ein Ausgang mit dem Adreßdekoder 6
und dem Adreßregister 10 verbunden ist. Der Adreßzähler
11 erhält weiterhin ein INC/DEC-Signal 16,
wodurch eine Erhöhungs-/Verringerungs-Operation
angegeben ist, und ein Ausgangssignal 17 eines Dekoders 15
formt. Die Adressenproduktion wird durch einen im
Programmspeicher ROM 12 gespeicherten Befehl gesteuert.
Wenn die Adressenproduktion erforderlich ist, wird
der Befehl aus dem Programmspeicher 12 gelesen und
durch einen Befehlsdekoder 13 dekodiert.
Die Form eines Befehlscodes ist in der Fig. 4 dargestellt.
Bei dieser Ausführungsform wird ein horizontales
Mikroprogrammsystem verwendet. Wie aus der Fig. 4
zu ersehen ist, enthält der Befehlscode 6 Felder, d.h.
ein Operantenfeld OP, welches die Art der Operationen
angibt, ein Steuerfeld CNT, Registerbenennungsfelder
A und B, die die Register benennen, in welchen die
zu verarbeitenden Daten gespeichert werden, ein
Quellenregisterfeld SRC und ein Empfangsregisterfeld
DST. Die SRC- und DST-Felder werden dazu verwendet,
den Datentransferbefehl zwischen den Registern durchzuführen.
Anzumerken ist, daß die Adressenproduktion
bei dieser Ausführungsform mit Bezug auf das Steuerfeld
CNT gesteuert wird. Zwei Bits C₁ und C₂ im CNT-Feld
sind dazu ausersehen, jeweils eine Erhöhungsoperation
INC und eine Verringerungsoperation DEC
anzugeben. Drei Bits C₃ bis C₅ sind dazu ausersehen,
die Information für die Erzeugung einer nicht
fortlaufenden Adresse anzugeben.
Anhand der Fig. 5 wird die Adressenproduktion der vorliegenden
Ausführungsform im einzelnen beschrieben.
Der Adreßzähler 11 gemäß der Fig. 3 hat einen
Programmzähler 20 und einen Carry-(oder Übertrags-)
-Steuerschaltkreis 21. Der Programmzähler 20 wird auch
als Steigerungs- (oder Verringerungs-) Einheit bezeichnet
und hat bei der vorliegenden Ausführungsform acht
Stellen D₀ bis D₇. Der Eingangsteil (nicht dargestellt)
ist mit dem Adreßregister 10 verbunden und ein
Ausgangsteil (nicht dargestellt) ist mit dem Adreßdekoder
6 und einem Eingangsteil des Adreßregisters 10 verbunden.
Der Programmzähler 20 ist mit einer ersten (internen)
Carry-(Übertrags-)Quelle 22 verbunden, die ein
Carry-(oder Übertrags-)Signal erzeugt. Das erste Carry-
(Übertrags-)Signal wird von der kleinsten kennzeichnenden
Ziffer D₀ auf die am stärksten kennzeichnende
Ziffer D₇ in Reihe über eine Carry-(Übertrags-)Signalleitung
übertragen. Der Programmzähler 20 erhält vom
Adreßregister 10 ein Startsignal oder stellt in einem
Ausgangszustand auf "0" zurück. Danach wird der Inhalt
des Programmzählers 20 fortlaufend um eins erhöht
(oder verringert) in Abhängigkeit von einem Uhr- oder
anderen vorbestimmten Zeitschaltsignal. Auf diese Art
und Weise werden fortlaufende Adressen fortlaufend
produziert. Bei diesem Modus wird das erste (interne)
Carry-(Übertrags-)Signal von D₀, falls erforderlich,
auf D₇ übertragen. Diese Erhöhungs- oder Verringerungsoperation
des Programmzählers ist an sich allgemein
bekannt.
Der
Carry-(Übertrags-)Steuerschaltkreis 21 ist mit dem
Programmzähler 20 verbunden. Der Carry-(Übertrags-)
Steuerschaltkreis 21 hat entsprechend der jeweiligen
Stellen acht Blöcke. Jeder Block hat den gleichen
Schaltungsaufbau und besteht aus zwei
Schaltelementen (Toren) 24 und 25 und einem Inverter 26. Das Tor
24 ist zwischen den Stellen angeordnet und verbindet
die Carry-(Übertrags-)Signalleitung 57 der vorhergehenden
Stelle mit der Signalleitung 27 der darauffolgenden
Stelle. Weiterhin ist ein Eingang jedes Tors 25
mit einer gemeinsamen zweiten (externen) Carry-(oder
Übertrags-)Signalerzeugungsquelle 23 verbunden. Ein
Ausgang des Tors 25 ist mit der Carry-(Übertrags-)
Signalleitung 27 verbunden, mit der ein Ausgang des
Tors 24 wie in der Fig. 5 dargestellt, verbunden ist.
Diese Tore 24 und 25 werden exklusiv durch einen
Ausgang 17 des Dekoders, der einen Inhalt des Registers 14
dekodiert, ausgewählt. Der zu dekodierende Inhalt sind
die Bits C₃ bis C₅ des vorstehend beschriebenen CNT-
Feldes. In einem Block, der ein Niedrigpegelsignal als
ein Ausgangssignal vom Dekoder 15 erhält, wird das
Tor 24 ausgewählt und durch ein Ausgangssignal des
Inverters 26 eingeschaltet. Zu diesem Zeitpunkt ist
das Tor 25 elektrisch abgeschaltet. Somit wird das
Carry-(Übertrags-)Signal von der vorhergehenden Stelle
auf die nachfolgende Stelle übertragen. Auf der anderen
Seite wird, wenn das Ausgangssignal des Dekoders ein
Hochpegelsignal ist, das Tor 24 ausgeschaltet und das
Tor 25 eingeschaltet. Daher ist die Übertragung des
Carry-(oder Übertrags-)Signals von der vorhergehenden
Stelle gesperrt, während das zweite Carry-(Übertrags-)
Signal von der Quelle 23 zwangsweise an die folgende
Stelle angelegt wird.
Gemäß dem Ausführungsbeispiel der vorliegenden Erfindung wird das zweite Träger-
(Übertrags-)Signal dazu verwendet, eine nicht fortlaufende
Adresse zu erzeugen und wird zwangsweise gemäß der von
außen gegebenen Information (beispielsweise durch den
Programmspeicher 12) an eine beliebige Stelle angelegt.
Nun wird davon ausgegangen, daß eine Adresse des Programmzählers
"00101010" (Binärzahl) - "42" (Dezimalzahl)
ist, und daß die Adresse "58" (Dezimalzahl) als
nächste Adresse erforderlich ist, um auf den Datenspeicher
7 gegeben zu werden. In diesem Fall kann die
fortlaufende Adressenoperation nicht verwendet werden.
Daher wird die nicht fortlaufende Adressenoperation
ausgewählt. Der Abstand zwischen der Adresse "42" und
der Adresse "58" beträgt "16" (= 2⁴).
Der Carry-Steuerschaltkreis
21 wird dazu verwendet, die Adresse "58" zu erzeugen.
Bei der Ausführungsform ist "16" durch die
Bits C₃ bis C₅ im CNT-Feld angegeben. Der Dekoder
dekodiert die Bits C₃ bis C₅, die "1", "0", "0"
repräsentieren. Die Dezimalziffer 16 wird durch die
Binärziffer "00010000" repräsentiert. Daher erzeugt
der Dekoder 15 das Ausgangssignal (00010000). Daraus
folgt, daß das Tor 24 zwischen D₃ und D₄ abgeschaltet
und das mit D₄ verbundene Tor 25 eingeschaltet wird.
Daher wird das zweite Carry-Signal an D₄ angelegt, dann
wird der Inhalt des Adreßzählers sofort "00111010"
(Dezimalziffer 58).
Wie vorstehend beschrieben, sind bei der vorliegenden
Erfindung des Addierwerk 3 und das mit dem Addierwerk 3
verbundene Register 2 nicht erforderlich. Weiterhin kann
durch die zweite Carry-Steuerung die Addition stetig
durchgeführt werden. Daher kann die nicht fortlaufende
Adressenproduktion nur mit zwei Zyklen, wie aus der
Fig. 6 zu ersehen ist, durchgeführt werden.
Fig. 7 zeigt ein detaillierteres Schaltbild des Stellenblocks
mit dem niedrigsten Wert des Adreßzählerschaltkreises
11. Die übrigen Stellenblocks können die
gleiche Schaltung wie der Niedrigstwertblock aufweisen.
Ein Bitsignal D OIN wird vom Adreßregister 10 angelegt.
Wenn eine Erhöhungsoperation befohlen ist, wird
gemäß einem Erhöhungssteuerungssignal INC, welches
ebenfalls durch den Befehlsdekoder 13 erzeugt wird,
ein Tor (Transistor) 13 eingeschaltet. Das Eingangssignal
D OIN wird an eine UND-Schaltung 34 angelegt.
Wenn dagegen eine Verringerungsoperation befohlen ist,
wird ein Tor 32 durch ein Verringerungssteuerungssignal
eingeschaltet, welches durch den Befehlsdekoder
13 erzeugt ist. Somit wird das durch einen Inverter 31
umgekehrtes Signal an die UND-Schaltung 34 angelegt.
Die erste Carry-(oder Übertrags-)Signalerzeugungsquelle
22 erzeugt ein erstes Cary-(Übertrags-)Signal
. Dieses Signal wird auf den Block übertragen, wenn
das INC/DEC-Signal 16 einen höheren Pegel hat und wenn
ein Zeitsignal CLK einen niedrigen Pegel hat. Wenn das
Zeitsignal CLK einen hohen Pegel hat, ist die Carry-
(Übertrags-)Signalleitung 27 mit einem hohen Pegel
V cc durch einen Vorladetransistor 40 vorgeladen. In
diesem Zustand erhält die Leitung 27 im Niedrigstwertblock
den niedrigen Pegel, wenn das INC/DEC-Signal 16
an das Tor 43 angelegt ist. In diesem Fall wird der
niedrige Pegel als ein aktiver Pegel des Carry-(Übertrags-)
Signals verwendet. Eine exklusive oder EXOR-
Schaltung 39 ist mit dem Eingangssignal D OIN und der
Carry-(Übertrags-)Signalleitung 27 verbunden, um das
Eingangssignal vom zugeführten Carry-(oder Übertrags-)
Signal zu addieren oder zu subtrahieren. Im fortlaufenden
Adressenmodus erhält die EXOR-Schaltung 39 das
erste Carry-(Übertrags-)Signal. Zu diesem Zeitpunkt
wird ein Schalttor 37 (entsprechend 24 in Fig. 5) in
Übereinstimmung mit dem Eingangssignal D OIN gesteuert,
weil das Ausgangssignal 17 vom Dekoder 15 einen niedrigen
Pegel hat. Wenn das Eingangssignal "1" bei der
Erhöhungsoperation des fortlaufenden Adressenmodus ist,
wird das Tor 37 eingeschaltet. Somit wird das Carrysignal
auf den folgenden Block übertragen. Wenn das
Eingangssignal "0" ist, wird das Tor ausgeschaltet
und das Carry-Signal nicht auf den folgenden Block
übertragen. Das Ausgangssignal der EXOR-Schaltung 39
wird jedoch "1".
Beim nicht fortlaufenden Adressenmodus wird das Tor 7
notwendigerweise ausgeschaltet, wenn das Ausgangssignal
17 einen hohen Pegel hat. Dann wird das Schalttor 38
(entsprechend 25 in Fig. 5) eingeschaltet, wenn ein
Ausgangssignal einer NOR-Schaltung 35 einen hohen Pegel
erlangt. Somit wird das Carry-Signal ′ zwangsweise
von der zweiten Carry-(Übertrags-)Signalgeneratorquelle
23 auf den folgenden Block übertragen. Daraus
folgt, daß eine beliebige Stelle des Adreßzählers
durch die Verwendung des zweiten Carry-(Übertrags-)
Signals in Übereinstimmung mit einem zu addierendem
(oder subtrahierendem) Datum, welches im Dekoder dekodiert
ist, modifiziert wird. Das heißt, die Additions-
oder Subtraktionsoperation wird durch den Adreßzählerschaltkreis
ohne Verwendung eines Addier- oder
Subtraktionswerkes durchgeführt.
Wie vorstehend beschrieben, kann sowohl im fortlaufenden
Datenmodus als auch im nicht fortlaufenden Datenmodus
durch eine einfache Hardware-Ausstattung eine
schnelle Zähloperation durchgeführt werden. Die vorliegende
Erfindung kann ebenfalls bei einer Datenproduktion
für allgemeine oder spezielle Zwecke angewendet
werden.
Claims (5)
1. Zählerschaltkreis mit einer Mehrzahl von Zählstufen,
von welchen alle einen Übertragsignaleingang und alle
mit Ausnahme der letzten einen Übertragsignalausgang aufweisen, dadurch gekennzeichnet
- - daß ein Übertrags-Steuerschaltkreis (21) vorgesehen ist, dem die Übertragsignalausgänge jeweils einer Zählstufe (D₀ bis D₆) und die Übertragsignaleingänge der jeweils folgenden Zählstufe (D₁ bis D₇) zugeführt werden und der erste Schaltelemente (24) aufweist, welche in Abhängigkeit von einer Ansteuerschaltung (14, 15) den jeweiligen Transfer des Übertragsignals von einer Zählstufe (D₀ bis D₆) zur jeweils folgenden durchführen,
- - daß ferner ein Signalgenerator (23) vorhanden ist, welcher ein vorgegebenes Signal erzeugt, das dem Übertragungs-Steuerschaltkreis (21) zugeführt wird,
- - daß ferner eine Mehrzahl von zwischen die einzelnen Übertragsignaleingänge der verschiedenen Zählstufen (D₀ bis D₇) und den Signalgenerator (23) geschalteten zweiten Schaltelementen (25) vorgesehen ist, welche im durchgeschalteten Zustand das vorgegebene Signal des Signalgenerators (23) als Übertragsignal der jeweiligen Zählstufe (D₀ bis D₇) zuführen,
- - und daß die Ansteuerschaltung 15, 14) eine Auswahl der Durchschaltung der ersten (24) und der zweiten Schaltelemente (25) vornimmt.
2. Zählerschaltkreis nach Anspruch 1, dadurch
gekennzeichnet, daß die mit den Übertragsignaleingängen
derselben Zählstufe (D₀ bis D₇) verbundenen
ersten und zweiten Schaltelemente (24, 25)
komplementär ein- und ausschaltbar sind.
3. Zählerschaltkreis nach Anspruch 1 oder 2, dadurch
gekennzeichnet, daß die Ansteuerschaltung
(15, 14) ein Register (14) aufweist, in welchem
die Information zur Auswahl der Durchschaltung der Schaltelemente (24, 25)
einer Zählstufe (D₀ bis D₇) eingespeichert ist, und daß
ein die eingespeicherte Information des Registers (14)
decodierender Decoder (15) vorgesehen ist, welcher
erste Signale zur Durchschaltung der
zweiten Schaltelemente (25) abgibt.
4. Zählerschaltkreis nach Anspruch 3, dadurch
gekennzeichnet, daß der Decoder (15)
zusätzlich zweite Signale zur Sperrung der
zweiten Schaltelemente (25) abgibt.
5. Zählerschaltkreis nach Anspruch 4, dadurch
gekennzeichnet, daß der Übertragungs-Steuerschaltkreis (21)
Inverter (26)
aufweist, welche in Abhängigkeit von den ersten Signalen
eine Sperrung der mit dem Übertragsignaleingang der
jeweiligen Zählstufe (D₀ bis D₇) verbundenen ersten
Schaltelemente (24) durchführt, und welcher in Abhängigkeit
von den zweiten Signalen eine Durchschaltung der
mit den Übertragsignaleingängen der anderen Zählstufen
(D₀ bis D₇) verbundenen ersten Schaltelemente (24)
hervorruft.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5365985 | 1985-03-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3609056A1 DE3609056A1 (de) | 1986-09-18 |
DE3609056C2 true DE3609056C2 (de) | 1988-11-03 |
Family
ID=12948980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19863609056 Granted DE3609056A1 (de) | 1985-03-18 | 1986-03-18 | Zaehlerschaltkreis |
Country Status (3)
Country | Link |
---|---|
US (1) | US4723258A (de) |
JP (1) | JPS621030A (de) |
DE (1) | DE3609056A1 (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62180427A (ja) * | 1986-02-03 | 1987-08-07 | Nec Corp | プログラム制御回路 |
JPH0693556A (ja) * | 1991-10-01 | 1994-04-05 | Shimamoto Kasen Kimou Kojo:Kk | 編地の柄出し方法およびその装置 |
GB9326316D0 (en) * | 1993-12-23 | 1994-02-23 | Texas Instruments Ltd | Improvements in or relating to program counters |
US5504698A (en) * | 1994-05-17 | 1996-04-02 | Silicon Graphics, Inc. | Compact dual function adder |
EP2513818A1 (de) * | 2009-12-16 | 2012-10-24 | Telefonaktiebolaget L M Ericsson (PUBL) | Informationsverarbeitungsvorrichtung, steuerverfahren dafür, programm und computerlesbares speichermedium |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR1430343A (fr) * | 1965-01-21 | 1966-03-04 | Materiel Electrique S W Le | Dispositif à séquences à sauts conditionnels d'un registre compteur d'un calculateur |
FR1538083A (fr) * | 1966-09-28 | 1968-08-30 | Ibm | Dispositif arithmétique |
US3675000A (en) * | 1970-08-06 | 1972-07-04 | Sperry Rand Corp | Apparatus for arithmetic operations by alerting the corresponding digits of the operands |
JPS537349B2 (de) * | 1974-03-27 | 1978-03-16 | ||
US4130868A (en) * | 1977-04-12 | 1978-12-19 | International Business Machines Corporation | Independently controllable multiple address registers for a data processor |
US4075464A (en) * | 1977-05-02 | 1978-02-21 | Fairchild Camera And Instrument Corporation | Incrementer/decrementer circuit |
US4218750A (en) * | 1978-09-25 | 1980-08-19 | Motorola, Inc. | Incrementer with common precharge enable and carry-in signal |
US4280190A (en) * | 1979-08-09 | 1981-07-21 | Motorola, Inc. | Incrementer/decrementer circuit |
JPS5851306A (ja) * | 1981-09-22 | 1983-03-26 | Fanuc Ltd | 数値制御装置 |
US4486851A (en) * | 1982-07-01 | 1984-12-04 | Rca Corporation | Incrementing/decrementing circuit as for a FIR filter |
JPS5933552B2 (ja) * | 1982-07-08 | 1984-08-16 | 株式会社東芝 | 結晶成長装置 |
-
1986
- 1986-03-18 DE DE19863609056 patent/DE3609056A1/de active Granted
- 1986-03-18 US US06/840,820 patent/US4723258A/en not_active Expired - Lifetime
- 1986-03-18 JP JP61061419A patent/JPS621030A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
DE3609056A1 (de) | 1986-09-18 |
JPS621030A (ja) | 1987-01-07 |
US4723258A (en) | 1988-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE2758830A1 (de) | Rechenvorrichtung | |
DE2162486A1 (de) | Digital gesteuerter Impulsgenerator | |
DE2524046A1 (de) | Elektronische datenverarbeitungsanlage | |
DE1115488B (de) | Datenverarbeitungssystem | |
DE1114050B (de) | Elektronischer Gleitkomma-Rechner | |
DE3609056C2 (de) | ||
CH657487A5 (de) | Funktionsgenerator zur erzeugung einer anzahl von sich wiederholenden digitalen wellenformen. | |
DE19628039B4 (de) | Speicheradressen-Steuerschaltung | |
EP0257362A1 (de) | Addierer | |
DE3018509A1 (de) | Schieberegister mit latch-schaltung | |
DE3633461A1 (de) | Taktsignalgebervorrichtung | |
DE2712582C2 (de) | DDA-Rechner (Digital-Differential-Analysator) | |
DE2214053A1 (de) | Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn | |
DE2623374A1 (de) | Digitale multipliziereinrichtung | |
DE3333862C2 (de) | ||
EP0598112A1 (de) | Verfahren und anordnung zum bilden der summe einer kette von produkten | |
EP0333884B1 (de) | CMOS-Parallel-Serien-Multiplizierschaltung sowie deren Multiplizier- und Addierstufen | |
DE3341339C2 (de) | Befehlsfolgegenerator | |
DE2936801C2 (de) | Steuereinrichtung zur Ausführung von Instruktionen | |
DE2003832A1 (de) | Binaeres Universalregister,insbesondere Zaehl- und Komplementierregister | |
DE1499192A1 (de) | Informationsverarbeitungsgeraet | |
DE1424756B2 (de) | Schaltungsanordnung zum fehlergesicherten Einführen oder Wiedereinführer, von Programmen in den Hauptspeicher einer datenverarbeitenden Anlage | |
DE2203034A1 (de) | Steuerungssystem fuer eine numerisch gesteuerte Werkzeugmaschine,insbesondere Formfraesmaschine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: NEC ELECTRONICS CORP., KAWASAKI, KANAGAWA, JP |
|
8339 | Ceased/non-payment of the annual fee |