TWI411918B - 緩衝區管理裝置及記憶體的緩衝區管理方法 - Google Patents

緩衝區管理裝置及記憶體的緩衝區管理方法 Download PDF

Info

Publication number
TWI411918B
TWI411918B TW098103808A TW98103808A TWI411918B TW I411918 B TWI411918 B TW I411918B TW 098103808 A TW098103808 A TW 098103808A TW 98103808 A TW98103808 A TW 98103808A TW I411918 B TWI411918 B TW I411918B
Authority
TW
Taiwan
Prior art keywords
memory
access
buffers
signal
buffer
Prior art date
Application number
TW098103808A
Other languages
English (en)
Other versions
TW201020789A (en
Inventor
Kuo Lung Chien
Ching Wen Hsueh
Original Assignee
Mediatek Inc
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 Mediatek Inc filed Critical Mediatek Inc
Publication of TW201020789A publication Critical patent/TW201020789A/zh
Application granted granted Critical
Publication of TWI411918B publication Critical patent/TWI411918B/zh

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
    • 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
    • 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/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

緩衝區管理裝置及記憶體的緩衝區管理方法
本發明有關於記憶體(memory),更特別地,係有關於記憶體的緩衝區管理(buffer management)。
記憶體是電子系統的常用組件(component)。具有記憶體的電子系統可包含多個需存取(access)記憶體的組件裝置。然而,記憶體一次只能服務一個組件裝置的一個存取請求。因此,當電子系統的多個組件裝置在同一時間請求存取記憶體時,則需要緩衝區管理裝置來處置(handle)多個組件裝置對記憶體的存取請求。
第1圖為具有習用緩衝區管理裝置104的電子系統100的方塊示意圖。除緩衝區管理裝置104之外,電子系統100還包含多個電路區塊102a~102n、記憶體控制器106和記憶體108。電路區塊102a~102n分別連接於電子系統100的多個組件裝置,並且當組件裝置需存取記憶體108時,相應的電路區塊產生發送至緩衝區管理裝置104的存取請求信號(Req)。存取請求信號包含請求模式資訊(Mode)和將要寫入記憶體108的資料(Odata),其中請求模式資訊指示存取請求的類型,例如讀取請求、寫入請求、位元組讀取請求、位元組寫入請求、遮罩讀取請求或遮罩寫入請求。
緩衝區管理裝置104包括一仲裁器112、一模式鎖存電路114和一位址產生器116。當仲裁器112在同一時間 從電路區塊102a~102n接收到多個存取請求信號時,仲裁器112從多個電路區塊102a~102n中選擇一個持有者(owner)以發送存取請求信號至記憶體108。在選擇持有者後,仲裁器112發送一授與信號(Gnt)至持有者,以通知該電路區塊其存取請求已得到授與。接著,模式鎖存電路114儲存由持有者發送的存取請求的請求模式資訊(Mode)。然後,根據仲裁器112選擇的持有者和儲存於模式鎖存電路114的請求模式資訊,位址產生器116產生位址資訊(Addr),其中位址資訊可指示由持有者存取的記憶體位址。
在選擇持有者後,仲裁器112產生關於發送存取請求的持有者的持有者資訊。並且,根據由持有者產生的請求模式資訊,仲裁器112也產生請求類型資訊(Req-type),其中請求類型資訊可指示存取請求的類型,例如讀取請求或寫入請求。因此,可形成包含持有者資訊、請求類型資訊、寫入資料(Odata)和位址資訊的記憶體存取請求信號,並將該記憶體存取請求信號傳輸至記憶體控制器106。
接著,記憶體控制器106根據記憶體存取請求信號存取記憶體108,產生一記憶體響應信號以響應該記憶體存取請求信號。在一實施例中,記憶體響應信號包括位址閂賦能信號(Ale)、來自記憶體控制器106的資料閂賦能信號(Dle)、根據記憶體存取請求信號自記憶體108讀取的資料(Idata)。位址閂賦能信號通知持有者現有位址已存取過,並請求一新位址。資料閂賦能信號通知持有者現有資料已輸出給持有者。
接著,仲裁器112把位址閂賦能信號、資料閂賦能信 號和讀出資料作為存取響應信號轉送給從多個電路區塊102a~102n選擇出的持有者。電路區塊發送一位址增量信號(Ptr-inc)至位址產生器116,以遞增位址資訊的位址。當一存取請求信號請求的所有位址均已存取後,仲裁器112發送位址閂完成信號(Ale-last)以通知持有者。當一存取請求信號請求的所有資料均已自記憶體108讀出後,仲裁器112發送資料閂完成信號(Dle-last)以通知持有者。在現有持有者的所有存取請求完成後,仲裁器112從其他電路區塊102a~102n中選擇能夠存取記憶體108的下一個持有者,並且下一個持有者重覆相同的記憶體存取程序。
緩衝區管理裝置104藉由模式鎖存電路114和位址產生器116產生位址資訊(Addr)。如果存取記憶體的電路區塊可獨立產生位址資訊,則模式鎖存電路114和位址產生器116可從緩衝區管理裝置104中刪除(omit)。
參考第2圖,第2圖為具有另一個習用緩衝區管理裝置204的電子系統200的方塊示意圖。多個電路區塊202a~202n直接產生存取請求,其中存取請求包含請求類型資訊(Req-type)、寫入資料(Odata)和存取位址(Addr)。在仲裁器212從電路區塊202a~202n中選擇記憶體208的一持有者後,仲裁器212直接將由持有者產生的請求類型資訊、寫入資料和存取位址作為記憶體存取信號轉送給記憶體控制器206。因此,在如第2圖所示的緩衝區管理裝置204中,不存在模式鎖存電路114和位址產生器116。
隨著電子系統的發展,對記憶體的帶寬需求正逐漸增加。然而,為了獲得更高的帶寬,需犧牲一些性能(例如 晶片面積或者電力消耗)來適應時序要徑(timing critical path)。因此,需要一作為記憶體和組件電路間接口介面的緩衝區管理裝置來解決此問題。
由於在現有技術中對電子系統的記憶體帶寬需求逐漸增加,而為了獲得更高的帶寬,需犧牲晶片面積或者電力消耗等性能來適應時序要徑,有鑒於此,本發明的目的之一是提供一種緩衝區管理裝置及記憶體的緩衝區管理方法。
本發明提供一種緩衝區管理裝置,耦接於一記憶體和存取該記憶體的多個電路區塊間,其中該緩衝區管理裝置包括:一仲裁器,從該電路區塊中為多個緩衝區選擇多個持有者,傳送該多個持有者產生的多個存取請求信號至相應的緩衝區,並傳送由該相應緩衝區獲取到的多個存取響應信號至該多個持有者以回應該多個存取請求信號;該多個緩衝區,緩衝由該多個持有者產生的該多個存取請求信號,並且緩衝發送至該多個持有者的該多個存取響應信號;以及一多工器,交替從該多個緩衝區獲取該多個存取請求信號,以產生一記憶體存取信號,發送該記憶體存取信號至該記憶體的一記憶體控制器,接收由該記憶體控制器產生的一記憶體響應信號以回應該記憶體存取信號,將該記憶體響應信號作為該多個存取響應信號分配至該多個緩衝區。
本發明另提供一種記憶體的緩衝區管理方法,其中多 個電路區塊請求存取該記憶體,該方法包括:為多個緩衝區從該電路區塊中選擇多個持有者;由該多個緩衝區緩衝該多個持有者產生的多個存取請求信號;交替的自該多個緩衝區獲取該多個存取請求信號,以產生一傳送至該記憶體的一記憶體控制器的記憶體存取信號;在接收一記憶體響應信號後,將該記憶體響應信號作為多個存取響應信號分配至該多個緩衝區,其中該記憶體響應信號係為回應該記憶體存取信號而由該記憶體控制器產生;由該緩衝區緩衝該多個存取響應信號;以及從該多個緩衝區獲取該多個存取響應信號,傳送該多個存取響應信號至該多個持有者以回應該多個存取請求信號。
本發明另提供一種緩衝區管理裝置,耦接於一記憶體和存取該記憶體的多個電路區塊間,其中該緩衝區管理裝置包括:一仲裁器,從該多個電路區塊中為一緩衝區的多個導管選擇多個持有者,傳送該多個持有者產生的多個存取請求信號至該相應的導管,並傳送自該相應導管獲取到的多個存取響應信號至該多個持有者以回應該多個存取請求信號;該緩衝區,包括該多個導管,其中每個導管緩衝由該相應持有者產生的該多個存取請求信號,並且緩衝發送至該相應持有者的該多個存取響應信號;以及一多工器,交替從該緩衝區的該多個導管獲取該多個存取請求信號,以產生一記憶體存取信號,發送該記憶體存取信號至該記憶體的一記憶體控制器,接收由該記憶體控制器產生的一記憶體響應信號以回應該記憶體存取信號,將該記憶體響應信號作為該多個存取響應信號分配至該多個導管。
利用本發明可以更有效的使用緩衝區,減少緩衝區的數目、晶片面積和電力消耗。並且藉由高操作頻率,本發明可增加記憶體的資料帶寬以改進系統效能。
為了讓本發明之目的、特徵、及優點能更明顯易懂,下文特舉較佳實施例做詳細之說明。實施例係為說明本發明之用,並非用以限制本發明。本發明的保護範圍以所附申請專利範圍為準。
第3圖為根據本發明具有緩衝區管理裝置304的電子系統300的方塊示意圖。除了緩衝區管理裝置304外,電子系統300還包含多個電路區塊302a~302n、記憶體控制器306和記憶體308。記憶體308和記憶體控制器306的操作頻率比電路區塊302a~302n的操作頻率高。總體上來說,高頻的範圍為低頻的一到兩倍。在一實施例中,高頻為低頻的兩倍。因此,與第1圖中的緩衝區管理裝置104相比,緩衝區管理裝置304具有介面的區別性特徵,該介面耦接(couple)於具有不同的操作頻率的記憶體308和電路區塊302a~302n之間。
緩衝區管理裝置304包含仲裁器312、兩個模式鎖存電路314和315、兩個位址產生器316和317、兩個緩衝區320和330以及多工器340。仲裁器312之操作頻率為低頻,多工器340之操作頻率為高頻。當電路區塊302a~302n需存取記憶體308時,電路區塊302a~302n發送存取請求(Req)至仲裁器312。在一實施例中,存取請求包含請求模 式資訊(Mode)和寫入資料(Odata),其中請求模式資訊可指示該存取請求為讀取請求或寫入請求。以本實施例中具有兩個模式的兩個持有者為例,當仲裁器312在同一時間從電路區塊302a~302n接收到多個存取請求時,根據電路區塊302a~302n的優先級別,仲裁器312從電路區塊302a~302n中為兩個緩衝區320和330選擇兩個發送存取請求的持有者。每個持有者專用於緩衝區320和330的其中之一,且從電路區塊302a~302n中選擇的兩個持有者可以是相同的電路區塊,也可以是不同的電路區塊。
在選擇緩衝區320和330的持有者後,仲裁器312發送授與信號(Gnt)至兩個持有者,以通知電路區塊其存取請求已得到授與。接著,模式鎖存電路314和315分別儲存由兩個持有者發送的存取請求的請求模式資訊(Mode)。然後,根據儲存於模式鎖存電路314和315的請求模式資訊,位址產生器316和317分別產生位址資訊(Addr1和Addr2),其中位址資訊可分別指示由兩個持有者存取的記憶體位址。
在選擇每個緩衝區320和330的持有者後,仲裁器312分別產生持有者資訊(Owner1和Owner2),持有者資訊分別指示發送存取請求的持有者。並且,根據由兩個持有者產生的請求模式資訊(Mode),仲裁器312也產生請求類型資訊(Req-type1和Req-type2),其中請求類型資訊可指示存取請求為讀取請求或寫入請求。因此,可形成相應於緩衝區320的第一持有者的第一存取請求信號並傳輸至緩衝區320,以及形成相應於緩衝器330的第二持有者的第二存取 請求信號並傳輸至緩衝器330,其中第一存取請求信號包含持有者資訊(Owner1)、請求類型資訊(Req-type1)、寫入資料(Odata1)和位址資訊(Addr1),第二存取請求信號包含持有者資訊(Owner2)、請求類型資訊(Req-type2)、寫入資料(Odata2)和位址資訊(Addr2)。
緩衝區320包括第一組件緩衝區322以及第二組件緩衝區324,緩衝區330亦包括第一組件緩衝區332以及第二組件緩衝區334。在一實施例中,第一組件緩衝區322和332以及第二組件緩衝區324和334均為先進先出(FIFO)環緩衝區(ring buffer)。第一組件緩衝區322和332分別緩衝第一持有者的第一存取請求信號和第二持有者的第二存取請求信號。例如,第一組件緩衝區322儲存第一持有者的由第一存取請求信號所運載(carry)的持有者資訊(Owner1)、請求類型資訊(Req-type1)、寫入資料(Odata1)和存取位址(Addr1),第二組件緩衝區332儲存第二持有者的由第二存取請求信號所運載的持有者資訊(Owner2)、請求類型資訊(Req-type2)、寫入資料(Odata2)和存取位址(Addr2)。
接著,多工器340分別從組件緩衝區322和332獲取(retrieve)第一存取請求信號和第二存取請求信號。然後多工器340交替選擇第一存取請求信號和第二存取請求信號作為記憶體存取信號,並以高頻將記憶體存取信號傳送至記憶體控制器306。舉例來說,包含儲存於第一組件緩衝區322的持有者資訊(Owner1)、請求類型資訊(Req-type1)、寫入資料(Odata1)和存取位址(Addr1)的第一存取請求信 號首先作為記憶體存取信號被傳送至記憶體控制器306。在記憶體控制器306完全接收關於第一存取請求信號的記憶體存取信號後,第二存取請求信號(包括Owner2,Req-type2,Odata2,及Addr2)作為記憶體存取信號被傳送至記憶體控制器306。
第一存取請求信號和第二存取請求信號的資料以低頻傳送至第一組件緩衝區322和332。當多工器340的操作頻率比普通架構的頻率高時,電子系統300的操作帶寬將近似線性的增加。
記憶體控制器306根據該記憶體存取信號存取記憶體308,並且產生高頻記憶體響應信號以響應記憶體存取信號。在一實施例中,記憶體響應信號包括從記憶體308導出的讀出資料(Idata),和自記憶體控制器306導出的位址閂賦能(Ale)資訊及資料閂賦能(Dle)資訊。在多工器340自記憶體控制器306接收到記憶體響應信號後,多工器340以高頻交替將該記憶體響應信號分配至緩衝區320和330,作為第一存取響應信號和第二存取響應信號。第一存取響應信號儲存在緩衝區320的第二組件緩衝區324中,第二存取響應信號儲存在緩衝器330的第二組件緩衝區334中。在一實施例中,第一存取響應信號和第二存取響應信號包括根據記憶體存取請求信號由記憶體控制器306自記憶體308獲取的讀出資料(Idata1和Idata2)。
接著,仲裁器312自第二組件緩衝區324和334中獲取存取響應信號,並將存取響應信號以低頻傳送至持有者。因為一個電路區塊可能是緩衝區320或緩衝區330的 持有者,電路區塊302a~302n可接收自緩衝區320獲取的讀出資料(Idata1)或自緩衝區330獲取的讀出資料(Idata2)。如果一電路區塊同時是緩衝區320和緩衝區330的持有者,則該電路區塊同時接收讀出資料(Idata1和Idata2)。
並且,當現行位址已經過存取,仲裁器312產生一位址閂信號(Ale1/Ale2)以向持有者請求新位址。當現行資料已輸出給持有者,仲裁器312產生一資料閂信號(Dle1/Dle2)以通知持有者。當存取請求信號請求的所有位址已經存取時,仲裁器312發送位址閂完成信號(Ale-last1/Ale-last2),以通知持有者。當存取請求信號請求的所有資料已經自第二組件緩衝區324或334讀出時,仲裁器312發送資料閂完成信號(Dle-last1/Dle-last2),以通知持有者。
如果存取記憶體的電路區塊302a~302n可獨立產生位址資訊,則模式鎖存電路314和315以及位址產生器316和317可從緩衝區管理裝置304中刪除。
參考第4圖,第4圖為根據本發明具有另一個緩衝區管理裝置404的電子系統400的方塊示意圖。多個電路區塊402a~402n直接產生存取請求(Req),其中存取請求包含請求類型資訊(Req-type)、寫入資料(Odata)和存取位址(Addr)。在仲裁器412從電路區塊402a~402n中選擇緩衝區420和430的持有者後,仲裁器412直接將由持有者產生的請求類型資訊(Req-type)、寫入資料(Odata)和存取位址(Addr)轉送給緩衝區420和430。在如第4圖所示的緩衝區管理裝置404中,不存在模式鎖存電路314和315以及位 址產生器316和317,其中第4圖所示的第一組件緩衝區422和432、第二組件緩衝區424和434、多工器440及記憶體控制器406與第3圖中類似。。
記憶體308和408的高頻受限於低頻一到兩倍的範圍。當記憶體的高頻高於存取記憶體電路區塊的低頻的兩倍時,第3圖和第4圖所示的緩衝區管理裝置304和404的架構可以延伸形成一新的介於電路區塊和記憶體間的緩衝區管理裝置。舉例來說,當記憶體操作高頻為電路區塊低頻的N倍時(即,該高頻除以該低頻等於N),新的緩衝區管理裝置包括M個緩衝區,其中緩衝區的數目M值為不小於商數(quotient)N的最小整數。在一實施例中,新的緩衝區管理裝置還包括M個模式鎖存電路和M個位址產生器。
參考第5圖,第5圖為根據本發明具有另一緩衝區管理裝置504的電子系統500的方塊示意圖。緩衝區管理裝置504包括仲裁器512、一包括多個導管552a~552m的緩衝區550和多工器540。除了緩衝區550外,緩衝區管理裝置504與第4圖所示的緩衝區管理裝置404相似。多個電路區塊502a~502n請求存取記憶體508並發送存取請求信號Req1 ~Reqn 至緩衝區管理裝置504的仲裁器512。在一實施例中,存取請求信號Req1 ~Reqn 與第3圖和第4圖所示的存取請求信號相同。接著,仲裁器512自電路區塊502a~502n中為緩衝區550的導管552a~552m選擇多個持有者,並且將持有者產生的存取請求信號Reqa ~Reqm 傳送至相應的導管552a~552m。
導管552a~552m的操作與第4圖所示的緩衝區420和430相似,並且緩衝由相應的持有者產生的存取請求信號Reqa ~Reqm 。接著,多工器540交替的自緩衝區550的導管552a~552m中獲取存取請求信號Reqa ~Reqm 以產生記憶體存取信號MA,並發送該記憶體存取信號MA至記憶體508的記憶體控制器506。記憶體控制器506接著根據記憶體存取信號MA自記憶體508中獲取資料,以產生記憶體響應信號MR。在多工器540接收到由記憶體控制器506產生的記憶體響應信號MR後,多工器540將記憶體響應信號MR作為存取響應信號Repa ~Repm 分配至導管552a~552m。
接著,緩衝區550的導管552a~552m緩衝存取響應信號Repa ~Repm 。在一實施例中,存取響應信號Repa ~Repm 與第3圖和第4圖中的記憶體響應信號相同,其中記憶體響應信號包括讀出資料(Idata)、位址閂賦能(Ale)資訊和資料閂賦能(Dle)資訊。仲裁器512接著自導管552a~552m中獲取存取響應信號Repa ~Repm ,並將存取響應信號Repa ~Repm 作為存取響應信號Rep1 ~Repn 傳送至持有者502a~502n以回應存取請求信號Req1 ~Reqn 。在一實施例中,記憶體508和記憶體控制器506之操作頻率為高頻,電路區塊502a~502n之操作頻率為低頻。多工器540發送記憶體存取信號MA至記憶體控制器506,並且以高頻自記憶體控制器506接收記憶體響應信號MR,仲裁器512自電路區塊502a~502n接收存取請求信號Req1 ~Reqn ,並且以低頻傳送存取響應信號Rep1 ~Repn 至電路區塊502a ~502n。
依據本發明的實施例,本發明亦提供一種記憶體的緩衝區管理方法,其中多個電路區塊請求存取該記憶體,記憶體的緩衝區管理方法包括下列步驟:為多個緩衝區從該多個電路區塊中選擇多個持有者;由該多個緩衝區緩衝該多個持有者產生的多個存取請求信號;交替的自該多個緩衝區獲取該多個存取請求信號,以產生一傳送至該記憶體的一記憶體控制器的記憶體存取信號;在接收一記憶體響應信號後,將該記憶體響應信號作為多個存取響應信號分配至該多個緩衝區,其中該記憶體響應信號係為回應該記憶體存取信號而由該記憶體控制器產生;由該多個緩衝區緩衝該多個存取響應信號;以及從該多個緩衝區獲取該多個存取響應信號,傳送該多個存取響應信號至該多個持有者以回應該多個存取請求信號。
本發明提供的一種緩衝區管理裝置,介面連接多個電路區塊和一記憶體,其中多個電路區塊之操作頻率為低頻,記憶體之操作頻率為高頻。藉由這些實施例,可以更有效的使用緩衝區,減少緩衝區的數目、晶片面積和電力消耗。並且藉由高操作頻率,可增加記憶體的資料帶寬以改進系統效能。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100、200、300、400、500‧‧‧電子系統
104、204、304、404、504‧‧‧緩衝區管理裝置
102a~102n、202a~202n、302a~302n、402a~402n、502a~502n‧‧‧電路區塊
106、206、306、406、506‧‧‧記憶體控制器
108、208、308、408、508‧‧‧記憶體
112、212、312、412、512‧‧‧仲裁器
114、314、315‧‧‧模式鎖存電路
116、316、317‧‧‧位址產生器
320、330、420、430、550‧‧‧緩衝區
340、440、540‧‧‧多工器
322、332、422、432‧‧‧第一組件緩衝區
324、334、424、434‧‧‧第二組件緩衝區
552a~552m‧‧‧導管
第1圖為具有習用緩衝區管理裝置的電子系統的方塊示意圖;第2圖為具有另一個習用緩衝區管理裝置的電子系統的方塊示意圖;第3a、3b圖為根據本發明具有緩衝區管理裝置的電子系統的方塊示意圖;第4圖為根據本發明具有另一個緩衝區管理裝置的電子系統的方塊示意圖;第5圖為根據本發明具有另一緩衝區管理裝置的電子系統的方塊示意圖。
400‧‧‧電子系統
404‧‧‧緩衝區管理裝置
402a~402n‧‧‧電路區塊
406‧‧‧記憶體控制器
408‧‧‧記憶體
412‧‧‧仲裁器
420、430‧‧‧緩衝區
440‧‧‧多工器
422、432‧‧‧第一組件緩衝區
424、434‧‧‧第二組件緩衝區

Claims (25)

  1. 一種緩衝區管理裝置,耦接於一記憶體和多個電路區塊間,其中該多個電路區塊用於存取該記憶體,該緩衝區管理裝置包括:一仲裁器,從該多個電路區塊中為多個緩衝區選擇多個持有者,傳送該多個持有者產生的多個存取請求信號至相應的緩衝區,並傳送由該多個相應緩衝區獲取到的多個存取響應信號至該多個持有者以回應該多個存取請求信號;該多個緩衝區,緩衝由該多個持有者產生的該多個存取請求信號,並且緩衝發送至該多個持有者的該多個存取響應信號;以及一多工器,交替從該多個緩衝區獲取該多個存取請求信號,以產生一記憶體存取信號,發送該記憶體存取信號至該記憶體的一記憶體控制器,接收由該記憶體控制器產生的一記憶體響應信號以回應該記憶體存取信號,將該記憶體響應信號作為該多個存取響應信號分配至該多個緩衝區。
  2. 如申請專利範圍第1項所述之緩衝區管理裝置,其中該記憶體和該記憶體控制器之操作頻率為高頻,該多個電路區塊之操作頻率為低頻,該多工器以高頻發送該記憶體存取信號至該記憶體控制器,並以高頻自該記憶體控制器接收該記憶體響應信號;該仲裁器以低頻自該多個持有者接收該多個存取請求信號,並以低頻傳送該多個存取響應信號至該多個持有者。
  3. 如申請專利範圍第1項所述之緩衝區管理裝置,其中該多個緩衝區為先進先出環緩衝區。
  4. 如申請專利範圍第2項所述之緩衝區管理裝置,其中該多個緩衝區的數目為不小於將該高頻除以該低頻所得商數的最小整數。
  5. 如申請專利範圍第1項所述之緩衝區管理裝置,其中該多個緩衝區中的每一個包括:一第一組件緩衝區,用於緩衝該多個持有者產生的該多個存取請求信號,其中該多個存取請求信號由該仲裁器指定給該多個緩衝區;以及一第二組件緩衝區,用於緩衝發送至該多個持有者的該多個存取響應信號,其中該多個存取響應信號由該仲裁器指定給該多個緩衝區。
  6. 如申請專利範圍第1項所述之緩衝區管理裝置,其中每個該存取請求信號包括持有者資訊、請求模式資訊、寫入資料和位址資訊,其中該持有者資訊指示發送該存取請求信號的持有者,該請求模式資訊指示一存取請求為一讀取請求或一寫入請求,該位址資訊指示該記憶體的存取位址。
  7. 如申請專利範圍第1項所述之緩衝區管理裝置,其中該存取響應信號包括根據該存取請求信號由該記憶體控制器從該記憶體獲取出的讀出資料。
  8. 如申請專利範圍第6項所述之緩衝區管理裝置,其中該緩衝區管理裝置更包括:多個模式鎖存電路,該每個模式鎖存電路專用於其中 一個該緩衝區,以儲存由相應緩衝區的持有者產生的請求模式資訊;以及多個位址產生器,耦接於該多個模式鎖存電路和該多個緩衝區間,該每個位址產生器專用於其中一個該緩衝區,根據該請求模式資訊和該持有者資訊產生位址資訊,其中該位址資訊作為傳送至該相應緩衝區的該存取請求信號的一部分;其中,該多個模式鎖存電路的數目和該多個位址產生器的數目均與該多個緩衝區的數目相等。
  9. 如申請專利範圍第2項所述之緩衝區管理裝置,其中該多工器之操作頻率為高頻,該仲裁器之操作頻率為低頻。
  10. 如申請專利範圍第1項所述之緩衝區管理裝置,其中該仲裁器根據該多個電路區塊的優先級別從該多個電路區塊中選擇相應於該多個緩衝區的該多個持有者。
  11. 一種記憶體的緩衝區管理方法,其中多個電路區塊請求存取該記憶體,該方法包括:為多個緩衝區從該多個電路區塊中選擇多個持有者;由該多個緩衝區緩衝該多個持有者產生的多個存取請求信號;交替的自該多個緩衝區獲取該多個存取請求信號,以產生一傳送至該記憶體的一記憶體控制器的記憶體存取信號;在接收一記憶體響應信號後,將該記憶體響應信號作為多個存取響應信號分配至該多個緩衝區,其中該記憶體 響應信號係為回應該記憶體存取信號而由該記憶體控制器產生;由該多個緩衝區緩衝該多個存取響應信號;以及從該多個緩衝區獲取該多個存取響應信號,傳送該多個存取響應信號至該多個持有者以回應該多個存取請求信號。
  12. 如申請專利範圍第11項所述之記憶體的緩衝區管理方法,其中該記憶體和該記憶體控制器操作頻率為高頻,該電路區塊之操作頻率為低頻,該多個存取請求信號和該多個存取響應信號由低頻生成,該記憶體請求信號和該記憶體響應信號由高頻生成。
  13. 如申請專利範圍第11項所述之記憶體的緩衝區管理方法,其中該多個緩衝區為先進先出環緩衝區。
  14. 如申請專利範圍第11項所述之記憶體的緩衝區管理方法,其中該多個緩衝區的數目為不小於將該高頻除以該低頻所得商數的最小整數。
  15. 如申請專利範圍第11項所述之記憶體的緩衝區管理方法,其中該每個緩衝區包括:一第一組件緩衝區,用於緩衝該多個持有者產生的該多個存取請求信號,其中該多個存取請求信號由一仲裁器指定給該多個緩衝區;以及一第二組件緩衝區,用於緩衝發送至該多個持有者的該多個存取響應信號,其中該多個存取響應信號由該仲裁器指定給該多個緩衝區。
  16. 如申請專利範圍第11項所述之記憶體的緩衝區管 理方法,其中該每個存取請求信號包括持有者資訊、請求模式資訊、寫入資料和位址資訊,其中該持有者資訊指示發送該存取請求信號的持有者,該請求模式資訊指示一存取請求為一讀取請求還是一寫入請求,該位址資訊指示該記憶體的存取位址。
  17. 如申請專利範圍第11項所述之記憶體的緩衝區管理方法,其中該多個存取響應信號包括根據該存取請求信號由該記憶體控制器從該記憶體獲取出的讀出資料。
  18. 如申請專利範圍第11項所述之記憶體的緩衝區管理方法,其中根據該多個電路區塊的優先級別選擇相應於該多個緩衝區的該持有者。
  19. 一種緩衝區管理裝置,耦接於一記憶體和存取該記憶體的多個電路區塊間,其中該緩衝區管理裝置包括:一仲裁器,從該多個電路區塊中為一緩衝區的多個導管選擇多個持有者,傳送該多個持有者產生的多個存取請求信號至該相應的導管,並傳送自該相應導管獲取到的多個存取響應信號至該多個持有者以回應該多個存取請求信號;該緩衝區,包括該多個導管,其中每個導管緩衝由該相應持有者產生的該存取請求信號,並且緩衝發送至該相應持有者的該存取響應信號;以及一多工器,交替從該緩衝區的該多個導管獲取該多個存取請求信號,以產生一記憶體存取信號,發送該記憶體存取信號至該記憶體的一記憶體控制器,接收由該記憶體控制器產生的一記憶體響應信號以回應該記憶體存取信 號,將該記憶體響應信號作為多個該存取響應信號分配至該多個導管。
  20. 如申請專利範圍第19項所述之緩衝區管理裝置,其中該記憶體和該記憶體控制器之操作頻率為高頻,該多個電路區塊之操作頻率為低頻,該多工器以高頻發送該記憶體存取信號至該記憶體控制器,並以高頻自該記憶體控制器接收該記憶體響應信號;該仲裁器以低頻自該多個持有者接收該多個存取請求信號,並以低頻傳送該多個存取響應信號至該多個持有者。
  21. 如申請專利範圍第20項所述之緩衝區管理裝置,其中該多工器之操作頻率為高頻,該仲裁器之操作頻率為低頻。
  22. 如申請專利範圍第19項所述之緩衝區管理裝置,其中該多個導管中每個包括:一第一組件導管,用於緩衝由該仲裁器指定的該相應持有者產生的該多個存取請求信號;以及一第二組件導管,用於緩衝發送至由該仲裁器指定的該多個持有者的該多個存取響應信號。
  23. 如申請專利範圍第19項所述之緩衝區管理裝置,其中每個該存取請求信號包括持有者資訊、請求模式資訊、寫入資料和位址資訊,其中該持有者資訊指示發送該存取請求信號的持有者,請求模式資訊指示一存取請求為一讀取請求還是一寫入請求,該位址資訊指示該記憶體的存取位址。
  24. 如申請專利範圍第19項所述之緩衝區管理裝置, 其中該多個存取響應信號包括根據該多個存取請求信號由該記憶體控制器從該記憶體獲取出的讀出資料。
  25. 如申請專利範圍第19項所述之緩衝區管理裝置,其中該仲裁器根據該多個電路區塊的優先級別從該多個電路區塊中選擇相應於該多個導管的該多個持有者。
TW098103808A 2008-11-25 2009-02-06 緩衝區管理裝置及記憶體的緩衝區管理方法 TWI411918B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/277,450 US8433859B2 (en) 2008-11-25 2008-11-25 Apparatus and method for buffer management for a memory operating

Publications (2)

Publication Number Publication Date
TW201020789A TW201020789A (en) 2010-06-01
TWI411918B true TWI411918B (zh) 2013-10-11

Family

ID=42197435

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098103808A TWI411918B (zh) 2008-11-25 2009-02-06 緩衝區管理裝置及記憶體的緩衝區管理方法

Country Status (3)

Country Link
US (1) US8433859B2 (zh)
CN (1) CN101739366B (zh)
TW (1) TWI411918B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101847976B1 (ko) * 2011-11-03 2018-04-12 에스케이하이닉스 주식회사 반도체 시스템
CN105573921A (zh) * 2014-10-15 2016-05-11 中兴通讯股份有限公司 文件存储方法及装置
US10209900B2 (en) * 2016-09-19 2019-02-19 Fungible, Inc. Buffer allocation and memory management using mapping table
US10997097B2 (en) * 2019-06-04 2021-05-04 Western Digital Technologies, Inc. Enabling high speed command address interface for random read

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119196A (en) * 1997-06-30 2000-09-12 Sun Microsystems, Inc. System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates
TW444160B (en) * 1998-09-28 2001-07-01 Mentor Arc Inc Buffer management device and method for improving buffer usage and access performance in a data processing system
US6347348B1 (en) * 1998-06-30 2002-02-12 Sun Microsystems, Inc. Buffer management system having an output control configured to retrieve data in response to a retrieval request from a requesting one of a plurality of destinations
TW200602861A (en) * 2004-01-30 2006-01-16 Micron Technology Inc Buffer control system and method for a memory system having memory request buffers
US7139280B2 (en) * 2001-07-30 2006-11-21 Yishay Mansour Buffer management policy for shared memory switches
TW200707206A (en) * 2005-08-11 2007-02-16 Via Tech Inc Wait aware memory arbiter

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7237036B2 (en) * 1997-10-14 2007-06-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding a TCP connection
US6757795B2 (en) 2001-04-03 2004-06-29 International Business Machines Corporation Apparatus and method for efficiently sharing memory bandwidth in a network processor
US7114041B2 (en) * 2002-12-20 2006-09-26 Lsi Logic Corporation AMBA modular memory controller
US7120714B2 (en) * 2003-05-27 2006-10-10 Intel Corporation High-speed starvation-free arbiter system, rotating-priority arbiter, and two stage arbitration method
US7343457B1 (en) * 2003-08-01 2008-03-11 Unisys Corporation Dual active bank memory controller
US7698498B2 (en) * 2005-12-29 2010-04-13 Intel Corporation Memory controller with bank sorting and scheduling
KR100888597B1 (ko) * 2006-09-20 2009-03-16 삼성전자주식회사 메모리 인터페이스 제어 장치 및 제어 방법
JP2008293484A (ja) * 2007-04-27 2008-12-04 Panasonic Corp バッファメモリ共有装置
US7594047B2 (en) * 2007-07-09 2009-09-22 Hewlett-Packard Development Company, L.P. Buffer circuit

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119196A (en) * 1997-06-30 2000-09-12 Sun Microsystems, Inc. System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates
US6347348B1 (en) * 1998-06-30 2002-02-12 Sun Microsystems, Inc. Buffer management system having an output control configured to retrieve data in response to a retrieval request from a requesting one of a plurality of destinations
TW444160B (en) * 1998-09-28 2001-07-01 Mentor Arc Inc Buffer management device and method for improving buffer usage and access performance in a data processing system
US7139280B2 (en) * 2001-07-30 2006-11-21 Yishay Mansour Buffer management policy for shared memory switches
TW200602861A (en) * 2004-01-30 2006-01-16 Micron Technology Inc Buffer control system and method for a memory system having memory request buffers
TW200707206A (en) * 2005-08-11 2007-02-16 Via Tech Inc Wait aware memory arbiter

Also Published As

Publication number Publication date
CN101739366A (zh) 2010-06-16
US8433859B2 (en) 2013-04-30
CN101739366B (zh) 2012-05-02
US20100131722A1 (en) 2010-05-27
TW201020789A (en) 2010-06-01

Similar Documents

Publication Publication Date Title
CN105900076B (zh) 用于处理多个交易的数据处理系统及方法
US20040117561A1 (en) Snoop filter bypass
KR20080039499A (ko) 전송 방향 및 소비되는 대역폭에 기초하는 가중된 버스중재
TWI411918B (zh) 緩衝區管理裝置及記憶體的緩衝區管理方法
US20080276049A1 (en) Semiconductor memory apparatus, memory access control system and data reading method
US20080082621A1 (en) Slave network interface circuit for improving parallelism of on-chip network and system thereof
KR100378389B1 (ko) 글로벌 코히런스를 제공하는 데이터처리시스템
JP5443586B2 (ja) 回路構成におけるデータ交換を制御するための回路構成、および方法
US5983299A (en) Priority request and bypass bus
KR102181441B1 (ko) 복수의 기능 블록들을 포함하는 반도체 장치
US7185128B1 (en) System and method for machine specific register addressing in external devices
US6560664B1 (en) Method and apparatus for translation lookaside buffers to access a common hardware page walker
JP4902640B2 (ja) 集積回路、及び集積回路システム
US7130946B2 (en) Configuration and method having a first device and a second device connected to the first device through a cross bar
US6260090B1 (en) Circuit arrangement and method incorporating data buffer with priority-based data storage
US11392517B2 (en) Access control method, bus system, and semiconductor device
KR20080080538A (ko) 데이터 송신 버스에 액세스하는 방법, 대응하는 디바이스및 시스템
JP4621686B2 (ja) パックワードをバスを介して送信する電子データ処理回路
US6581145B1 (en) Multiple source generic memory access interface providing significant design flexibility among devices requiring access to memory
KR20150015215A (ko) 시스템 인터커넥트, 이를 포함하는 시스템온칩, 그리고 이의 구동 방법
CN116150058B (zh) 一种基于axi总线的并发传输模块和方法
CN112416251B (zh) 计算系统
JP2006345011A (ja) 通信装置
US6877055B2 (en) Method and apparatus for efficiently broadcasting transactions between a first address repeater and a second address repeater
KR910010137B1 (ko) 다이렉트 메모리 액세스 제어장치

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees