DE3636105A1 - Digitaler signalprozessor - Google Patents

Digitaler signalprozessor

Info

Publication number
DE3636105A1
DE3636105A1 DE19863636105 DE3636105A DE3636105A1 DE 3636105 A1 DE3636105 A1 DE 3636105A1 DE 19863636105 DE19863636105 DE 19863636105 DE 3636105 A DE3636105 A DE 3636105A DE 3636105 A1 DE3636105 A1 DE 3636105A1
Authority
DE
Germany
Prior art keywords
data
memory
area
digital signal
signal processor
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.)
Ceased
Application number
DE19863636105
Other languages
English (en)
Inventor
Hideki Ando
Harufusa Kondo
Hirohisa Machida
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE3636105A1 publication Critical patent/DE3636105A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

Die Erfindung bezieht sich auf einen digitalen Signalprozessor, und insbesondere bezieht sie sich auf einen so verbesserten digitalen Signalprozessor, daß das Signalverarbeiten sehr ef­ fektiv durchgeführt werden kann.
Ein digitaler Signalprozessor ist ein Mikroprozessor, der speziell für digitales Signalverarbeiten ausgerichtet ist, der für den Zweck der schnellen Multiplikations- und Additionstä­ tigkeit, die häufig für digitale Signalverarbeitung benötigt werden, entwickelt ist.
Fig. 1 zeigt ein schematisches Blockschaltdiagramm eines Bei­ spieles eines konventionellen Signalprozessors, wie er zum Bei­ spiel in "A Single-Chip Digital Signal Processor for Voiceband Applications" von Y. Kawakami u.a., IEEE International Solid- State Circuits Conference, Seiten 40-41, 1980, veröffentlicht ist. Der in Fig. 1 gezeigte konventionelle digitale Signalpro­ zessor weist, wie in einem gewöhnlichen Mikroprozessor, einen Speicherbereich 1, einen Steuerbereich 2, einen arithmetischen Rechenbereich 3 und einen Datenbus 4 auf. Der Speicherbereich 1 weist ein RAM 11 und ein ROM 12 auf. Daten, die in dem arith­ metischen Rechenbereich 3 verarbeitet werden sollen, und Daten, die für diese Verarbeitung notwendig sind, sind in dem RAM 11 und dem ROM 12 gespeichert. Nicht feste Daten sind in dem RAM 11 gespeichert, und feste Daten (wie die konstanten Daten für die Multiplikation) sind in dem ROM 12 gespeichert. Der RAM 11 und der ROM 12 sind mit dem Datenbus 4 verbunden.
Der Steuerbereich 2 weist einen Befehls-ROM 21, einen Programm­ zähler 22, ein Befehlsregister 23 und einen Befehlsdecodierer 24 auf. Programmdaten sind in dem Befehls-ROM 21 gespeichert. Der Programmzähler 22 liest nacheinander Programmdaten von dem Befehls-ROM 21 in Synchronisation mit einem Grundtaktpulsgeber (nicht abgebildet) des digitalen Signalprozessors aus. Das Be­ fehlsregister 23 speichert zeitweilig die von dem Befehls-ROM ausgelesenen Programmdaten. Ein Ausgang des Befehlsregisters 23 wird dem Befehlsdecodierer 24 zugeführt. Ein Teil des Bit­ ausganges von dem Befehlsregister 23 wird dem Datenbus 4 zuge­ führt. Der Befehlsdecodierer 24 entschlüsselt die von dem Be­ fehlsregister 23 erhaltenen Programmdaten und erzeugt verschie­ dene Steuersignale. Diese Steuersignale werden dem Speicher­ bereich 1, dem Steuerbereich 2, dem arithmetischen Rechenbe­ reich 3 usw. so zugeführt, daß die Tätigkeit der internen Schaltkreise dieser Komponenten gesteuert wird.
Der rechnende Bereich 3 weist einen Multiplizierer 31, eine arithmetische und logische Einheit (im folgenden als ALU) 32 und einen Akkumulator 33 auf. Eingänge des Multiplizierers 31 sind mit dem Datenbus 4 verbunden. Einer der Eingänge des Mul­ tiplizierers 31 ist direkt mit dem RAM 11, und dessen anderer Eingang ist direkt mit dem ROM 12 verbunden. Ein Eingang der ALU 32 ist mit dem Datenbus 4 verbunden und ebenfalls direkt mit dem Multiplizierer 31. Der andere Eingang der ALU 31 nimmt einen Ausgang des Akkumulators 33 auf. Ein Ausgang von der ALU 32 wird dem Akkumulator 33 zugeführt. Der Akkumulator 33 ist mit dem Datenbus 4 verbunden.
In der oben beschriebenen Anordnung multipliziert der Multipli­ zierer einen von dem RAM 11 gelesenen Wert mit einer von dem ROM 12 gelesenen Konstante und führt das Resultat der ALU 32 zu. Die ALU 32 addiert das Resultat der Multiplikation durch den Multiplizierer 31 zu dem sich aufsummierenden Gesamtwert der Resultate der bis dahin durchgeführten und in dem Akkumu­ lator 33 gespeicherten Multiplikationen und speichert das Re­ sultat der Addition in dem Akkumulator 33. Der in dem Akkumu­ lator 33 gespeicherte aufsummierte Gesamtwert wird durch den Datenbus 4 zur Verfügung gestellt.
Da der digitale Signalprozessor den Multiplizierer 31 als Hard­ ware-Schaltkreis aufweist, der auf den Multiplikationsprozess, wie oben beschrieben, zugeschnitten ist, kann der Multiplika­ tionsprozess mit einer höheren Geschwindigkeit durchgeführt werden, als wenn die Multiplikation in der ALU 32 als wieder­ holte Addition durchgeführt wird, wie in einem konventionellen Mikrocomputer. Da der Multiplizierer 31 direkt mit dem RAM 11 und dem ROM 12 verbunden ist, können zusätzlich Daten in den Multiplizierer 31 durch einen Befehl gesetzt werden. Da der Multiplizierer 31 direkt mit der ALU 32 verbunden ist, kann zusätzlich ein Resultat der Multiplikation in die ALU 32 durch einen Befehl gesetzt werden. Daher sind die Datenwege für Mul­ tiplikations- und Additionstätigkeiten separat von dem Datenbus 4 vorgesehen, und folglich können Multiplikations- und Addi­ tionstätigkeiten und der Transfer von Daten simultan durchge­ führt werden, und das Durchführen der Multiplikations- und Additionstätigkeiten kann bei hoher Geschwindigkeit stattfinden.
In einem solchen konventionellen digitalen Signalprozessor, wie er oben beschrieben wurde, werden zu multiplizierende Daten in dem RAM 11 gespeichert, und das zieht das Problem nach sich, daß mehrere Befehle zum Ausführen der Tätigkeit, die Daten zu verzögern, nötig sind (solche Tätigkeit ist oft in einem digi­ talen Filter oder ähnlichem nötig). Zum Beispiel sind in Bezug auf die Tätigkeit der Datenverzögerung um eine Einheit, um ein Teilbild oder eine Abtastung, die folgenden Befehle nötig.
(1) Setzen einer Adresse n in den RAM 11.
(2) Speichern des Inhaltes der Adresse n in dem RAM 11 in ein erstes zeitweiliges Register (nicht abgebildet) und zur gleichen Zeit Erhöhen der Adresse in dem RAM 11.
(3) Speichern des Inhaltes der Adresse (n + 1) in den RAM 11 in ein zweites zeitweiliges Register (nicht abgebildet).
(4) Schreiben des Inhaltes des ersten zeitweiligen Registers in die Adresse (n + 1) in dem RAM 11.
Wie es oben beschrieben wurde, ist es in dem konventionellen digitalen Signalprozessor notwendig, die in dem RAM 11 gespei­ cherten Daten zeitweilig in einem Register zu sichern und in den RAM 11 wieder die in einem zeitweiligen Register gesicher­ ten Daten zu schreiben, nachdem die Adresse in dem RAM 11 er­ höht wurde. Folglich sind mehrere Befehle notwendig, damit die Verzögerung um eine Einheit erzielt wird. Weiterhin ist es not­ wendig, die oben beschriebene Tätigkeit für alle um eine Ein­ heit zu verzögernden Daten durchzuführen.
Daher ist es Aufgabe der Erfindung, einen digitalen Signalpro­ zessor vorzusehen, bei dem die Verzögerung der zu multiplizie­ renden Daten durch eine extrem kleine Anzahl von Befehlen durchgeführt werden kann (zum Beispiel einen Befehl).
Erfindungsgemäß wird diese Aufgabe gelöst, indem in einem Spei­ cherbereich mindestens eine von einer ersten und zweiten vorge­ sehenen Speichereinrichtung durch ein Schieberegister gebildet wird.
Erfindungsgemäß ist mindestens die erste oder zweite Speicher­ einrichtung, die in einem Speicherbereich vorgesehen sind, durch ein Schieberegister gebildet, und folglich können zu mul­ tiplizierende Daten nur durch das Schieben verzögert werden, und folglich kann der Verzögerungsprozeß durch eine extrem kleine Anzahl von Befehlen durchgeführt werden.
Weitere Merkmale und Zweckmäßigkeiten der Erfindung ergeben sich aus der Beschreibung von Ausführungsbeispielen anhand der Figuren. Von den Figuren zeigen:
Fig. 1 ein schematisches Blockschaltdiagramm eines Bei­ spieles eines konventionellen digitalen Signal­ prozessors;
Fig. 2 ein schematisches Blockdiagramm einer erfindungs­ gemäßen Ausführungsform eines digitalen Signalpro­ zessors; und
Fig. 3 ein schematisches Blockdiagramm einer anderen er­ findungsgemäßen Ausführungsform.
Fig. 2 ist ein schematisches Blockdiagramm, das eine Ausfüh­ rungsform der Erfindung zeigt. Die in Fig. 2 gezeigte Ausfüh­ rungsform weist ein Schieberegister 13 anstelle des in Fig. 1 gezeigten RAM 11 auf. Dieses Schieberegister 13 ist geeignet, die Eingangsdaten um eine Zeiteinheit oder Probenzeit zum Bei­ spiel zu verzögern. Die andere Anordnung dieser Ausführungsform ist die gleiche wie in dem in Fig. 1 gezeigten konventionellen Beispiel. Daher sind die gleichen Bereiche wie in Fig. 1 mit den gleichen Bezugszeichen versehen und deren Beschreibung ist weggelassen.
Im folgenden wird die Tätigkeit der oben angeführten Ausfüh­ rungsform beschrieben. Zu verzögernde Daten werden in das Schieberegister 13 eingegeben. Das Schieberegister 13 verzö­ gert die Eingangsdaten um eine Zeiteinheit durch Verschieben der Daten. Damit in dem digitalen Signalprozessor dieser Aus­ führungsform zu multiplizierende Daten verzögert werden, kann der Verzögerungsprozeß von Daten folglich durch nur einen Be­ fehl zum Verschieben der Daten in dem Schieberegister 13 durch­ geführt werden. In anderen Worten, das Durchführen von zeit­ weiligem Sichern von in dem RAM 11 gespeicherten Daten, zum Schreiben der Daten wiederum, wie in dem in Fig. 1 gezeigten konventionellen Beispiel, ist nicht nötig, und als Resultat kann die Anzahl der Befehle verringert werden. Daher kann der Verzögerungsprozeß der Daten sehr effektiv durchgeführt werden, und das digitale Signalverarbeiten kann bei hoher Geschwindig­ keit durchgeführt werden.
Obwohl die oben beschriebene Ausführungsform den Fall betrifft, in dem alle zu multiplizierenden Daten (mit Ausnahme der in dem ROM 12 gespeicherten konstanten Daten) um eine Einheitszeit zu verzögern sind (zum Beispiel in dem Fall der Berechnung durch das digitale Filter) kann sowohl ein RAM 11 als auch das Schieberegister 13 in dem Speicherbereich 1 vorgesehen werden, wenn es viele Daten gibt, die nicht verzögert werden müssen. Diese Ausführungsform ist in Fig. 3 gezeigt. In der in Fig. 3 gezeigten Ausführungsform werden Daten, die zu verzögern sind, in das Schieberegister 13 eingegeben, und Daten, die nicht ver­ zögert werden müssen, werden in dem RAM 11 gespeichert. Der Multiplizierer 31 ist direkt mit beiden, mit dem Schiebere­ gister 13 und dem RAM 11 so verbunden, daß der Multiplizierer 31 eine Ausgabe von jedem von ihnen auswählen und empfangen kann, wie es gerade passend ist.

Claims (4)

1. Digitaler Signalprozessor, auf digitales Signalverarbeiten ausgerichtet, mit einem Speicherbereich (1), einem Steuerbe­ reich (2), einem arithmetischen Rechenbereich (3), und einem Datenbus (4), der als Datenübertragungsleitung zwischen dem Speicherbereich (1), dem Steuerbereich (2) und dem arithmeti­ schen Rechenbereich (3) dient, dadurch gekennzeichnet, daß der Speicherbereich (1) eine erste Speichereinrichtung zum Speichern eines Teiles der zu multiplizierenden Daten und eine zweite Speichereinrichtung zum Speichern der anderen zu multiplizierenden Daten aufweist, wobei mindestens einer des ersten oder zweiten Speicherbereiches durch ein Schieberegister (13) gebildet ist, daß der Steuerbereich (2) einen Programmspeicher (21) zum Spei­ chern von Programmdaten, eine Leseeinrichtung (22) zum Nach­ einander-Auslesen der in dem Programmspeicher (21) gespeicher­ ten Programmdaten, und eine Einrichtung (24) zum Vorsehen ver­ schiedener Steuersignale, die auf den von dem Programmspeicher (21) ausgelesenen Programmdaten basieren, aufweist, und daß der arithmetische Rechenbereich (3) einen direkt mit der ersten und zweiten Speichereinrichtung verbundenen Multipli­ zierer (31) zum Multiplizieren von Daten, die von der ersten Speichereinrichtung vorgesehen werden, mit Daten, die von der zweiten Speichereinrichtung vorgesehen werden, eine direkt mit dem Multiplizierer (31) verbundene arithmetische und logische Einheit (32) und einen Akkumulator (33) zum zeitweiligen Spei­ chern einer Ausgabe der arithmetischen und logischen Einheit (32) so, daß die Ausgabe dem Datenbus (4) zugeführt wird, auf­ weist.
2. Digitaler Signalprozessor nach Anspruch 1, dadurch gekenn­ zeichnet, daß das Schieberegister (13) eine Verzögerungstätig­ keit auf die miteinander zu multiplizierenden Daten durch einen Befehl ausführt.
3. Digitaler Signalprozessor nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß eine der ersten oder zweiten Speicherein­ richtungen durch ein Schieberegister (13) gebildet ist und die andere durch einen Nur-Lese-Speicher (ROM, 12) zum Speichern von festen Daten gebildet ist.
4. Digitaler Signalprozessor nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß eine der ersten und zweiten Speicherein­ richtungen durch ein Schieberegister (13) und einen Speicher mit direktem Zugriff (RAM, 11) gebildet ist und der andere durch einen Nur-Lese-Speicher (ROM, 12) zum Speichern von festen Daten gebildet ist.
DE19863636105 1985-10-23 1986-10-23 Digitaler signalprozessor Ceased DE3636105A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60238831A JPS6297062A (ja) 1985-10-23 1985-10-23 デイジタルシグナルプロセツサ

