JPH0235523A - フレキシブルasicマイクロコンピュータ - Google Patents

フレキシブルasicマイクロコンピュータ

Info

Publication number
JPH0235523A
JPH0235523A JP63277547A JP27754788A JPH0235523A JP H0235523 A JPH0235523 A JP H0235523A JP 63277547 A JP63277547 A JP 63277547A JP 27754788 A JP27754788 A JP 27754788A JP H0235523 A JPH0235523 A JP H0235523A
Authority
JP
Japan
Prior art keywords
memory
address
data
macroinstruction
register
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
JP63277547A
Other languages
English (en)
Other versions
JP2651218B2 (ja
Inventor
Daniel Watkins
ダニエル ワトキンス
Jimmy Wong
ジミー ウォング
Pavlina Ennghillis
パブリーナ エングヒリス
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.)
LSI Corp
Original Assignee
LSI Corp
LSI Logic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LSI Corp, LSI Logic Corp filed Critical LSI Corp
Publication of JPH0235523A publication Critical patent/JPH0235523A/ja
Application granted granted Critical
Publication of JP2651218B2 publication Critical patent/JP2651218B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • 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/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/261Microinstruction address formation
    • 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/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • G06F9/265Microinstruction selection based on results of processing by address selection on input of storage
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/14Implementation of control logic, e.g. test mode decoders
    • G11C29/16Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Abstract

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

Description

【発明の詳細な説明】 艮亙九災 本発明は、単一の集積回路内に実現されたデジタルマイ
クロコンピュータの分野に関するものである。
児米滋l マイクロコンピュータ(それは、中央処理装置自身に加
えて、RAM及び種々の専用機能を単一の集積回路内に
有している)は従来公知であるが、この様な装置を設計
する方法は1通常、一般の需要にかなうスタンダードな
既成製品を生産する方向に向けられている。この様な装
置の基となるアーキテクチャ−は、特定のユーザの必要
性を充足するべくカスタム化される様には設計されてい
ない。むしろ、それらは、所定の組のマクロ命令に対し
て最適に実施す′べく設計されている。
この様なマイクロコンピュータの例は、インテル803
1/8051を包含しており、そのアーキテクチャ−は
、1984年インテルマイクロコントローラハンドブッ
ク(オーダ一番号210918−002)(7)第6章
及び米国特許第4,153.933号及び第4,306
,163号に記載されているプログラマブルシングルチ
ップMOSコンピュータにおいて特定されている。これ
らの装置の説明(及び本発明者等が既知のその他の全て
のマイクロコンピュータアーキテクチャ−)から理解さ
れることは、それらのアーキテクチャ−が柔軟性に欠け
ることである。コード及びデータに対するメモリ寸法、
マクロ命令デコード及びタイミング、及び使用可能な周
辺機能(例えば、タイマー/カウンタ及びシリアルコン
トローラ)でさえも、その全てが予め定められており変
更することは不可能である。
マイクロコンピュータアーキテクチャ−設計に対する伝
統的なアプローチを前提にすれば、このことは驚くにあ
らたないことである。一般的な基準として、マイクロコ
ンピュータのユーザは、その外部インターフェースのみ
に興味を有しており、例えば、マクロ命令の組及び多分
各命令を実行する為に必要とされるタイミングを包含す
るピンの定義である。換言すると、ユーザはマイクロコ
ンピュータチップがどの操作を実行するかということの
みに関心があり、それがこれらの動作をどのようにして
実行するかということには関心がない。
従って、以前のマイクロコンピュータアーキテクチャ−
は、所定の機能の為に装置の性能を最適化させる為に設
計され最小とされた論理経路から構成されている。換言
すると、マイクロアーキテクチャ−は1つの目的のみ、
即ち与えられた集積回路区域に対して可及的に迅速に特
定した命令の組を実行することのみを目的として設計さ
れる。
同一のアーキテクチャ−が多少(又は、多分、著しく異
なった)適用に対して再度使用することが出来るかもし
れないという可能性に対しては何等考慮されていない。
どのような[スタンダードな装置」の場合においても同
じ様に、多くの潜在的なユーザは設計プロセス自身にお
いて役割を果たし且つ個人的な要求にかなう装置をカス
タム化させることを好む。
然し乍ら、この様な各ユーザに対してカスタム化マイク
ロコンピュータを設計する術がないので、個々の必要性
にかなったカスタム化マイクロコンピュータをユーザに
供給する方法は現在のところ存在しない。
付加的な問題は、CPUとは独立的なオンチップメモリ
のテストに関するものである。マイクロコンピュータ(
メモリを具備)を単一の集積回路に製造する場合、該回
路の残部から独立的に該メモリをテストすることは極め
て困難となる。
この問題を解決する1つの方法は米国特許第4゜153
.933号に記載されており、その場合、CPU動作(
特にプログラムカウンタ)とは独立的に、特別の命令が
プログラムROMをメイン内部バス上にソースさせる。
然し乍ら、この方法は。
未だメイン内部バスを使用し、ROMをアドレスする為
の専用ロジックの設計を必要としている。
この専用ロジックは犠牲をともない、特に通常の実行の
速度及びシリコン面積の両方において発生する。更に一
層著しいことは、メモリ寸法を変化させることが許容さ
れる場合、この専用ロジックの設計に関連する問題は悪
化する(何故ならば。
専用ロジックの複数個の組を形成せねばならないからで
ある)。
目   的 本発明は1以上の点に鑑みなされたものであって、上述
した如き従来技術の欠点を解消し、極めて柔軟性があり
個々のユーザが種々のマクロ命令を変更させることを可
能とした単一基板上のデジタルコンピュータを提供する
ことを目的とする。
且−双 本発明によれば、個々のユーザが、例えば、マクロ命令
の定義の変更、又は単に実行のタイミング及びオンボー
ドメモリ(データ又はコード用のいずれか)の寸法を特
定することを許容するのに十分な柔軟性のある汎用マイ
クロコンピュータアーキテクチャ−が提供される。各ユ
ーザは、自分自身のカスタム化した専用論理機能を特定
し、且つこの様な機能を内部マイクロコンピュータアー
キテクチャ−を介してマクロ命令の組内に容易に組み込
むことが可能である。
本発明の原理は、アーキテクチャ−の部品を汎用化乃至
は一般化させることによって達成され、柔軟性及び拡張
性を与えることを主眼とし、その際に単に集積回路に対
する付録としてではなく、付加、削除、及び修正等の成
る種のタイプの機能性を装置自身の心臓部内に組み込む
ことを許容している。特定の集積回路の適用の設計は、
マイクロコンピュータと同一の集積回路上にユーザ自身
のカスタムロジックをユーザが設けることを単に許容す
ること以上のことを必要とする。それは、又、マイクロ
コンピュータ及びそのカスタムロジックが最早単に外部
装置として通信するものではない場合でなければならな
い。チップ面積のみならず機能性もアーキテクチャ−レ
ベルにおいて一体化されねばならない。
例えば、単に外部■/○ボートを設けるという従来の方
法によるユーザが特定する専用ロジック機能を付加する
ことよりも、これらの機能は、マイクロコンピュータの
内部レジスタファイルに対するこれらの専用機能に関連
するレジスタを付加する為の手段を設けることによって
もマイクロアーキテクチャ−内に組み込まれる。このア
プローチは、著しく一層大きな柔軟性を与え、それがあ
たかもマイクロアーキテクチャ−自身内に組み込まれて
いるかの様にユーザがそのカスタム外部装置を操作する
ことを可能とさせる。ユーザは、簡単な論理及び演算操
作を実行する為に固定した外部メモリ位置(他の乏しい
内部レジスタ内に値を書込且つそれから読み取ることを
必要とする)を特定することは必要ではない。従って、
ユーザはプログラム設計のコストのみならず、スペース
及び性能においても簡約することが可能となる。
マクロ命令の組自身の定義に関して著しい柔軟性が与え
られる。チップは、所定のマクロ命令の特定の組を最適
化させる為に設計された専用「貼り付け」ロジックがば
らばらに配置されていないので1個々のマクロ命令は単
にマイクロコードを書き換えるだけで修正させることが
可能である。
命令のデコード及び実行時間も、この様な態様で修正さ
せることが可能である。
全く新しい命令も、単に付加的なマイクロコードを書き
込むだけで付加することが可能である。
幾つかのユーザが特定するマクロ命令は、予め定めたマ
クロ命令の場合におけるよりも付加的な実行時間を必要
とする(何故ならば、マイクロアーキテクチャ−は予め
定めたマクロ命令に対してのみ最適化されているから)
場合があるかも知れないが、ユーザの多くは、カスタム
マクロ命令を設計する付加的な柔軟性の為に速度におけ
るこの低下分を認容する。結局、その代替例は、スタン
ダードの部分を全部放棄するか、又は予め定めたマクロ
命令を結合することによってカスタムマクロ命令を定義
することである(−層遅く且つ一層高価な作業であるこ
とは略確か)。
FASMICアーキテクチャ−によって提起される別の
問題は、CPUとは独立したオンチップメモリのテスト
に関するものである。本発明は、内部(従って集積回路
の残部)とは独立したオンチップメモリをテストする為
の機構を与え、その際にスタンダードなメモリアドレス
用ロジックを使用し且つ特に可変メモリ寸法が許容され
る場合(各ユーザの個々の要求に従って)の専用ロジッ
クを設計する為の著しく余分のコストを回避する解決法
を与えている。
該機構それ自身は「スキャンパス回路(scan pa
th circuitry)Jを組み込んでおり、それ
は別の文献において公開されている。エルニスアイロジ
ックコーポレーションによって1987年3月に刊行さ
れたLSA2001シリコン−ゲートHCMO5構成型
アレイデータシート、8−10頁を参照すると良い(尚
、これに関しては後に詳述する)、この「スキャン」機
構は、然し乍ら、メイン内部バス(及びCPUの残部)
とは独立したメモリのテスト動作が極めて重要であるマ
イクロコンピュータに関連して以前に使用されたことは
ない。
要するに1本発明は、単一基板上のデジタルコンピュー
タにおいて、双方向データバス、データ又はコードの格
納用のメモリであって前記デジタルコンピュータの動作
中にデータの一時的格納の為に使用する1つ又はそれ以
上のレジスタを具備するメモリ、前記メモリをアドレス
する為のアドレス手段であって前記基板上に位置されて
いない外部装置レジスタのアドレスを前記メモリに使用
するのと同一のアドレス空間内に包含する手段であって
前記基板上に位置されているレジスタに許容されるのと
同一の程度の前記外部レジスタの直接的操作を許容する
手段を具備するアドレス手段。
及びマイクロ命令を解読し且つ実行し且つ演算及び論理
操作を実施し且つ前記データバスと前記メモリと前記ア
ドレス手段とへ結合されている中央処理装置、を有して
おり、前記中央処理装置が、前記コンピュータの動作を
制御する為のマイクロエンジンであって前記コンピュー
タによって実行されるべき1つ又はそれ以上のマクロ命
令を格納する為のマクロ命令メモリと、各々が前記マク
ロ命令の実行を制御する為の1つ又はそれ以上の制御信
号を有する1つ又はそれ以上のマイクロ命令を有するマ
イクロコードメモリと、前記マクロ命令の各々を受け取
り且つ前記マクロ命令をマイクロ命令のシーケンスへマ
ツピングさせ且つ前記マイクロ命令のシーケンスの最初
のマイクロ命令を実行させる手段と、前記マイクロ命令
の実行をシーケンス動作させる手段とを具備するマイク
ロエンジン、及び前記データバスの動作とは独立的に前
記基板外部のメモリのアドレスと前記マイクロエンジン
によって実行される前記マクロ命令の次のもののアドレ
スを発生する手段、を有することを特徴とするデジタル
コンピュータを提供している。
去」L昨 以下、添付の図面を参考に1本発明の具体的実施の態様
に付いて詳細に説明する。尚、以下の実施例の説明は単
に例示的なものであって何等本発明を制限する意図を持
ってなされるものではない。
本発明の好適実施例に付いて説明するが、本発明の技術
的範囲を逸脱すること無しに、その他の実施例(異なっ
た命令の組を実施し、異なった制御手段を使用し、又は
異なった専用aシソ9機能を包含するもの)を実現する
ことが可能であることは当然である。
本発明は、第1図に示したフレキシブルASICマイク
ロコンピュータ(rFAsMIcJ と略称する)のア
ーキテクチャ−内に実現されている。
そこには2つの別々の組のレジスタブロックが設けられ
ており、レジスタの第1ブロツク1はビットアドレス可
能であると共にバイトアドレス可能でもあり、且つレジ
スタの第2ブロツクは単にバイトアドレス可能であるの
みである。これらのレジスタは第1図における2つの別
々のブロック内に図示しであるが1両方の組におけるレ
ジスタは、このチップのアーキテクチャ−全体に渡って
物理的に位置されている(この図面に示されている)。
これらのレジスタをブロック1及び2にグループ化する
目的は、単に各レジスタに関連する適宜のアドレス機能
を例示する為である。
ブロック1及び2におけるレジスタの全ては、マイクロ
コードを介して内部的に、且つユーザマクロ命令を介し
て外部的にアクセスすることが可能である。これらの特
別目的(専用)レジスタに加えて、ユーザには、「スク
ラッチパッド」データRAM3内に包含されて1組の汎
用レジスタが与えられている。これら特別目的レジスタ
の2つ。
即ちレジスタA及びB(数字4及び5で示しである)も
、公知の演算及び論理操作を実施するALU6の下側に
示しである。
2つのALUオペランドはレジスタTPI  8及びT
P2 8内に格納されており、且つALU操作の種々の
結果フラグがPSWレジスタ9内に格納されている。A
LU及びデータRAM3のみならず全ての特別目的レジ
スタは、内部バス10を介してアクセスすることが可能
であり、それから情報を読み出すか又はそれに情報を書
き込むことが可能である。
FASMICアーキテクチャ−のこの特定の実施例は、
集積回路全体に渡って分布される制御信号11を発生す
る汎用マイクロエンジンによって制御される。このマイ
クロエンジンは、命令レジスタ(IR)12を有してお
り、それはプログラムメモリからフェッチされた後に初
期的に各ユーザマクロ命令を保持する。
このマクロ命令は、各マクロ命令をマイクロコードRO
M14内の開始アドレス(又は「エントリーポイント」
)内にマツプするマツプROM 13を介してデコード
される。該マツプROMは、単にマイクロ命令エントリ
ーポイントのテーブルを有しており、且つマクロ命令オ
プコード(0ρcode、即ちオペレーションコードの
略)を介してアドレスされる。1つ又はそれ以上のマク
ロ命令オプコードは、そのグループのマクロ命令を解読
するマイクロ命令のシーケンスにおける最初のマイクロ
命令の特定のエントリーポイントを発生する。
注意すべきことであるが、マツプROM13及びマイク
ロコードROM14の両方の機能性は。
PLA又は純粋にロジック統合(ROMに対し)におけ
る別の実施例において容易に明らかとさせることが可能
である。一般的な基準として、精密な機能性が特定した
寸法及び−性能境界内で実施される限り、この機能性が
どのようにして具現化されるかということはユーザにと
って関係がない。
FASMICアーキ−テクチャ−は、この機能性の二進
表示を維持することによって著しい柔軟性を許容するべ
く設計されており、その際にユーザの個々のスペース、
性能、又はその他の条件を満足する為に特定の明示乃至
は指定(例えば、64KROM)をユーザが選択するこ
とを可能とする。
マイクロコードROM内には、マイクロアーキテクチャ
−の残部をして適宜の機能を実施させることによって特
定のマクロ命令を解読するのに必要な制御信号を包含す
るマイクロ命令のシーケンス(後に詳述する)が存在し
ている。これらの制御信号は、複数個のフィールドに組
織化されており、各フィールドは、例えば特定のレジス
タを読取且つその内容を内部バス上に配置させる等の特
定の機能を表している。これらのフィールドは、更に、
固定長マイクロ命令フォーマットに組織化されており、
該フォーマットの各々は制御信号の複数個のフィールド
を有するマイクロ命令のタイプを構成している。各マイ
クロ命令は、その実行の直前に、マイクロワードレジス
タ、(MWR)15内に格納され、そこからそれは本集
積回路に渡って分布されている付加的な制御ロジックに
よってデコードされる。
マイクロ命令実行のシーケンス動作はMUXI6を介し
て制御され、該マルチプレクサは、デフォルト即ち省略
時の解釈として、単純にアドレスを次の逐次的マイクロ
命令へインクリメントさせる(何故ならば、マイクロ命
令のシーケンスは、通常、1つ又はそれ以上のマクロ命
令の特定のグループに対して既知である)。然し乍ら、
時々、シーケンス動作は条件付きであり、例えば、条件
付きマイクロコード分岐が発生する場合である。
その場合、前のマイクロ命令自身の特定のフィールドは
1次のアドレスを有している(条件が満足されるとジャ
ンプされる)、最後に、特定のグループのマクロ′命令
を解読するマイクロ命令のシーケンスを実行した後に、
次のアドレスがマツプROMの出力によって決定される
。何故ならば、そのアドレスは次に実行されるべき特定
のマクロ命令に依存するからである。
従って、MUX16は、(1)前のマイクロ命令のアド
レスをインクリメントし、(2)マツプROMによって
発生されるエントリーポイントアドレスを使用するか、
又は(3)前のマイクロ命令(MWR内に格納)から発
生されるか又はその中に包含されている分岐アドレスを
使用することによって、実行されるべき次のマイクロ命
令のアドレスを決定する。このアドレスは1次いで、マ
イクロアドレスレジスタ(MAR)17内に格納され、
それはマイクロコードROMを直接アドレスし、そのア
ドレスにおけるマイクロ命令をMWR内にロードさせ次
いで実行させる。
MUX16は実行すべき次のマイクロ命令のアドレスの
ソース即ち発生源を決定する一方、MUX18はアクセ
スされるべきレジスタのコード化した「アドレス」の発
生源を決定しく例えば、マイクロ命令又はマクロ命令が
特定のレジスタに関して動作する場合)1次いでそのコ
ード化したアドレスをRAM/レジスタアドレスレジス
タ(RAR)19内に格納する。
RARに対する3個の可能な発生源の第1のものは、内
部パス10であり、現在実行中のマイクロ命令自身によ
って特定されるレジスタ(又はRAM位置)の絶対アド
レスを包含している。これらの制御信号は、MWRから
デコードされ、次いで内部バス上に配置され、そこで該
信号はそこからデータを読み出すか又はそこにデータを
書き込む特定のレジスタ(又はRAM位置)を選択する
為に使用することが可能である。付加的な制御信号は、
勿論、MUX18がこれ又は他の2つの発生源の内の1
つのいずれかを選択するかを決定する。
第2潜在的RAR発生源20も絶対アドレスであるが、
マイクロ命令から派生されるのではなく現在実行中のマ
クロ命令から派生する。このアドレスは3つのコンポー
ネント即ち構成要素から構成されている。該アドレスの
最大桁ビットは固定されており、データRAMa内の特
定のオフセットが汎用レジスタ用にリザーブされている
ことを表している。次の最大桁ビットは、pswの成る
ビットによって決定され、RAM内の汎用レジスタのど
の「バンク」が現在アクセス中であるかを表している。
最後に、マクロ命令自身の成るビットは、データRAM
3レジスタの現在のバンク内のどの特定のレジスタがア
クセスされているかを特定する。これら3つの構成要素
は結合して、データRAMa内に絶対アドレスを形成し
、それは、MUXlS上で選択されると、RAR内にロ
ードされ且つアクセスされるべきデータRAM3をアド
レスする為に使用される。
3番目の可能なRAR発生源21は、以下の間接的なア
ドレス手段を介して得られるデータRAM5内のアドレ
スである。ソース即ち発生源20は、該間接アドレスを
RAR内にロードする0次いで、RAR内の内容は、デ
ータRAMa内へのポインター(間接アドレス)として
使用される。
データRAMa内のこのアドレスにおけるワードの内容
(絶対アドレス)は、MUX18内へのソース21とな
り、それは1選択されると、RAR内にロードされる。
MUX22は、RARを介してアクセスされるレジスタ
内のデータは、専用ビットアドレス可能レジスタ、専用
バイトアドレス可能レジスタ、又は汎用データRAMレ
ジスタから得られることを概念的に示している。アドレ
ス用レジスタに加えて、マイクロ命令及びマクロ命令の
両方が、外部ポートP222及びポートPO24を介し
てオフチップデータRAMをアクセスすることが可能で
ある。スタックポインタレジスタ (SP)25は、「
後入れ先出しJ  (L I FO)態様でデータをセ
ーブすることによりユーザメモリを組織化する為に公知
のソフトウェア機構を実施する為に使用される9SPは
、スタック上の「頂部」 (スタックが上方向に成長す
る場合には、最後に挿入されたもの)のアドレスを有し
ている。外部ポートP21 26は単純な汎用並列ポー
トである。
外部ポートP223及びPo 24は、オフチッププロ
グラム及びデータメモリ(RAM又はROM)をアクセ
スする為に使用される。(実行すべき次のマクロ命令の
)該アドレスをポートP2及びPOを介して送り、且つ
2つの物理的に別々の構成要素内(1つの構成要素はそ
のアドレスの最大桁半分であり他の1つは最小桁半分で
ある)において計算される。「次のマクロ命令アドレス
発生」機構のこれら2つの構成要素は実際上同一である
各々は3つの専用レジスタ(夫々、高及び低の半分)を
有しており、即ち、(1)外部データRAM内へのオフ
セットを有するデータポインタ(DPH27及びDPL
28)と、(2)次のマクロ命令のアドレスを有するプ
ログラムカウンタ(PCH29及びPCL30) と、
(3)実行すべき次の逐次マクロ命令のアドレスを得る
為にプログラムカウンタをインクリメントさせる為の一
時的レジスタとして通常使用される内部レジスタ(IH
31及びIL32)とである。
注意すべきことであるが、この機構の高構成要素はイン
クリメンタ/デクリメンタ33を有しており、−力任構
成要素は単にインクリメンタ34を有しているだけであ
る。この差違は、低構成要素はALUを使用して相対的
アドレス変位を計算し、高構成要素内にマイナーなイン
クリメント又はデクリメントのみを残すだけであり、そ
れはインクリメンタ/デクリメンタ33を介してハード
ウェア内で処理されるという事実に起因するものである
MUX35及びMUX36は、アドレスを発生する為に
3個のレジスタの内のどれにアクセスするかを決定する
制御信号を受け取る。この掲載は屡々複雑であるので(
例えば、ALU操作を必要とする)、別の内部PD(プ
ログラムカウンタ及びデータポインタ)パスPDH37
及びPDL38を使用して、この機構に関連するレジス
タ内へ且つ内部バス上へデータが転送されることを許容
し、そこからそれはALUを介して操作され得る。
バッファ39及び40は、何等対立無しに(何故ならば
、内部バスは任意の与えられた時刻において1つのソー
スによってのみ「マスター」即ち支配下とされることが
可能であるに過ぎないからである)PDババス内部バス
との間においてデータが適切に転送されることを確保す
るのに必要な公知のロジック機構を有している。
従って、次のマクロ命令アドレスは、マイクロコード制
御の下でこの機構を介して計算される(例えば、いずれ
かの必要な論理及び演算操作を実施する為にALUを使
用しPDババスび内部バスを介してデータを操作するこ
とによって)。外部データRAMアドレスもこの機構を
介して計算される。
実行されるべき次のマクロ命令のアドレスは、プログラ
ムアドレスレジスタ(PARH41及びPARL42)
内に究極的に格納される。オフチップメモリから次のマ
クロ命令をフェッチすることに加えて(外部ポートP2
及びPOを介して)、ユーザプログラムの幾つか又は全
てをオプションのオンチッププログラムROM43内に
格納させることが可能である。とにかく、この機構は、
外部データRAMの読出しか書込み、又は次のマクロ命
令のフェッチ(外部メモリ又はオンチップROMのいず
れかから)のいずれかとなり、それは次いで内部パス上
及びIR内にロードされ、それは上述した汎用マイクロ
エンジンによって実行される。
最後に、本アーキテクチャ−は又タイミング機構44及
び成る専用ロジック機能(タイマー/カウンタ45.イ
ンタラブド機構46及びシリアルコントローラ47)も
有しており、その各々は当該技術において従来公知であ
り1984年のインテルマイクロコントローラハンドブ
ック(オーダ一番号210918−002)の第6章に
詳細に説明されている。外部ボートP348は、これら
の専用機能へのアクセスを与え、ユーザが特定する専用
論理機能の外部レジスタ(ブロック1及び2内の内部レ
ジスタのアドレス空間内に組み込まれている)のアドレ
ス動作を除いて、それらは本発明に僅かに関係している
に過ぎない。
第2図には、内部バスを使用することなしに、オンチッ
プメモリのテストを可能とさせるFASMrCアーキテ
クチャ−内に組み込んだ別の機構を示しである。注意す
べきことであるが、メモリ内への専用メモリアドレスロ
ジックを設計する代わりに5本発明はスタンダードなメ
モリ端成要素内に既に組み込んだ上述した「スキャン」
技術の利点を利用している6 メモリ自身1は、成る制御信号に加えて、3組のラッチ
(入力ラッチ2、アドレスラッチ3、及び出力ラッチ4
)によって囲繞されている。セルセレクト信号(C8)
5がリセット(メモリをディスエーブル)されると、シ
リアルアドレスビット(読出又は書込のいずれかに拘ら
ず、テストすべきデータをアドレス動作する)を、入力
アドレスクロック(ICKASDR)6をストローブす
“ることによってアドレスラッチ(その幅は、RAMの
幅によって決定され、ビット当たり1個のラッチが設け
られている)内にロードさせることが可能である。同様
に、入力データクロック(ICKDATA)7をストロ
ーブさせることによって、テストデータを入力ラッチ(
入力のビット当たり1個)内に直列的に入力させること
が可能である。
C8及び書込イネーブル信号(WE)8をセットするこ
とにより(且つ内部スキャンクロツタ信号を「低)に保
持)、内部ラッチ内に既にストローブされたテストデー
タは、以前にアドレスラッチ内にストローブされたアド
レスにおいてメモリ内に書き込まれる。WEがリセット
されることを除いて、メモリからテストデータを読み取
る為に同一の手順が続けられる。次いで、該テストデー
タを出力ラッチの入力に配置させ、そこでそれは、出力
データクロツタ(OCK)9を一度ストロープすること
によってラッチさせることが可能である0次いで、出力
(OE)10をイネーブルさせ、O8をリセットさせ(
メモリをディスエーブルさせ)且つデータの各ビットが
シフトアウトされる迄内部スキャンクロックをストロー
ブすることによって、データを直列的にアクセスするこ
とが可能である。
この様に、メモリ自身で供給される入力ラッチ、出力ラ
ッチ及びアドレスラッチのみを使用して、スキャン機構
を介してメモリをテストすることが可能であり、従って
、専用ロジックを形成することを必要とする内部バスを
使用することがら発生する問題を回避することを可能と
している。
第3図を参照して、FASMIC設計者によって未だか
つて考えたことのないFASMICアーキテクチャ−へ
特定の専用論理装置を付加すること(例えば、DMA装
置)をユーザが要望している場合を考える。伝統的には
、そのユーザは、第1図に示した外部ポートに設けられ
ているFASMICへのアクセスを有するのみであった
。然し乍ら、FASMICアーキテクチャ−において。
その装置の外部的にアクセス可能なレジスタは基本的な
アーキテクチャ−内に組み込まれており、即ちそれらは
直接的にビットアドレス可能又はバイトアドレス可能な
レジスタの組の中に設けられる。
外部装置のレジスタをFASMICの内部レジスタアド
レス空間内に設けることの重要性は、ユーザがFASM
ICを制御する為のソフトウェアを書く場合に明らかと
なる。例えば、第3図に示した専用ロジック装置の特定
のレジスタ(「レジスタC」)内に1個のビットを設定
するタスク(例えば、FASMIC命令セットを使用し
て)に付いて考えてみる。
FASMICアーキテクチャ−において(その外部レジ
スタはFASMICの内部アドレス空間内にあるので)
、該プログラムは、レジスタCの2番目の最小桁ビット
を設定する1つの命令(rSETB  C,IJ )の
みからなる。然し乍ら、レジスタCがFASMICの内
部アドレス空間内に包含されていなかった場合(本発明
者が既知の全てのマイクロコンピュータにおける場合の
如く)には、著しく長いプログラム(第3図に示した5
つのマクロ命令からなる)が必要とされる。
要するに、ユーザは、外部レジスタC(マクロ命令1及
び5)から読み取った値を保持する為に、[スクラッチ
レジスタをセーブし且つ究極的に回復せねばならない。
更に、ユーザは、レジスタCの内容をそのスクラッチレ
ジスタ(マクロ命令2)内に移動させ、且つそのビット
(マクロ命令3)を最終的に設定した後に、その結果を
レジスタC(マクロ命令4)内に移動して戻さねばなら
ない。
このプログラムの付加的な長さは、外部レジスタを操作
する場合にはいつでも余分のプログラミングが必要とさ
れることを表している。ユーザの装置のレジスタが屡々
アクセスされる場合、FASMIC方法を使用する対応
するプログラムよりも、ユーザのプログラムは著しく遅
く、且つ著しく一層大きな空間を占有する。
外部レジスタのアクセス動作等のこの様な明らかに冗長
な(且つ頻繁な)動作は、(殆どのコンピュータプログ
ラムの心臓部に位置する重要なデータ操作マクロ命令に
集中するのではなく)ユーザがデータを移動させるのみ
ならず制限されたスクラッチレジスタを節約し且つ回復
させる為の回り通約で屡々困難な経路を決定することを
強制するよりも、内部的に処理した場合には一層能率的
である。
要するに、装置の内部レジスタアドレス空間内に外部レ
ジスタを設ける為にFASMICアーキテクチャ−を−
膜化させることによって、本発明は、余分の「データ移
動」命令(それは多くのコンピュータプログラムの過度
の割合を占めることが屡々である)を処理することの必
要性をユーザから取り除き、且つユーザが「データ操作
」 (即ち、数字処理)命令を必要とする目下の特定の
タスクに集中することを自由とさせる。
マクロ  セットのカスタム ユーザは、その個別的な必要性にかなったものとする為
にマクロ命令のセット(組)をカスタム化することを所
望する。FASMrCアーキテクチャ−は、この様なカ
スタム化を可能とするばかすか、極めて簡単化させる。
一般的な(且つ通常許容可能な)「キャリー付き加算(
add with carry) (ADC)マクロ命
令がユーザに提供されている場合を考察する。簡単に説
明すると、このマクロ命令は2つの数字を加算し且つ、
その結果がそれの最大桁ビットを舖えてキャリーを発生
した場合に、キャリービットをセットする。然し乍ら、
その特定のユーザが(何等かの理由により)常にキャリ
ービットをセットする修正したADDCマクロ命令を必
要とする場合にはどうなるか?事実上、マシン内には全
ての機能性が既に存在しているが、従来技術のマイクロ
コンピュータはユーザに実現性のある解決を与えていな
い。
一方、FASMICは、この様な要求に対してカスタム
化すべく設計されているので、マイクロコードは単に多
少修正されることを必要とするに過ぎない、ALUにお
ける加算操作によって発生されるキャリー値の使用では
なく、マイクロコードは単に加算操作の後のいつかにキ
ャリービットを直接的にセットすることを必要とする。
FASM工Cアーキテクチャ−はこの柔軟性を基に設計
されているので、この特定のユーザに対しての操作上の
多少の変更が可能なのである(その場合に何等付加的な
ハードウェアの変更を必要とすることなしに)。
その他の例は豊富である。ユーザは既存のマクロ命令を
単に修正するのではなく、全く新しいマクロ命令を付加
することを所望する場合もある。
この場合に必要とされることは、新しいマイクロコード
シーケンスであり、且つマツプROM内のそのエントリ
ーポイントの付加である。前のマクロ命令セットとの適
合性(たとえ実行時間においても)も、現在の屡々より
高速なルーチンよりも「適合性」のあるマイクロルーチ
ンを実行させるユーザが設定可能なスイッチを設けるこ
とによって簡単に可能となる。より遅い速度は、屡々必
要な程度の適合性を提供する。
要するに、マクロ命令を各ユーザの個々の要求に対して
カスタム化させることを特徴とする特許性のあるアーキ
テクチャ−をユーザに供給することによって明らかに重
要な機能性を得ることが可能である。
以上1本発明の具体的実施の態様に付いて詳細に説明し
たが1本発明はこれら具体例にのみ限定されるべきもの
では無く、本発明の技術的範囲を逸脱すること無しに種
々の変形が可能であることは勿論である。
【図面の簡単な説明】
第1図は本発明の好適実施例に基づいて構成されたFA
SMICマイクロコンピュータのアーキテクチャ−を示
した説明図、第2図は内部バスから独立したオンチップ
メモリをテストする「スキャン」技術を示した説明図、
第3図はいかにしてユーザ指定専用ロジック機能が基本
FASMICアーキテクチャ−へ付加されるかを示した
説明図、である。 (符号の説明) 3:データRAM 7.8,9:レジスタ 10:内部バス 11:$lI御信呼 信号:命令レジスタ 13:マツプROM 14:マイクロコードROM 15:マイクロワードレジスタ 16.18:マルチプレクサ(MUX)20.21:R
ARソース 23.24:外部ポート 33:インクリメンタ/デクリメンタ 34:インクリメンタ 43ニブログラムROM 44:タイミング機端

Claims (1)

  1. 【特許請求の範囲】 1、単一基板上のデジタルコンピュータにおいて、双方
    向データバス、データ又はコードの格納用のメモリであ
    って前記デジタルコンピュータの動作中にデータの一時
    的格納の為に使用する1つ又はそれ以上のレジスタを具
    備するメモリ、前記メモリをアドレスする為のアドレス
    手段であって前記基板上に位置されていない外部装置レ
    ジスタのアドレスを前記メモリに使用するのと同一のア
    ドレス空間内に包含する手段であって前記基板上に位置
    されているレジスタに許容されるのと同一の程度の前記
    外部レジスタの直接的操作を許容する手段を具備するア
    ドレス手段、及びマイクロ命令を解読し且つ実行し且つ
    演算及び論理操作を実施し且つ前記データバスと前記メ
    モリと前記アドレス手段とへ結合されている中央処理装
    置、を有しており、前記中央処理装置が、前記コンピュ
    ータの動作を制御する為のマイクロエンジンであって前
    記コンピュータによって実行されるべき1つ又はそれ以
    上のマクロ命令を格納する為のマクロ命令メモリと、各
    々が前記マクロ命令の実行を制御する為の1つ又はそれ
    以上の制御信号を有する1つ又はそれ以上のマイクロ命
    令を有するマイクロコードメモリと、前記マクロ命令の
    各々を受け取り且つ前記マクロ命令をマイクロ命令のシ
    ーケンスへマッピングさせ且つ前記マイクロ命令のシー
    ケンスの最初のマイクロ命令を実行させる手段と、前記
    マイクロ命令の実行をシーケンス動作させる手段とを具
    備するマイクロエンジン、及び前記データバスの動作と
    は独立的に前記基板外部のメモリのアドレスと前記マイ
    クロエンジンによって実行される前記マクロ命令の次の
    もののアドレスを発生する手段、を有することを特徴と
    するデジタルコンピュータ。 2、特許請求の範囲第1項において、前記データバスの
    通常の動作を中断すること無しに前記メモリをテストす
    る手段を有しており、前記テストする手段が、そこへデ
    ータを書き込むか又はそこからデータを読み取る前記メ
    モリ内のアドレスを外部源から受け取る為の1個又はそ
    れ以上のアドレス入力フィードバック回路、前記メモリ
    内の前記アドレスへ書き込むことの可能なデータを外部
    源から受け取る為の1個又はそれ以上のデータ入力フィ
    ードバック回路、前記メモリ内の前記アドレスに格納さ
    れているデータを前記メモリから受け取る為の1個又は
    それ以上のデータ出力フィードバック回路、前記メモリ
    を前記アドレス入力フィードバック回路と前記データ入
    力フィードバック回路と前記データ出力フィードバック
    回路とへ結合させる手段、を有することを特徴とするデ
    ジタルコンピュータ。 3、特許請求の範囲第2項おいて、前記テスト手段は、
    前記アドレス入力フィードバック回路へのアドレスビッ
    ト、前記データ入力フィードバック回路へのデータビッ
    ト、及び前記データ出力フィードバック回路への前記メ
    モリからのデータビットの直列転送を制御するクロック
    手段を有することを特徴とするデジタルコンピュータ。 4、特許請求の範囲第1項において、前記マイクロエン
    ジンは、前記基板外部の発生源から1つ又はそれ以上の
    信号を受け取る手段を有しており、前記信号は、前記マ
    クロ命令を受け取り且つマイクロ命令のシーケンスへマ
    ッピングする手段をして、前記マクロ命令を前記信号が
    受け取られなかった場合に選択されたであろう様なもの
    とは異なったマイクロ命令のシーケンスへマップさせる
    ことを特徴とするデジタルコンピュータ。 5、特許請求の範囲第1項において、前記マクロ命令を
    受け取り且つマイクロ命令のシーケンスへマッピングす
    る手段が、前記マクロ命令の1つ又はそれ以上のビット
    によってアドレスされ実行されるべき前記最初のマイク
    ロ命令の前記マイクロコードメモリ内にアドレスを格納
    するマッピングメモリ、前記デジタルコンピュータによ
    り実行可能なマクロ命令の組にマクロ命令を付加し且つ
    それから削除し且つ前記デジタルコンピュータによって
    前記マクロ命令の1つまたはそれ以上が実行される速度
    を変化させ且つ前記マクロ命令が実行される場合に実行
    される機能を変化させる手段であって前記マッピングメ
    モリ及び前記マイクロコードメモリの内容のみを修正し
    前記基板上のいずれの付加的な論理回路も修正すること
    のないステップを具備する手段を有することを特徴とす
    るデジタルコンピュータ。 6、特許請求の範囲第1項において、メモリ/レジスタ
    アドレスレジスタ、2つ又はそれ以上の発生源から前記
    メモリ/レジスタアドレスレジスタの内容を選択し前記
    マイクロコードメモリ内の1つ又はそれ以上のマイクロ
    命令から発生される制御信号によって制御される多重化
    手段、を有することを特徴とするデジタルコンピュータ
    。 7、特許請求の範囲第6項において、前記多重化手段の
    発生源が、前記基板上に位置されておりデータがそれに
    書き込まれたり又はそれから読み取られたりする為の前
    記メモリ内のアドレス又はレジスタを表すコード化信号
    、及び前記基板上に位置されておりその内容がそれへデ
    ータが書き込まれたり又はそれからデータが読み取られ
    たりする前記メモリ内のアドレスを包含する前記メモリ
    内のワードに対するアドレスポインターを表すコード化
    信号、を有することを特徴とするデジタルコンピュータ
    。 8、特許請求の範囲第1項において、前記データバスの
    動作とは独立的に前記基板の外部のメモリのアドレスと
    前記マイクロエンジンによって実行されるべき前記マク
    ロ命令の次のもののアドレスとを発生する手段が、その
    内容が1つ又はそれ以上の連続するワードのデータが格
    納されている前記基板の外部の前記メモリ内のエリアを
    アドレスするデータポインタレジスタ、その内容が1つ
    又はそれ以上の連続するマクロ命令が格納されているプ
    ログラムメモリ内のエリアをアドレスするプログラムカ
    ウンタレジスタ、データがそれに書き込まれるか又はデ
    ータがそれから読み取られるデータメモリ内のアドレス
    の発生を容易とさせる為に前記データポイントレジスタ
    をインクリメント又はデクリメントさせる手段、前記コ
    ンピュータによって実行されるべき次のマクロ命令のプ
    ログラムメモリ内のアドレスの発生を容易とさせる為に
    前記プログラムカウンタレジスタをインクリメント又は
    デクリメントさせる手段、を有することを特徴とするデ
    ジタルコンピュータ。
JP63277547A 1987-11-03 1988-11-04 フレキシブルasicマイクロコンピュータ Expired - Fee Related JP2651218B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/116,411 US4878174A (en) 1987-11-03 1987-11-03 Flexible ASIC microcomputer permitting the modular modification of dedicated functions and macroinstructions
US116,411 1987-11-03

Publications (2)

Publication Number Publication Date
JPH0235523A true JPH0235523A (ja) 1990-02-06
JP2651218B2 JP2651218B2 (ja) 1997-09-10

Family

ID=22367030

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63277547A Expired - Fee Related JP2651218B2 (ja) 1987-11-03 1988-11-04 フレキシブルasicマイクロコンピュータ

Country Status (5)

Country Link
US (1) US4878174A (ja)
EP (1) EP0315275B1 (ja)
JP (1) JP2651218B2 (ja)
KR (1) KR890008699A (ja)
DE (1) DE3853613T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5195343A (en) * 1992-05-26 1993-03-23 General Motors Corporation Pusher apparatus for multi-axis tube bender

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5187799A (en) * 1988-05-17 1993-02-16 Calif. Institute Of Technology Arithmetic-stack processor which precalculates external stack address before needed by CPU for building high level language executing computers
US5117487A (en) * 1988-08-26 1992-05-26 Kabushiki Kaisha Toshiba Method for accessing microprocessor and microinstruction control type microprocessor including pointer register
US5333287A (en) * 1988-12-21 1994-07-26 International Business Machines Corporation System for executing microinstruction routines by using hardware to calculate initialization parameters required therefore based upon processor status and control parameters
JP3063006B2 (ja) * 1989-02-08 2000-07-12 インテル・コーポレーション マイクロプログラムされるコンピュータ装置及びマイクロコードシーケンスメモリをアドレツシングする方法
US5092300A (en) * 1991-01-31 1992-03-03 Siemens Automotive L.P. Plastic fuel rail end joint
AU660011B2 (en) * 1991-04-26 1995-06-08 Nec Corporation Method and system for fault coverage testing memory
IT1251565B (it) * 1991-09-10 1995-05-17 Sgs Thomson Microelectronics Procedimento di verifica delle memorie di un microcalcolatore programmato, mediante un microprogramma incorporato nello stesso microcalcolatore.
US5262625A (en) * 1991-11-15 1993-11-16 Ncr Corporation Multiple bar code decoding system and method
US5245926A (en) * 1992-03-11 1993-09-21 United States Of America As Represented By The Secretary Of The Army Generic electronic safe and arm
ATE175043T1 (de) * 1992-03-27 1999-01-15 Siemens Ag Integrierter mikroprozessor
US5426769A (en) * 1993-08-26 1995-06-20 Metalink Corp. System and method for producing input/output expansion for single chip microcomputers
US5758141A (en) * 1995-02-10 1998-05-26 International Business Machines Corporation Method and system for selective support of non-architected instructions within a superscaler processor system utilizing a special access bit within a machine state register
WO1996034346A1 (en) * 1995-04-28 1996-10-31 Xilinx, Inc. Microprocessor with distributed registers accessible by programmable logic device
US6047361A (en) * 1996-08-21 2000-04-04 International Business Machines Corporation Memory control device, with a common synchronous interface coupled thereto, for accessing asynchronous memory devices and different synchronous devices
US7181484B2 (en) 2001-02-21 2007-02-20 Mips Technologies, Inc. Extended-precision accumulation of multiplier output
US7711763B2 (en) 2001-02-21 2010-05-04 Mips Technologies, Inc. Microprocessor instructions for performing polynomial arithmetic operations
US7162621B2 (en) * 2001-02-21 2007-01-09 Mips Technologies, Inc. Virtual instruction expansion based on template and parameter selector information specifying sign-extension or concentration
US7599981B2 (en) 2001-02-21 2009-10-06 Mips Technologies, Inc. Binary polynomial multiplier
US6605962B2 (en) 2001-05-06 2003-08-12 Altera Corporation PLD architecture for flexible placement of IP function blocks
US7076595B1 (en) 2001-05-18 2006-07-11 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
US6798239B2 (en) 2001-09-28 2004-09-28 Xilinx, Inc. Programmable gate array having interconnecting logic to support embedded fixed logic circuitry
US6781407B2 (en) 2002-01-09 2004-08-24 Xilinx, Inc. FPGA and embedded circuitry initialization and processing
US7420392B2 (en) 2001-09-28 2008-09-02 Xilinx, Inc. Programmable gate array and embedded circuitry initialization and processing
US6996758B1 (en) 2001-11-16 2006-02-07 Xilinx, Inc. Apparatus for testing an interconnecting logic fabric
US6983405B1 (en) 2001-11-16 2006-01-03 Xilinx, Inc., Method and apparatus for testing circuitry embedded within a field programmable gate array
US6886092B1 (en) 2001-11-19 2005-04-26 Xilinx, Inc. Custom code processing in PGA by providing instructions from fixed logic processor portion to programmable dedicated processor portion
US6976160B1 (en) 2002-02-22 2005-12-13 Xilinx, Inc. Method and system for controlling default values of flip-flops in PGA/ASIC-based designs
US6754882B1 (en) 2002-02-22 2004-06-22 Xilinx, Inc. Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC)
US6934922B1 (en) 2002-02-27 2005-08-23 Xilinx, Inc. Timing performance analysis
US7007121B1 (en) 2002-02-27 2006-02-28 Xilinx, Inc. Method and apparatus for synchronized buses
US6839874B1 (en) 2002-02-28 2005-01-04 Xilinx, Inc. Method and apparatus for testing an embedded device
US7111217B1 (en) 2002-02-28 2006-09-19 Xilinx, Inc. Method and system for flexibly nesting JTAG TAP controllers for FPGA-based system-on-chip (SoC)
US7187709B1 (en) 2002-03-01 2007-03-06 Xilinx, Inc. High speed configurable transceiver architecture
US7111220B1 (en) 2002-03-01 2006-09-19 Xilinx, Inc. Network physical layer with embedded multi-standard CRC generator
US7088767B1 (en) 2002-03-01 2006-08-08 Xilinx, Inc. Method and apparatus for operating a transceiver in different data rates
US6961919B1 (en) 2002-03-04 2005-11-01 Xilinx, Inc. Method of designing integrated circuit having both configurable and fixed logic circuitry
US6973405B1 (en) 2002-05-22 2005-12-06 Xilinx, Inc. Programmable interactive verification agent
US6772405B1 (en) 2002-06-13 2004-08-03 Xilinx, Inc. Insertable block tile for interconnecting to a device embedded in an integrated circuit
US7085973B1 (en) 2002-07-09 2006-08-01 Xilinx, Inc. Testing address lines of a memory controller
US7099426B1 (en) 2002-09-03 2006-08-29 Xilinx, Inc. Flexible channel bonding and clock correction operations on a multi-block data path
US7092865B1 (en) 2002-09-10 2006-08-15 Xilinx, Inc. Method and apparatus for timing modeling
US7421014B2 (en) 2003-09-11 2008-09-02 Xilinx, Inc. Channel bonding of a plurality of multi-gigabit transceivers
KR101503534B1 (ko) * 2008-11-28 2015-03-17 삼성전자주식회사 가시광 통신 데이터를 송수신하는 장치
CN116737601B (zh) * 2023-08-11 2023-11-17 深圳市航顺芯片技术研发有限公司 将外设寄存器扩展为系统ram的方法、装置及存储介质
CN116909628B (zh) * 2023-09-13 2023-12-26 腾讯科技(深圳)有限公司 直接内存访问系统、数据搬运方法、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5079232A (ja) * 1973-10-10 1975-06-27
JPS5097248A (ja) * 1973-12-26 1975-08-02
JPS51130138A (en) * 1975-05-06 1976-11-12 Panafacom Ltd Data processing system for extended instructions
JPS5379341A (en) * 1976-12-24 1978-07-13 Hitachi Ltd Instruction supplementation system
JPS53139944A (en) * 1977-05-13 1978-12-06 Hitachi Ltd Control system of direct memory access
JPS55154635A (en) * 1979-05-21 1980-12-02 Hitachi Ltd Data processor
JPS56101250A (en) * 1980-01-14 1981-08-13 Toshiba Corp Data processor

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1471528A (en) * 1973-07-05 1977-04-27 Pains Wessex Ltd Smoke markers
US3961251A (en) * 1974-12-20 1976-06-01 International Business Machines Corporation Testing embedded arrays
US4001788A (en) * 1975-03-26 1977-01-04 Honeywell Information Systems, Inc. Pathfinder microprogram control system
US4093982A (en) * 1976-05-03 1978-06-06 International Business Machines Corporation Microprocessor system
US4173041A (en) * 1976-05-24 1979-10-30 International Business Machines Corporation Auxiliary microcontrol mechanism for increasing the number of different control actions in a microprogrammed digital data processor having microwords of fixed length
US4124890A (en) * 1977-06-20 1978-11-07 Vasenkov Alexandr A Microprocessor computing system
US4291372A (en) * 1979-06-27 1981-09-22 Burroughs Corporation Microprocessor system with specialized instruction format
US4450519A (en) * 1980-11-24 1984-05-22 Texas Instruments Incorporated Psuedo-microprogramming in microprocessor in single-chip microprocessor with alternate IR loading from internal or external program memories
US4403284A (en) * 1980-11-24 1983-09-06 Texas Instruments Incorporated Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5079232A (ja) * 1973-10-10 1975-06-27
JPS5097248A (ja) * 1973-12-26 1975-08-02
JPS51130138A (en) * 1975-05-06 1976-11-12 Panafacom Ltd Data processing system for extended instructions
JPS5379341A (en) * 1976-12-24 1978-07-13 Hitachi Ltd Instruction supplementation system
JPS53139944A (en) * 1977-05-13 1978-12-06 Hitachi Ltd Control system of direct memory access
JPS55154635A (en) * 1979-05-21 1980-12-02 Hitachi Ltd Data processor
JPS56101250A (en) * 1980-01-14 1981-08-13 Toshiba Corp Data processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5195343A (en) * 1992-05-26 1993-03-23 General Motors Corporation Pusher apparatus for multi-axis tube bender

Also Published As

Publication number Publication date
JP2651218B2 (ja) 1997-09-10
EP0315275B1 (en) 1995-04-19
EP0315275A3 (en) 1990-08-16
DE3853613T2 (de) 1995-08-24
KR890008699A (ko) 1989-07-12
US4878174A (en) 1989-10-31
EP0315275A2 (en) 1989-05-10
DE3853613D1 (de) 1995-05-24

Similar Documents

Publication Publication Date Title
JPH0235523A (ja) フレキシブルasicマイクロコンピュータ
US4839797A (en) Microprocessor compatible with any software represented by different types of instruction formats
CA1109967A (en) Expandable microprogram memory
US4016545A (en) Plural memory controller apparatus
RU2137184C1 (ru) Отображение с помощью мультинаборов команд
US5155819A (en) Flexible ASIC microcomputer permitting the modular modification of dedicated functions and macroinstructions
KR100462951B1 (ko) Risc 구조를 갖는 8 비트 마이크로콘트롤러
EP0034180B1 (en) Special address generation arrangement
JPS6339931B2 (ja)
US5682531A (en) Central processing unit
US4346437A (en) Microcomputer using a double opcode instruction
JPH04233640A (ja) メモリ拡張スキームを切り替える疑似直線バンクを有するマイクロコントローラ
US4347566A (en) Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip
KR19980069757A (ko) 마이크로프로세서 및 멀티프로세서 시스템
EP0035334B1 (en) Data processing system with two level microprogramming
US5046040A (en) Microprogram control apparatus using don't care bits as part of address bits for common instructions and generating variable control bits
US6542989B2 (en) Single instruction having op code and stack control field
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
JPH0640303B2 (ja) デ−タ処理装置
US4107774A (en) Microprogram splatter return apparatus
JP2680828B2 (ja) ディジタル装置
US6564312B1 (en) Data processor comprising an arithmetic logic unit
JP2826309B2 (ja) 情報処理装置
US5463747A (en) Microprogram data processor processing operand address calculation and instruction execution with common hardware
JPS6410854B2 (ja)

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees