JPS5960646A - フア−ムウエア制御方式 - Google Patents

フア−ムウエア制御方式

Info

Publication number
JPS5960646A
JPS5960646A JP17157482A JP17157482A JPS5960646A JP S5960646 A JPS5960646 A JP S5960646A JP 17157482 A JP17157482 A JP 17157482A JP 17157482 A JP17157482 A JP 17157482A JP S5960646 A JPS5960646 A JP S5960646A
Authority
JP
Japan
Prior art keywords
firmware
processing
instruction
specific
dedicated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP17157482A
Other languages
English (en)
Other versions
JPS6156535B2 (ja
Inventor
Hideyuki Saso
秀幸 佐相
Mitsuo Sakurai
桜井 三男
Nobuyoshi Sato
信義 佐藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP17157482A priority Critical patent/JPS5960646A/ja
Publication of JPS5960646A publication Critical patent/JPS5960646A/ja
Publication of JPS6156535B2 publication Critical patent/JPS6156535B2/ja
Granted 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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

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

Description

【発明の詳細な説明】 (1)  発明の技術分野 本発明はファームウェア制御方式、特にマイクロプログ
ラム制御方式を採用するデータ処理システムにおいて、
特定の処理を呼び出すプログラムの実行前に、単に制御
記憶初期設定用の専用命令を発行するだけで、特定の処
理がファームウェア化されているかどうかをチェックし
、ファームウェア化されていればマイクロプログラムの
処理フローを変更できるようにしたファームウェア制御
方式に関するものである。
(2)  技術の背景と問題点 一般に、電子計算機によるデータ処理システムにおいて
は、同一の処理を、参番自奉奉麹−囃鼻マイクロプログ
ラム/゛: によるファームウェアのみで実行した場合と、ソフトウ
ェアで実行した場合とで、その性能の差が、1桁程度あ
ることが知られている。このことがら、ソフトウェアの
一部をマイクロプログラム化スる技術が実用化され、広
く利用されるようになってきている。
ソフトウェアの一部のマイクロプログラム化を実現する
手段として、新たな命令コードを設けて、その命令コー
ドの命令によって、従来のソフトウェアの特定の処理を
代行するファームウェアに制御を移行する方式が用いら
れている。しかし、この方式には、既存のプログラムと
上記性たな命令コードを含むプログラムとは、オブジェ
クトコードが異なるため、互換性がなくなるという欠点
がある。
また、ソフトウェアの処理ルーチンの直前に特殊命令を
付加し、この命令によって実行の都度、ソフトウェアの
後続の処理ルーチンで処理するか、ファームウェアで処
理するかを判別する方式が知られている。この方式によ
れば、プログラムの互換性が保たれるが、実行のたびに
チェックが必要であり、処理効率上無駄が生じるという
難点がある。さらに、上記特殊命令を予め組み込んだプ
ログラムでなければ、ファームウェアを利用できないと
いう欠点がある。
他の手段として、例えば特定のまとまった処理を呼び出
すS V C(Su、pervLzor Ca1l )
命令、C’ALL命令、B A L R(BrarLc
h ArLcM LjrbAl−Letirsteγ)
命令等の実行時に、上記特定処理のファームウェア化に
応じて、直接その特定処理を実行するマイクロプログラ
ムに制御を移行する方式が用いられている。しかし、こ
の方式には、例、tJfオペレーティング・システムと
マイクロプログラムとのレベルが同一である必要があり
、ソフトウェアとしてのオペレーティング−システムの
世代と、ファームウェアとしてのマイクロプログラムの
世代とが、常に一致していなければならないという欠点
がある。すなわち、ファームウェアは固定化されている
ので、そこで動作可能なソフトウェアが限定されてしま
うという欠点がある。
(8)  発明の目的と構成 本発明は上記問題点の解決を図り、例えばシステムの立
ち上げ時に、専用命令を実行することにより、オペレー
ティング・システムもしくは処理プログラムの種別/世
代に対応して、マイクロプログラムの存在している制御
記憶領域の内容が書き替わるようにし、ソフトウェアと
ファームウェアとのレベルを一致させることができるよ
うにすることを目的としている。そのため、本発明のフ
ァームウェア制御力式は、データ処理装置の実行すべき
いくつかのまとまった処理を、ファームウェア化し、制
御記憶上のマイクロプログラムによって実行するように
されたデータ処理システムにおいて、特定の処理を呼び
出す命令によって起動され該特定の処理をマイクロプロ
グラムによって実行する特定処理用ファームウェアと、
専用命令によって起動され当該データ処理装置で動作す
るオペレーティング・システムもしくは処理プログラム
の種別/世代に対応して、上記特定処理用ファームウェ
アを制御記憶上に用意する専用命令処理用ファームウェ
アと、上記特定の処理を呼び出すプログラムの実行前に
上記専用命令を発行し上記専用命令処理用ファ ムラエ
アを動作させる制御記憶初期設定部とを備えたことを特
徴としている。以下図面を参照しつつ実施例に従って説
明する。
(荀 発明の実施例 第1図は本発明の一実施例構成、第2図は本発明の一実
施例制御説明図を示している。
図中、1はオペレーティング・システム(OS)、2は
制御記憶初期設定部、3は制御記憶の初期設定を指示す
る専用命令、4は初期設定情報テーブル、5は専用命令
3を処理する専用命令処理用ファームウェア、6は処理
プログラム、7は特定の処理を呼び出す命令、8は特定
処理用の制御記憶、9は特定処理用のマイクロ命令群を
弄わす。
オペレーティング・システムlは、処理プログラム6等
の実行を制御するソフトウェアであって、データ処理シ
ステムの−・−ドウエア資源を管理し、ハードウェア資
源の利用のための各種機能をサポートするものである。
制御記憶初期設定部2は、例エバオペレーティング・シ
ステム1のIPL(InLtLal Program 
LoacLLng )処理の中に組み込まれ、システム
の立ち上がり時に、専用命令3によって、専用命令処理
用ファームウェア5を動作させるものである。
専用命令3は、オペレーティング・システムlノ種別/
世代と、オペレーティング・システム1のサポートする
特定の処理のファームウェア化に応じて、それを処理す
るファームウェアの内容とを一致させる処理を指示する
命令である。専用命令3は、新たに設けられた命令コー
ドSとオペランド・フィールドとからなり、命令コード
Sをデコードすることによって専用命令処理用ファーム
ウェア5に制御が移行するようになっている0オペラン
ド・フィールドは、例えば当該オペレーティング・シス
テムlの種別/世代についての情報などの後述する特定
処理用制御記憶8を更新するための千ざ報か格納された
初期設定情報テーブル4をポイントする。なお、この初
期設定情報テーブル4は、例えば主記憶上の固定番地に
予め設けられるようにしてもよい。
専用命令処理用ファームウェア5は、専用命令3によっ
て起動され、特定処理用制御記憶8に、専用命令3を発
行したオペレーティング・システムlの種別/世代に対
応したマイクロ命令群を用意するものである。もちろん
、予め特定処理用制御記憶8に用意されているマイクロ
命令群の一部を更新することによって、オペレーティン
グ・システムlとの対応づけを行うようにしてもよい。
対応がとれない場合には、異常終了させて、システムの
誤動作が後に生じることがないようにする。
なお、県用命令3から専用命令処理用ファームウェア5
への制御移行手段や、専用命令処理用ファームウェアに
よる実行手段等は、従来周知である一般的なファームウ
ェア技術を用いれば実現できるので、詳細が説明を省略
する。
処理プログラム6は、利用者のデータ処理要求を処理す
る命令群からなるものであり、その命令群には、例えば
オペレーティング・システムlの提供する機能を実現す
る特定の処理を呼び出す命令7が含まれる。この特定処
理用命令7の命令コードTが解読されると、特定処理用
制御記憶8に格納されたマイクロ命令群に制御が移行し
、予め専用命令処理用ファームウェア5によって用意さ
れた特定処理用マイクロ命令群9の1つが実行されるよ
うになっている。
次に第1図図示実施例の動作を説明する。オペレーティ
ング・システム1は、例えばシステムの立ち上がり時に
、IPL処理の一貫として、制御記憶初期設定部2を呼
び出す0制御記憶初期設定部2は、オペランド・フィー
ルドで初期設定情報テーブル4を指定した専用命令3を
発行する0専用命令3の命令コードSの解読により、専
用命令処理用ファームウェア5に制御が渡される。専用
命令処理用ファームウェア5は、まず専用命令3のオペ
ランド・フィールドにフェッチしく処理、■)、初期設
定情報テーブル4のアドレスを得て、初期設定情報テー
ブル4にアクセスする(処理■)。
そして、そこから読み出した初期設定情報に基づいて、
特定処理用マイクロ命令群9の中の1つを選択する(処
理■)0選択したマイクロ命令群を特定処理用制御記憶
8の所定の領域に書き込んで(処理■)、専用命令3の
処理を終了する。後に、処理プログラム6が特定の処理
を呼び出す命令7を発行すると、特定処理用制御記憶8
に用意された上記マイクロ命令群に制御が移行し、ファ
ームウェアによって特定の処理が実行されることになる
第2図はオペレーティング・システムが提供する特定の
処理が、いわゆるSVC命令で呼び出される場合の例を
示しており、特に第2図(局はSVC命令による特定の
処理がすべてソフトウェアで処理される場合の例、第2
図(B)は特定の処理の1つがファームウェアによって
処理される場合の例を示している。
第2図中、符号1.3.5.6.8は第1図に対応し、
7−1および7−2はSVC命令による特定の処理を呼
び出す命令、1o−iないし10−3は特定処理用ファ
ームウェア、11はSvC命令実行ハードウェア、12
は現プログラム状態語(psw)、13は旧psw、1
4は新psw、15はSMC割込み処理部、16および
17はSVCルーチンを表わす。
第2図(A)図示の場合には、オペレーティング・シス
テムlの制御のもとに動作する処理プログラム6が呼び
出す特定の処理を、オペレーティング・システム1がソ
フトウェアによってサポートしている。例えば、これら
の特定の処理を呼び出す命令として、S V C(5t
bpervLsor Ca1l  l  命令7−1.
7−2があり、特定の処理の内容は命令オペランドのS
VC番号ル、m等によって示される。このSVC命令7
−1,7−2の処理は、オペレーティング・システムl
がSVCルーチンJ6および17によってサポートして
いるので、専用命令3が発行されても、専用命令処理用
ファームウェア5は何もしないで処理を終了する。
処理プログラム6が、例えばSVC命令7−1を発行す
ると、図示A2の如(8VC命令実行〕・−ドウエアI
Iが呼び出される。SVC命令実行ハードウェアIIは
、SMC割込みを生じさせる前に特定処理用制御記憶8
に予め格納されているSVC査号に対応した特定処理用
ファームウェアto−1に制御を渡す(図示A3)。特
定処理用ファームウェア]0−1には、いわゆるノー・
オペレーションのマイクロ命令(NOP)が格納dれて
おり、何もしガいで8VC命令実行・・−ドウエア11
に制御を示す(図示A4)。そこで、svc命令命令実
行−ドウエア11は、現P8W12の内容を固定番地に
ある旧PSWI 3の領域に退避し、新PSWI 4の
内容をロードして、8VC割込みを生じさせる。新PS
W14の内容は、オペレーティング・システムlのSM
C割込み処理部15の先頭アドレスを示しており、SM
C割込みによってSMC割込み処理部15が起動される
ことになる(図示A8)。SMC割込み処理部15は、
割込みコードとして通知されるSvC番号ルをもとにS
VCルーチン16を呼び出し、SVCルーチン16は要
求された特定の処理を実行する。
その後、旧PSW13の内容を現PSW12に復帰させ
て、処理プログラム6に制御を戻す。こうして、SVC
命令7−1の処理が実行されることとなる。SvC命令
7−2についても、第2図(A)図示の場合、同様であ
り、SVCルーチン17がその特定処理を実行すること
となる0 例えば、第2図(13)図示の如く、オペレーティング
・システムlがバージョン−アップされて、第2図(A
”1図示のSVCルーチン17の特定の処理がファーム
ウェア化されたとする。次のように処理されることとな
る。第2図(B)図示の場合にも、オペレーティング・
システム1は゛専用命令31c発行するが、その専用歯
fi3で指定されるオペレーティング−システム1の世
代情報によって、専用命令処理用ファームウェア5はS
VC番号番号時理するマイクロ命令群からなる特定処理
用ファームウェア10−3を特定処理用制御記憶8に用
意する(図示B1、B2)。SVCルーチン16につい
ては、第2図(A)の場合と同様である。従って、処理
プログラム6がSvC命令7−1を発行すると、第2図
(A)の場合と同様に処理される。
処理プログラム6がSVC命令7−2を発行すると、ま
ずSVC命令命令実行−ドウエア11が呼び出される(
図示B3)。SVC命令実行・・−ドウエア11は、図
示B4の如く、特定処理用ファームウェア10−3に制
御を移行するが、特定7処理用ファームウェア10−3
としてSVC番号番号時定の処理を実行するマイクロ命
令群が用意されているので、オペレーティング・システ
ム1に制御を渡すことなく、処理プログラム6が要求す
る処理を実行することとなる。実行処理後に処理プログ
ラム6に制御が戻される(図示B5)。このように、例
えばオペレーティング・システムlの一部がファー上ウ
ェア化された場合に、専用命令3によって予めチェック
され、自動的に新しいオペレーティング・システムlに
対応したファームウェアが用意されることとなる0 上記実施例においては、8VC命令の場合につ−いて説
明したが、ファームウェア化の対象となる特定の処理を
要求する命令であれば、SVC命令に限らず、同様に処
理が可能である。着た、オペレーティング・システムの
バージョンーアップヲ例に説明したが、例えば、古いオ
ペレーティング・システムのもとでのみ動作する処理プ
ログラムと、新しいオペレーティング・システムでのみ
動作する処理、プログラムとが、システムに混在し、何
んらかの互換性への対処が必要な場合に、各処理プログ
ラムを動作させる前に、専用命令によって、各処理プロ
グラムに適したファームウェアを用意することも可能で
ある。
なお、いわゆるサービス・プロセッサ(svp)を有す
るシステムにおいては、上記専用命令の処理全ブービス
・プロセッサが行ってもよい0また、特定処理用のマイ
クロ命令群、または、特定処理用制御記憶の更新情報は
、制御記憶の一部に予めすべて保持しておくようにして
もよいし、磁気ディスク装置等の外部記憶装置に保持し
ておくようにしてもよい。
(6)  発明の詳細 な説明した如く、本発明によれは、柔軟性、拡張性のあ
るファームウェア制御が可能になる0従って、ソフトウ
ェアとファームウェアとのレベルを一致させることが容
易となり、また各種プログラムの互換もファームウェア
によって解決することができるようになる。
【図面の簡単な説明】
第1図は本発明の一実施例構成、第2図は本発明の一実
施例制御説明図を示す。 図中、lはオペレーティング・システム、2は制御記憶
初期設定部、3は専用命令、5は専用命令処理用ファー
ムウェア、8は特定処理用制御記憶を表わす。 特許出願人 富士通株式会社 代理人弁理士  森 1)  寛 (外1名)1   
  す1121 才2出

Claims (1)

    【特許請求の範囲】
  1. データ処理装置の実行すべきいくつかのまとまった処理
    を、ファームウェア化し、制御記憶上の々イクロプログ
    ラムによって実行するようにされたデータ処理システム
    において、特定の処理を呼び出す命令によって起動され
    該特定の処理をマイクロプログラムによって実行する特
    定処理用ファームウェアと、専用命令によって起動され
    当該データ処理装置で動作するオペレーティング・シス
    テムもしくは処理プログラムの種別/世代に対応して、
    上記特定処理用ファームウェアを制御記憶上に用意する
    専用命令処理用ファームウェアと、上記特定の処理を呼
    び出すプログラムの実行前に上記専用命令を発行し上記
    専用命令処理用ファームウェアを動作させる制御記憶初
    期設定部とを備えたことを特徴とするファームウェア制
    御方式。
JP17157482A 1982-09-30 1982-09-30 フア−ムウエア制御方式 Granted JPS5960646A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17157482A JPS5960646A (ja) 1982-09-30 1982-09-30 フア−ムウエア制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17157482A JPS5960646A (ja) 1982-09-30 1982-09-30 フア−ムウエア制御方式

Publications (2)

Publication Number Publication Date
JPS5960646A true JPS5960646A (ja) 1984-04-06
JPS6156535B2 JPS6156535B2 (ja) 1986-12-03

Family

ID=15925667

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17157482A Granted JPS5960646A (ja) 1982-09-30 1982-09-30 フア−ムウエア制御方式

Country Status (1)

Country Link
JP (1) JPS5960646A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160496A (ja) * 1993-12-09 1995-06-23 Nec Corp 制御記憶切替システム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5096153A (ja) * 1973-12-21 1975-07-31
JPS5363827A (en) * 1976-11-19 1978-06-07 Hitachi Ltd Data processing unit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5096153A (ja) * 1973-12-21 1975-07-31
JPS5363827A (en) * 1976-11-19 1978-06-07 Hitachi Ltd Data processing unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160496A (ja) * 1993-12-09 1995-06-23 Nec Corp 制御記憶切替システム

Also Published As

Publication number Publication date
JPS6156535B2 (ja) 1986-12-03

Similar Documents

Publication Publication Date Title
EP3491519B1 (en) Optimized uefi reboot process
EP0192924B1 (en) Device driver and adapter binding technique
US5291585A (en) Computer system having system feature extension software containing a self-describing feature table for accessing I/O devices according to machine-independent format
JP3037826B2 (ja) モード切り替え方法及び装置
USRE40092E1 (en) Method for quickly booting a computer system
EP0100140B1 (en) Data processing system and method of starting up system
CA2044522C (en) Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US6081890A (en) Method of communication between firmware written for different instruction set architectures
US5870520A (en) Flash disaster recovery ROM and utility to reprogram multiple ROMS
US6490723B1 (en) Method and system for installing files in a computing system
US7032108B2 (en) System and method for virtualizing basic input/output system (BIOS) including BIOS run time services
US20060026339A1 (en) Providing block data access for an operating system using solid-state memory
WO2003044665A1 (en) Method and system for concurrent handler execution in an smi and pmi-based dispatch-execution framework
CN101714091A (zh) 用于在操作系统初始化期间显示平台图形的方法和系统
US7191328B2 (en) System and method for using an extensible firmware interface (EFI) utility to build an EFI layer between an operating system and a legacy basic input/output system during a boot process
US4764869A (en) Method and apparatus for controlling interruption in the course of instruction execution in a processor
JPS5960646A (ja) フア−ムウエア制御方式
WO2008048581A1 (en) A processing device operation initialization system
US20040019896A1 (en) Method of automatic program installation for computer device
JPS6217773B2 (ja)
JPS6367690B2 (ja)
KR940009732B1 (ko) 카드의 오퍼레이팅 시스템 부팅방법
JP2556018B2 (ja) チヤネルパスグル−プ管理方式
JPS62120542A (ja) 情報処理装置
JP2005056017A (ja) 情報処理装置