JP4614500B2 - メモリアクセス制御装置 - Google Patents

メモリアクセス制御装置 Download PDF

Info

Publication number
JP4614500B2
JP4614500B2 JP2000139859A JP2000139859A JP4614500B2 JP 4614500 B2 JP4614500 B2 JP 4614500B2 JP 2000139859 A JP2000139859 A JP 2000139859A JP 2000139859 A JP2000139859 A JP 2000139859A JP 4614500 B2 JP4614500 B2 JP 4614500B2
Authority
JP
Japan
Prior art keywords
memory
data
queue
address
transmitting
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.)
Expired - Fee Related
Application number
JP2000139859A
Other languages
English (en)
Other versions
JP2001318825A (ja
Inventor
康弘 大場
正実 山崎
武 豊山
正治 今井
良典 武内
暁 北嶋
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 JP2000139859A priority Critical patent/JP4614500B2/ja
Priority to US09/753,838 priority patent/US20010042143A1/en
Publication of JP2001318825A publication Critical patent/JP2001318825A/ja
Application granted granted Critical
Publication of JP4614500B2 publication Critical patent/JP4614500B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
    • G06F13/1631Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests through address comparison

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はメモリアクセス制御装置に関し、特にメモリにアクセスして演算を行うメモリアクセス制御装置に関する。
【0002】
【従来の技術】
従来、データ通信のシステムでは、演算処理を行うCPUと、データを格納する主記憶部としてのメモリとが含まれており、CPUでは、メモリへのアクセス制御を行って、演算処理を実行している。
【0003】
図25はCPUの演算処理の動作の流れを示す図である。イベントの発生と、CPUが行う演算処理との関係を時系列上で表したものである。イベントAが発生すると、そのイベントAに関する演算処理が開始される。そして、T時間経過後にイベントBが発生し、そのイベントBに関する演算処理が開始され、以降同様に続く。ここで、CPUでの演算処理は、以下のような順で行われる。
〔S100〕どのデータに対してどのような演算を行うかの判断や、そのデータが格納されているメモリアドレスの認識等を含む前処理を行う。
〔S101〕求めたメモリのアドレスから該当するデータを読み出す。
〔S102〕そのデータに対して加算演算などの演算処理を実行する。
〔S103〕演算結果をメモリへ書き込む。
【0004】
このように、従来のCPUの処理は、メモリからデータをリードして演算し、その演算結果をメモリへ書き込むといった、一連の演算処理を順に繰り返すことにより、必要な機能を実現していた。
【0005】
【発明が解決しようとする課題】
しかし、上記のような従来のCPUの処理では、ある1つのイベントによる演算処理が終了しないと、次のイベントによる演算処理が実行できないといった問題があった。
【0006】
図26は複数データの演算処理の動作の流れを示す図である。イベントの発生と、CPUが行う演算処理との関係を時系列上で表したもので、2つのデータの更新処理を行う場合を示している。
【0007】
イベントAが発生すると、そのイベントAに関するデータ(データd1とデータd2とする)の演算処理が開始される。演算処理は、以下のような順で行われる。
〔S110〕どのデータに対してどのような演算を行うかの判断や、そのデータが格納されているメモリアドレスの認識等を含む前処理を行う。
〔S111〕求めたメモリのアドレスからデータd1を読み出す。
〔S112〕求めたメモリのアドレスからデータd2を読み出す。
〔S113〕データd1に対して加算演算などの演算処理を実行する。
〔S114〕データd2に対して加算演算などの演算処理を実行する。
〔S115〕ステップS113の演算結果をメモリへ書き込む。
〔S116〕ステップS114の演算結果をメモリへ書き込む。
【0008】
このように従来では、1つのイベントで複数データの演算処理を行って、処理時間がT時間を越えてしまうと、イベントBがT時間経過後に発生した場合、イベントAによる演算処理が終了していないため、イベントBに対する演算処理を実行することができなかった。このため、処理効率が悪く、また動作品質の低下を引き起こすといった問題があった。
【0009】
図27はパイプラインによる演算処理の動作の流れを示す図である。イベントの発生と、CPUが行う演算処理との関係を、パイプラインによる時系列上で表している。
〔S120〕イベントAの発生時、イベントAに関するデータの前処理を行う。
〔S121〕イベントBの発生時、イベントBに関するデータの前処理を行う。さらに、イベントAに関するデータ読み出しを行う。
〔S122〕イベントBに関するデータ読み出しを行う。さらに、イベントAに関するデータ更新演算を行う
〔S123〕イベントCの発生時、イベントCに関するデータの前処理を行う。以降、図に示すような順で処理が行われる。
【0010】
ここで、イベントBが、イベントAによって更新された更新後のデータを処理する場合、ステップS122のように、イベントAによるデータ更新中に、イベントBによるデータ読み出しが行われる際には、イベントBによる演算結果が正しい値とならず、エラーが生じてしまう(パイプラインハザードという)。
【0011】
このように、CPUの処理をパイプライン化させた場合には、全体のスループットは向上できるが、連続して同一のデータにメモリアクセスすると、パイプラインハザードが発生してしまうといった問題があった。
【0012】
一方、近年では、データ、音声、動画などからなるマルチメディア通信を、それぞれの速度や品質に合わせてユーザに提供するコネクション型通信のATM(Asynchronous Transfer Mode)通信の開発が進んでいる。
【0013】
ATM通信システムでは、多数のコネクションを扱うので大容量のメモリが必要であり、さらに、膨大なデータを扱うためにシステム処理の大半をメモリアクセスが占有することになる。
【0014】
したがって、ATM通信システムの、受信ATMセル数の計数やOAM(Operation And Maintenance)性能管理機能の統計処理、または転送ATMセル数にもとづく課金処理等に対して、図25で説明したような従来の処理を適用しようとすると、これらATMに関する処理は高速処理(実時間処理)が要求されるため、上述のような問題が顕著に現れてしまう。
【0015】
また、これらの問題を回避するために、CPUとメモリ間のデータ幅を増やしたり、クロック周波数を上げたりすると、ピンネックや消費電力の増加につながってしまうといった問題があった。
【0016】
さらに、高速処理を行おうとして、ASICのようなハードワイヤードで構成して、上述の問題点を解決しようとすると、ITU等の規格や設計仕様が変更された場合、柔軟に対応できないといった問題があった。
【0017】
本発明はこのような点に鑑みてなされたものであり、高品質で効率のよいメモリアクセス制御を行って、システムのスループットを向上させたメモリアクセス制御装置を提供することを目的とする。
【0018】
【課題を解決するための手段】
記課題を解決するために、メモリにアクセスして演算を行うメモリアクセス制御装置が提供される。メモリアクセス制御装置は、データを格納するメモリと、イベント発生時、前記データに対するオペレーションの生成を行うオペレーション生成手段と、前記オペレーションを送信するオペレーション送信手段と、から構成されるプロセッサ・ユニットと、前記オペレーションを受信して格納するオペレーション格納手段と、前記オペレーションの生成動作とは独立して、前記オペレーションにもとづいて、前記メモリへアクセスし、前記データの演算処理を行う演算処理手段と、演算結果を前記プロセッサ・ユニットへ送信する演算結果送信手段と、から構成されるメモリインタフェース・ユニットと、を備え、前記オペレーション格納手段は、前記オペレーションを格納するキューと、前記キューに対する前記オペレーションの制御を行うオペレーション制御手段と、を含み、前記オペレーション制御手段は、前記キュー内に、同一アドレスのオペレーションが格納されている場合は、前記同一アドレスのオペレーションを優先して、連続してリードする。
【0019】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。図1はメモリアクセス制御装置の原理図を示す図である。メモリアクセス制御装置1は、プロセッサ・ユニット10と、メモリインタフェース・ユニット20と、メモリ30とから構成され、メモリ30にアクセスして多様な演算(算術演算や比較演算など)を行う。
【0020】
プロセッサ・ユニット10は、オペレーション生成手段11とオペレーション送信手段12から構成される。なお、プロセッサ・ユニット10は、CPU(Central Processing Unit)に該当する。
【0021】
オペレーション生成手段11は、イベント発生(受信)時、処理対象となるデータの判断や、データに対してどのような演算を行うか、またはデータが格納されているメモリアドレスの認識等を含む前処理を行う。その後、データに対するオペレーションの生成を行う。オペレーションの構成は図6以降で後述する。
【0022】
オペレーション送信手段12は、生成したオペレーションをメモリインタフェース・ユニット20へ送信する。
メモリインタフェース・ユニット20は、オペレーション格納手段21と、演算処理手段22と、演算結果送信手段23とから構成される。
【0023】
オペレーション格納手段21は、ランダムアクセスキュー21aと、オペレーション制御手段21bとから構成される。ランダムアクセスキュー21aは、前回ライトまたはリードが行われた格納場所とは無関係な格納場所で、ライトまたはリードを行うことのできるキューであり、プロセッサ・ユニット10から送信されたオペレーションを格納する。
【0024】
オペレーション制御手段21bは、ランダムアクセスキュー21aに対するオペレーションの制御を行う。詳細は図15以降で行う。
演算処理手段22は、オペレーションの生成動作とは独立して、ランダムアクセスキュー21aからリードしたオペレーションにもとづいて、メモリ30へアクセスし、データの演算処理を行う。
【0025】
演算結果送信手段23は、演算処理結果をプロセッサ・ユニット10へ送信する。メモリ30は、主記憶メモリであり、演算処理前のデータ及び演算処理後のデータを格納する。
【0026】
また、プロセッサ・ユニット10内の各手段の機能はソフトウェアで構成し、メモリインタフェース・ユニット20内の各手段の機能はハードワイヤードで構成する。
【0027】
これにより、オペレーションの生成部がソフトウェア構成であるため、どのデータに対して、どの様な演算を行うかをプログラマブルにできるので、柔軟性の高いシステムを構成することが可能になる。
【0028】
次に動作について説明する。図2はプロセッサ・ユニット10の動作手順を示すフローチャートである。
〔S1〕オペレーション生成手段11は、イベントが発生したか否かを判断する。イベントが発生した場合はステップS2へ、そうでなければステップS1の処理を繰り返す。
〔S2〕オペレーション生成手段11は、処理対象となるデータの判断及び処理内容の認識等の前処理を行う。
〔S3〕オペレーション生成手段11は、データに対するオペレーションを生成する。このとき、オペレーションを1つ、または複数生成する。
〔S4〕オペレーション送信手段12は、生成したオペレーションをメモリインタフェース・ユニット20へ送信する。
【0029】
図3はメモリインタフェース・ユニット20の動作手順を示すフローチャートである。メモリインタフェース・ユニット20は、上記のプロセッサ・ユニット10の動作とは独立して以下の処理を実行する。
〔S10〕オペレーション格納手段21は、オペレーション送信手段12から送信されたオペレーションを格納する。
〔S11〕演算処理手段22は、オペレーション格納手段21からオペレーションをリードし、このオペレーションにもとづいて、メモリ30からデータをリードする。
〔S12〕演算処理手段22は、オペレーションにもとづいて、データの参照か、または更新かの判断を行う。参照の場合はステップS13へ、更新の場合はステップS14へ行く。
〔S13〕演算結果送信手段23は、演算参照結果(メモリ30からリードしたデータ)をプロセッサ・ユニット10へ送信する。
〔S14〕演算処理手段22は、データの演算処理(更新処理)を行う。
〔S15〕演算処理手段22は、演算処理後のデータをメモリ30へライトする。
〔S16〕演算結果送信手段23は、更新処理終了後の演算結果をプロセッサ・ユニット10へ送信する。なお、以降では演算処理とはデータの更新処理を指すものとする。
【0030】
図4、図5はメモリアクセス制御装置1の動作タイムチャートを示す図である。図は、イベントの発生、プロセッサ・ユニット10の動作、ランダムアクセスキュー21a内のオペレーション蓄積数、メモリインタフェース・ユニット20のメモリアクセス動作の関係を時系列上で表したものである。
【0031】
そして、図4はT時間間隔毎にイベントが発生した場合を示しており、図5はT時間間隔内に複数のイベントが発生した場合を示している。
〔S20〕プロセッサ・ユニット10は、イベントAが発生すると、オペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S21〕メモリインタフェース・ユニット20内のランダムアクセスキュー21aは、オペレーションを格納する。この時点の蓄積数を1とする。
〔S22〕メモリインタフェース・ユニット20は、ランダムアクセスキュー21aからオペレーションをリードし、イベントAの演算処理を行う。演算処理の内容としては、メモリ30からのデータのリード、リードしたデータに対する演算処理、演算処理結果のメモリ30へのライトが含まれる。以降、イベントBの発生時の処理も上記と同様な処理が行われる。
〔S30〕プロセッサ・ユニット10は、イベントCが発生すると、オペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S31〕メモリインタフェース・ユニット20内のランダムアクセスキュー21aは、オペレーションを格納する。蓄積数は1である。
〔S32〕メモリインタフェース・ユニット20は、ランダムアクセスキュー21aからオペレーションをリードし、イベントCの演算処理を行う。また、ランダムアクセスキュー21a内のオペレーション蓄積数はリードしたので0である。
〔S33〕イベントCの演算処理中にイベントDが発生し、プロセッサ・ユニット10は、オペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S34〕ランダムアクセスキュー21aは、オペレーションを格納する。蓄積数は1である。
〔S35〕イベントCの演算処理中にイベントEが発生し、プロセッサ・ユニット10は、オペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S36〕ランダムアクセスキュー21aは、オペレーションを格納する。蓄積数は2である。
〔S37〕メモリインタフェース・ユニット20は、ランダムアクセスキュー21aからオペレーションをリードし、イベントDの演算処理を行う。また、ランダムアクセスキュー21a内のオペレーション蓄積数はリードしたので1である。以降、同様な処理が行われる。
【0032】
以上説明したように、メモリアクセス制御装置1は、プロセッサ・ユニット10とメモリインタフェース・ユニット20との互いの動作を独立に行う構成とした。
【0033】
したがって、プロセッサ・ユニット10は、メモリ30と直接データのやりとりを行っているわけではないので(データに対するオペレーションと演算結果のやりとりのみ)、CPUに該当するプロセッサ・ユニット10とメモリインタフェース・ユニット20間のバンド幅を削減できる。また、パイプライン構成をとらずにスループットを向上させることが可能になる。
【0034】
さらに、プロセッサ・ユニット10は、イベント発生時に、演算処理を行わずにオペレーションの生成処理を行うだけなので、アクセス時間を短縮でき、かつバースト的なイベント発生の処理に効率よく対応することが可能になる。
【0035】
次にオペレーションの構成について説明する。図6はオペレーションの構成を示す図である。オペレーションOP10は、処理対象となるデータが格納されているメモリアドレスOP11と、データに対する演算処理指示情報となる操作オペランドOP12とから構成される。
【0036】
また、操作オペランドOP12は、演算操作を示す演算オペランドOP12aと、演算ソースデータを示すデータオペランドOP12bとから構成される。
例えば、アドレス10番地に格納されたデータに対して+1したい場合は、メモリアドレスOP11は“10番地”、演算オペランドOP12aは“加算”、データオペランドOP12bは“1”となる。演算オペランドOP12aは、加算の他に減算、シフト演算、比較演算等の各種演算機能を示す。
【0037】
図7はオペレーションの構成の変形例を示す図である。オペレーションOP10−1は、メモリアドレスOP11と、操作オペランドOP12−1とから構成される。また、操作オペランドOP12−1は、クリアビットOP120を含む演算オペランドOP12a−1と、データオペランドOP12bとから構成される。
【0038】
クリアビットOP120は、メモリアドレスOP11で指定されたデータへのクリア処理を要求するビットである。例えば、メモリアドレスOP11が“10番地”であり、クリアビットOP120に“1”が立っている場合には、10番地のデータがすべてクリア(ALL 0 )になる。このように、演算オペランドを拡張することによって、データに対する加算や減算等の演算処理だけでなく、クリア処理も実行することが可能になる。
【0039】
図8はオペレーションの構成の変形例を示す図である。オペレーションOP10−2は、メモリアドレスOP11と、操作オペランドOP12−2とから構成される。また、操作オペランドOP12−2は、即値ビットOP121を含む演算オペランドOP12a−2と、データオペランドOP12bとから構成される。
【0040】
即値ビットOP121は、メモリアドレスOP11で指定されたデータを、データオペランドOP12bの値に即値更新(置き換え)を要求するビットである。例えば、メモリ30のデータ幅が32ビットで、メモリアドレスOP11が“10番地”であり、データオペランドOP12bが“FFFF”で、即値ビットOP121に“1”が立っている場合には、10番地のデータがすべて“FFFF”になる。
【0041】
このように、演算オペランドを拡張することによって、メモリ30の格納データを任意の値に更新することが可能になる。
なお、上述のクリアビットOP120または即値ビットOP121を用いる場合は、メモリ30へのリードを行わないようにする。これにより、メモリ30へのアクセス回数を削減することが可能になる。
【0042】
図9はオペレーションの構成の変形例を示す図である。オペレーションOP10−3は、メモリアドレスOP11と、操作オペランドOP12−3とから構成される。また、操作オペランドOP12−3は、マスクビットOP122を含む演算オペランドOP12a−3と、データオペランドOP12bとから構成される。
【0043】
マスクビットOP122は、メモリアドレスOP11で指定されたデータを、データオペランドOP12bの値にしたがってビットマスクを要求するビットである。例えば、メモリアドレスOP11が“10番地”であり、データオペランドOP12bが“1”で、マスクビットOP122に“1”が立っている場合には、10番地のデータの“1”の部分がマスクされることになる。
【0044】
このように、演算オペランドを拡張することによって、メモリ30の格納データの任意の値をマスクすることが可能になる。なお、上記の説明では、クリアビットOP120と即値ビットOP121とマスクビットOP122は、別々に設けた場合を説明したが、実際には各種組み合わせて演算オペランドを構成する。
【0045】
図10はオペレーションの構成の変形例を示す図である。オペレーションOP10−4は、メモリアドレスOP11と、操作オペランドOP12−4とから構成される。また、操作オペランドOP12−4は、コード化演算オペランドOP12a−4と、データオペランドOP12bとから構成される。
【0046】
コード化演算オペランドOP12a−4は、演算オペランドOP12a、またはクリアビットOP120と即値ビットOP121とマスクビットOP122の少なくとも1つを含む演算オペランドをコード化したものである。
【0047】
図11はコード化演算オペランドOP12a−4のコード表の一例である。コード化演算オペランドOP12a−4は3ビット構成とする。コード表T1は、演算処理内容として、No-Operation、加算、減算、比較演算(例えば、データオペランドOP12bの値とメモリ30内の格納データが等しいか否かなど)、左シフト、右シフト、即値、ビットマスクがある。また、それぞれの演算処理内容のビット値は図に示す通りである。
【0048】
このように、演算オペランドをコード化することによって、様々なデータに対する処理を行うのに、オペレーションの情報量を削減することが可能になる(図11では8種のデータに対する処理に対して、3ビットで演算オペランドが構成できる)。
【0049】
次に1つのオペレーションで複数データの演算指示を行う場合について説明する。図12はメモリ30の1アドレスに2つのデータが格納される様子を示す図である。図では、メモリアドレス0番地にデータD1(31〜16ビット)とデータD2(15〜0ビット)の2つのデータが格納されている。また、アドレス1番地以降では1つのデータが格納されている。
【0050】
図13はデータオペランドを分割して、複数データの演算指示を行うオペレーションの構成を示す図である。オペレーションOP10−5は、メモリアドレスOP11と、操作オペランドOP12−5とから構成される。また、操作オペランドOP12−5は、演算オペランドOP12aと、データオペランドOP12b−1とから構成される。データオペランドOP12b−1は、2つのデータオペランド(データD1用とデータD2用)から構成される。
【0051】
ここで、図12で示したメモリ30のアドレス0番地のデータD1に対してのみ+10加算を行いたい場合、データオペランドOP12b−1を32ビットとすると、データオペランドOP12b−1は、“000A0000(Hex)”とする。データD2に対するデータオペランドの部分はALL 0 とする。
【0052】
このようにデータオペランドを分割することにより、複数のデータが1アドレスに格納されていても、そのデータに対するオフセットアドレスをオペレーションに加える必要がなくなる。
【0053】
次にデータが複数のアドレスにまたがって、メモリ30に格納されている場合のオペレーションの構成について説明する。
図14はアドレス連続情報を含むオペレーションの構成を示す図である。オペレーションOP10−6は、メモリアドレスOP11と、操作オペランドOP12−6とから構成される。また、操作オペランドOP12−6は、アドレス連続情報OP123を含む演算オペランドOP12a−6と、データオペランドOP12bとから構成される。
【0054】
アドレス連続情報OP123は、アドレス連続を識別する情報であり、このアドレス連続情報OP123が有効の場合は、メモリアドレスOP11は、連続するアドレスのうち、1つのアドレスのみを格納する(例えば、連続するアドレスのうちの最小アドレス)。
【0055】
また、演算処理手段22は、このオペレーションOP10−6にもとづいて演算処理を行う場合は、アドレスの連続数がnならば、メモリ30からn回連続リード、演算処理、n回連続ライトを行う。
【0056】
これにより、連続するアドレスを全部格納する必要がないため、オペレーションの情報量を削減でき、メモリアクセスを効率よく行うことが可能になる。
次にオペレーション制御手段21bのランダムアクセスキュー21aに対するオペレーションの制御について説明する。図15はランダムアクセスキュー21aの状態を示す図である。
【0057】
最初、ランダムアクセスキュー21aには、オペレーションOP1〜OP5が格納されている。オペレーションOP1は、演算操作が+1で、メモリ30のアドレスが0番地である。オペレーションOP2は、演算操作が+1、アドレスが4番地である。オペレーションOP3は、演算操作が+3、アドレスが0番地である。オペレーションOP4は、演算操作が+1、アドレスが2番地である。オペレーションOP5は、演算操作が+1、アドレスが1番地である。
【0058】
なお、演算操作とは、上述した演算オペランドとデータオペランドを合わせた内容のことを指す。
ここで、オペレーション制御手段21bは、同一メモリアドレスの情報が存在するか、または連続するメモリアドレスの情報が存在するかを監視して、それらのアドレスを持つオペレーションを優先して、ランダムアクセスキュー21aから出力させて、演算処理手段22へ送信する。
〔S40〕オペレーション制御手段21bは、オペレーションOP1、OP3が同一アドレス(アドレス0番地)であり、オペレーションOP5が、オペレーションOP1、OP3に対して連続アドレス(アドレス1番地)を持つオペレーションであることを認識する。
〔S41〕オペレーション制御手段21bは、ランダムアクセスキュー21aからオペレーションOP1を出力させる。
〔S42〕オペレーション制御手段21bは、ランダムアクセスキュー21aから、オペレーションOP1と同一アドレスのオペレーションOP3を出力させる。
〔S43〕オペレーション制御手段21bは、ランダムアクセスキュー21aから、オペレーションOP3と連続アドレスのオペレーションOP5を出力させる。
【0059】
このように、ランダムアクセスキュー21a内に同一メモリアドレス、または連続するメモリアドレスの情報が格納されていれば、それらを優先してランダムアクセスキュー21aから先にリードする構成にした。
【0060】
これにより、演算処理手段22は、メモリ30に対し、同一または連続アドレスでアクセスできるため、アクセス時間が短縮され、メモリアクセスを効率よく行うことが可能になる。
【0061】
図16はランダムアクセスキュー21aの状態を示す図である。最初、ランダムアクセスキュー21aには、オペレーションOP1〜OP5が格納されている。オペレーションOP1は、演算操作が+1で、アドレスが0番地である。オペレーションOP2は、演算操作が+3、アドレスが0番地である。オペレーションOP3は、演算操作が+1、アドレスが4番地である。オペレーションOP4は、演算操作が+1、アドレスが2番地である。オペレーションOP5は、演算操作が+1、アドレスが0番地である。
【0062】
ここで、オペレーション制御手段21bは、ランダムアクセスキュー21a内に、同一メモリアドレスの情報が存在するかを監視し、存在する場合は、それらの演算処理を積算して積算オペレーションを生成し、これを出力させる。
〔S50〕オペレーション制御手段21bは、オペレーションOP1、OP2、OP3が同一アドレス(アドレス0番地)であることを認識する。
〔S51〕オペレーション制御手段21bは、オペレーションOP1、OP2、OP3に対する積算処理を行う。ここでは、(+1)+(+3)+(+1)=+5である。
〔S52〕オペレーション制御手段21bは、オペレーションOP1、OP2、OP3を無効化し、代わりに演算操作が+5で、アドレス0番地の積算オペレーションI1を生成し、演算処理手段22へ送信する。
【0063】
このように、ランダムアクセスキュー21a内に同一メモリアドレスの情報が格納されていれば、それらを積算した積算オペレーションを生成してリードする構成にした。これにより、演算処理手段22は、メモリ30に対するアクセス時間を短縮して、メモリアクセスを効率よく行うことが可能になる。
【0064】
図17はランダムアクセスキュー21aの状態を示す図である。最初、ランダムアクセスキュー21aには、オペレーションOP1〜OP3が格納されている。オペレーションOP1は、演算操作が+1で、アドレスが4番地である。オペレーションOP2は、演算操作が+3、アドレスが0番地である。オペレーションOP3は、演算操作が+1、アドレスが2番地である。また、ランダムアクセスキュー21aにライトされるオペレーションOP4は、演算操作が+2、アドレスが0番地である。
【0065】
オペレーション制御手段21bは、ランダムアクセスキュー21aへライトすべきオペレーションのメモリアドレスと同一メモリアドレスの情報が、ランダムアクセスキュー21a内に存在するかを監視し、存在する場合は、それらの演算処理を積算して積算オペレーションを生成する。
〔S60〕オペレーション制御手段21bは、ランダムアクセスキュー21aに格納されているオペレーションOP2と、ランダムアクセスキュー21aにライトするオペレーションOP4が同一アドレス(アドレス0番地)であることを認識する。
〔S61〕オペレーション制御手段21bは、オペレーションOP2、OP4に対する積算処理を行う。ここでは、(+3)+(+2)=+5である。
〔S62〕オペレーション制御手段21bは、オペレーションOP2、OP4を無効化し、代わりに演算操作が+5でアドレス0番地の積算オペレーションI2を生成して、ランダムアクセスキュー21aにライトする。
【0066】
このように、ライトすべきオペレーションのアドレスと、キュー内に同一アドレスのオペレーションが存在する場合は、これらを無効化して、代わりに積算オペレーションを生成する構成とした。これにより、演算処理手段22は、メモリ30に対するアクセス時間を短縮して、メモリアクセスを効率よく行うことが可能になる。
【0067】
なお、上記の説明では、キューをランダムアクセスキュー21aとして説明したが、ランダムアクセスキュー21aの前段にレディ(ready)キューを設けたハイブリッド構成にしてもよい。
【0068】
ランダムアクセスキュー21aは、キュー内を監視する必要があるが(オペレーション制御手段21bがキュー内のオペレーションの格納状況を監視する)、ここでは受信したオペレーションをFIFO形式で一端格納するレディキューを、ランダムアクセスキュー21aの前段に配置する。
【0069】
このような構成で、レディキューからランダムアクセスキュー21aへオペレーションを順次渡すことにより、オペレーション制御手段21bのランダムアクセスキュー21aに対する監視制御の負荷を削減することができる。
【0070】
次にランダムアクセスキュー21aがFULLの時の動作について説明する。図18はランダムアクセスキュー21aがFULLになった際の動作手順を示すフローチャートである。
〔S70〕オペレーション制御手段21bは、ランダムアクセスキュー21aのオペレーション格納状態を監視する。FULLの場合はステップS71へ、そうでなければステップS70の処理を繰り返す。
〔S71〕オペレーション制御手段21bは、プロセッサ・ユニット10での次イベントによる処理をWaitさせるためのWait信号を生成し、プロセッサ・ユニット10へ送信する。
〔S72〕プロセッサ・ユニット10は、Wait信号を受信したか否かを判断する。受信した場合はステップS73へ、受信しない場合はステップS74へ行く。
〔S73〕プロセッサ・ユニット10は、オペレーションのメモリインタフェース・ユニット20への送信をWaitする。
〔S74〕プロセッサ・ユニット10は、オペレーションをメモリインタフェース・ユニット20へ送信する。
【0071】
このように、オペレーション制御手段21bは、ランダムアクセスキュー21aの状態がFULLの場合は、次イベントによる処理をWaitさせる構成にした。これにより、キューあふれによるデータの更新もれを防止し、データの信頼性を確保することが可能になる
次にランダムアクセスキュー21aをキャッシュメモリで構成した場合について説明する。図19はオペレーション格納手段の構成を示す図である。オペレーション格納手段21−1は、キャッシュメモリ21a−1と、オペレーション制御手段21b−1とから構成される。
【0072】
オペレーション制御手段21b−1は、キャッシュメモリ21a−1に対するオペレーションの制御を行う。オペレーションの制御としては、同一メモリアドレスに対する演算操作をキャッシュメモリ上で積算する処理等を行う。
【0073】
オペレーション制御手段21b−1は、キャッシュメモリ21a−1へオペレーションを格納する場合、キャッシュメモリ21a−1上にそのアドレスのオペレーションが存在する場合(キャッシュヒット時)は、キャッシュメモリ21a−1上で演算操作の積算処理を行う。
【0074】
また、キャッシュメモリ21a−1上にそのアドレスのオペレーションが存在しない場合(キャッシュミスヒット時)は、キャッシュメモリ21a−1に空きがあれば空き領域にオペレーションを格納し、空きがない場合はキャッシュメモリ21a−1に格納されている他のオペレーションを実行して、メモリ30へライトした後、その部分に新たに受信したオペレーションを書き込む(キャッシュ格納データの入れ替え)。
【0075】
次に演算処理手段22について説明する。演算処理手段22は、データアクセスの局所性を利用し、オペレーションにしたがって、あるアドレスに対してメモリリードアクセスを行う時に、その近辺のアドレス(隣接アドレス)に対してもメモリリードを行って、データを記憶しておく。
【0076】
すると、その隣接アドレスが後で要求されたときに、すでにデータが記憶されているために、メモリアクセスを行う必要がなくなる。そして、その記憶したデータを用いてオペレーションを実行し、更新したデータをまとめてメモリへライトする。これにより、メモリ30のリードアクセスとライトアクセス時にアドレスの連続性があるため、効率よくメモリアクセスを行うことができる。
【0077】
にメモリアクセス制御装置1を適用したATM制御装置について説明する。図20はATM制御装置の構成を示す図である。ATM制御装置100は、プロセッサ・ユニット10とメモリインタフェース・ユニット20とメモリ30とから構成されるメモリアクセス制御装置1を含み、ATMの通信管理の制御を行う。
【0078】
ATMの通信管理の制御とは、例えば、セル数の計数処理、OAM性能管理の統計処理または課金処理等のことであり、ATM制御装置100は、これらの制御に関するオペレーションを生成して、これらの少なくとも1つの演算処理(統計値の参照や更新処理)を行う。また、演算処理結果は、ATM制御装置100に接続する保守端末200に送信され、保守者に通知される。
【0079】
次にATM制御装置100の動作として、OAM性能管理の統計処理の1つであるITU-T I.610 で定められているパフォーマンスモニタ(Performance Monitor)処理を対象に以降説明する(以下、パフォーマンスモニタをPMと略す)。
【0080】
図21はPM処理の概要を示す図である。ATMセルの流れに対して、PMセルが一定間隔毎に送信側で挿入される。そして、受信側では、PMセル間に流れたユーザセルを監視して、PMセル間(1ブロックという)のユーザセルのセル廃棄数やセル誤挿入等をコネクション単位で算出して統計をとる。
【0081】
図22、図23、図24は1ブロック内のPM処理の動作を示すシーケンス図である。なお、PM処理すべき統計項目として、ここでは一例として、送出CLP(Cell Loss Priority)0ユーザセル数(項目Aとする)、送出CLP0+1ユーザセル数(項目Bとする)、Total CLP0+1ユーザセル数(項目Cとする)、SECB(Severely Errored Cell Blocks)Errored(項目Dとする)の4つの統計値の更新を行うものとする。
【0082】
CLPとは、ネットワーク輻輳時に廃棄されるべきセルを表示するための1ビットフィールドの情報のことである。CLP=1のセルは廃棄される。そして、送出CLP0ユーザセル数とは、送信側が送信した1ブロック間での優先度の高いセル数のことである。送出CLP0+1ユーザセル数とは、送信側が送信した1ブロック間での優先度の高いセル数と優先度の低いセル数の加算値のことである。Total CLP0+1ユーザセル数とは、受信側でカウントした優先度の高いセル数と優先度の低いセル数の加算値のことである。
【0083】
SECBとは、廃棄セル数が、あらかじめ設定されたしきい値よりも大きい値の時に、そのブロック間に多くのエラーが生じたことを示す、1ビットフィールドの情報のことである。なお、1ブロック間はT時間とし、図中の括弧内の文字は項目A〜Dを表す。
〔S80〕プロセッサ・ユニット10は、項目Aによるイベントが発生すると、項目Aに関するオペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S81〕メモリインタフェース・ユニット20は、受信した項目Aのオペレーションにもとづいて、メモリ30へリードアクセスする。
〔S82〕メモリインタフェース・ユニット20は、項目Aに関するデータの演算処理を行う。
〔S83〕プロセッサ・ユニット10は、項目Bによるイベントが発生すると、項目Bに関するオペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S84〕メモリインタフェース・ユニット20は、項目Aの演算結果をメモリ30へライトし、メモリ30からACKリターンを受信する。
〔S85〕プロセッサ・ユニット10は、項目Cによるイベントが発生すると、項目Cに関するオペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S86〕メモリインタフェース・ユニット20は、受信した項目Bのオペレーションにもとづいて、メモリ30へリードアクセスする。
〔S87〕メモリインタフェース・ユニット20は、項目Bに関するデータの演算処理を行う。
〔S88〕プロセッサ・ユニット10は、項目Dによるイベントが発生すると、項目Dに関するオペレーションを生成し、メモリインタフェース・ユニット20へ送信する。
〔S89〕メモリインタフェース・ユニット20は、項目Bの演算結果をメモリ30へライトし、メモリ30からACKリターンを受信する。
〔S90〕メモリインタフェース・ユニット20は、受信した項目Cのオペレーションにもとづいて、メモリ30へリードアクセスする。
〔S91〕メモリインタフェース・ユニット20は、項目Cに関するデータの演算処理を行う。
〔S92〕メモリインタフェース・ユニット20は、項目Cの演算結果をメモリ30へライトし、メモリ30からACKリターンを受信する。
〔S93〕メモリインタフェース・ユニット20は、受信した項目Dのオペレーションにもとづいて、メモリ30へリードアクセスする。
〔S94〕メモリインタフェース・ユニット20は、項目Dに関するデータの演算処理を行う。
〔S95〕メモリインタフェース・ユニット20は、項目Dの演算結果をメモリ30へライトし、メモリ30からACKリターンを受信する。
【0084】
以上説明したように、ATM制御装置100は、プロセッサ・ユニット10で更新すべき統計項目のオペレーションを生成し、メモリインタフェース・ユニット20へ送信する。そして、メモリインタフェース・ユニット20では、オペレーションにもとづいて、メモリリード→データ演算処理(更新処理)→メモリライトを行うことによって、統計値を更新する。
【0085】
ここで、プロセッサ・ユニット10は、メモリアドレスNビットと、統計値の加算指示1ビット(更新処理であるため、演算指示は加算である)と、被加算データ(16ビットとする)をメモリインタフェース・ユニット20に送信しているだけである。
【0086】
したがって、処理の許容時間をTとすると、プロセッサ・ユニット10は、
【0087】
【数1】
(16+1)ビット×4/T=68ビット/T …(1)
のバンド幅を必要とする。ただし、メモリ30へのアドレスNビットは考慮しない。式(1)の4は項目A〜Dの項目数である。
【0088】
一方、これらの処理を従来技術で行った場合を考える。上記の項目A〜Dは、各々32ビットで表示されるとする。すると、従来では、PMセル受信時にCPUが統計値を更新する場合、CPUが更新する統計データを判断し、各項目に対応するデータ(32ビット)をメモリ30からリードし、+n等の演算を行い、メモリ30にライトしていた。
【0089】
したがって、処理の許容時間をTとすると、CPUは、
【0090】
【数2】
32ビット×2×4/T=256ビット/T …(2)
のバンド幅を必要とする。ただし、メモリへのアドレスnビットは考慮していない。なお、式(2)中の2はリード/ライトのアクセス数、4は項目A〜Dの項目数である。
【0091】
したがって、式(1)、式(2)より、バンド幅が約4分の1に削減されることがわかる。
次に統計値を参照する場合の例を説明する。統計値がALL 1 か否かを知りたいとき、従来ではCPUは、32ビットの統計値をメモリ30からリードし、ALL 1 か否かを判断していた。
【0092】
一方、メモリ30からリードしたデータがALL 1 であるか否かを判断したい場合は、その旨を示すコード(1ビット)をオペレーションに付加してメモリインタフェース・ユニット20へ送信する。
【0093】
そして、メモリインタフェース・ユニット20では、そのオペレーションにもとづいて、メモリ30へアクセスし、ALL 1 であるか否かの結果のみをプロセッサ・ユニット10へ送信する。したがって、この場合のバンド幅は、従来では32ビット/T、本技術では1オペレーション+1オペレーション結果=2ビット/Tとなり、必要バンド幅は16分の1に削減できる。
【0094】
以上説明したように、メモリアクセス制御装置1及びATM制御装置100は、プロセッサ・ユニット10で、データに対するオペレーションの生成を行い、メモリインタフェース・ユニット20で、オペレーションの生成動作とは独立して、オペレーションにもとづく、メモリアクセス及びデータの演算処理を行う構成とした。
【0095】
これにより、プロセッサ・ユニット10とメモリ30間のバンド幅を削減して、高品質で効率のよいメモリアクセス制御を行うことができ、システムのスループットを向上させることが可能になる。
【0096】
なお、上記の説明では、メモリアクセス制御装置1を、ATMのシステムに適用したが、ATM以外のデータ通信システムに対しても適用可能である。特に大容量のメモリを必要とするデータ通信システムに対して効果が高く、システムの信頼性向上に寄与することが可能である。
【0097】
【発明の効果】
ロセッサ・ユニットとメモリ間のバンド幅を削減して、高品質で効率のよいメモリアクセス制御を行うことができ、システムのスループットを向上させることが可能になる
【図面の簡単な説明】
【図1】モリアクセス制御装置の原理図である。
【図2】 プロセッサ・ユニットの動作手順を示すフローチャートである。
【図3】 メモリインタフェース・ユニットの動作手順を示すフローチャートである。
【図4】 メモリアクセス制御装置の動作タイムチャートを示す図である。
【図5】 メモリアクセス制御装置の動作タイムチャートを示す図である。
【図6】 オペレーションの構成を示す図である。
【図7】 オペレーションの構成の変形例を示す図である。
【図8】 オペレーションの構成の変形例を示す図である。
【図9】 オペレーションの構成の変形例を示す図である。
【図10】 オペレーションの構成の変形例を示す図である。
【図11】 コード化演算オペランドのコード表の一例である。
【図12】 メモリの1アドレスに2つのデータが格納される様子を示す図である。
【図13】 データオペランドを分割して、複数データの演算指示を行うオペレーションの構成を示す図である。
【図14】 アドレス連続情報を含むオペレーションの構成を示す図である。
【図15】 ランダムアクセスキューの状態を示す図である。
【図16】 ランダムアクセスキューの状態を示す図である。
【図17】 ランダムアクセスキューの状態を示す図である。
【図18】 ランダムアクセスキューがFULLになった際の動作手順を示すフローチャートである。
【図19】 オペレーション格納手段の構成を示す図である。
【図20】 ATM制御装置の構成を示す図である。
【図21】 PM処理の概要を示す図である。
【図22】 1ブロック内のPM処理の動作を示すシーケンス図である。
【図23】 1ブロック内のPM処理の動作を示すシーケンス図である。
【図24】 1ブロック内のPM処理の動作を示すシーケンス図である。
【図25】 CPUの演算処理の動作の流れを示す図である。
【図26】 複数データの演算処理の動作の流れを示す図である。
【図27】 パイプラインによる演算処理の動作の流れを示す図である。
【符号の説明】
1 メモリアクセス制御装置
10 プロセッサ・ユニット
11 オペレーション生成手段
12 オペレーション送信手段
20 メモリインタフェース・ユニット
21 オペレーション格納手段
21a ランダムアクセスキュー
21b オペレーション制御手段
22 演算処理手段
23 演算結果送信手段
30 メモリ

Claims (4)

  1. メモリにアクセスして演算を行うメモリアクセス制御装置において、
    データを格納するメモリと、
    イベント発生時、前記データに対するオペレーションの生成を行うオペレーション生成手段と、前記オペレーションを送信するオペレーション送信手段と、から構成されるプロセッサ・ユニットと、
    前記オペレーションを受信して格納するオペレーション格納手段と、前記オペレーションの生成動作とは独立して、前記オペレーションにもとづいて、前記メモリへアクセスし、前記データの演算処理を行う演算処理手段と、演算結果を前記プロセッサ・ユニットへ送信する演算結果送信手段と、から構成されるメモリインタフェース・ユニットと、
    を備え、
    前記オペレーション格納手段は、前記オペレーションを格納するキューと、前記キューに対する前記オペレーションの制御を行うオペレーション制御手段と、を含み、
    前記オペレーション制御手段は、前記キュー内に、同一アドレスのオペレーションが格納されている場合は、前記同一アドレスのオペレーションを優先して、連続してリードする、
    ことを特徴とするメモリアクセス制御装置。
  2. メモリにアクセスして演算を行うメモリアクセス制御装置において、
    データを格納するメモリと、
    イベント発生時、前記データに対するオペレーションの生成を行うオペレーション生成手段と、前記オペレーションを送信するオペレーション送信手段と、から構成されるプロセッサ・ユニットと、
    前記オペレーションを受信して格納するオペレーション格納手段と、前記オペレーションの生成動作とは独立して、前記オペレーションにもとづいて、前記メモリへアクセスし、前記データの演算処理を行う演算処理手段と、演算結果を前記プロセッサ・ユニットへ送信する演算結果送信手段と、から構成されるメモリインタフェース・ユニットと、
    を備え、
    前記オペレーション格納手段は、前記オペレーションを格納するキューと、前記キューに対する前記オペレーションの制御を行うオペレーション制御手段と、を含み、
    前記オペレーション制御手段は、前記キュー内に、連続アドレスのオペレーションが格納されている場合は、前記連続アドレスのオペレーションを優先して、連続してリードする、
    ことを特徴とするメモリアクセス制御装置。
  3. メモリにアクセスして演算を行うメモリアクセス制御装置において、
    データを格納するメモリと、
    イベント発生時、前記データに対するオペレーションの生成を行うオペレーション生成手段と、前記オペレーションを送信するオペレーション送信手段と、から構成されるプロセッサ・ユニットと、
    前記オペレーションを受信して格納するオペレーション格納手段と、前記オペレーションの生成動作とは独立して、前記オペレーションにもとづいて、前記メモリへアクセスし、前記データの演算処理を行う演算処理手段と、演算結果を前記プロセッサ・ユニットへ送信する演算結果送信手段と、から構成されるメモリインタフェース・ユニットと、
    を備え、
    前記オペレーション格納手段は、前記オペレーションを格納するキューと、前記キューに対する前記オペレーションの制御を行うオペレーション制御手段と、を含み、
    前記オペレーション制御手段は、前記キュー内に、同一アドレスのオペレーションが存在する場合は、前記同一アドレスのオペレーションを無効化し、代わりに前記同一アドレスのオペレーションの演算操作を積算した積算オペレーションを生成する、
    ことを特徴とするメモリアクセス制御装置。
  4. メモリにアクセスして演算を行うメモリアクセス制御装置において、
    データを格納するメモリと、
    イベント発生時、前記データに対するオペレーションの生成を行うオペレーション生成手段と、前記オペレーションを送信するオペレーション送信手段と、から構成されるプロセッサ・ユニットと、
    前記オペレーションを受信して格納するオペレーション格納手段と、前記オペレーションの生成動作とは独立して、前記オペレーションにもとづいて、前記メモリへアクセスし、前記データの演算処理を行う演算処理手段と、演算結果を前記プロセッサ・ユニットへ送信する演算結果送信手段と、から構成されるメモリインタフェース・ユニットと、
    を備え、
    前記オペレーション格納手段は、前記オペレーションを格納するキューと、前記キューに対する前記オペレーションの制御を行うオペレーション制御手段と、を含み、
    前記オペレーション制御手段は、前記キュー内に、ライトすべきオペレーションと同一アドレスのオペレーションが存在する場合は、前記同一アドレスのオペレーションを無効化し、代わりにライトすべき前記オペレーションの演算操作と、前記同一アドレスのオペレーションの演算操作とを積算した積算オペレーションを生成する、
    ことを特徴とするメモリアクセス制御装置。
JP2000139859A 2000-05-12 2000-05-12 メモリアクセス制御装置 Expired - Fee Related JP4614500B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000139859A JP4614500B2 (ja) 2000-05-12 2000-05-12 メモリアクセス制御装置
US09/753,838 US20010042143A1 (en) 2000-05-12 2001-01-03 Memory access system in which processor generates operation request, and memory interface accesses memory, and performs operation on data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000139859A JP4614500B2 (ja) 2000-05-12 2000-05-12 メモリアクセス制御装置

Publications (2)

Publication Number Publication Date
JP2001318825A JP2001318825A (ja) 2001-11-16
JP4614500B2 true JP4614500B2 (ja) 2011-01-19

Family

ID=18647240

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000139859A Expired - Fee Related JP4614500B2 (ja) 2000-05-12 2000-05-12 メモリアクセス制御装置

Country Status (2)

Country Link
US (1) US20010042143A1 (ja)
JP (1) JP4614500B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030167408A1 (en) * 2002-03-01 2003-09-04 Fitzpatrick Gregory P. Randomized bit dispersal of sensitive data sets
JP2006053246A (ja) * 2004-08-10 2006-02-23 Sanyo Electric Co Ltd データ処理装置、データ処理プログラム、データ処理装置のデータ処理方法
JP4846306B2 (ja) 2005-09-09 2011-12-28 富士通セミコンダクター株式会社 半導体記憶装置及びそれを用いた半導体集積回路システム並びに半導体記憶装置の制御方法
JP2009163285A (ja) * 2007-12-28 2009-07-23 Nec Electronics Corp 出力ポート、マイクロコンピュータ、及びデータ出力方法
CN102647336B (zh) * 2011-02-22 2016-09-07 瑞昱半导体股份有限公司 用于封包内容转换的方法以及网络装置
US9117299B2 (en) * 2013-05-08 2015-08-25 Apple Inc. Inverse request aggregation
KR102276718B1 (ko) * 2015-11-25 2021-07-13 삼성전자주식회사 Vliw 인터페이스 장치 및 제어 방법
WO2019000456A1 (zh) * 2017-06-30 2019-01-03 华为技术有限公司 传输数据掩码的方法、内存控制器、内存芯片和计算机系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5960658A (ja) * 1982-09-30 1984-04-06 Fujitsu Ltd 論理機能を備えた半導体記憶装置
JPS6240554A (ja) * 1985-08-15 1987-02-21 Nec Corp バツフアメモリブロツク先取り方式
JPH04306748A (ja) * 1991-04-04 1992-10-29 Nec Corp 情報処理装置
JPH05346884A (ja) * 1992-06-12 1993-12-27 Sony Corp データ記憶更新方法およびその装置
JPH06230963A (ja) * 1993-01-29 1994-08-19 Oki Electric Ind Co Ltd メモリアクセス制御装置
JPH10293718A (ja) * 1997-04-21 1998-11-04 Kofu Nippon Denki Kk バッファ制御装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6419457A (en) * 1987-07-15 1989-01-23 Ricoh Kk Memory device
JPH07219774A (ja) * 1994-02-07 1995-08-18 Fujitsu Ltd データ処理装置および例外処理方法
US5870625A (en) * 1995-12-11 1999-02-09 Industrial Technology Research Institute Non-blocking memory write/read mechanism by combining two pending commands write and read in buffer and executing the combined command in advance of other pending command
US5784582A (en) * 1996-10-28 1998-07-21 3Com Corporation Data processing system having memory controller for supplying current request and next request for access to the shared memory pipeline
CA2255418C (en) * 1998-12-07 2003-01-21 Pmc-Sierra Ltd. Ring interface and ring network bus flow control system
KR100308618B1 (ko) * 1999-02-27 2001-09-26 윤종용 단일 칩 상의 마이크로프로세서-코프로세서 시스템을 구비한 파이프라인 데이터 처리 시스템 및 호스트 마이크로프로세서와 코프로세서 사이의 인터페이스 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5960658A (ja) * 1982-09-30 1984-04-06 Fujitsu Ltd 論理機能を備えた半導体記憶装置
JPS6240554A (ja) * 1985-08-15 1987-02-21 Nec Corp バツフアメモリブロツク先取り方式
JPH04306748A (ja) * 1991-04-04 1992-10-29 Nec Corp 情報処理装置
JPH05346884A (ja) * 1992-06-12 1993-12-27 Sony Corp データ記憶更新方法およびその装置
JPH06230963A (ja) * 1993-01-29 1994-08-19 Oki Electric Ind Co Ltd メモリアクセス制御装置
JPH10293718A (ja) * 1997-04-21 1998-11-04 Kofu Nippon Denki Kk バッファ制御装置

Also Published As

Publication number Publication date
JP2001318825A (ja) 2001-11-16
US20010042143A1 (en) 2001-11-15

Similar Documents

Publication Publication Date Title
JP4912401B2 (ja) パフォーマンス情報およびイベント情報を適応的に収集するシステムおよび方法
US9148485B2 (en) Reducing packet size in a communication protocol
US9569742B2 (en) Reducing costs related to use of networks based on pricing heterogeneity
US20100299485A1 (en) Circuit and method with cache coherence stress control
JP4614500B2 (ja) メモリアクセス制御装置
US7743185B2 (en) Method, system, and computer program product for dynamically selecting software buffers for aggregation according to current system characteristics
CN115880132A (zh) 图形处理器、矩阵乘法任务处理方法、装置及存储介质
CN114995770B (zh) 一种数据处理方法、装置、设备、系统及可读存储介质
JP4129473B2 (ja) コンピュータクラスタにおけるデータ収集
CN103124962B (zh) 优化环协议和技术
US7555515B1 (en) Asynchronous pipeline
CN108564170B (zh) 一种基于noc的可重构神经网络运算方法和电路
CN113347238A (zh) 基于区块链的消息分区方法及系统、设备、存储介质
EP1318460A2 (en) Node-to-node data transfer method and apparatus
CN117135133B (zh) 一种Chiplet芯片内的网络互连方法
CN107273318A (zh) 并行处理设备和通信控制方法
CN117742938A (zh) 历史趋势数据管理方法及装置
CN113515481A (zh) 一种基于串口的数据传输方法及装置
CN114338826A (zh) 数据传输方法、装置、系统及相关设备
CN117057403A (zh) 一种运算模块、基于脉冲神经网络的加速器及方法
CN117221251A (zh) 面向软件定义算力网络的算力感知及路由方法、架构
CN116501589A (zh) 面向并行应用核间通信竞争的通信性能预测方法及装置
CN116303587A (zh) 一种应用于服务器的分布式缓存系统以及服务器
CN115174493A (zh) 一种基于多线程管道技术的比特币节点探测方法
CN118133928A (zh) 模型参数的调度方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100727

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101019

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101019

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131029

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees