JP2008065734A - レジスタファイルの書き込み/読み出し方式 - Google Patents
レジスタファイルの書き込み/読み出し方式 Download PDFInfo
- Publication number
- JP2008065734A JP2008065734A JP2006245181A JP2006245181A JP2008065734A JP 2008065734 A JP2008065734 A JP 2008065734A JP 2006245181 A JP2006245181 A JP 2006245181A JP 2006245181 A JP2006245181 A JP 2006245181A JP 2008065734 A JP2008065734 A JP 2008065734A
- Authority
- JP
- Japan
- Prior art keywords
- ram
- register file
- address
- microprocessor
- reading system
- 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
Images
Abstract
【課題】FPGA等で構成するマイクロプロセッサのレジスタファイルを、単一アドレスポートのRAMを使用して実現する。
【解決手段】レジスタファイルは、単一アドレスポートの非同期式RAM11と、パイプラインのステージ毎に、RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサ12と、切り替えに同期してRAMの出力データを一時ラッチするフリップフロップ回路13とで構成する。
レジスタファイルを、単一アドレスポートの同期式RAMと、パイプラインのステージ毎にRAMのリードアドレスとライトアドレスを切り替えるマルチプレクサとする構成も含む。
【選択図】図1
【解決手段】レジスタファイルは、単一アドレスポートの非同期式RAM11と、パイプラインのステージ毎に、RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサ12と、切り替えに同期してRAMの出力データを一時ラッチするフリップフロップ回路13とで構成する。
レジスタファイルを、単一アドレスポートの同期式RAMと、パイプラインのステージ毎にRAMのリードアドレスとライトアドレスを切り替えるマルチプレクサとする構成も含む。
【選択図】図1
Description
本発明は、FPGAやASICで実現するマイクロプロセッサ(マイクロコントローラ)に係り、特に演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式に関する。
FPGAやASICで実現するマイクロプロセッサやマイクロコントローラは、その演算部で演算の結果を一時記憶するために、FPGA等にはレジスタファイルが構成される。このレジスタファイルは、図4にブロック構成で示すように、RAM31で構成され、演算部が演算に使うデータを読み出し、演算部の演算結果データを書き込むのに利用される。
図4のRAM31は2ポートRAM構成とされ、Dが書き込みポート、Qが読み出しポート、WAが書き込みアドレス、RAが読み出しアドレスとなっている。読み出し、書き込み動作は互いにセパレートしたポートを有している(例えば、特許文献1参照)。
図5は、書き込み/読み出しのタイムチャートを示し、ステージ1は、アドレス1にデータAAを書き込むと共に、アドレス2の内容BBを読み出している。ステージ2は、アドレス2にCCを書き込み、アドレス1の内容AAを読み出している。このようにレジスタファイルはパイプライン動作を行う。
特開2000−207273号
マイクロプロセッサやマイクロコントローラをASICやFPGAで実現する場合、図4の構成はレジスタファイルにリード用とライト用の別々のアドレスポートを持つ2ポートRAM31を用いているので、シンプルに構成できる。
反面、このタイプのRAMは、単一アドレスポートのRAMに比べ内部ゲートを多く必要とするため、チップのゲート規模や消費電力の面で不利になる。さらに、使用するASICやFPGAによっては、リード/ライト用の別々のアドレスポートを持つ2ポートRAMが使えない場合もある。
本発明の目的は、上記の課題を解決したレジスタファイルの書き込み/読み出し方式を提供することにある。
本発明は、前記の課題を解決するため、単一アドレスポートのRAMを使用し、パイプラインの各ステージでリードアドレスとライトアドレスをマルチプレクサで切り替えてデータ書き込み/読み出しを行うようにしたもので、以下の方式を特徴とする。
(1)FPGAやASICでマイクロプロセッサまたはマイクロコントローラを構成し、マイクロプロセッサまたはマイクロコントローラの演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式であって、
前記レジスタファイルは、
単一アドレスポートの非同期式RAMと、
パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
前記切り替えに同期して、前記RAMの出力データを一時ラッチするフリップフロップ回路と、
を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
前記レジスタファイルは、
単一アドレスポートの非同期式RAMと、
パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
前記切り替えに同期して、前記RAMの出力データを一時ラッチするフリップフロップ回路と、
を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
(2)FPGAやASICでマイクロプロセッサまたはマイクロコントローラを構成し、マイクロプロセッサまたはマイクロコントローラの演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式であって、
前記レジスタファイルは、
単一アドレスポートの同期式RAMと、
パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
前記レジスタファイルは、
単一アドレスポートの同期式RAMと、
パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
以上のとおり、本発明によれば、リード/ライト用の別々のアドレスポートを持つ2ポートRAMを使うことなく、レジスタファイルを実現するため、マイクロプロセッサ等の構成にASIC/FPGAを選択する上での制限が緩和できる。
また、リード/ライト用の別々のアドレスポートを持つ2ポートRAMの代わりに、単一アドレスポートのRAMを用いてレジスタファイルを実現するので、ゲート数削減と低消費電力化できる。
また、ASIC/FPGAが内蔵するRAMは非同期式と同期式の両方が使用できる。
図1は、本発明の実施形態を示すレジスタファイルの構成図であり、図2にデータ書き込み/読み出しのタイムチャートを示す。
本実施形態は、単一アドレスポートのRAM11、リードアドレスRAとライトアドレスWAを切り替えるマルチプレクサ12、RAM11の出力データを一時ラッチするフリップフロップ回路13で構成する。なお、RAM11は非同期式のものを使用できる。
マルチプレクサ12はCLK(クロック)が「H」のときリードアドレスRAを出力し、「L」のときライトアドレスWAを出力する。フリップフロップ回路13はCLKの立ち下がりエッジでラッチする。
この構成において、図2に示すように、1回のパイプラインステージで、前半は、RAM11にリードアドレスRAを与え、このアドレスに指し示されるデータをステージの中央になるCLKの立ち下がりでラッチする。後半は、RAM11にライトアドレスWAを与え、このアドレスに指し示す番地に、データDの内容をCLKの立ち上がりで書き込む。
したがって、リード/ライト用の別々のアドレスポートを持つ2ポートRAMの代わりに、単一アドレスポートのRAMを用いてレジスタファイルを実現できる。
図3は、本発明の他の実施形態示すレジスタファイルの構成図であり、データ書き込み/読み出しのタイムチャートは図2と同様になる。
本実施形態は、単一アドレスポートのRAM21、リードアドレスとライトアドレスを切り替えるマルチプレクサ22で構成する。なお、RAM21は同期式のものとする。
マルチプレクサ22はCLKが「H」のときリードアドレスRAを出力し、「L」のときライトアドレスWAを出力する。RAM21はCLKの立ち下がりエッジに同期して出力を変化させる。
この構成において、1回のパイプラインステージで、前半は、RAM21にリードアドレスRAを与え、このアドレスに指し示されるデータをステージの中央になるCLKの立ち下がりでラッチする、後半は、RAM21にライトアドレスWAを与え、このアドレスに指し示す番地に、データDの内容をCLKの立ち上がりで書き込む。
したがって、リード/ライト用の別々のアドレスポートを持つ2ポートRAMの代わりに、単一アドレスポートのRAMを用いてレジスタファイルを実現できる。
11 RAM(非同期式)
12 マルチプレクサ
13 フリップフロップ
21 RAM(同期式)
22 マルチプレクサ
12 マルチプレクサ
13 フリップフロップ
21 RAM(同期式)
22 マルチプレクサ
Claims (2)
- FPGAやASICでマイクロプロセッサまたはマイクロコントローラを構成し、マイクロプロセッサまたはマイクロコントローラの演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式であって、
前記レジスタファイルは、
単一アドレスポートの非同期式RAMと、
パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
前記切り替えに同期して、前記RAMの出力データを一時ラッチするフリップフロップ回路と、
を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。 - FPGAやASICでマイクロプロセッサまたはマイクロコントローラを構成し、マイクロプロセッサまたはマイクロコントローラの演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式であって、
前記レジスタファイルは、
単一アドレスポートの同期式RAMと、
パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006245181A JP2008065734A (ja) | 2006-09-11 | 2006-09-11 | レジスタファイルの書き込み/読み出し方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006245181A JP2008065734A (ja) | 2006-09-11 | 2006-09-11 | レジスタファイルの書き込み/読み出し方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008065734A true JP2008065734A (ja) | 2008-03-21 |
Family
ID=39288380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006245181A Pending JP2008065734A (ja) | 2006-09-11 | 2006-09-11 | レジスタファイルの書き込み/読み出し方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008065734A (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62286128A (ja) * | 1986-05-16 | 1987-12-12 | インテル・コ−ポレ−シヨン | データプロセッサ |
JPH0784987A (ja) * | 1993-06-28 | 1995-03-31 | Hitachi Ltd | 半導体集積回路 |
-
2006
- 2006-09-11 JP JP2006245181A patent/JP2008065734A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62286128A (ja) * | 1986-05-16 | 1987-12-12 | インテル・コ−ポレ−シヨン | データプロセッサ |
JPH0784987A (ja) * | 1993-06-28 | 1995-03-31 | Hitachi Ltd | 半導体集積回路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ATE532182T1 (de) | Erfassung von lesedaten in einem synchrondatenspeicher | |
KR20000022699A (ko) | 동기화된 독출 포인터 및 기록 포인터를 갖는 2중 포트fifo | |
JP2008077813A (ja) | マルチポートメモリ装置 | |
US7405995B2 (en) | Semiconductor storage device | |
TWI276111B (en) | Method and circuit for controlling operation mode of PSRAM | |
US6240031B1 (en) | Memory architecture | |
US7443762B2 (en) | Synchronization circuit for a write operation on a semiconductor memory | |
US6400642B1 (en) | Memory architecture | |
CN110097902B (zh) | 针对同一端口的读写控制模块及方法、双端口存储器 | |
JP2008065734A (ja) | レジスタファイルの書き込み/読み出し方式 | |
US9191002B2 (en) | Data processing apparatus and method in PLC system | |
KR20120106145A (ko) | 어드레스 변환 회로 및 이를 포함하는 반도체 메모리 장치 | |
US7672177B2 (en) | Memory device and method thereof | |
KR100343831B1 (ko) | 반도체메모리 | |
JP2009124532A (ja) | 半導体集積回路 | |
JP5499131B2 (ja) | デュアルポートメモリおよびその方法 | |
JP2011065415A (ja) | 非同期バス・インタフェース回路 | |
KR100318264B1 (ko) | 패킷명령어 구동형 메모리소자의 로드신호 발생회로 | |
US11562775B2 (en) | Semiconductor device | |
KR100475093B1 (ko) | 둘 이상의 입력포트를 구비하는 집적 회로 장치 및 시스템 | |
JP2006012235A (ja) | 記憶装置 | |
JP2006172672A (ja) | Fifoメモリ | |
KR20040006728A (ko) | 레지스터 뱅크 | |
Arora et al. | Handling multiple clocks | |
Camilleri | Data-width Conversion FIFOs using the virtex-II block RAM memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20090709 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A977 | Report on retrieval |
Effective date: 20110801 Free format text: JAPANESE INTERMEDIATE CODE: A971007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110906 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120110 |