Publications (1)

Publication Number Publication Date
DE3636105A1 true DE3636105A1 (de) 1987-04-23

Family

ID=17035920

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19863636105 Ceased DE3636105A1 (de) 1985-10-23 1986-10-23 Digitaler signalprozessor

Country Status (4)

Country Link
US (1) US4811267A (de)
JP (1) JPS6297062A (de)
DE (1) DE3636105A1 (de)
FR (1) FR2588981A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4577282A (en) 1982-02-22 1986-03-18 Texas Instruments Incorporated Microcomputer system for digital signal processing
US5038312A (en) * 1988-11-14 1991-08-06 Nec Corporation Data processing system capable of performing vector/matrix processing and arithmetic processing unit incorporated therein
US5109497A (en) * 1989-01-27 1992-04-28 Hughes Aircraft Company Arithmetic element controller for controlling data, control and micro store memories
US5218564A (en) * 1991-06-07 1993-06-08 National Semiconductor Corporation Layout efficient 32-bit shifter/register with 16-bit interface
JPH07122973A (ja) * 1993-10-20 1995-05-12 Yamaha Corp デジタル信号処理回路
US5442576A (en) * 1994-05-26 1995-08-15 Motorola, Inc. Multibit shifting apparatus, data processor using same, and method therefor
US5517436A (en) * 1994-06-07 1996-05-14 Andreas; David C. Digital signal processor for audio applications
JP3693367B2 (ja) * 1994-07-28 2005-09-07 富士通株式会社 積和演算器
US5867726A (en) * 1995-05-02 1999-02-02 Hitachi, Ltd. Microcomputer
US5740420A (en) * 1995-10-26 1998-04-14 Advanced Micro Devices, Inc. System and method for compiling and executing sequences of macro and micro instructions
IL127134A (en) * 1996-03-04 2002-11-10 Oren Semiconductor Ltd Install DSP
DE19630861A1 (de) * 1996-07-31 1998-02-05 Philips Patentverwaltung Datenverarbeitungseinrichtung mit einem Mikroprozessor und einer zusätzlichen Recheneinheit
US6205459B1 (en) * 1996-12-18 2001-03-20 Yamaha Corporation Digital signal processor and digital signal processing system incorporating same
US6317770B1 (en) * 1997-08-30 2001-11-13 Lg Electronics Inc. High speed digital signal processor
US6449630B1 (en) * 1999-04-07 2002-09-10 Mitsubishi Electric Research Laboratories, Inc. Multiple function processing core for communication signals
US6944747B2 (en) * 2002-12-09 2005-09-13 Gemtech Systems, Llc Apparatus and method for matrix data processing
US20100099954A1 (en) * 2008-10-22 2010-04-22 Zeo, Inc. Data-driven sleep coaching system
US11373705B2 (en) * 2020-11-23 2022-06-28 Micron Technology, Inc. Dynamically boosting read voltage for a memory device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4533992A (en) * 1982-02-22 1985-08-06 Texas Instruments Incorporated Microcomputer having shifter in ALU input
US4491910A (en) * 1982-02-22 1985-01-01 Texas Instruments Incorporated Microcomputer having data shift within memory
US4561065A (en) * 1982-02-23 1985-12-24 Tokyo Shibaura Denki Kabushiki Kaisha Arithmetic processing device using sampled input data and several previous output data
US4468786A (en) * 1982-09-21 1984-08-28 Harris Corporation Nonlinear equalizer for correcting intersymbol interference in a digital data transmission system
US4612625A (en) * 1983-10-12 1986-09-16 Wavetek Rockland Scientific, Inc. Decimator employing finite impulse response digital filters
US4617676A (en) * 1984-09-04 1986-10-14 At&T Bell Laboratories Predictive communication system filtering arrangement

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MORRIS MANO, Digital Logic and Computer Design, Prentice-Hall, 1976, S. 523-585 *
US-Z.: IEEE Intern. Solid-State Circuits Conference, 1980, S. 40-41 *

