JP2008065734A - レジスタファイルの書き込み/読み出し方式 - Google Patents

レジスタファイルの書き込み/読み出し方式 Download PDF

Info

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
Application number
JP2006245181A
Other languages
English (en)
Inventor
Fumihiko Mori
文彦 森
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.)
Meidensha Corp
Meidensha Electric Manufacturing Co Ltd
Original Assignee
Meidensha Corp
Meidensha Electric Manufacturing Co 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 Meidensha Corp, Meidensha Electric Manufacturing Co Ltd filed Critical Meidensha Corp
Priority to JP2006245181A priority Critical patent/JP2008065734A/ja
Publication of JP2008065734A publication Critical patent/JP2008065734A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】FPGA等で構成するマイクロプロセッサのレジスタファイルを、単一アドレスポートのRAMを使用して実現する。
【解決手段】レジスタファイルは、単一アドレスポートの非同期式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の出力データを一時ラッチするフリップフロップ回路と、
を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
(2)FPGAやASICでマイクロプロセッサまたはマイクロコントローラを構成し、マイクロプロセッサまたはマイクロコントローラの演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式であって、
前記レジスタファイルは、
単一アドレスポートの同期式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 マルチプレクサ

Claims (2)

  1. FPGAやASICでマイクロプロセッサまたはマイクロコントローラを構成し、マイクロプロセッサまたはマイクロコントローラの演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式であって、
    前記レジスタファイルは、
    単一アドレスポートの非同期式RAMと、
    パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
    前記切り替えに同期して、前記RAMの出力データを一時ラッチするフリップフロップ回路と、
    を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
  2. FPGAやASICでマイクロプロセッサまたはマイクロコントローラを構成し、マイクロプロセッサまたはマイクロコントローラの演算部の演算データを一時記憶するためのレジスタファイルの書き込み/読み出し方式であって、
    前記レジスタファイルは、
    単一アドレスポートの同期式RAMと、
    パイプラインのステージ毎に、前記RAMのリードアドレスとライトアドレスを切り替えるマルチプレクサと、
    を備えたことを特徴とするレジスタファイルの書き込み/読み出し方式。
JP2006245181A 2006-09-11 2006-09-11 レジスタファイルの書き込み/読み出し方式 Pending JP2008065734A (ja)

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)

* Cited by examiner, † Cited by third party
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 半導体集積回路

Patent Citations (2)

* Cited by examiner, † Cited by third party
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