JPH0363826A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0363826A
JPH0363826A JP11733690A JP11733690A JPH0363826A JP H0363826 A JPH0363826 A JP H0363826A JP 11733690 A JP11733690 A JP 11733690A JP 11733690 A JP11733690 A JP 11733690A JP H0363826 A JPH0363826 A JP H0363826A
Authority
JP
Japan
Prior art keywords
register
registers
processing
data
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.)
Granted
Application number
JP11733690A
Other languages
English (en)
Other versions
JP3173777B2 (ja
Inventor
N Ehlig Peter
ピーター エヌ エイリグ
Frederic Boutaud
フレデリック ブートー
F Hollander James
ジェイムズ エフ ホーランダー
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments 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
Priority claimed from US07/347,615 external-priority patent/US5142677A/en
Priority claimed from US07/347,596 external-priority patent/US5072418A/en
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPH0363826A publication Critical patent/JPH0363826A/ja
Application granted granted Critical
Publication of JP3173777B2 publication Critical patent/JP3173777B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318536Scan chain arrangements, e.g. connections, test bus, analog signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3652Software debugging using additional hardware in-circuit-emulation [ICE] arrangements
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30021Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30101Special purpose registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/325Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • G06F9/462Saving or restoring of program or task context with multiple register sets
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318505Test of Modular systems, e.g. Wafers, MCM's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • G06F11/2733Test interface between tester and unit under test

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Complex Calculations (AREA)
  • Microcomputers (AREA)
  • Executing Machine-Instructions (AREA)
  • Hardware Redundancy (AREA)
  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータ処理装置、およびそれらを製作操作する
ための電子処理・制御装置ならびに方法に関する。
〔従来の技術〕
マイクロプロセッサ装置はデジタルプロセッサ用の中央
処理装置もしくはcpuであって、米国特許第3.75
7.306号(発明者ガ、リ−W、ブーン、特許権者テ
キサスインストラメンツ社)に示すようにMO3/LS
I技術により製作された単一の半導体集積回路もしくは
“チップ”内に格納されるのが普通である。プーン特許
は並列ALU、データとアドレス用レジスタ、命令レジ
スタ、および制御デコーダを含むシングルチップ8ビツ
トCPUを示し、上記部品は全てフォンノイマンアーキ
テクチャーを使用しデータ、アドレス、命令用の双方向
並列バスを使用して相互接続される。米国特許第4.Q
74.35I号(発明者ガリーW4ブーン、ミカエルJ
、コクラン、権利人テキサスインスルメンツ社)は、4
ビット並列ALUとその制御回路を備え、オンチップR
OM (プログラム記憶用)とオンチップRAM(デー
タ記憶用)がバーバードアーキテクチャ−形に構成され
たシングルチップ“マイクロコンピュータ”型装置を示
している。
マイクロプロセッサという用語は通常、プログラムとデ
ータの格納に外部メモリを使用する装置を指し、一方マ
イクロコンピュータという用語はプログラムとデータを
格納するにオンチップROMとRAMを備えた装置を指
すのが普通である。本発明を解説するに際して、“マイ
クロコンピュータ“という語は両方の形式の装置を包含
し、“マイクロプロセッサ”の方は主としてオンチップ
ROMのないマイクロコンピュータを指すものとする。
然しなから、上記用語は当該技術分野では互いに両用さ
れることが多いため、本文中の解説ではこれら用語の一
方に代えて他方を使用する場合に本発明の特徴を限定す
るものと考えるべきではない。
今日のマイクロコンピュータは、全体として2つの類別
即ち汎用マイクロプロセッサと専用マイクロコンピュー
タ/マイクロプロセッサに分類することができる。モト
ローラ社により製作されるM6020の如き汎用マイク
ロプロセッサは広範囲のタスクの何れも実現できるよう
にユーザがプログラミング可能なように設計されている
から、パソコンの如き装置内の中央処理装置として使用
されることが多い。かかる汎用マイクロプロセッサは広
範囲の演算論理機能に対しては優れた性能を備えている
が、かかる機能のうちの一つに特定して設、計もしくは
適応させられていないことはいうまでもない。それと対
照的に、専用マイクロコンピュータはユーザがそのため
にマイクロコンピュータを使用しようとする所定の演算
論理機能に対して性能を向上させるように設計されてい
る。
マイクロコンピュータの一次的機能を知ることによって
、設計者は専用マイクロコンピュータによる特定機能の
性能が、使用者が作成したプログラムにかかわりなく、
汎用マイクロコンピュータによると同一の機能性能を大
きく上廻るようにマイクロコンピュータを構成すること
ができる。
著しく向上した速度で専用マイクロコンピュータで実行
可能なかかる機能の一つはデジタル信号処理であって、
殊にデジタルフィルタの使用と高速フーリエ変換の実行
に必要とされる計算である。
かかる計算は整数乗算、多重ビツトシフト、乗加算の如
き高次の反復演算より構成されるために、専用マイクロ
コンピュータは、特にこれら反復機能に適応できるよう
に構成することができる。かかる専用マイクロコンピュ
ータの一つは米国特許第4,577.282号(権利者
テキサスインストルメンツ社)に解説されているが、参
考のため本文中に組込んである。同特許における如くこ
れらの計算用にマイクロコンピュータを特殊な形で設計
することによって汎用マイクロコンピュータに比べて十
分な性能の向上が得られ、その結果、かかる専用マイク
ロコンピュータを音声画像処理の如きリアルタイム用途
に使用することが可能になる。
デジタル信号処理分野ではその計算度が高いために、メ
モリアクセス動作も幾分激しい。従って、デジタル信号
処理機能を実行するさいのマイクロコンピュータの全体
性能は単位時間あたりに実行される特定計算数によって
決定されるだけでなく、マイクロコンピュータがシステ
ムメモリからデータを横築し、同メモリに対してデータ
を格納することの可能な速度によっても規定される。上
記米国特許第4,577.282号中に記載のものの如
く、従来の専用マイクロコンピュータはバーバートアー
キテクチャ−の修正バージョンを使用しているため、デ
ータメモリに対するアクセスはプログラムメモリのアク
セスから独立に、しかもそれと同時に行うことができる
。かかるアーキテクチャ−がその性能を追加的に向上さ
せることはいうまでもない。
技術と市場の増加する需要は、今日、処理装置、アプリ
ケーションシステム、およびそれらの操作と製造方法に
ついて更に一層の構造的ならびに処理上の向上を望まし
いものとしている。
〔発明が解決しようとする課題〕
全体として、本発明の一形態はコンテキスト信号に応答
しそのコンテキスト信号により確認される代替的な処理
コンテキスト内が動作可能な電子プロセッサを含むデー
タ処理装置である。第1と第2のレジスタが上記データ
処理装置に接続されることによって一つの処理コンテキ
ストに参加すると共に、別の処理コンテキストからの情
報をそこに復帰するまで保持する。コンテキスト切換回
路が上記第1と第2のレジスタに接続され、処理コンテ
キストに応じて、レジスタの電子プロセッサ間での入出
力動作を選択的に制御するようになっている。
本発明のその他の形の装置、システム、および方法も本
文中に開示する。
本発明の特徴を成すと思われる新規な特徴は添附請求範
囲中に提示する。本発明の実施例と共にその他の特徴と
利点は図面と相俟って以下の詳細な説明より最も良く理
解されるはづである。
〔実施例〕
アーキテクチャ全体図はまづデジタル信号処理装置11
の望ましい実施例を示す。
第1A図と第1B図のデジタル信号処理装置はバーバー
ド形アーキテクチャーによるもので、プログラムとデー
タにつき、2つの別個のメモリバス構造を維持すること
によって処理能を最大にしてフルスピードで実行できる
ようにしである。上記2個の空間の間をデータを転送さ
せる命令が含まれる。
装置11はプログラムアドレス指定回路13とプロセッ
サを備える電子計算回路15を有する。
計算回路15は、第1B図のデータメモリ25から取出
されるか即値命令から導出された16ビソトワード、あ
るいは乗算器27の32ビツトの結果を使用して演算す
る汎用演算装置である。演算命令を実行する他に、AL
U21はプール演算を実行することができる。累算器2
3はALU21からの出力を記憶し、通路29を介して
第2の入力をALU21に提供する。累算器23は図に
おいては32ビツト長であって上位ワード(31〜16
ビツト)と下位ワード(15〜0ビツト)に分割される
。累算器の上下位ワードをデータメモリ25内に記憶す
る命令が設けられる。累算器23が高速に一時記憶でき
るように、32ビツトの累算器バッファACCB31が
存在する。
主ALU21の他に、第1B図には周辺論理装置(PL
O)41が存在し、累算器23のコンテキストに影響を
及ぼさずにメモリロケーション上に対して論理演算を行
う。PLO41は、高速制御のために拡張ビット操作能
力を備えており、ビットのセント、クリア、ならびに制
御状態レジスタの動作と関連するテストを簡単化してい
る。
第1A図の乗算器27は、1回の命令サイクルで32ビ
ツトの結果と共に16X16ビツトの2つの補数乗算を
実行する。
乗算器は次の3つの要素から成る。即ち、−時THEG
Oレジスタ49に、積レジスタPREG51、および乗
算器アレイ53である。16ビソ)THEGOレジスタ
49は被乗数を一時記憶する。PREGレジスタ51は
32ビツトの積を記憶する。乗算器の値はMAC/MA
CD命令を使用する場合、データメモリ25、プログラ
ムメモリ61から来るか、MPYK (乗算即値)命令
ワードから即座に導き出されるかの何れかである。
プログラムメモリ61はアドレス指定入力でプログラム
アドレスバス101Aに接続される。メモリ61はその
リード/ライト入出力でプログラムデータバス1OID
に接続される。高速オンチップ乗算器27によって装置
11は畳み込み、相関化、フィルタリングの如き基本的
なりSP操作を効率的に実行することができる。
プロセッサのスケーリングシフタ65は、16ビツト入
力がマルチプレクサ(MUX)73を介してデータバス
111Dに接続され、32ビ・ノドの出力がマルチプレ
クサ77を介してALU21に接続されている。スケー
リングシフタ65は命令によりプログラミングされるか
シフトカウントレジスタ(TREG I)81内に規定
されるように入力データ上にO〜16ビツトの左移行桁
送りを行う。出力のLSB(i下位ビット)はゼロで満
たされ、MSB(最上位ビット)は第1B図の一組のレ
ジスタ85内の状態レジスタ85内の符号拡張モードピ
ットSXMの状態に応じてゼロで満たすか符号拡張する
かすることができる。
桁送り能力を追加することによってプロセッサ11は数
値スケーリング、ピント抽出、拡張演算および桁あぶれ
を防止することができる。割込みとサブルーチン呼出し
中にプログラムカウンタ93の内容をセーブするために
8レベルに至るまでのハードウェアスタック91を設け
る。プログラムカウンタ93はMUX95を介してプロ
グラムアドレスバスl0IAもしくはプログラムデータ
バスl0IDからコンテキストの変化に対して選択的に
ロードされる。PO23はアドレスバス101Aに書込
まれるかスタック91上に押込まれる。割込みが行われ
ると、一定の戦略レジスタ(累算器23、積レジスタ5
1、TREGO49、TREGI、TREG2、そして
レジスタ113ではSTO,STI、PH3T、ARC
R,INDXおよびCMPR)が深部スタック上へ押込
まれ割込み復帰と共にボソブアップされることによって
、オーバーヘッドがゼロで割込みコンテキストが切替え
られる。これらレジスタのコンテキストをセーブ、する
働きをする割込みはマスキング可能である。
第1A図と第1B図に示す機能をブロック線図はプロセ
ッサ内の主要ブロックとデータ経路を概略したものであ
る。上記機能ブロックの詳細な以下に提示する。第1A
図と第1B図に使用する記号の定義についてはテーブル
A−1の内部ハードウェアの要約を参照されたい。
プロセッサアーキテクチャ−は2つの対状の大きなバス
の周辺に構築される。(即ち、プログラムバスl0IA
と101D、およびデータバス111AとIIID)プ
ログラムバスはプログラムデータバスl0ID上のプロ
グラムメモリからの命令コードと即値オペランドを担う
。プログラムメモリ61に対するアドレスはプログラム
アドレスバスl0IA上に供給される。データバスはデ
ータアドレスバス111Aとデータバス1jIDを含む
、後の方のバス111 Dは中央演算装置(CALU)
や補助レジスタファイル115やレジスタ85の如き種
々の要素をデータメモリ25に相互接続する。プログラ
ムバスとデータバス101.111は共にオンチソブデ
ータメモリ25と内外部プログラムメモリ61からのデ
ータを1回のサイクルで乗算器に運び乗算/累算操作を
行うことができる。コアアドレスデコーダ121はデー
タアドレスバス111Aに接続され、レジスタ85とそ
の他の全てのアドレス指定可能なCPUコアレジスタの
アドレス指定を行う。
プロセッサ13.15は高次の並列性を備えていて、例
えば、データがCALU15により演算中に演算が補助
レジスタ演算(ARAU)123内で実行される利点が
ある。かかる並行演算処理の結果、強力な演算操作とビ
ット操作の組が得られ、それらは全て単一の機械サイク
ル内で実行される。
プロセッサの内部のハードウェアは1サイクル16X1
6ビツトの乗算と、データ桁送り、およびアドレス操作
を含んでいる。
デープルA−1は内部ハードウェアの摘要を示す。この
摘要テーブルは、内部処理要素、レジスタ、およびバス
を備えるが、各機能群内でアルファベント化される。
テーブルA−1 装置 累算器 記号 ACC(32) ACCHQ呻 ACCLQ19 累算器 バッファ ACCB (32) 内部ハードウェア 作用 32ビツト累算器でA CCII (上部累算H)とACCL (下部累算器)の2つの 半分にアクセス可能。
ALIIの出力をストアする ために使用される。
累算器の32ビツト内容を 一時スドアするために使 用されるレジスタ。
このレジスタはALUに戻 る直接の経路を備えてい るからACCと四則演算も しくは論理演算可能であ 演算装置 ALU 補助   ARAU 演算装置 振動   ARCR レジスタ (比較) 補助   AUXREGS レジスタ (ファイル〉 る。
累算器に給電する2つの 32ビツトの入力ボートと 1つの32ビツト出力ボー トを有する32ビツトの2 の補数演算装置。
補助、インデックスおよ び比較レジスタを入力と して使用して間接アドレ スを計算するために使用 される16ビツトの無符号 演算装置。
間接アドレスを比較する ための制約として使用中 使用される16ビツトレジ スタ。
間接データアドレスポイ ンタ、−時的格納、もし くはARAUによる整数演算 処理に使用される8個の 補助   ^RP レジスタ ポインタ プロフクリビー)   BRCR カウンタ レジスタ ブlフクリピート  PAER カウンタ レジスタ ブロフクリビー)   PASR アF目開始 レジスタ バス 81M 16ビツト補助レジスタ (AIIO−API)を含むレジス タファイル。
現在選択された補助レジ スタに対するポインタと して使用される8ビツト レジスタ。
ブロックが反復される回 数に対する限定として使 用される16ビツトメモリ マツプカウンタレジスタ。
反復中のコード区画の最 終アドレスを含む16ビツ トメモリマツピングレジ スタ。
反復されるコード区画の 開始アドレスを含む16ビ ツトメモリマツピングレ ジスタ。
データをデータバスとプ インターフェース モーyエール 中央   CALC 演算装置 円形パフ77  CBCR 制御レジスタ 円形バッファ   CBERI 最終 アドレス 円形ノiフファ  CBSRI ログラムバス間でバスさ せるために使用されるバ ッファ付きインターフェ ース ALU 、乗算器、累算器、 スケーリングシフタの集 まり 円形バッファをイネーブ ル/ディスエーブルとし、 どの補助レジスタが円形 バッファにマツピングさ れるかを規定するために 使用される8ビツトレジ スタ。
円形バソファ最終アドレ スを示す2個の16ビツト レジスタ、CBERIとCBER2 は円形バッファlと2に それぞれ関連する。
円形バソファ開始アドレ 開始   CB5R2 アドレス データ ATA ノイス データ メモリ ATA EMORY データメモリ    DMA 7Fレス 即値レジスタ データメモリ ページ D P (9) スを示す2個の16ビツト レジスタ。CBSRI /CB5R2 は円形バッファ1と2を それぞれ関連している。
データをルーティングさ せるために使用される16 ビットバス。
このブロックはコアと共 に使用され特定のデバイ ス種類に規定されるデー タメモリをさす。データ メモリ空間内でアクセス されるオンチップとオフ チップメモリの双方をさ す。
1枚のデータページ内の 即値相対アドレスを格納 する7ビツトレジスタ。
現在ページのアドレスを 含む9ビツトレジスタ。
ポインタ 連結データ メモリアドレス バス ATA ADDRESS ダイナミック    DBMR ピント 操イ乍 レジスタ ダイナミック ピントポインタ REG2 ダイナミック HEGI データページはそれぞれ 128ワードでアドレス指 定可能なデータメモリ空 間の512ページが得られ る。(幾つかのロケータ ランが保留される) データメモリに対する直 接アドレスを担う16ビフ トバスで、DPレジスタと 命令のワクのLSBを連結 したもの(DMA) PLOに対する入力として 使用されるメモリマツピ ングした16ビツトレジス タ。
BITT命令に対するダイナ ξツクビットポインタを 保持する4ビツトレジス タ。
ALUに対するデータ入力 シフトカウント グ■−パル     GRHG(8) メモリ 割合 レジスタ 割込   IFRQI19 フラッグ レジスタ 割込み  IMRQf9 マスク レジスタ マルチプレクサ MIX に対するダイナミック−予 備スケーリングシフトを 保持する5ビツトレジス タ。
グローバルメモリ空間の 大きさを割当てるための 8ビツトのメモリマツピ ングレジスタ。
アイティブロー割込みを ラッチするために使用さ れる16ビツトフラツグレ ジスタ。IFRはメモリマ ソピングしたレジスタで ある。
割込みをマツピングする ために使用される16ビツ トのメモリマツピンブレ ジスタ。
1本のバスもしくは実行 装置についてオペランド 乗算器 MULTRLIER 周辺   PLU 論理装置 プリスケーラ 0UNT カウントレジスタ のソースを選択するため に使用されるバスマルチ プレクサ。
MIXは命令を介して接続 される。
16 X 16ビフトの並列乗算 器。
CALUレジスタの内容と干 渉せずにデータペ−ジ ランに対して直接長い即 値オペランドもしくはDB MHの内容の何れからかの 論理操作を実行する16ビ ツト論理装置。
ブリスケーリング操作に ついてカウント値を含む 4ビツトレジスタ、この レジスタはデータを予備 スケーリングする際に使 用される時に命令もしく 積     PREG (32) レジスタ 積     BPR(32) レジスタ バッファ はダイナミックシフトの 何れか一方よりロードさ れる。
BITとBITT命令と相俟 って命令のダイナミック ピントポインタからロー ドされる。
乗算器の積上保存するた めに使用される32ビツト 積レジスタ。
PRE!Gの高低次ワードもsp H/SPL  (アストアレジス タ高/低〉命令を使用し て個々にアクセスするこ とができる。
積レジスタの一時格納用 に使用される32ビツトレ ジスタ、このレジスタは ALUに対する直接入力す ることもできる。
プログラム プログラム カウンタ プログラム メモリ PROGDATA CQI19 RROGRAM EMORY 命令(およびMMCとMACD 命令に対するデータ)を ルーティングするために 使用される16ビフトバス。
プログラムメモリを順次 アドレス指定するために 使用される16ビツトプロ グラムカウンタ。pcは常 に実行される次の命令の アドレスを含んでいる。
pcの内容はそれぞれの命 全解読操作に続いて更新 される。
このブロックはコアと共 に使用され特定のデバイ ス種類内に規定されるプ ログラムメモリを指す。
プログラムメモリ空間内 でアクセスされるオンチ ツブとオフチップメモリ プログラム メモリ リアドレスバス 予備 スケーリング シフタ ポスト スケーリング シック 積 シフタ ROG ADDRESS PRESCALER 0ST− SCALER P−SCALER ブロックの処方を指す。
プログラムメモリ空間内 スを担う16ビソトバス。
ALu内に到来するデータ をブリスケールするため に使用される0−16ビツト の左バレルシフタ。多積 度演算用にデータを整合 させるためにも使用され る。このシフタはACCの 0−16ビツト右バレルシフ タとしても使用される。
CALUから出てゆくスケ− ルデータを後処理するた めに使用されるO−7ビツ ト左バレルシフタ。
固定点演算法を使用する 際(乗算操作中で取得さ れる)余分の符号ビット リピート カウンタ スタック 状態 レジスタ RPTCQ19 TACK STO,STl。
PMST。
BCR を除去するために使用さ れる0、1.4 ビット左シッ ク、積をスケールダウン して累算プロセス中のオ ーバーフローを回避する ために使用される6ビツ ト右シック。
一命令の反復実行を制御 するための8ビツトカウ ンタ。
割込みと呼出し中にpcを ストアするために使用さ れる8×16ハードウエア スタック。ACCLとデータ メモリ値もスタンプから ボソブアップされたもの の上に押し込まれる。
状態ビットと制御ビット を含む3つの16ビツト状 態レジスタ。
一時 被乗数 REGO ブロック      BMAR 移動 アドレスレジスタ テーブルA−2 名称 MR REG アドレス DECIIEX O−30−3 4 5 FR PMST 6 7 PTC 乗算器用のオペランドを 一時維持する16ビツトレ ジスタ。
ブロックが移動するか乗 算が累積する際にアドレ ス値を保持する16ビツト レジスタ。
メモリマツピングレジスタ 説明 保留 割込マスクレジスタ ブローパルメモリ割当レジ スタ 割込フラッグレジスタ プロセッサモード状態レジ スタ リピート力ウンタレジスタ BRCR PASR AER HEGO HEGI REG2 BMR RO RI R2 R3 R4 R5 0 1 2 3 4 5 ブロックリピートカウンタ レジスタ ブロックリピートプログラ ムアドレス開始レジスタ ブロックリピートプログラ ムアドレス終了レジスタ 被乗数用−時レジスタ ダイナミックシフトカラン ト用−時レジスタ ダイナミックビットテスト 内のビットポインタとして 使用される一時レジスタ。
ダイナミックビット操作レ ジスタ 補助レジスタ0 補助レジスタ1 補助レジスタ2 補助レジスタ3 〃   4 〃   5 R6 Al?7 NDX RCR BSRI BERI BER2 BER2 BCR MAR 7 8 9 B C D E F 補助レジスタ6 フ インデックスレジスタ 補助レジスタ比較レジスタ 円形バッファ1開始アドレ スレジスタ 円形バッファ1最終アドレ スレジスタ 円形バッファ2開始アドレ スレジスタ 円形バッファ2最終アドレ スレジスタ 円形バッファ制御レジスタ ブロック移動アドレスレジ スタ。
プロセッサ13.15は全部で64にワードのデータメ
モリ25をアドレス指定する。
データメモリ25は96にデータメモリ空間内にマツピ
ングされ、オンチッププログラムメモリが64にプログ
ラムメモリ空間内にマツピングされる。
16ピントデータアドレスバスIIIAは次の2つの方
法の1つでデータメモリ25のアドレス指定を行う。
l)直接アドレス指定モード(例えばADD 010h
)を使用する直接アドレスバス(DAB)によって、 2)間接アドレスモード(例えばADD”)を使用する
補助レジスタファイルバス(AFB)によって、 3)オペランドは即値アドレス指定モードによりプログ
ラムカウンタの内容によってもアドレス指定される。
直接アドレス指定モードでは、9ビツトのデータメモリ
ページポインタ(DP)125が512(128ワード
)ページのうちの1つを指示する。
MUX 126はコマンドによってDPポインタレジス
タ部分125のバスl0IDもしくは111Dの何れか
を選択する。命令の7つのLSB127によりプログラ
ムデータバス1010から指定されたデータメモリアド
レス(dma)はページ内の所望ワードを指示する。D
AB上のアドレスは9ビソトDPを7ビツトdllaと
連結することによって形成される。MUXl、29はコ
マンドによってARAU 123出力か連結(DP、 
dma )出力の何れかをデータアドレスバスIIIA
に選択的に供給する。
間接アドレスモードにおいては、レジスタ115内の現
在選択された16ビツト補助レジスタAR(A R,P
 )がAFBを介してデータメモリをアドレス指定する