Also Published As

Publication number Publication date
FR2588981A1 (fr) 1987-04-24
US4811267A (en) 1989-03-07
JPS6297062A (ja) 1987-05-06

Similar Documents

Publication Publication Date Title
DE3636105A1 (de) Digitaler signalprozessor
DE3424962C2 (de)
DE3636106A1 (de) Digitaler signalprozessor
DE2819571C2 (de)
DE3586603T2 (de) Datenprozessor fuer interpretierende und kompilierte sprache.
DE1499175B2 (de) Steuereinrichtung in einem mehrspezies rechner
DE2912287A1 (de) Datenverarbeitungsgeraet
DE69324730T2 (de) Multiplizier-Akkumulator
DE3400723C2 (de)
DE3338345A1 (de) Vektor prozessor
DE3709675C2 (de)
DE2758830A1 (de) Rechenvorrichtung
DE3588212T2 (de) Verfahren und Gerät zum Suchen von Daten
DE2247534C3 (de) Additions- und Subtraktionsvorrichtung
DE69632655T2 (de) Pipeline-Datenverarbeitungsanordnung zur Durchführung einer Mehrzahl von untereinander datenabhängigen Datenprozessen
DE3507584C2 (de)
DE3486073T2 (de) Vektorverarbeitungsgeraet.
DE3314139C2 (de)
EP0265555B1 (de) Verfahren und Schaltungsanordnung zur Addition von Gleitkommazahlen
DE19628039B4 (de) Speicheradressen-Steuerschaltung
DE68903280T2 (de) Vektorschlange in computern mit vektorregister.
DE3786986T2 (de) Bildbehandlungsvorrichtung.
DE3440680A1 (de) Verfahren und vorrichtung zur dezimaldivision
DE3535215C2 (de)
DE1916377C3 (de)

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection