JPS59188879A - デ−タプロセツサ - Google Patents

デ−タプロセツサ

Info

Publication number
JPS59188879A
JPS59188879A JP58184601A JP18460183A JPS59188879A JP S59188879 A JPS59188879 A JP S59188879A JP 58184601 A JP58184601 A JP 58184601A JP 18460183 A JP18460183 A JP 18460183A JP S59188879 A JPS59188879 A JP S59188879A
Authority
JP
Japan
Prior art keywords
data
memory
address
processor
main memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP58184601A
Other languages
English (en)
Inventor
ジヨン・テイ−・ハロウエイ
デビツド・エイ・ム−ン
ハワ−ド・アイ・キヤノン
ト−マス・エフ・ナイト
ブル−ス・イ−・エドワ−ズ
ダニエル・エル・ウエインレブ
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.)
Symbolics Inc
Original Assignee
Symbolics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Symbolics Inc filed Critical Symbolics Inc
Publication of JPS59188879A publication Critical patent/JPS59188879A/ja
Pending 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/30181Instruction operation extension or modification
    • G06F9/30192Instruction operation extension or modification according to data descriptor, e.g. dynamic data typing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/287Multiplexed DMA
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/312List processing, e.g. LISP programming language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K13/00Conveying record carriers from one station to another, e.g. from stack to punching mechanism
    • G06K13/02Conveying record carriers from one station to another, e.g. from stack to punching mechanism the record carrier having longitudinal dimension comparable with transverse dimension, e.g. punched card
    • G06K13/08Feeding or discharging cards
    • G06K13/0806Feeding or discharging cards using an arrangement for ejection of an inserted card
    • G06K13/0825Feeding or discharging cards using an arrangement for ejection of an inserted card the ejection arrangement being of the push-push kind
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02BINTERNAL-COMBUSTION PISTON ENGINES; COMBUSTION ENGINES IN GENERAL
    • F02B75/00Other engines
    • F02B75/02Engines characterised by their cycles, e.g. six-stroke
    • F02B2075/022Engines characterised by their cycles, e.g. six-stroke having less than six strokes per cycle
    • F02B2075/027Engines characterised by their cycles, e.g. six-stroke having less than six strokes per cycle four

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 背景技術 本発明は記号処理言語、特にLISPによってプログラ
ム可能なデータ処理装置に関する。
LISPは人工知能研究の助けとしての道具として開発
されたコンピュータプログラム用言飴である。人工知能
は、コンピュータの助けを借りて知的行動の理解および
モデル化を探究するコンピュータ科学の一分野である。
知的行動は環境内の対象物、対象物間の関係、およびそ
のような対象物の性質や用法に関する考察を含んでいる
。LISPは、任意の対象物およびそれらの関係を聚現
し易いように設計されている。この設計は他の言語、例
えばFORTRANのそれとは対照的である。FORT
RANは代数演算式の値を計算し易いように設計されて
おり、COBOLは事務上の帳簿や記録の処理をし易い
ように設計されている。
頭字語LISPはList Processing L
anguageの略で、1950年KMIT(現在はス
タンフォード大学)のJohn McCarthy教授
か発明した時に授けた名前である。当時、データオブジ
ェクトとそれらの複雑な関係をリストを用いて表現する
概念は目新しいことであった。LISPのオブジェクト
という概念はその後の多くの言語(例えばSIMURA
67)に組み込まれてい丑すが、経営陣はLISPおよ
びそれから派生した言語は、全世界において、人工知能
研究者が第一に選択する手段であると信じている。
LISPは更に、手順知識(即ち、「これは何であるか
」に対して「これをどのように為すか」ということ)の
モデル化を容易にする。企ての手順知識は機能で衣わさ
れ、この機能は、計算上の壕とまりであって、与えられ
たオブジェクトに対してどのようにある動作または計算
を実行するかを知っている(指示する)ものでおる。
LISP機能のテキストは1行から何千行もの長さに作
成できるが、1プログラムを、各々がある特定作業のル
ーチンである何千もの部分に分けることは許されている
。これによって、LISPはモジール構造を容易にし、
明確な相互作用と共に、固有の責任領域にプログラムを
はっきりと分割できる。コンピュータ科学界でのこの2
0年間の経験は、正しいプログラム動作、保守、および
、理解しやすさの重要性を確立している。
LISPは、拡張可能な文法もしくは記法をも特徴とし
ている。つまり、言語構造は、提供されたもののみに限
定されずに、プログラマの直面する問題に関係する新し
い構造をプログラマが定義することで加えることが可能
である。新言語構造の定義には提供されたソフトウェア
の変更、またはソフトウェア細部に関する熟知は必要で
なく、初心者が誰でも有するような範囲のアプリケーシ
ョン(およびシステム)プログラマが利用する通常の言
語機能があればよい。この機能によって、LISPはコ
ンピュータ科学に新しい発展をもたらすことかできる。
LISPはプログラマを、コンピュータメモリの評細な
管理に対する責任から解放する。通常のFORTRAN
やPL/Iでの配列やメモリブロックのサイズ決定はL
ISPでは存在しない。固定サイズの配列を作ることも
可能であるが、LISPは任意のサイズのオブジェクト
、無制限の数の要素を含むセット、全体の詳細要素また
はパラメータの数は不明なオブジェクト等を表現する手
段を与えている点で優れている。コンピュータに関して
、固定サイズデータ記憶域に対するよく言われた苦情(
例えは、ERROR、100INPUT ITEMS 
EXCEEDEDといったエラーメツセージで報知され
るデータ記憶域オーバに関する苦情)は、LISPで書
かれたシステムでは除かれてしまう。
LISPはインタラクティブな環境を提供し、ここでは
、全てのデータ(何であるかおよびどうであるかに関す
る知識)および機能(どう行うかに関する知識)は共存
する。データおよび機能を、プログラム開発者は検照し
たり変更したりできる。
ある機能またはデータオブジェクトで誤りが発見される
とこの誤りを訂正することが可能であり、その訂正を、
別のプログラム実行を必要とせずにテストできる。誤り
訂正および修復を試行することは、時によっては、3回
のキイストロークと実時間の2秒で実施可能である。こ
れかLISPのインタラクティブな環境に関する概念で
あり、これによって、初級および経験豊富なプロダラマ
双方に多液のシステムを、一時に一層ずつ開発すること
を可能としている。LISP熟練者は、コーディング用
紙またはジョブデツキな必要とせず、プログラムを直接
入力していることか知られている。
つまり、プログラムを誓<、入力する、そしてデバッグ
するを一操作で行っているのである。機能は、それを瞥
き問題か発見された時点でテストできる。コンピュータ
は敵対者でなく、プログラム開発の活動的な参加者とな
っている。この方法で開発されたプログラムは、土台か
ら堅固な基礎の上に建っている。これらの機能によって
、LISPプログラム開発は極めて短時間で完成する。
LISPは表現力と開発力の独自のブレンドを提供する
。現時点でのLISPアプリケーションは、コンピュー
タ援助による設計システムから、医療診断や、石油開発
の地球物理学的分析にまで拡大している。これらのアプ
リケーションの共通点は、大規模な一層データ構造を短
時間で作成し、そのようなデータ構造に対して手順を実
行することが必要なことである。(データ構造とは、注
目する対象物を表現またはモデル化した、コンピュータ
メモリの複雑な構成である。)LISPはこのようなア
プリケーションに対して極めて力を発揮する。
MIT人工知能研究所の研究者は、1974年に、複雑
なソフトウェアシステムを開発するプログラマを援助す
る、最新のパーソナルコンピュータ設計の開発を目的と
し、全てのシステムソフトウェアをLISPで書くとい
うLISPマシンプロジェクトをスタートさせた。
このプロジェクトの第1段階は、タイムシェアされたコ
ンピュータシステム上で書かれたLISPマシーン用シ
ミュレータであった。LISPマシーンの第1世代はC
0NSで、1976年に走行していた。第2世代のLI
SPマシーンはCADRであり、これにはハードウェア
上の改良が為され、C0NSに代って1978年に導入
された。LISPマシーン用ソフトウェア開発は197
5年から続けられている。更にLISPマシーンの第6
世代であるLM−2はSymbolics社によって1
980年に導入されている。
上記の従来技術のLISPマシーンおよび一般の記号言
語データ処理装置の主な欠点は、これらの装置に用いら
れるコンピュータハードウェア構成は、元来FORTR
ANやCOBOL等の一層旧式なソフトウェア舊飴用に
設計されたものであるということである。その結果、こ
れらの装置はLISPのような記号言語でプログラムで
きるが、その効率と速さは上記のような記号処理言語に
固有の諸点の由に、かなり低下されていた。
発明の要約 本発明の主目的は、記号言語でプログラム可能な従来の
データ処理装置の欠点を除き、従来は得られなかった効
率と速さでデータ処理を実行することか可能となるよう
に、記号言語でプログラム可能なように特に設計された
ハードウェアを有するデータ処理装置を提供することで
ある。
上記の目的および他の目的は、望ましくは記号言語でプ
ログラム可能である本発明に従った装置によって達成で
き、最も有利には、藁性能なLISPの一方言であるZ
etalispでおよびFORTRANやCOBOL等
の他の従来の言語でもプログラム可能な装置において達
成できる。
本装置は、高速目的向記号演算か必要な大規模プログラ
ムの実行に理想的に適するような多くの特徴を有してい
る。システムハードウエアとファームウェアは並行して
設計されたので、本装置の基本的(マクロ)命令セット
は本来のLISPに極めて近いものである。多くのZe
talisp命令は、1マイクロサイクル内に実行され
る。即ち、本システム上のZetalispで書かれた
プログラムはプロセッサのクロック速度にほゞ近くで実
行される。
本発明は、古いLISPマシーンの速度を単に上げただ
けでばない。本装置は、極めて高速であり、更に堅固で
信頼性のあるプロセッサができる全く新しい設計を特徴
としている。これは、ユーザオーバーヘッドのない無数
の自動チェックによって達成されている。
システムプロセッサ構成は従来の装置のものとは極度に
異っていて、プロセッサ構成の特徴には以下のものが含
まれる。
・Zetalisp用に設計されたマイクロプログラム
化されたプロセッサ ・32ビットデータ径路 ・ハードウェアでの自動タイプチェック・完全ページ化
256Mワード(10バイト)仮想メモリ ・スタック向き構成 ・ハードウェアスタックポインタを有する大規模高速ス
タックバッファ ・高速命令取出し装置 ・高効率のハードウェア援助による不用情報収集・マイ
クロタスク処理 ・5Mワード/秒データ転送速度 本発明に従った装置は、シーケンサ装置と、データ径路
装置と、メモリ制御装置と、フロントエンドプロセッサ
と、I/O装置と、相互通信用に他の周辺装置およびデ
ータ装置を接続可能な共通Lバス上に接続された主メモ
リとを備えている。
これら上記の要素に使用される回路、および、そこに含
まれたファームウェアは、本発明の目的を達成した。特
に、本装置の新しい領域は、Lパスと、Lパスの協同的
組合せと、集中誤り訂正回路、および、プロセッサ調停
による直接メモリアクセスを含む同期パイプラインメモ
リと、2セグメントアドレツシングを有するスタックキ
ャッシュウィンドーと、ページハツシュテーブルおよび
ページハツシュテーブルキャッシュと、不用情報収集お
よびポインタ制御と、マクロコード命令シーケンス内外
での割込みを可能とするマクロコードとマイクロコード
の近接接続と、タグ付構成を有する並行データタイプチ
ェックと、手順呼出しおよびマイクロコードサポートと
汎用パスと、記号言語処理をサポートするための固有命
令セットとを含んでいる。
本発明のスタックキャッシング機能は、少くとも一組の
連続する主メモリアドレスのデータを記憶し、主メモリ
よりも高速でアクセス可能なバッファメモリ内での少く
とも一組の連続する主メモリアドレスのデータ記憶を有
効とするための装置を含んだ主メモリコントローラ内で
実行される。
更に、メモリコントローラは、データがバッファメモリ
内に記憶される主メモリ内のこれらの連続アドレスを識
別するための装置と、この識別用装置によってアドレス
が連続アドレスの組の中にあると識別した場合に、主メ
モリを通さずに直接にパランアメモリに達するために、
またはこの識別用装置によってアドレスが連続アドレス
の組の中にないと識別した場合に、バッファメモリを通
さずに直接に主メモリに達するために、メモリアドレス
を受信するための装置を含んでいる。
データを操作しメモリアドレスを作成する本装置の中央
プロセッサは、ベースポインタおよびベースポインタか
ら選択されたオフセットに対応するメモリアドレスを作
成するための装置と、アドレッシング装置にかける前に
、与えられたアドレスとオフセットを演算的に組合せる
ための装置とを備えている。更に、中央処理装置はベー
スポインタおよびオフセットを1タイミングサイクル内
に作成し、このベースポインタとオフセットを、同一の
タイミングサイクル内に演算的に組合せる。
これらは、この機能にのみ設けられた演算論理装置を提
供することで、予定の方法で実行される。
更に、アドレッシング装置は、アドレスなCPUから主
メモリの物理位置に、識別用装置と同一の回路を用いて
、変換するための装置を有利にも備えている。
更に、これらの機能をより効率的に実行するために、C
PUはベースポインタからのオフセットを予め選択され
た範囲に限定し、ベースポインタとオフセットとの演算
的組合せが少くとも一組のメモリアドレス内に入るよう
に確実にするための装置を含んでいる。これは、記号処
理言語をマクロコード命令のシーケンスにコンパイルす
るコンパイラ内で有利にも実行される。
並行データタイプチェックとタグ付構成は、各データオ
ブジェクトが識別タイプフィールドを有するデータオブ
ジェクトを保存する能力を王メモリに与えることで達成
される。各データオブジェクトの残り部分からタイプフ
ィールドを、CPUによるデータオブジェクトへの操作
よりも前に分離するための装置が備えられている。デー
タオブジェクトへの操作と並行して、分離されたタイプ
フィールドを、関連するデータオブジェクトの残り部分
への操作に関して、チェックを行いその操作に応じて新
しいタイプフィールドを作成するための装置か含まれて
いる。この後、新しいタイプフィールドと、操作の結果
とが組合せられる。木製値は特に有利に、データオブジ
ェクトへの各操作を予定のタイミングサイクルで実行し
、分離装置とチェック装置と、組合せ装置とは操作と同
一のタイミンクサイクル内で、新タイプフィールドの分
離、チェック、および組合せを行う。本装置は、作成さ
れたタイプフィールドがエラーであるか変更か必要であ
る場合に作成された予定のタイプフィールドに応じてデ
ータプロセッサの動作に割込みをかけてトラップな発生
させ、タイプフィールドか変更した場合にデータプロセ
ッサの動作な続行するための装置をも備えている。
ページハツシュテーブル機能は、主メモリがページ番号
とオフセット番号とを含む多ビツト実アドレスで定義さ
れる各位置を有している装詔内で実行される。CPUは
データへの操作を行い、仮想ページ番号とオフセット番
号とを含む関連する仮想アドレスを用いてデータを主メ
モリ内に保存する。ページハツシュテーブル機能は、仮
想アドレスを実アドレスに変換し、ハツシュされた仮想
ページ番号に対応するマツプアドレスを作るために、仮
想ページ番号に対して第1ハツシュ機能を、仮想ページ
番号のビット数を減少させるために実行するための装置
と、ハツシュされた仮想ページ番号に対応するマツプア
ドレスに、実ページ番号とそれに対応する仮想ページ番
号とを保存するための、少くとも1個のアドレス用能な
マツプコンバータと、仮想ページ番号と、マツプアドレ
スでアクセスされた仮想ページ番号とを比較するための
装置であって、望ましい比較が記憶された実ページ番号
がマツプコンバーク内に存在することを示ずものである
装置とを含んでいる。第1ハツシュ機能および変換の実
行と並行して、仮想ページ番号に対して第2ハツシュ機
能を実行するための装置も備えられ、更に望ましい比較
が存在する場合にアクセスされた実ページ番号およびオ
リジナルのオフセット番号を主メモリにかけ、望ましい
比軟が存在しない場合に第2ハツシュされた仮想ページ
番号を主メモリにかける装置も備えられる。
特に有利な実施例においては、変換装置は各マッシコン
バータか第1のハツシュされた仮想ページ番号に対応す
るマップアドレスを受信するものである少くとも2個の
アドレス用能なマツプコンバータと、少くとも2個のマ
ップコンバータのうちの最も新しく使用されていない方
のマップアドレスに仮想ページ番号と実ページ番号とを
瞥き込むために全てのコンバータからの望ましくない比
較結果に応答するための装置とを備えている。
第1および第2ハツシユされたアドレスか該アドレスを
位置づけない場合のために、主メモリは、第2ハツシユ
された仮想ページ番号によってアドレス可能な主メモリ
内のページハツシュテーブルとアドレスのための第2テ
ーブルとを定義するための装置を有している。CPUは
、各マイクロコード命令が1タイミングサイクル内で実
行される少くとも1個のマイクロコード命令を実行する
ためのマクロコード命令に応答するものであって、変換
装置は、第2テーブル内にマイクロコードで制御された
アドレスルックアップを作成するために、ページハツシ
ュテーブル内に物理アドレスを位置づけることでの障害
に応答する装置を含んでいる。
更にバックアップとしては、第2記憶装置を有している
。例えはディスクであり、こゝで主メモリは第3テーブ
ルを備え、第2記憶装置はアドレスのための第4テーブ
ルを含んでいる。変換装置は、主メモリ内の第3テーブ
ルに、マクロコードで制御されるアドレスルックアップ
を作成するために第2テーブル内にアドレスを位置つけ
るに際しての障害に応答する装置を備えている。この場
合、第6テーブルにない場合は第4テーブルを使用し、
更に第2記憶装置にない場合にはエラーを表示する。
マイクロコードとマクロコードの近い相互関係に関する
重要機能のハードウェア援助には、CPUの改良が含捷
れ、例外的データプロセッサ条件の予定の組を定義し、
マクロコード命令のシーケンス実行中にこれらの条件の
発生を検出するための装置を備えていることである。こ
れらの装置は、該検出時にデータプロセッサの状態の選
択された部分を保持し、検出された条件の除去時に、中
断されていたマクロコード命令シーケンスをデータプロ
セッサが完了するようにさせるために、これらの条件の
1個が検出されたことに応答するものである。検出され
た条件を除きデータプロセッサを中断されたマクロコー
ド命令シーケンスに復旧させるために、検出された条件
に対して予定のマクロコード命令シーケンスを始動させ
るための装置も備えられている。特に有利な実施例では
、始動のだめの装置は、検出された条件を除くために、
データプロセッサの保持された状態を操作するための装
置と、データプロセッサの保持されていない状態部分を
再生するための装置とを含んでいる。
CPUは少くとも1個のマイクロコード命令で各マクロ
コード命令を実行するための装置を有し、条件の組を定
義し条件の組を検出するための装置はマイクロコード命
令によって制御される装置を含んでいる。更に、データ
プロセッサの状態を保持するための装置はマイクロコー
ド命令で実行される装置を備え、予定のマクロコード命
令シーケンスを始動するための装置はマイクロコード命
令で制御される装着を含んでいる。
本発明の他の重要な特徴は、Lバスと、マイクロタスク
処理と、同期パイプラインメモリと、集中誤り訂正回路
との独自のかつ共同的組合せである。この組合せは、本
発明に従った装置において、メモリと、Lバスに接続さ
れた少くとも1個の周辺装置の動作に同期した予定のタ
イミングサイクル内にデータへの操作を実行するCPU
によって為される。主メモリはデータのパイプライン入
出力を行うために各タイミングサイクルに新しいメモリ
アクセスを始動するための装置を有し、CPUは更にマ
イクロコード命令タスクシーケンスを記憶するだめの装
置と、予定の装置条件に応じて、タスクシーケンスに他
のタスクシーケンスで割込み、その条件が除去された場
合に割込まれたタスクシーケンスを続行するための装置
を含んでいる。Lバスはメモリと、CPUと、周辺装置
とを並列に相互接続でる多導線双方向バスであり、単独
集中誤り訂正回路はメモリ、CPU、および周辺装置に
共有される。メモリとCPU間で集中誤り訂正回路を介
して通信するための第1タイミングモードと、周辺装置
とCPU間で、その後、主メモリ間で集中誤り訂正回路
を介して通信するための第2タイミングモードとを定義
するために、システムタイミングサイクルに同期して、
バス上でのデータ転送を制御するための装置が備えられ
る。これらの機能の組合せによって、データは周辺装置
から主メモリに記憶され、更に、データは、周辺装置の
識別に基ついた周辺装置のための予定の位置の主メモリ
から移動される。更にCPUは、本装置の状態に従って
受信されるデータを出力する周辺装置の状態を変更する
ための装置を含んでいる。
汎用バスの機能は、本発明による装置であって入出力装
置が接続可能な共通システムバスで接続された主メモリ
内にCPUを有する装置に、以下を可能とするために備
えられている。即ち、データおよび制御信号をシステム
バスと、選択された外部パスタイプの周辺装置間で伝送
するために、データと制御信号を汎用バス形式と選択さ
れた外部バス形式との間で変換するためのシステムバス
と、汎用バスと汎用バスに接続された第2インターフエ
ース装置との間の伝送を有効とするために、デ−夕およ
び制御信号をシステムバス形式と汎用ハス形式との間で
変換するための第1インターフエース装置を備えること
によって、汎用とされている第2バス上の他の周辺装置
およびコンピュータシステムと通信を行う。この汎用バ
スの主機能は、第1インターフエース装置がデータおよ
び制御信号を、選択された外部バスに無関係に変換する
ことである。このため、第1インターフエース装置は、
外部バス周辺装置の制御信号及びアドレスを、システム
バス形式から汎用バス形式に、外部バク周辺装置の制御
信号およびアドレスの形式に無関係に変換する装置を備
えている。
ポインタ制御とこれに関連づけられた不用情報収集機能
は、主メモリを予定の領域に分割するための装置と、デ
ータオブジェクトをそれらの領域に位置つけるための装
置と、各アクションコードが1領域に対応するアクショ
ンコードのテーブルを作成するための装置とで実現され
る。次に、作成されたアドレスは、それに関連するアク
ションコードを得るために、そのアドレス上での動作と
並行して、テーブルにかけられる。こゝで、ある動作が
実施されるべきであるかを、アドレス上での動作と並行
して決定するためにアクションコードに応答するための
装置か備えられる。特に有利な実施例では、アクション
コードの獲得とそれに対する応答の決定はアドレス上で
の動作と同一のタイミングサイクル内に行われる。これ
はマイクロコード命令によって決定用装置を制御して実
施される。
CPUは不用情報収集を行うべきメモリ領域を決定する
ことによって、装置内の不用情報収集を実現スるために
マクロコードおよびマイクロコード命令のシーケンスを
実行するための装置であって、アクションコードテーブ
ルを作成するための装置は不用情報収集シーケンスを始
動する1個のアクションコードな作成するものである。
本発明によれは、不用情報収集は、データオブジェクト
か新しいアドレスに移動されたかを調べるために、作成
されたアドレスでデータオブジェクトを検査するための
装置と、移動されていなかった場合にデータオブジェク
トを新領域内の新アドレスに移動するための装置と、移
動されたことを示すために、作成されたアドレスでデー
タオブジェクトを更新するだめの装置と、データオブジ
ェクトが移動される場合に、作成されたアドレスを新し
いアドレスに変更し、作成されたアドレスのデータオブ
ジェクトに対する処理の継続を有効とするだめの装置と
によって実現される。
本発明による装置は不用情報収集をサポートするハード
ウェアを提供し、この不用情報収集シーケンスを、主メ
モリをページに分けることによって、更に、各メモリペ
ージに関連する少くとも1ビットを有する記憶装置を備
えることによって、特に効率のよい方法で実施するよう
にしている。
その後、与えられたアドレスは、メモリ領域に位置づけ
られるが、アドレスをメモリの領域に位置づけるのと並
行して、その中のアドレスがメモリ内の選択された領域
の組であるかを示すために、あるページに対して少くと
も1ビット内にコードを入れるための装置が備えられる
このコードを入れるための装置は、各アクションコード
が1メモリ領域に対応しているアクションコードのテー
ブルを作成するための装置を含んでいる。アドレスはテ
ーブルに、そのアドレスを位置づける動作と並行してか
けられるが、関連するアクションコードに応じて、アド
レスが選択された領域の組の1個内に存在するかを決定
するための装置が備えられる。不用情報収集は各ページ
を検査することでメモリ領域のセット内で実現されるが
、装置は検査装置が、コードが入れられていないページ
をスキップできるように、各メモリページに対して少く
とも1ビットをセンスする。
本発明のバス装置は、本発明の他の特徴であって、本発
明の装置に関しては唯一のデータプロセッサが含まれる
が、このデータプロセッサは、周辺装置と、Lバス上の
データプロセッサと通信するための装置を有する周辺装
置とに組合せられたものである。データプロセッサは、
データプロセッサシステムクロックと、中央プロセッサ
がトランザクションを有効にするためにバス要求信号を
作成し、同一のクロック期間内にバス上にアドレスデー
タを出す1クロック期間を含む要求サイクルを含むタイ
ミング構成とに同期して、バス上の全テのトランザクシ
ョンを有効とするためのバス制御装置を備えている。要
求サイクルに続いて、周辺装置かアクセスされる少くと
も次のクロック期間を含むアクティブサイクルが存在す
る。アクティブサイクルに続いて、データか周辺装置に
よってバス上に置かれる次のクロック期間を含むデータ
サイクルがある。バス制御装置は、連続するクロック期
間に一連のデータ要求信号を中央プロセッサから受信す
るためのブロックバストランザクションモードを定義し
、バス上の連続するトランザクションのサイクルをオー
バーラツプさせるための装置も有している。
本発明によるLバス制御は、周辺装置とCPU間、その
後主メモリ間の通信を実施するために、マイクロディレ
クトメモリアクセス転送を実行するための装置も含んで
いる。本発明の特に有利な実施例においては、単独集中
誤り訂正回路は、メモリと、中央プロセッサと、周辺装
置とによって共有され、バス上の全てのデータ転送は単
独集中誤り訂正回路を介して行われる。
このため、本発明によるデータ処理装置と共に使用する
ためのデータ装置は、1システムクロック期間を含む要
求サイクル内にアドレスデータを受信するために、バス
上のトランザクション要求信号に応答する装置をその内
部に、更に、少くとも1システムクロック期間を含むア
クティブサイクル内にアドレスデータをアクセスし1シ
ステムクロック期間を超える期間が必要な場合に重み信
号を発生ずるだめの装置と、次のシステムクロック期間
を含むデータサイクル内に、データをバスに印加するた
めの装置とを備えている。データ装置は連続するクロッ
ク期間内に要求信号を受信し、連続するトランザクショ
ンに対して要求サイクルと、アクティブサイクルと、デ
ータサイクルとをオーバーラップさせるための装部を備
えることもできる。
本発明のデータ装置は、マイクロDMAデータ転送を有
効とするためにマイクロコード制御下でシステムタイミ
ングサイクルに同期して、バス上にデータ転送を有効と
することか可能である。
不発明の上記および他の目的、機能、および有利な点は
、以下に詳細に示す、マイクロコードリスティング、マ
イタロコードピットのリステイング、マイクロコードコ
ンパイラ、フロントエンドプロセッサプログラム及びリ
スト作成飴の要約および添付のシステム図で参照される
プログラムアレー論理装置のりスティング、を含んだ添
付の付録に開示した本発明の方法および装置に従って達
成される。
本発明を添付の図に従って詳述する。
第1図は、本発明による装置のブロック図である。図に
示すように、本発明の基本装置は、シーケンサSQ、デ
ニタ経路装置DP、メモリコントローラMC、フロント
エンドプロセッサFEP、I/O装置、および主メモリ
を含み、これは全てLバスと呼ばれる共通バス上に並列
接続されている。更に図にある通りに、周辺装置のよう
な他の装置なLバスに並列に接続可能である。
基本装置は、プロセッサキャビネットを含み、これには
、指定の色分けされたスロットがあり、これらのスロッ
トはDP−ALU、SQ、FEP、IO、およびIFU
−MEMボード用Lバス裏面上に備えられている。裏面
の残り部分は未指定であって、基本システムでは14個
の36ビットスロツトが空きとなっている。メモリボー
ドを未指定のスロットに挿入することでそのボードのア
ドレスが設定すれる。この目的については、ボード上に
スイッチはない。診断のためには、FEPはボードがど
のスロットにあるか、更にボードの連続番号を常時示す
ことができる。
本装置には内部ケーブルは使用されていない。
ボードレベルでの相互接続は、表面を介して行われる。
コンソールをプロセッサキャビネットに接続するために
外部ケーブルが使用される。
本発明による装置は、第1図に示すような構成要素によ
って物理的に構成されるが、本装置の多くの新しい機能
は1個ないしより多くのシステム構成要素上の要素に見
られる。このため、システム構成要素をまずその中に含
まれる詳細な回路の機能に関して、続いてそれらの回路
機能について装置の機能動作を説明する。
シーケンサ シーケンサのブロック図を第2図に示し、その構成要素
を第6図から第40図に示す。
シーケンサは本装置の動作を制御する。即ち、マイクロ
タスク処理を行なう。この処理の実行において、シーケ
ンサは8K×112のマイクロコード制御メモリ(第1
6図−第29図)および、制御メモリアドレスドライバ
(第30図)と、制御メモリアドレス選択装置(第31
図)と、制御メモリパリティ装置(第32図)と、マイ
クロ命令デコード回路(第33図)と、マイクロ命令フ
ィールドとを含む制御メモリのための関連回路を使用す
る。
各112ビツトマイクロコード命令は、各種内部スクラ
ッチパッドレジスタからの2個の32ビツトデータ源を
指定する。多くのZetalisp命合は1マイクロサ
イクル内で実行されるので、通常は、マイクロプロダラ
ムを書く必要はない。
本装置のマイクロマシーンは時分割処理されている。つ
まり、プロセッサはマイクロ命令実行に加えて、例えは
ディスクを駆動するといったハウスキーピング動作を実
行する。これは、ディスクコントローラや他のマイクロ
タスクに完全な処理能力を与え、装置のマイクロマシー
ンの一時記憶域を与えるという利点となる。マイクロマ
シーンとディスクコントローラを近くに接続しであるこ
とは有効な特徴となっている。
最大8個の異ったハードウェアタスクを起動できる。マ
イクロマシーンの制御によって、タスクの切替は、数マ
イクロ秒毎に行われるのが典型的である。装置内では以
下の他のタスクが走行する。
・Zetalispエミュレータタスク;命令の実行・
ディスク転送タスク:主メモリからデータを取り出し、
ディスクシフトレジ スタにロード。ディスクシ ーケンス処理のタイミング と制御を取り扱う。
・Ethernetハンドシェーク処理およびプロトコ
ールエンコード/デコード、 Ethernet:コンピュータシステム、周辺装置お
よびユーザ間の通信用地域通信網。
物理構成は、通信網上の全ノードを 結ぶ同軸ケーブルである。
FEPおよびマイクロデバイス(即ち、ディスクコント
ローラやEthernetコントローラのようにマイク
ロコードによってサービスされるデバイス)は、自身の
ためにタスク切替を起動できる。シーケンサボード上の
タスク優先権回路(第4図)は、マイクロタスクの優先
権を決定する。多重マイクロコンテクストがサポートさ
れているので、他のタスクへの切替時にマイクロタスク
のコンテクストを退避させる必要がない。
更に特に、シーケンサは、タスク状態獲得回路(第5図
)と、タスク状態を保存するためのタスク状態メモリ(
第6図)と、タスク状態パリティ回路(第7図)と、タ
スクメモリ出力レジスタ(第8図)と、以下のように割
当てられる16タスクの優先権を決定するタスク優先権
回路(第4図)とを備えている。
・タスク8−15:DMAまたは入出力タスク、オープ
ンコレクタパスラインからの ブートタイム起動要求中に各装 置に指定される。
・タスク7:使用されない。このタスクに対するタスク
状態メモリはデバッグの為に FEPが使用できる。このタスクをカレントタスクにす
る方法は、FEPが強制した時のみである。
・タスク1.2.5.8:ソフトウェア。起動要求はレ
ジスタ内に示される。ビットnは 特別機能を行うことで設定され る。これらのタスクの内の1個 は、全DMAタスク用のバックグ ラウンドサービスタスクである。
(次のアドレスおよびワード力 ウントの設定を行う。)他のタ スクは指定されないままである。
・タスク4:低速装置。オープンコレクタパスラインか
らの起動要求。
・タスク3:FEPサービス(FEPにより起動要求設
定可) ・タスク0:エミュレータ。常に起動要求が受けつけら
れる。
DMAタスクは、通常、起動に対して2サイクルのみ走
行する。第1サイクルでは、Aメモリ(第51図−第5
3図)からの物理アドレスを出力し、加算し、DISM
ISSを実行し、装置からの条件によって処理を行う。
(例えば、エラーやエンドオブパケットの処理を実行す
る。)第2サイクルでは、ワードカラントを減算し、結
果に従ってスキップする。(正常の第1サイクルまたは
最終の第1サイクルにスキップする。)装置とメモリ間
のデータ転送は、メモリコントロールの制御下でLパス
を介して行われる。最終の第1サイクルは通常の第1サ
イクルと同じであるが、この次に続くルーチンは完了フ
ラッグを設定し、パックグラウンドサービスタスクを起
動する。更に起動イネーブルフラグをオフにして、次の
DMA動作が設定される迄は転送が起らないようにする
。DMAアドレスとワードカウントの二重バッファリン
グを行うものや、DMAマイクロコードの二重コピーの
ある装置もある。これらのDMAマイクロコードでは、
各マイクロコードは、いずれかのワードカウントが空に
なると他方にジャンプする。パックグラウンドサービス
タスクによる処理は、他の装置の為にDMA要求によっ
て割込み可能である。
タスク1.2.5.6はソフトウェア要求のタスクで高
優先度タスクが低優先度タスクな続行させるときにのみ
使用される。これらは通常エミュレータから起動される
ことはない。(START−I/Oでは起動されること
がある。) ハードウェアタスク(8−15)に対する起動要求はバ
スのオープンコレクタライン上出される。
これらは同期されていない。各装置は3ビットのタスク
番号と1ビツトのタスクイネーブルフラッグを含んだレ
ジスタを有している。タスク番号は所望の優先度に応じ
て装置に割当てられる。イネーブルがない状態で起動す
ると、これはイネーブルがオンになるまで保持される。
装置が起動要求を確認すると、この要求が放棄されるま
で確認した状態となる。(イネーブルまたは指定したタ
スク番号の変更は禁止されたまゝとなる。)この要求は
、マイクロ命令サイクル終了の前、適当な時に放棄され
て、その2サイクル後に、同期レジスタから除去され、
該タスクは起動されないようにされる。
サービスの第1マイクロ命令を終了させるクロックに対
する起動要求からの遅れは、このタスクが最高位の優先
度を持ちタスクインヒビットが発生しなけれは4サイク
ルから5サイクル(または1マイクロ秒ンである。実際
、尚速装置は起動要求を600ns早く設定する。プロ
セッサは起動要求を同期させ、優先度をエンコードして
、タスク切替が要求されているかの決定を第5図−第8
図の回路で行う。
要求放棄(解放)はハードウェアとソフトウェアタスク
では異る。ハードウェアタスクが解放されると、1個の
別の、マイクロ命令を実行するが、ソフトウェアタスク
の場合は、2個のマイクロ命令が実行される。ハードウ
ェアタスクのタイミングは、DMAタスクが起動し、2
サイクルの間だけ走行できるようにするために必要であ
る。
タスク切替が既に出されている時に解放が行われると、
例えは、解放の仮に、該マイクロ命令が他のタスクから
出された場合には、本装置は、先に進んでから解放を行
う。つまり、通常は直ちに実行される後続のマイクロ命
令は、次にこのタスクが起動される時まで実行されない
。典型的なDMAタスクのような、起動するとすぐに解
放されるタスクには適用されない。タスクスイッチ直後
には、タスクは高優先度のタスクによって優先権を与え
られないで、タスクが起動されると、少くとも2サイク
ルは走行を常に保証されているからである。
タスクスイッチタイミング/シーケンス処理は次の通り
である。
第1サイクル、前半(first half)同期した
タスク要求の優先度決定。ハードウエアタスク要求につ
いては優先度エンコーダでマスクされ、このサイクルで
解放されているかを決定する。
第1サイクル、後半(second half)選択さ
れたタスクを、NEXT NEXT TASKラインに
乗せる。カレントタスクでなければ、NEXT TAS
K SWITCHが確認(出力)される。
選択されたタスクの状態を、TASK CPC、TAS
KNPC、およびTASK CSPレジスクに取り込む
クロックの直前に、実際にタスクを切替るか、同一タス
クのまゝにするかを決定する。同一タスクの場合には、
TASK CPCレジスタ等は無意味で、NEXT T
ASK SWITCHがオフにされる。
第2サイクル、前後半共通 TASK SWITCHが確認される。TASK CP
CはCMEM Aに対して選択される:第1マイクロ命
令および新タスクを取り出す。TASK NPCはNP
Cレジスタに対して選択される。CPSは、TASK 
CPCであるCMEM Aを得る。TSKCレジスタは
NEXT CPC、NEXT NPC、NEXT CS
PおよびCUR TASKラインを得る。NEXT T
ASKラインは新タスク番号を示す。
第2サイクル、後半 NEXT TASKおよびTASK CSPは制御スタ
ックをアドレスする:CTOSは新タスクの先頭を得る
。(エミュレータに切替る場合でスタックが空である場
合以外。この場合にはIFUを得る。) CSPはTASK CSPを得る。
第3サイクル、前後半共通 タスクの第1マイクロ命令を実行する。タスクの第2マ
イクロ命令を実行する。2サイクルのみの起動であれば
(解放は確認されている)、このサイクルで次のタスク
を選択する(上述の第1サイクルのライン)。
第3サイクル、前半 TSKCからタスクメモリ印書込み(旧タスクの状態を
退避)。第2サイクル中にCURタスクからロードされ
たTSKM WAがアドレスとなる。
第4サイクル タスクの第2マイクロ命令を実行する。2サイクルのみ
の起動であれは、TASK SWITCHが確認され、
このサイクルでは他のタスクを選択しない。
シーケンサ回路の他の機能は、第9図の回路で実行され
るトラップアドレス処理でちる。トラップ源は、データ
径路ボード上に殆んどがあり、主メモリ制御はMAP 
MISS TRAPを与える。低速のジャンプは全て、
データ径路ボードから発生する。
シーケンサは通常、トラップまたは低速ジャンプ条件が
存在しない場合に実行される。トラップアドレスの解釈
に関しては以下の通りである。
ビット12はスキップビットである。ビット8−11は
ディスパッチビットである。ビット0−7は加算ができ
る。よって、各マイクロ命令は、それ自身の中には次の
アドレスのフィールドは有していないが、4連続制御メ
モリ位置をとる。これは多くの目的に使用され、連続ア
ドレッシングは屡々重要なものである。マクロ命令がそ
の連続するアドレスに入ってゆくことも可能である。(
たゞし、小規模なオペレーションコードの場合は除く。
この場合には、ワイヤ接続されたトラップアドレスと矛
盾を起す。)ディスパッチを行うためには、使用されて
いない16位置(ピット8−11で示される)のブロッ
クを探す必要がある。これは、その連続する全ての4位
置を使用しないopcodeのブロックを探すか、ビッ
ト12をオンにすることで行われる。(同時にスキップ
が発生するディスパッチは僅かである。) シーケンサは、制御スタック回路(第10図)と、制御
スタックポインタ(第11図)と、制御スタックレジス
タ(第12図)と、プログラムカウンタレジスタおよび
ネクストプログラムカウンタレジスタ(第13図)と、
ネクストプログラムセレクト(第14図)と、プログラ
ムカウント加算回路(第15図)とをも含んでいる。
アドレスおよびマルチプレクサは14ビット単位で増加
するので谷タスクは16位置の制御スタックを有してい
る。CADRは、その62位置のスタックの前半を多く
は使用しない。事実、PUSHJを実行する、しないに
かゝわらず、メモリは各サイクルで書込まれるので、制
御スタックの15位置だけ使用してもよい。
CSPレジスタは、スタック内の最高値の位置を常に示
す。このため、スタックが空の場合(CSP−17が入
る。本装置では書き込み前の読み込みでなく、読み込み
前の書き込みが行われるが、CTOSレジスタを通じて
はパイプライン処理が実行される。実際には、1命令の
サブルーチンが動作する。
エミュレータのスタックが空である場合(CSP−17
およびエミュレータタスクが制御下にある場合)、IF
Uからの次の命令のアドレスを含んだ別のスタック位置
が存在する。この位置に対してPOPJを実行すると、
NEXT INST信号が作成され、スタックポインタ
が減算されないようになる(即ち、17のまゝであって
、16にされない。)NEXT INSTはIFUに実
行を命じ、1ないし2個の処理を行う(データ径路内の
スタック調整カウンタをクリアする)。
各サイクルの前半において、NPCは制御スタック内の
次のフリー位置(カレントタスクに対して)に書かれる
。これによってCSPが示す位置の値を1だけ増加する
。NPCは通常現時点で実行しているマイクロ命令を示
す制御メモリアドレスに1を加えた値を含んでいる。
各サイクルの後半では、制御スタックの先頭がCTOS
レジスタに読込まれる。次のサイクルで、CTOSとC
SPが一致する。タスク切替時には、新しいタスクのス
タックから読込みが行われる。
POPJを実行した時に起ることは、パイプライン処理
によってもたらされることに注意され度い。
PIPJの前のサイクルではサブルーチンリターンアド
レス(または、IFUの次の命令のアドレス)はCTO
Sレジスタに読込まれる。直前のサイクルがPUSHJ
またはPOPJを実行しなければ、これは、CSPが示
すスタック位置から得られる。次のサイクルもPOPJ
であれば、POPJを行った場合、CSPを減算し、次
に低いサブルーチンのリターンアドレスをCTOSに読
み込む。POPJが次のマクロ命令に進むと、CSPは
減算され、その後、CTOSはマクロ命令用アドレスに
ロードされる。
トラップ処理では、NPCが退避されるようにPUSH
Jが強制的に実行される。必要であるかなしに拘らず、
低速ジャンプにおいても同様に実行される。POPJか
らのトラップの場合にはCSPを減算するのでなく加算
する。CTOSは、以前に退避したNPCでロードされ
る。
制御スタックは、ジャンプによらずに、CTOSからの
制御メモリアドレスに対しての指定をせずにPOPJを
指定することでポツプされる。
NEXT CSPライン上での処理をまとめると、ここ
ではCSPレジスタへの入力と、制御メモリへのアドレ
スであるが、説明を簡単にするためにタスク処理をまず
無視すると以下の通シとなる。
各サイクルの前半では、NEXT CSPはCSP+1
を含んでいる。各サイクルの後半では、NEXTCSP
は通常CSPを含んでいるが、POPJではCSP−1
を、PUSHJではCSP+1を含んでいる。
NEXT lNSTを起動するPOPJはCSP−1で
なくCSPを生成する。トラップまたは低速ジャンプは
、PUSHJと同様に、CSP+1を生成する。
前半は書出しであり、後半は読込みである。
各サイクルの前半では、高位ビットはカレントタスクを
示し、後半においては、高位ビットは次のタスクを示し
、低位ピットは次のタスクのCSPとスワップされるこ
ともある。
トラップされた命令からPCLSRする場合には、CS
Pを1だけ減算しなければならない。これは−CTOS
 CAME FROM IFUのスキップ−条件によっ
て行われ、CSP−1でありエミュレータタスクである
時に成立する。この条件が成立するまで、POPJを実
行できる(マイクロ命令アドレス源としてCTOSを使
用しないでよい)。
第35図および第36図に示すクロック回路は本装置の
タスク処理制御を有効とする。
データ径路ボードは常に、ゲートされないクロックを受
ける。マイクロ命令のデコードは必要に応じてNDPに
よって変更される。
NDPはFEPパリティエラー、またはホールトマイク
ロ命令によって、トラップを行うためのnopのDR、
装置を待ちにする(以下参照)ためのnopのDR、ま
たは停止された装置の為のnapのDRとなる。
待ちは、一時停止の一種である。装置が待ちである時に
は、待ち条件が無くなるがタスク切替が行われるか(他
のタスクは待ちは必要ないかもしれない)するまで、装
置は他に影響を与えずに同一のマイクロ命令を実行しつ
づける。タスク切替から戻ると、同一マイクロ命令が再
度実行される。
待ちはメモリとIFUを同期させるために使用される。
待ちは、一時メモリ制御にデータが未だ到着していない
時に、メモリからのデータを、データ径路が要求した場
合に、およびメモリがビジーである時にメモリサイクル
を始動しようとした場合に発生する。パスがビジーであ
る時にマイクロデバイス動作を実行しようとした場合、
またはIFUからのアドレスにブランチをしようとする
時(これはマクロ命令の最後のマイクロ命令である)に
、IFUが与えられたアドレス(直前のサイクル中)が
不正であるとした場合に待ちが発生する。
待ちの決定は、クロックのデートのために使用する場合
もあるので、サイクルの前半で行われなければならない
待ちは、NDPを発生し、マイクロコード命令の影響が
他に及ばないようにするが、シーケンサ内のタスク切替
は部分的にしか禁止されない。直前のサイクルでタスク
切替がスケジュールされると、即ち、TASK SWI
TCHが確認されると、シーケンサの状態(CPC、N
PC、UIR、CSP)は新しいタスクの状態でクロッ
クされるが、古いタスクの状態は退避されない。このた
め制御がこのタスクから戻った時には、カレントマイク
ロ命令が再び実行される。
タスクスイッチがスケジュールされなければ、シーケン
サの状態は変化しないで、マイクロ命令は直ちにリトラ
イされる。待ちの間には、新しいタスクの起動は受けつ
けられ、高い優先度のタスクによって待ちに割込みがか
けられる。そのタスクが解放されると、待ちのマイクロ
命令がリトライされる。
トラップによってNDPが発生し、マイクロ命令が他に
影響しないようにするが、トラップが発生してもシーケ
ンサは走行している。サイクルは、制御メモリアドレス
をトラップアドレスに変えるために、2倍の長さに延長
される。トラップは、タスク処理と正しく相互動作を行
う。実制御メモリアドレスが変更されなくても、サイク
ルは2倍の長さにされる。NEXT CPCライン(ト
ラップアドレス)の変更された内容は、タスク状態メモ
リに書出される。クロック前縁の前ではNDPが有効で
なく、クロックをデートするのには使えないことに注目
され度い。
メモリ制御、即ち、メモリサイクルをクロックの前に始
動すべきかを決定するには、上記のように単純ではない
。NDPは実際には、早い構成要素と遅い構成要素とか
らできている。早いという原因は、クロック後の50n
s以内に安定し、メモリサイクルのスタートを禁止でき
るからである。
これらには、停止中の装置、LBUS WAIT、Lバ
スへの介入のためによる待ちが含まれる。後者の信号は
事実少しばかり遅いが、メモリ制御はこの信号を、ND
P自身よりも早期に検出し、そのためより早く安定する
NDPに関して遅い構成要素という理由は、クロックが
確認されるまでは常に真でないとされるからである。ク
ロックの前縁が出た後、NDPは現時点でのマイクロ命
令の他への影響を禁止するためにオン状態となることが
できる。メモリサイクルが始動されてしまっている場合
には、これは停止できないが、書出しを読込みに変える
ことは可能である。
マップミスがない場合には、NDPはクロックの後縁よ
り以前にメモリサイクルを停止させる。
NDPの遅れの原因はトラップ、パリティエラー、およ
びハーフマイクロ命令がある。全てのハードウェアエラ
ーは、制御メモリパリティは、チェックするには余シに
長い時間がかかるので、遅いといえる。しかし、不正の
マイクロ命令の実行よりも後でなく、その前に停止して
、制御メモリ内の不正パリティマイクロコードブレーク
ポイント機構として使用できるようにすることが望まし
い。
制御メモリパリティはシーケンサクロックを停止するの
に管理するために十分な早さで演算される。(しかし、
NDPをオンにしプロセッサ中に、そのオン信号と、N
DPからの全ての信号を、クロックの前縁よりも前に分
配する程は速くない。)これらの全ては、各種条件でゲ
ートされるメモリ制御およびシーケンサボード上の多様
なクロックで為される。
CLK:主クロックで停止することはない。
SQ CLK:主シーケンサ状態(CPC、NPC、C
SP、CUR TASK)のためのクロック、タスク切
替がなければWAIT で停止する。
DIRCLK:SQ CLKと同様だがシーケンサステ
ップ動作がイネーブルでない場 合でも単一ステップでクロックさ れる。
TSK CLK:SQ CLKと同様だがWAITで停
止される。
TSK CLK A:TSK CLKと同一。電気的に
分離した写し。
TSKC CLK:タスク状態獲得レジスタに対するク
ロック。SQ CLKと同様だが、 常にWAITによって停止される。
CTOSレジスタはTSK CLKによってクロックさ
れる。本装置がIFUを待っている時にはIFUからの
新アドレスがクロックされて入力されねばならないので
、CTOSレジスタはSQ CLKによってクロックで
きない。コントロールスタックでパリティエラーが発生
した場合には、このレジスタが変化する前にその内容を
読取ることができることが望ましいので、CTOSレジ
スタはCLKでクロックできない。
本装置が停止すると、シーケンサと、データ径路とを別
々にまたは同時に単ステップで進めることができ、いず
れの状態も変化させることなくマイクロ命令レジスタを
読み書きできる。これによって、完全な状態を退避し、
復元することが可能となる。(UIRを退避し、シーケ
ンサをステップさせ、その全状態をスパイバスに入れ、
データ径路状態を読取るためのマイクロ命令を実行する
。)制御メモリをディスエープルにしたままで本装置を
最高速度で走行させて、UIRが変化しないようにして
、1マイクロ命令スコープループを作ることが可能であ
る。更に、シーケンサを停止した状態でデータ径路を最
高速度で走行させることも可能である。これは、有用で
ある場合もある。
FEPはこのことを、SQCLKCの制御レジスタを介
して実行される。 SQCLKCは装置がリセットされ
るとクリアされる。
0 RUN 装置が自由に走行するように1にセットさ
れる。
1 STEP 装置にクロックをかけるためにまず0に
続いて1にセットされる。
2 ENABLE DP 0であればSTEPはデータ
径路に影響しない。
3 ENABLE SQ 1であればSTEPおよびR
UNはUIRを除いてシーケンサに影響しない。
4 ENABLE CMEM 1であればCMEMから
UIRへ、1以外ではCMEM WDから得られる。
5 CMEM WRITE 1であれば制御メモリ書込
み。
6 ENABLE TRAP 1であればトラップ条件
でnopをセットしCMEMアドレスを変 更。
7 ENABLE ERRHALT 1であれば、パリ
ティエラーでRUNを禁止。
8 ENABLE TASK 1であれば、タスクスケ
ジュールをイネーブルし、 9−12 TASK 0であれば、タスク番号はこれら
のビットから決定される。
13 ENABLE WP タスクに対しての書込みパ
ルスをイネーブルし 14      制御スタックメモリ予備分をイネーブ
ルする。
15    予備 制御メモリ書込み時には、RAM出力を禁止するために
CMEM ENBは0でなくてはならないし、トラッピ
ングは制御アドレスを安定にするためにディセーブルさ
れなければならない。UIRは通常、適当なアドレス源
に設定される。
トラッピング(即ち、特殊アドレスへのブランチおよび
nop化)はTRAP ENBが0であれば発生しない
。トラッピングがイネーブルであると、NEXT CP
Cラインは正常アドレスとトラップアドレスの間を各サ
イクル毎に変化するので、これらのラインがさほど有用
とならないことに留意され度い。
シーケンサが停止すると次のものは変化しない:CSP
、CPC、NPC、CTOS、CUR TASK、シー
ケンサが停止すると、UIRはENABLE SQにか
かわらず単一ステップ動作を除いて、変化しない。
UIRが変化しないようするためには、制御メモリをデ
ィセーブルし、適当な値をCMEM WDレジスタに入
れればよい。このレジスタに入れられた値は、次に、U
IRにロードされる。
タスクレジスタはシーケンサが走行しているかどうかに
かゝわらず、各クロックでクロックされる。これらはタ
スクメモリに続くレジスタである。
タスクメモリよシ前のレジスタは、シーケンサの状態を
退避する場合、つま9、シーケンサが走行中か単一ステ
ップ動作中に退避が必要な場合にのみクロックされる。
即ち、シーケンサが走行または単一ステップ動作中であ
ってMC WAITが真でない時にクロックされる。全
ての主要シーケンス状態レジスタは、カレントタスクも
含めて、シーケンサが走行中でのみクロックされる。F
EPは、シーケンサが走行中または単一ステップ動作中
に選択された、タスクがタスクスケジューラまたはFE
Pの供給したタスク番号であるかを制御できる。
最後にシーケンサは、エラーハーフ回路(第67図)と
、スパイバス網の部分である第68図に示すデパック履
歴回路とを備えた診断回路を含んでいる。
システムヘの診断インターフェースはスパイバスを含ん
でいる。これは、3600プロセツサの種々の位置を読
み書きするために使用できる8ビット幅のバスである。
プロセッサの読取り可能な位置では、FRPはCPUの
動作をスパイ(検査)でき、このためにスパイバスとい
う名前がつけられている。スパイバスを用いれば、FE
Pは、プロセッサに診断の目的でマイクロ命令を実行さ
せることができる。
診断回路が走行していない場合には、FEPはスパイバ
スを、DMA装置を確認するための特殊チャネルとして
用いる。通常は、FEPはスパイパスを、到着してくる
全てのEthernetパケットのコピーを受信するた
めに使用する。FEPはEtbernetに対しての設
定および転送、更にディスクからの読込みをスパイバス
を介して行うことができる。
表1はシーケンサ上のスパイ機能を示す。
表  1 SPY WRJTE CMEM■、1、・・・・・・1
3WDCMEM WDレジスタの8ピツトスライスを読
取る。このレジスタは制御メモリの書込データのソース
であり、CIEMがディスエーブルされた時にUIRに
入れるマイクロ命令のソースである。
SPY READ CMEM、1、・・・・・・、13
UIRの8ビツトスライスを読取る。(典型的にはCM
EMからのデータを含んでいる。)SPY WRITE
 CPC 1、2 上記のシーケンサ制御およびクロクレジスタ書込み。
16ビットレジスタであるので2個のスパイ機能を有す
る。CTL1は最下位ビットである。
SPY READ NEXT CPC(2addres
ses)タスク処理がない場合の制御メモリアドレスで
あるNEXT CPCラインを読取る。 NPC、CT
OS、トラップアドレス、UNAFの読取りを許す。
CPC読取りには、先ずこれを単独ステップでNPCに
入れなければならない。NEXT CPC選択を制御す
るには、UIRにマイクロ命令を入れればよい。
SPY READ SQ STATUS(2addre
sses )エラーホールト条件を16ビット語として
読取る。
7 AU STOP    15 エラーホールト6 
MC STOP    14 タスク停止5 BMBM
パリテイエ  13 IFUからのCTOSラー 4 AMEMパリティエ  12 CMEM(UIR)
パリテラー              イエラー3 
ページタグパリティエ 11 タスクメモリパリテイエ
ラー             エラー2 タイプマツ
プパリテ  10 CTOS(左)パリティエラー  
         イエラー1 GCマツプパリティ 
  9 CTOS(右)パリテエラー        
   イエラーO(予備)         8 マイ
クロコードホールトSPY READ TASK <3:0>はカレントタスク。
SPY READ  SQ STATUS 2他のステ
ータス: 1−0はCTOSパリティピット SPY READ SQ BOARD IOボードIO
 PROMの読込み(連番、ECOレベル等を与える。
)アドレスは、UIRのフィールドU  AMRA<4
:0>から。
SPY READ DP BOARD IOデータ径路
ボード上のボードIO FROMの読取り(スパイアド
レスはシーケンサがデコードする。) SPY  READ OPC1,2 PC履歴メモリを読込む。
これは16エントリのRAMであり、各エントリはビッ
ト<13:O>にPCを、ビット〈14〉に該マイクロ
命令の−NOPを、ビット〈15〉に次のマイクロ命令
が別のタスクからのものであれば1を含む。OPCメモ
リは逆方向に読取られる。(つまり、シーケンサが停止
した状態で、第1の読取シでは最後に実行された命令が
、次の読取りではその前に実行された命令が得られる。
)16回の読取りの後に、元の位置に戻る。
一度に1バイトだけしか読取れないので(いずれかのバ
イトを読取るとアドレスカウンタは減算される)、まず
全ての16個の偶数バイトを、次に全ての16個の奇数
バイトを読取る必要がある。
データ径路 データ径路装置のブロック図を第41図に示す。
これらは第42図−第84図に詳細なブロック図で示す
種々の回路要素から構成される。
データ径路装置はスタックバッファと、演算論理装置(
ALU)と、データタイプ回路と、不用情報収集回路と
その他の関連回路要素とを含んでいる。
AおよびBメモリは上記の2個のスタックバッファを備
えている。Aメモリは4K×40ビツトメモリで第51
図−第53図に示し、関連回路、例えば、Lパスからの
メモリアドレス回路、アドレスレジスタ、アドレス計算
回路、書込みアドレス回路、およびバッファ回路は、第
54図から第59図に示す。Bメモリは256X40ビ
ツトメモリで、第66図−第64図に示し、対応する回
路は第65図−第66図に示す。
データ径路は、ビット0−31(第67図−第68図)
とマスクおよびマージ回路(第69図−第71図)と、
演算論理装置および関連回路(第72図−第73図)と
を備えたタイプ処理およびタイプチェックを行うための
ハードウエアも含んでいる。乗算器は第74図に、X、
Yおよび0パス回路を第75図第79図に示す。第80
図−第83図には種々クロック、終端、および裏面の接
続を示す。
上記のスタックポインタ回路を第42図に、データタイ
プタグ処理回路を第43図−第44図に示す。第45図
には不用情報収集回路を、第46図−第48回はトラッ
プ制御、条件ディスパッチ、およびマイクロ命令デコー
ド回路を示す。ペースレジスタとセレクト回路は第49
図−第50図に示す。
ALUは、あるアドレスとオフセットに関する演算的組
合せの実行に使用され、この目的にだけ備えられている
。第41図のブロック図のデータフロー径路から明らか
なように、データ径路装置の回路はデータオブジェクト
からタイプフィールドを分離し、その後、操作に関して
タイプフィールドをチェックし、該操作に従って新しい
タイプフィールドを作成する。新しいタイプフィールド
と操作の結果は、この後で組合せられる。
中央処理装置(CPUまたはプロセッサ)は不正操作が
発生する前に、その不正操作を検出するためにタイプチ
ェックを使用する、タグ付構成コンピュータを例示して
いる。これによってプログラムの信頼性とデータの整合
性を確実にする。タイプチェック処理は多くのソフトウ
ェアコンパイラに組込まれているが、本装置ではハード
ウェアで、特に上記のシーケンサ内の回路で自動タイプ
チェックを行う。このハードウェアは、コンパイル時で
なく実行時に極めて高速でタイプチェックを行う。実行
時のタイプチェックは、ポインタが多くの異ったタイプ
のLISPオブジェクトを参照する可能性があるので動
的LISP環境においては重要である。不要情報収集ア
ルゴリズム(後に説明)も、高速タイプチェックが必要
となる。
自分タイプチェックは、CPUが処理をする全ての語に
タグを付けることで為される。タグフィールドは、処理
中のオブジェクトのタイプを示す。
例えは、タグフィールドを調べることによって、プロセ
ッサはその語がデータであるか命令であるかを決定でき
る。
タグ付構成によって、全ての(マクロ)命令は一般的(
汎用)になる。つまり、マクロ命令は、適当な全てのデ
ータタイプに対して動作ができる。
例えば、固定および浮動小数点の数、および倍精度数等
に対して、唯一のADD操作が存在する。ある特定なA
DD命令は、そのオペランドのタイプによって決定され
る。ハードウェアは、オペランドのタグフィールドを読
む。タイプチェックに関しては、この操作が命令と並行
に実行されるので、性能上に課せられる不利な点はない
。汎用命令およびタグフィールドを用いることで、1(
マクロ)命令は、より旧式な装置においても、数種類の
命令の機能を果せる。これによってコンパイルされたプ
ログラムは極めてコンパクトに記憶できる。
本装置では、1語には、多種のオブジェクトの1個が含
まれる。36ビット語には2種類の基本形式がある。
第1の形式は、タグ付ポインタ形式で、8ビツトのタグ
と28ビットのアドレスから成る。第2の形式は、直接
数値形式で、4ビツトのタグと32ビットの直接数値デ
ータから成る。(主メモリ内では、各ビットには、7ビ
ツトのECCを含む8ビツトが付加される。) 各語の2ビットはリスト圧縮またはCDRコーディング
のために留保されている。CDRコードビットはリスト
構造記憶の圧縮用技術の一部である。
CDRコードの4個のとりうる値は:正常、誤り、ネク
スト、およびなしを表現する。正常は、標準的CAR−
ODRリスト要素対であり、ネクストとなしは、メモリ
内のベクトルとしてのリストを示す。
この場合には、CARSのみ記憶すればよいので、正常
の表示の場合の半分の記憶域が使用されるだけである。
リストを作成するZetaliepプリミティブは、こ
れらの圧縮されたCDRコードのリストを形成する。メ
モリセルでそのアドレスがリストの一部として使用でき
ない時には、そのメモリセルを示すために、上記の誤り
表示が使用される。
プロセッサは、34データタイプを直接サポートする。
タイプのエンコードは以下の通りである。
Zetalispポインタは36ビット語の34ビット
で示される。他のビットはCDRコーディング用に保留
される。34ビツトのタグ付ポインタの最初の2ビツト
は、主要データタイプフィールドである。このフィール
ドの2個の値は、この32ビットが直接固定小数点数が
直接浮動小数点数かを各々示している。(浮動小数点表
示はIEEE規約と互換性がある。)この2ビットフイ
ールドの他の2個の値は、次の4ビツトが更にデータタ
イプビットであることを示す。残りの28ビツトは、該
オブジェクトに対するアドレスとして使用される。オブ
ジェクトタイプは次のものがある。
・符号(symbols:4部分で記憶される。プリン
ト名、値、機能、プロパーリリスト) ・リスト:連続メモリセル ・ストリング ・配列 ・フレーバ インスタンス(flavor Insta
nces)・ビグナム(bignums:任意の精度を
有する整数)・拡張浮動小数点数 ・複素数 ・拡張複素数 ・有理数 ・区間(インターバル) ・コルーチン(coroutines)・コンパイル済
コード ・クロージャ(closures) ・レキシカル クロージャ(lexical clos
ure)・ニル(nil) 本装置はスタック志向であって、ハードウェア内に多く
のスタックと多くのスタックバッファを備えている。ス
タックはプログラムに関するデータやコード参照のため
の、例えば、計算中の値、引数、局所的変数、および制
御の流れに関する情報の高速な一時記憶域となる。
スタックの主要な用法は、機能やフレーバ方法を含む引
数を命令に渡すことである。高速機能呼出しは、CPU
バウンドプログラムの実行においては決定的なものであ
る。本装置における機能呼出しの為のスタックの用法お
よび構成は新しいものである。
本装置では、ある演算は、常に特定なスタックグループ
に関連づけられる。そのため、スタックはグループにま
とめられている。1個のスタックグループは3個の要素
から成る。
・制御スタック:ラムダバインディング(連結子)、局
所環境、およびコーラリスト を含む。
・パインデインダスタック:特殊変数およびカウンタフ
ロー情報を含んでいる。
・データスタック:動的エクステント(一時配列やリス
ト)のLISPオブジェクト を含む。
本装置においては、上記のように、スタックはプロセッ
サハードウェアのシーケンサによって管理される。多く
のシステム命令はスタック志向である。つまり、それら
の命令のオペランドはスタックの先頭にあると想定され
ているので、オペランド指定は不要である。これによシ
命令のサイズは大きく減少される。スタックをタグ付構
成機能と共に使用すれは、命令セットのサイズも小さく
できる。
制御スタックはフレームにまとめられている。
通常、フレームは、機能自体に対応している。1個のフ
レームは固定ヘッダ、続いて数個の引数および局所変数
スロット、続いて一時スタック領域とから成る。制御ス
タック内のポインタは、パインデインダスタック内のエ
ントリを参照する。データスタックは特に高速なデータ
操作のために、Zetalispオブジェクトを置くた
めに備えられている。
アクティブスタックは、ハードウェアによって常にスタ
ックバッファ内で維持される。スタックバッファは、C
PU内の特別な高速メモリであって、プロセスのスタッ
クを高速アクセス環境に置くものである。スタックバッ
ファ操作(例えば、プッシュやポツプ)は、プロセッサ
によって行われ、1マシンサイクル内に実行される。
マクロ命令レベルでは、本装置はスタック志向の装置な
ので、従来の意味での汎用レジスタを有していない。つ
まり、多くの命令は、そのオペランドをスタックから直
接、取出す。
2個の1kワードのスタックバッファがZetalis
pプログラムの実行を高速化するために備えられている
。これらのスタックバッファはZetaliepスタッ
クの先頭部分を入れるための特別な高速キャシュメモリ
としての働きをする。
Zetaliepプログラム内の殆んどのメモリ参照は
スタックを介して行われるのでスタックバッファは、参
照されたオブジェクトに対する高速アクセスを提供する
スタックバッファは、カレントスタックポインタに関す
るいくつかのページを含んでいるが、これは、その中に
、次に参照されるデータオブジェクトが含まれる可能性
が萬いからである。スタックにおいて、スタックバッフ
ァのオーバーフローまたはアンダーフローが発生すると
、スタックバッファの新しいページが自動的に割当てら
れる。
(この場合、他のバッファが解放されることもある。) 高速アクセスをサポートするスタックバッファの別の機
能は、ハードウェア制御のプッシュダウンポインタであ
り、これによって、スタックの操作の為にソフトウェア
命令を実行しなくて済む。
全てのスタック操作は1サイクル内で実行される。
ハードウェアのトップオブスタックレジスタが、該位置
への高速アクセスのために常に与えられている。
スタックバッファのある領域はそのスタックへのウィン
ドーとして割当てられている。即ち、主メモリ上のある
場所には、その時点で使用されているスタックの大規模
な線型配列があり、このウインドーは、このある部分を
ポイントして、実際のメモリ上に存在する語を反映する
ようにしている。ウィンドーはスタックポインタおよび
オフセットを用いる、2セグメントアドレス技法によっ
てアドレスされる。スタックバッファに関連するALU
は、スタックバッファ内のウィンドーをアドレスするた
めに、ポインタとオフセットとを1サイクル内に組合せ
る。
LISP環境においては、LISPオブジェクトの記憶
域は、仮想メモリ内のヒープ(heap)と呼ばれる記
憶域で割当てられる。オブジェクトへの参照が終了した
場合には、記憶域は、解放され、自動的にヒープに戻さ
れなければならない。動的記憶域の割当ておよび解放の
管理のために、記憶域マネージャと不用情報収集ルーチ
ンが用意されねばならない。不用情報収集は、参照され
ないオブジェクトを探し出して、それらの空間をヒープ
に戻すためのプロセスである。この空間は、再び割当て
に使用される。
不用情報収集アルゴリズムの目的は、記憶域を高速で戻
すことと、オーバーヘッドを最小にすることである。従
来の不用情報収集技法は、全アドレス空間を読む必要が
あったので、演算的にも高価であり、時間のかかるもの
であった。これは、返却されるべき記憶域に対する参照
が、全てのアドレス空間で存在しないことを明らかにす
るために行われている。本装置の設計はハードウェアが
このプロセスを極めて簡単にかつ高速にする不用情報収
集アルゴリズムのだめの独特な機能を備えている。これ
らのハードウェア機能は、不用情報収集プロセスに含ま
れるメモリ部分をマークするのに使用される。この場合
に他のメモリ部分にはアクセスしない。これらのハード
ウェア機能は次のものを含んでいる。
・ポインタを示すタイプフィールド ・一時空間へのポインタを含むページ金示すページタグ ・メモリ走歪を高速にするマルチワード読をり命令 ハードウェアによって、全てのデータ語に挿入される2
ビットのタイプフィールドによって不用情報収集は単純
化される。このフィールドは、フィールドがポインタを
含んでいるかどうかを示す。
即ち仮想メモリ内の語への参照があるかどうかを示して
いる。
メモリ上の各物理ページに対して、ページタグと呼ばれ
るビットがある。このビットは一時空間へのポインタが
そのページのいずれかの位置に書込まれると、ハードウ
ェアによってセットされる。
ディスクページが主メモリページに、不用情報収集サイ
クルの後に読出されると、マイクロコードは、このピッ
ドを適当な値に設定する。不用情報収集アルゴリズムが
、一時空間の返還を要求とするときには、全てのページ
内のページタグを走査する。ページタグメモリは仮想メ
モリのサイズに比較して小さいので走査は短時間で完了
する。これは、主メモリ1Mワード当りについて1me
である。全ページにページタグビットが設定された状態
では、不用情報収集装置は、不用とされた一時空間への
ポインタを探すためた、そのページの全ての語を走査す
る。このような各ポインタに対して、示されたオブジェ
クトの後方およびポインタ調整を行う。
マルチワード読取シ処理は、一時に数語をプロセッサに
取込むことによって、不用情報収集を高速にしている。
仮想メモリソフトウェアは、他の機構によって不用情報
収集を支えている。ページタグビットを有するページが
ディスクに書出されると、ページ処理ソフトウェアは、
ポイントしているものが何であるかを調べるために、ペ
ージの内容を走査する。ソフトウェアは、メモリ内の一
時空間へのポインタを含むスワップアウトされたページ
を記録するテーブルを作成する。不用情報収集装置はこ
のテーブルを作成するので、上記のようなポインタを含
むページを検出できる。このページに関する情報は、一
時空間へのポインタを有するページのみが不用情報収集
中にメモリ内に読込まれるので、不用情報収集の効率を
改善するのに使用される。
ページタグ作成 ページタグビットは第149図に示す16Kスタティッ
クRAMに作られる。
以下の入力が存在する。
LBUS ADDR23:19 次にアクセスされる物
理ページ。
NORMAL ACT工VE L アクティブサイクル
で真であり、ページタグはこの値を反 映すると考えられる。
LBUS STACK CLK L LBUS WAI
Tでゲートされるクロック。
DP SET CG TAG L 直前のサイクル内で
のデータ径路出力がポインタであって、 そのアドレスが一時空間であ れば、アクティブサイクル中 は真である。このアクティブ サイクルが仮想書出し用であ ればGCタグビットをセット する必要がある。
WRITE ACTIVE L アクティブライトサイ
クル中は真(LBUS WRITE Lのレジスタに入
れられたもの)。
WRITEPAGE TAG L ページタグのLBU
S DEVの書込みを実行中には真。
READ PAGE TAG L ページタグの(LB
US DEVの書込みを介しての)読取り中に は真。
LBUS DEV 4:3 上記の変更子注:マイクロ
デバイスI/Oのか わりにスペックおよびマジッ クフィールドを使用できる。
以下の出力が存在する。
LBUS DBV COND L READ PAGE
 TAG オよび選択されたタグビットがセットされ ている時に確認される。
PAGE  TAG PAR ERR Lページタグか
ら誤シパリテイが読込まれた時に確認される。
マイクロコード制御 ページ内のいずれかの位置を読取ることによって物理ペ
ージを選択することになる。VMAも使用できるが、通
常、アドレスは、Aパス上の物理アドレスとして与えら
れる。実際、読取り動作をスタートさせる必要はない。
必要なのはメモリ制御に、物理アドレスをLバス上に置
くようにさせるだけでよい。次のサイクルで、アドレス
されたページに対してのページタグを読むまたは書くた
めのマイクロデバイス動作を使用すればよい。
この読取りや書出しの直前のサイクルでアドレスが与え
られるので、タスク切替が介入しないようにする必要が
ある。これは、アドレスをAパス上に出力するマイクロ
命令の直前の命令にSPECTASK−INHIBIT
を指定することで為される。FEPメモリアクセスが2
個のマイクロ命令の間に介入することもできる。即ち、
マイクロデバイス動作は、Lパスが自由になるまで待つ
こともできる。
ページタグアドレスレジスタはMC WAITが確認さ
れた時にはクロックされない。このMCWAITが本件
を操作している。
WRITE PAGE TAG Lは、マイクロデバイ
ススロット36、サブデバイス1(FEPボード上)へ
の書出し時の、後半に確認される。
LBUS DEV 3は選択されたビットに書出される
その他は変化しない。
LBUS DEV 4は、次のいずれかを選択する。
0 DCタグビット 1 参照されたビット READ PAGE TAG L はマイクロデバイス
スロット36、サブデバイス3への書出し時に確認され
る。
LBUSDEV 4:3 以下のように、読込むべきビ
ットを選択する。
00 GCタグビット 01 参照されたビット 10 パリティビット 11 (便用されない) 予め選択されたビットはLBUS DBV COND 
Lラインに戻り、スキット条件として使用されることも
可能である。
GCページタグ走査は2サイクル/ビツトで行われる。
これは主メモリ750Kワードでは1ミリ秒となる。マ
イクロコードは、Aパス上に物理アドレスを出し、読取
りをスタートし、実行をチェックするだめの比較をする
サイクルと、物理アドレスを加算し、タグビットに応じ
て再び第1サイクルにか、語走査ループのスタートへの
スキットを行うサイクルを往来する。
GCページタグのチェックおよびセットを可能にするた
めの、主メモリへのポインタの書出しに対しては、特別
な機能はない。その代わりに、仮想アドレスでの主メモ
リへの■出しで、データタイプマツプがこのタイプをポ
インタであると示していて、GCマツプがそのポインタ
は一時空間を示しているとする場合には、この書出し動
作は、必要であれば次のサイクル内に、アドレスされた
GCページタグビットをセットする。
STKP、FRMP、およびXBASレジスタはAメモ
リをアドレスするのに使用できる。これらの各レジスタ
の下位10ピツトはマイクロ命令またはマクロ命令から
の符号拡張壓8ビットオフセットに加えられる。次に、
これは、12ビツトのAメモリアドレスを与えるために
、2ビツトスタツクバスレジスタに結合される。マイク
ロコードは第4の擬似ペースレジスタをも選択できる。
このレジスタは、マイクロ命令のオフセットの符号に従
ってFRMPであるかSTKPである。この実行によっ
て、符号が負であれば、オフセットに1が加えられる。
依ってこのモードでは、PRMPの場合には正または0
のオフセット、STKPの場合には負または0のオフセ
ットが常に使用される。
STKPはスタックの先頭を示す。FRMPはカレント
フレームを示す。
STKPは、本装置内の殆んどの他の装置に無関係に、
加算したり減算したりでき、マクロ命令の始めにクリア
される4ビットカウンタがあり、STKPと同時に加算
または減算される。これによって、パルス単位または−
7で変化でき、マクロ命令が中止された時に(POLS
Rされた時)に、STKPを実行しないようにできる。
STKPおよびFRMPは、仮想アドレスを保持する2
8ビットのレジスタであり、データ径路上に読み取るこ
とができる。XBASは、10ビツトのみのレジスタで
あって、読み戻すことはできない。
(FEPは、これをペースレジスタとして用いて、どの
アドレスを使用するかを決めることで、読み戻すことが
できる。)XVASレジスタは、殆んどの通常のマイク
ロコードでは使用されないで、特別な柔軟度のために備
えられている。スタック内で(例えば、機能からの戻り
のために使用されるが)ワードブロックを上下させるB
LTを行うマイクロコードは、スタットへの2個のポイ
ンタが必要である。現時点では、FRMPとSTKPを
使用するが、XBASおよびSTKPを使用するように
変えることもできる。FUNCALL(可変機能の機能
呼出し)のマイクロコードは、割算したアドレスを保持
するためにXBASを使用する。このアドレスは、次に
スタックをアクセスするために用いられる。
メモリ制御ボードとのインターフェースデータ径路およ
びメモリ制御は、以下の動作のために、互いに通信する
必要がある。
VMAおよびPCレジスタをデータ径路に読取る。
データ径路からVMAおよびPCレジスタに書出す。
アドレスマツプをアクセスする。(少くとも書出す。) 主メモリまたはメモリにマップしたI/O装置を読取る
主メモリまたはメモリにマツプしたI/O装置を書出す
物理アドレスを出力する。(特にDMAタスク内で用い
られる。) バスを用いて、浮動小数点装置のような装置をアクセス
し、マイクロデバイス(メモリ上にマツプされていない
)の入出力を行う。
ポインタがメモリ内に書出された時にGCタグビットを
セットする。
MCは自身のマイクロ命令をデコードする。このために
4ビットフイールドがあり、スペック、マジック、A読
取りアドレス、およびA書出しアドレスフィールドも使
用される。Aアドレスフィールドは9ビットで、ソース
(又はデスティネーション)がAメモリでない場合には
、MCは各々を利用できる。MCを読取る(又はMCに
書出す)場合には通常、ソースまたはデスティネーショ
ンはAメモリである。更に、Aメモリ書込みアドレスは
読取りアドレスフィールドから得られ、書出しアドレス
フィールドはMCが利用できるようにされる。これは、
DMA動作のアドレスサイクル中に発生する。DMA動
作ではAメモリ位置(の値)が加算されるが、MCも破
壊される。MCおよびシーケンサも、主に同期とIFU
のために多くの通信を行う。
以下の信号によってDPボードとMCボードが接続され
る。
BK ABUS 35:0 データ径路Aバスの双方向
拡張信号。VMA、PC、マツプ、お よびメモリ(またはパス)のデ ータをデータ径路に読取るため、 および、データ径路から物理ア ドレスを出力するために使用さ れる。ビット31−0は双方向、 ピッド35−32は単方向。こ れらのビットは常に、メモリ制 御からデータ径路へと転送され る。これによって、メモリ位置 のCDRを、そのメモリ位置に記 憶するべきデータにマージでき る。このODRコードは、タイプ マツプおよびGCマツプを得る ためにAパス上になければなら ない。内部Aバス上のパリティ ビットはMOに接続していない。
LBUS35:0 主データバス。データ径路はこの信
号を直接にまたはレジスタ を介して駆動できる。この信号 は主メモリ書込み、パス書込へ およびMOポート上のレジスタ 書込み時に使用される。誤り訂 正ピットはDPに接続しない。
LBUS ADDR 11:0  データ径路への物理
メモリアドレス。主メモリアクセスが、実 際に内部Aメモリをアクセスす る時に使用される。下記参照。
MC OBUS TO LBUS Lこのサイクルから
のDPの結果がLバスを駆動する。
MC OBUS TO LBUS L最終サイクルから
のDPの結果がLパスを駆動する。
GC TEMP L GCページタグ。この信号が、主
メモリ書込みのサイクルの終 りに確認され、書込みが実際に 発生する次のサイクルでも確認 されると、主メモリに書き込ま れているページに対するGCペ ージタグビットがオンになる。
MC ADDRIN AMEM L このタスク(エミ
ュレータのためのにに動作すればよい) の選択した最後のメモリアド レスがAメモリをポイントし ていれば確認される。データ 径路はメモリ読取りのために、 BKのかわりにAメモリをイ ネーブルするために、および メモリ書込みのためにAメモ リ書込みをイネ−デルするた めにこの信号を使用する。下 記参照。
ABUS OFFBOARD L BK ABUSがデ
ータ径路への入力である場合に確認される。
DPはこの信号を受信してい ない場合に常に、BK ABUSを 駆動する。
SEQUENCE BREAK シーケンス中断(マク
ロコード割込み)を行うために、 IFUにダミー命令を発生する ように命ずる。
データ径路は、メモリ参照がAメモリへ向は直されると
、メモリ制御が正しいアドレスをLバスアドレスライン
上に提供するものと想定している。
書込みに関しては動作は容易である。第1サイクルでは
、データ径路は書込みデータの演算を行う。第2サイク
ルでは、書込みデータはLバスに出され、誤シ訂正ビッ
トを付加される。メモリカードは第1サイクルの終りに
アドレスを、第2サイクル中にデータを得る。Aメモリ
も同一のタイミングを必要とする。即ち、第1サイクル
ではアドレスがLバスから入シ、データはデータ径路内
のOバスから入り、第2サイクルの後半では、実際の書
込みがAメモリパイプラインレジスタから実行される。
第46図のトラップ制御回路は、マクロコード命令実行
によってトラップ処理機能を実現する。
例えば、マクロコードへのページテーブルミストラップ
は、主メモリ内のページハツシュテーブルを検査する。
ページが発見されれば、ハードウェアマップが再びロー
ドされ、トラップマイクロ命令が単に再スタートされる
。カレント命令のPCLSRは、ページが主メモリにな
いか、またはページ書込み保穫フォールトがあるので、
命令がフォールトになった場合にのみ発生する。
他のトラップは、隠れているポインタが存在する場合に
発生する。マイクロコードへのこのトラップは隠れたポ
インタに従う。この場合、VMAを変更しマイクロ命令
へのトラップをリトライする。
メモリ書込みトラップには、ポインタをスタックに保存
するだめのものや、スタックGCテーブルを維持するマ
イクロコードへのトラップを含んでいる。このトラップ
は、それに続くマイクロ命令を中止させるので、トラッ
プされた書込みは、トラップがオフ状態になる前に完了
する。トラップハンドラは、VMAおよび、そのアドレ
スでメモリに書込まれたデータを検査し、テーブルにエ
ントリし、中止されたマイクロ命令をリスタートさせる
。マイクロコードへのトラップが必要であるのは、2個
の場合がある。書込みがマクロ命令の最後であれば、第
1マイクロ命令はトラップによって中止されているので
、その命令は完了し、続く命令は始動されない。しかし
、プログラムカウンタは加算され、通常のPCLSR機
構は、必要な状態を正常にしたまゝにする。もう一つの
場合で、書込みがマクロ命令の終りでない場合には、こ
の命令はPCLSRであって、状態をスタックにおよび
第1部分完了フラッグに指定したものでなければならな
い。
他のトラップは、不正データトラップおよび演算トラッ
プであり、演算の実行される数を指定する1個または2
個のオペランドがマイクロコードが処理できない種類の
数である場合のトラップである。本装置は、先ず、オペ
ランドを一様なタイプに変え、スタックの定まった位置
におく。その後、このタイプのデータに対する指定され
た動作を行うために、高速外部マクロコードルーチンが
呼び出される。結果をスタックに返却する必要がなけれ
ば、この動作ルーチンから戻った時に、その結果を正し
い場所に移動する他の萬速外部ルーチンに戻るようにす
るために、別のリターンアドレスを設定する必要がある
スタックバッファトラップはスタックバッファオーバー
フローが発生した場合に発生する。トラップルーチンは
、スタックバッファと主メモリの間で必要なコピー処理
を行う。このトラップは、完全にマイクロコードで処理
されるのでなく、マクロコードへのトラップとして扱わ
れる。これはスタックバッファが再び一杯になると、ト
ランスポータを起動し、ページフォールトを起す可能性
があり、トラップが繰返されることがあり得るからであ
る。スタックバッファを空にする時はアンセーフポイン
タトラップを起すことも可能である。
メモリ制御 メモリ制御ブロック図(第84図−第86図)は、誤り
訂正回路(第84図)と、命令取込み装置のデータ径路
フロー(第85図)と、ベージハツシュテーブルマッピ
ング(第86図)とを示している。命令取込み装置(I
FU)は第87図−第104図に詳しく示され、命令長
列回路(第87図−第88図)と命令キャッシュ(第8
9図−第90図)と、命令デコーダ(第91図)と、デ
ィスパッチセレクタ(第92図)と、取込みアドレス回
路(第94図−第95図)と、その他の制御回路(第9
3図および第96図−第97図)と、キャツシュヒツト
回路(第98図)と、命令レジスタ(第99図)と、プ
ログラムカウンタ(第100図)と、マツプおよびメモ
リ制御回路(第101図−第104図、および第106
図)とを備えている。
メモリコントローラのマツプ処理機能は、マツプ制御回
路(第105図)と、マツプアドレスおよび出力回路(
第107図−第108図)と、マップパリティ(第10
9図)を含んでいる。ページハツシュテーブルプローブ
アドレスを第110図に、マツプRAMを第111図に
示す。マツプハツシュ処理および比較回路を第112図
に、仮想メモリアドレス回路を第112図に示す。
第114図および第115図は、以下に説明するAメモ
リのための、Aバス書込みデータ径路およびAバスデー
タ径路を示す。第116図−第121図は共通誤り訂正
回路(ECC)のための種々の回路を示す。
第122図は、メモリ制御ボードのためのスパイ回路を
示し、第123図−第125図はメモリコントローラの
ための他の回路および裏面接続を示す。
物理メモリは44ビットワード単位でアドレスされる。
これにはデータとして36ビット、誤り訂正コード(E
CC)7ビツトと予備の1ビツトが含まれる。二重ビッ
トエラーは目動検出されるが単ビノトエラーは自動検出
と自動訂正が行われる。
メモリは200ns64KビットダイナミックRAM(
ランダムアクセスメモリ)であって、最小構成は256
Kワード(1メガバイト)である。(第220図−第2
33図参照)、書込みサイクルは、約600ns(3バ
スサイクル)でめる。1サイクル(200ns)内に1
語を取り出したりまたはセットし、400nsで1語を
アクセスできる場合もある。
本装置の28ビット仮想アドレス空間は、1600万(
16,777,216)個の44ビツト長の語(36ビ
ツトのデータと8ビツトのECCと予備ビット)から構
成される。このアドレス空間は各ページが256語を含
む多くのページに分けられる。
仮想アドレスの上位20ビツトは仮想ページ番号(VP
N)であり、残りの8ビツトは該ページのワードオフセ
ットである。主メモリと二次メモリの間のデータは、常
にページ単位で転送される。次に仮想ページ装置の動作
を要約する。
仮想メモリ技法はZetalispコードとマイクロコ
ードの組合せで実現されている。方針と機構とでこの技
法は成り立つ。方針はZetalispで実現され、ペ
ージ゛処理の対象、ページ処理の時期、およびページ処
理ぞどこで行うかの決定がなされる。
機構はマイクロコードで実現され、上記の方針を如何に
実行するかの決定を行う。
Zetalispポインタは仮想アドレスを含んでいる
。ハードウェアがZetalispのオブジェクトを参
照できるようになる前に、仮想アドレスは物理アドレス
に変換されなければならない。物理アドレスは、オブジ
ェクトが現在、主メモリ上のどの位置に存在するかを示
す。主メモリ上にオブジェクトがなければ、作成するか
ディスクのような第2メモリから主メモリにコピーしな
ければならない。主メモリは大規模なキャッシュのよう
に働き、オブジェクトが主メモリにない場合に限ってデ
ィスクを参照し、使用中には、そのオブジェクトが駐在
しているようにする。
仮想アドレスを24ビツトの物理アドレスに高速かつ効
率的に変換するために、本装置は翻訳テーブルの階層を
使用している。階層の上位は最も速いものであるが、尚
速にすると尚価になるので、こゝでは最も少ない翻訳が
行われる。使用するレベルは次の通りである。
・デュアルマツプキャッシュ:八−ドウエア上に駐在し
ハードウェアで参照され、各キャッシュは4000のエ
ントリが可能。
・ページハツシュテーブルキャッシュ(PHTC):結
線された主メモリ上に駐在し、ハードウェア援助のもと
でマイクロコードに参照される。PHTCのサイズは主
メモリのページ故に比例し、4Kワードから64Kワー
ドの間である。各エントリに1語必要である。しかし、
このテーブルはハツシュ処理効率を艮くするために半分
だけ使用される。
・ページハツシュテーブル(PHT)およびメモリペー
ジテーブル(MMPT):結線された主メモリに駐在し
、Zetalispに参照される。これらのテーブルの
サイズは主メモリのページ故に比例し、PHTは75%
MMPTは100%使用される。どちらのテーブルでも
、各エントリに対して1語必要である。PHTおよびM
MPTは主メモリ上の全てのページを完全に記述する。
セカンダリメモリページテーブル(SMPT):ディス
クスワップ用借問の全ページを記述し、より多くのスワ
ップず間が使用されると動的に拡大する。
仮想アドレスは、仮想ページ番号(VPV)に対してマ
ツプキャッシュをチェックするハードウェアによって、
物理アドレスに変換される。キャッシュが見つかると、
そのキャッシュはハードウェアが必要とする物理ページ
番号を与える。VPNがマツプキャッシュ内になければ
ハードウェアはVPNをPHTCに対してハツシュ処理
し、マイクロコードはVPNの有効なエントリが存在す
るかをチェックする。有効なエントリがあれば、PHT
Cが物理ページ番号を与える。これ以外であれば、Ze
talispcodeに対して、ページフォールトが作
成される。
ページフォールトハンドラは、ページが主メモリにある
かを決定するためにPHTとMMPTをチェックする。
ページが主メモリにあれば、ハンドラはページをアクセ
ス可能にするために要求された動作を行い、PHTCと
、最も昔に使用された2個のマップキャッシュをロード
して戻る。ページが主メモリになければ、ハンドラはペ
ージをディスクから主メモリページにコピーしなければ
ならない。ページフォールトがこの状態になった場合に
は、これをハードホールトと呼ぶ。ハードホールトでは
以下の動作が必要となる。
1 SMPT内のVPNをチェックして、ディスク上の
反想ページを探す。
2 主メモリ内の利用可能なページフレームを探す。概
ねFIFO(先入れ先出し)の利用可能ページプールは
、常に以つかのページを有している。このプールがある
最低値になると、バックグラウンドプロセスが、最も昔
に使用された主メモリページを再使用できろようにして
、プールを満たす。再使用に選択されたページが変更を
受けている場合には(つまり、主メモリ内の内容が変え
られていて、ディスク上のコピーと異なるときには)再
使用ができろようにする前に、ディスクにコピーし直さ
なくてはならない。
パンクグラウンドプロセスは、フォールト時に変更のあ
ったページをディスクに短期的にコピージ、特に再使用
に適用できるページに関して、上記の再コピーの発生を
最小にしている。
3 主メモリページフレームにディスクページをコピー
する。
4 仮想ページ領域が指定されたスワップインの単位で
あれば、次に指定された数のページも、利用可能な主メ
モリページ内にコピーされる。
これらの前もって取込まれたページが、ある間隔で参照
され、あるページフレームが再使用に必要になると、そ
れらのフレームが再使用される。これによって不必要な
ページを予め取り込むための負荷を最小にしている。
5 PHT、MMPT、PHTC、および最も昔に使用
した2個のマツプキャッシュを更新して、 レジデントにされたページを含むようにし、フレームが
使用されたこれ迄のページを除く。
6 フォールトから戻り、プログラムの芙行を続ける。
中央メモリ制御装置はバスの状態を管理し、プロセッサ
、命令取出し装置、およびフロントエンドプロセッサか
らの要求を第118図および第139図−第146図に
示した、該装置に備えられた回路を用いて調肇処理する
Lパス 装置との一般的に通信に関して、Lパスはシステムプロ
セッサの延長として動作する。主メモリと、ディスクや
ネットワークや、TVコントローラおよびFEPといっ
た高速周辺装置は、Lバスにインターフェースする。L
バスのアドレス径路は24ビツト巾であり、データ径路
は44ビツト巾、このうち36ビツトはデータ、8ビツ
トはECCである。Lパスは最高時に、1語/サイクル
の転送ができ、およそ20Mバイト/秒である。
全てのLパス動作は、システムクロックと同期する。ク
ロックサイクルは約5MHzであるが、正確なクロック
サイクルはマイクロコードで同調ができる。マイクロコ
ードのフィールドには、種々の目的に対して異ったスピ
ードの命令を可能にするものがある。高速命令に対して
は、より低速な命令が必禎とする艮いクロックサイクル
を待つ必要はない。主メモリおよびCPUの動作はLパ
スクロックと同期している。CPUがトラップを起すと
、クロックサイクルはトラップハンドラのマイクロ命令
が取込まれるように延長される。
Lバス動作の例としては、正常なメモリ読取りサイクル
は6個のフェーズを含んでいる。
1、要求 CPUまたはFEPは絖み取るべきメモリカ
ードを選択する(アドレス要求)。
2、アクティブメモリカードがデータをアクセスする。
データはサイクルの終りに出力ラッチに出される。
3、データメモリカードはデータをバス上に置く。
こゝで新しい要求サイクルを始動してもよい。
正常な書込み動作では、2個のフェーズが実行される。
1、要求 CPUまたはFEPは書込むべきメモリカー
ドを選択する。
2、アクティブ CUPまたはFEPはデータバス上に
置く。
Lパス上での変更されたメモリサイクルは、Lパス装置
による直接メモリアクセス(DMA)によって使用され
る。DMA出力動作では、全てのメモり動作と同様に、
メモリからのデータはECCロジックに送られろ。しか
し、プロセッサの命令取込み装置に送られるかわりに、
このデータは、データを要求しているDMA装置(例え
ば、FEP、ディスクコントローラ、ネットワークコン
トローラ)に送出される。
ブロックモード動作では、Lバスはいくつかのバス要求
をオーバーラップさせるためにパイプライン技法を使用
する。ブロックモードメモリ書込みでは、別々のデータ
転送が実行されている間にアドレスを要求してもよい。
ブロックモードメモリ書込みであれば、1Lパスサイク
ル内に、3アドレス要求をオーバーラツプすることもで
きる。
表  2 メモリおよびクロック信号(<LMIFU>MC.より
)バスは、3つ、の方法で使用される;メモリーへのア
クセス、メモリの様なI/O装置レジスタへのアクセス
、およびマイクロデバイスへのアクセス。マイクロデバ
イスは、マイクロコードから直接入力される個々の10
ビツトフイールドによってアドレスされることで識別さ
れ、メモリの3サイクル要求/アクテイブ/デークプロ
トコールには従わない。このような装置の一例は、例え
ばディスクのようなDMA装置である。DMAタスクマ
イクロコードは、メモリサイクルの実行中に、ディスク
にデータをパス上に出すように命じるか、その命令をオ
フにする。これらの3個の装置をメモリ、メモリ装置お
よびマイクロディバイスと呼ぶ。
Lバス上の全てのトランデクジョンはシステムクロック
に同期している。例えばメモリは2サイクルまたは3サ
イクルで要求に応答する。即ち第1サイクルでは、プロ
セッサはアドレスをLBUS ADDRにサイクルのタ
イプをLBUS WRITEに、その後LBUS RE
QUESTを確認(出力)する。全てのメモリカードは
LBUSアドレスの高位ビットを自らのスロット番号と
比較する。選択されたメモリカードは、行(row)ア
ドレスをRAMアドレスラインに、次にLBUS CL
OCKの前縁でRASを始動する。遅延の後に、列(c
olumn)アドレスをRAMアドレスラインに出し、
最後に、クロックの境界でCASをイネーブルする。
第2サイクルはRAMをアクセスするために使用される
。読取りではRAM出力は該サイクルの終りに、ラッチ
に入れられる。書込みでは、パスは書込みデータとEC
Cビットを持ち、RAM WEはゲートされたLバスク
ロックで駆動される(遅い書込み動作)。RASおよび
CASはこのサイクルの終りにリセットされる。
第3(データ)サイクル中には、ラッチされたデータは
バス上に駆動され(前半)、RAMチップはそのRAS
リカバリタイム中にプリチャージし、新しい要求サイク
ルが発生することも可能となる。
パスクロックは、メモリカードがRASを前縁でスター
トさせCASを後縁でスタートさせ、更にRAMタイミ
ング仕様に適合するように設計されている。クロックの
前縁はこの用法以外に使用されない。メモリデバイスは
要求への応答をクロックの後縁で始動することが提案さ
れている。
デバイスがバス上に検出するクロック(LBUSCLO
CK)はプロセッサを駆動するクロックの変形である。
その周波数は5MHzであるが各サイクルの正確な時間
は、マイクロコードの指定するサイクル長によって18
0nsから260nsの間となる。プロセッサはサイク
ル長を制御するが、LBUSCLOCKはプロセッサ内
のいずれの禁止条件にも影響されない。つまりバス上の
動作は、一度始動すればマイクロコードには無関係に進
行する。メモリデータ誤り訂正も、ある時間だけクロッ
クを延長する。
これに対する例外は、プロセッサがトラップした時であ
る。この場合には、LBUS CLOCKは延長される
。つまり第2(または後続の)フェーズで、特別な時間
が迫力される。主クロックが高レベルにある場合には、
クロックとシーケンサは共働して、トラップハンドラマ
イクロ命労を取込む第2サイクルを、内部的に実行する
。これにより2個の前半のクロックがLBUS CLO
CKのためにだけに発生する。延長されたサイクルがデ
ータサイクルであれば、プロセッサは、最彷の前半のク
ロック中に検出したデータをラッチする。
注意:ファーストハーフの前縁はLBUS CLOCK
の後縁ではない。ファーストハーフは、主にメモリから
パスへのデータのイネーブルを制御するタイミング信号
として使用される。許されている他の用法としては、フ
ァーストハーフの中間サイクル縁である動作をクロック
することである。この場合、あるサイクルでの2個のフ
ァーストハーフを検出する準備乞すべきである。
中央メモリはパスの状態を管理し、プロセッサIFUお
よびFEPからの要求を仲裁処理する。メモリもメモリ
装置も、同一のタイミングプロトコールに見合う必要が
ある。(FEP/MC仲裁処理マニュアル参照) 3サイクル以内には応答できない(TVのような)メモ
リ装置は、応答するまでアクティブサイクル中はLBU
S WAITを出しておかなければならない。メモリ制
御状態はLBUS WAITが出されていない第1アク
テイブサイクルに進む。LBUS WAITは他のサイ
クルで現われてはいけないし、バスの長さを伝え、XC
VRに到達し、クロックをゲートするのに十分な程に早
く出力されなければならない。
DMA装置もLBUS WAITを検出するので、デー
タの読取りや書込みのサイクルを知ることかできる。
ブロックモード動作。プロセッサはバックツーバックサ
イクルで一連の要求を出すことがある。
これをブロックモードと呼ぶ。新要求は各サイクルで始
動できろ。ブロックモード動作中にはバスは3段パイプ
ラインに分けられ、1段目はアドレス処理用、2段目は
RAMアクセス用および3段目はデータ転送(読取り)
用となる。
ブロックモード要求のアドレスは常に昇番順であるが、
アドレス(n、n+4)の参照を隣り合うサイクルでは
実行しないパターンについては許される。与えられたメ
モリカードではビット18.1.0がインターリーブす
るので、個々のRAMでは、常に連続位置の要求と要求
の間には、少くとも4サイクルが存在する。
マイクロコードは一般に、メモリ装置とMOSメモリと
への参照を区別しないので、メモリ装置もブロックモー
ド要求を扱う必要がある。即ち、この装置はアクティブ
サイクル中に要求乞受けるようにしなければならない。
要求サイクルには条件はない。つまり装置は要求を拒絶
または遅延させることはできない。要求に続くサイクク
はアクティブサイクルであり、これは装置がデータ(書
込み用)を受信できるようになるまで、またはデータサ
イクル(読取り用)に入るまで、繰返すことができる(
LBUS WAITによる)。
LBUS<43:O>双方向データバス。アクティブハ
イで3状態である。LBUS<43:36>はECCビ
ットである。書込みアクティブサイクルではプロセッサ
またはFEPによって駆動される。
読取りデータサイクルでは、メモリによって駆動される
。プロセッサと装置間のデータ転送にも使用される。更
に0バス信号をデータ径路カード(E)からプロセッサ
内の他のカード(IおよびC)に移すのにも使用される
LBUS ADDR<23:O>物理アドレス。プロセ
ッサまたはFEPによって、駆動される3状態の信号。
24ビツトの物理アドレスは31物理スロットをほゞ可
能とする。各スロットは512語のメモリを容れること
ができる。
LBUS CLOCK+/差分ECLシステムクロック
LBUS FIRST HALF+/メモリ制御からの
差分ECLタイミング信号。データサイクル中にメモリ
データをバス上にイネーブルするために使用される。メ
モリカードは、サイクルの前半にデータをバス上に駆動
する。メモリ制御はバス上のデータを読取り誤り訂正を
行う。サイクルの後半では訂正されたデータがメモリ制
御からバスへ駆動される。メモリ制御はECCを前半の
殆んどの部分を用いてデコードするので、メモリは前半
の前縁の後、できるだけ早くデータをバス上に出さなけ
ればならない。
LBUS REQUEST L バスアドレスによって
アドレスされたメモリまたはメモリ装置に対する要求。
アドレス比較および2レベルのロジックに十分の時間を
有して、バスクロックの前縁までに安定する。LBUS
 REQUEST LおよびLBUSWRITE Lは
、アドレスと共にトランザクションの第1サイクルの終
りに確認される。データは第2サイクルと第6サイクル
との間で転送される。要求、書込みおよびアドレスライ
ンは、これらのサイクル中は有効とならない。
(実際これらは他のトランザクションを始動させるのに
用いてもよい。) LBUS WRITE LプロセッサまたはFEPから
の信号。
書込みデータは次のリサイクルでバス上に送られる。こ
れ以外の場合は、要求されたサイクルは読取りであって
、メモリはそれに続く第2サイクルでバスを駆動する。
LBUS WITH ECC ECCビットを有しない
メモリからの信号。データサイクル中に駆動される。
LBUS WAIT Lメモリ装置からの信号。アクテ
ィブサイクル状態でメモリ制御を維持するために必要な
サイクルの間出力される。サイクル中、早期に有効とな
る必安がある。
LBUS REFRESH L 全てのダイナミックR
AMはリフレッシュする。メモリの全列は一度にリフレ
ッシュする。メモリアレーバイパスコンデンサは、RA
Mに対してリフレッシュサイクルのために供給する十分
な電荷を保持するので、遷移は電源に影響がでるもので
あってはならない。リフレッシュタイマおよびアドレス
カウンタはメモリ制御の中にある。メモリ制御は、プロ
セッサが単ステップ動作中にもメモリがリフレッシュを
続けるようにマイクロタスク処理とは無関係である。
LBUS ID REQUEST L 選択したボード
がそれ自身の情報を提供するように要求する。ボード選
択はLBUS ADDR<23:19>をスロット番号
(以下参照)に合わせることで行われる。
LBUS<7:0>はLBUS ADDR<6:2>で
選択された32バイトのデータのいずれかによって駆動
される。これらのデータバイトの形式は指定きれていな
いが一般的には、ボードタイプ、ボード連合、ボード変
更レベルによびデータおよびアドレスラインの障讐に関
するサムチェックデータを含んでいる。ボードIDが他
のアドレスライン乞用いて読込まれている間にメモリリ
フレッシュがLBUS ADDR<17:10>を用い
て実行されることもあるのに注意され度い。PROMデ
ータはID REQUESTが確認きれている間はバス
上に、駆動されなければならない。(メモリカードは、
通常のメモリサイクルで列アドレスを保持するために使
う同一のラッチを介してLBUSADDR<6:2>を
バッファする点において風変りである。このラッチはL
BUS CLOCK中はオープン状態で、メモリボード
はI D REQESTおよびLBUS ADDR後の
第2サイクルが現われるまでは正しいデータを作成しな
い。これをFEPが補償している。他のボードはメモリ
ボードな必らずしもエミュレートする必要はない。
スロット番号割当て信号 LBUS SLOT<4:0>裏面に設定されたスロッ
ト番号。これらのビンは、各スロットで異つたパターン
に接地される。ボードがスロットに挿入されると、プル
アップを与え、固有のスロット番号となる。所望のボー
ドを選択するために、これはメモリ、メモリ装置、およ
び■D要求動作に関してLBUS ADDR<23:1
9>に一致し、マイクロデバイス動作に関してはLBU
SDEV<9:5>に一致する。LBUS SLOT<
4>は事実、各カードケージを介してバスで接続され、
主カードケージでは接地され、拡張ケージではフロート
している。詳しくは以下に述べる。
リセット信号 LBUS RESET L汎用リセットライン。電源が
オンにされた時およびFEPが確認しようとする時には
、ローレベルになる。
LBUS POWER RESET L電源が有効でな
い場合にローレベルとなる。このラインはディスクの保
護、および最初に電源がオンとなる時にだけ必安な初期
設定のために使用される。装置に電源が投入されると、
このラインは接地され、FEPが電源および冷却装置を
確認し、オフにするまで接地されたままである。このラ
イン、は電源をオフにする前にも接地される。
マイクロデバイス信号 LBUS DEV<9:0>マイクロデバイス動作のた
めの装置アドレス。ビット<9:5>は、スロット番号
と一致させることによってボードを選択する。特別スロ
ット番号36と37とは各々FEPとMCのボード選択
に使用される。ビット<4:0>は、ボード内のレジス
タよたは動作を選択する。
LBUS DEV READ L装置にデータをLバス
データライン上に出力するように命じる。
LBUS DFV WRITE L装置にLバスデータ
ライン上からデータをLBUS CLOCKで取入れる
ように命じる。LBUS DEV WRITEが装置に
、DMAメモリサイクルが始動していることを伝える場
合には、Lバスデータは恐らく無関係なメモり読取りに
関連づけられた無関係なデータを含んでいることに留意
され度い。LBUS DEVWRITE Lはクロック
端にのみ依存し、クロックをゲートするために使用して
はならない。
マイクロデバイス書込みを行っているマイクロ命令がト
ラップまたは制御メモリパリティエラーによってNOP
にされると(例えば、マイクロコードブレークポイント
)、LBUS DEVWRITE Lは、クロックの前
縁が過ぎてからある期間出力され、次にクロックの後縁
(アクティブ)の前のある時点で消される。
LBUS DEV C0ND L選択された装置はこの
ラインを(オープンコレクタNANDゲートで)、マイ
クロコードへスキップ条件を送出するために接地する。
マイクロデバイスI/Oは、装置との一般的な通信、プ
ロセッサ群(FEPを含む)での内部通信、およびDM
A動作の制御のために使用される。
装置との一般的な通信に関しては、Lバスは、単にプロ
セッサの内部バスの延長としての働きをする。データは
1サイクル内で送出されクロックの後縁でクロックされ
る。
スロット番号66へのマイクロデバイスリードおよびラ
イトは、FEPページタグおよびマイクロ秒クロックと
の通信のために使用される。スロット番号37へのマイ
クロデバイスリードおよびライトはMCボードおよびS
Qボードとの通信に使用される。(Lパスを予約しデー
タ径路に接続するためにSQボード上のNPCレジスク
に書込みまたは読取り動作を行う場合に使用される。S
Qボードへの制御信号は別々に送出される。)DMAは
次のように動作する。装置は、メモリの語の入出力が心
安になるとタスク起動を要求する。
マイクロデバイスタは2サイクル間、動作する。
第1サイクルではLパスアドレスラインにアドレスを出
し、読取り/書込み要求をメモリに行い、アドレスの加
算も実行する。第2サイクルでは転送実行時点を決定す
るためにワードカウントを減算する。マイクロコードは
第1サイクル中に、DISMISSを確認(出力)する
。(タスク切替は、第2サイクルの後に起る。)マイク
ロコードは、DMA動作を、装置に第1サイクル中にマ
イクロデバイスライトを用いて伝える。このマイクロデ
バイフライトは装置にデータを転送しないが、DMA動
作実行中を装置に伝え、起動要求フラッグをクリアする
。(起動要求はバスから直ちに除去され、フラッグはク
ロック端でクリアされる。)装置からメモリへの読込み
では、装置はアクティブサイクル(マイクロデバイスラ
イトの1サイクル後)中にデータをバスに乗せる。する
とこのデータはメモリに畳込まれる。簀込みでは装置は
、マイクロデバイスライトの2サイクル後に、バスから
データを取入れる。
メモリに似た装置もあり、これらはマイクロデバイスI
/Oを使用しないことが多い。どちらを使用するかの規
準は、一般的には装置がマイクロコードで動作している
かということと、そのマイクロコードの速さが便利であ
り必要であるかということである。メモリに似た装置は
、LISPコードで直接にアクセスできる。
スパイ信号 SPY<7:0> 8ビツトの双方向信号でむしろ遅い
バスが診断用に使用される。装置が動作中に、FEPが
種々のCPU状態を読みできるようにする。
SPY ADDR<5:0>読取りまたは書込み用の診
断レジスタをアドレスする。
SPY READ L 選択されたレジスタからデータ
をスパイバスヘデート(送出)する。
SPY WRITE L 後縁で、スパイパスからデー
タを選択されたレジスタへクロック(取入れ)する。
SPY DMA 信号 スパイバスが診断用に使用されない場合には、FEPは
スパイバスをDMA装置を確認するための特別なサイド
ドア経路として使用する。通常、FEPはスパイパスを
、全ての到着してくる通信網上のパケットの写しを受信
するために使用する。FEPはスパイバスを通信網への
送出のために、およびディスクからの読込みのために(
ディスクへの書込みも可能であるが、不明であり未決定
である)セットアツプも行う。詳細は<LMHARD>
DMA、DBSIGNマニュアルを乞参照のこと。これ
に関する章は最新情報を含んでいる。
SPY<7:0>DMA装置へまたはDMA装置からの
8ビツトデータ。これらのラインはDMA動作中は連続
的に駆動される。DMAバッファはこれらをラッチしな
い。
SPY DMA ENB L DMA励作動作来行が許
されている場合に確認(出力)される。診断用にスパイ
パスが使用されてしまっていれば消される。
SPY DMA SYNC↑装置によって確認されるク
ロック。
この信号の立上りにおいて1バイトが転送され、アドレ
スが加算される。装置はこの信号の前縁またはそれ以前
に、データを(書込みのために)取入れるか、新しいデ
ータを(読込みのために)提供しなければならない。こ
れはSPY ADDR■と同一のワイヤである。
SPY DMA BUSY L DMA動作が完了して
いない場合に確認(出力)される。この信号は、転送の
長さを決定するものによって、装置またはFEPによっ
て確認される。例えば通信網からの入力に関しては、こ
の信号は装置から出され、通信網への出力およびディス
ク入力に関しては、この信号はFEPから出される(デ
ィスクには自身のブロックサイズは分らない)。これは
SPY ADDR1と同一のワイヤである。
タイミング要件 LBUS RESETとLBUS POWER RES
ETは同期していない。他の全ての副次的効果はクロッ
クの後縁で発生する。LBUS REQUESTとアド
レスラインはクロックの前縁よりも前に安定する。しか
しLBUSWRITEはクロックの後縁でのみ有効であ
る。この信号はトラップの結果に従って変化する。よっ
て副次的効果を有するメモリ読込みに対しては無効であ
る。これはプログラムで要求されていないメモリ読込み
が発生するからである。
マイクロデバイス書込みでは、アドレスライン(LBU
S DEV■−9)はそのサイクル2通して安定してい
るが、データ(LBUS■−35)とLBUSWRIT
Eはクロックの後縁でのみ有効である。データラインは
後半(SECOND HALF)の間に駆動されるだけ
である。
マイクロデバイス読込みでは、アドレスライン(LBU
S DEV■−9)はそのサイクルを通して安定してい
るが、LBUS READはクロックの後縁でのみ有効
である。副次的効果は許められるが、これはクロックで
のみ発生できる。データ(LBUS■−35またはある
装置ではLBUS■−31)はサイクルを通して駆動さ
れねばならない。
TASK8−15REQおよびTASK4REQは非同
期であり、どの時点で、駆動してもよい。タスクが要求
されると、陽に要求を取消されるかLBUS RESE
Tが出されるまでは、要求された状態のままである。
タスクがとり消されると、とり消しを行っているサイク
ル中にタスク要求をオフにして恐らくはより低いプライ
オリティのタスクが新たにスケジュールされるようにし
なければならない。しかしタスク要求フリップフロップ
は、全ての副次的効果が発生するクロックの後縁までは
クリアされてはならない。取消し後のサイクルの間、タ
スク要求はプロセッサによって検出されないが、装置は
できるだけ速かにその要求をとり消さなければならない
(サイクルの始めで誤り信号が考えられる。)Lバスデ
ータライン(LBUS■−43)上に駆動されるデータ
はプロセッサクロックに同期しなければならない。この
規則を破ると、プロセッサ内でのパリティエラーやメモ
リECCエラーの可能性がある。メモリからの読込み時
、データは、前半(FIRST HALF)の終り前に
ECC誤りの決定のための時間を持つために、できる限
り速やかに、バス上で安定しなければならない。メモリ
読込みデータは前半の間にバス上に駆動され、続いて後
半(SECOND HALF)でプロセッサによってラ
ッチされる。このクラッチに続いて次のラッチが使用さ
れる。
これは前半の中間においてオープンされ、原始データを
取入れ、再びECCを訂正したデータ(ECC誤りのあ
る場合)を後半の中間で取入れるために使用される。(
中間とはPROC WPで制御される。)LBUS W
ITH ECCを取消す装置は、これらのラッチのいず
れにおいての同期誤りを避けるために十分早く、データ
を供給しなければならない。
マイクロデバイスからの読取りでは、マイクロコードは
読取りを行っている装置を知っていてサイクルの遅い前
半を使用できるので、より多くの時間的余裕がある。E
CC計算はない。マイクロデバイスはファーストハーフ
の間にデータラインを駆動し、プロセッサはそのファー
ストハーフの後縁で効果的にクロックする。(事実ファ
ーストハーフで1個のラッチがオープンし、セカンドハ
ーフで第2のラッチがオープンする。これはハードウェ
アの最小化のためである。)装置のデータは、どれらの
ラッチ内での同期誤りを避けるために十分早く安定しな
ければならない。マイクロコードはセカンドハーフにな
るまでデータを検出しないので、必要であれば、サイク
ルの遅いセカンドハーフを使用する。マイクロデバイス
に使用されないLパスデータラインは、ターミネータに
よって1にセットされるが問題を避けるのに十分ではな
い。このため全てのマイクロデバイスリードは少くとも
LBUS■−33を、駆動しなければならない。
メモリリード中は、データは要求の2クロツク後に駆動
されることに留意され度い(LBUS WAITサイク
ルのスキップ)。バスドライバイネーブルはクロックさ
れたレジスタから出力されねばならない。マイクロデバ
イスリード中は、データは、LBUS DEV ADD
R9−5を一致させることでデートされたLBUS D
EV READによって、駆動される。LBUSDEV
 READはサイクルの始まりから暫くして安定する。
装置はできるだけ少ない遅延で動作すべきである。装置
は次のサイクルの前に、十分な時間ファーストハーフを
オフにするためにファーストハーフ中は、バスのみを駆
動する。
DMA装置からメモリへの書込み時には、メモリ制御が
付加したECCを含むデータはクロックの前縁の前にメ
モリチップ上で安定しなければならない。(これはWR
ITEがRAMに対して出されている場合である。) ファーストハーフが2度発生するように、トラップに際
してサイクルが延長された場合には、プロセッサがLバ
スデータを受けるラッチは第1のファーストハーフの間
にオープンされるだけである。LBUS WAITのた
めにサイクルが繰返されるときは、メモリリ−ドデータ
はサイクルの最初にだけ、パスから受信される。(これ
はアクティブサイクルとデータサイクルはブロックリー
ドでのみ一致し、LBUS WAITはアクティブサイ
クルに関連しているので、LBUS WAITを使用し
ている装置からのブロックリードでのみ発生する。)マ
イクロデバイスライトだよびメモリライトのデータは延
長されたサイクルまたは繰返しサイクルの間でのみ駆動
される。(マイクロデバイスライトデータはセカンドハ
ーフの間でのみ駆動される。)ファーストハーフの前縁
はクロックの後縁に先立つことはない。この信号をあて
にすることはよくない。ファーストハーフの後縁はクロ
ックの前縁に先立つ。
LBUS WITH ECCは、データラインと同一の
タイミング要件で駆動される。
LBUS DEV C0NDはクロックの後縁よりも前
に安定しなければならない。
SPY ADDR5−0はSPY READまたはSP
YWRITEが出されて(確認されて)いろ時には常に
安定している。スパイデータラインはSPY WRIT
Eの後縁でクロックされねばならない。このラインは、
SPY READが出されている時には常に駆動されね
ばならない。スパイパスをボード上に出すために双方同
トランシーバを使用する場合は、この信号がSPY W
RITE の後縁で動揺しないように、その方向をSP
Y READで制御しなくてはならない。FEPはSP
Y READを取消す前にSPYラインをラッチする。
FEPはスパリリードまたはライトに対して、十分な時
間(ns)を与えるので、このパスでは低速ロジックを
使用できる。
本装置の構成法の主目的は、単純な1マクロ命令を、1
クロックで実行することである。命令取込み装置(IF
U)は直前の命令の実行と並行して、マクロ命令のプリ
フェッチおよびマイクロ命令のディスバッチを行うこと
で、この目的をサポートしている。
IFUのプリフェッチ部分(PF)は、36ビット命令
語を保持する、1Kワードの命令キャッシュ(メモリ)
を有している。この命令キャッシュには、約2000個
の17ビツト命令が保持できる。
命令はデータタイプ(整数)を有している。IFUは、
キャッシュが命令を取入れ、デコードし、マイクロコー
ドアドレスを作成するようにさせる。
マクロ命令を翻訳して、第1マイクロ命令のアドレスに
置くテーブルが存在する。
クロックの終りで、プロセッサは、新しい命令が必要で
あるか、またはマイクロコード実行を続けるかを決定す
る。
システム命令セットはZetalispに極めて似てい
る。この命令セットでプログラムを直接作成することは
ないが、インスペクタまたはウィンドーエラーハンドラ
を使用する場合に出会うものである。
命令は17ビツト長である。7個の命令形式が使用され
る。
1 サインなし直接オペランド この形式は、プログラ
ムカウンタを利用してのブランチ、直接定数演算、およ
びスタックの高さを調整するような特別な命令に使用さ
れる。
2 サイン付き直接オペランド このオペランドは8ビ
ツトの2の補数を示している。サインなし直接オペラン
ドの形式と同様な方法で使用される。
3 PC相対オペランド この形式はサイン付直接オペ
ランドのものと同様であるが、オフセットはプログラム
カウンタに関して相対的である。
4 1−オペランド オペランドを使用するとしても、
指定されないで、スタックの先頭が使用される。Zet
alispの基本命令でも多く使用される。
5 リンクオペランド これは、ファンクションヘッダ
内のリンク領域への参照を指定する。
6 @Linkオペランド これはある機能に関連した
スタックフレーム領域への間接的参照を指定する。
7 ローカルオペランド オペランドはスタックまたは
ファンクションフレーム内に存在する。この形式は多く
の、Zelalisp基本命令に使用される。
多くの命令は、操作すべきデータのソース(源)をアド
レスする。1個を超える引数が必要であれば、他の引数
はスタックから取られる。この例としては、PUSH(
ソースをスタックにプッシュする)、ADD(ソースと
スタックの先頭とを加える)、およびCAR(ソースの
CARを取り、スタックにブツシュする)カする。それ
らの命令は数種類の形式で使用される。
システム命令には、更に別のデスティネーションフィー
ルドは存在しない。全ての命令は、スタックをプッシュ
する変形を有している。その他のオプコード(オペレー
ションコード)は別のデスティネーションを指定する。
本装置には以下の命令タイプが定義されている。
・データ移送命令 この命令はデータを変えずに移動す
る。例としてはPUSH、POP、MOVEM、および
RETURNがある。
ハウスキープ処理命令 これらの命令はメツセージ転送
、呼び出された機能、およびスタック操作において使用
される。例としてはPOP−N.FIX−TOB.BI
ND.UNBIND.SAVE−BIND工NG−ST
ACK−LEBEL.CATCH−OPEN.およびC
ATCH−CLOSEがある。
機能呼出し命令 これは無反転(non−invert
ed )呼出しシーケンスを使用する。引数は既にスタ
ックに入っている。例としてはCALL、FUNCAL
L.FUNCALL−VAR.LEXPR−FUNCA
LL.およびSENDがある。
機能エントリ命令 4個を超える引数またはREST引
数を有する構能で、このため、それらの引数はマイクロ
コードで設定されない機能の中で使用される。例として
は、TAKE−N−ARGS.TAKE−N−ARGS
−REST.TAKA−N−OPTIONAL−ARG
S.およびTEKE−N−OFTIONAL−ARGS
−RESTがある。
機能リターン命令 これらは機能からの値を返却する。
主オプコード9はRETURNであり、いくつかの変形
がある。
・複数値受取命令 これらの命令はスタックからいくつ
かの値を取り出す。例はTAKE−VALUEである。
・高速機能呼出しおよび返却命令 これらは高速呼出し
命令である。例はPOPJである。
・分岐命令 プログラムの流れを変える命令である。こ
れはプログラムカウンタまたはスタックに関して実行で
きる。
・予測 これらは、標準的テスト命令で、EQ.EQL
.NOT.PLUSP.MINNUSP.LESSP.
GREATERP.ATOM.FIXP.FLOATP
、NUMBERP、およびSYMBOLPを含む。
・演算命令 これらは、標遵的な算術、論理、およびビ
ット操作処理を行う。例としては、ADD.SUBTR
ACT.MULTIPLY.TRUNC2(除算と余り
に対して)、LOGAND.LOGIOR.LOGXO
R.LDB.DPB.LBH.HOT、およびASHが
ある。
・リスト命令 多くのZetalispリスト操作命令
は直接システム内へのマイクロコードとして実行される
。例は、CAR,ODR.RPLACA、およびRPL
ACDがある。
・シンボル命令 これらの命令は、シンボルとその特性
リストを操作する。例には、SET.SYMEVAL.
FSET.FSYMEVAL.FBOUNDP.BOU
NDP、GET−PNAME、VALUE−CELL−
LOCATION、FUNCTION−CELL−LO
CATION、PROPERTY−CELL−LOCA
TION、およびPACKAGE−CELL−LOCA
TIONが含まれる。
・配列命令 このグループは配列の高速定義と高速処理
を行う。例には、AR−1,AS−1,SETUP−1
D−ARRAY、FAST−AREF、ARRAY−L
EADER.STORE−ARRAY−LEADERが
、構造フィールドをアクセスするために使用される。
・その他の命令 これらには、通常にコンパイルされた
コードでは使用されない擬似データ移動命令、タイプチ
ェック命令、および誤り修復命令が含まれる。
システム命令の実行は、ハードウェアとマイクロコード
を組合せながら仕事を遂行する。ハードウェアとしては
以下が含まれる。
・アドレス計算 ・タイプチェック ・ビットフィールドの回転、マスク、およびマージ処理 ・算術および論理機能 ・乗算および除算 ・結果のタイプを挿入する。
命令実行の遂行例として、32ビツトの加算命令は、以
下の事象シーケンスで行われる。
・オペランドを(通常はスタックから)取込む。
誤り訂正ロジック(ECC)チェックによりデータの整
合性を確認。データが正しい場合にはECOは実行時間
に影響しない。
・データタイプフィールドをチェックする。
・オペランドを整数と想定して、データタイプチェック
と並行に31ビツトの加算を行う。(オペランドが整数
でなければ、オペランドを取込むためのマイクロコード
にトラップし、別のタイプの加算を行う。) ・オーバーフローをチェックする。(発生していればマ
イクロコードにトラップする。)・結果に適当なデータ
タイプをつける。
・結果をスタックに入れる。
データタイプチェックは同一サイクル内に命令と並行に
実施されるので、これによるオーバーヘッドはない。
メモリ制御も誤り訂正回路(第116図−第117図)
を含んでいる。第1図に示す装置の全てのボード上にE
OCが置かれているのに比較すると、メモリ制御ボード
上には1個の集中ECCが設置されている。全てのデー
タはメモリへまたはメモリから、この集中ECCを通る
Lバスを介して転送される。マイクロDMA中に、周辺
装置とFEPでの間で行われる転送も、この集中ECC
を介して主メモリに通じている。フロントエンドプロセ
ッサ第126図−第176図はFEP装置のフロントエ
ンドプロセッサ回路を示す。
FEPはMC68000を基礎とするプロセッサ(第1
50図)と、種々の機能をサポートする回路(第126
図−第131図、第134図−第135図、および第1
53図)であって、いくつかの機能を果す回路とを備え
ている。正常動作中は、FEPは低速および中速入出力
(I/O)装置を制御し、エラーをログし、必要であれ
ばリカバリ手順を始動する。FEPは、システムプロセ
ッサに直接かゝってくる実時間応答要求を、極めて減少
させる。マウス(入力装置)やキーボードのような装置
をFEPを介して本装置に接続できる。
プロントエンドプロセッサは、FEPを介してLバスに
接続される汎用バス網も駆動する。この汎用バス網は、
他のインターフェースによって、Lバスデータおよび制
御信号をある外部バスタイプの装置に接続される外部バ
スの特定な信号に変換できる。このタイプの外部バスの
例としては、マルチパスがある。Lパスデータおよびf
ljj制御信号は、接続される特定な外部バスには無関
係に、第151−第152図および第157図−第15
8図に示す回路で、汎用バス形式に変換され、その後、
(この特定外部バスで)データおよび制御信号の汎用形
式は外部バスの形式に変えられる。
■EEE−796(マルチパス)カード回路は、市販の
マルチパス周辺装置をFEPを介して本装置に接続する
ために使用される。FEPは、固定の64にワードアド
レス空間内にマルチパスメモリマツプを有している。4
個のプログラム可能なシリアルライン(第154図−第
155図:AM1200モデムを含む)およびマルチパ
スDMA−データは、FEPを通して送出される。
4本のシリアルラインはFEPに接続される。2本は高
速用、他の2本は低速用である。各ラインは同期または
非同期で使用できる。1本の高速用ラインは常に、シス
テムコンソール用に供されている。1本の低速用ライン
はモデム用である。この低速用ラインのポーレイトはプ
ログラム可能で、最高で19.2Kボーである。高速用
ラインは、最大1Mボーまで使用ができる。全ての4ラ
インは、標準の25ビンDコネクタでターミネイトする
マルチパスからの英時間割込みはFEPで処理される。
割込みを受けた後、FEPは適当な割込みハンドラにト
ラップする。このハンドラはFEPの主メモリのシステ
ム通信領域に情報を書込み、次に割込をシステムCPU
に送出する。システムCPUは、この割込のためにシス
テム通信領域に置かれたメツセージを読み、適当な行動
をとる。
第168図−第176図のパドルカードは、外部バスイ
ンターフェース回路の残りを示す。次に示す表5には、
記憶モジュールドライブディスクコントローラおよび主
(priam)装置のためのパドルボードへ、または、
からの信号を示す。
表  3 総ピン数は49本。ネットワークおよびTVも同一のパ
ドルボードを介して出力する。BUS<10>は富士通
SMDのTAG<4>としてSMDのUNIT<3>の
予備は、富士通SMDのTAG<5>として知られてい
る。
SMDのPADDLE BUS<7:0>にのみ存する
radialindex&sectorは3状態である
。主装置(Lバスはこれを読み戻せるが)のために、P
ADDLEDBUS INは1であればPriam D
BUSからPADDLESTATUSまでをイネーブル
し、もし0であれば、PADDLE BUSからDBU
Sまでをイネーブルする。
SMD’B”(ラジアル)ケーブル入力は、選択された
装置(Unit−selected)でデートされた7
5108を用いて、パドルボード上でマルチプレックス
される。バドルボード上のプルアップである。
PADDILE IO ENABLE Lは、IOPR
OMがBUS<7:0>を駆動できるようにする。PR
OMアドレスはTAG1、UNIT<3:0>から得ら
れる。これらのビットは他のタグが0であるかきり、デ
ィスクに影響を与えることなく、いかなる組合せをとっ
てもよい。
PADDLE DISK ENABL LはSEOTO
Rのための3状態ドライバをイネーブルする。INDE
X、READ DATA。
SERVO CLK、およびREAD CLKは、ディ
スクに対して確認(出力)されるべきタグラインをイネ
ーブルし、SELSCT ERROR(ディスクがイネ
ーブルされていなければ強制的にオフとされる)をイネ
ーブルする。PADDLE DISK ENABLEが
主パドルボードに対して確認されていない場合には、デ
ィスクによって駆動されないようにバス<7:0>をデ
ィスエーブルする。(これによってディスクに代ってI
OFROMで駆動できるようにする。)クロック フェ
ーズ リードおよびライトデータは、パドルボードへまたはか
らの対応するクロックの立下りで変化する。SMDに関
しては、ライトクロックはパドルボード上で反転されな
いが、リードクロックは反転される。サーボクロックフ
ェーズは影響しない。
主装置(priam)に関しては、両クロック共に反転
される。実際ライトクロックのフェーズのために、パド
ルボード上でジャンパを使用する必要がある。このフェ
ーズは、ライトデータはコントローラからのクロックと
共に提供されないので、ケーブル長に従って設定されね
ばならない。「ライトクロック開始駆動」モード設定に
は、主装置のスイッチをセットすること。
STATUS<5:O>ニモニックについては上記の富
士通マニュアルまたはプログラム手引を参照され度い。
SELECT ERRORは、4個のドライブから構成
された装置のラインによってアドレスされたFROMか
ら出される。
SELECT ERRORは、1個だけの装置が選択さ
れた場合には0となる。
SMD″B”ケーブル上のSEEK END信号は使用
されない。
割込み処理はシステムプロセッサ内に記憶された多重マ
イクロコンテクストを用いて高速化される。これによれ
は割込みハンドラへの分岐前に、全マイクロコンテクス
トを退避する必要がないので、割込サービスはより速か
になる。
FEPはプロセッサに調停されたDMA転送を遂行する
能力もある。DMAを実行するための回路は、第147
図と第148図に示すマイクロ秒クロック回路とマイク
ロデバイスデコード回路と、DMAアドレス回路と、バ
スインターフェース回路と、制御回路(第159図−第
161図)とを備えている。
本装置からFEPへのDMA動作は、2Mバイト/秒で
実行できる。
I/O装置DMAインターフェース(FEPバッファお
よびマイクロコードタスクに対して)FEPから装置へ
: FFPはバッファに、データを入れる。このデータは、
バッファアドレスカウンタのキャリ出力が装置への停止
信号に対して正しい時点で起るように列べられる。PE
Pは、アドレスカウンタがデータの第1ワードを示すよ
うにリセットする。FEPはバッファデータがバス(ス
パイ7:0)を駆動できるようにするためのバッファモ
ードをセットし、装置が動作をバスに報知するようにす
る。つまりFEPに対する動作を報知する。更に、(F
EP)がバス制御信号のSPY DMA SYNCを駆
動できるようにする。
装置はバスからのデータの1語を取入れ、SPYDMA
 SYNO上にパルスを発生する。このパルスの後縁で
アドレスカウンタが加算され、バスを装置のシストレジ
スタにクロックする。これが最後のワードであれば(ま
たは装置によっては、最後のワードに近ければ)、この
パルスの間にアドレスカウンタからキャリが出る。この
キャリは、装置に停止を伝えるSPY DMA BUS
Yをクリアする。
SPY DMA BUSYがクリアされるとFEPに割
込みがかかる。
装置からFEPへ: 停止信号を必要とするディスクに関してはFEPは、キ
ャリ出力が停止信号を生成するようにアドレスカウンタ
を用意する。ネットワークはエンドオプパケット到着を
基に、自身の停止信号を作成する。FEPは、第1ワー
ドが記憶される位置の直前の語をアドレスカウンタが示
すようにリセットする。FEPはバッファモードをセッ
トし、バスを駆動しないようにし、バッファメモリへの
書込みを行うようにし、装置がバスに動作を伝えるよう
にセットする。つまりその動作をFEPに伝える。
これによって、FEPがレジスタからバスを駆動できる
ようにし、バス制御信号のSPY DMA SYNOと
SPY DMA BUSY(ネットワークの場合)を駆
動できるようにする。
装置がデータの1語を得ると、SPY DMA SYN
Cでパルスを発生する。このパルスの後縁で、データは
装置内のレジスタにクロックされる。この装置はSPY
7:Oを駆動している。更に、アドレスカウンタを加算
する。このカウンタはSPY DMA BUSY(装置
がディスクであるとき)に反映する。バッファ制御ロジ
ックはアドレスとデータの設定時間を待ち、続いて、メ
モリへの適渦なライトパルスを生成する。
SPY DMA BUSYがクリアされるとFBPに割
込みが発生する。
装置とFEPのインターフェースラインは以下のように
まとめられる。
SPY7:0 双方向データバス。診断に使用されるものと同一のバス
SPY DMA ENBL スパイバスがDMAに使用される可能性のあるときに確
認(出力)される。FEPは、診断用リードおよびライ
トを実行する場合には、DMA装置がスパイバスを駆動
しないことを確実にするために、このラインを取消す。
SPY DMA SYNC 選択された装置で躯勤され、後縁(立上り)でアドレス
カウンタを加算し、一連のライトタイミングを始動する
。これはオープンコレクタである。
SPY DMA BUSY L 転送が完了するまで出力されているオープンコレクタ信
号。転送の長さを決定する装置に従って、装置またはF
EPによって駆動される。(恐らく、FEPが、プログ
ラムによって必要に応じてセットされ、カウンタオーバ
ーフローでクリアされるフリップフロップを用いて駆動
する。)FEPは、SPY DMA BUSYが出力さ
れていないときには、自分に割込みがかゝるようにでき
る。
I/Oバスまたは汎用バスは、転送を実行し、上記の信
号を駆動または受信するために装置の制御レジスタを設
定する。全ての3状態(信号)は、転送が始まる前に設
定され、転送中は一定であることに留意されたい。
装置からマイクロデバイスヘ: 装置制御レジスタは、I/Oパスを用いて先ず設定され
、マイクロタスクの状態は初期設定される。
(初期設定されるのは、PCと変数、代表的なものはア
ドレスとワードカウントである。)タスク番号は装置の
制御レジスタ内に記憶される。)装置がデータの1語を
得ると、それをバッファレジスタに転送し、WAKEU
Pをセットする。これはFEP DMA NEXTと同
一のタイミング゛である。プロセッサはサービスを直ち
には始めないのてWAKEUPは前縁でまたは 後縁で
セットすればよい。
WAKEUIが既にセットされていれは、転送完了後に
テストされる OVERRUNをセットする。
プロセッサはタスクの走行を決定する(下記参照)。第
1サイクル中は、タスクマイクロコードはDISMIS
Sを指定する。装置はこれを検出し、指定されたタスク
番号に等しいカレントタスクにゲートされそのサイクル
の終りにWAKEUPをクリアする。DISMISSは
プロセッサが内部的に新しいタスクを選択するようにも
する。マイクロコードは、物理アドレスも生成する。装
置はマイクロコード機能のDMA−WRITEを検出し
、装置のタスクと等しいカレントタスクをゲートし、バ
ッファレジスタをバス上に駆動する。プロセッサはバス
上のECC部分を駆動し、書込み命令をメモリに送る。
第2サイクルでは、プロセッサはワードカウントを減算
し、バッファが空であるかどうかに従って、タスクが次
に起動すべきPCの値に影響を与える条件スキップを実
行する。
第1サイクルよりも2サイクルトおいた前のサイクル中
に、装置は、そのステータスを、3本または4本の特殊
パスライン上に駆動する。このラインは、ディスパッチ
のためにマイクロタスクによってイネーブルされ得る。
これは、ディスクエラーでの停止およびネットワークパ
ケットの終りでの停止のような事態に使用される。
マイクロタスクから装置へ: 装置の制御レジスタはI/Oバスを用いて先ず設定され
、マイクロタスクの状態は初切設定される。(PCおよ
び代表的にはアドレスとワードカウントが設定される)
。タスク番号は装置内の制御レジスタに記憶される。W
AKEUPけ、データの第1ワードが取込まれるように
オンにされ続ける。
装置がデータのワードを必要とする場合には、バッファ
レジスタから1語を取入れ、マイクロタスクかバッファ
レジスタを再び満たすようにWAKKUPをセットする
。同時に、装置はBUFFEREMPTYをセットする
。既にセットされていれば、OVERRUNをセットす
る。
タスクの第1サイクルでは、マイクロコードは、WAK
EUPをクリアするDISMISSを指定する。マイク
ロコードはアドレスも生成しDMA−READを指定す
る。第2サイクルでは、タスクはワードカウントを減算
する。第3サイクル(タスクは走行していない)では、
ECC訂正済データがバス上に存在する。このサイクル
の終りに、このデータはバッファレジスタ内にクロック
され、BUFFEREMPTYはクリアされる。DMA
−READはカレントタスクとANDされる。装置タス
クは、2台のフリップフロップで遅延されて、保持レジ
スタのこのクロック動作をイネーブルするために使用さ
れる。
タスク選択ハードウェア(装置およびプロセッサ内) 装置はタスク番号レジスタおよびWAKEUPフリップ
フロップを有している。このフリップフロップは装置に
よってセットされ、カレントタスクが装置のタスクと等
しいときに、プロセッサからのDISMISS信号でク
リアされる。これは、装置の要求に従って、セットまた
はクリアがエッジトリガのR/SまたはJ/Kフリップ
フロップでよい。プロセッサにとってはどちらでもよい
。上記のマイクロタスクの場合の装置では、WAKEU
Pはオーバーラン計算のために使用されるので、クリア
処理はエツジトリがタイプでなければならない。
WAKEUPはオープンコレクタの3−8デコーダをイ
ネーブルする。このデコーダは指定されたタスク番号を
デコードし選択されたTASKE RBQUESTnラ
インをプロセッサに駆動する。
プロセッサは通常のI/Oパスおよびクロックに加えて
、以下の信号を装置に送る。
CURRENT TASK (実行中のマイクロ命令の
属しているタスク) NEXT NEXT TASK (カレントタスクより
も2クロツク前のタスク) DISMISS (カレントタスクがWAKEUPをク
リアするように命じる。) TASK−SPECIFIC FUNCTION (マ
イクロコードから装置への通信) TASK STAREUP DISPATCH(DMA
−READおよびDMA−WRITEのデコード) (装置からマイクロコードへの通信、NEXTNEXT
 TASKが指定されたタスクと一致すると駆動される
。) プロセッサは、正常のマイクロコードクロックでクロッ
クされて、入力TASK REQUESTラインをレジ
スタに同期させる。このレジスタは、DISMISSが
出されていればカレントタスクに対してFALSEを作
成するデコーダとANDされる。結果はプライオリティ
エンコーダに送られる。プライオリティエンコーダの出
力はカレントタスクと比較される。
これらが異っていれは、マイクロコードはTASKSW
ITCH ENABLEで確認され、本装置は直前のサ
イクルでタスクの切替を行っていないことになり、この
サイクル内でタスクの切替を行う。サイクルの後半では
カレントタスクでな(NEXT NEXT TASKが
プライオリティ エンコーダ出力から選択され、そのタ
スクの状態が取込まれる。こゝではPALを利用する場
所はないようである。
DISMISSが処理されると、WAKEUPはサイク
ルの終りまでクリアされない。つまり、同期レジスタに
留ったまゝである。しかし、プライオリティエンコーダ
の出力は、タスク切替が直前のサイクルで必らず実行さ
れているので、DISMlSS後のサイクル中には検出
されない。
WAKEUPの設定から、タスクの第1マイクロ命令実
行の始動までの最小遅延時間は2サイクルである。1サ
イクルはタスク状態を取込むために、他のサイクルはマ
イクロ命令を取込むために使用する。この時間は、同期
のために1サイクル、タスク切替のために1サイクル、
更に高優先度タスク要求またはカレントタスクがタスク
処理を不能に(例えは、メモリアクセス中の1サイクル
はタスク処理は不能である)している場合にはより多く
のサイクルの延長が可能である。一方、最高の優先度を
有するタスクの最大の遅れは、5サイクルまたは1マイ
クロ秒である。こゝでは、タスク処理は一時には、1サ
イクルを超えて不能にはされないことを想定している。
マイクロコードタスクが単純なDMAよりも複雑なサー
ビスを実行しているときには、装置内のWAKEUPフ
ロップフロップはタスクを活動させておくために最後の
マイクロ命令まで、セットされたまゝでなければならな
い。
FEPは、第162図−第167a図に示すナノFEP
を介してディスクから小規模なブートストラツププログ
ラムを読み込み、システムマイクロコードメモリにロー
ドし、実行することによって、本装置をコールドスター
トから走行させる。プートストラッププログラムをロー
ドする前に、FEPはプロセッサのデータ径路と内部メ
モリとを診断する。
エラー処理は、システムプロセッサからFEPレポート
エラー信号を得て作動する。矛盾チェック(例えば、内
部メモリのパリティエラー)によつて検出されたハード
ウェア障害によって誤りが報告されれば、プロセッサは
停止しなければならない。この時点で、FEPはハード
ウェアを直接テストし、プロセッサ処理を続行するか、
ユーザに事態を知らせる。誤り信号がソフトウェア(マ
イクロコードまたはZetalisp )によって生成
されれば、FEPはその誤り、典型的には、ディスクエ
ラーやメモリエラーを記録する。
本装置は、メンテナンス要員の利用する情報を定期的に
FEPから集め、ディスクに記録する。FEPは常に最
新のエラー情報を持っているので、これ以外の装置が障
害を起こしても、エラー情報を取ることができる。これ
は、ハードウェア誤りによってクラッシュが発生した時
の対応には特に利用価値がある。エラー情報は保存され
ているので、プロセッサが復旧した時に誤りを修復でき
る。
本装置が走行中でなければ、FEPは診断およびマイク
ロコードデバッグツールな提供する。
第132図−第133図のEFROM(電気的にプログ
ラム可能なROM )はFEP内にあって簡単な診断ル
ーチンを記憶している。これは、第136図−第138
図の高速バッファメモリを用いてネットワークおよびデ
ィスクを走行させるコードを含んでいる。FEPは第1
56図の回路を用いて、プロセッサ内部をスパイバス経
由でテストする。
ハードウェア上の問題のデバッグには、遠隔コンソール
またはEthernetの他のコンソールから、FEP
に対して直接にダイアル呼出しができる。より高度の診
断が必要であれば、ディスクからまたはネットワークを
介してロードできる。
FEPは、既に説明したLバス制御用のメモリと共に動
作するLバス制御回路(第139図−第146図)も備
えている。更に、既述のページタグ回路(第149図)
を含んでいる。
第177図−第219図にディスプレイ(第177図−
第193図)と、Ethernet(第194図−第2
02図)と、Lバス(第203図−第207図)と、デ
ィスクコントローラ(第208図−第217図)と、お
よび/またはオーディオ出力(第218図−第219図
)とのための入出力回路を示す。
入出力回路(第177図−第196図)は柔軟性のある
プログラム可能な高解像度カラーディスプレイ回路、特
にCD1000カラーディスプレイのものである。ディ
スプレイメモリ回路を用いて、本装置はカラーディスプ
レイを実現し、1ビクセル/32ビットワードへのアク
セスと、1個の32ビツトワードにまとめられた4個の
隣接するピクセルの1個の色に関するビットのアドレス
処理と、32個の隣接するピクセルの1平面をアクセス
することと、カラーフィルレジスタ内の値を1メモリサ
イクル内に32個の隣接するピクセルに入れることとに
よってこのカラーディスプレイを制御する。更に、カラ
ーメモリはシステムアドレス空間に直接マツプされる。
第194図−第207図は10Mビット/秒のEthe
rnetプロトコールのためのサポート部分である。プ
ロセッサとネットワークコントローラはLバスで相互接
続され、ネットワークコントローラは、プロセッサから
のマイクロタスク支援をも受ける。
第208図−第217図はLパスにつけられる任意の記
憶モジュールドライブのものである。ディスク回路は、
コントローラロジックと、メモリアクセスと、ディスク
ヘッダ比較とが、独立したタスクとしてプロセッサマイ
クロコードで実行されるようにしている。マイクロコー
ド支援は、1ページを超えるページを1要求で転送でき
るようにするためにページチェイン処理を許している。
第218図−第219図は、Lパスとシステムプロセッ
サとの間のオーディオインターフェースのものである。
機能は、実時間上の制約に応じて3タイプに分けられる
LISPコードによって、装置選択と、シークと、再校
正や誤り処理のような種々の処理とが実行される。ディ
スクドライブに命令を出し、そのステータスを読み取る
ことを許すI/O装置アドレス(擬似メモリ)もある。
(プロトコール、例えばSMD主装置(priam)も
含む。)ディスクのフォーマット作成時には、インデッ
クスとセクタのパルスはこの径路を介してディスクから
直接に読取られ、それらに関するタイミングはLISP
コードまたは特別なフォーマット用マイクロコードで制
御される。
ヘッド選択は以下を除いて同様である。LISPコード
を走行させるための実時間プロセスのスケジュールにお
ける遅延が存在するので、回転の利用を完全にしてシリ
ンダ内の隣接トラックの次のトラックから入出方動作が
続行されるように、LISPコードでなくマイクロコー
ドが使用される。
リード/ライト動作はマイクロコードと共働してディス
ク制御装置で実行される。ドライブへの制御タグ信号(
即ちリードゲートやライトデート信号)を生成し、デー
タワードを主メモリへ、または、から転送するためのマ
イクロコードヘの要求を制御しECCハードウェアを制
御する状態装置が備えられている。
FEPがディスクを使用している間は、上記の最初の2
機能は、FEP内のLILコードで実行され、第3の機
能はFEPの高速バッファと共働してディスク状態装置
によって行われる。
ディスク状態装置は、ディスクからの2個の同期してい
ないクロックの1個から、自身のクロックを選択できる
。1方はサーボクロック、他方はリードクロックで、記
録されたデータから得られる。サーボクロックは選択さ
れたドライブがある間は有効である。これはスピンして
いて、常にレディ状態である。遅延は常にサーボクロッ
クから構成される。装置のクロックや単発クロックによ
ってではない。
状態装置はマイクロコード、LISPコード、またはF
EPからの命令で始動され、停止の命令があるまで走行
を続ける。SMDを使用しているときは制御タグを含む
ディスクバス上の殆んどのラインは、前もって設定して
おくべきレジスタから得られるがRead Gateと
Write Gateのラインは状態装置によってOR
される。
状態装置は、次に示すいずれかの条件が発生すると、停
止してエラーフラッグを設定する。
いずれのディスクも選択されない(SMD)2個以上の
ディスクが選択される(SMD)ディスクがレディ状態
でない(主装置 (priam )) オーバーラン(マイクロコードからの応答が遅い) インデックスパルスまたはセクタパルス誤り状態装置が
走行中に命令レジスタに畳込み発生 マイクロコードが何かの理由で破壊されて、停止信号を
送出しない場合には、これらの誤りチェックはトラック
全体に対して操作を実行しないようにする。
ディスクからのof Cylinderのような他のエ
ラーはチェックされない。多くのドライブでは、省込み
中のエラーに対して、フォールトを発生させる。ディス
クエラーステータス(フォールトも含む)は、マイクロ
コードでチェックされ、セクタ転送完了後はマクロコー
ドでチェックされる。
状態装置はディスクからのクロックか伺かの理由でオフ
にされると、ハングアップする。マクロコードはタイム
アウトを提供しなければならない。
状態装置は以下の順序で動作する。つまり、そのメモリ
内には以下のプログラムか存在する。
リード:状態装置は遅延を発生し、リードゲートをオン
にし、更に遅延を発生し、内部クロックからディスクビ
ットクロックに切替え、aeync(非同期)パターン
を待ち、次に、停止命令があるまでデータワードを読取
りマイクロコードに渡す。停止信号はマイクロコードタ
スクによって、最後の飴から3番目の語の受信に同期し
て同時に、出される。最後のデータワードの読取り後、
ECCが読まれ、マイクロコードタスクは、状態装置が
アイドル状態になる最後の時点で起動される。マイクロ
コードはECC−0フラッグをバスを介して読取る。エ
ラーが発生しなければこのフラッグは1である。
リードヘダー:状態装置はセクタパルスを待ち、遅延を
発生し、リードゲートをオンにし、更に遅延を発生し、
内部クロックからディスクビットクロックに切替え、非
同期パターンを待ち、1データワード(セクタヘッダ)
を読取り、リードゲートなオフにし、続いてリードプロ
グラムに制御を渡す。ヘダーワードはデータ(32ビツ
トのへダーと4ビットの不用情報)としてマイクロコー
ドに渡される。マイクロコードは、正しいセクションが
アクセスされているかを確認するためにヘダーの比較を
行う。ヘダーにはECCはなく、その代りに、マイクロ
コードが実際のデータビットと並行してチェックをする
冗長ビットかある。すなわち、ヘダーは、6ピツトのセ
クタ番号と、6ビツトのヘッド番号と、12ビツトのシ
リンダ番号と、4ピツトのハツシュ機能(他のビットに
対して)のデータから成り、全体で28ビツトのへデー
としてDCWリストに収められている。
「メモリ上にマップされた」入出力は、DMAタスクに
関する機能を除いて、全ての機能に対して使用される。
これによってFEPはマイクロ命令の実行をしないで、
単にLバス動作を行うだけでディスクからデータを読込
むことが可能である。
(しかし、CPUは、停止されているか、または、少く
ともディスクには関与しないようにしなければならない
。)Lパスが機能しない場合にしなけれFEPはディス
クを使用するだめの手段を持たない。
命令レジスタ:このレジスタはパスと、タグと、ディス
クへのユニットセレクトライントとを直接に制御し、D
MAタスク指定を提供し、実行すべき状態装置プログラ
ムを選択する。命令レジスタに書込みがされている時に
状態装置力を稼動していると、エラーと共にこの装置は
停止する。または、オプションとして(ビット24が1
であれば)始動することもできる。命令レジスタに書込
みを行うと、種々のエラー条件がリセットされる。命令
レジスタの全てのビットは読み返すことができる。
列8を除いて、命令レジスタの全てのビットはLバスリ
セットで零にされる。
10:0 ディスク、パス 11   0バスイン 15:12 SMD:ベージ3:0 19:16 ユニット番号 23:20 命令オプコード(状態装置プログラム選択
) 24    始動。1であれば状態装置を始動。
−DISK IDLE(状態装置が稼動中であれば1)
として読み戻す。
28:25 タスク。8−15、該タスク選択。
これ以外は、タスクなし。
29    ディスク使用のFEP。スパイパスDMA
をイネーブルする。
30    32ビツトモード(高次ビットに、定数デ
ータタイプを指定。) 31    予備 タスク起動は状態装置が起動を命じたとき、状態装置が
走行中でない場合に発生する。状態装置が使用中でない
場合は、命令レジスタでタスクを指定してはならない。
起動はタスク指定が行われたときには常に発生する。
診断レジスタ このレジスタはプログラムがパドルボードをディセーブ
ルし、ディスクをンミュレートできるようにし、完全に
組立てられた装置で殆んどのロジックをテストできるよ
うにする。このレジスタは、本装置に電源が入れられる
とクリアされる。
0   リードクロック 1   サーボクロック 2   リードデータ 3   インデックス 4   セクタ 7:5 (予備) パドルイネーブルレジスタ このレジスタは本装置に電源が入るとクリアされる。こ
れによってパドルボードをオフにすることができる。正
常動作では10にセットされる。
ビットの意味は次の通りである。
0 パドルIDイネーブル(パドルパードIOFROM
からディスクバスへ) 1 −パドルディスクイネーブル(パドルボードのディ
スク部分火切断) 2 −パドルネットイネーブル(パドルボードのネット
ワーク部分を切断) 3 パドルパワーOK(ディスク回転をイネーブルする
) ステータスレジスタ このレジスタを読むことで、選択されたドライブのステ
ータス、ディスクインターフェースのステータス、およ
びいくつかの内部診断16号を得ルことができる。
オーバーランおよびエラーは命令レジスタへの書込みに
よってクリアされる。(しかし、状態装置走行中に命令
レジスタへの書込みがあると、エラーをセットし、状態
装置を停止する。)回転位置検出レジスタ このレジスタは、16ビツトを備え、各ドライブに対し
4ビツトを使用して、現時点でのセクタ番号を含んでい
る。
誤り訂正(レジスタ) 状態レジスタのビット15が読取り動作後に0であると
、ECCエラーが検出されたこと暑示す。
誤り訂正状態装置の動作は、エラー現象を計算するのに
使用できる。マイクロコードタスクは、単にビットをカ
ウントするために32ビットごとに起動される。状態装
置の停止後、誤り訂正レジスタを読むことができる。
10:0  エラーパターン 15:11 胎内のビット番号 DMA転送 マイクロデバイスの書込み動作はアドレスサイクル中に
実行される。同時に、シーケンサはタスクを解放するよ
うに命令を受け、メモリ制御は過当な(リードまたはラ
イトの)DMAサイクルを始動するように命令を受ける
。Lパス装置アドレスのビットは次の通りである。
9:5 カードスロット番号 4:3 サブデバイス(0・・・ディスク)2:0 動
作 動作 0 ディスクバッファ直接書込み(レビジョン2以降) 1DMAサイクル(解放(dismission )ば
1にDMAサイクルを始動) 2 解放、タスク確認(WAKKUPのクリア)3 解
放およびDMAサイクル 4 解放(のみ) 5 ディスクタスク消去(キル) 6 M放、タスク確認、エンドフラッグのセット 7 DMAサイクル、エンドフラッグのセット、解放 動作3が正常時に使用される。動作1は、1語を超える
語のバッファ処理がされていれは、1回の起動で複数の
語を転送できるようにする。タスクの走行を続行中にデ
ィスクへのDMA転送を始動するためにマイクロコード
でこの動作1が必要とされることもあり得る。
動作2は、セクタパルスでの起動や、ECC訂正の場合
にワードカラントラ行うために使用される起動のような
、データ転送のないタスク起動に使用される。単にタス
クを解放し(WAKEUPをクリアし)、オーバランエ
ラーに関しては異ったタイミングを有している。
動作5は、ディスクタスク指定をクリアし、それ以降の
起動をやめさせ、次のディスク命令が正しく与えられる
ために制御タグをクリアし、更に、時によっては、FE
Pを使用しているディスクおよびディスク36ビットモ
ードもクリアする。
ディスクからメモリへの読込み時には、エンドフラッグ
を有するDMAサイクル後、更に2語が存在する。状態
装置は、EOOコードを読み、チェックし、その後停止
する。
メモリからディスクへの書込み時には、エンドフラッグ
を有するデータワードがセクタ内の最後から2番目のデ
ータワードとなる。状態装置は更に1データワードを受
けて、その後にECCコードを書込み、ガードバイトを
書き、その後停止する。
読込み比較処理にも同一のタイミングが適用される。
マイクロデバイスリードについては、Lパス装置アドレ
ス内のビットは次の通りである。
9:5  カードスロット番号 4:6  サブデバイス(U・・・ディスク)2:0 
 動作(0:ディスク・・・データバッファ読込み) 第220図−第233図は、512K×44ビツト記憶
装置を有するメモリボードの概略図であり、本発明に従
った装置の主メモリを構成している。
メモリは64KRAMチップ(第220図)を備え、こ
れらのチップは、第220図−第223図に示すように
列1−16と列19−34、および行A−Mを形成する
ようにメモリボード上に置かれる。アドレスドライバは
列17と18を中心に置かれ、左右または上下のメモリ
装置を交互に駆動する。メモリからのリードおよびライ
ト信号は、前もって、Lバスタイミングモードの説明に
関して触れたので、こゝでは繰返さない。
メモリは19ビットアドレスを用いてインターリーブさ
れるように配置されている。アドレスの8ビツトは行を
、他の8ピツトは列を選択するために使用され、残りの
3ビツトは第221図の左下隅に示すように、セクタ0
−7を選択するために使用される。
メモリがこのようにインターリーブする構成になってい
る結果、マイクロコード制御下の有効な記憶技法によっ
て、メモリからのデータ要求のパイプライン処理および
メモリへのデータの書込みを既述のブロックモードで行
うことが可能である。
第224図はメモリのデータ出力バツファ2示し、第2
25図−第226図は6状態データドライバを示してい
る。第227図−第228図はアドレスドライバであり
、第229図にはアドレスバッファレジスタおよびデコ
ーダを示し、第230図−第233図はメモリ制御信号
回路である。
同期パイプラインメモリと、マイクロタスク処理と、マ
イクロDMAと、集中ECCとの組合せは、メモリへの
要求を出す必要のある各マイクロデバイスに対してDM
Aを不要とすること、更に、本装置の各ボード上のEC
C回路の使用を不要にすることから特に有利であると思
われる。
同期パイプラインメモリと、マイクロタスクと、マイク
ロDMA機能は組み合わせられて、パスタイミングのア
クティブサイクル内での誤り訂正を行いながら、外部周
辺装置と本装置のメモリ間でFEPを介してマイクロシ
ーケンス処理できるようにしている。この際、メモリか
らデータを要求しているマイクロデバイスは影響を受け
ない。
これらの機能の組合せによって、外部I/O装置はタス
ク要求が出せるようになり、本装置のマイクロタスク処
理機能はブロックモードのデータ転送が可能となる。
本仕様書および特許請求の範囲記載系項は本発明の明示
のために提出するものであって、制限のためにではなく
更に、種々の変形および変更ば本発明の主旨を外れるこ
となく実行できるものであると理解され度い。
【図面の簡単な説明】
第1図は本発明による装置のブロック図である。 第2図は第1図のシーケンサのブロック図である。 第6図はシーケンサのタスク選択回路の概略図である。 第4図はシーケンサのタスク優先度回路の概略図である
。 餓5図はシーケンサのタスク状態獲得回路の概略図であ
る。 第6図はシーケンサのタスク状態メモリ回路の概略図で
ある。 第7図はシーケンサのタスクメモリパリテイ回路の概略
図である。 第8図はシーケンサのタスクメモリ出力レジスタ回路の
概略図である。 第9図はシーケンサのトラップアドレス回路の概略図で
ある。 第10図はシーケンサの制御スタック回路の概略図であ
る。 第11図はシーケンサの制御スタックポインタ回路の概
略図である。 第12図はシーケンサの制御スタックレジスタの概略図
である。 第13図はシーケンサのPCおよびNPCレジスタの概
略図である。 第14図はシーケンサのNPC選択回路の概略図である
。 第15図はシーケンサのスキップおよびPC加算回路の
概略図である。 第16図から第29図はシーケンサの制御メモリの概略
図である。 第30図はシーケンサ制御メモリアドレスドライバの概
略図である。 第31図はシーケンサの制御メモリアドレス選択回路の
概略図である。 第32図はシーケンサの制御メモリパリティ回路の概略
図である。 第33図はシーケンサのマイクロ命令デコード回路の概
略図である。 第34はシーケンサのマイクロ命令フィールドの概略図
である。 第35図はシーケンサのクロックおよび制御回路の概略
図である。 第36図はシーケンサのクロック受信回路の概略図であ
る。 第37図はシーケンサのエラーホールト回路の概略図で
ある。 第38図はシーケンサのデバッグ履歴回路の概略図であ
る。 第39図から第40図はシーケンサの板面コネクタの概
略図である。 第41図は、第1図のデータ径路のブロック図である。 第42図はデータ径路のスタックポインタ回路の概略図
である。 第43図はデータ径路のフレームポインタおよび特別ベ
ース回路の概略図である。 第44図はデータ径路のデータタイプタグ回路の概略図
である。 第45図はデータ径路の不用情報収集回路の概略図であ
る。 第46図はデータ径路のトラップ制御回路の概略図であ
る。 第47図はデータ径路の条件およびディスパッチ回路の
概略図である。 第48図はデータ径路のマイクロ命令デコード回路の概
略図である。 第49図はデータ径路のベースレジスタの概略図である
。 第50図はデータ径路のペースレジスタ選択回路の概略
図である。 第51図から第56図はデータ径路のAメモリの概略図
である。 第54図はLバス回路からのデータ径路Aメモリアドレ
スの概略図である。 第55図はデータ径路のAメモリアドレス回路の概略図
である。 第56図はデータ径路のAメモリアドレス計算回路の概
略図である。 第57図はデータ径路のへメモリライトアドレス回路の
概略図である。 第58図はデータ径路のAメモリパリティ回路の概略図
である。 第59図はデータ径路のAバスオフボードトランシーバ
回路の概略図である。 第60図から第64図はデータ径路のBメモリ回路の概
略図である。 第65図はデータ径路のBメモリアドレス回路の概略図
である。 第66図はデータ径路のBメモリパリティ回路の概略図
である。 第67図から第68図はデータ径路のシフタ回路の概略
図である。 第69図はデータ径路の最終シフト、マスク、およびマ
ージ回路の概略図である。 第70図はデータ径路のシフト/マスク制御回路の概略
図である。 第71図はデータ径路のマスク発生回路の概略図である
。 第72図はデータ径路のALU回路の概略図である。 第76図はデータ径路のALUオーバーフロー、キャリ
、および制御回路の概略図である。 第74図はデータ径路の乗算回路の概略図である。 第75図はデータ径路のXパス選択回路の概略図である
。 第76図はデータ径路のYバス選択回路の概略図である
。 第77図はデータ径路のYバス回路へのクロックの概略
図である。 第78図はデータ径路の出力バス回路の概略図である。 第79図はデータ径路のLバス回路への出力の概略図で
ある。 第80図はデータ径路のクロック分配およびプルアップ
回路の概略図である。 第81図はデータ径路のターミネータおよびバイパス回
路の概略図である。 第82図から第86図はデータ径路の裏面コネクタの概
略図である。 第84図は第1図のメモリ制御のブロック図である。 第85図はメモリ制御の命令取出し装置のデータ径路図
である。 第86図はメモリ制御のマツプ回路のブロック図である
。 第87図から第88図はメモリ制御の命令取出し装置内
の命令整列回路の概略図である。 第89図はメモリ制御の命令取出し装置内の命令キャッ
シュおよびタダ回路の概略図である。 第90図はメモリ制御の命令取出し装置内の命令キャッ
シュ回路の概略図である。 第91図はメモリ制御の命令取出し装置内の命令デコー
ダおよびMD回路の概略図である。 第92図はメモリ制御の命令取出し装置内のディスバッ
チ選択装置の概略図である。 第93図はメモリ制御の命令取出し装置内のEPC回路
の概略図である。 第94図はメモリ制御の命令取出し装置内のアドレス回
路の概略図である。 第95図はメモリ制御の命令取出し装置内の取出しアド
レス回路の概略図である。 第96図から第97図はメモリ制御の命令取出し装置制
御回路の概略図である。 第98図はメモリ制御の命令取出し装置内のキャッシュ
ヒット回路の概略図である。 第99図はメモリ制御の命令取出し装置内の命令レジス
タ回路の概略図である。 第100図はメモリ制御の命令取出し装置内のPC回路
の概略図である。 第101図はメモリ制御の命令取出し装置内のマップ制
御回路の概略図である、 第102図はメモリ制御の命令取出し装置内のメモリ制
御回路の概略図である。 第103図はメモリ制御のメモリデータラッテ回路の概
略図である。 第104図はメモリ制御の命令取出し装置内のメモリデ
ータ制御回路の概略図である。 第105図はメモリ制御のマツプ制御回路の概略図であ
る。 第106図は命令取出し装置のLパスアドレスおよびア
ドバンスPC回路の概略図である。 第107図はメモリ制御のマツプアドレス回路の概略図
である。 第108図はメモリ制御のマツプ出力回路の概略図であ
る。 第109図はメモリ制御のマツプパリティ回路の概略図
である。 第110図はメモリ制御のマツプページハッシュテーブ
ルプロープアドレス回路の概略図である。 第111図はメモリ制御のマツプ出力回路の概略図であ
る。 第112図はメモリ制御のマップハッシュおよびタグ比
較回路の概略図である。 第113図はメモリ制御のマツプ仮想メモリアドレス回
路の概略図である。 第114図はメモリ制御のマツプAパスライトデータ径
路回路の概略図である。 第115図はメモリ制御のマツプAバスデータ径路回路
の概略図である。 第116図はメモリ制御のECCデコード回路の概略図
である。 第117図はメモリ制御のECC訂正XOR回路の概略
図である。 第118図はメモリ制御のLパスデータ入出力回路の概
略図である。 第119図はメモリ制御シンドローム、レベル1、パー
ト1回路の概略図である。 第120図はメモリ制御シンドローム、レベル1、パー
ト2回路の概略図である。 第121図はメモリ制御シンドローム、最終レベルおよ
びECCビット回路の概略図である。 第122図はメモリ制御のスパイインターフェース回路
の概略図である。 第123図はメモリ制御のクロック、コンデンサ、およ
び抵抗回路の概略図である。 第124図から第125図はメモリ制御の裏面接続の概
略図である。 第126図はFEPディジタル遅延ライン回路の概略図
である。 第127図はFEPクロック信号回路の概略図である。 第128図はFEPECLターミネータSIP回路の概
略図である。 第129図はFEPローカルマルチパスドライバ回路の
概略図である。 第130図はFEPダイナミックメモリ制御回路の概略
図である。 第131図はFEPダイナミックメモリ回路の概略図で
ある。 第132図はFEPの低位32KPROM回路の概略図
である。 第133図はFEPの高位32K EPROM回路の概
略図である。 第134図はFEP裏面接続の概略図である。 第135図はFEP裏面接続の概略図である。 第136図はFEPの高速バッファ制御回路の概略図で
ある。 第137図はFEPの高速バッファデータドライバ回路
の概略図である。 第138図はFEPの高速バッファ回路の概略図である
。 第139図はFEPのLバスアドレス回路の概略図であ
る。 第140図はFEPのLバス調停およびリフレッシュ回
路の概略図である。 第141図はFEPのLパスバッファバスデータ回路の
概略図である。 第142図はFEPのLバスバッファ回路の概略図であ
る。 第143図はFEPのLバスバッファ制御回路の概略図
である。 第144図はFEPのLバスクロック受信回路の概略図
である。 第145図はFEPのLバス制御およびECC診断回路
の概略図である。 第146図はFEPのLバスデータ径路の概略図である
。 第147図はFEPのマイクロ秒クロック回路の概略図
である。 第148図はFEPのマイクロデバイスデコード回路の
概略図である。 第149図はFEPの物理ページタグ回路の概略図であ
る。 第150図はFEPの主プロセッサ回路の概略図である
。 第151図はFEPのマルチパス調停回路の概略図であ
る。 第152図はFEPの要求選択回路の概略図である。 第153図はFEPのリセットおよびタイムアウト回路
の概略図である。 第154図はFEPのシリアルボーレイト回路の概略図
である。 第155図はFEPのシリアル通信回路の概略図である
。 第156図はFEPのスパイ、続行、およびID要求回
路の概略図である。 第157図はFEPのサブバス回路の概略図である。 第158図はFEPのタイミング回路の概略図である。 第159図はFEPの8ビットDMA高位アドレス回路
の概略図である。 第160図はFEPの8ビットDMAバスインターフェ
ース回路の概略図である。 第161図はFEPの8ビットDMAコントローラ回路
の概略図である。 第162図はFEPのディスプレーインターフェース回
路の概略図である。 第163図はFEPインターフェース回路の概略図であ
る。 第164図はFEPの周波数計数回路の概略図である。 第165図はFEPのプロセッサ回路の概略図である。 第166図はFEPのクロックおよびより回路の概略図
である。 第167図から第167a図はFEPのその他の制御お
よびパケットカウンタ回路の概略図である。 第168図はFEPのパドルおよびカートリッジインタ
ーフェース回路の概略図である。 第169図はFEPのパドルカードコンソールインター
フェース回路の概略図である。 第170図はFEPのパドルカード外部バスインターフ
ェース回路の概略図である。 第171図はFEPのパドルカードナノFEPインター
フェース回路の概略図である。 第172図はFEPのパドルカードシリアルラインイン
ターフェース回路の概略図である。 第173図はFEPのパドルカードパラレル入出力回路
の概略図である。 第174図はFEPのパドルカード要求選択回路の概略
図である。 第175図はFEPのパドルカードコネクタの概略図で
ある。 第176図はFEPのパドルカード裏面接続の概略図で
ある。 第177図から第177a図は■/Oディスプレーステ
ータス、VsyncタスクおよびパドルカードEOL回
路の概略図である。 第178図はI/Oディスシレーシンク(同期)回路の
概略図である。 第179図はI/OディスプレーFIFO制御回部の概
略図である。 第180図はI/Oディスプレーフィル/ドレンカウン
タ回路の概略図である。 第181図はI/Oディスプレービクセルパイプおよび
SIPS回路の概略図である。 第182図はI/OディスプレーのFIFORAMおよ
びレベルシフト回路の概略図である。 第183図はI/Oディスプレーのデータレジスタの概
略図である。 第184図は■/OディスプレーのTVアドレス処理回
路の概略図である。 第185図はI/OディスプレーのRAM SIP回路
の概略図である。 第186図から第187図はI/Oディスプレーのメモ
リ回路の概略図である。 第188図から第188a図および第188b図はI/
OディスプレーのビデオRAM制御およびECLビデオ
アウトパイプ回路の概略図である。 第189図はI/Oディスプレーのメモリアドレス回路
の概略図である。 第190図から第191図は■/OディスプレーLバス
I/O回路の概略図である。 第192図はI/Oディスプレーアドレス/制御パイプ
ライン回路の概略図である。 第193図から第193a図はI/Oディスプレーキャ
ッシュおよびDM制御回路の概略図である。 第194図から第194a図はI/Oネットワーク送信
エンコーダおよび制御回路の概略図である。 第195図はI/Oネットワークタスクインターフェー
ス回路の概略図である。 第196図はI/Oネットワークステータスレジスタ/
リードバック回路の概略図である。 第197図はI/Oネットワークスバイパスインターフ
ェース回路の概略図である。 第198図はI/Oネットワークシフトレジスタ/ワー
ドタイプ制御回路の概略図である。 第199図はI/Oネットワーク受信制御回路の概略図
である。 第200図はI/OネットワークCRC生成回路の概略
図である。 第201図はI/Oネットワークのクロック回路の概略
図である。 第202図はI/ODMAバッファレジスタ回路の概略
図である。 第203図はI/OLパストランシーバ回路の概略図で
ある。 第204図はI/OLバス端子の概略図である。 第205図はI/OLバスのマツプされたI/O装置の
制御回路の概略図である。 第206図はI/OLバスDMA選択/マイクロデバイ
スデコード回路の概略図である。 第207図はI/O Lバスサイクル制御回路の概略図
である。 第208図はI/Oディスクタスクインターフェース回
路の概略図である。 第209図はI/Oディスク状態装置制御回路の概略図
である。 第210図はI/Oディスク状態装置メモリ回路の概略
図である。 第211図はI/Oディスクシリアルデータ径路回路の
概略図である。 第212図はI/Oディスク回転位置検出回路の概略図
である。 第213図はI/Oディスクバドルボード端子の概略図
である。 第214図はI/Oディスクパドルインターフェース回
路の概略図である。 第215図はI/Oディスク誤りチェック/訂正回路の
概略図である。 第216図はI/Oディスククロック回路の概略図であ
る。 第217図はI/OディスクDMAバッファレジスタ回
路の概略図である。 第218図はI/Oオーディオシフト制御およびタスク
インターフェース回路の概略図である。 第219図はI/Oオーディオシフトレジスタ回路の概
略図である。 第220図から第233図は第1図による512Kメモ
リカードの概略図である。 代理人 浅村 皓 手続補正書(方式) 昭和59年3月1日 特許庁長官殿 1、事件の表示 昭和58年特許願第184601号 2、発明の名称 データ プロセッサ 3、補正をする者 事件との関係 特許出願人 住  所 氏  名 (名称)      シンポリックス インコーホレー
テッド4、代理人 居所 〒100東京都千代田区大手町二丁目2番1号新
大手町ビルヂング331 電話(211)3651(代表) 氏名 (6669)浅村浩 8、補正の内容  別紙のとおり 1 明細書第70頁第17行乃至第18行の「示し、そ
の・・・・・・・・・・・・第40図に」を削除する。 2 同第71頁第2行の「(第16図−第29図)」を
削除する。 6 同第71頁第3行の「(第60図)」を削除する。 4 同第71頁第4行の「(第61図)」を削除する。 5 同第71頁第5行の「(第62図)」を削除する。 6 同第71頁第6行の「(第66図)」を削除する。 7 同第76頁第6行の[優先権回路(第4図)」を「
優先度回路」に補正する。 8 同第73頁第4行の「優先権」を「優先度」に補正
する。 9 同第76頁第9行の「(第5図)」を削除する0 10  同第76頁第10行の「(第6図)」を削除す
る。 11  同第76頁第11行の「(第7図)」を削除す
る。 12  同第76頁第12行の「(第8図)」を削除す
る。 16  同第76頁第13行の「優先権を」を「優先度
を」に補正する。 14  同第76頁第16乃至14行の1優先権回路(
第4図)」を「優先度回路」に補正する。 15  同第74頁第20行乃至第75頁第1行の「(
第51図−第56図)」を削除する。 16  同第77頁第9乃至10行の1第5図−第8図
の回路で」を削除する。 17  同第81頁第11乃至12行の「第9図の回路
で実行される」を削除する。 18  同第82頁第18行の「(第10図)」を削除
する。 19  同第82頁第19行の「(第11図)」を削除
する。 20  同第82頁第20行の「(第12図)」を削除
する。 21  同第86頁第2行の「(第13図)」を削除す
る。 22  同第83頁第6行の「(第14図)」を削除す
る。 23  同第83頁第4行の「(第15図)」を削除す
る。 24  同第87頁第3行乃至第4行の[第65図およ
び第66図に示す」を「本装置の」に補正する。 25  同第96頁第19乃至20行の「(第67図)
」を削除する。 26  同第96頁第20行乃至第97頁第1行の「第
68図に示す」を削除する。 27  同第101頁第8行の「第41図」を「第6図
」に補正する。 28  同第101頁第8行の「第41図」を「第6図
Jに補正する。 29  同第101頁第9行の「第42図−第84図に
詳細なゾロツク図で示す」を1第4図のブロック図で示
すもの等のjに補正する。 60  同第101頁第17行の「第51図−第56図
に示し、関連回路」を「あり、関連回路として」に補正
する。 61  同第101頁第20行乃至第102頁第1行の
1は、第54図から第59図に示す。」を「を有する。 」に補正する。 62  同第102頁第2行乃至第6行の「、第60図
−第64図に・・・・・・・・・・・・示す。」を「あ
る。」に補正する。 66  同第102頁第4行乃至第5行の「(第67図
−第68図)」を削除する。 64  同第102頁第5行乃至第6行の「(第69図
−第71図)」を削除する。 65  同第102頁第6行乃至第7行の「(第72図
−第76図)」を削除する。 66  同第102頁第9行乃至第10行の「乗算器は
・・・・・・第79図に示す。」を「これらの演算論理
装置等には乗算器ならびにx、Yおよび0バス回路が含
まれる。」に補正する。 67  同第102頁第10行乃至第12行の「第80
図−第86図には・・・・・・・・・示す。」を削除す
る。 68  同第106頁第1行乃至第7行の「上記の・・
・・・・に示す。」を「本装置は父上記のスタックポイ
ンタ回路、データタイプタグ処理回路、不用情報収集回
路、トラップ制御、条件ディスパッチ、およびマイクロ
命令デコーV回路、ベースレジスタ、およびセレクト回
路を有する。」に補正する。 69  同第106頁第10行の「第41図」を「第6
図」に補正する。 40  同第116頁第10行の「第149図に示すJ
を削除する。 41  同第128頁第16行の「第46図の」を削除
する。 42  同第162頁第2行の「第84図−第86図」
を「第4図−第6図」に補正する。 46  同第132頁第6行の「第84図」を「第4図
」に補正する。 44  同第162頁第4行の「第85図」を「第5図
」に補正する。 45  同第162頁第5行の「第86図」を「第6図
Jに補正する。 46  同第162頁第6行乃至第7行の「第87図−
第104図に詳しく示され」を削除する。 47  同第162頁第7行乃至第8行の「(第87図
−第88図)」を削除する。 48  同第162頁第8行乃至第9行の「(第89図
−第90図)」を削除する。 49  同第132頁第9行の「(第91図)」を肖l
除する。 50  同第162頁第10行の「(第92図)」を削
除する。 51゛  同第162頁第11行の[(第94図−第9
5図)」を削除する。 52  同第162頁第12行の「(第96図および第
96図−第97図)」を削除する。 56  同第162頁第13行の「(第98図)」を削
除する。 54  同第162頁第14行の「(第99図)」を削
除する。 55  同第162頁第14行乃至第15行の「(第1
00図)」を削除する。 56  同第162頁第15行乃至第16行の「(第1
01図−第104図、および第106図)」を削除する
。 57  同第162頁第19行のr(105図)」を削
除する。 58  同第132頁第20行の「(第107図−第1
08図)」を削除する。 59  同第166頁第1行の「(第109図)」を削
除する。 60  同第163頁第1行乃至第5行の[ページハツ
シュ・・・・・・・・・・・示す。」を「本装置はペー
ゾノ・ツシュテーグルプローアドレス、マツプRAM。 マツプハツシュ処理および比較回路、仮想メモリアドレ
ス回路を有する。」に補正する。 61  同第166頁第6行乃至第14行の[第114
図および・・・・・・示す。」を次の文章に補正する。 「 本装置は共通誤シ訂正回路(ECC)のための種々
の回路、およびメモリ制御ボードのためのスパイス回路
を有する。」 62  同第164頁第2行乃至第6行の「(第220
図−第266図参照)」を削除する。 66  同第140頁第6行乃至第4行の「第118図
および第169図−第146図に示した、」を削除する
。 64  同第166頁第11行の「ns」を「xx n
s lに補正する。 65  同第174頁第5乃至6行の「(第116図−
第117図)」を削除する。 66  同第174頁第16行乃至第15行の1フロン
トエンドプロセツサ・・・・・・・・示す。」を「FE
PiWId、フロントエンrプロセッサ回路を有する。 」に補正する。 67  同第174頁第16行乃至第17行の「(第1
50図)」を削除する。 68  同第174頁第18行乃至第19行の「(第1
26図・・・第156図)」を削除する。 坤シ補4酢≠シ社1 70  同第176頁第4行の「第154図−第155
図二」を削除する。 71  同第177頁第3行乃至第4行の「第168図
・・・・・・残シを示す。」を「外部バスインターフェ
ース回路には更にパドルカードが含まれる。」に補正す
る。 72  同第180頁第10行の「第147図と第14
8図に示す」を削除する。 76  同第180頁第13行の「(第159図−第1
61図)」を削除する。 74  同第191頁第10行の「第162図−第16
7a図に示す」を削除する。 75  同第192頁第19行の「第162図−第16
6図の」を「本装置における」に補正する。 76  同第193頁第1行乃至第2行の「第136図
−第138図の」を削除する。 77  同第196頁第4行の「第156図」を「所定
」に補正する。 78  同第196頁第12行乃至第13行の[(第1
39図−第146図)」を削除する。 79  同第196頁第14行の「(第149図)」を
削除する。 80  同第196頁第15行の「第177図−第21
9図に」を削除する。 81  同第196頁第16行乃至第17行の「(第1
94図−第202図)」を削除する。 82  同第196頁第17行乃至第18行の[(第2
06図−第207図)」を削除する。 86  同第196頁第18行乃至第19行の「(第2
08図−第217図)」を削除する。 84  同第196頁第20行の「(第218図−第2
19図)」を削除する。 85  同第194頁第2行の「(第177図−第19
6図)」を削除する。 86  同第194頁第16行の「第194図−第20
7図」ヲ「本装置において」に補正する。 87  同第194頁第17行乃至第18行の「ための
サポート部分である。」を「ためにサポート部分が設け
られる。」に補正する。 88  同第195頁第2行乃至第6行の「第2081 89  同第195頁第10行の「第218図−第21
9図は、」を削除する。 90  同第195頁第11行の「間の」を「間に」に
補正する。 91  同第195頁第12行の「のものである。」を
「が設けられる。」に補正する。 92  同第208頁第5行の「第220図−第233
図は、」を削除する。 96  同第208頁第6行乃至第7行の「の概略図で
あp、」を「が」に補正する。 94  同第208頁第9行の「(第220図)」を削
除する。 95  同第208頁第10行乃至第11行の「第22
0図−第226図に示すように」を削除する。 96  同第209頁第1行乃至第2行の「第221図
の左下隅に示すように、」を削除する。 97  同第209頁第9行乃至第14行の「第224
図は・・・・・・・・・である。」を「本装置には、メ
モリのデータ出力バッファ、5状態データドライバ、ア
まれる。Jに補正する。 98  同第211頁第1行乃至第216頁第8行を行
を削除する。 101  同第216頁第19行の「第84図」を「第
4図」に補正する。 102  同第217頁第1行の1第85図」を「第5
図Jに補正する。 103  同第217頁第3行の「第86図」を「第6
図」に補正する。 104  同第217頁第5行乃至第260頁第1行を
削除する。 1[]5  図面第6図乃至第40図、第42図乃至第
図、第4図、第5図及び第6図と差し替える。 /ρ6 叩(l庚/q、9勇擁バ灯乃詮菌IU灯、「(
禎/1〕J各−薄白之p21i)ユを 肖1)ンヤζ薊
る。

Claims (82)

    【特許請求の範囲】
  1. (1)データプロセッサにおいて、記号処理言語でプロ
    グラム可能であって、主メモリと、少くとも1組の連続
    する主メモリアドレスにデータを記憶するためのバッフ
    ァメモリであって、前記主メモリよりも高速でアクセス
    可能なバッファメモリと、データの処理およびメモリア
    ドレスの生成を行うための中央処理装置とを有するデー
    タプロセッサであって;メモリコントローラにおいて、
    少くとも1組の連続する主メモリアドレスのデータを前
    記バッファメモリ内に記憶するための装置と、前記バッ
    ファメモリ内にデータが記憶された主メモリ内の前記連
    続アドレスを識別するための装置と、前記識別用装置が
    前記アドレスは前記少くとも1組(のアドレス)内に存
    すると識別した時に前記主メモリに代って前記バッファ
    メモリをアドレスし、前記識別用装置が前記アドレスは
    前記少くとも1組(のアドレス)内に存在すると識別し
    た時に、前記バッファメモリに代って前記主メモリをア
    ドレスするために、メモリアドレスを受信するための装
    置とを備えたことを特徴とするデータプロセッサ。
  2. (2)特許請求の範囲第1項記載のプロセッサにおいて
    、前記中央処理装置は、ベースポインタおよび前記ベー
    スポインタからの選釈されたオフセットに対応するメモ
    リアドレスを作成するための装置と、前記アドレスとオ
    フセット(を演算的に組み合わせた結果)を前記アドレ
    ス用装置に印加する以前に、前記アドレスとオフセット
    を演算的に組み合わせるための装置とを備えているプロ
    セッサ。
  3. (3)特許請求の範囲第2項記載のプロセッサにおいて
    前記中央処理装置は、予定のタイミング周期でデータに
    対して各操作を実行し、1タイミング周期内で前記ベー
    スポインタおよびオフセットを作成するための装置を備
    え、前記ベースポインタとオフセットを演算的に組み合
    わせるための装置は前記ベースポインタ吉オフセットを
    前記1タイミング周期内に組み合わせる装置であるプロ
    セッサ。
  4. (4)特許請求の範囲第3項記載のプロセッサにおいて
    前記演算的に組み合わせを行うための装置は、前記組み
    合せのためにのみ備えられている演算論理装置を含んで
    いる装置であるプロセッサ。
  5. (5)特許請求の範囲第1項、第2項、または第6項記
    載のプロセッサにおいて、前記アドレス用装置は、中央
    処理装置からのアドレスを主メモリ内の物理的位置に変
    換するための装置を備え、前記変換装置は前記識別装置
    を含んでいる装置であるプロセッサ。
  6. (6)特許請求の範囲第1項、第2項、または第6項記
    載のプロセッサにおいて前記中央処理装置は、更に、前
    記ベースポインタからのオフセットを予め選択された範
    囲に限定するための装置と、前記ベースポインタとオフ
    セットの演算的組合せが少くとも1組のメモリアドレス
    内に入ることを確実にするための装置とを備えている装
    置であるプロセッサ。
  7. (7)特許請求の範囲第1項、第2項、または第6項記
    載のプロセッサにおいて、更に、マイクロコード命令の
    シーケンスを実行するための装置と、記号処理言語プロ
    グラムをマクロコード命令のシーケンスにコンパイルす
    るための装置とを備え、前記中央処理装置は更に、ベー
    スポインタからのオフセットを予め選択された範囲に限
    定するための装置を含み、前記コンパイル装置は前記ベ
    ースポインタとオフセットの演算的組合せが少くとも1
    組のメモリアドレス内に入ることを確実にするための装
    置を備えている装置であるプロセッサ。
  8. (8)データプロセッサにおいて、記号処理言語でプロ
    グラム可能であって、各々が識別タイプフィールドを有
    するデータオブジェクトを記憶するための主メモリ上、
    前記主メモリからの少くとも1個のデータオブジェクト
    に対して操作を行うための中央処理装置とを備えている
    プロセッサであって、前記中央処理装置によって操作が
    行われる以前に、前記識別タイプフィールドを各データ
    の残りの部分から分離するための装置と、前記、関連す
    るデータオブジェクトの残りの部分に対する操作に関し
    て前記識別タイプフィールPをチェックし、前記データ
    オブジェクトに対する操作き並行して前記操作に応じて
    新しいタイプフィールVを作成するための装置と、前記
    新タイプフィールVを前記操作結果に組合せるための装
    置とを備えたことを特徴とするプロセッサ。
  9. (9)特許請求の範囲第8項記載のプロセッサにおいて
    、更に、前記作成された予定のタイプフィールVに応じ
    て前記データプロセッサの動作に割込みをかけ、前記フ
    ィールドの変化に対して動作を続行するための装置を備
    えたプロセッサ。
  10. (10)特許請求の範囲第8項記載のプロセッサにおい
    て、前記中央処理装置は予定のタイミング周期で少くと
    も1データオブジエクトに対して各操作を実行するため
    の装置を含み、前記分離装置、チェック装置、および組
    合せ装置は、前記新タイプフィールドを前記操作周期と
    同一のタイミング周期内で、分離、チェック、および組
    合せを行う装置であるプロセッサ。
  11. (11)データプロセッサにおいて、記号処理言語でプ
    ログラム可能であって、各仲間がページ番号およびオフ
    セット番号を含む多ビットの実アドレスを有する主メモ
    リ上、データに対して操作を行い、仮想ページ番号およ
    びオフセット番号を含む関連づけられた仮想アドレスを
    用いて前記主メモリ内にデータを記憶するための中央処
    理装置と、前記仮想アドレスを実アドレスに変換するた
    めの装置とを備えたプロセッサにおいて、前記変換装置
    は、前記仮想ページ番号のビット数を減少させるための
    前記仮想ページ番号に対する第1ハッシュ機能を、ハツ
    シュされた仮想ページ番号に対応するマップアドレスを
    形成するために実行するための装置と、ハツシュされた
    仮想ページ番号に対応するマツプ番地に、前記実ページ
    番号および対応する実ページ番号を記憶するための少く
    とも1個のアドレス可能マップコンバータと、前記仮想
    ページ番号と前記マツプアドレスによってアクセスされ
    た仮想ページ番号を比較するための装置において、望ま
    しくは、比較の結果が、保存された実ページ番号が前記
    マツプコンバータ内に存在することを示すようなもので
    ある装置と、前記第1ハツシュ機能および変換の実行と
    並行して、前記仮想ページ番号に対して第2ハツシュ機
    能を実行するための装置と、望ましい比較(結果)がで
    た時に、前記アクセスされた実ページ番号およびオリジ
    ナルのオフセット番号を前記主メモリに印加し、望まし
    くない比較(結果)がでた時には、前記第2ハツシュ(
    機能で処理)された仮想ページ番号を前記主メモリに印
    加するための装置とを備えたことを特徴とするプロセッ
    サ。
  12. (12)特許請求の範囲第11項記載のプロセッサにお
    いて、前記変換装置は少くとも2個のアドレス可能なマ
    ツプ0コンバータを備え、各コンバータは前記第1ハツ
    シユ(機能で処理)された仮想ページ番号に対応する前
    記マップアドレスを受けるものである装置と、前記仮想
    ページ番号および実ページ番号を前記少くとも2個のマ
    ップコンバータのうちのより以前に使用されたコンバー
    タ内のマツプアドレスに書き込むために全てのコンバー
    タからの望ましくない比較(結果)に応答する装置とを
    備えた変換装置であるプロセッサ。
  13. (13)特許請求の範囲第11項または第12項記載の
    プロセッサにおいて、前記主メモ11は、前記第2ハツ
    シユされた仮想ページ番号およびアドレス用第2テーブ
    ルによってアドレス可能なページハツシュテーブルを内
    に含む装置を有し、前記中央処理装置は少くとも1個の
    マイクロコード命令を、各マイクロコード命令を1タイ
    ミング周期以内で実行するためにマクロコード命令に応
    答するものであって、前記変換装置は更に、障害に応答
    して、第2テーブル内のアドレスをマイクロコード制御
    によって先取りすることを実行するために、前記ページ
    ハツシュテーブル内の物理アドレスを位置決定するため
    の装置を備えている装置であるプロセッサ。
  14. (14)特許請求の範囲第13項記載のプロセッサにお
    いて、更に、第2記憶装置を備えたプロセッサであって
    、前記主メモリは、前記第2記憶装置内に第3のアドレ
    ステーブルおよび第4のアドレステーブルを含み、前記
    変換装置は、障害に応答する装置であって、前記第2記
    憶装置内のアドレスを位置決定するために、主メモリの
    前記第6テーブル内のアドレスを、万一前記第3テーブ
    ル内にない場合は前記第4テーブル内のアドレスをマク
    ロコード命令の先取りを行うことを実行するための、ま
    たは、第2記憶装置にない場合には、誤りを表示するた
    めの装置を有している装置であるプロセッサ。
  15. (15)特許請求の範囲第16項記載のプロセッサにお
    いて、前記変換装置は更に、アドレスが位置決定されて
    いない全てのテーブル内に前記アドレスを入れるための
    装置を備えている装置であるプロセッサ。
  16. (16)データプロセッサにおいて、記号処理言語でプ
    ログラム可能であって、マクロコード命令のシーケンス
    を実行するための中央処理装置を有しているプロセッサ
    であって、前記中央処理装置は、更に、予定の例外デー
    タプロセッサ条件の組を定義し、前記マクロコード命令
    のシーケンスの実行中に、前記条件の発生を検出するた
    めの装置と、前記条件の1個の検出に応答する装置であ
    って、前記検出された条件が除去された時に、中止され
    ていたマクロコード命令のシーケンスを完了するために
    前記データプロセッサをリスタートさせることができる
    ように、前記検出時に前記データプロセッサの選択され
    た状態部分を保持するための装置と前記検出条件に対し
    て予定のマクロコード命令のシーケンスを始動させるた
    めの装置であって、前記検出条件を除去し、前記中止さ
    れたマクロコード命令のシーケンスに対して前記データ
    プロセッサを復旧するための装置とを備えたことを特徴
    とするプロセッサ。
  17. (17)特許請求の範囲第16項記載のプロセッサにお
    いて、前記始動させるための装置は前記検出された条件
    を除去するために前記保持されたデータプロセッサの状
    態を操作するための装置を備えた装置であるプロセッサ
  18. (18)特許請求の範囲第16項記載のプロセッサにお
    いて、前記始動させるための装置は前記データプロセッ
    サの保持されていない状態部分を再生成するための装置
    を含んでいる装置であるプロセッサ。
  19. (19)特許請求の範囲第16項記載のデータプロセッ
    サにおいて、前記中央処理装置は、少くとも1個のマイ
    クロコード命令によって各マクロコード命令を実行する
    ための装置を有し、前記条件の組を定義し検出するため
    の装置は、マイクロコード命令を用いて制御する装置を
    備えている装置であるプロセッサ。
  20. (20)特許請求の範囲第19項記載のデータプロセッ
    サにおいて、前記データプロセッサの状態を保持するた
    めの装置は、マイクロコード命令で制御される装置を含
    んだ装置であるプロセッサ。
  21. (21)特許請求の範囲第20項記載のデータプロセッ
    サにおいて、前記予定のマクロコード命令のシーケンス
    を始動するための装置は、マイクロコード命令によって
    制御される装置を備えている装置であるプロセッサ。
  22. (22)データ処理装置において、記号処理言語でプロ
    グラム可能であって、主メモリと、少くとも1個の周辺
    装置と、データに対し、予定のタイミング周期で、前記
    メモリおよび前記メモリに同期した周辺装置を用いて操
    作を実行するための中央処理装置とを有する装置であっ
    て;前記主メモリはデータをパイプライン入力および出
    力させるために各タイミング周期で新たなメモリアクセ
    スを始動するための装置を有し、前記中央処理装置はマ
    イクロコード命令タスクシーケンスを記憶し、各タイミ
    ング周期にマイクロコード命令を実行するための装置と
    、予定の装置状態に応答して他のタスクシーケンスであ
    るタスクシーケンスに割込みをかけ、前記状態が除去さ
    れた時に前記割込まれたタスクシーケンスを続行するた
    めの装置とを備え、多導線バスは前記メモリと、中央処
    理装置と周辺装置とを並列に相互接続し、単独集中誤り
    訂正回路は前記メモリと中央処理装置と周辺装置とに共
    有され、データ制御用装置は、前記メモリと中央処理装
    置間を前記集中誤り訂正回路を通じての通信のために、
    第1タイミングモードを定義するために前記システムタ
    イミング周期に同期して、パス上に(データを)転送し
    、前記周辺装置と中央処理装置間の通信およびその後に
    、前記集中誤り訂正回路を通じての前記主メモリとの通
    信のために第2タイミングモードを定義するために、前
    記システムタイミングに同期してバス上に(データを)
    転送する装置であることを特徴とするプロセッサ。
  23. (23)特許請求の範囲第22項記載の装置において前
    記中央処理装置は前記少くとも1個の周辺装置からのデ
    ータを主メモリに記憶し、前記少くとも1個の周辺装置
    に対して、前記周辺装置によって予定された位置に、主
    メモリからデータを移動するための装置を備えたもので
    ある装置。
  24. (24)特許請求の範囲第23項記載の装置において、
    前記中央処理装置は、前記装置の状態に依存して、デー
    タを送信する前記周辺装置の状態を変化させるための装
    置を含むものである装置。
  25. (25)データ処理装置であって、記号処理言語でプロ
    グラム可能であって、中央プロセッサと、入出力装置が
    結合可能な共通システムパスによって接続された主メモ
    リを有する装置において、第2汎用(generie 
    )パスと、前記システムパスと汎用パスとの間での通信
    を行わせるために、前記システムパスと汎用パス形式の
    間でデータおよび制御信号を変換するための第1インタ
    ーフエース装置と、システムパスと前記選択された外部
    パスタイブの間で、データおよび制御信号の転送を可能
    にするために、前記汎用パス形式と選択された外部パス
    形式との間でデータおよび制御信号の変換を行うために
    、前記汎用パスに接続された第2インターフエース装置
    とを備えていて、前記第1インターフエース装置は、前
    記選択された外部パスに独立して、データおよび制御信
    号を変換することを特徴とするデータ処理装置。
  26. (26)特許請求の範囲第25項記載の装置において、
    前記第1インターフエース装置は、前記外部パスの制御
    信号およびアドレス形式に独立して、前記外部パス周辺
    (装置)の制御信号およびアドレスを前記システムパス
    形式から前記汎用バス形式に変換するための装置を含む
    ものである装置。
  27. (27)データプロセッサにおいて、記号処理言語でプ
    ログラム可能であって、マクロコード命令のシーケンス
    を実行するための中央処理装置であって、与えられ、た
    マクロコード命令のシーケンスは不正の処理結果を作成
    する装置と、記号処理言語プログラムをマクロコード命
    令のシーケンスにコンパイルするための装置とを備えた
    プロセッサであって、;前記コンパイル装置は前記与え
    られたシーケンスの生成を妨げるための装置であること
    を特徴とするプロセッサ。
  28. (28)データプロセッサにおいて、記号プログラム言
    語でプログラム可能であって、多ビットアドレスでアド
    レス可能なデータオブジェクトを記憶するための主メモ
    リと、アドレスを生成するための中央処理装置と、生成
    したアドレスに対して操作を行うための装置とを有する
    プロセッサにおいて;主メモリを予定の領域に分割する
    ための装置と、データオブジェクトを前記領域に位置づ
    けるための装置と、各アクションコードが1領域に対応
    しているアクションコードのテーブルを作成するための
    装置と、前記テーブルに生成されたアドレスを入れるた
    めの装置であって、前記アドレスに関連づけられたアク
    ションコードを得るために前記アドレスへの操作と並行
    して、生成されたアドレスを前記テーブルに入れるため
    の装置と、ある動作を成すべきであるかを、前記アドレ
    スへの操作と並行して決定するために前記アクションコ
    ードに応答する装置とを備えたことを特徴とする装置。
  29. (29)特許請求の範囲第28項記載のプロセッサにお
    いて、前記中央処理装置は、予定のタイミング周期で各
    操作を実行するための装置を含んでいて、前記アクショ
    ンコードが得られこれに対する応答は、前記アドレスに
    対する操作と同一のタイミング周期内で決定される装置
    であるプロセッサ。
  30. (30)特許請求の範囲第28項または第29項記載の
    プロセッサにおいて、更に、予定のアクションコードに
    応じて前記データプロセッサの動作に割り込みをかけ、
    実行された動作の完了に応じて前記データプロセッサの
    動作を続行させるための装置を備えたプロセッサ。
  31. (31)特許請求の範囲第28項記載のプロセッサにお
    いて、前記中央処理装置は、少くとも1マイクロ命令に
    よって操作を実行するための装置を有していて、前記決
    定用装置はマイクロコード命令で制御される装置を有す
    る装置であるプロセッサ。
  32. (32)特許請求の範囲第28項記載のプロセッサにお
    いて、前記中央処理装置は、不用情報を収集すべき領域
    をメモリ上で決定することによって前記データプロセッ
    サ内で不用情報収集を実現させるために、マクロコード
    およびマイクロコード命令のシーケンスを実行するため
    の装置を含み、前記アクションコーVテーブルを作成す
    るための装置は、前記不用情報収集シーケンスを始動す
    るアクションコードを作成する装置であるプロセッサ。
  33. (33)特許請求の範囲第62項記載のプロセッサにお
    いて、前記不用情報収集を実現するための装置は、生成
    された位置において前記データオブジェクトを検査し、
    前記データオブジェクトが移動されたかどうかを調べる
    ための装置き、移動されていなかった場合に前記データ
    オブジェクトを新領域内の新アドレスに移動するための
    装置と、前記生成された位置において前記データオブジ
    ェクトが移動されたことを示すために前記データオブジ
    ェクトを更新するための装@吉、前記データオブジェク
    トが移動されている時には前記生成アドレスを新アドレ
    スに変換し、前記生成アドレスのデータオブジェクト内
    の操作の継続を実現するための装置とを備えた装置であ
    るプロセッサ。
  34. (34)データプロセッサにおいて、記号処理言語でプ
    ログラム可能であって、ページに分割された主メモリを
    有するプロセッサであって、各メモリページに関連した
    少くとも1個のビットを有する記憶装置と、メモリの領
    域内で与えられたアドレスを位置決定するための装置と
    、与えられたページに対して少くとも1個のビットにコ
    ードを入れるための装置であって、前記ページ内のアド
    レスがメモリ内の選択された組の中にあるかを示すため
    のコードを与えられたページに対して少くとも1個のビ
    ットに、前記アドレスの位置決定と並行して入れるため
    の装置とを備えたことを特徴さするプロセッサ。
  35. (35)特許請求の範囲第34項記載のプロセッサにお
    いて、前記コードを入れるための装置は、各アクション
    コードがメモリの1領域に対応するアクションコードの
    テーブルを作成するための装置と、アドレスを前記テー
    ブル内に位置決定することと並行して前記テーブルに該
    アドレスを印加するための装置と、関連するアクション
    コードに応答して、前記アドレスが前記選択された領域
    の組の1個内にあるかを決定するための装置とを備えた
    装置であるプロセッサ。
  36. (36)特許請求の範囲第35項記載のプロセッサにお
    いて、更に、前記メモリ領域の組に対する不用情報収集
    を実現するための装置を備え、前記不用情報収集を実現
    するための装置は、不用情報収集を実現するために各ペ
    ージを検査するための装置と、少くとも1個のビットを
    センスするための装置であって前記コードが前記少くと
    も1個のビットに入れられない場合に、前記検査装置が
    該ページをスキップできるようにするために、各メモリ
    ページの少くとも1個のビットをセンスするための装置
    とを備えたプロセッサ。
  37. (37)データプロセッサにおいて、記号処理言語でプ
    ログラム可能であって、システムクロックさ、トランザ
    クションを実現するためのパス要求信号を生成するため
    の中央処理装置と、少くとも1個の周辺装置と、前記中
    央処理装置と周辺装置とを接続するためのパスとを有す
    るプロセッサであって;パス制御装置において、前記中
    央処理装置がアレレスデータと共に前記要求信号を生成
    する1クロック期間を含む要求サイクルと、前記周辺装
    置がアクセスされる少くとも次のクロック期間を含むア
    クティブサイクルさ、データが前記周辺装置によって前
    記パス上に置かれる次のクロック期間を含むデータサイ
    クルとを有する前記クロックに同期して、前記パス上に
    全てのトランデクジョンを実現するためのパス制御装置
    を備えたことを特徴とするプロセッサ。
  38. (38)特許請求の範囲第37項記載の装置において、
    前記パス制御装置は、連続クロック期間に前記中央処理
    装置から一連の要求信号を受け、前記バス上の連続トラ
    ンザクションのサイクルをオーバーラップさせるために
    、ブロックパストランザクションモードを定義するため
    の装置を有しているものである装置。
  39. (39)データ処理装置において、記号処理言語でプロ
    グラム可能であって、システムクロックと、主メモリ上
    、少くとも1個の周辺装置と、パス要求信号を生成する
    こみによって前記システムクロックに同期した前記メモ
    リおよび周辺装置で、予定のタイミングサイクルでトラ
    ンザクションを有効にするための中央処理装置とを有す
    る装置において;前記主メモリはデータをパイプライン
    入出力させるために各タイミングサイクルで新しいメモ
    リアクセスを始動するための装置を有し;前記中央処理
    装置は、マイクロコーに命令タスクシーケンスを記憶し
    、各タイミングサイクルでマイクロコード命令を実行す
    るための装置き、予定のシステム条件に応じてタスクシ
    ーケンスに他のタスクシーケンスで割込みをかけ、前記
    条件の除去後に前記割込まれたタスクシーケンスを続行
    するための装置とを備えていて;多導線双方向バスは前
    記メモリ、中央処理装置、および周辺装置を並列に接続
    し;データ制御装置は前記メモリと中央処理装置との間
    で前記システムタイミングサイクルに同期して通信を行
    うものであって、前記中央処理装置がアドレスデータ七
    共に前記要求信号を生成する1クロック期間を含む要求
    サイクルさ、前記周辺装置がアクセスされる少くとも1
    個の次のクロック期間を含むアクティブサイクルと、前
    記周辺装置が前記バス上にデータを置く次のクロック期
    間を含むデータサイクルと、連続クロック期間に前記中
    央処理装置から一連の要求信号を受け、前記バス上で前
    記連続トランデクジョンのサイクルをオーバーラツプし
    、前記周辺装置と中央処理装置間、更にその後、前記主
    メモリ間との通信のためのブロックバストランずクショ
    ンモードとを含むような制御装置であるデータ処理装置
  40. (40)特許請求の範囲第69項記載の装置において、
    更に、前記メモリと中央処理装置と、周辺装置とで共有
    される単独集中誤り訂正回路であって、該回路を介して
    全てのデータ転送が実行される訂正回路を備えた装置。
  41. (41)システムクロックさ同期したバスを有するデー
    タ処理装置と共に使用するためのデータ装置において;
    1システムクロック期間を含む要求サイクル内にアドレ
    スデータを受信するためにトランずクション要求信号に
    応答する装置と、少くとも1個の次のシステムクロック
    期間を含むアクティブサイクル内にアドレスされたデー
    タをアクセスし、1システムクロック周期を超える周期
    が必要な場合に、待ち信号を生成するための装置と、次
    のシステムクロック期間を含むデータサイクル内に前記
    バスにデータをかけるための装置とを備えたデータ装置
  42. (42)特許請求の範囲第41項記載のデータ装置にお
    いて、更に、連続システムクロック期間に要求信号を受
    信し連続トランザクションの為に前記要求、アクティブ
    およびデータのサイクルをオーバーラップするための装
    置を備えたデータ装置。
  43. (43)主メモリと中央処理装置を有するデータ処理装
    置と共に使用するためのデータ装置であって、前記中央
    処理装置は予定のタイミングサイクルで、バスを介して
    前記メモリと前記メモリに同期した前記データセットで
    、データに対しての操作を実行するための装置であって
    、前記主メモリはデータをパイプライン入出力するため
    に各タイミングサイクルで新しいメモリアクセスを始動
    するための装置を有し、前記中央処理装置はマイクロコ
    ード命令タスクシーケンスを保存し、各タイミングサイ
    クルにマイクロ命令を実行するための装置と、予定のシ
    ステム条件に応じてタスクシーケンスに他のタスクシー
    ケンスで割り込みをかけ、前記条件が除去された時に前
    記割込まれたタスクシーケンスを続行するための装置と
    を備え;前記データ装置は、前記データ装置と中央処理
    装置さの間、更に、その後、前記主メモリとの間での通
    信のためタイミングモード内において、前記システムタ
    イミングサイクルに同期して、バス上のデータ転送を有
    効きするための装置を含んでいる装置であるデータ装置
  44. (44)データ処理方法において、少くとも一組の連続
    する主メモリアドレスからのデータを前記主メモリより
    も高速でアクセス可能なバッファに保存し、データの処
    理が実行され、メモリアドレスが生成される方法であっ
    て、前記方法は、主メモリ内の連続アドレスであって、
    前記主メモ11の代わりに前記バッファメモリ内にデー
    タが記憶される連続アドレスを識別することと、前記ア
    ドレスが前記少くとも一組の中に存在すると識別される
    場合に、前記主メモリの代わりに前記バッファメモリを
    アドレスすることさ、前記アドレスが前記少くとも一組
    の中に存在しないと識別される場合に前記バッファメモ
    リの代わりに前記主メモリをアドレスすることを含んだ
    ことを特徴とする方法。
  45. (45)特許請求の範囲第44項記載の方法において更
    に、ペースポインタおよび前記ペースポインタから選釈
    したオフセットに対応したあるメモリアドレスを作成す
    ることと、前記アドレスすることの前に、前記あるアド
    レスおよびオフセットを演算的に組合わせることとを含
    んだ方法。
  46. (46)特許請求の範囲第45項記載の方法において更
    に、データへの各操作を予定のタイミングサイクルで実
    行することと、前記ペースポインタとオフセットを1タ
    イミングサイクル内で生成することとを含み、前記ペー
    スポインタとオフセットの演算的組合せステップが前記
    1タイミングサイクル内に完了するステップを有する方
    法。
  47. (47)特許請求の範囲第46項記載の方法において、
    前記演算的に組合せるステップは、前記ステップのため
    にのみ与えられた演算論理装置を備えることを含んでい
    る方法。
  48. (48)特許請求の範囲第44項、第45項、または第
    46項記載の方法において、前記アドレスするステップ
    は前記アドレスを主メモリ内の物理位置に、前記識別ス
    テップにおいて変換することを含んでいるステップであ
    る方法。
  49. (49)特許請求の範囲第44項、第45項、または第
    46項記載の方法であって、更に、前記ベースポインタ
    からのオフセットを予め選択された範囲内に限定し、前
    記ベースポインタとオフセットの演算的組合せが前記少
    くとも一組のメモリアドレスの中に存在するこさを確実
    にするためのステップである方法。
  50. (50)特許請求の範囲第44項、第45項、または第
    46項記載の方法において、更に、マイクロコード命令
    のシーケンスを実行し、記号処理言語プログラムをマイ
    クロコード命令のシーケンスにコンパイルし、前記ベー
    スポインタからのオフセットを予め選択された範囲に制
    限するステップを含み、前記コンパイルステップは前記
    ベースポインタとオフセットとの演算的組合せが前記少
    くとも1組のメモリアドレス内に存在することを確実に
    するステップである方法。
  51. (51)データ処理の方法において、各データオブジェ
    クトが識別タイプフィールドを有するデータオブジェク
    トを記憶し、記憶装置からの少くとも1個のデータオブ
    ジェクトを操作する方法において、前記タイプフィール
    ドを各データオブジェクトの残り部分から前記データオ
    ブジェクトの操作よりも以前に分離するステップと、前
    記分離されたタイプフィールドを、関連するデータオブ
    ジェクトの残り部分への操作に関してチェックするステ
    ップと、前記データオブジェクトへの操作と並行した操
    作に応じて新しいタイプフィールドを作成するステップ
    と、前記操作の結果と新しいタイプフィールドとを組合
    せるステップとを含むことを特徴とする方法。
  52. (52)特許請求の範囲第51項記載の方法において、
    更に、作成された予定のタイプフィールドに応じて前記
    データオブジェクトへの操作に割込みをかけ、前記割込
    みの変換時に操作を続行することを含んだ方法。
  53. (53)特許請求の範囲第51項記載の方法において、
    更に、少くとも1個のデータオブジェクトへの各操作を
    予定のタイミングサイクルで実行するステップと、前記
    操作と同じタイミングサイクル内で前記新タイプフィー
    ルドを分離し、チェックし、組合せるステップとを含む
    方法。
  54. (54)各記憶位置は、ページ番号とオフセット番号さ
    を備えた多ビット実アドレスを与えられ、データが操作
    され、仮想アドレスとオフセット番号とを備えた関連す
    る仮想アドレスで記憶され、前記仮想アドレスが実アド
    レスに変換される主メモリを含むデータ処理の方法にお
    いて、前記変換段階は、仮想ページ番号への第1ハツシ
    ュ機能を前記仮想ページ番号のビット数を減少させるた
    めに、ハツシュされた仮想ページ番号に対応するマツプ
    アドレスを形成するために実行するステップさ、前記実
    ページ番号と対応する仮想ページ番号さを前記ハツシュ
    された仮想ページ番号に対応する少くとも1個のアドレ
    ス可能マツプコンバータのマップアドレスに記憶するス
    テップと、仮想ページ番号を得るために、マツプアドレ
    スを前記コンバータに印加するステップと、前記仮想ペ
    ージ番号と前記マツプアドレスでアクセスされた仮想ペ
    ージ番号とを比較し、望ましい比較においては前記記憶
    されたページ番号が前記マツプコンバータ内に存在する
    ことを示すものであるステップと、前記第1ハツシュ機
    能および変換の実行と並行して、前記仮想ページ番号に
    対して第2ハツシュ機能を実行するステップと、前記望
    ましい比較が存在する場合に前記アクセスされた実ペー
    ジ番号と元々のオフセット番号とで主メモリをアレレス
    し、前記望ましい比較が存在しない場合に前記第2のハ
    ツシュされた仮想ページ番号で主メモリをアドレスする
    ステップとを備えた変換ステップである方法。
  55. (55)特許請求の範囲第54項記載の方法において、
    前記変換ステップは、更に、各アドレス可能なマップコ
    ンバータが前記第1ハツシユされた仮想ページ番号に応
    じてマップアドレスを受信する少くとも2個のアドレス
    可能なマップコンパータを備えるステップと、前記コン
    バータの全てからの比較結果が望ましいものでない場合
    に前記少くとも2個のマッシコンバータの最初に使用さ
    れたコンバータ内のマツプアドレスに前記仮想ページ番
    号と実ページ番号とを書き込むステップとを備えた変換
    ステップである方法。
  56. (56)特許請求の範囲第54項または第55項記載の
    方法において、更に、主メモリ内のページハツシュトー
    タルを前記第2ハツシユされた仮想ページ番号でアドレ
    スするステップと、少くとも1個のマイクロコード命令
    を実行するステップであって各実行は1タイミングサイ
    クル内のものであるステップとを含む方法において、前
    記変換装置は更に、前記ページハツシュテーブル内の物
    理アドレスの位置づけに障害がある場合には、マイクロ
    コード命令されたルックアップアドレスを第2テーブル
    に作成するための装置を備えた装置である方法。
  57. (57)特許請求の範囲第56項記載の方法において、
    前記変換ステップは、前記第2テーブル内のアドレスの
    位置づけに障害がある場合に、主メモリ内の第3テーブ
    ルに、前記アドレスに関するマクロコード制御されたル
    ックアップを作成し、前記第3テーブル内でない場合に
    は前記第2記憶装置内の第4テーブル内に作成し、更に
    、前記第4テーブル内でない場合にはエラーを示すステ
    ップである方法。
  58. (58)特許請求の範囲第56項記記載方法において、
    前記変換ステップは、更に、前記アドレスが位置づけら
    れていない全てのテーブルに、前記アドレスを入れるス
    テップを含んでいる段階である方法。
  59. (59)マクロコード命令のシーケンスが実行されるデ
    ータ処理の方法において、予定の例外データ処理条件を
    定義するステップと、前記マクロコード命令のシーケン
    スの実行中に前記条件の発生を検出するステップさ、前
    記条件の1個の検出時に、前記検出された条件除去時に
    前記中断されたマクロコード命令シーケンスを完了する
    ために、前記データ処理が再始動できるようにするため
    に、前記データ処理の状態の選択された部分を保持する
    ステップみ、前記データ処理を前記中断されたマクロコ
    ード命令シーケンスに復旧するステップとを備えたこと
    を特徴とする方法。
  60. (60)特許請求の範囲第59項記載の方法において、
    前記始動ステップは、前記検出された条件を除去するた
    めに、前記保持された状態を操作するステップを含んで
    いるステップである方法。
  61. (61)特許請求の範囲第59項記載の方法において、
    前記始動ステップは前記保持されない状態部分を再作成
    するステップを含んでいるステップである方法。
  62. (62)特許請求の範囲第61項記載の方法において、
    更に、各マクロコード命令を少くとも1個のマイクロコ
    ード命令で実行するステップと、前記条件の組の定義と
    前記条件のマイクロコード命令による検出とを制御する
    ステップとを備えた方法。
  63. (63)特許請求の範囲第62項記載の方法において、
    前記状態を保持するステップはマイクロコード命令で制
    御されるステップである方法。
  64. (64)特許請求の範囲第63項記載の方法において、
    前記予定のマクロコード命令シーケンスを始動するステ
    ップはマイクロコード命令によって制御されるステップ
    である方法。
  65. (65)データへの操作を予定のタイミングサイクル内
    に中央プロセッサで実行するデータ処理の方法において
    、各タイミングサイクル内にマイクロコード命令の実行
    でマイクロコード命令タスクシーケンスを実行し、予定
    のシステム条件に応じて、あるタスクシーケンスに別の
    タスクシーケンスで割り込みをかけ、前記条件の除去時
    には前記割込まれたタスクシーケンスを続行するステッ
    プと、前記メモリ、中央プロセッサ、および周辺装置を
    バス上において並列に相互接続するステップと、前記シ
    ステムタイミングサイクルに同期して前記パス上のデー
    タ転送を制御する前記メモリ、中央プロセッサ、および
    周辺装置によって共有される単独集中誤り訂正回路を提
    供するステップであって、前記メモリと中央プロセッサ
    装置との間の前記集中誤り訂正回路を介した通信のため
    の第1タイミングモードと、前記周辺装置と中央プロセ
    ッサ間、およびその後の前記集中誤り訂正回路を介した
    前記主メモリ間の通信のための第2タイミングモードを
    定義するためのステップとを含むことを特徴とする方法
  66. (66)特許請求の範囲第65項記載の方法において、
    更に、前言化周辺装置からのデータを主メモリに記憶し
    、前記周辺装置に従って予め定められた位置に、主メモ
    リから前記周辺装置にデータを移動するステップを備え
    た方法。
  67. (67)特許請求の範囲第66項記載の方法において、
    更に、前記周辺装置であって受信されるデータを出力す
    る周辺装置の状態を、前記方法の状態に依存して変更す
    るステップを含んでいる方法。
  68. (68)データさ制御信号とを共通システムバスによっ
    て中央プロセッサと主メモリの間で通信するデータ処理
    の方法において、第2汎用データバスのステップと、デ
    ータおよび制御信号をシステムバス形式と汎用バス形式
    の間で変換するステップさ、データおよび制御信号を前
    記システムバスと汎用バスの間で伝送するステップと、
    データおよび制御信号を汎用バス形式と選択された外部
    バス形式の間で変換するステップと、データおよび制御
    信号を前記システム汎用バスと、前記選択された外部バ
    スに接続された周辺装置との間で伝送するステップであ
    って、前記変換用データおよび制御信号を接続する第1
    ステツプは、前記選択された外部バスに無関係に実行さ
    れるステップである方法。
  69. (69)データ処理の方法において、マクロコード命令
    のシーケンスを実行し、あるマクロコード命令のシーケ
    ンスが不正処理結果を作成し、記号処理言語プログラム
    がマクロコード命令シーケンスにコンパイルされるデー
    タ処理の方法であって、前記コンパイルのステップは前
    記あるシーケンスの作成を妨げるステップを含んでいる
    こさを特徴さする方法。
  70. (70)データ処理の方法において、データオブジェク
    トは主メモリに記憶され、多ピッドアドレスでアドレス
    可能であり、アドレスは前記中央プロセッサによって作
    成され操作されるデータ処理方法であって、主メモリを
    予定の領域に分割するステップと、データオブジェクト
    を前記領域に位置づけるステップと、各アクションコー
    ドが1領域に対応するアクションコードのテーブルを作
    成するステップと、作成したアドレスを前記テーブルに
    前記アドレスに関連するアクションコードを得るために
    、前記アドレスへの操作と並行して、印加するステップ
    さ、得られた各アクションコードに対して動作を行うべ
    きであ名かを、前記アドレスへの操作と並行して決定す
    るステップとを備えたことを特徴とする方法。
  71. (71)特許請求の範囲第70項記載の方法において、
    更に、予定のタイミングサイクル内に各操作を実行する
    ステップであって、前記アクションコードを得て、該ア
    クションコードへの応答は、前記アドレスに対する操作
    さ同一のタイミングサイクル内に決定されるステップを
    備えた方法。
  72. (72)特許請求の範囲第70項または第71項記載の
    方法において、更に、予定のアクションコードに応じて
    中央プロセッサの動作に割込みをかけるステップと、前
    記実行された動作の完了に応じて前記中央プロセッサの
    動作を続行するステップとを含んだ方法。
  73. (73)特許請求の範囲第70項記載の方法において、
    更に、少くとも1個のマイクロコード命令で操作を実行
    するステップであって前記決定ステップはマイクロコー
    ド命令で制御されるステップを備えた方法。
  74. (74)特許請求の範囲第70項記載の方法において、
    更に、不用情報収集すべきメモリ内の領域を決定するこ
    とによって、中央プロセッサ内での不用情報収集を実現
    するために、1個のマクロコードシーケンスおよび複数
    のマイクロコード命令シーケンスを実行するステップで
    あって、前記アクションコードテーブルは前記不用情報
    収集シーケンスを始動する1個のアクションコードを作
    成するテープルであるステップを含む方法。
  75. (75)特許請求の範囲第74項記載の方法において、
    更に、作成されたアドレスにおいて、データオブジェク
    トが、新しいアドレスに移動されたかを決定するために
    前記データオブジェクトを検査するステップと、 移動されていた場合に、前記作成されたアドレスを新ア
    ドレスに変更し、前記新アドレスで前記データオブジェ
    クトに対する操作を続けるステップと、 移動されていなかった場合に、データオブジェクトを新
    しいメモリ領域内の新しいアドレスに移動し、前記デー
    タオブジェクトが移動されたこさを示すために前記デー
    タオブジェクトを前記作成されたアドレスで更新し、前
    記作成されたアドレスを前記新アドレスに変更し、前記
    データオブジェクトに対する操作を前記新アドレスで続
    けるステップとを含む方法。
  76. (76)主メモリがページに分割されるデータ処理の方
    法において、各メモリページに関連する少くとも1個の
    ビットを記憶するステップと、メモリ領域内のあるアド
    レスの位置づけを行うステップと、前記アドレスの位置
    づけと並行して、あるページに対して、コードを少くと
    も1ビットに入れるステップであって、前記ページ内の
    アドレスがメモリ領域の選択された組内にあるかを示す
    ためのステップとを備えたこさを特徴とする方法。
  77. (77)特許請求の範囲第76項記載の方法において、
    前記コードを入れるステップは、各アクションコードが
    1メモリ領域に対応するアクションコードのテーブルを
    作成するステップと、前記テーブルの位置づけと同時に
    、前記テーブルにアドレスを与えるステップと、前記ア
    ドレスが前記選択された領域の組内にあるかを関連する
    アクションコードに応じて決定するステップと含んだス
    テップである方法。
  78. (78)特許請求の範囲第77項記載の方法において、
    更に、各ページに対して少くさも1ビットをセンスし、
    前記コーダが入っていないに一ジをスキップすることに
    よって前記メモリ領域の組に対して不用情報を収集する
    ステップを含む方法。
  79. (79)バス上の周辺装置に関してトランザクションを
    有効とするために、パス要求信号を中央プロセッサが作
    成するデータ処理の方法において、中央処理によってア
    ドレスデータみ共に前記要求信号が作成される1クロッ
    ク期間を含む要求サイクル内と、前記周辺装置がアクセ
    スされる少くとも次のクロック期間を含むアクティブサ
    イクル内と、前記ペリフェラルがデータをパス上に置く
    次のクロック期間を含むデータサイクル内とにおいて、
    前記中央処理と同期して前記パス上に全てのトランデク
    ジョンを有効とするステップを備えたことを特徴さする
    方法。
  80. (80)特許請求の範囲第79項記載の方法において、
    更に、前記中央プロセッサから一連の要求信号を連続す
    るクロック期間に与えることによって、および、前記パ
    ス上の連続するトランデクジョンの。 サイクルをオーバラップさせるためにブロックパストラ
    ンデクジョンを実行するステップを含んでいる方法。
  81. (81)システムクロックと同期したパスを有するデー
    タ処理装置とインターフェースする方法において、1シ
    ステムクロック期間の要求サイクル内にアドレスデータ
    を受信することによってトランザクション要求信号に応
    答するステップと、少くとも1システムクロック期間を
    含むアクティブサイクル内のアドレスされたデータをア
    クセスし、1個を超えるシステムクロック期間が必要な
    場合に待ち信号を作成するステップと、次のシステムク
    ロック期間を含むデータサイクル内にデータを前記パス
    に与えるステップとを備えたステップを含む方法。
  82. (82)特許請求の範囲第81項記載の方法において、
    更に、連続するシステムクロック期間に要求信号を受信
    し、連続トランデクジョンのための前記要求サイクル、
    アクティブサイクル、およびデータサイクルをオーバー
    ラップさせるステップを含む方法。
JP58184601A 1982-12-17 1983-10-04 デ−タプロセツサ Pending JPS59188879A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US45060082A 1982-12-17 1982-12-17
US450600 1982-12-17

Publications (1)

Publication Number Publication Date
JPS59188879A true JPS59188879A (ja) 1984-10-26

Family

ID=23788757

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58184601A Pending JPS59188879A (ja) 1982-12-17 1983-10-04 デ−タプロセツサ

Country Status (5)

Country Link
EP (1) EP0113460A3 (ja)
JP (1) JPS59188879A (ja)
AU (1) AU570657B2 (ja)
CA (1) CA1214283A (ja)
IL (1) IL70279A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02211535A (ja) * 1988-10-19 1990-08-22 Apollo Computer Inc コンピュータプロセッサ実行装置

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0167333A3 (en) * 1984-07-05 1988-11-30 Texas Instruments Incorporated Data processing apparatus with data type classifier
US4896258A (en) * 1985-07-04 1990-01-23 Hitachi, Ltd. Data processor provided with instructions which refer to both tagged and tagless data
US6101580A (en) * 1997-04-23 2000-08-08 Sun Microsystems, Inc. Apparatus and method for assisting exact garbage collection by using a stack cache of tag bits
US6098089A (en) * 1997-04-23 2000-08-01 Sun Microsystems, Inc. Generation isolation system and method for garbage collection
US5953736A (en) * 1997-04-23 1999-09-14 Sun Microsystems, Inc. Write barrier system and method including pointer-specific instruction variant replacement mechanism
US6105040A (en) * 1997-06-30 2000-08-15 Sun Microsystems, Inc. Method and apparatus for managing stored objects
AU2002350129A1 (en) 2001-11-02 2003-07-09 Gene Network Sciences, Inc. Language for networks

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3611315A (en) * 1968-10-09 1971-10-05 Hitachi Ltd Memory control system for controlling a buffer memory
US3670307A (en) * 1969-12-23 1972-06-13 Ibm Interstorage transfer mechanism
US3670309A (en) * 1969-12-23 1972-06-13 Ibm Storage control system
US3701107A (en) * 1970-10-01 1972-10-24 Rca Corp Computer with probability means to transfer pages from large memory to fast memory
CA1187198A (en) * 1981-06-15 1985-05-14 Takashi Chiba System for controlling access to channel buffers

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02211535A (ja) * 1988-10-19 1990-08-22 Apollo Computer Inc コンピュータプロセッサ実行装置

Also Published As

Publication number Publication date
AU570657B2 (en) 1988-03-24
CA1214283A (en) 1986-11-18
IL70279A0 (en) 1984-02-29
AU2217683A (en) 1984-06-21
IL70279A (en) 1987-07-31
EP0113460A2 (en) 1984-07-18
EP0113460A3 (en) 1988-04-06

Similar Documents

Publication Publication Date Title
US4922414A (en) Symbolic language data processing system
US4887235A (en) Symbolic language data processing system
AU628163B2 (en) Method and apparatus for detecting and correcting errors in a pipelined computer system
CA1325283C (en) Method and apparatus for resolving a variable number of potential memory access conflicts in a pipelined computer system
US4701844A (en) Dual cache for independent prefetch and execution units
US5341482A (en) Method for synchronization of arithmetic exceptions in central processing units having pipelined execution units simultaneously executing instructions
US5640528A (en) Method and apparatus for translating addresses using mask and replacement value registers
US5278961A (en) Physical address to logical address translator for memory management units
CA1325288C (en) Method and apparatus for controlling the conversion of virtual to physical memory addresses in a digital computer system
JPH036742A (ja) フオールト・トレラント・データ処理システム
JP3176129B2 (ja) マイクロプロセッサのオンチップキャッシュのモニタ構造及びモニタ方法
US5805470A (en) Verification of instruction and data fetch resources in a functional model of a speculative out-of order computer system
JPS5911943B2 (ja) デ−タ処理装置の為のトラツプ機構
CA1264493A1 (en) Digital computer with parallel processors
JPH0628036B2 (ja) シミュレーシヨン方法
JPH11338734A (ja) コンピュ―タシステムおよびこのコンピュ―タシステムを動作させる方法
EP0488819A2 (en) Conditional branch instructions execution apparatus
KR100210205B1 (ko) 스톨캐쉬를 제공하기 위한 장치 및 방법
JPS59188879A (ja) デ−タプロセツサ
JP2000207247A (ja) コンピュ―タシステムおよびこのコンピュ―タシステムを動作させる方法
WO1995008800A1 (en) Apparatus and method for emulation routine control transfer
US5794012A (en) Verification of strongly ordered memory accesses in a functional model of an out-of-order computer system
JP2638581B2 (ja) 命令及びオペランドをプロセッサに提供する取り出し機構
JP2000020488A (ja) コンピュ―タシステムおよびこのコンピュ―タシステムを動作させる方法
EP0374598B1 (en) Control store addressing from multiple sources