0選択された補助レジスタがデータメモリアドレスを提
供し、データがCALU15により操作中に、補助レジ
スタの内容はARAU123を介して操作される。
データメモリアドレスマツプは、グローバルメモリイン
ターフェースを介して追加32にワード内でページング
することによって16ビツトアドレスバスの64ワード
アドレスリーチを超えて拡張することができるつGRE
Gレジスタを適当な値でロードすることによって、最高
位アドレスからスタートし下降するローカルデータメモ
リ上に追加的なメモリをオーバレイすることができる。
この追加メモリはアクティブローのBR−ビンによって
ローカルメモリから区別される。
即値オペランドを使用する場合には、命令語自体内か、
16ビツト即値オペランドの場合には、その命令語に続
くワード内の何れかに格納する。
補助レジスタ115内の8個の補助レジスタ(ARO−
AR7)はデータメモリ25を間接的にアドレス指定す
るか一時的にデータをストアするために使用される。間
接補助レジスタアドレス指定によって、命令オペランド
のデータメモリアドレスを補助レジスタの一つに配置す
ることができる。これらのレジスタはそれぞれARO〜
AR7と命名したO〜7の値をロードされる3ピント補
助レジスタポインタ(ARP)によって指示される。M
UX 144は入力がデータバス111Dはプログラム
データバス101Dに接続される。
MUX 144は命令によって操作され2本のバス11
1Dと101Dのうちの一つからARP141の値を得
るようになっている。補助レジスタ115とARP14
1はデータメモリ25、累算器23、積レジスタ51か
らか、命令内に規定された即値オペランドの何れかによ
ってロードすることができる。これらのレジスタの内容
もデータメモリ25内にストアされるか主CPUに対す
る入力として使用することができる。
補助レジスタファイル(ARO−ARP)115は第1
B図に示す補助レジスタ演算装置(ARAU)に接続さ
れる。ARAU132はレジスタ115内の現在補助レ
ジスタをオートインデックスする一方、データメモリロ
ケーションをアドレス指定することができる。+/−か
インデックスレジスタ143の内容によって索引付けす
ることができる。その結果、列もしくは行によって情報
テーブルをアクセスするにはアドレス操作用の中央演算
装置(CALU)を要しないから、それを他の操作用に
解放することができる。
インデックスレジスタ143もしくは命令レジスタIR
の8個のLSBはMUX 145を介してARAU12
3の入力の一つに選択的に接続される。ARAUI 2
3の他の入力はMUX 147によって現在補助レジス
タAR(ARPにより指示される)から供給される。
上述の如く、中央演算装置(CALU)15は、。
16ビソトのプリスケーラスケーリングシフタ65と、
16X16ビ=t トの並列乗算器27と、32ビツト
演算装置(A、LU)21と、32ビγト累算器(AC
C)23た1、追加的なシフタ169.181  (累
算器23と乗算器27の両方の出力部)を含む。この部
分はCALυ部品とその機能を記述したものである。
次のステップが典型的なAI、’U命令の実行の際に行
われる。
1)データがデータバス上のRAM25から取出される
2)データはスケーリングシフタ65と演算が実行され
るALU21を通過する。
3)その結果は乗算器23内へ移される。
ALU21に対する1人力が累算器23から提供され他
方の人力は乗算器27の積レジスタ(PREG)51.
積レジスタバッファ (BPR)185、累算器バッフ
ァ(ACCB)31からか、データメモリ25もしくは
累算器23からロードされるスケーリングシフタ65と
181から選択される。
スケーリングシフタ65は16ビツト入力がMUX73
を介してデータバス1110に接続され、32ビツト出
力がMUX77を介してALtJ2’1へ接続されるこ
とが有利である。スケーリングシフタプリスケーラ65
はC0LJNTレジスタ199をロードすることによっ
てプログラミングされるように、人力データ上に0〜1
6ビツトの左桁送りを行う。桁送りカウントは命令語内
に埋込まれた定数かレジスタTREGI内の値によって
指定される。プリスケーラ65の出力のLSBはゼロで
満たされ、MSBは状態レジスタSTIのSXM(符号
拡張モード)ピント内にプログラミングされた状態に応
じてゼロで満たされるか符号拡張することができる。
同じシフタ65はMUX73を介して累算器23からの
もう一つの人力路を備えている。この人力路を使用する
際、シフタ65は0〜16ビツトの右シフタとして働く
。このためACCの内容を1サイクルでO〜16ビツト
右へ桁送りすることができる。
シフトアウトしたビットは失われ、シフトインビットは
ゼロであるかSXM状態ビフトの値に応じて原始符号ピ
ントのコピーの何れかである。
種々のシフタ65.169、および181は数値スケー
リング、ビット抽出、拡張精度演算、およびオーバフロ
ーの防止を可能にする。
32ビツトのALU21と累算器23は広範囲の演算機
能を実行し、その多数は1回のクロックサイクルで実行
することが望ましい。−たんALU21内で演算が実行
されると、その結果は累算器に転送され、そこで桁送り
等の追加的な演算が行われる。ALUに入力されるデー
タはスケーリングシフタ181によってスケーリングす
ることができる。
ALU21はデータRAMから取り出されるか即値命令
から導き出された16ビツトワードについて演算する汎
用演算装置である。通常の演算命令の他に、ALUはプ
ール演算さえ実行可能である。上記した如く、ALUに
対する1人力は累算器23から提供され、抽入力はMU
X77により選択的に供給される。MUX77は累積器
バッファ(ACCB)31を選択するか、2次的にスケ
ーリングシフタ65の出力(データRAMもしくはAC
Cから読出される)か、3次的に積スケーラ169の出
力を選択する。積スケーラ169はMUX 191によ
り供給される。MUX 191は積レジスタPREG5
1が、積しジスタバソファ185をスケーラ169とし
て選択する。
32ビフト累算器23は2つの16ビツトを画に分割さ
れ、データバス111Dをすててデータメモリ25へ格
納する。累算器出力部のシフタ181は0〜7桁の左シ
フトを行う。このシフトはデータがデータバス111D
へ転送されて格納中に実行される。累算器23の内容は
不変のままである。累算器23の上位ワード(16−3
1ワード)に対してボストスケーリングシフタ181が
使用される場合、MSBは失われLSBは下位ワード(
10−15)からシフトインしたビットで満される。ポ
ストスケーリングシフタ181が下位ワードについて使
用される場合、LSBはゼロで満たされる。大きなダイ
ナミックなレンジを要する用途に対しては浮動小数点演
算が設けられる。NORM (正規化)命令は左シフト
を実行することによって累算器21内に含まれる固定小
数点数を正規化するために使用される。−時レジスタT
REGI 81の4ビツトは、L A CT/A DD
T/5UBT (シフトがTREGIにより指定された
累算器からのロード/加算/減算)のためにスケーリン
グシフタ65内の可変シフトを規定する。これらの命令
は数がデノーマライズされる必要がある、即ち浮動小数
点から固定小数点へと変換される必要がある浮動小数点
演算に有効である。それらは、同様にして、フィルタ内
へ移行する自動利得制御(AGC)の実行の如きアプリ
ケーションにも有効である。BITT(ビットテスト)
命令は一時しジスタTREG2195の4つのLSB内
に含まれた値に基づいてデータメモリの1ワードの1ビ
ツトをテストする。
レジスタTREG1とTREG2はデータバス111D
により供給される。MUX 197はTREGI、TR
EG2から、もしくはプログラムデータバス101Dか
らの値を選択し、それらの一つをC0UNTレジスタ1
99に送る。C0UNTレジ・スタ199はスケーリン
グシフタ65に接続され、シックの値を判断する。
累算器23の1サイクルの0−16ビツトの右シフトに
よって累算器を効率的に整合させて多積度の演算を行う
ことができる。これは累算器上の32ビット−時バッフ
ァACCBと積レジスタ上のBPRと一緒になって多積
度演算におけるCALUの有効性を向上させる。累算器
のバッファレジスタ(ACCB)は累算器を高速にセー
ブするための一時的格納場所を提供する。ACCBはA
LUに対する入力としても使用することができる。
ACCとACCBは互いにストアしあうことができる。
ACCBの内容はACCに対してALUによってACC
B (もしくはACCとACCBの双方)内にストアさ
れた大小の値と比較してパターン認識アルゴリズムに使
用することができる。例えば、数字ストリング内の最大
もしくは最小値はACCBとACCの内容どうしを比較
し、もしその条件が満足されれば、その後最小もしくは
最大値を一つもしくは両方のレジスタ内に入力すること
によって発見することが有利である。積レジスタバッフ
ァ(B P R)は積レジスタを高速セーブするための
一時格納場所を提供する。BPR内にストアされた値は
設けられたシフタ169に対するシフトが指定された累
算器に対して加算したり減算したりすることもできる。
システムの制御はプログラムカウンタ93、ハードウェ
アスタック91、PC関連ハードウェア、外部リセット
信号R3−1割込制御231に対する割込み、状態レジ
スタ、リピートカウンタによって行う。以下の節はシス
テム制御とパイプライン演算におけるこれら部品の各々
の作用を説明したものである。
′う°ロセソサは16ビツトプログラムカウンタ(PC
)93を備え、8深度ハードウェアスタック91はPC
をストアする。プログラムカウンタ93は読出し命令に
おいて内外部プログラムメモリ61のアドレス指定を行
う。スタック91は割込みとサブルーチン中に使用され
る。
プログラムカウンタ93はプログラムアドレスバス(P
AB)101Aを介してオンチップかオフチップかのプ
ログラムメモリ61のアドレス指定を行う。PABを経
て、−命令がプログラムメモリ61内でアドレス指定さ
れ、プログラムデータバス101Dを介してデータPL
A221用の命令レジスタ(IR)内ヘロードされる。
IRがロードされると、PC93は次の命令読出しサイ
クルを開始する態勢に入る。デユーダPLA (プログ
ラマブル論理アレイ)221はプロセッサ命令集会内の
命令を事項するためにMUXと全プロセッサ要素を制御
するための出力を多数備えている。例えば、デコーダP
LA221はコマンド信号をパイプラインコントローラ
225に送る。後者はパイプライン化された処理演算を
実行するための種々の出力も備えていて、プロセッサ要
素は時間調整されるようになっている。パイプラインコ
ントローラ225の出力はCALL、RETCリターン
)、IAQ(割込取得)およびIACK(割込み確認)
も含む。
データメモリ25はBLKD命令中にプログラムカウン
タ93によりアドレス指定される。プログラムカウンタ
93はデータブロックをデータメモリの一区画から別の
区画へ移動させる。累算器23の内容は“計算された飛
越し”演算を実行するためにPC93内にロードするこ
とができる。
これはBACC(累算器内のアドレスに対する分岐)も
しくはCALA (サブルーチン間接呼出し)命令を使
用して実行することができる。
新たな読取りサイクルを実行するにはPC93をPC+
1もしくは分岐アドレス(分岐、呼出し、割込みの如き
命令の場合)の何れかをロードする。
分岐が行われない特別の条件分岐の場合には、PCは分
岐即値のロケーションを越えてもう一度増分する。条件
分岐の場合には、プロセッサは条件呼出しとリターンの
全補数を有する。
プロセッサ13.15は4深度パイプラインによって演
算する。
第1B図の周辺論理装置(PLU)は制御/状態レジス
タもしくは任意のデータメモリロケーション内の多重ビ
ットを直接セント、クリア、トグル、もしくはテストす
るために使用される。PLUは累算器もしくは積レジス
タの内容に影響を与えずにデータメモリ値に対する直接
論理経路を提供する。同PLUはレジスタ内の多重制御
ビットをセットもしくはクリアしたりフラッグレジスタ
内の多重ビットをテストしたりするために使用される。
PLU41はデータバスllIDを介してデータメモリ
空間からオペランドを一つ取出し、第2のオペランドを
MUX225を介してプログラムバス101D上の長い
即値もしくはDBMR(ダイナミックビット操作レジス
タ)223の何れからか取出すことによって演算する。
DBMRは先にデータバスllIDからロードされる。
その後、PLUは2個のオペランド上の命令によって規
定されるその論理演算を実行する。
最後に、その結果はデータバス111Dを介して第1の
オペランドが取出された同じデータロケーションへ書込
まれる。
PLUはデータメモリ空間内の任意のロケーション内で
ビットを直接操作することを可能にする。
この直接的なビット操作は16ビツト長の即値をあるデ
ータロケーションに対してAND、OR。
XOR処理もしくはロードすることによって処理される
。例えば、CBCR(円形バッファ制御レジスタ)を初
期化して円形バッファ1に対してはARIを、円形バッ
ファ2に対してはAR2を使用し、しかもそれら円形バ
ッファを割込み可能としないためには、 5PLK  021h、CBCR(周辺長即値をストア
する)を実行する。
後に円形バッファ工と2を後に割込み可能とするにはo
pLK  088h、CBCR(ビット7とビット3を
CBCRにセットする) 特定レジスタもしくはデータワード内の個々のビットを
テストするためにはやはりBIT命令を介して行われる
が、1データワードはCPLK(周長即値を比較せよ)
命令により特定パターンに対してテストすることができ
る。もしデータ値が長い即値と等しければ、TCビット
は1にセットされる。もし任意のPLU命令の結果がゼ
ロであれば、TCビットがセントされる。
ビットのセット、クリア、トグル機能は長押値17)代
わりに、16ビツトダイナミツクレジスタDBMR値に
よっても実行できる。これはXPL(データに対するX
ORDBMRレジスタ);0PLCデータに対するOR
DBMRレジスタ)およびAPL (データに対するA
ND  DBMRレジスタ)の3個の命令によって行わ
れる。
プロセッサはプロセッサに割込む外部装置に対して利用
可能な16のマスキング可能なユーザ外部割込みClN
T16−INTI)を有する。内部割込みはシリアルボ
ー)(RINTとXINT)、タイマ(TINT)、パ
リティチエッカ−(PNTLとPNTH) 、およびソ
フトウェア割込み(TRAP)命令によって発生する。
割込みは最優先順位を有するリセッ) (R5−)と最
低優先順位を有するlNT15によって優先順位をつけ
られる。
割込み制御ブロック231はプログラムデータバスl0
IDを供給する。テーブルA−5には内外部割込み全体
についてのベクトル位置と優先順位が示されている。ソ
フトウェア割込みについて使用されるTRAP命令は優
先順位がつけられないが、固有のベクトル配置を有する
ためここに含ませておく。それぞれの割込みアドレスは
2つのロケーションによって隔てられ、分岐命令がそれ
らロケーション内に格納できるようになっている。
テーブルA−5 名称  ロケーション 割込みロケ−シコンと優先順 優先順位    作用 外部 第1B図では、バスインターフェースモジュールBIM
241がデータバス111Dとプログラムデータバスl
0ID間に接続される。BTM241はコマンドによっ
てデータをバス101Dと111D間で転送することを
可能ならしめ、古典的なバーバードアーキテクチャかフ
ォン/イマンアーキテクチャの何れかと比較されるシス
テムの構造上の柔軟性を大きくする。
処理装置と部品回路を含み、プロセッサ13.15に対
する改良によって可能になる本発明のシステムを以下に
論する。汎用デジタル信号処理用途の場合、これらのシ
ステムはコンボリューション、相関化、ヒルベルト変換
、高速フーリエ変換、適応フィルタリング、ウィンドウ
ィング、および波形生成を実行するようにすることが有
益である。
ある場合には丁度列挙したばかりの一般的アルゴリズム
を伴うその他のアプリケーションとしてはボイスメール
、音声ボコーディング、音声認識、話者確認、音声向上
、音声合成ならびに音声テキストシステムがある。
本発明による計測によって本発明が適当に活用できる用
途においてスペクトル解析器、関数発生器、パタニンマ
ッチングシステム、サイスミツク処理システム、過渡分
析システム、デジタルフィルタ、および位相ロックルー
プの向上が実現される。
本発明による自動制御システムによって、エンジン制御
、振動分析、スキッドのないブレーキング制御、適応乗
車制御、音声コマンド、自動変速制御が好適に実現され
る。
航海、飛行、軍事分野では本発明システムは改善された
グローバル位置決めシステム、プロセッサ支援航海シス
テム、レーダ追跡システム、プラットホーム安定化シス
テム、ミサイル誘導システム、安全通信システム、レー
ダ処理その他の処理システムが提供される。
本発明によるシステムは更に、全体としてコンピュータ
ディスクドライブモータコントローラ、プリンタ、ブロ
ック、光デイスクコントローラ、サーボ機械制御システ
ム、ロボット制御システム、レーザプリンタ制御および
モータ制御システムを提供することができる。これらの
制御システムの幾らかはロボットコントローラ、自動組
立装置、検査装置、産業駆動装置、数値制御器、コンピ
ュータ化さ°れた電動工具、機密保護アクセスシステム
、および電力線モニタの如き産業環境に使用することが
できる。
本文中に開示の原理によって想定されるテレコξユニケ
ーション発明は反響消去装置、ADPCMトランスコー
ダ、デジタルPBX、回線中継器、回線マルチプレクサ
、モデム、適当イコライザ、DTMFエンコーダとDT
MFデコーダ、データ暗号化装置、デジタルラジオ、セ
ルラー電話、ファクシごり、ラウドスピーカ電話、デジ
モル音声hi間(DST)システム、パケット交換シス
テム、ビデオ会議システム、およびスペクトラム拡散通
信システムを包含する。
図形画像分野では、本文中に開示の原理と装置方法にも
とづき更に、光文字認識装置、3次元回転装置、ロボッ
ト視覚システム、映像伝送圧縮装置、パターン認識装置
、画像向上装置、準同形写像処理装置、ワークステーシ
ョン、およびアニメーションシステムならびにデジタル
マツピングシステムを包含する。
本発明により想定できる医療上の発明は例えば、補聴器
、患者モニター装置、超音波装置、診断用具、自動補綴
ならびに胎児モニタ、を包含する。
本発明による消費財はスタジオやテレビステーションで
使用される高鮮明度テレビ受信機や伝送装置の如き高鮮
明度テレビ装置を包含する。更に、本発明の消費財とし
て音楽シンセサイザ、ソリソドステート応答機、レーダ
発見器、電カニ具、玩具、ゲームを包含する。
本文中で想定されるシステム面は優れたシステムアーキ
テクチャ、システム性能、システム信頼性と経済性を備
える点を強調しておくべきであろう。
例えば、第2図において本発明による産業工程と保護目
的制御システム300は特定の産業環境に固有の物理学
的変数を検知する産業用センサ301.303を包含す
る。センサ301と303からの信号は、第1B図の改
良PLU(並列論理装置)を備える第1A図と第1B図
の信号処理装置11に提供される。インターフェース3
05はレジスタロケーションA、B、C,D、E、F。
Gとドライバ(図示せず)を備える。上記レジスタロケ
ーションはドライバと各ライン307を介してモータ3
11により駆動される産業処理と、リレー313により
制御されるリレー操作装置と、ソレノイド弁315を含
む各種バルブに接続される。
産業上の処理と保護目的制御環境では、種々の工学上と
経済上の問題が相反して作用する。もし産業工程のスピ
ードとスルーブツトが高い場合には、リアルタイムで発
生しセンサ301と303により検出される比較的急速
な変化の重要性を解釈するために装置11の処理能力に
対して重い負担が課せられる。他方、センサ301と3
03により検出される現実世界の条件に応するために必
要な制御機能も迅速に行う必要がある。
PLU41を追加して装置11が単一の半導体チップに
製作される時の余分の費用を無視しうるようにして装置
11に対する競合する要求を解決することが有利である
。このようにして、産業上の処理速度、保護目的の制御
の迅速さ、制御の正確さは相当向上させることができる
第3図において、本発明の自動車321は車輪と車軸を
取付けるシャシ−323と、エンジン325、サスペン
ション327、ブレーキ329を備える。ボデー331
はシャシ−323に対してサスペンションを備える乗客
用コンパートメントを形成する。
アクチブなサスペンション335はばねとアブソーバサ
スペンションの技術を増加し、ビットA。
B、C,D、E、F、G、H,I、J、に、L。
M、Nに対するロケーションを有するインターフェース
341を介して制御される。並行計算プロセッサ343
は第1A図と第1B図中に開示されたタイプの計算装置
を使用し、データバス351Dとプログラムデータバス
361Dに接続される少なくとも一つの並列論理装置4
1を備える。多数のセンサはセンサ371.373.3
75を包含し、それらは、サスペンションの機能、エン
ジ、ンの動作、スキツドに抗する制御作用をそれぞれ監
視する。
エンジン制御システム381はインターフェース341
のロケーションの幾つかに接続される。
同様にアンチスキンド制動制御システム383がインタ
ーフェース341のそれ以外のビットに接続される。自
動車の信頼性、安全性、乗客の快適さ、経済性といった
多数の考慮すべき問題は従来の自動車システムに対して
重い負担を課している。
第3図の発明では、2自動車321は、本発明の極度に
柔軟な平行処理と制御性の利点によってこれら領域の何
れもしくは全てにおいて改善されている。
第2図と第3図のシステムと本文中に述べるシステムに
使用される装置11の如き装置は装置性能の向上の問題
に取組むだけでなく、ユーザのシステム性能全体とコス
トを規定する産業上システムの問題点を解決するもので
ある。
実施例の装置11は命令を50ナノセカンドで実行し、
半導体製作による改良によって更に命令速度を可能にす
ることができる。オンチッププログラムメモリはRAM
に依拠し、安価な外部メモリからプログラムをブートロ
ードしやすくしである。他のバージョンは更にコストを
低減するためにROMに依拠することが好適である。
第4図のデジタル制御モータシステム400は第1A図
と第1B図の装置11を有するデジタルコンピュータ4
01を備える。デジタルコンピュータ401は出力μ(
n)を零次ホールド回路ZOH403に供給する。ZO
H403は産業用機械、家庭用機器、軍事設備、その他
の応用システム環境において制御出力μ(1)をDCサ
ーボモータ405に供給する。
サーボモータ405の入力μ(1)に対する作業上の応
答はy (t)で示される。センサ407はモータ出力
y (t)のトランスジューサであって、サンプラ40
9に送り、それは今度はサンプリングされたデジタル出
力y (n)を割込ラインINT−を介して減算器40
1に供給する。人間によるもしくは自動監視制御からの
基準人力γ(n)がもう一つの人力として減算器411
に外部供給される。その後、誤差e (n)がデジタル
コントローラ401に送られループを閉じる。装置11
はコントローラ401に対して第2図におけるようなサ
ーボモータの他に他の要素を処理制御するための高いル
ープ帯域幅と多重機能性を付与する。
装置11のゼロオーバヘソドの割込みコンテキスト切替
えによって帯域幅は更に拡大され、ポーリングアーキテ
クチャ−に対する魅力的な代替手段を提供する。
第5図において、多変数状態コントローラ421は装置
llのプロセンサを用いて高次アルゴリズムを実行する
。状態コントローラ421は基準人力γ(n)を受取り
、出力μ(n)をモニタ423に供給する。多重電気変
数(位置X1、速度X2、電力X3、トルクX4)が状
態コントローラ421に帰還される。4変数Xl−X4
 (例えば線形結合形をとる)の任意の1つもしくはそ
れ以上を各種の操作目的に制御することが望ましい。シ
ステムは制御された速度もしくはトルクアプリケ−シラ
ンを実行することが可能で、ステップモータと可逆モー
タを運転する。
第6図において、モータ431はサンプラ433により
検出されサンプリングされて動作する。プロセッサ43
5は装置11を含み、サンプラ433により割込み駆動
される。装置433により判断される速度情報は第1A
図と第1B図に関して述べたような改良プロセッサ43
5に帰還される。
プログラムメモリ61(図IA)におけるソフトウェア
は評価アルゴリズムプロセス437をして実行される。
プロセス437は速度、位置、電流の情報をプロセス4
35の状態コントローラプロセス439に提供する。デ
ジタル出力μ(n)は出力として状態コントローラ43
9から零次ホールド回路441へ供給され、後者は今度
はモータ431を駆動する。
モータはソリッドヌテート電子スイッチがブロック43
1内のコア、コイル、ロータと関連するブラシレスDC
モータであることが望ましい、第4−6図のシステムは
シャフトエンコーダ、ホール効果光ロータ位置検出と巻
線からの位置の逆起電力検出法を備えている。
第7図において、ロボット制御システム451は、ロボ
ットアーム455端にモータ駆動の把持機構453を備
えている。ロボットアーム455は回転軸457.1,
457.2,457.3,457.4を備える構造をし
ている。アーム455上の関節点459.1,459.
2,459.3,450.4にはセンサと高応答性の正
確に制御可能なモータが配置される。
かかる多数のモータとセンサをロボットアーム機構45
5を正確に位置決めし活用するために使用することが望
ましい、然しなから、上記多数のセンサとモータはシス
テム全体とコントローラ461に対して競合する要求を
課する。コントローラ461は第1A図と第1B図の装
置とシステム451の割込み駆動アーキテクチャ−を含
めることによってこれらのシステム要求を解決する。
コントローラ461はI10インターフェース463と
相互に交信する。後者はロボットアーム455に対する
並列論理装置41によってビット操作と共に、A/D変
換とD/A変換を実行する。
インターフェース463は航行モータ467とロボット
アーム455と把持機構453と関連するセンサから位
置と圧力の応答を受取る。また、インターフェース46
3はサーボアンプ465を経てロボットアーム455の
各モータ467に制御コマンドを供給する。
コントローラ461はスタティックラム(SRAM)と
プログラマブルリードオンリーメモリ(PROM)と関
連したメモリ467を有する。
低速の周辺装置469はコントローラ471と関連し、
それらはコントローラ461のページ境界に敏感な待機
特性によって効率的に格納される。
コントローラ461は安全制御装置475に応答するシ
ステム管理プログラムCPU473によって、それに供
給されるハイレベルコマンドに応答する。システム管理
プログラム473はIloとR3232ドライバ475
を介してコントローラ461と交信する。
本発明のデジタル制御システムは以前には利用できなか
った制御精度、速度、経済性といった性能性の利点を可
能にする。もう一つの例として、ディスクドライブは、
スピンドルモータ装置により高速で回転する情報ストア
ディスクを備える。
別のアクチュエータと呼ばれる制御によって読取り/書
込みヘッド要素を情報ストアディスクに対して整合させ
る。
実施例は更に、システム処理と診断操作と共にアクチュ
エータ制御とスピンドルモータ制御の双方に対してシン
グルチップとする解決方法を提供することさえ可能であ
る。コントローラ461に対して過重な負担を加えずに
精巧な機能を内蔵させることができる。コントローラ4
61内にはデジタルノツチフィルタを設けることによっ
て機械的共振を消去することができる。状態評価器は速
度と電流を評価することができる。カルマンフィルタは
センサのノイズを低減する。適応制御によって温度の変
動と機械的振動を補償することができる。装置11は更
に、スピンドルモータ速度を制御するためにオンチップ
PWMのパルス幅変調出力を提供する。テープドライブ
、プリンタ、ブロック、光デイスクシステムにおいても
同様な作用を組込むことが容易である。本発明のデジタ
ル制御によって高速でより正確な速度制御が得られると
共に、それと匹敵するコストでI10技術内の高速アク
セスを実現することができるため当該技術水準を高める
ことができる。
ミサイル誘導システムにおいては、本発明の操作能力の
向上によって、ミサイルシステムのより正確な誘導が可
能になり、作業目的を達成するために必要な高価なミサ
イルの数を低減することができる。更に、プロセッサチ
ップが小数でも等しい性能を実現できるため、軽量とな
り特徴を豊かにペイロードを向上させることが可能にな
る。
第8図において、本発明の衛星テレコミュニケーション
システムは250ミリセカンドの遅れを伴う衛星伝送路
によって通信する第1のステーション501と503を
備えている。遠端電話505と近端電話507は、それ
ぞれハイブリッド509と511により地球ステーショ
ン501と511に接続される。ハイブリッド509と
511は各地球ステージジン501と503に対して8
ξリセカンド遅延させられる。従って、遠端と近端の1
1話505.507間に満足のゆくテレコミュニケーシ
ョンを可能にするにはエコー消去が必要である。更に、
多数の電話会話回路を一時に供給する能力が必要となる
。これはテレコミュニケーション設備に対して極端な処
理上の負担を課するものである。
第9図において、実施例のエコーキャンセラ515を5
11の如き各ハイブリッドと関連させることによって通
信回路の送信を改善している。
装置11はエコー消去アルゴリズムを高速で実行すると
共に、チップあたり衛星通信数をより多く経済的に行え
るようになっている。
もう一つのシステム実施例は改良されたモデムである。
第10図において、モデム送信機としてプロゲラごソゲ
された装置11内の演算のプロセス線図はコーディング
ステップ527がその後に続くスクランブルステップ5
25を含む。同ステップ525では補間手Vt529.
531に対してそれぞれ直角デジタル信号1  (nT
b)とQ (nTb)が提供される。デジタル変調計算
533と535では、補間された直角信号と、それぞれ
三角法のコサイン値とサイン値を与えるリードオンリー
メモリ (ROM)からの予めストアされた定数との乗
算が行われる。変調信号はその後加算ステップ537で
加算される。装置11に接続されたD/A変換器はステ
ップ539で変調信号をD/A変換する。係数01によ
る利得制御がその後モデム伝送中に行われDAAに送ら
れる。
第1!図では、もう一つの装置11を使用するモデム受
信機がDAAからアナログ通信信号を受取る。A/D変
換器521は装置11を使用するデジタル信号プロセッ
サ向けに情報をデジタル化する。高速のもくはデジタル
変換は従来のプロセッサの入力処理に対して重い負担を
課す。DSPllはオーバヘソドがゼロの割込みコンテ
キストを提供することによって−A/D 521の如き
デジタル化要素からの割込みを極端に効率的に行うと同
時に、モデムアルゴリズムを実行するために強力なデジ
タル信号処理計算能力を備えるようにすることが望まし
い、装置11の出力は出力D (nT)を供給する汎用
同期非同期送受信機(USART)523に供給される
第12図において、第11図のシステムによるモデム受
信のプロセス線図は、サンプリング周波数fsでA/D
変換を行う信号s  (t)を供給するDAAから受信
直後に係数02により自動利得制御する操作を伴う。デ
ジタル化信号はS (nfs)であって、個々の自動利
得制御が後続するデジタルフィルタリングステップBP
F IとBPF2はより行われる、第1は第2の帯域フ
ィルタを伴うデジタル処理用に供給される。復調アルゴ
リズムによって2個の復調信号1 ’  (nTs)と
Q ’  (nTs)がつくりだされる。搬送波回収用
に使用されるこれら2個の信号■′とQ′とは復調アル
ゴリズムに帰還される。同時に、I′とQ′とはデシジ
ョンアルゴリズムに供給されクロック回収に応じて処理
される。デコーディングプロセス551はそのデシジョ
ンアルゴリズムに従う。デコーディング55!の次には
デスクランブルアルゴリズム55が続く。同アルゴリズ
ム55はPLU41による集中的なビット操作が伴い入
力信号d (nT)を回復する。
第12図に示すように、モデム受信アルゴリズムの数多
くのステツプは集中的な多数の計算能力とPLU41に
より提供されるビット操作とにより、単一のデジタル信
号処理装置11によって行うのが有利である。
第13図において、装置11を組込んだ計算装置561
は、インターフェース565を介してホストコンピュー
タ563と共働する。高容量の外部メモリ563がイン
ターフェース569によりコンピュータ561と境界を
接している。コンピュータ561は周辺ラッチ571と
573を介して双方向パルス符号変調(PCM)通信を
サポートすることが有利である。ラッチ571はシリア
ル/パラレル変換器575に連結され、外部装置577
からのPCM通信を受信する。コンピュータ561は、
ラッチ573とパラレル/シリアル装置579を介して
交信し、シリアルPCMデータの流れを外部装置577
に供給する。
第14図において、ビデオ画像システム601はROM
603とRAM605によりサポートされた装置11を
備える。データ収集センサ607.1〜607.nは、
人力を変換器609に送り、後者はその後、大量のデジ
タルデータを装置11に供給する。第14図は、ALU
21の累算器23と、乗算器アレイ53と、積レジスタ
51とを強調したもので、ARAUI 23を含むアド
レス指定装置を有する。制御要素615は全体としてデ
コーダPLA221と第1A図のパイプラインコントロ
ーラ225を示したものである。オンチップI10周辺
装置(図示せず〉は並外れて高品質の出力をビデオ表示
装置619は供給するバス617と交信する。監視人出
力l10621も装置11に設けられる。
装置11のアドレス指定能力が優れているため、命令に
よって積を積レジスタ51から直接アドレス指定回路1
23へ転送し転送中に任意のメモリロケーションをバイ
パスするための制911615が実行される。メモリマ
ツピングのため、第1A図と第1B図の任意の対の計算
コアレジスタがアクセスされ、それらの図上のレジスタ
に至る矢印にかかわりなく、データバス111Dを介し
てそれらの間でメモリバイパス転送を行うようにするの
が有利である。装置11の乗算能力がアドレス指定作用
中で活用されるために、回路は少なくとも3つの次元に
よりメモリ内にアクセスできるエントリーを有するよう
なアレイを電子メモリ605内に確立する。ビデオデイ
スプレィ619は装置11による多次元アレイ処理から
発生する出力を表示する。メモリ605が多次元アレイ
内に必ずしもある必要はなく、アドレス指定が装置11
によって迅速に実行され、情報が要求に応じてあたかも
それぞれ多数アレイ次元を表わす変数によって直接アク
セス可能であるかの如くアクセスできるようにすること
はいうまでもない。例えば、アドレス次元A1.A2.
A3を有する3次元立体アレイは等式N! XA3+N
XA2+AIに従ってアドレス指定できるようにするこ
とが適している。2次元アレイでアドレス指定目的に(
よ第1A図のレジスタ199からの索引カウントに従っ
て単純に反復加算するだけで十分である。然しなから、
3次元とそれ以上の次元を収納するには、同プロセスは
乗算器53の積能力を導入することによって相当迅速に
処理することができる。
第15図と第16図はそれぞれ本発明のビデオ処理装置
の機能指向性のハードウェアブロック指向線図を示す。
これらシステムに対するアプリケーションは新たなワー
クステーション、コンピュータインターフェース、テレ
ビ製品、および高鮮明度テレビ(HDTV)製品を提供
する。
第15図では、ホストコンピュータ631は装置11に
よる数値処理に対するデータ入力を提供する。ビデオビ
クセル処理633の次にはメモリ制御処理635が続く
。ビデオデイスプレィのためのCRT制御機能637は
数値処理639、ビクセル処理633およびメモリ制?
211635と調整されている。メモリ制御635処理
からの出力は、フレームバッファメモリ641に供給し
た後、シフトレジスタ643に供給される。フレームバ
ッファメモリとシフトレジスタ641と643は、テキ
サスインストルメンツ社の7MS4161により製作す
ることがふされしい。もう一つのシフトレジスタ645
は、ビデオ情報をシフトレジスタ643からカラーパレ
ット647へ供給する。
カラーパレット647はCRT制1637により制御さ
れたデイスプレィ649を駆動する。カラーパレット6
47は7M34070が適当である。
第16図において、ホスト631はDSPマイクロコン
ピュータ653として動作する第1の装置へ信号を供給
する。DSP653はPROM、EPROM、SRAM
のスタティックメモリを含むメモリ651によりサポー
トされる。制御、アドレス、データに関する情報はGS
P (図形信号プロセッサ)655として動作するDS
P653と第2の装W11間の双方向通信路によって供
給される。GSP655はカラーパレット647とデイ
スプレィインターフェース657の双方を駆動する。イ
ンターフェース657は更にカラーパレット657によ
り駆動される。第16図の装置11とシステムは全体と
して所要機能にふされしい適当なりロック速度で動作す
ることが理解できる。装置11はミクロンおよびサブミ
クロン単位で製作し、特定用途に対して必要とされる処
理速度をサポートするようにする。処理能力を増加させ
るための高鮮明度テレビ装置は高いクロック速度を使用
するだけでなく本文に開示の回路を構造的に改善するこ
とによってもその条件を満たすことができると考えられ
る。
第17図において、本発明の自動音声認識システムはマ
イク701を備え、その出力はサンプルホールド(S/
H)回路703によりサンプリングされた後A/D回路
705によりデジタル形に変換される。割込み駆動され
る高速フーリエ変換プロセッサ707は装置11を使用
し、マイク701からのサンプリングされた時間領域入
力を音の周波数スペクトルを表わすデジタル出力へ変換
する。このプロセッサ707は、上述したように一部は
オーバーヘッドゼロの割込みコンテキスト切替特性、条
件附命令、およびメモリアドレス空間内にマツピングさ
れた補助アドレスレジスタのためにすこぶる効率的であ
る。
プロセッサ707は、各スペクトルを、更にもう一つの
装置11を組込んだ音声認識DSP709に提供する。
音声認識DSP709は現在既知の、もしくは後に開発
される適当な音声認識アルゴリズムを実行する。例えば
、テンブレートマチングアルゴリズムでは、乗算、加算
、最大最小決定を伴う多数の計算が実行される。装置1
1はそのシリーズの最大/最小関数アーキテクチャ−に
よってかかるアルゴリズムを迅速に実行するに適してい
ることが理想的である。音声認識DSP709は出力を
システムバス711に供給する。ROM713とRAM
715とは音声認識DSP709により提供されるペー
ジ境界上のソフトウェア待機状態のめたにシステムを効
率的にサポートする。
音声認識DSP709に応答する音声シンセサイザ71
7からの出力はラウドスピーカその他の適当なトランス
ジューサ719に供給される。
システムl10721は、プリンタ、テープ、ハードデ
ィスク、等の文書作成装置723にダウンロードする。
ビデオ陰極管(CRT)デイスプレィ725は第15.
16図に関して既述したようにバス711から供給され
る。キーボード727は時々、人間による監視入力をバ
ス711に提供する。産業上その他の音声認識プロセス
制御用途において、もう一つの装置11との制御インタ
ーフェース729はバス711に接続され、今度は上記
第2.3,4.5.6図のビット操作と原理に従ってモ
ータ、バルブ、その他のサーボ機械要素731に対する
出力を供給する。
音声認識にもとづくデジタルフィルタ補聴器においては
、音声認識DSP709から変換された音声はD/A変
換器735によりD/A変換されラウドスピーカ737
を経て出力される。同じブロン2りの鎖701,703
.705.707.709.735.737は、テレコ
ミュニケーションにおいて、音声認識によるイコライジ
ング、フィルタリング、帯域幅圧縮についても適用でき
る。
先端音声処理システムでは、字句アクセスプロセッサ7
39は音声認識DSP709の出力から導き出された音
声要素表示に対する記号操作を実行し、任意の適当な字
句アクセスアルゴリズムに従って節、単語、文章を作成
する。
トップダウンプロセッサ741は、音声のあいまいさの
解決がある場合に入力音内に含まれる情報をしのぐとい
う原理に基づいてトップダウン処理アルゴリズムを実行
する。従って、光センサ743や圧力センサ745の如
き非音響センサが入力システム747に供給され、後者
はその後バタン認識プロセッサ749を割込み駆動する
。プロセンサ749はシステムバス711を直接供給す
ると同時に、トップダウンプロセッサ741をアクセス
して、音声認識や、パターン認識、人工知能用途を向上
させる。
装置11は第17図の音声認識装置の全てのレベル、例
えば、ブロック707.709.717.721.72
5.729.739.7411747.749において
処理能力を著しく向上させる。
第18図は保安通信のための暗号を有するボコーダ−モ
デムを示す。電話771は電話線773上で保安モード
で交信する。DSPマイクロコンピュータ773は電話
771に接続されてシリアルデータ773をブロック7
75に提供する。ブロック775は区画777において
ボコーダ関数を、ブロック781において暗号をデジタ
ル化する。ブロック779と783におけるモデムアル
ゴリズム処理は第10図と第12図に関して上述した。
ブロック783はシリアルデータをA/D、D/A装置
785間で送受する。装置785はアナログ通信をDA
A787に対して提供する。第1A図と第1B図の装置
11の処理特性が著しく向上するためにブロック775
内に必要とされるチップ数を少なくすることができ、そ
のため第18図により装置のコストを低減することがで
きる。場合によっては装置11の著しい処理能力によっ
てより先進的な暗号手続を実行することが容易である場
合もある。従って、第18図においては、装置11は機
能ブロックの各々の機能性を向上させたり、小数のチッ
プで従って全体の製作費がより少なくしてそれと同等の
機能性をもたせるように使用することができる。
TMS320Cj!xユーザ便覧、TMS 320C2
Xユ一ザ便覧、および第3世代TMD320ユーザ便覧
においてテキサストンストルメンツ社製のDSPが3つ
述べられているが、その何れも本文に参照用に組込まれ
ている。同様にして、米国特許第4,577.282号
と第4.713,748号も本文中に組込んである。
第19図は第1B図の並列論理装置41の動作を示す。
並列論理装置41  (PLO)によってCPUが計算
装置15内の累算器の如きレジスタの何れにも影響を及
ぼさずに、メモリ内にストアされた値に対して直かに論
理演算を実行することが可能になる。論理演算は1命令
中の任意のビット数をセットしたり、クリアしたリドグ
ルしたりすることを含む。PLUは2回の命令サイクル
でリード−修飾−ライトの命令を実行する。殊に、PL
O41はオンチップかオフチップの何れかのRAM25
内のロケーションをアクセスし、それに対してビット操
作を実行した後、その結果をデータが得られたRAM内
のロケーションに戻す。以上の操作の全てにおいて、累
算器は影響を受けない。積レジスタは影響を受けない。
累算器バッファと積レジスタバッファACCBとBPR
は影響を受けない。従って、計算装置を相当スローダウ
ンさせるような時間のかかる演算はこの重要な並列論理
装置PLO41を設けることによって回避される。構造
的には、PLUはその人力から出力まで直流する論理で
あって、デコーダPLA221により制御され、PLO
41の論理内部の特定ゲートを割込み許可禁止して以下
に示す命令を実行する。
APL、K   DBMRもしくは定数をデータメモリ
値とAND演算する。
CPL、K   DBMRもしくは定数をデータメモリ
値と比較する。
OPL、K   DBMRもしくは定数をデータメモリ
値とOR演算する。
5PLK、K  長押値をデータメモリロケーションに
ストアする。
XPL、、K   DBMRもしくは定数をデータメモ
リ値とXOR演算する。
ビット操作は1)1ビツトセツト、2〉 1ビツトクリ
ア、3)1ビソトトグル、4)1ピントをテストしそれ
に従って分岐する、操作を行う。またPLOはCPUレ
ジスタもしくは状態ピントの何れの内容にも影響を及ぼ
さずにこれらビット操作処理をサポートする。また、P
LUは長押値を有するデータメモリロケーションに対し
て論理演算を実行する。
第19図において、パートAはXの任意ビット数を有す
るメモリロケーションを示す。バートBにおいて、5P
LK命令によって1メモリワード内の任意のビット数を
任意のメモリロケーション内に書込むことができる。パ
ートCにおいて、OPL命令によって1メモリワード内
の任意のビット数をワード中の他のビットに影響を及ぼ
さずに1に設定することができる。バー)Dにおいて、
APL命令によって1メモリワード中の任意のビット数
をワード内の他のビー、トに影響を及ぼさずにゼロにク
リアしたリセットしたりするこLができる。バートEに
おいて、XPL命令に4よって、1メモリワード内の任
意のビット数をそのワード内の他のビットに影響を及ぼ
さずにトグルすることができる。バートFにおいて、C
P L命令はアドレス指定されたメモリロケーションを
修飾せずに所与のワード(例えば16ビツト)をアドレ
ス指定されたメモリロケーションと比較対照する。
比較機能は特定のメモリロケーション上での比較につい
ては非破壊的排他OR(XOR)を見做すこともできる
。もし比較によって所与のワードがアドレス指定された
メモリワードと等しいことが示されるならば、TCビッ
トはlにセットされる。
TCビットは第1B図のレジスタ85内のSTIレジス
タのビット11である。個々のビットのテストはB I
 T’とBTTT命令によって実行される。
