JP2001216152A - 論理集積回路及びそのcpuコアのソースを記録したコンピュータ読み取り可能な記録媒体 - Google Patents
論理集積回路及びそのcpuコアのソースを記録したコンピュータ読み取り可能な記録媒体Info
- Publication number
- JP2001216152A JP2001216152A JP2000024826A JP2000024826A JP2001216152A JP 2001216152 A JP2001216152 A JP 2001216152A JP 2000024826 A JP2000024826 A JP 2000024826A JP 2000024826 A JP2000024826 A JP 2000024826A JP 2001216152 A JP2001216152 A JP 2001216152A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- cpu core
- instruction
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 claims abstract description 189
- 230000005540 biological transmission Effects 0.000 claims description 15
- 230000001360 synchronised effect Effects 0.000 claims description 13
- 238000013500 data storage Methods 0.000 claims description 12
- 238000000034 method Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 abstract description 23
- 238000004458 analytical method Methods 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 13
- 238000012360 testing method Methods 0.000 description 12
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000003786 synthesis reaction Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 3
- 239000013256 coordination polymer Substances 0.000 description 3
- 101150022075 ADR1 gene Proteins 0.000 description 2
- 101100490566 Arabidopsis thaliana ADR2 gene Proteins 0.000 description 2
- 101100269260 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ADH2 gene Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/355—Indexed addressing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/3834—Maintaining memory consistency
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microcomputers (AREA)
- Logic Circuits (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
で高パーフォーマンスのCPUコアを構築することがで
きるようにして、解析ロジックの省スペース化を図ると
共に、ロジック更新の度にハードウェア回路を組み替え
る必要をなくす。 【解決手段】 制御部が、命令を読み込み、この命令に
含まれるマイクロコードを構成する各ビットのオン/オ
フ情報を、制御線L1〜L5を介して各ビットに割り当
てられたレジスタ25,28,29やデータ・メモリ8
に直接伝達して、これらを制御するようにしたので、制
御部の行う処理を簡略化することができる。これによ
り、制御部を簡易な構成とすることができるので、FP
GA等の論理集積回路上に簡易なCPUコアを構築する
ことができる。
Description
器、家電製品等に組み込まれるフィールド・プログラマ
ブル・ゲート・アレイ(以下、FPGAと略す)、プロ
グラマブル・ロジック・デバイス(以下、PLDと略
す)等の再プログラミング可能な論理集積回路に係わ
り、特に、論理集積回路上にCPUコアを構築する技術
に関する。
元で機能を完成させる方式の論理集積回路では、複雑な
解析ロジックを構築する場合に、解析ロジックを直接ハ
ードウェア記述言語で記述して、そのロジックに該当す
るハードウェア回路を作成する方法が採用されていた。
これに対して、ASIC(Application Specific IC)の
分野では、CPUコアを有するシステムLSIの構成を
採るものが多く、複雑な解析処理については、CPUコ
ア内部のプログラムで処理する方式が採用されている。
ような従来の解析ロジックに相当するハードウェア回路
を作成する方式のFPGA又はPLDでは、複雑な解析
ロジックを構築する場合に、回路の規模が大きくなり、
また、プロトコル等の更新の頻繁なロジックの回路を構
築する場合には、ロジックを更新する度にハードウェア
回路を組み替える必要が生じる。また、上記のような従
来のASICに用いられているCPUコアをFPGA又
はPLDに直接組み込んだ場合には、ゲートの使用率が
大きくなり、また、FPGA又はPLD上におけるCP
Uコアの占有面積が大きくなる。さらにまた、従来のA
SICに用いられているCPUコアは、FPGA又はP
LD上の回路における内部配線遅延特性を考慮して作成
されていないため、FPGA又はPLD上に組み込まれ
た場合に、パーフォーマンスが低下して、動作スピード
が低速となるという問題があった。また、従来のCPU
コアには、3段パイプライン構成上で内部のプログラム
やデータの格納用のメモリを完全同期式メモリとした場
合に、メモリからレジスタへのロード命令と、同じレジ
スタからメモリへのストア命令を連続して実行すると、
メモリからレジスタへのデータの読み出しが、レジスタ
からメモリへのデータの書き込みに間に合わず、パイプ
ライン・ストールが生じるので、処理が低速になるとい
う問題があった。
になされたものであり、FPGAやPLD等の論理集積
回路上に簡易で高パーフォーマンスのCPUコアを構築
することができるようにして、論理集積回路上における
解析ロジックの省スペース化を図ることが可能で、ロジ
ックを更新する度にハードウェア回路を組み替える必要
のないFPGA又はPLD及びそのCPUコアのソース
を記録したコンピュータ読み取り可能な記録媒体を提供
することを目的とする。また、3段パイプライン構成上
で完全同期式メモリを採用した場合でも、パイプライン
・ストールが生じないようにして、CPUコアの処理の
高速化を図ることが可能な論理集積回路及びそのCPU
コアのソースを記録したコンピュータ読み取り可能な記
録媒体を提供することを目的とする。
に本発明は、CPUコアを有するフィールド・プログラ
マブル・ゲート・アレイ等の論理集積回路において、C
PUコアは、レジスタ、メモリ、及びこれらの制御部を
備え、CPUコアは、マイクロコードを含む命令を保有
し、制御部は、レジスタやメモリに対するイネーブル信
号出力用の制御線を有し、命令を読み込み、この命令に
含まれるマイクロコードを構成する各ビットのオン/オ
フ情報を制御線を介して各ビットに割り当てられたレジ
スタやメモリに伝達して、これらレジスタやメモリの状
態を制御するようにしたものである。
コードしてレジスタやメモリに対する制御信号を生成す
ることなく、命令中のマイクロコードを構成する各ビッ
トのオン/オフ情報を直接用いて、各ビットに対応した
レジスタやメモリの状態を制御するので、制御部の行う
処理を簡略化することができる。これにより、制御部を
簡易な構成とすることができる。
セスの際のアドレスポインタ用のレジスタを有し、制御
部は、アドレスポインタ用レジスタへのインクリメント
又はデクリメント指示用の制御線を有し、命令を読み込
み、この命令に含まれるマイクロコード中のアドレスポ
インタ用レジスタのインクリメント又はデクリメント指
示用のビットのオン/オフ情報を、指示用制御線を介し
てアドレスポインタ用レジスタへ伝達し、アドレスポイ
ンタ用レジスタは、制御部から指示用制御線を介してイ
ンクリメント又はデクリメント指示用のビットのオン情
報を受け取った場合に、保持しているアドレスの値をカ
ウント・アップ又はカウント・ダウンさせることが望ま
しい。このアドレスポインタ用レジスタを繰り返し利用
しながらメモリに対するアクセスを行うことにより、メ
モリ上の連続したアドレス空間のデータ処理を効率的に
行うことができる。
するフィールド・プログラマブル・ゲート・アレイ等の
論理集積回路において、CPUコアは、プログラム格納
用メモリ、データ格納用メモリ、及びこれらのメモリと
CPUコア全体との制御を行う制御部を備え、プログラ
ム格納用メモリ及びデータ格納用メモリは、完全同期式
メモリであり、制御部は、3段パイプライン構成での並
列処理を行い、通常のクロックよりも高速のクロックを
使用して、プログラム格納用メモリ及びデータ格納用メ
モリからのデータを読み込むものである。
ロックよりも高速のクロックを使用して、完全同期式メ
モリであるプログラム格納用メモリ及びデータ格納用メ
モリからのデータを読み込むので、通常のクロックを使
用してこれらのデータを読み込んだ場合と比べて、これ
らのメモリに格納された命令やデータの読み込みのタイ
ミングを早めることができる。これにより、例えば、デ
ータ格納用メモリからレジスタへのデータの読み出し命
令と、同じレジスタからデータ格納用メモリへのデータ
の書き込み命令が連続して実行された場合でも、データ
格納用メモリからレジスタへのデータの読み出しが、後
続するレジスタからデータ格納用メモリへのデータの書
き込みに間に合い、従って、3段パイプライン構成上で
完全同期式メモリを採用しているにも拘わらず、パイプ
ライン・ストールが生じないようにすることができる。
に備えると共に、メモリデータ入出力用のマルチプレク
サを介することなく、汎用レジスタへのデータ入出用の
マルチプレクサのみを介して汎用レジスタとメモリとを
接続するデータ伝送経路を持ち、このデータ伝送経路を
使用してメモリからのデータを汎用レジスタに入力する
ことが望ましい。これにより、汎用レジスタが、メモリ
データ入出力用のマルチプレクサを介することなく、汎
用レジスタ用のマルチプレクサのみを介してメモリから
のデータを入力することができるので、メモリから汎用
レジスタへのデータの読み込み処理の高速化を図ること
ができる。
に備えると共に、ALUを介することなく、メモリデー
タ入出力用のマルチプレクサのみを介して汎用レジスタ
とメモリとを接続するデータ伝送経路を持ち、このデー
タ伝送経路を使用してメモリへのデータを出力すること
が望ましい。これにより、汎用レジスタが、ALUを介
することなく、メモリデータ入出力用のマルチプレクサ
のみを介してメモリへのデータを出力することができる
ので、汎用レジスタからメモリへのデータの書き込み処
理の高速化を図ることができる。
力部が独立してアクセス可能なメモリであるFIFOか
らのデータ入力用のインタフェースが組み込まれたマル
チプレクサを有し、このマルチプレクサを介してFIF
Oからのデータを読み込むための命令を持つことが望ま
しい。これにより、このマルチプレクサにFIFOを接
続して、FIFOからのデータの読み込み命令を発する
ことで、FIFOのデータを容易にCPUコア内に読み
込むことができる。
いてのソースを記録したコンピュータ読み取り可能な記
録媒体であって、そのソースを、請求項1乃至請求項6
のいずれかに記載のフィールド・プログラマブル・ゲー
ト・アレイ等の論理集積回路上のCPUコアについての
ハードウェア記述言語レベルのソースとしたものであ
る。この構成においては、コンピュータにソースを読み
取らせることにより、上記と同様な作用を得ることがで
きる。
論理集積回路であるフィールド・プログラマブル・ゲー
ト・アレイ(以下、FPGAという)について図面を参
照して説明する。図1に本実施形態によるFPGAのC
PUコア周辺の構成を示す。FPGA1は、簡易なRI
SCプロセッサであるCPUコア2、再利用可能なマク
ロセルやメガセル等のIP(Intellectual Property )
3、マスタ・クロック4、及びCPUコア2の実機テス
トを行う際にデータや制御信号の流れをコントロールす
るASH(Adaptive Scan Handler:適用型走査処理部)
36より構成される。CPUコア2は、FPGA1上の
解析ロジックの規模を小さくするために組み込まれたI
Pの一種である。このCPUコア2は、命令の内容をデ
コードしてCPUコア2全体の制御を行うマイクロ・コ
ントローラ5、種々のレジスタやマルチプレクサから成
るデータパス6、CPUコア2の処理を記述したプログ
ラムを格納するプログラム・メモリ7、CPUコア2が
使用するデータを記憶するデータ・メモリ8、マイクロ
コード(レジスタ等の制御用のビット情報からなるコー
ド)に基づいてレジスタ等を制御するマイクロコード・
コントローラ9を含む。また、CPUコア2は、ASH
36からの制御信号に基づいてCPUコア2内部のレジ
スタ等に対するデータの入出力等を行うためのスキャン
・パス10を備えている。さらに、CPUコア2は、F
PGA1の内部又は外部で発生する割り込み信号を検出
してマイクロ・コントローラ5へ通知する割り込みコン
トローラ11、RS−232CインタフェースによりF
PGA1内部の通信を行うためのRS−232Cモジュ
ール12、CPUコア2の内部タイマであるタイマ1
3、マスタ・クロック4に基づいてデータパス6内のレ
ジスタ等に対するクロックを生成するクロック・ジェネ
レータ14を備えている。
プログラム・メモリ7に格納された命令中のマイクロコ
ードと第1オペコード(図9参照)を読み取り、マイク
ロ・コントローラ5は、上記プログラム・メモリ7に格
納された命令中のマイクロコード以外の部分を読み取
る。そして、これらマイクロ・コントローラ5とマイク
ロコード・コントローラ9の各々は、それぞれの読み取
った情報に基づいてデータパス6内の各種レジスタやマ
ルチプレクサの制御を行う。つまり、マイクロ・コント
ローラ5とマイクロコード・コントローラ9よりデータ
パス全体の制御部20が構成される。
明する。上記データパス6は、算術論理演算器(Arithm
etic Logic Unit:以下、ALUと略す)、プログラム・
カウンタ(Program Counter:以下、PCと略す)22、
フェッチ(Fetch)用の命令レジスタであるIRF(Inst
ruction Register for Fetch) 23、イグゼキュート
(Execute)用の命令レジスタであるIRE(Instructio
n Register for Execute) 24、データ・メモリ8等の
アドレスを示すために用いられるアドレスポインタ用レ
ジスタであるX−REG(X Register)25、Y−RE
G(Y Register)26、スタックポインタ(Stack Poin
ter:以下、SPと略す )27、汎用レジスタであるA−
REG(A Register)28、B−REG(B Register)
29、プログラム・メモリ7のアドレス用のマルチプレ
クサであるP−MUX(Program Counter Multiplexer)
30、データ・メモリ8のアドレス用のマルチプレクサ
であるSA−MUX(Sram Address Multiplexer) 3
1、データ・メモリ8に対するデータ入出力用のマルチ
プレクサであるDATA−MUX(Data Multiplexer)
32、汎用レジスタに対するデータ入出力用のマルチプ
レクサであるREG−MUX(Register Multiplexer)
33、ユーザがCPUコア2の外部に作成したFIFO
(First-In First-out)18に対するデータ入出力用の
マルチプレクサであるF−MUX(Fifo Multiplexer)
34、IP3に対するデータ入出力用のマルチプレクサ
であるIP−MUX(IP Multiplexer) 35より構成さ
れる。
化した配線経路の工夫がなされている。何故なら、一般
にASICやゲートアレイ(Gate Array) と比較して、
FPGAやPLD(Programmable Logic Device)の場合
は、内部配線遅延特性がシステムのパーフォーマンスに
大きな影響を与えるため、FPGA1上にCPUコア2
を構築する場合には、この点を考慮する必要があるから
である。以下に、CPUコア2上の汎用レジスタやデー
タ・メモリ8周辺の配線経路の工夫について説明する。
から汎用レジスタであるA−REG28にデータをロー
ドする際の配線経路に関する工夫について説明する。デ
ータ・メモリ8からA−REG28にデータをロードす
る際の配線経路(配線P1,P2より構成される配線経
路)は、データ・メモリ8を汎用レジスタ用のマルチプ
レクサであるREG−MUX33のみを介してA−RE
G28と結ぶものである。従来のASIC等のCPUコ
アの場合、通常、データ・メモリから汎用レジスタ(A
−REG28に相当)にデータをロードする際の配線経
路は、データ・メモリのデータ入出力用のマルチプレク
サ(DATA−MUX32に相当)と汎用レジスタ用の
マルチプレクサ(REG−MUX33に相当)を介して
データ・メモリを汎用レジスタと結ぶものであった。し
かし、FPGA1上でCPUコア2を構築する場合、デ
ータ・メモリ8からの出力データが、データ・メモリ8
用のマルチプレクサであるDATA−MUX32と汎用
レジスタ用のマルチプレクサであるREG−MUX33
の2つのマルチプレクサを通過すると、配線遅延の時間
が長くなる。従って、高速な処理を行う場合に、データ
・メモリ8からのデータをA−REG28に読み込むタ
イミング(マイクロコード・コントローラ9からA−R
EG28のLD端子へ出力されるイネーブル信号と、ク
ロック・ジェネレータ14からA−REG28へ送られ
るクロック信号により決定されるタイミング)に、デー
タ・メモリ8からA−REG28のDIN端子へのデー
タの出力が間に合わない。このため、上記のように、デ
ータ・メモリ8を、データ・メモリ用のマルチプレクサ
であるDATA−MUX32を介することなく、汎用レ
ジスタ用のマルチプレクサであるREG−MUX33の
みを介してA−REG28と結ぶ配線経路を設けて、こ
の配線経路を通してデータ・メモリ8からのデータをA
−REG28に読み込むことにより、配線遅延の時間を
短縮した。これにより、高速な処理を行う場合でも、デ
ータ・メモリ8からのデータをA−REG28に読み込
むタイミングに、データ・メモリ8からA−REG28
のDIN端子へのデータの出力が間に合うので、データ
・メモリ8からA−REG28へのデータの読み込み処
理(ロード処理)の高速化を図ることができる。上記の
説明では、汎用レジスタとしてA−REG28を用いた
場合について説明したが、汎用レジスタとしてB−RE
G29を用いた場合も同様である。
るA−REG28からデータ・メモリ8にデータをスト
アする際の配線経路に関する工夫について説明する。A
−REG28からデータ・メモリ8にデータをストアす
る際の配線経路(配線P3,P4より構成される配線経
路)は、A−REG28をデータ・メモリ用のマルチプ
レクサであるDATA−MUX32のみを介してデータ
・メモリ8と結ぶものである。従来のASIC等のCP
Uコアの場合、通常、汎用レジスタ(A−REG28に
相当)からデータ・メモリにデータをストアする際の配
線経路は、汎用レジスタをALUとデータ・メモリ用の
マルチプレクサ(DATA−MUX32に相当)とを介
してデータ・メモリと結ぶものであった。しかし、FP
GA1上でCPUコア2を構築する場合、汎用レジスタ
(A−REG28)からの出力データが、ALU21を
通過すると、配線遅延の時間が長くなる。従って、高速
な処理を行う場合に、データ・メモリ8の書き込みタイ
ミング(マイクロコード・コントローラ9からデータ・
メモリ8のWR端子へ出力されるWE(Write Enable)
信号と、クロック・ジェネレータ14からデータ・メモ
リ8へ送られるクロック信号とにより決定されるタイミ
ング)に、A−REG28からデータ・メモリ8のDI
N端子へのデータの出力が間に合わない。このため、上
記のように、A−REG28をALU21を介すること
なく、DATA−MUX32のみを介してデータ・メモ
リ8と結ぶ配線経路を設けて、この配線経路を通してA
−REG28からのデータをデータ・メモリ8に書き込
むことにより、配線遅延の時間を短縮した。これによ
り、高速な処理を行う場合でも、A−REG28からデ
ータ・メモリ8のDIN端子へのデータの出力が、デー
タ・メモリ8の書き込みタイミングに間に合うので、A
−REG28からデータ・メモリ8へのデータの書き込
み処理(ストア処理)の高速化を図ることができる。上
記の説明では、汎用レジスタとしてA−REG28を用
いた場合について説明したが、汎用レジスタとしてB−
REG29を用いた場合も同様である。
力命令やポストインクリメント命令等のデータ転送に便
利な命令を実現できる機構を採用している。先ず、図4
を参照して、FIFOからのデータ入力命令を実現する
ための機構について説明する。上述したように、CPU
コア2は、外部のFIFO18に対するデータ入力用の
マルチプレクサであるF−MUX34を有している。こ
のF−MUX34には、FIFOインタフェースが組み
込まれている。また、CPUコア2は、FIFO18に
対して読み込み用の制御信号を発することができる。C
PUコア2は、FIFO命令の実行時に、FIFO18
に対して読み込み用の制御信号を発し、F−MUX34
に組み込まれたFIFOインタフェースを用いて、FI
FO18からのデータを汎用レジスタであるA−REG
28,B−REG29に読み込む。F−MUX34の入
力ポート0〜3は、FIFO18からのデータの読み込
み以外にも、外部信号の入力や外部レジスタ41等から
の固定値の入力にも用いることができる。従って、CP
Uコア2は、FIFO命令を実行することで、外部信号
のモニタ等も行うことができる。
ント命令を実現するための機構について説明する。上述
したように、CPUコア2は、データ・メモリ8等のア
ドレスを示すために用いられるアドレスポインタ用レジ
スタであるX−REG25を有している。このX−RE
G25には、マイクロコード・コントローラ9からのイ
ンクリメント指示の受信用の制御線L5が接続されてい
る。また、X−REG25は、この制御線L5を介して
インクリメント指示の信号が入力された場合に、内部で
保持しているアドレスの値をカウント・アップさせる回
路を有している。マイクロコード・コントローラ9は、
プログラム・メモリ7中のポストインクリメント命令を
読み込むと、この命令中のマイクロコードのインクリメ
ント指示用のビットのオン情報(インクリメント指示信
号)を、制御線L5を介してX−REG25へ伝達す
る。X−REG25は、このインクリメント指示用のビ
ットのオン情報を受け取ると、内部で保持しているアド
レスの値に1を加算する。このX−REG25内部のア
ドレスの値は、データ・メモリ8のアドレス入力用のマ
ルチプレクサであるSA−MUX31を介してデータ・
メモリ8のアドレス入力用の端子であるADR端子に出
力される。従って、ポストインクリメント命令を繰り返
して用いることで、データ・メモリ8のアドレスに対応
したX−REG25の値を順次カウント・アップさせて
いくことができる。これにより、データ・メモリ8上の
連続したアドレス空間のデータを効率的に処理すること
ができる。
ア2に採用されている3段パイプライン構成上で完全同
期式メモリにアクセスする場合の処理の高速化を図るた
めの工夫について説明する。前述した図1に示すよう
に、CPUコア2は、プログラム格納用のプログラム・
メモリ7とデータ記憶用のデータ・メモリ8とを別個に
持つ。これらのメモリ7,8は、共に完全同期式メモリ
である。何故なら、非同期式メモリの場合は、回路の大
規模化・高速化に伴って、信号遅延の問題が大きくな
る。すなわち、メモリの回路構成によって、メモリにア
ドレスを指定してからメモリからのデータが出力される
までの時間に差がある。従って、プログラム・メモリ7
とデータ・メモリ8は、両方とも完全同期式メモリであ
ることが望ましい。しかし、3段パイプライン構成上で
これらのメモリ7,8を完全同期式メモリとすると、シ
ングルクロックでこれらのメモリにアクセスした場合
に、以下の問題が生じる。例えば、図6に示されるよう
に、データ・メモリ8上のADR1のアドレスのデータ
を図1のA−REG28にロードする命令(LDA命
令)と、このロード命令で読み出したA−REG28の
データをデータ・メモリ8上のADR2のアドレスにス
トアする命令(STA命令)とを連続して実行した場合
には、プログラム・メモリ7からのデータの読み込み
と、データ・メモリ8からのデータの読み込みとは、ク
ロックの立ち下がり時にしか行えないため、ロード命令
によるA−REG28の更新が、ストア命令によりA−
REG28のデータをデータ・メモリ8に書き込むタイ
ミングに間に合わない。すなわち、図1の制御部20
は、STA命令のコマンド解読のタイミングで、データ
・メモリ8へのデータ書き込み許可信号であるWE(Wr
ite Enable) 信号を出力し、このWE信号の出力中にク
ロックが立ち上がるタイミング(図中の矢印t8で示さ
れるタイミング)で、A−REG28のデータをデータ
・メモリ8に書き込むが、この時点では、A−REG2
8の内容はデータ・メモリ8上のADR1のアドレスの
データに更新されていない。従って、ストア命令の実行
により、データ・メモリ8のADR2のアドレスには、
ロード命令実行前のA−REG28のデータが書き込ま
れてしまう。
決するためには、図7に示されるように、上記のロード
命令(LDA命令)とストア命令(STA命令)との間
にNOP(No Operation) を挿入すれば、ロード命令に
よる図1のA−REG28の更新が、ストア命令により
A−REG28のデータをデータ・メモリ8に書き込む
タイミング(図中の矢印t10で示されるタイミング)
に間に合う。しかし、このようにNOPを挿入すると、
CPUコア2の処理が低速になる。
制御部20は、通常のクロックに加えて、4倍クロック
を使用して、プログラム・メモリ7とデータ・メモリ8
とに対するアクセスを行う。すなわち、図8に示される
ように、プログラム・メモリ7及びデータ・メモリ8か
らのデータの読み込みには4倍クロックを使用し、A−
REG28やデータ・メモリ8へのデータの書き込みに
はシングルクロックを使用する。また、データ・メモリ
8上のアドレスの計算処理をコマンド解読処理から2分
の1クロック遅らせる方式を採用している。これによ
り、NOPを挿入しなくても、ロード命令によるA−R
EG28の更新が、ストア命令によりA−REG28の
データをデータ・メモリ8に書き込むタイミング(図中
の矢印t7で示されるタイミング)に間に合うようにな
り、従って、CPUコア2の処理の高速化を図ることが
できる。
に採用されているマイクロ・コントローラ5を簡易な構
成とするための工夫について説明する。このCPUコア
2で用いられる命令51は、マイクロコード52、第1
オペコード53、第2オペコード54、及びアドレス/
即値データ55より構成される。この命令51の全体の
レングスは32ビットであり、その先頭8ビットがマイ
クロコード52に割り当てられている。このマイクロコ
ード52の各ビットのうちの先頭5ビット61〜65
は、データパス6中のレジスタやデータ・メモリ8の制
御に用いられる制御ビットCである。マイクロコード5
2中の各ビット61〜64は、それぞれA−REG2
8,データ・メモリ8,B−REG29,X−REG2
5に対応した書き込み制御用のビットであり、また、制
御ビット65は、X−REG25に対するインクリメン
ト指示用のビットである。図1で前述したマイクロコー
ド・コントローラ9は、A−REG28,B−REG2
9,X−REG25のLD端子、及びデータ・メモリ8
のWR端子との間にイネーブル信号出力用の制御線L1
〜L4を有しており、また、X−REG25のINC端
子との間にインクリメント指示信号出力用の制御線L5
を有している。マイクロコード・コントローラ9は、命
令51中のマイクロコード52の読み込み時に、マイク
ロコード52中の各制御ビット61〜64が1(オン)
であれば、各制御線L1〜L4を介して各制御ビット6
1〜64のそれぞれに対応したレジスタ25,28,2
9及びデータ・メモリ8に書き込み許可用のイネーブル
信号を送出するが、各制御ビット61〜64が0(オ
フ)の場合には、イネーブル信号を送出しない。また、
マイクロコード・コントローラ9は、マイクロコード5
2中の制御ビット65が1(オン)であれば、制御線L
5を介してX−REG25にインクリメント指示信号を
出力するが、制御ビット65が0(オフ)の場合には、
イネーブル信号を送出しない。これにより、マイクロコ
ード52中の各制御ビット61〜65のオン/オフ情報
をそのまま用いて、レジスタ25,28,29及びデー
タ・メモリ8を制御することができるので、従来、マイ
クロ・コントローラが、命令の内容を解読した上で行っ
ていた各種レジスタやメモリに対する制御の一部を、命
令の内容を解読することなく、容易に行うことができ
る。従って、マイクロ・コントローラ5が行う制御処理
から主要なレジスタやメモリに対する制御処理を除去す
ることができるので、マイクロ・コントローラ5の構成
を簡易にして、図1の制御部20全体の構成の簡易化を
図ることができる。
に組み込まれたシステムLSI上のCPUコアとは異な
り、システムLSIを構成するIPの仕様に応じて、C
PUコア2のアーキテクチャをカスタマイズすることが
でき、また、変更した内容に応じてCPUコア2のテス
トを行うことができる。このCPUコア2のカスタマイ
ズ及びテストは、パソコンを用いて行う。すなわち、C
PUコア2のカスタマイズに先立って、図11に示され
るCD−ROM73(請求項でいうコンピュータ読み取
り可能な記録媒体)からパソコン71に、CPUコア2
のソースと、CPUコア2のカスタマイズ及びテストを
行うためのツールをインストールしておき、このツール
を用いてCPUコア2のカスタマイズ及びテストを行
う。
ズ処理とカスタマイズ後のCPUコア2の検証処理の流
れを示す。ユーザは、ターゲットとなるIP3に応じ
て、CPUコア2の命令の追加、変更、削除の仕様を決
定し(#1)、この仕様に応じて、図12に示されるカ
スタマイズ画面81からCPUコア2のアーキテクチャ
の定義を行う(#2)。具体的には、カスタマイズ画面
81上のレジスタ定義用ウィンド82からCPUコア2
内の各種レジスタの追加、変更、削除を行い、また、命
令定義用ウィンド83から簡易言語を用いてCPUコア
2内の各種命令の追加、変更、削除を行う。そして、プ
ログラム・メモリ7に格納するプログラムを作成して
(#3)、パソコン71上でこのプログラムのシミュレ
ーション(オフライン・デバッグ)を行い(#4)、こ
のシミュレーションによる検証結果がOKでなければ
(#5でNO)、検証結果がOKになるまで(#5でY
ES)、プログラムの修正(#6)とシミュレーション
(#4)を繰り返す。そして、検証結果がOKになると
(#5でYES)、#2で定義したCPUコア2の内容
に応じたCPUコア2のVHDL(VHSIC Hardware Desc
ription Language)レベルのソースの生成(#7)と、
ターゲットとなるIP3のVHDLレベルのソースの生
成(#8)を行った後、これらのソースの論理合成を行
い(#9)、その論理合成結果をFPGA1にダウン・
ロードする(#10)。そして、論理合成結果をダウン
・ロードした後のFPGA1とパソコン71とを接続し
て、FPGA1上のCPUコア2についての実機テスト
(オンライン・デバッグ)を行う(#11)。
結果のダウン・ロード及びダウン・ロード後のCPUコ
ア2の実機テストについて説明する。パソコン71は、
インタフェース装置(ASAP:Adaptive Scan Agent
Pod )72を介してFPGA1と接続される。このAS
AP72は、TAP(Test Access Port)と呼ばれるバ
ウンダリ・スキャン・テスト用の専用端子を備えてお
り、パソコン71は、この専用端子を介してFPGA1
への論理合成結果のダウン・ロードや、FPGA1上の
CPUコア2の実機テストを行う。FPGA1は、IP
3やCPUコア2等のユーザ・ロジック回路のデバッグ
用モジュールであるASH36を有している。ユーザ
は、パソコン71からASAP72及びASH36を介
してFPGA1上のCPUコア2やIP3のレジスタや
メモリに対するデータの読み書きを行うことにより、C
PUコア2やIP3の実機テストを行うことができる。
パソコン71とASAP72との間のデータ伝送は、R
S−232Cインタフェースにより行われるが、ASA
P72とASH36の間のデータ伝送は、バウンダリ・
スキャン・テスト用のJTAGインタフェースにより行
われる。
A1によれば、図9で前述したように、CPUコア2の
命令がマイクロコード52を含み、マイクロコード・コ
ントローラ9が、命令を読み込んだ後に、マイクロコー
ドを構成する各ビットのオン/オフ情報を、制御線を介
して各ビットに割り当てられたレジスタ25,28,2
9やデータ・メモリ8に伝達して、これらを制御するよ
うにしたので、マイクロ・コントローラ5の行う処理を
簡略化することができる。また、CPUコア2内のレジ
スタや命令を図12で前述したカスタマイズ画面81か
ら削除・変更・追加することができるので、不要なレジ
スタ、命令等を削除したり、便利な命令を追加すること
により、マイクロ・コントローラ5の構成やその処理の
簡略化を行うことができる。これにより、FPGA1上
に簡易なCPUコア2を構築することができるので、従
来のASICに用いられているCPUコアをFPGA1
に直接組み込んだ場合と比較して、FPGA1上におけ
るCPUコア2の占有面積を小さくすることができる。
はなく、様々な変形が可能である。例えば、上記実施形
態では、マイクロ・コントローラ5とは別にマイクロコ
ード・コントローラ9を設けたが、マイクロコード・コ
ントローラ9の機能をマイクロ・コントローラ5に組み
込んで、これらを一体的に構成してもよい。また、上記
実施形態では、通常のクロックに加えて4倍クロックを
使用して、CPUコア2の処理の高速化を図ったが、使
用するクロックの速さの組み合わせはこれに限らない。
制御部がCPUコアの保有するマイクロコードを含む命
令を読み込み、この命令に含まれるマイクロコードを構
成する各ビットのオン/オフ情報を制御線を介して各ビ
ットに割り当てられたレジスタやメモリに伝達して、こ
れらレジスタやメモリの状態を制御するようにしたの
で、制御部の行う処理を簡略化することができ、従っ
て、制御部を簡易な構成とすることができると共に、フ
ィールド・プログラマブル・ゲート・アレイ等の論理集
積回路上に簡易なCPUコアを構築することができる。
また、従来のASICに用いられているCPUコアをフ
ィールド・プログラマブル・ゲート・アレイ等の論理集
積回路に直接組み込んだ場合と比較して、論理集積回路
上におけるCPUコアの占有面積を小さくすることがで
きる。さらにまた、従来の解析ロジックに相当するハー
ドウェア回路を作成する方式のフィールド・プログラマ
ブル・ゲート・アレイ等の論理集積回路に比べて、解析
ロジックの省スペース化を図ることができ、ロジックを
更新した場合でも、ハードウェア回路を組み替えること
なく、CPUコア内のプログラムの入れ替えだけで対応
することができる。
タとの間にインクリメント又はデクリメント指示用の制
御線を設けて、アドレスポインタ用レジスタが、この制
御線を介して制御部からのインクリメント又はデクリメ
ント指示用のビットのオン情報を受け取った場合に、こ
のレジスタの保持しているアドレスの値をカウント・ア
ップ又はカウント・ダウンさせることにより、このアド
レスポインタ用レジスタを用いて、メモリ上の連続した
アドレス空間のデータ処理を効率的に行うことができ
る。
通常のクロックよりも高速のクロックを使用して、完全
同期式メモリであるプログラム格納用メモリ及びデータ
格納用メモリからのデータを読み込むようにしたので、
通常のクロックを使用してこれらのデータを読み込んだ
場合と比べて、これらのメモリに格納された命令やデー
タの読み込みのタイミングを早めることができる。従っ
て、例えば、データ格納用メモリからレジスタへのデー
タの読み出し命令と、同じレジスタからデータ格納用メ
モリへのデータの書き込み命令が連続して実行された場
合でも、データ格納用メモリからレジスタへのデータの
読み出しを、レジスタからデータ格納用メモリへのデー
タの書き込みに間に合わせることができる。これによ
り、3段パイプライン構成上で完全同期式メモリを採用
しているにも拘わらず、パイプライン・ストールが生じ
ないようにすることができ、従って、CPUコアの処理
の高速化を図ることができる。
用のマルチプレクサを介することなく、汎用レジスタへ
のデータ入出用のマルチプレクサのみを介して汎用レジ
スタとメモリとを接続するデータ伝送経路を持ち、この
データ伝送経路を使用してメモリからのデータを汎用レ
ジスタに入力することにより、従来のメモリデータ入出
力用のマルチプレクサと汎用レジスタへのデータ入出用
のマルチプレクサの2段のマルチプレクサを介してメモ
リから汎用レジスタへのデータの読み込みを行うCPU
コアと比べて、汎用レジスタへのデータの読み込み処理
の高速化を図ることができる。
なく、メモリデータ入出力用のマルチプレクサのみを介
して汎用レジスタとメモリとを接続するデータ伝送経路
を持ち、このデータ伝送経路を使用してメモリへのデー
タを出力することにより、従来のALUとメモリデータ
入出力用のマルチプレクサを介して汎用レジスタからメ
モリへのデータの書き込みを行うCPUコアと比べて、
汎用レジスタからメモリへのデータの書き込み処理の高
速化を図ることができる。
力部が独立してアクセス可能なメモリであるFIFOか
らのデータ入力用のインタフェースが組み込まれたマル
チプレクサを有し、このマルチプレクサを介してFIF
Oからのデータを読み込むための命令を持つことによ
り、FIFOのデータを容易にCPUコア内に読み込む
ことができる。これにより、CPUコアが、FIFOを
介して論理集積回路内の異なるIP間のデータ転送を容
易に行うことができる。
ータにソースを読み取らせることにより、上記に記載の
発明と同等の効果を得ることができる。
CPUコア周辺の構成を示す図である。
レジスタにデータをロードする際の配線経路に関する説
明図である。
・メモリにデータをストアする際の配線経路に関する説
明図である。
タ入力命令を実現するための機構の説明図である。
ト命令を実現するための機構の説明図である。
メモリを採用したCPUコアでロード命令とストア命令
を続けて実行した場合におけるパイプライン制御の問題
点の説明図である。
御の問題点をロード命令とストア命令の間にNOPを挿
入することにより解決した場合におけるパイプライン制
御の説明図である。
御の問題点を通常のクロックに加えて4倍クロックを用
いてメモリにアクセスすることにより解決した場合にお
けるパイプライン制御の説明図である。
用いて簡易な構成とするための説明図である。
の処理を示すフローチャートである。
・ロードとCPUコアの実機テストを行うための構成図
である。
示す図である。
ト・アレイ) 2 CPUコア 7 プログラム・メモリ(プログラム格納用メモ
リ) 8 データ・メモリ(メモリ、データ格納用メモ
リ) 9 マイクロコード・コントローラ(レジスタ及び
メモリの制御部) 18 FIFO 20 制御部(全体の制御部) 21 ALU 25 X−REG(レジスタ、アドレスポインタ用レ
ジスタ) 26 Y−REG(アドレスポインタ用レジスタ) 28 A−REG(レジスタ、汎用レジスタ) 29 B−REG(レジスタ) 32 DATA−MUX(メモリデータ入出力用のマ
ルチプレクサ) 33 REG−MUX(汎用レジスタ用のマルチプレ
クサ) 34 F−MUX(FIFO用のインタフェースが組
み込まれたマルチプレクサ) 73 CD−ROM(コンピュータ読み取り可能な記
録媒体) L1〜L5 制御線(イネーブル信号出力用の制御線) L5 制御線(指示用制御線) P1,P2 配線(請求項4におけるデータ伝送経路を
構成する配線) P3,P4 配線(請求項5におけるデータ伝送経路を
構成する配線)
Claims (7)
- 【請求項1】 CPUコアを有するフィールド・プログ
ラマブル・ゲート・アレイ等の論理集積回路において、 前記CPUコアは、レジスタ、メモリ、及びこれらの制
御部を備え、 前記CPUコアは、マイクロコードを含む命令を保有
し、 前記制御部は、前記レジスタやメモリに対するイネーブ
ル信号出力用の制御線を有し、前記命令を読み込み、こ
の命令に含まれるマイクロコードを構成する各ビットの
オン/オフ情報を前記制御線を介して各ビットに割り当
てられたレジスタやメモリに伝達して、これらレジスタ
やメモリの状態を制御するようにしたことを特徴とする
論理集積回路。 - 【請求項2】 前記CPUコアは、前記メモリに対する
アクセスの際のアドレスポインタ用のレジスタを有し、 前記制御部は、前記アドレスポインタ用レジスタへのイ
ンクリメント又はデクリメント指示用の制御線を有し、
前記命令を読み込み、この命令に含まれるマイクロコー
ド中の前記アドレスポインタ用レジスタのインクリメン
ト又はデクリメント指示用のビットのオン/オフ情報を
前記指示用制御線を介して前記アドレスポインタ用レジ
スタへ伝達し、 前記アドレスポインタ用レジスタは、前記制御部から前
記指示用制御線を介してインクリメント又はデクリメン
ト指示用のビットのオン情報を受け取った場合に、保持
しているアドレスの値をカウント・アップ又はカウント
・ダウンさせることを特徴とする請求項1に記載の論理
集積回路。 - 【請求項3】 CPUコアを有するフィールド・プログ
ラマブル・ゲート・アレイ等の論理集積回路において、 前記CPUコアは、プログラム格納用メモリ、データ格
納用メモリ、及びこれらのメモリとCPUコア全体との
制御を行う制御部を備え、 前記プログラム格納用メモリ及びデータ格納用メモリ
は、完全同期式メモリであり、 前記制御部は、3段パイプライン構成での並列処理を行
い、通常のクロックよりも高速のクロックを使用して、
前記プログラム格納用メモリ及びデータ格納用メモリか
らのデータを読み込むことを特徴とする論理集積回路。 - 【請求項4】 前記CPUコアは、汎用レジスタをさら
に備えると共に、メモリデータ入出力用のマルチプレク
サを介することなく、前記汎用レジスタへのデータ入出
用のマルチプレクサのみを介して該汎用レジスタとメモ
リとを接続するデータ伝送経路を持ち、このデータ伝送
経路を使用して前記メモリからのデータを前記汎用レジ
スタに入力することを特徴とする請求項1又は請求項3
に記載の論理集積回路。 - 【請求項5】 前記CPUコアは、汎用レジスタをさら
に備えると共に、ALUを介することなく、メモリデー
タ入出力用のマルチプレクサのみを介して該汎用レジス
タとメモリとを接続するデータ伝送経路を持ち、このデ
ータ伝送経路を使用して前記メモリへのデータを出力す
ることを特徴とする請求項1又は請求項3に記載の論理
集積回路。 - 【請求項6】 前記CPUコアは、データの入力部と出
力部が独立してアクセス可能なメモリであるFIFOか
らのデータ入力用のインタフェースが組み込まれたマル
チプレクサを有し、このマルチプレクサを介して前記F
IFOからのデータを読み込むための命令を持つことを
特徴とする請求項1又は請求項3に記載の論理集積回
路。 - 【請求項7】 CPUコアについてのソースを記録した
コンピュータ読み取り可能な記録媒体であって、 前記ソースは、請求項1乃至請求項6のいずれかに記載
の論理集積回路上のCPUコアについてのハードウェア
記述言語レベルのソースであることを特徴とするCPU
コアのソースを記録したコンピュータ読み取り可能な記
録媒体。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000024826A JP2001216152A (ja) | 2000-01-28 | 2000-01-28 | 論理集積回路及びそのcpuコアのソースを記録したコンピュータ読み取り可能な記録媒体 |
EP01300691A EP1120707A3 (en) | 2000-01-28 | 2001-01-25 | Logic integrated circuit having a CPU core |
US09/772,027 US6928532B2 (en) | 2000-01-28 | 2001-01-29 | Logic integrated circuit, and recording medium readable by a computer, which stores a source of CPU core on said logic integrated circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000024826A JP2001216152A (ja) | 2000-01-28 | 2000-01-28 | 論理集積回路及びそのcpuコアのソースを記録したコンピュータ読み取り可能な記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001216152A true JP2001216152A (ja) | 2001-08-10 |
Family
ID=18550756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000024826A Pending JP2001216152A (ja) | 2000-01-28 | 2000-01-28 | 論理集積回路及びそのcpuコアのソースを記録したコンピュータ読み取り可能な記録媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6928532B2 (ja) |
EP (1) | EP1120707A3 (ja) |
JP (1) | JP2001216152A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006509293A (ja) * | 2002-11-27 | 2006-03-16 | シンボル テクノロジーズ インコーポレイテッド | ポータブルコンピュータ内の災害時リカバリポート |
JP2006510332A (ja) * | 2002-12-13 | 2006-03-23 | ザイリンクス インコーポレイテッド | 集積回路のプログラマブル論理の再構成 |
JP2009014724A (ja) * | 2007-07-02 | 2009-01-22 | Tsinghua Univ | 放射結像システム |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004087867A (ja) * | 2002-08-28 | 2004-03-18 | Renesas Technology Corp | 半導体集積回路装置 |
US20050166170A1 (en) * | 2004-01-26 | 2005-07-28 | Payman Zarkesh-Ha | Field programmable platform array |
US7635987B1 (en) * | 2004-12-13 | 2009-12-22 | Massachusetts Institute Of Technology | Configuring circuitry in a parallel processing environment |
US9946667B2 (en) * | 2008-11-12 | 2018-04-17 | Microchip Technology Incorporated | Microcontroller with configurable logic array |
US10042729B2 (en) * | 2016-04-01 | 2018-08-07 | Intel Corporation | Apparatus and method for a scalable test engine |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5971547A (ja) * | 1982-10-18 | 1984-04-23 | Nec Corp | マイクロプログラム制御方式 |
JPS6149263A (ja) * | 1984-08-16 | 1986-03-11 | Sanyo Electric Co Ltd | 情報処理モジユ−ル |
JPS61175580A (ja) * | 1985-01-31 | 1986-08-07 | Hitachi Ltd | アルゴリズミツクパタ−ン発生装置 |
JPS63308411A (ja) * | 1987-03-06 | 1988-12-15 | アルテラ・コーポレーシヨン | プログラマブル集積回路デバイス |
JPS647130A (en) * | 1987-06-30 | 1989-01-11 | Matsushita Electric Ind Co Ltd | Instruction prefetch method for memory system |
JPS6429932A (en) * | 1987-07-27 | 1989-01-31 | Mitsubishi Electric Corp | Address control system for signal processing |
JPH0187456U (ja) * | 1987-12-02 | 1989-06-09 | ||
JPH01156825A (ja) * | 1987-12-15 | 1989-06-20 | Mitsubishi Electric Corp | 信号処理用アドレス生成方式 |
JPH01169669A (ja) * | 1987-12-25 | 1989-07-04 | Yokogawa Medical Syst Ltd | 高速数値演算装置 |
WO1991011765A1 (en) * | 1990-01-29 | 1991-08-08 | Teraplex, Inc. | Architecture for minimal instruction set computing system |
JPH03217161A (ja) * | 1990-01-23 | 1991-09-24 | Canon Inc | 画像読取装置 |
JPH0410031A (ja) * | 1990-04-27 | 1992-01-14 | Nec Corp | マイクロプログラム制御装置 |
JPH04227540A (ja) * | 1990-04-04 | 1992-08-17 | Hitachi Ltd | 演算処理装置及びディジタル信号処理プロセッサ |
JPH04283812A (ja) * | 1990-09-19 | 1992-10-08 | Philips Gloeilampenfab:Nv | マイクロプロセッサのプログラムの実行を反復減速する回路配置 |
JPH052481A (ja) * | 1990-11-26 | 1993-01-08 | Toshiba Corp | 演算制御回路 |
JPH09319651A (ja) * | 1996-03-22 | 1997-12-12 | Matsushita Electric Ind Co Ltd | シングルチップ・マイクロコンピュータ |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5574930A (en) * | 1994-08-12 | 1996-11-12 | University Of Hawaii | Computer system and method using functional memory |
JPH09282163A (ja) | 1996-04-16 | 1997-10-31 | Nippon Telegr & Teleph Corp <Ntt> | ダブルインストラクションフェッチプロセッサ |
EP0926589A1 (en) * | 1997-12-24 | 1999-06-30 | STMicroelectronics S.r.l. | Processor having internal control instructions |
GB2352548B (en) * | 1999-07-26 | 2001-06-06 | Sun Microsystems Inc | Method and apparatus for executing standard functions in a computer system |
-
2000
- 2000-01-28 JP JP2000024826A patent/JP2001216152A/ja active Pending
-
2001
- 2001-01-25 EP EP01300691A patent/EP1120707A3/en not_active Withdrawn
- 2001-01-29 US US09/772,027 patent/US6928532B2/en not_active Expired - Lifetime
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5971547A (ja) * | 1982-10-18 | 1984-04-23 | Nec Corp | マイクロプログラム制御方式 |
JPS6149263A (ja) * | 1984-08-16 | 1986-03-11 | Sanyo Electric Co Ltd | 情報処理モジユ−ル |
JPS61175580A (ja) * | 1985-01-31 | 1986-08-07 | Hitachi Ltd | アルゴリズミツクパタ−ン発生装置 |
JPS63308411A (ja) * | 1987-03-06 | 1988-12-15 | アルテラ・コーポレーシヨン | プログラマブル集積回路デバイス |
JPS647130A (en) * | 1987-06-30 | 1989-01-11 | Matsushita Electric Ind Co Ltd | Instruction prefetch method for memory system |
JPS6429932A (en) * | 1987-07-27 | 1989-01-31 | Mitsubishi Electric Corp | Address control system for signal processing |
JPH0187456U (ja) * | 1987-12-02 | 1989-06-09 | ||
JPH01156825A (ja) * | 1987-12-15 | 1989-06-20 | Mitsubishi Electric Corp | 信号処理用アドレス生成方式 |
JPH01169669A (ja) * | 1987-12-25 | 1989-07-04 | Yokogawa Medical Syst Ltd | 高速数値演算装置 |
JPH03217161A (ja) * | 1990-01-23 | 1991-09-24 | Canon Inc | 画像読取装置 |
WO1991011765A1 (en) * | 1990-01-29 | 1991-08-08 | Teraplex, Inc. | Architecture for minimal instruction set computing system |
JPH04227540A (ja) * | 1990-04-04 | 1992-08-17 | Hitachi Ltd | 演算処理装置及びディジタル信号処理プロセッサ |
JPH0410031A (ja) * | 1990-04-27 | 1992-01-14 | Nec Corp | マイクロプログラム制御装置 |
JPH04283812A (ja) * | 1990-09-19 | 1992-10-08 | Philips Gloeilampenfab:Nv | マイクロプロセッサのプログラムの実行を反復減速する回路配置 |
JPH052481A (ja) * | 1990-11-26 | 1993-01-08 | Toshiba Corp | 演算制御回路 |
JPH09319651A (ja) * | 1996-03-22 | 1997-12-12 | Matsushita Electric Ind Co Ltd | シングルチップ・マイクロコンピュータ |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006509293A (ja) * | 2002-11-27 | 2006-03-16 | シンボル テクノロジーズ インコーポレイテッド | ポータブルコンピュータ内の災害時リカバリポート |
JP2011258219A (ja) * | 2002-11-27 | 2011-12-22 | Symbol Technologies Inc | コンピューティングデバイス |
JP2006510332A (ja) * | 2002-12-13 | 2006-03-23 | ザイリンクス インコーポレイテッド | 集積回路のプログラマブル論理の再構成 |
JP2009014724A (ja) * | 2007-07-02 | 2009-01-22 | Tsinghua Univ | 放射結像システム |
Also Published As
Publication number | Publication date |
---|---|
US6928532B2 (en) | 2005-08-09 |
EP1120707A3 (en) | 2004-03-24 |
EP1120707A2 (en) | 2001-08-01 |
US20010011345A1 (en) | 2001-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100573445C (zh) | 将一个处理器与一个协处理器相接口的方法 | |
US4879646A (en) | Data processing system with a pipelined structure for editing trace memory contents and tracing operations during system debugging | |
US5510740A (en) | Method for synchronizing clocks upon reset | |
US8412918B1 (en) | Booting mechanism for FPGA-based embedded system | |
US20060059286A1 (en) | Multi-core debugger | |
US5664153A (en) | Page open/close scheme based on high order address bit and likelihood of page access | |
Brunvand | The NSR processor | |
US7054802B2 (en) | Hardware-assisted design verification system using a packet-based protocol logic synthesized for efficient data loading and unloading | |
EP0942373B1 (en) | Adapter device with a local memory and method for processor emulation | |
US20080040700A1 (en) | Behavioral synthesizer, debugger, writing device and computer aided design system and method | |
KR100354932B1 (ko) | 멀티플렉싱버스상에쇼사이클을제공하는방법및데이타프로세서 | |
JP2001216152A (ja) | 論理集積回路及びそのcpuコアのソースを記録したコンピュータ読み取り可能な記録媒体 | |
US7409670B1 (en) | Scheduling logic on a programmable device implemented using a high-level language | |
US7346863B1 (en) | Hardware acceleration of high-level language code sequences on programmable devices | |
US7370311B1 (en) | Generating components on a programmable device using a high-level language | |
US5155838A (en) | Computer system with emulation mechanism | |
US6457124B1 (en) | Microcomputer having address diversion means for remapping an on-chip device to an external port | |
David et al. | Self-timed architecture of a reduced instruction set computer | |
US11106846B1 (en) | Systems and methods for emulation data array compaction | |
US20070038435A1 (en) | Emulation method, emulator, computer-attachable device, and emulator program | |
JP2563708B2 (ja) | マイクロプロセッサ装置およびそれを用いたエミュレータ装置 | |
US11048843B1 (en) | Dynamic netlist modification of compacted data arrays in an emulation system | |
US6457149B1 (en) | Semiconductor integrated circuit and semiconductor integrated circuit test method | |
KR100214644B1 (ko) | 프로세서의 메모리 다중 액세스 회로 | |
Tse et al. | ASYNMPU: a fully asynchronous CISC microprocessor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100309 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100506 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110201 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110726 |