構造的には、P L O命令の存在は第1A図のデコー
ダPLAとPLO41の論理が特定の回路を含んでいる
ことを意味する。種々のPLυ命令が命令レジスタ(I
R)内にロードされると、それらはデコー・ダPLA2
21により信号に解読されてPLTJ41の論理内のゲ
ートを割込み許可禁止することによって命令が指示する
処理が現実に実行される。
ビットパターンの動的な配置をサポートするために、命
令は長い即値を使用する代わりにレジスタ値についてメ
モリワードに対する基本的ピント演算を実行する。DB
MRはメモリマンピングされるが、そのことは構造的に
はデータアドレスバス111AからのDBMR223の
アドレス指定を可能にするデコーディング回路121 
(第1B図)が存在することを意味する。添字Kを壷金
(例えばAPLK)につけて命令がDBMRの代わりに
長い卸値を演算中であることを示す、添字(例えばAP
L)が存在しないことは命令がDBMRについて処理中
であることを示す。DBMRの選択はパイプラインコン
トローラ225により制御されたパイプラインタイミン
グによってデコーダPLA221からその選択入力が制
御される第1B図のMUX 225により実行される。
長即値は命令の一部としてプログラムデータバスから到
来する値である。“即値”とは値がプログラムデータバ
スから到来中であることを意味する。“長即値”とは全
ワード範囲の値が供給中であることを意味する。
長即値はり一ドオンリメモリ (ROM)から取得され
るから変更できない場合が多い、然しなから、1命令シ
ーケンスにおいて論理演算を変更できるようにすること
が望ましい場合には、ダイナミックビット操作用ビット
レジスタをその目的のために設ける。
PI、U41によってデータメモリ空間内の任意のロケ
ーションに対して並列ビット処理を行うことができる。
このことによって、制御フィールドの集中的ビット処理
の必要条件を収納するすこぶる高能率のビット処理が可
能になる。本発明のビット処理は他の用途の中でもエン
ジン制御、サスペンション制御、アンチスキッド制動、
プロセス制御、等の自動車制御に容易に適用できる。ビ
ット処理はビットをオンオフすることによってリレーで
オンオフに切替え、エンジンを始動させたり、スピード
アソブしたり、サーボ制御でモータに対する利得段階を
上昇させたりすることによってソレノイドを閉じたり信
号を強化したりすることができる。先端的マイクロ制御
アプリケーションに必要とされる複雑な演算はピント処
理による競合なしに装置11に対して実行することがで
きる。
ビット処理のアブリケーシッンは更にモデムにおけるス
クランブルを含む。もし一定のビットパターンがモデム
内に十分の周波数や位相変化を供給することができない
ならば、フェーズクロックループとモデム受信機内に搬
送波を維持することは困難であるか不可能である。かく
して、モデム内ノボークロックと搬送波フェーズロンク
ループはデジタルフィルタの各々に十分だが大きすぎな
いエネルギーが存在するような形をとることになる。ス
クランプリングはシリアルビットの流れに対してXOR
処理を行う。PLU41はこの処理をはなはだ効率的に
実行する。装置fllの他のCPUレジスタはPLU処
理には関係しないがら、これらのレジスタはPLUがそ
の命令を実行しようとする場合にセーブする必要がない
。スクランブル処理の場合、データパターン内にXOR
処理されるビットは他のビットの関数であるから、任意
の所与のボー期間内に必要とされるXORを実際に実行
するには1つ以上の処理が必要となる。
並行論理装置の場合、これらの操作はレジスタ資源を使
用せずに計算処理と平行して実行することができる。
上記した如く、PLUは命令デコーダ221と共に、命
令を受取るためにプログラムバスに接続され命令の少な
くとも幾つかに従って論理演算を実行するためにデータ
バスに接続されて論理回路の一例として作用する。上記
論理演算は電子計算装置とは独立にデータメモリロケー
ションの少なくとも一つに影響を及ぼし、累算器には及
ぼさない。命令の幾つかでは、論理演算は選択されたデ
ータメモリロケーションにおけるデータワード内の他の
ビットには影響を及ぼせずに、その選択データメモリロ
ケ−シリンのデータワード内の一つに特定ビットをセッ
ト、クリア、トグルする操作を含む。
DBMR223の場合、PLU41がデータバスからデ
ータを受取るために接続された第1の入力と、データを
データバスに送るための出力と、データバスもしくはプ
ログラムバスの何れか一方から1ワードを受取るべく選
択的に動作可能な第2の入力とを備えるようにした改良
論理回路が更に一つ設けられている。マルチプレクサ2
25は選択的に動作可能な要素として働く。例えば、任
意のアドレス指定可能なレジスタもしくはメモリロケー
ションの内容はDBMRにストアできる。
MUX275がDBMRを選択する時、PLUはセット
、クリア、トグル等のDBMRに基づいた論理演算によ
って修飾されたデータバス111Dから1ワードの内容
をデータバス111Dに送る。
MUX 225がプログラムデータバス101Dを選択
する場合、論理演算が依拠する長即値定数が選択される
さて、割込み制御とコンテキスト切替えについて戻ると
、第20図は4つのインターフェース801.803.
805.807を備えるDSP装置11を含むシステム
を示す。セッサもしくはトランスジューサからのアナロ
グ信号はA/D変換器809によってデジタル変換され
、インターフェース801を経てDSPIIへ供給され
る。
各々の変換が完了すると、割込み信号lNTlがA/D
変換器809からDSPIIへ供給される。
DSPIIはインターフェース803を経て内部SRA
M811、ROMとEPROM813および外部メモリ
815によりサポートされる。DSPIIの出力はイン
ターフェース807を介してD/A変換器817に供給
され出力制御される。
光ホストコンピュータ819がDSPIIの割込み入力
INT2−に接続され、インターフェース805を介し
てデータを交信する。他の割込みに基づくシステムは第
4.6.11.14.17図に示す。
さて、割込みやその他のコンテキスト変更について装置
11の処理を論する。第1A図と第1B図について述べ
ると、レジスタの幾つかは背景矩形により描かれる点に
注意されたい、これらレジスタはTREGl 95、T
REG 181、TREG49、BPR185、PRE
G5 L ACC23、ACCB31、INDX143
、ARCR159、STO,STI、およびPMSTで
ある。
これらレジスタはそれらと関連する相補レジスタを称さ
れ、レジスタを備える。割込みその他のコンテキストの
変更が生ずる毎に、上記レジスタの全ては自動的に深度
1のスタック上へ押込まれる。
割込みからの復帰もしくはコンテキスト変更からの復帰
が生ずると、同じレジスタが深度1のスタックをポツプ
アップすることによって自動的に回復される。
割込みサービスルーチンはコンテキストセーブもしくは
コンテキスト切替えに対するオーバヘッドがゼロで処理
されることが望ましい。このようにセーブされたレジス
タは「戦略レジスタ」と称される。これらは割込みサー
ビスルーチン内でその代わりに任意の異なるレジスタを
使用することに優先して使用されるレジスタである。
もしメモリに対するコンテキストのセーブがレジスタ毎
に行われ多数の戦略レジスタを保護する場合には、多数
の命令サイクルが消費されることになろう。更に、これ
らのコンテキストのセーブ処理が行われる頻度比はアプ
リケーションに依存する。第20図の100KHzのサ
ンプリング割合を有するアプリケーションの場合には、
割込み頻度は非常に高いため、割込みコンテキストのセ
ーブオーバヘッドのサイクルはオーバヘッド零責改良さ
れず、相当なものとなろう、実施例のオーバヘッド零の
コンテキスト切替え特性を提供することによって、割込
みサービスルーチンのサイクルカウントは半分以下に減
らすことができる一方、同一の機能性を得ることができ
よう。DSPの多重チャネルアブリケーシッンにおいて
は秒あたり100、000オーダのサンプルで実行する
か、1本のチャネルを50KIIz以上の如きすこぶる
高いサンプリング周波数で処理することが有利である。
今述べたことはサブルーチン呼出し、機能呼出し、その
他のコンテキスト切替えにも適用できる。
割込みが行われると、状態レジスタが自動的に深度1の
スタック上にブンシュされる。この特長をサポートする
際、割込みから復帰せよ(RET■)というもう一つの
命令が存在し、スタックを自動的にポツプアップして主
ルーチン状態を回復させるようになっている。また実施
例はもう一つの復帰命令(RETE)を有しており、グ
ローバル割込み許可ビットを自動的にセットして割込み
を強化する一方、状態スタックをポツプアンプする。割
込み許可による遅延復帰(RETED)と命名される命
令は復帰後に上記3つの命令がそれ自体割込まれる危険
から保護される。
実施例はメモリ空間内にマツピングされる割込みフラッ
グレジスタ(IFR)を備える。ユーザは能動割込みを
判断するためにソフトウェアポーリングすることによっ
てIFRを読取り、IFRに書込むことによって割込み
をクリアすることができる。
オーバヘッドゼロのコンテキスト切替特徴が特に有益で
あると思われるアプリケ−シランを若干以下に記す。か
くして改良ディスクドライブを高速に、より大きな加速
度と減速度と高速の読取り整合調節度でもって高度の情
報密度を収めることができるように製作することができ
る。プロセッサはロボット工学においてより多くのフィ
ードバック点を提供することが可能である。モデムでは
、割込みのソフトウェアポーリングによってより低いビ
ットエラー率を可能にすることができる。ボコーダはそ
れらをコーディングする際、より高いttt度とより少
ないビットエラーをもつように製作できる。ミサイル誘
導システムはより正確な制御を備え、小数のプロセッサ
しか要しない。デジタルセルラー電話も同様にして改良
される。
オーバヘッドゼロのコンテキストセーブ特徴によって、
割込みが行われる時に戦略CPUレジスタ全体がセーブ
され、何らの機械サイクルオーバヘッドなしにサービス
ルーチンから復帰後にそれらは復帰する。このため割込
みサービスルーチンは解放され、割込まれたコードに影
響を与えずにCPU資源を全て使用することができる。
第21図は第1A、18図の主題が第21図のCPUブ
ロック13.15として示された装置11のブロンク線
図である。CPUブロックから破断された状態で一組の
レジスタが示され、これらは上述のように深度1のスタ
ックを有する戦略レジスタである。
第21図は半導体チップのシステムアーキテクチャ−全
体を論する上で有益である。−組の割込みトラップとベ
クトルロケーション821がプログラムメモリ空間内に
存在する。第1A、21図のプログラムメモリ61内の
割込みルーチンが実行される場合、第21図の割込み制
御論理231によって第1A図のプログラムカウンタ9
3が割込みロケ−シラン821内に適当なベクトルを以
てロードされ適当な割込みサービスルーチンに分岐され
る。2個のコアレジスタIFRとIMRとはそれぞれ割
込みフラッグレジスタと割込みマスクレジスタである0
割込みフラッグレジスタは、どの特定の割込みが行われ
ているかを表示する。
割込みマスクレジスタはCPUに対する割込みがそれら
をマスキングすることによって割込み禁止される一組の
ビットである0例えば、もし割込みINT2−、lNT
l−、INTO−の中に実行中の割込みが存在するなら
ば、IFR内には1”についてセットされる対応ビット
が存在することになろう、フラッグは自動的にクリアさ
れる割込みトラップを取ることによってクリアされる。
さもない場合は、1つを割込みをクリアするそれぞれの
割込みフラッグレジスタ内にOR処理することによって
クリアされる。実行中の割込みフラッグ全体も1峙にク
リアすることができる。
プログラムバスとデータバス101.111は第21図
で線図状に組合わされており、周辺ボート831833
内で終結する0周辺ボート833は並列インターフェー
スを提供する。ボート831はTIに対するインターフ
ェースと装置11に対するシリアルボートを提供する。
第22.23.24図はオーバヘッド零の割込みコンテ
キスト切替えを実行するための3つの代替的な回路を示
す。戦略レジスタは全て同時に並列にコンテキスト切替
えされるため、1個のフリップフロフプによるレジスタ
全体の表示は線図的手法によっていることを理解された
い。
第22.23図では上下レジスタはそれぞれ第1A、1
8図の戦略レジスタの各々の前景の背景の矩形を示す、
第24図は平行処理を明示するものである。
第22図において、主レジスタ851は、そのデータD
入力がMUX853により選択的に供給される0MUX
853はレジスタ851のD入力を選択的に並列データ
回線Aか並列データ回線Bの何れかに対して接続する。
回線Bは相補レジスタ855のQ出力に接続される。主
レジスタ851はそれぞれ相補レジスタ855の対応す
るD入力に接続される一組のQ出力線を備える。
図示例において、矢印で示した回線Aの入力は、AlO
21による計算結果を表わし、累算器23はレジスタ8
51と855を備える。累算器23として示した第22
図の主レジスタ851の出力は例えば第1A図のポスト
スケーラ181に供給される。然しなから、レジスタ8
51は第1A図と第1B図に2重矩形が示された戦略レ
ジスタの各々に相当することが求められるだけの回数反
復されることを了解されたい。
第22図において、レジスタ851.855の各々は出
力イネーブル(OE)端子を備える。ORゲート857
は主レジスタ851のクロック入力を供給する。ORゲ
ート857はCPU  WRITEとRETEの入力を
有する。RETEはMUX853の選択入力と共に相補
レジスタ855のOE出カイネーブル端子も供給する。
主レジスタ851はそのOB端子がORゲート859の
出力に接続され、その入力は割込み確認IACKとCP
U  READに接続される。T ACKは楕円で示す
ように相補レジスタ855とその他の全ての相補レジス
タにクロック信号を送る。動作中、割込みからの復帰が
ない場合(RETEロー)、MUX 853は主レジス
タ851用の入力線Aを選択する。CPU  WRIT
Eが生起するや主レジスタ851はCPUコアからの入
力をそのD入力へ送る。CPUはORゲート859にお
いてCPU  READが生じOEを活動させると、レ
ジスタ851の内容をアクセスする。
割込みが生じて装置11により確認されると(IACK
)、レジスタ851の出力Qがイネーブルとなり、相補
レジスタ855がクロッキングされるそのため、主レジ
スタ851のQ出力がレジスタ855内にストアされる
。割込みサービスルーチンが実行される時、入力線Aは
CPU  WBITHにより主レジスタ851内にクロ
ッキングされつづける。割込みが完了すると、RETE
はローとなり、MUX 853を切替え回線Bを選択し
相補レジスタ855の回線OEを活動させる。
同様にして、RETEはORゲート857を経てレジス
タ851をクロッキングして転送を完了し主ルーチン情
報を主レジスタ851へ復帰させる。
その後、割込みRETEからの復帰の完了と共にRET
Eはローとなり、MUX853を介して主レジスタ85
1を入力回線Aに接続しなおす。このようにして、コン
テキスト切替えはオーバヘッド零で完了する。
かくして、第22図は電子プロセッサに接続される第1
と第2のレジスタを示す。上記レジスタは一つの処理コ
ンテキスト(例えば割込みもしくはサブルーチン〉に参
加し、一方、別の処理コンテキストからの情報をそこに
復帰するまで保持する。MUX 853とゲート857
.859は、処理コンテキストに応じてレジスタの電子
プロセッサ間での入出力動作を選択的に制御する働きを
する第1と第2のレジスタに接続されるコンテキスト切
替回路の例を示す。第1A図と第1B図のCPU13.
15のコアの如き電子プロセッサは、割込みINT−の
如きコンテキスト信号に応答し、コンテキスト信号によ
り識別される代替的な処理コンテキスト中で動作するこ
とができる。第23図はオーバヘッド零のコンテキスト
切替に対するバンク切替方法を示す。主レジスタ861
と相補レジスタ863はそのD入力をデマルチプレクサ
DMUX865に接続される。レジスタ861と863
のQ出力はMUX 867の各入力に接続される。CP
Uコアからの人力はDMUX865に接続される。CP
Uコアへ復帰する出力はMUXから提供される。MUX
 865と867からの両方の選択線は割込みサービス
ルーチンISRが進行中にアクティブとなる回線に接続
される。
このようにして、主ルーチン内でただ一つだけのレジス
タ861が動作する。割込みサービスルーチン中に、レ
ジスタ863は動作し、一方レジスタ861はそこへ処
理が復帰することになる内容を保持する。また、一対の
ANDゲート871と873もレジスタ861と863
を活動させたり活動停止させたりする働きを行う。CP
U  WRITEは各ANDゲート871と873の人
力を修飾する。ANDゲート871と873の出力はそ
れぞれレジスタ863と861のクロック入力に接続さ
れる。ISRがローの主ルーチンでは、レジスタ873
は修飾され、CPU  WRITEはレジスタ861を
クロッキングする。ANDゲ−)871は主ルーチン内
は割込禁止される。ISRが割込み中にハイである場合
、CPU  WRITEは修飾ANDゲート871を介
してレジスタ863をクロッキングし、ANDゲート8
73は割込禁止となる。
第24図において、2個のレジスタ881と883は共
にD入力がプロセッサ(例えばALU21〉から同時に
情報を受取るべく接続される。
上記レジスタはこのコンテキスト切替構造の並行性を示
すように線図内で明示的に反復されることによて、例え
ば、ALU21はレジスタ881と883の両方のD入
力を供給する。その際、レジスタ881と883は累算
器ACC23として作用するように図解しである。それ
に応じて、例えば累算器53はレジスタ891と893
を含むPレジスタ51をフィードする。(レジスタ89
3は第1A図のBPR185と混同すべきではない。)
MUX895はその入力がそれぞれレジスタ881と8
83のQ出力に接続される。MUX897はその人力が
それぞれレジスタ891と893のQ出力に接続される
。レジスタ881と891のクロック入力は電子可逆ス
イッチ901のA出力に対して並列に接続される。レジ
スタ883と893のクロック入力は可逆スイッチ90
1のB出力に対して並列に接続される。割込みハードウ
ェア903は割込み確認I ACKに応答して割込みサ
ービスルーチンが進行中に能動l5R−Q−出力を発生
する。割込みハードウェアー903はフリップフロップ
905のトグルT入力を駆動する。フリップフロップ9
05のQ出力は共に戦略レジスタ全体のMUXと共にス
イッチ901の第2人力とMUX895と897の選択
人力に接続される。
CPU  WRITE回線はスイッチ901のX入力と
ANDゲート907の人出に接続される。
割込みハードウェア903のローの能動I SR−出力
はANDゲート907の第2人力に接続される。そのゲ
ートの出力はスイッチ901のY入力に接続される。
動作中、リセフトされたハイは、Q出力をハイにプルし
MUX 895にレジスタ881を選択させるフリップ
フロップ905のセット入力を初期化する。同様にして
、スイッチ901はその結果Xを八に、TをBに接続す
る。主ルーチン内では、l5R−は不能動ハイとなりA
NDゲート907を修飾する。従って、CPU  WR
ITE回線上の活動によって主ルーチン内の全レジスタ
881.883.891.893がクロッキングされる
このことは例えば、ALU21からの情報が一時にレジ
スタ881と883内ヘクロツキングされ、乗算器53
からの情報が両レジスタ891に893内ヘクロツキン
グされることを意味する。
その後、例えば割込みサービスルーチンがコンテキスト
変更されると共に、l5R−はローとなり、ANDゲー
ト907は割込み禁止となる。その後、CPTJ  W
RITE活動によって割込みルーチンのためにレジスタ
881と891がクロッキングされつづけるが、レジス
タ883と893はクロッキングされることはない、そ
のため、不活動によって主ルーチンの内容はこれら後者
の2つのレジスタ内にストアされる。それ故、コンテキ
スト切替えはいささかのタイムオーバヘッドもなく行わ
れる。主ルーチンの如き原始テキストに復帰すると共に
、l5R−は再度ハイとなり、ANDゲート907を割
込み可能にする。ローからハイへの遷移によってフリッ
プフロップ905がトグルされ、MUX895と897
が状態を変更しレジスタ883と893を自動的に選択
する。
このことによって再び自動的なオーバヘッド零のコンテ
キスト切替えが行われる。フリップフロップ905がト
グルされるため、スイッチ901は状態を変更しXをB
に、YをAに接続する。その後、CPU  WRITE
上の活動によって両方のフリップフロツブが同時にクロ
ッキングされ、レジスタ883と893が能動レジスタ
となる。更なる割込み(I SR−ロー)によってレジ
スタ881と891が割込禁止となる一方、レジスタ8
83と893は能動状態にとどまる。かくして、第24
図において、主レジスタもしくは相補レジスタは存在せ
ず、その代わりに数対のレジスタがこれらの機能を共有
することになる。
かくして、第24図は演算回路を割込み信号の発生まで
2個のレジスタの両方に接続するスイッチング回路を提
供する。上記回路はレジスタの一つが割込信号に応答し
て演算装置からの情報をそれ以上ストアすることを一時
禁止する。別言すれば、このコンテキストスイッチング
回路は第22図と第23図のそれと同様に、第1と第2
のレジスタを選択的にクロッキングする働きを行うもの
である。第22図と第23図の回路と異なり、第24図
の回路は、共に、入力がプロセッサからの情報を同時に
受取るように接続された第1と第2のレジスタを備える
。プロセッサは既に論じたようなプログラムカウンタを
備え、プログラムカウンタの断続性を伴う第1と第2の
ルーチンを実行するためにこれらのレジスタに接続され
る。
第22−24図において、スタックは、事実上、−組の
レジスタと関連し、プロセッサは、タスクが第2ルーチ
ンに変更されるや、その複数のレジスタの内容をスタッ
ク上にブツシュする働きを行う。同様にして、割込みか
ら復帰するや、プロセッサはスタックをポツプアップし
て第1のルーチンが実質上即時に再開できるようにする
。第2のルーチンは割込みサービスルーチンと、ソフト
ウェアトラップと、サブルーチン、プロシージャ、関数
その他の任意のコンテキスト変更ルーチンとすることが
できる。
第25図では、第24図の回路を動作させる方法がステ
ップ911内のフリップフロップ905のQ出力を初期
化する。ステップ913内ではフリップフロップ905
のQ出力の状態に応じて出力MUX895と897を動
作させる処理が進行する。その後、デシジョンステップ
915が内容が例えばl5R−信号に応じて切替えられ
るべきかどうかを判断する。もし否であれば、ステップ
917中の処理によって全レジスタ881.883.8
91.893がクロッキングされ、ステップ913へ復
帰する。そこから処理はステップ915内でコンテキス
トの切替えが生ずるまで無限に続けられる。かかる場合
、分岐はステップ915からステップ919へ飛越し、
MUXにより選択されたレジスタ(例えば895と89
7〉のみをクロッキングする。復帰が行われた場合、Q
はフリップフロップ905でトグルし、そこから処理は
ステップ913へ回帰して上記の如く無限に継続される
第26図は2個の命令CRGTとCRLTの処理を記述
するプロセス線図である。これら2つの命令は繰返し使
用される場合に最大値と最小値を容易に計算できる高速
の大小比較計算を伴う。処理はスタート981より開始
され、CRGTもしくはCRLT命令が存在するかどう
かを判断するステップに進む。存在すれば、処理はステ
ップ985へ移行しALU21ないし累算器23 (第
1A図)をストアする。その後、ステップ987におい
て、ALUは第1A図のMUX77を介してACCB3
1の内容を選択する。ステップ989において、ALU
は共働して累算器23の内容をACCB31と比較演算
し、減算によって例えば演算差の符号を取得する。ステ
ップ991において、それぞれ命令CRGTもしくはC
RL Tに応して大小便れかの値を、比較の状態に従い
、ACC23をACCB31にストアするかそうするこ
とを省略するか何れかによってACCB31に供給する
。例えば、もしACC23がACCB31よりも大きな
値を有し、命令がCRGTであるならば、ACCはAC
CBにストアされ、さもなければストアされない。もし
ACC23がACCBより小さな値を有し、命令がCR
LTであれば、ACCはACCBにストアされる。AC
CBが既に所望値を保持する場合には、転送によってA
CCBをACCに書込む。次いで、テスト993によっ
て一連の値が完全であるかどうかについて判断する。も
し否であれば、処理はステ・ノブ983に復帰する。も
しステップ993においてその値が完全であれば、処理
はステップ995へ分岐してかくして計算された一連の
値の最大最小値をストアする。
一連の数字の最大値をスピーデイに計算する能力は、乗
数器もしくは利得係数が最大値に基づいていてより効果
的に処理できるように入力信号の利得を上下させるよう
にした自動利得制御系において殊に有益である。かかる
自動利得制御は、無線受信機、オーディオアンプ、モデ
ム、およびPIDアルゴリズムの如きアルゴリズムを活
用する制御系においても使用される。PIDは比較例積
分微分帰還制御方式である。更にもう一つの用途はパタ
ーン認識である。例えば、音声認識装置において、予め
ストアされた音声パターンを進入するとデータと比較す
ることによる連続的な瞬断はテンプレート比較プロセス
内の最大値を見ることによって判断される。同様にして
、画像処理において、プロセッサによる辺縁検出によっ
て輝度と色彩の強さが解析される。その強さが上昇した
後突然下降すると、画像処理目的のために辺縁を示す最
大値が発見される。
このようにして、演算装置、命令デコーダ、累算器、追
加レジスタが組合わされる。上記追加レジスタは演算装
置に接続されることによって演算装置は第1の演算値を
累算器へ送り、その後、命令デコーダからのコマンドに
応じて追加レジスタの内容と累算器の内容の値の大小の
別をレジスタに供給する。
一定時間にわたって累算器に供給される一連の演算値に
対してコマンドを繰返し実行すると、レジスタに一連の
演算値のうちの最大もしくは最小値が供給される。
多くのリアルタイムシステムではできる限り少ない機械
サイクルで最大もしくは最小値を発見することは極めて
重要である。問題はアルゴリズムの一時的結果が現在の
最小もしくは最大値がストアされるデータメモリロケー
ションのワード幅よりも大きなビット数を有する累算器
内にストアされる場合に複雑になる。更に、その問題は
条件のテストが分岐を必要とするような高度にパイプラ
イン化されたプロセッサによって複雑になる。両方の場
合とも余分の機械サイクルを使用する羽目になる。デー
タ転送処理でアドレスを設定する際に余分の機械サイク
ルが消費される可能性がある。
然しなから、実施例の回路は累算器ACC23と同一の
ヒソ11を有する並列レジスクACCB31を備えてい
る。最大もしくは最小値の機能が実行されるとき、プロ
セッサは累算器内の最終値を並行レジスタACCB内の
値と比較して、もし最小値よりも小さいか最大値より大
きければ、命令に応じて、それは累算器の値を並列レジ
スタ上に書き込むかあるいはその逆のことが行われる。
これは全て1回の機械サイクル内で1個の命令語で行わ
れるため、コード空間とプログラム実行時間を節約でき
る。同時にメモリのアドレス指定処理も不要であって、
ALU内の他のレジスタには影響を及ぼさない。
以上の記載に関連して、以下の各項を開示する。
1、 コンテキスト信号に応答して同コンテキスト信号
により識別される代替的な処理コンテキスト内で動作す
る電子プロセッサと、 上記電子プロセッサに接続され1つの処理コンテキスト
に参加すると共にもう一つの処理コンテキストからの情
報をそれに復帰するまで保持する第1と第2のレジスタ
と、 上記第1と第2のレジスタに接続され処理コンテキスト
に応じて上記レジスタの電子プロセッサ間での入出力処
理を選択的に制御するコンテキスト切替回路と、 から戒るデータ処理装置。
2、上記コンテキスト切替回路が上記第1と第2のレジ
スタを選択的にクロッキングする働きを行う1項のデー
タ処理装置。
3、上記第1のレジスタが、主レジスタとしてその後に
相補レジスタとして交互に作用すると共に、上記第1の
レジスタが主レジスタとして作用する時に上記第2のレ
ジスタがそれに応じて相補レジスタとして作用した後に
、上記第1のレジスタが相補レジスタとして作用する時
に主レジスタとして作用する1項のデータ処理装置。
4、更に、電気モータと、 操作上上記電気モータと上記電子プロセッサに接続され
、 デジタル信号が処理用に利用できることを示すコンテキ
スト信号と共に被処理デジタル信号を生成する手段と、
を備え、 上記電子プロセジヤ手段が更にその動作に基づいて制御
信号を上記電気モータへ通信する出力周辺装置を備える
1項の出力処理装置。
5、更に、マイクロフォンと、 デジタル信号が処理用に利用可能であることを示すコン
テキスト信号と共に被処理音声を表わすデジタル信号を
生成するA/D変換手段と、上記電子プロセジヤに接続
されフーリエ変換デジタル信号処理に応じて音声認識処
理を実行する音声認識プロセフすと、から成り、上記電
子プロセンサ手段がフーリエ変換デジタル信号処理を実
行するように適応される、1項のデータ処理手段。
6、更に、デジタル信号が処理用に利用可能なことを示
すコンテキスト信号と共に処理される通信チャネルを表
わすデジタル信号を生成するA/D変換手段と、 上記電子プロセジヤに接続されデジタル信号処理に応じ
て通信処理を実行する送受信機と、を備え、 上記電子プロセンサがデジタルフィルタリングと、復調
と、デスクランプリングにおいてデジタル信号処理を実
行する、 第1項のデータ処理装置。
7、命令デコーダと、 第1と第2の人力と出力を有する演算装置と、上記演算
装置の出力と第1人力間に接続された累算器と、 上記累算器と演算装置の第2人力間に接続されたレジス
タ、より威り、 上記演算装置が、上記累算器に対するデジタル値を計算
する手段と、その直後に上記レジスタからの第2人力に
おける値を命令デコーダのコマンドに応じて上記累算器
内のデジタル値と比較した後上記レジスタの内容の値と
上記累算器内のデジタル値の大小関係をコマンドに応じ
て上記レジスタにストアする回路と、を備えるデータ処
理装置。
8、一定時間にわたって上記累算器に対して供給される
一連の演算値の各々についてコマンドを反復実行してそ
のコマンドに応じて一連の演算値内の最小もしくは最大
値をレジスタに供給する第7項のデータ処理装置。
9、上記比較ストア手段が減算モードで計算した後、上
記レジスタの内容と上記累算器内のデジタル値開の演算
差の符号に従ってストアする上記手段を動作させる手段
を備える第7項のデータ処理装置。
10、更に、アナログからデジタル形へ変化するレベル
を有する信号を変換する変換回路と、同信号の利得値を
このように計算された最大値の関数として自動的に調節
する乗算手段と、から成り、 上記演算装置が上記変換回路に連結され、比較回路によ
って信号の最大値が計算される第7項のデータ処理装置
11、更に、1パターンを表示する物理的入力に応じて
デジタル信号を生成するセンサと、上記命令デコーダに
接続され、 上記演算装置によって同パターンをLWlliすべく実
行される命令を保持するプログラムメモリと、を備え、 上記演算装置が上記センサに接続され、計算回路がそれ
によって演算差と命令の型に応じて信号の最大もしくは
最小値を計算する、第7項のデータ処理装置。
12、データバスとプログラムバスと、上記データバス
に接続されデータメモリロケ−シランを有するデータメ
モリと、 上記データバスに接続される電子計算装置と、上記電子
計算装置とデータバスに接続される累算器と、 命令を受取るための上記プログラムバスと上記データバ
スに接続され、命令の少なくとも幾つかに従って論理処
理を実行する論理手段と、命令を上記プログラムバス上
の論理手段と上記電子計算装置に送る制御手段とを、備
え、論理演算が上記累算器には影響を及ぼさず、上記電
子計算装置とは独立に上記データメモリロケーションの
少なくとも一つのビットに影響を及ぼす、データ処理装
置を備える装置。
13、上記データ処理装置の電気ビットにより規定され
る命令に応答する電子的自動車制御装置と、上記データ
処理装置から上記電子自動車制御装置に選択ピントを供
給するインターフェースと、 から成る第12項の装置。
14、更に、1プロセスの状態に応答するプロセス制御
センサと、 上記データ処理装置の電気ビ7)により規定される方向
に応答するプロセス制御要素と、から戒り、 上記デ−タ処理装置が上記センサに接続され選択された
ビットを上記プロセス制御要素に供給するインターフェ
ースを備える第12項の装置。
15、更に、A/D変換とD/A変換を組合わせた電話
回線に接続するための変換回路を備え、上記データ処理
装置が上記変換回路に接続され電話と接続され、スクラ
ンブルと変調の双方の動作可能なシングルチップより成
り、上記論理回路が変調プロセスで処理を行う上記電子
計算装置と同時にスクランブルプロセスで処理を実行す
る、第12項の装置。
16、データ処理装置(11)はコンテキスト信号(I
NT)に応答して同コンテキスト信号(INT)により
識別される代替的な処理コンテキスト内で動作する電子
プロセッサ(15)を備える。第1と第2のレジスタ(
851,855)は電子プロセッサ(15)に接続され
て1つの処理コンテキストに参加すると共に別の処理コ
ンテキストからの情報をそれに復帰するまで保持する。
コンテキストスイチング回路(231,853,857
)は第1と第2のレジスタ(851,855)に接続さ
れ、処理コンテキストに応じて電子プロセッサ(15)
間でレジスタの入出力処理を選択的に制御する。他の装
置、システム、方法も並行論理装置とシリーズ最小/最
大関数計算用の構成を伴ったものが開示される。
【図面の簡単な説明】
第1A図と第1B図はシングル半導体チップ上に形成さ
れるCPUもしくは中央処理装置を備える改良マイクロ
コンピュータ装置の電気的ブロック線図の2つの反面図
、 第2図は改良産業プロセスと保護目的制御システムのブ
ロック線図、 第3図は改良自動車装置の一部はそのま\描いた、一部
はブロック状の電気線図、 第4図は改良モータ制御装置の電気ブロック線図、 第5図はもう一つの改良モータ制御装置の電気ブロック
線図、 第6図は更にもう一つの改良モータ制御装置の電気ブロ
ック線図、 第7図は改良ロボット制御装置の電気ブロック線図、 第8図は改良衛星テレコミュニケーション装置の電気ブ
ロック線図、 第9図は第8図の装置の改良エコー消去装置の電気ブロ
ック線図、 第10図は改良モデム送信機の電気ブロック線図、 第11図は第1θ図の同様に改良モデム送信機のハード
ウェアブロックもしくはプロセスブロックを表示する電
気ブロック線図、 第12図は同様に改良モデム受信機のハードウェアブロ
ックもしくはプロセスブロックを表示する電気ブロック
線図、 第13図はPCM(パルス符号変調)通信用に接続され
たホストコンピュータとデジタル(f号プロセフサを含
む改良装置の電気ブロック線図、第14図は多次元アレ
イ処理を有する改良ビデオ画像装置の電気ブロック線図
、 第15図は同様に改良された図形、画像、ビデオ処理の
ためのハードウェアブロックもしくはプロセスブロック
を表わす電気線図、 第16図は改良された図形、画像、ビデオ処理用装置の
電気ブロック線図、 第17図は改良自動音声認識装置の電気ブロック線図、 第18図は暗号を有する改良ボコーダ−モデム装置の電
気ブロック線類、 第19図は情報ビットを保持し、第1B図の並行論理装
置のビット処理を示す一連の7つの電気レジスタ図、 第20図はサンプリング高速度のデジタル信号処理用の
改良装置の電気ブロック線図、第21図は第1A、第1
B図のCPUを含む改良データ処理装置のアーキテクチ
ャ−の電気ブロック線図、 第22図はオーバヘッドゼロの割込みコンテキスト切替
用回路の1既路線図、 第23図はオーバヘッドゼロの割込みコンテキスト切替
用代替回路の概略線図、 第24図はオーバヘッドゼロの割込みコンテキスト切替
用代替回路の概略線図、 第25図は第24図の回路を動作させる方法のフローダ
イアダラム、 第26図は第1A図と第1B図のデータ処理装置内の最
大最小値を自動的に計算するための命令を示すプロセス
フローダイアグラム。 11−一一−データ処理装置、 15・−電子プロセッサ、 INT−・コンテキスト信号、 851.855−第1と第2のレジスタ、231.85
3.85’l−テキスト処理コンテキスト。 F/り、22 書込み θ6/ Ft’1.23 手 続 補 正 書(方式) %式% 15事件の表示 平成2年特許願第117336号 2、発明の名称 ア タ 処理装置 3、補正をする者 事件との関係

Claims (1)

  1. 【特許請求の範囲】 1、コンテキスト信号に応答して同コンテキスト信号に
    より識別される代替的な処理コンテキスト内で動作する
    電子プロセッサと、 上記電子プロセッサに接続され1つの処理コンテキスト
    に参加すると共に、もう一つの処理コンテキストからの
    情報をそれに復帰するまで保持する第1と第2のレジス
    タと、 上記第1と第2のレジスタに接続され処理コンテキスト
    に応じて上記レジスタの電子プロセッサ間での入出力処
    理を選択的に制御するコンテキスト切替回路と、 から成るデータ処理装置。
JP11733690A 1989-05-04 1990-05-07 データ処理装置 Expired - Fee Related JP3173777B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US34760589A 1989-05-04 1989-05-04
US347596 1989-05-04
US347615 1989-05-04
US07/347,615 US5142677A (en) 1989-05-04 1989-05-04 Context switching devices, systems and methods
US07/347,596 US5072418A (en) 1989-05-04 1989-05-04 Series maxium/minimum function computing devices, systems and methods
US347605 1989-05-04

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP21557998A Division JPH1196020A (ja) 1989-05-04 1998-07-30 データ演算処理装置
JP21558098A Division JPH1196021A (ja) 1989-05-04 1998-07-30 数を表している二つの組の電気信号を比較する方法

Publications (2)

Publication Number Publication Date
JPH0363826A true JPH0363826A (ja) 1991-03-19
JP3173777B2 JP3173777B2 (ja) 2001-06-04

Family

ID=27407784

Family Applications (3)

Application Number Title Priority Date Filing Date
JP11733690A Expired - Fee Related JP3173777B2 (ja) 1989-05-04 1990-05-07 データ処理装置
JP21558098A Pending JPH1196021A (ja) 1989-05-04 1998-07-30 数を表している二つの組の電気信号を比較する方法
JP21557998A Pending JPH1196020A (ja) 1989-05-04 1998-07-30 データ演算処理装置

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP21558098A Pending JPH1196021A (ja) 1989-05-04 1998-07-30 数を表している二つの組の電気信号を比較する方法
JP21557998A Pending JPH1196020A (ja) 1989-05-04 1998-07-30 データ演算処理装置

Country Status (3)

Country Link
EP (4) EP0884674B1 (ja)
JP (3) JP3173777B2 (ja)
DE (4) DE69033997T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11169644B2 (en) 2019-11-05 2021-11-09 Samsung Display Co., Ltd. Electronic device

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5825770A (en) * 1996-06-06 1998-10-20 Northern Telecom Limited Multiple algorithm processing on a plurality of digital signal streams via context switching
US5909188A (en) * 1997-02-24 1999-06-01 Rosemont Inc. Process control transmitter with adaptive analog-to-digital converter
SE9803632D0 (sv) * 1998-10-22 1998-10-22 Ericsson Telefon Ab L M A processor
GB0307822D0 (en) * 2002-12-12 2003-05-07 Advanced Risc Mach Ltd Processing activity masking in a data processing system
US7979684B2 (en) * 2006-08-07 2011-07-12 Qualcomm Incorporated Method and context switch device for implementing design-for-testability functionality of latch-based register files
KR102549438B1 (ko) * 2016-09-27 2023-06-29 삼성전자주식회사 순차 회로, 이를 포함하는 스캔 체인 회로 및 집적 회로
WO2019129389A1 (en) * 2017-12-26 2019-07-04 Silicon Mobility Sas Flexible logic unit adapted for real-time task switching
CN112602054A (zh) 2018-08-31 2021-04-02 弗莱克斯-罗技克斯技术公司 乘法器累加器电路、用于乘法累加的逻辑瓦片架构和包括逻辑瓦片阵列的ic
US11194585B2 (en) 2019-03-25 2021-12-07 Flex Logix Technologies, Inc. Multiplier-accumulator circuitry having processing pipelines and methods of operating same
US11314504B2 (en) 2019-04-09 2022-04-26 Flex Logix Technologies, Inc. Multiplier-accumulator processing pipelines and processing component, and methods of operating same
US11288076B2 (en) 2019-09-13 2022-03-29 Flex Logix Technologies, Inc. IC including logic tile, having reconfigurable MAC pipeline, and reconfigurable memory
US11455368B2 (en) 2019-10-02 2022-09-27 Flex Logix Technologies, Inc. MAC processing pipeline having conversion circuitry, and methods of operating same
US11693625B2 (en) 2019-12-04 2023-07-04 Flex Logix Technologies, Inc. Logarithmic addition-accumulator circuitry, processing pipeline including same, and methods of operation
US11960856B1 (en) 2020-01-15 2024-04-16 Flex Logix Technologies, Inc. Multiplier-accumulator processing pipeline using filter weights having gaussian floating point data format
US11442881B2 (en) 2020-04-18 2022-09-13 Flex Logix Technologies, Inc. MAC processing pipelines, circuitry to control and configure same, and methods of operating same
WO2022020164A1 (en) 2020-07-22 2022-01-27 Flex Logix Technologies, Inc. Mac processing pipelines having programmable granularity, and methods of operating same

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50120743A (ja) * 1974-03-08 1975-09-22
JPS5487130A (en) * 1977-12-23 1979-07-11 Fujitsu Ltd Conventional register access system
JPS5616248A (en) * 1979-07-17 1981-02-17 Matsushita Electric Ind Co Ltd Processing system for interruption
JPS5641577A (en) * 1979-09-11 1981-04-18 Nec Corp Stack register circuit
JPS58225443A (ja) * 1982-06-25 1983-12-27 Nec Corp 高速デ−タ処理装置
JPS6352241A (ja) * 1986-08-22 1988-03-05 Hitachi Ltd マイクロプロセツサ

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3221309A (en) * 1961-08-10 1965-11-30 Scam Instr Corp Priority interrupt monitoring system
GB1426273A (en) * 1973-04-13 1976-02-25 Int Computers Ltd Data processing
FR2250449A5 (en) * 1973-10-31 1975-05-30 Honeywell Bull Soc Ind Protection system for data processor interruption - has double memory bank with each bank divided into two parts
US4218739A (en) * 1976-10-28 1980-08-19 Honeywell Information Systems Inc. Data processing interrupt apparatus having selective suppression control
US4091445A (en) * 1977-01-18 1978-05-23 Honeywell Information Systems Inc. Program switching monitor
US4287560A (en) * 1979-06-27 1981-09-01 Burroughs Corporation Dual mode microprocessor system
US4396979A (en) * 1980-05-30 1983-08-02 Fairchild Camera & Instrument Corporation Microprocessor with improved arithmetic logic unit data path
US4467444A (en) * 1980-08-01 1984-08-21 Advanced Micro Devices, Inc. Processor unit for microcomputer systems
US4434461A (en) * 1980-09-15 1984-02-28 Motorola, Inc. Microprocessor with duplicate registers for processing interrupts
US4403225A (en) * 1982-05-24 1983-09-06 Honeywell, Inc. Multistylus recording system
US4689739A (en) * 1983-03-28 1987-08-25 Xerox Corporation Method for providing priority interrupts in an electrophotographic machine
US4597053A (en) * 1983-07-01 1986-06-24 Codex Corporation Two-pass multiplier/accumulator circuit
JPS61122747A (ja) * 1984-11-14 1986-06-10 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ処理装置
EP0306891A3 (en) * 1987-09-11 1992-04-01 National Semiconductor Corporation Pipelined slave protocol for high performance cpu-fpu cluster

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50120743A (ja) * 1974-03-08 1975-09-22
JPS5487130A (en) * 1977-12-23 1979-07-11 Fujitsu Ltd Conventional register access system
JPS5616248A (en) * 1979-07-17 1981-02-17 Matsushita Electric Ind Co Ltd Processing system for interruption
JPS5641577A (en) * 1979-09-11 1981-04-18 Nec Corp Stack register circuit
JPS58225443A (ja) * 1982-06-25 1983-12-27 Nec Corp 高速デ−タ処理装置
JPS6352241A (ja) * 1986-08-22 1988-03-05 Hitachi Ltd マイクロプロセツサ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11169644B2 (en) 2019-11-05 2021-11-09 Samsung Display Co., Ltd. Electronic device

Also Published As

Publication number Publication date
DE69032964T2 (de) 1999-07-01
DE69034059D1 (de) 2003-05-22
EP0405726A2 (en) 1991-01-02
JPH1196020A (ja) 1999-04-09
DE69033997T2 (de) 2003-04-30
DE69034028D1 (de) 2003-01-23
DE69032964D1 (de) 1999-04-08
DE69034028T2 (de) 2003-10-09
EP0884673A2 (en) 1998-12-16
JPH1196021A (ja) 1999-04-09
EP0884674B1 (en) 2003-04-16
EP0892344A3 (en) 1999-02-10
EP0884673A3 (en) 1999-07-14
EP0884674A3 (en) 1999-07-28
EP0892344A2 (en) 1999-01-20
EP0892344B1 (en) 2002-08-21
DE69034059T2 (de) 2004-05-06
EP0884673B1 (en) 2002-12-11
EP0884674A2 (en) 1998-12-16
JP3173777B2 (ja) 2001-06-04
DE69033997D1 (de) 2002-09-26
EP0405726A3 (en) 1993-08-25
EP0405726B1 (en) 1999-03-03

Similar Documents

Publication Publication Date Title
US5319792A (en) Modem having first and second registers enabling both to concurrently receive identical information in one context and disabling one to retain the information in a next context
US6334181B1 (en) DSP with wait state registers having at least two portions
US5072418A (en) Series maxium/minimum function computing devices, systems and methods
US5155812A (en) Devices and method for generating and using systems, software waitstates on address boundaries in data processing
JPH0363826A (ja) データ処理装置
US5579497A (en) Devices and systems with parallel logic unit, and methods
US6986142B1 (en) Microphone/speaker system with context switching in processor
US20050251638A1 (en) Devices, systems and methods for conditional instructions
US20050278512A1 (en) Context switching devices, systems and methods
US5652910A (en) Devices and systems with conditional instructions
US5829054A (en) Devices and systems with parallel logic unit operable on data memory locations
US5828577A (en) Devices and systems with protective terminal configuration, and methods
JPH08320804A (ja) クロックドメインにおける試験インターフェースの分散制御を備えるエミュレーション装置、システムおよび方法

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090330

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100330

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees