TWI904236B - 交易加速器操作方法、包括交易加速器之計算元件的操作方法以及包括交易加速器之計算元件 - Google Patents
交易加速器操作方法、包括交易加速器之計算元件的操作方法以及包括交易加速器之計算元件Info
- Publication number
- TWI904236B TWI904236B TW110133724A TW110133724A TWI904236B TW I904236 B TWI904236 B TW I904236B TW 110133724 A TW110133724 A TW 110133724A TW 110133724 A TW110133724 A TW 110133724A TW I904236 B TWI904236 B TW I904236B
- Authority
- TW
- Taiwan
- Prior art keywords
- transaction
- accelerator
- processor
- read
- response
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/22—Microcontrol or microprogram arrangements
- G06F9/28—Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
Abstract
本發明提供一種交易加速器,其可連接於至少一個主機元件與匯流排之間,以及一種交易加速器的操作方法,所述操作方法可包括:自至少一個主機元件接收第一交易請求;將第一交易請求傳輸至匯流排;以及回應於將第一交易請求傳輸至匯流排而將對應於第一交易請求的第一交易回應傳輸至至少一個主機元件。
Description
本文中所描繪的本發明概念的各種實例實施例是關於一種電子元件,且更特定言之,是關於一種交易加速器操作方法,所述交易加速器提高處理器的交易速度;一種包括交易加速器的計算元件的操作方法及/或一種包括交易加速器的計算元件等。
相關申請案的交叉參考
本美國非臨時申請案基於2020年12月16日在韓國智慧財產局(Korean Intellectual Property Office)申請的韓國專利申請案第10-2020-0176815號,所述韓國專利申請案的揭露內容以全文引用的方式併入本文中。
諸如行動元件的計算元件可包括各種處理器及/或多個處理器。所述處理器可用於不同目的。處理器的期望及/或所需效能
可取決於各別處理器的目的而不同。舉例而言,在期望及/或要求相對低效能的情況下,可使用低成本及低效能的處理器來使製造計算元件的成本降低。
低成本及低效能的處理器可使得有可能降低用於製造計算元件的成本。然而,在特定環境中,低成本及低效能的處理器可充當限制計算元件的總體效能的瓶頸。
本發明概念的各種實例實施例提供一種交易加速器操作方法,所述操作方法使得處理器的交易速度較高(例如,增大處理器的頻寬,增大處理器的產出量等);一種包括交易加速器的計算元件的操作方法及/或一種包括交易加速器的計算元件。
根據至少一個實例實施例,一種連接於至少一個主機元件與匯流排之間的交易加速器的操作方法包括:自至少一個主機元件接收第一交易請求;將第一交易請求傳輸至匯流排;以及回應於將第一交易請求傳輸至匯流排而將對應於第一交易請求的第一交易回應傳輸至至少一個主機元件。
根據至少一個實例實施例,一種包括至少一個處理器、交易加速器以及多個周邊元件的計算元件的操作方法包括:藉由至少一個處理器將第一讀取交易請求傳輸至交易加速器;藉由交易加速器將第一讀取交易回應傳輸至至少一個處理器,第一讀取交易回應對應於第一讀取交易請求;回應於第一讀取交易回應而藉由至少一個處理器將第二讀取交易請求傳輸至交易加速器;藉由交易加速器將對應於第二讀取交易請求的第二讀取交易回應傳
輸至至少一個處理器;以及藉由交易加速器將第一讀取交易請求及第二讀取交易請求傳輸至多個周邊元件中的至少一個周邊元件。
根據至少一個實例實施例,計算元件包括:匯流排;多個周邊元件,連接至匯流排;以及中央處理單元(central processing unit;CPU),連接至匯流排,CPU經組態以經由匯流排控制多個周邊元件。CPU包括至少一個處理器核心以及包括兩個或大於兩個交易時槽的交易加速器,交易加速器經組態以自至少一個處理器核心接收第一交易請求,回應於接收到的第一交易請求而將第一交易回應傳輸至至少一個處理器核心,將第一交易請求傳送至匯流排以及將與第一交易請求有關的資訊儲存於兩個或大於兩個交易時槽中的一者中直至第一交易請求完成為止。
在下文中,可詳細且清晰地描述本發明概念的各種實施例至所屬領域中具通常知識者可容易進行本發明概念的程度。
圖1示出根據本發明概念的至少一個實例實施例的計算元件100。參考圖1,計算元件100可包括主匯流排110、至少一個中央處理單元(CPU)120、主記憶體130、至少一個儲存元件140及/或多個周邊元件150等,但實例實施例不限於此,且例如,計算元件100可包括更大或更小數目個構成部件。舉例而言,計算元件100可包括多個CPU、多個主記憶體、多個儲存元件及/或單個周邊元件等。
主匯流排110可在計算元件100的組件之間提供一或多個通道。舉例而言,主匯流排110可包括經組態以與計算元件100的剩餘組件連接的第一節點N1至第六節點N6,但不限於此。主匯流排110可在第一節點N1至第六節點N6之間提供通道,但不限於此。主匯流排110可使用第一節點N1至第六節點N6中的一些節點作為主節點(例如,主要節點等)且可使用第一節點N1至第六節點N6中的剩餘節點作為從節點(例如,次要節點等),但實例實施例不限於此。
中央處理單元(CPU)120可與主匯流排110的第一節點N1連接。CPU 120可與計算元件100的主匯流排110及/或經由主匯流排110與任何其他組件執行至少一個交易操作。交易操作可
包括例如藉由CPU 120將交易請求傳輸至主匯流排110及/或藉由CPU 120自主匯流排110接收對應於交易請求的交易回應,但實例實施例不限於此。交易操作可包括讀取交易操作、寫入交易操作、抹除交易操作等。
CPU 120可包括處理電路,諸如至少一個處理器121、交易加速器123(圖1中標記為Tx.ACC.)及/或橋接器124(圖1中藉由BRG標記)等,但不限於此,且例如可包括更大或更小數目個組成組件,諸如內部記憶體(例如,快取記憶體)等。處理器121可為CPU 120的至少一個核心電路(例如,至少一個處理器核心等)。處理器121可發起各種類型的交易操作且可執行各種操作。根據一些實例實施例,CPU 120(例如,處理電路系統)可包括硬體,諸如處理器、處理器核心、邏輯電路、儲存元件等;硬體/軟體組合,諸如執行軟體及/或執行任何指令集等的至少一個處理器核心;或其組合。舉例而言,處理電路系統更具體言之可包括但不限於場可程式化閘陣列(field programmable gate array;FPGA)、可程式化邏輯單元、特殊應用積體電路(application-specific integrated circuit;ASIC)、系統單晶片(System-on-Chip;SoC)等。
處理器121可並行執行給定及/或期望數目個交易操作。舉例而言,處理器121可將多達給定數目的多個交易請求傳輸至主匯流排110,直至自主匯流排110接收交易回應為止。並列交易操作的給定及/或期望數目可為處理器121能夠同時管理的未決交易操作的數目等。
處理器121可包括靜態隨機存取記憶體(static random
access memory;SRAM)122,但不限於此。SRAM 122可包括各種區段,諸如由處理器121用作快取記憶體的區段、由處理器121用作資料記憶體的區段及/或用作處理器121的工作記憶體的區段等。SRAM 122可劃分成兩個或大於兩個實體區段,或可包括於一個實體區段中。
交易加速器123可增加(及/或擴增)處理器121的並行交易操作的數目。舉例而言,當處理器121僅支援單一交易操作時,交易加速器123可支援處理器121,使得CPU 120執行兩個或大於兩個並行交易操作。當處理器121支援兩個或大於兩個並行交易操作時,交易加速器123可支援處理器121,使得CPU 120執行更大數目的並行交易操作。
在至少一個實例實施例中,當處理器121的通信協定與主匯流排110的通信協定不同時,交易加速器123可支援不同通信協定之間的轉換(及/或轉譯)等。
當處理器121的通信協定與主匯流排110的通信協定不同時,橋接器124可支援不同通信協定之間的轉換(及/或轉譯)等。當處理器121的通信協定與主匯流排110的通信協定相同時,可省略(或可不包括)橋接器124。
在至少一個實例實施例中,處理器121可判定是否經由交易加速器123與主匯流排110通信或是否經由橋接器124與主匯流排110通信。當處理器121經由交易加速器123與主匯流排110通信時,CPU 120的並行交易操作的數目可大於處理器121的並行交易操作的數目,但實例實施例不限於此。
當處理器121經由橋接器124與主匯流排110通信時,
CPU 120的並行交易操作的數目可與處理器121的並行交易操作的數目相同,但實例實施例不限於此。在至少一個實例實施例中,各交易操作可包括目標位址(例如,目的地位址、目的地組件位址等),但不限於此。目標位址可指示主匯流排110中的特定位置,及/或與主匯流排110連接的組件中的一者(及/或包括於一個組件中的內部組件中的一者)相關聯的位址,但不限於此。
處理器121可基於例如包括於目標位址的一部分中的設定,例如,設定包括其最高有效位元的至少一者等來判定是否經由交易加速器123與主匯流排110通信或是否經由橋接器124與主匯流排110通信,但不限於此。
主記憶體130可與例如主匯流排110的第二節點N2連接,但不限於此。主記憶體130可用作計算元件100的工作記憶體、碼記憶體及/或資料記憶體等,但不限於此。主記憶體130可包括例如動態隨機存取記憶體(dynamic random access memory;DRAM)、儲存類記憶體(storage class memory;SCM)等。
儲存元件140可與例如主匯流排110的第三節點N3連接,但不限於此。儲存元件140可為計算元件100的輔助儲存元件、長期儲存元件及/或大容量儲存元件,但不限於此。儲存元件140可為儲存碼(例如,電腦可讀指令、程式碼等)及/或操作計算元件100所必需的資料及藉由使用計算元件100產生的使用者資料的端儲存器。儲存於儲存元件140中的碼或資料的期望及/或必需資訊可由CPU 120加載至主記憶體130上且使用。
儲存元件140可以各種形式中的一者來實施,諸如固態硬碟(solid state drive;SSD)、硬碟驅動機(hard disk drive;HDD)、
光碟驅動機(optical disk drive;ODD)及/或可移除儲存元件等。
一或多個周邊元件150可連接至主匯流排110以擴增計算元件100的功能及/或改良計算元件100的效能等。舉例而言,周邊元件150可包括與例如主匯流排110的第四節點N4連接的功率管理積體電路(power management integrated circuit;PMIC)151等。PMIC 151可調節各種參數,諸如供應至計算元件100的組件的電壓位準(例如,電壓位準等)及/或時脈信號的頻率等,以控制計算元件100的功率消耗。PMIC 151可允許計算元件100自正常模式進入功率節省模式及/或喚醒功率節省模式,從而退出正常模式,但不限於此。
一或多個周邊元件150亦可包括與例如主匯流排110的第五節點N5連接的介面元件152,但不限於此。介面元件152可包括使用者輸入介面,其自使用者,諸如鍵盤、小鍵盤、滑鼠、觸控面板、麥克風、攝影機及/或感測器等接收資訊。介面元件152可包括使用者輸出元件,其將資訊傳達至使用者,諸如監視器、觸控式螢幕、揚聲器、投影儀及/或致動器等。
周邊元件150可包括與例如主匯流排110的第六節點N6連接的其他元件153。其他元件153可為與主匯流排110耦接以改良計算元件100的效能及/或擴增計算元件100的功能等的各種元件,但實例實施例不限於此。
在至少一個實例實施例中,為簡要傳達實例實施例中的一或多者的技術想法及/或益處,出於簡潔及清楚起見,假定處理器121支援的並行交易操作的數目為「1」。然而,本發明概念的實例實施例不限於支援一個並行交易操作的處理器且可支援兩個
或大於兩個並行交易操作。
圖2示出根據本發明概念的至少一個實例實施例的計算元件100的交易加速器123的操作方法。參考圖1及圖2,在操作S110中,交易加速器123可自至少一個主機元件接收至少一個交易請求。主機元件可為圖1中的處理器121,但不限於此。
在操作S120中,交易加速器123可將交易請求傳輸至主匯流排110。在至少一個實例實施例中,當處理器121的通信協定與主匯流排110的通信協定不同時,交易加速器123可轉換交易請求以便傳輸至主匯流排110,但實例實施例不限於此。
在操作S130中,交易加速器123可回應於主匯流排110所接到的交易請求而將交易回應傳輸至主機元件。交易回應可根據及/或基於自處理器121接收的交易請求而向處理器121通知交易操作的狀態,諸如交易操作是否已完成及/或是否已發生任何錯誤等。
在操作S140中,在將交易回應傳輸至處理器121之後,交易加速器123可管理交易請求,直至自主匯流排110接收到交易回應為止。
如上文所描述,交易加速器123可回應於自處理器121接收到交易請求(及/或在其之後及/或緊接在其之後)而將交易回應傳輸至處理器121。處理器121可取決於及/或基於交易回應來識別交易操作的完成。當識別到交易操作完成時,處理器121可執行下一交易操作。亦即,在藉由處理器121發起的交易操作完成之前,處理器121可發起另一至少一個交易操作等。因此,CPU 120的並行交易操作的數目可經視為大於處理器121的並行交易
操作的數目。
根據至少一個實例實施例,藉由處理器121發起的交易操作可藉由交易加速器123管理,但不限於此。交易加速器123可監測是否接收到對應於傳輸至主匯流排110的交易請求的交易回應。因此,可確保及/或證實由處理器121發起的交易操作的完成。
圖3示出根據至少一個實例實施例的交易加速器123執行至少一個寫入交易操作的實例。儘管圖3示出寫入交易操作,但實例實施例不限於此,且例如可為讀取交易操作、抹除操作等。參考圖1及圖3,在操作S210中,處理器121可將至少一個寫入交易請求WTX傳輸至交易加速器123,但不限於此。寫入交易請求WTX可連同寫入識別符WID、目標位址ADDR(例如,目的地位址、目的地組件位址等)及/或寫入資料DAT等一起傳輸,但不限於此,且例如寫入交易請求WTX可具有額外欄位等。
在操作S220中,交易加速器123可將寫入交易請求WTX的寫入識別符WID儲存於記憶體中,諸如交易加速器123的內部緩衝器、SRAM 122等,但實例實施例不限於此。在操作S230中,交易加速器123可將寫入交易請求WTX連同寫入識別符WID、目標位址ADDR及/或寫入資料DAT等傳輸至主匯流排110。
在操作S240中,交易加速器123可將包括寫入識別符WID等的寫入交易回應WRSP傳輸至處理器121。寫入交易回應WRSP可通知處理器121與寫入識別符WID相關聯的寫入交易操作已完成及/或對應於寫入交易操作的任何其他狀態訊息。回應於指示已接收到寫入交易回應WRSP的交易操作狀態,處理器121
可識別寫入交易操作的完成。
操作S250可對應於與寫入交易操作的執行相關聯及/或相對應的潛時(例如,潛時時間)。舉例而言,操作S250中的潛時可包括:交易加速器123將寫入交易請求WTX傳輸至主匯流排110以到達對應於目標位址ADDR的組件處所耗費的第一時間、將寫入資料DAT寫入至對應於目標位址ADDR的組件所耗費的第二時間以及由對應於目標位址ADDR的組件產生的寫入交易回應WRSP到達主匯流排110處所耗費的第三時間等,但不限於此。
在操作S260中,主匯流排110可將寫入交易回應WRSP傳輸至交易加速器123。寫入交易回應WRSP可連同寫入識別符WID等一起傳輸。回應於接收包括寫入識別符WID的寫入交易回應WRSP,交易加速器123可將在操作S220中所儲存的寫入識別符WID與在操作S260中接收到的寫入識別符WID進行比較。
回應於所儲存的寫入識別符WID與接收到的寫入識別符WID相同,交易加速器123可識別出操作S230中傳輸的寫入交易請求WTX的寫入交易操作完成。然後,在操作S270中,交易加速器123可清除(例如,刪除及/或移除等)在操作S220中儲存於記憶體中的寫入識別符WID。換言之,交易加速器123可藉由清除寫入識別符WID等來終止寫入交易請求。
回應於寫入交易請求WTX,對應於第一潛時L1的時間(例如,交易操作潛時)可經採用及/或可流逝,直至自對應於目標位址ADDR的組件接收到寫入交易回應WRSP為止。交易加速器123可回應於自處理器121接收寫入交易請求WTX而將寫入交易回應WRSP傳輸至處理器121。因此,處理器121經歷的潛時(例
如,交易操作潛時)可自第一潛時L1減少至第二潛時L2。亦即,處理器121的寫入交易可藉由交易加速器123加速。
圖4示出根據至少一個實例實施例的包括於交易加速器123中的多個時槽,例如時槽123a、時槽123b以及時槽123c的實例,但實例實施例不限於此,且可存在交易加速器123中包括更大或更小數目的時槽在至少一個實例實施例中,第一時槽123a至第三時槽123c可藉由包括於交易加速器123、處理器121及/或CPU 120中的各種記憶體部件實施,所述記憶體部件諸如先進先出(first-in first-out;FIFO)或後進先出(last-in first-out;LIFO)緩衝器等、堆疊及/或暫存器等,但實例實施例不限於此。
交易加速器123可基於儲存於第一時槽123a至第三時槽123c中的資料及/或值來管理交易請求。舉例而言,交易加速器123可在各時槽點管理對應於一個交易請求的一個交易操作,但不限於此。
圖5示出根據一些實例實施例的交易加速器123基於圖4的第一時槽123a至第三時槽123c增加並行交易操作的數目的實例。為減少及/或防止圖式不必要地複雜,已省略先前圖3中所示出的與可適用於圖5的每一交易操作相關聯的全部冗餘操作。在描述每一交易操作後,若可行,則可參考及/或引用圖3的部分操作。
圖6及圖7示出根據一些實例實施例的藉由圖5的部分操作更新第一時槽123a至第三時槽123c的實例。參考圖1、圖3、圖5以及圖6,在操作S311中,處理器121可將具有第一寫入識別符WID1的寫入交易請求WTX傳輸至交易加速器123,然而,
實例實施例不限於此,且可請求其他類型的交易操作。如參考圖3所描述,寫入交易請求WTX可連同目標位址ADDR及/或寫入資料DAT等一起傳輸,但為清楚及簡潔起見,已自圖5省略目標位址ADDR及寫入資料DAT。
回應於操作S311,交易加速器123可將第一寫入識別符WID1儲存於時槽中,諸如第一時槽123a,但不限於此。在操作S312中,交易加速器123可將具有第一寫入識別符WID1等的寫入交易請求WTX傳輸至主匯流排110。在操作S313中,交易加速器123可將具有第一寫入識別符WID1的寫入交易回應WRSP傳輸至處理器121。
由於至少一個空時槽存在於與處理器121相關聯的時槽中,例如第一時槽123a至第三時槽123c中,因此在操作S321中,處理器121可將具有第二寫入識別符WID2的寫入交易請求WTX傳輸至交易加速器123,但不限於此。換言之,處理器121可判定空時槽是否可用於與處理器121相關聯的多個交易操作時槽中等,且可接著基於判定的結果來傳輸包括交易識別符的交易請求等。回應於操作S321,交易加速器123可將第二寫入識別符WID2儲存於例如第二時槽123b、下一時槽、空時槽等中。在操作S322中,交易加速器123可將具有第二寫入識別符WID2的寫入交易請求WTX傳輸至主匯流排110等。在操作S323中,交易加速器123可將具有第二寫入識別符WID2的寫入交易回應WRSP傳輸至處理器121。
由於至少一個空時槽存在於與處理器121相關聯的時槽,例如第一時槽123a至第三時槽123c中,因此在操作S331中,
處理器121可將具有第三寫入識別符WID3的寫入交易請求WTX傳輸至交易加速器123等。換言之,處理器121可判定空時槽是否可用於與處理器121相關聯的多個交易操作時槽中等,且可接著基於判定的結果來傳輸包括交易識別符的交易請求等。回應於操作S331,交易加速器123可將第三寫入識別符WID3儲存於例如第三時槽123c、下一時槽、空時槽等中,但不限於此。在操作S332中,交易加速器123可將具有第三寫入識別符WID3的寫入交易請求WTX傳輸至主匯流排110。在操作S333中,交易加速器123可將具有第三寫入識別符WID3的寫入交易回應WRSP傳輸至處理器121。
在至少一個實例實施例中,交易加速器123可以FIFO方式將寫入識別符(例如,交易識別符等)依序儲存於多個交易時槽中,例如第一時槽123a至第三時槽123c等中,但實例實施例不限於此,且可使用其他方法。由於空時槽不存在於多個交易時槽,例如第一時槽123a至第三時槽123c等中,及/或由於所有交易時槽,例如第一時槽123a至第三時槽123c等為填滿的,因此在操作S301中,交易加速器123可執行流控制(例如,流控制操作等)。換言之,交易加速器123判定是否存在任何可用的空閒交易時槽,且基於判定的結果,交易加速器123可藉由停用就緒信號來禁止及/或防止處理器121另外傳輸交易請求,但實例實施例不限於此。
參考圖1、圖3、圖5以及圖7,在操作S324中,主匯流排110可將具有第二寫入識別符WID2的寫入交易回應WRSP(例如,交易回應等)傳輸至交易加速器123。在至少一個實例實施例
中,由於主匯流排110及與主匯流排110連接的組件的潛時不同,因此自主匯流排110接收到的寫入交易回應及/或其他交易回應的次序可與傳輸至主匯流排110的寫入交易請求及/或其他交易請求的次序不同,且可允許此亂序。
回應於操作S324,交易加速器123可清除第二時槽123b,但不限於此。由於第二時槽123b已清除及/或交易加速器123判定空閒交易時槽可用等,交易加速器123可藉由啟用就緒信號及/或以其他方式向處理器121發信可傳輸額外交易請求而終止流控制(例如,流控制操作)。
由於空時槽存在於多個交易時槽中,例如第一時槽123a至第三時槽123c等中,因此在操作S341中,處理器121可將具有第四寫入識別符WID4的寫入交易請求WTX傳輸至交易加速器123。回應於操作S341,交易加速器123可將第四寫入識別符WID4儲存於空閒時槽,例如第二時槽123b中。在操作S342中,交易加速器123可將具有第四寫入識別符WID4的寫入交易請求WTX傳輸至主匯流排110等。在操作S343中,交易加速器123可將具有第四寫入識別符WID4的寫入交易回應WRSP傳輸至處理器121。
如上文所描述,當交易加速器123包括三個時槽時,CPU 120的並行交易操作的數目可經視為自「1」增加至「3」,但實例實施例不限於此,且交易加速器123可包括更大或更小數目個時槽等。可基於處理器121支援的並行交易操作的數目及主匯流排110支援的並行交易操作的數目來判定交易加速器123。
圖8示出根據至少一個實例實施例的交易加速器123執
行讀取交易操作的實例。參考圖1及圖8,在操作S410中,處理器121可將讀取交易請求RTX傳輸至交易加速器123,但實例實施例不限於此。讀取交易請求RTX可連同讀取識別符RID及/或目標位址ADDR等一起傳輸,但不限於此,且可包括其他類型的資訊。
在操作S420中,交易加速器123可將讀取交易請求RTX的讀取識別符RID儲存於記憶體中,諸如交易加速器123的內部記憶體、SRAM 122等中。在操作S430中,交易加速器123可將讀取交易請求RTX連同讀取識別符RID及/或目標位址ADDR等一起傳輸至主匯流排110。
在操作S440中,交易加速器123可將包括讀取識別符RID等的讀取交易回應RRSP傳輸至處理器121。讀取交易回應RRSP可通知處理器121交易請求的狀態,例如,已完成與讀取識別符RID相關聯的讀取交易操作等。讀取交易回應RRSP可與廢料資料GDAT一起傳輸,但實例實施例不限於此。廢料資料GDAT可為任何資料,而非實際上讀取資料,且可稱為各種名稱,諸如虛擬資料及/或雜訊資料等。
根據至少一個實例實施例,處理器121可預先識別出讀取交易回應RRSP包括廢料資料GDAT。因此,處理器121可忽略廢料資料GDAT。回應於接收到的讀取交易回應RRSP,處理器121可識別讀取交易操作的完成等。
操作S450可對應於潛時(例如,讀取交易潛時等)。舉例而言,操作S450中的潛時可包括:交易加速器123將讀取交易請求RTX傳輸至主匯流排110以到達對應於目標位址ADDR的組
件處所耗費的第四時間、待自對應於目標位址ADDR的組件讀取讀取資料DAT所耗費的第五時間以及由對應於目標位址ADDR的組件產生的讀取交易回應RRSP到達主匯流排110處所耗費的第六時間,但不限於此。
在操作S460中,主匯流排110可將讀取交易回應RRSP傳輸至交易加速器123。讀取交易回應RRSP可連同讀取識別符RID及/或讀取資料DAT一起傳輸,但不限於此。當接收到包括讀取識別符RID的讀取交易回應RRSP時,交易加速器123可將在操作S420中所儲存的讀取識別符RID與在操作S460中接收到的讀取識別符RID進行比較。
回應於判定所儲存的讀取識別符RID與接收到的讀取識別符RID相同,交易加速器123可識別出操作S430中所傳輸的讀取交易請求RTX的讀取交易操作完成。然後,在操作S470中,交易加速器123可清除(例如,刪除及/或移除等)在操作S420中所儲存的讀取識別符RID。交易加速器123可藉由清除讀取識別符RID來終止讀取交易請求RTX。
可耗費對應於第三潛時L3的時間,直至回應於讀取交易請求RTX而自對應於目標位址ADDR的組件接收到讀取交易回應RRSP為止。交易加速器123可回應於自處理器121接收讀取交易請求RTX而將讀取交易回應RRSP傳輸至處理器121。因此,處理器121經歷的潛時可自第三潛時L3減少至第四潛時L4。亦即,處理器121的讀取交易可藉由交易加速器123加速。
與圖3的寫入交易操作相比,圖8的讀取交易操作管理自主匯流排110接收到的讀取資料DAT。圖9示出交易加速器123
管理讀取資料DAT的實例。
參考圖1、圖8以及圖9,在操作S510中,交易加速器123可回應於接收到的讀取交易請求而分配記憶體空間(及/或儲存空間)。在至少一個實例實施例中,可回應於操作S410而執行記憶體空間的分配。交易加速器123可分配處理器121的SRAM 122中的記憶體空間等,但實例實施例不限於此。
在操作S520中,交易加速器123可將自主匯流排110接收到的讀取資料DAT儲存於對應記憶體空間中,例如,位於SRAM 122中的記憶體空間等。可回應於操作S460而執行操作S520,但不限於此。交易加速器123可將包括於讀取交易回應RRSP中的讀取資料DAT儲存於在操作510中分配的記憶體空間中。
圖10示出交易加速器123基於圖4的多個交易時槽,例如,第一時槽123a至第三時槽123c等來增加並行交易操作的數目的實例,但實例實施例不限於此。為清楚及/或簡潔起見,圖8中所示出的與各交易操作相關聯的所有操作未在圖10中示出(及/或重複操作未在圖10中示出)。在描述每一交易操作後,視需要,可引用圖8的一部分操作。
圖11至圖13示出藉由圖10的一部分操作更新多個交易時槽,例如第一時槽123a至第三時槽123c等的實例,但實例實施例不限於此。參考圖1、圖8、圖10以及圖11,在操作S611中,處理器121可將具有第一讀取識別符RID1的讀取交易請求RTX傳輸至交易加速器123。如參考圖3所描述,讀取交易請求RTX可連同目標位址ADDR一起傳輸,但為清楚起見,自圖10省略目標位址ADDR。
回應於操作S611,交易加速器123可將第一讀取識別符RID1儲存於空閒時槽中,諸如第一時槽123a,但不限於此。在操作S612中,交易加速器123可將具有第一讀取識別符RID1的讀取交易請求RTX傳輸至主匯流排110。交易加速器123可在SRAM 122中分配對應於第一讀取識別符RID1的儲存空間等。在操作S613中,交易加速器123可將具有第一讀取識別符RID1的讀取交易回應RRSP傳輸至處理器121。
由於第一時槽123a至第三時槽123c中存在空時槽,因此在操作S621中,處理器121可將具有第二讀取識別符RID2的讀取交易請求RTX傳輸至交易加速器123。換言之,處理器121可判定空時槽是否可用於與交易加速器123及/或處理器121相關聯的多個交易時槽中,且基於判定的結果,可將新的及/或下一讀取交易請求傳輸至交易加速器123等。回應於操作S621,交易加速器123可將第二讀取識別符RID2儲存於下一空閒時槽中,例如第二時槽123b。在操作S622中,交易加速器123可將具有第二讀取識別符RID2的讀取交易請求RTX傳輸至主匯流排110。交易加速器123可在SRAM 122中分配對應於第二讀取識別符RID2的儲存空間。在操作S623中,交易加速器123可將具有第二讀取識別符RID2的讀取交易回應RRSP傳輸至處理器121。
由於第一時槽123a至第三時槽123c中存在空時槽,因此在操作S631中,處理器121可將具有第三讀取識別符RID3的讀取交易請求RTX傳輸至交易加速器123。換言之,處理器121可判定空時槽是否可用於與交易加速器123及/或處理器121相關聯的多個交易時槽中,且基於判定的結果,可將新的及/或下一讀
取交易請求傳輸至交易加速器123等。回應於操作S631,交易加速器123可將第三讀取識別符RID3儲存於第三時槽123c中,但不限於此。在操作S632中,交易加速器123可將具有第三讀取識別符RID3的讀取交易請求RTX傳輸至主匯流排110。交易加速器123可在SRAM 122分配對應於第三讀取識別符RID3的儲存空間中。在操作S633中,交易加速器123可將具有第三讀取識別符RID3的讀取交易回應RRSP傳輸至處理器121。
在至少一個實例實施例中,交易加速器123可以FIFO方式將讀取識別符依序儲存於第一時槽123a至第三時槽123c中,但實例實施例不限於此。交易加速器123可以與接收讀取交易的次序相同的次序在SRAM 122中依序分配儲存空間,但實例實施例不限於此。SRAM 122中所分配的儲存空間的大小可為相同的,但不限於此。舉例而言,分配於SRAM 122中的每一儲存空間的大小可對應於CPU 120能夠經由單一交易(例如,除了諸如叢發的連續交易以外)通信的資料的大小(例如,最大資料的大小)等。舉例而言,當以字或半字為單位執行單一交易時,所分配儲存空間中的每一者的大小可對應於字等。
由於空時槽不存在於多個時槽中,例如第一時槽123a至第三時槽123c等中,及/或由於所有時槽,例如第一時槽123a至第三時槽123c為填滿的,因此在操作S601中,交易加速器123可執行流控制(例如,流控制操作)。換言之,交易加速器123可判定空閒時槽是否可用,且基於判定的結果可執行流控制操作等。舉例而言,交易加速器123可停用、禁止及/或防止處理器121藉由停用就緒信號來另外傳輸交易請求,但實例實施例不限於此。
參考圖1、圖8、圖10以及圖12,在操作S624中,主匯流排110可將具有第二讀取識別符RID2的讀取交易回應RRSP等傳輸至交易加速器123。如參考圖8所描述,讀取交易回應RRSP可包括讀取資料DAT,但不限於此。交易加速器123可將讀取資料DAT儲存在對應於第二讀取識別符RID2的儲存空間中。
在至少一個實例實施例中,由於主匯流排110的潛時與連接至主匯流排110的組件的潛時不同,因此自主匯流排110接收到的讀取交易回應的次序可與傳輸至主匯流排110的讀取交易請求的次序不同,且可允許此亂序。
回應於操作S624,交易加速器123可清除第二時槽123b,但實例實施例不限於此。由於已清除第二時槽123b,因此交易加速器123可藉由啟用就緒信號來終止流控制(例如,流控制操作)。
參考圖1、圖8、圖10以及圖13,由於空時槽存在於第一時槽123a至第三時槽123c中,及/或基於經啟用就緒信號,因此在操作S641中,處理器121可將具有第四讀取識別符RID4的讀取交易請求RTX傳輸至交易加速器123。回應於操作S641,交易加速器123可將第四讀取識別符RID4儲存於空交易時槽中,例如第二時槽123b。交易加速器123可在SRAM 122中分配對應於第四讀取識別符RID4的儲存空間,但不限於此。在操作S642中,交易加速器123可將具有第四讀取識別符RID4的讀取交易請求RTX傳輸至主匯流排110。在操作S643中,交易加速器123可將具有第四讀取識別符RID4的讀取交易回應RRSP傳輸至處理器121。
如上文所描述,當交易加速器123包括三個時槽時,CPU 120的並行交易操作的數目可經視為自「1」增加至「3」,但實例實施例不限於此,且可能存在更大或更小數目個交易時槽。可基於處理器121支援的並行交易操作的數目及主匯流排110支援的並行交易操作的數目來判定交易加速器123。
在至少一個實例實施例中,交易加速器123可單獨地包括用於管理寫入交易操作的寫入時槽及用於管理讀取交易操作的讀取時槽,且可獨立地使用寫入時槽及讀取時槽等,但實例實施例不限於此。對於另一實例,交易加速器123可包括用於管理交易操作(例如,許多任何類型的交易操作)的共同時槽,且可共同使用共同時槽來管理寫入交易操作及讀取交易操作等。
圖14示出根據本發明概念的至少一個實例實施例的計算元件200。參考圖14,計算元件200可包括主匯流排210、中央處理單元220、主記憶體230、儲存元件240及/或多個周邊元件250等。多個周邊元件250可包括與圖1的PMIC 151對應的PMIC 251、與圖1的介面元件152對應的介面元件252、以及與圖1的其他元件153對應的其他元件253。
主匯流排210、主記憶體230、儲存元件240以及周邊元件250的組態及操作可與參考圖1所描述的主匯流排110、主記憶體130、儲存元件140以及周邊元件150的組態及操作相同,但實例實施例不限於此。因此,將省略額外描述以避免冗餘。
中央處理單元(CPU)220可與主匯流排210的第一節點N1連接,但不限於此。CPU 220可與計算元件200的主匯流排210及/或經由主匯流排210與任何其他組件執行交易操作等,但不限
於此。交易操作可包括在CPU 220處將交易請求傳輸至主匯流排210以及在CPU 120處自主匯流排210接收對應於交易請求的交易回應。交易操作可包括讀取交易操作及/或寫入交易操作等。
CPU 220可包括至少一個處理器221、SRAM 222、交易加速器223(在圖14中標記為Tx.ACC.)、橋接器224(在圖14中標記為BRG)及/或內部匯流排225等。內部匯流排225可在CPU 220的內部組件之間提供至少一個通道。內部匯流排225可包括例如經組態以與CPU 220的組件耦接的第一內部節點n1至第四內部節點n4等,且可在第一內部節點n1至第四內部節點n4之間提供通道,但實例實施例不限於此,且可存在更大或更小數目個通道及/或節點等。
處理器221可與內部匯流排225的第一內部節點n1連接。除SRAM 222位於處理器221外部以外,處理器221的組態及操作可與圖1的處理器121的組態及操作相同,但實例實施例不限於此。SRAM 222可與內部匯流排225的第二內部節點n2連接,但不限於此。除SRAM 222位於處理器221外部且與內部匯流排225連接以外,SRAM 222的組態及操作可與圖1的SRAM 122的組態及操作相同,但實例實施例不限於此。
交易加速器223可與內部匯流排225的第三內部節點n3連接,但不限於此。除交易加速器223與內部匯流排225的第三內部節點n3連接以外,交易加速器223的組態及操作可與圖1的交易加速器123的組態及操作相同,但實例實施例不限於此。橋接器224可與內部匯流排225的第四內部節點n4連接,但不限於此。除橋接器224與內部匯流排225的第四內部節點n4連接以外,
橋接器224的組態及操作可與圖1的橋接器124的組態及操作相同,但實例實施例不限於此。不同於參考圖1所給出的描述,交易加速器223的主機元件可為內部匯流排225或處理器221等。
內部匯流排225可取決於及/或基於目標位址而將自處理器221接收到的交易請求傳送至交易加速器223及橋接器224中的一者。內部匯流排225可將自交易加速器223或橋接器224提供的交易回應傳送至處理器221。
SRAM 222可儲存由處理器121處理的碼(例如,電腦可讀指令及/或程式碼)及/或資料。可藉由交易加速器223分配SRAM222的儲存空間的一部分,從而將讀取資料儲存在讀取交易操作中
交易加速器223可經由內部匯流排225自處理器221接收一或多個交易請求且可經由內部匯流排225將一或多個交易回應傳輸至處理器221。交易加速器223可經由內部匯流排225來分配SRAM 222的儲存空間且可將資料儲存在SRAM 222中。交易加速器223可經由內部匯流排225將自SRAM 222提供的資料傳輸至主匯流排210作為寫入資料。
橋接器224可經由內部匯流排225與處理器221及/或SRAM 222通信。橋接器224可與主匯流排210通信。
圖15示出根據至少一個實例實施例的內部匯流排225的操作方法的實例。參考圖14及圖15,在操作S710中,內部匯流排225可自處理器221接收包括識別符ID及/或目標位址ADDR的交易請求等,但不限於此。
在操作S720中,內部匯流排225可判定目標位址ADDR是否包括第一值(例如,期望值、目標值等)。舉例而言,內部匯
流排225可判定包括最高有效位元的目標位址ADDR是否包括第一值及/或期望值,但實例實施例不限於此。
當目標位址ADDR包括第一值及/或期望值時,在操作S730中,內部匯流排225可將交易請求傳送至交易加速器223。當目標位址ADDR不包括第一值及/或期望值時,在操作S740中,內部匯流排225可將交易請求傳送至橋接器224。
亦即,藉由在目標位址ADDR中包括用於識別交易加速器223或橋接器224的第一值,處理器221可判定是否經由交易加速器223或經由橋接器224等來傳輸交易請求。取決於目標位址ADDR是否包括第一值及/或期望值,內部匯流排225可將交易請求自處理器221選擇性地傳送至交易加速器223或橋接器224。
圖16示出根據本發明概念的至少一個實例實施例的計算元件300操作的實例。參考圖16,計算元件300可包括CPU 320、第一元件301、第二元件302及/或第三元件303等,但實例實施例不限於此。
CPU 320可對應於圖1的CPU 120或圖14的CPU 220,但實例實施例不限於此。CPU 320可包括主動功率管理(active power management;APM)處理器321及/或SRAM 322等。APM處理器321可對應於圖1的處理器121或圖14的處理器221,但實例實施例不限於此。SRAM 322可對應於圖1的SRAM 122或圖14的SRAM 222,但實例實施例不限於此。APM處理器321可控制進入及/或退出計算元件300的功率節省模式及/或正常模式等。在至少一個實例實施例中,CPU 320可不執行交易加速功能,但不限於此。
第一元件301可包括至少一個第一特定功能暫存器SFR1,但不限於此。第一元件301可基於儲存於第一特定功能暫存器SFR1中的資訊來操作。第二元件302可包括至少一個第二特定功能暫存器SFR2,但不限於此。第二元件302可基於儲存於第二特定功能暫存器SFR2中的資訊來操作。第三元件303可包括至少一個第三特定功能暫存器SFR3,但不限於此。第三元件303可基於儲存於第三特定功能暫存器SFR3中的資訊來操作,但不限於此。
在至少一個實例實施例中,第一元件301、第二元件302以及第三元件303等中的每一者可藉由圖1的計算元件100的主匯流排110、主記憶體130、儲存元件140以及周邊元件150等中的至少一者實施,但實例實施例不限於此。另外,第一元件301、第二元件302以及第三元件303等中的每一者可藉由圖14的計算元件200的主匯流排210、主記憶體230、儲存元件240以及周邊元件250中的至少一者實施等,但實例實施例不限於此。
根據至少一個實例實施例,即使在功率節省模式下,仍可需要維持儲存於第一元件301的第一特定功能暫存器SFR1、第二元件302的第二特定功能暫存器SFR2及/或第三元件303的第三特定功能暫存器SFR3等中的資訊,但實例實施例不限於此。舉例而言,儲存於第一特定功能暫存器SFR1、第二特定功能暫存器SFR2及/或第三特定功能暫存器SFR3中的資訊可為自功率節省模式快速退出至正常模式所期望及/或必需的資訊等。
同時,在功率節省模式下,可中斷對第一元件301、第二元件302及/或第三元件303等的供電。為減少及/或防止儲存於第
一特定功能暫存器SFR1、第二特定功能暫存器SFR2及/或第三特定功能暫存器SFR3等中的資訊(下文中稱為「特定功能資訊」)丟失,APM處理器321可在進入功率節省模式時自第一特定功能暫存器SFR1、第二特定功能暫存器SFR2及/或第三特定功能暫存器SFR3等備份特定功能資訊。當退出功率節省模式,例如進入正常模式時等,APM處理器321可將特定功能資訊傳回至第一特定功能暫存器SFR1、第二特定功能暫存器SFR2及/或第三特定功能暫存器SFR3等。
在至少一個實例實施例中,第一元件301、第二元件302及/或第三元件303等可分佈於計算元件300內且可具有分佈位址。因此,APM處理器321可個別地直接存取第一元件301、第二元件302及/或第三元件303等,而非使用用於支援諸如直接記憶體存取(direct memory access;DMA)的連續存取的構件的方式等。
在至少一個實例實施例中,在操作S810中,可發生休眠事件或喚醒事件。休眠事件可為計算元件300自正常模式進入功率節省模式的事件。喚醒事件可為計算元件300自功率節省模式進入正常模式的事件。
在操作S820中,APM處理器321可將至少一個交易請求傳輸至第一元件301。回應於休眠事件,APM處理器321可將至少一個讀取交易請求傳輸至第一元件301。回應於喚醒事件,APM處理器321可將至少一個寫入交易請求傳輸至第一元件301。可耗費對應於第五潛時L5的延遲時間以供APM處理器321執行與第一元件301的第一特定功能暫存器SFR1的交易操作,但
實例實施例不限於此。
在操作S830中,APM處理器321可將至少一個交易請求傳輸至第二元件302。回應於休眠事件,APM處理器321可將讀取交易請求傳輸至第二元件302。回應於喚醒事件,APM處理器321可將寫入交易請求傳輸至第二元件302。可耗費對應於第六潛時L6的延遲時間以供APM處理器321執行與第二元件302的第二特定功能暫存器SFR2的交易操作,但實例實施例不限於此。
在操作S840中,APM處理器321可將至少一個交易請求傳輸至第三元件303。回應於休眠事件,APM處理器321可將讀取交易請求傳輸至第三元件303。回應於喚醒事件,APM處理器321可將寫入交易請求傳輸至第三元件303。可耗費對應於第七潛時L7的延遲時間以供APM處理器321執行與第三元件303的第三特定功能暫存器SFR3的交易操作,但實例實施例不限於此。
如上文所描述,當休眠事件發生時,可期望及/或要求對應於APM處理器321將儲存於第一特定功能暫存器SFR1至第三特定功能暫存器SFR3中的資訊備份至SRAM 322所必需的第五潛時L5至第七潛時L7的總和的潛時。同樣地,當喚醒事件發生時,可期望及/或要求對應於APM處理器321將儲存於SRAM 322中的資訊傳回至第一特定功能暫存器SFR1至第三特定功能暫存器SFR3所期望及/或必需的第五潛時L5至第七潛時L7的總和的潛時。
圖17示出根據本發明概念的至少一個實例實施例的計算元件400操作的實例。參考圖17,計算元件400可包括CPU 420、第一元件401、第二元件402及/或第三元件403等,但實例實施
例不限於此。
CPU 420可對應於圖1的CPU 120或圖14的CPU 220,但實例實施例不限於此。CPU 420可包括主動功率管理(APM)處理器421、SRAM 422及/或交易加速器423等。APM處理器421可對應於圖1的處理器121或圖14的處理器221,但實例實施例不限於此。SRAM 422可對應於圖1的SRAM 122或圖14的SRAM 222,但實例實施例不限於此。APM處理器421可控制進入及/或退出計算元件400的功率節省模式及正常模式,但不限於此。交易加速器423可對應於圖1的交易加速器123或圖14的交易加速器223,但實例實施例不限於此。
如參考圖16所描述,第一元件401、第二元件402及/或第三元件403等中的每一者可藉由圖1的計算元件100的主匯流排110、主記憶體130、儲存元件140以及周邊元件150中的至少一者實施,但實例實施例不限於此。另外,第一元件401、第二元件402及/或第三元件403等中的每一者可藉由圖14的計算元件200的主匯流排210、主記憶體230、儲存元件240以及周邊元件250中的至少一者實施,但實例實施例不限於此。
在操作S910中,可發生休眠事件。在操作S920中,APM處理器421可將用於第一元件401的至少一個讀取交易請求傳輸至交易加速器423。如參考圖10所描述,交易加速器423可將對於讀取交易請求的至少一個讀取交易回應傳輸及/或即刻傳輸至APM處理器421,但實例實施例不限於此。
如參考圖10的操作S611及操作S613、操作S621及操作S623以及操作S631及操作S633所描述,APM處理器421及
交易加速器423可處理完成與第一元件401至第三元件403的第一特定功能暫存器SFR1至第三特定功能暫存器SFR3相關聯的一系列讀取交易操作,但實例實施例不限於此。
舉例而言,APM處理器421及交易加速器423可依序發佈與第一元件401、第二元件402及/或第三元件403等相關聯的讀取交易操作,且可依序處理完成讀取交易操作,但不限於此。對應於第一元件401、第二元件402及/或第三元件403等的儲存空間可依序分配於SRAM 422中,但不限於此。關於操作S920,可幾乎不存在(及/或可忽略)潛時。
在操作S930中,交易加速器423可執行與第一元件401、第二元件402及/或第三元件403等相關聯的讀取交易操作。在至少一個實例實施例中,如參考圖10的操作S611及操作S612、操作S621及操作S622以及操作S631及操作S632所描述,藉由交易加速器423發起的讀取交易操作的潛時可彼此重疊。舉例而言,CPU 420自第一元件401、第二元件402及/或第三元件403等收集所有特定功能資訊所耗費的潛時可藉由第五潛時L5、第六潛時L6以及第七潛時L7中的一者(例如,最長潛時)判定,但實例實施例不限於此。
當完成讀取交易操作時,可將來自第一元件401、第二元件402及/或第三元件403等的特定功能資訊D_SFR1至特定功能資訊D_SFR3儲存於SRAM 422的對應儲存空間中,但實例實施例不限於此。
圖18示出根據一些實例實施例的圖17的計算元件400中發生喚醒事件的實例。參考圖18,計算元件400可包括CPU
420、第一元件401、第二元件402及/或第三元件403等,但實例實施例不限於此。
在操作S940中,可發生喚醒事件。回應於喚醒事件,APM處理器421可將特定功能資訊D_SFR1至特定功能資訊D_SFR3寫入第一特定功能暫存器SFR1至第三特定功能暫存器SFR3中,以恢復第一元件401至第三元件403的功能,但實例實施例不限於此。
在操作S950中,APM處理器421可將用於第一元件401的至少一個寫入交易請求傳輸至交易加速器423。如參考圖5所描述,交易加速器423可將對於寫入交易請求的至少一個寫入交易回應傳輸及/或即刻傳輸至APM處理器421。
如關於圖5的操作S311及操作S313、操作S321及操作S323以及操作S331及操作S333所描述,APM處理器421及交易加速器423可處理完成與第一元件401至第三元件403的第一特定功能暫存器SFR1至第三特定功能暫存器SFR3相關聯的一系列寫入交易操作,但實例實施例不限於此。
舉例而言,APM處理器421及交易加速器423可依序發佈與第一元件401、第二元件402及/或第三元件403等相關聯的寫入交易操作,且可依序完成寫入交易操作。可自對應於第一元件401、第二元件402以及第三元件403的SRAM 422的儲存空間一同傳輸特定功能資訊D_SFR1至特定功能資訊D_SFR3作為寫入資料。關於操作S950,可幾乎不存在(及/或可忽略)潛時,但實例實施例不限於此。
在操作S960中,交易加速器423可執行與第一元件401、
第二元件402及/或第三元件403等相關聯的寫入交易操作,但實例實施例不限於此。在至少一個實例實施例中,如參考圖5的操作S311及操作S312、操作S321及操作S322以及操作S331及操作S332所描述,藉由交易加速器423發起的寫入交易操作的潛時可彼此重疊,但實例實施例不限於此。舉例而言,CPU 420將所有特定功能資訊D_SFR1至特定功能資訊D_SFR3寫入第一元件401、第二元件402及/或第三元件403等中所耗費的潛時可藉由第五潛時L5、第六潛時L6以及第七潛時L7中的一者(例如,最長潛時)判定,但實例實施例不限於此。
當寫入交易操作完成時,儲存於SRAM 422的儲存空間中的特定功能資訊D_SFR1至特定功能資訊D_SFR3可儲存於第一元件401至第三元件403的第一特定功能暫存器SFR1至第三特定功能暫存器SFR3中,但不限於此。然後,第一元件401至第三元件403等可開始在正常模式下的操作。
交易加速器423可加速CPU 420對具有不同位址的第一特定功能暫存器SFR1至第三特定功能暫存器SFR3的個別存取。與圖16的不使用交易加速器423的至少一個實例實施例相比,在圖17及圖18的使用交易加速器423的實例實施例中,減少了計算元件400自正常模式進入功率節省模式所耗費的時間及計算元件400退出功率節省模式進入正常模式所耗費的時間。因此,計算元件400的功率消耗可減少。
圖19示出根據本發明概念的至少一個實例實施例的計算元件500。參考圖19,計算元件500可包括主匯流排510、第一中央處理單元520、主記憶體530、儲存元件540、周邊元件550、
第二中央處理單元560及/或DMA控制器570等,但實例實施例不限於此。周邊元件550可包括與圖1的PMIC 151對應的PMIC 551、與圖1的介面元件152對應的介面元件552、以及與圖1的其他元件153對應的其他元件553。
除更包括第七節點N7及第八節點N8以外,主匯流排510的組態及操作可與圖1的主匯流排110或圖14的主匯流排210相同,但實例實施例不限於此。主記憶體530、儲存元件540以及周邊元件550的組態及操作可與參考圖1所描述的主記憶體130、儲存元件140以及周邊元件150或參考圖14所描述的主記憶體230、儲存元件240以及周邊元件250的組態及操作相同,但實例實施例不限於此。因此,將省略額外描述以避免冗餘。
第一CPU 520可對應於圖1的CPU 120或圖14的CPU 220,但實例實施例不限於此。第一CPU 520可包括至少一個處理器521、SRAM 522及/或交易加速器523等。第一CPU 520可為參考圖17及圖18所描述的APM CPU,但實例實施例不限於此。
第二CPU 560可與主匯流排510的第七節點N7連接。第二CPU 560可包括經組態以執行無線通信的通信處理器(communication processor;CP),但不限於此。CP可在1秒或若干秒的時段執行用於基地台識別的傳呼。舉例而言,在傳呼期間,可必須建立第二CPU 560與主記憶體530之間的通道。
在計算元件500處於功率節省模式的情況下,計算元件500可重複在1秒或若干秒的時段自功率節省模式退出至正常模式的操作以用於傳呼及在傳呼之後自正常模式進入功率節省模式等。
可藉由第一CPU 520執行計算元件500進入功率節省模式及計算元件500退出正常模式,但不限於此。當藉由第一CPU 520執行的模式切換(例如,經由交易加速器523)所期望及/或必需的時間減少時,可在模式切換時減少功率消耗。因此,計算元件500的總功率消耗可減少。
DMA控制器570可與主匯流排510的第八節點N8連接,但實例實施例不限於此。可藉由第一CPU 520及/或第二CPU 560程式化及/或控制DMA控制器570。DMA控制器570可基於程式化資訊(例如,來自第一CPU 520及/或第二CPU 560的指令等)來執行直接記憶體存取(direct memory access;DMA)。舉例而言,DMA控制器570可在儲存元件540及/或周邊元件550與主記憶體530之間傳送資料,但實例實施例不限於此。
在至少一個實例實施例中,當自第一CPU 520的處理器521傳輸至少一個交易請求時,交易加速器523可將指示交易完成的至少一個交易回應傳輸至處理器521。交易加速器523可在處理器521未辨識交易請求的處理的時間期間處理交易請求。亦即,交易加速器523可遮蔽實際上執行的交易操作,使得處理器521並不辨識交易操作,但實例實施例不限於此。
另一方面,DMA控制器570可取決於由CPU 520及/或CPU 560程式化的資訊來執行存取,且接著可通知CPU 520及/或CPU 560存取完成。亦即,在CPU 520及/或CPU 560的辨識下,DMA控制器570可替代地處理CPU 520及/或560可處理的任務等。
如上文所描述,由於交易加速器523與DMA控制器570
特性上不同,因此交易加速器523不應經視為等效於DMA控制器570。然而,可理解,根據本發明概念的至少一個實例實施例的交易加速器523可與DMA控制器570耦接以加速由DMA控制器570引起的交易操作,但實例實施例不限於此。
在圖1、圖14以及圖19中,主匯流排110、主匯流排210或主匯流排510與計算元件100、計算元件200或計算元件500的組件之間的連接藉助於實例示出及描述。然而,根據本發明概念的至少一個實例實施例的計算元件100、計算元件200或計算元件500的匯流排可由兩個或多於兩個層構成,或可由兩個或多於兩個異質匯流排構成。根據本發明概念的至少一個實例實施例的計算元件100、計算元件200或計算元件500的匯流排不限於參考圖1、圖14或圖19所描述的主匯流排110、主匯流排210或主匯流排510。
圖20示出根據本發明概念的至少一個實例實施例的計算元件1000的實例。參考圖20,計算元件1000可包括至少一個主處理器1100、觸控面板1200、觸控驅動器積體電路(touch driver integrated circuit;TDI)1202、顯示面板1300、顯示驅動器積體電路(display driver integrated circuit;DDI)1302、系統記憶體1400、儲存元件1500、音訊處理器1600、通信區塊1700、影像處理器1800及/或使用者介面1900等,但不限於此。在至少一個實例實施例中,計算元件1000可為各種電子元件中的一者,諸如個人電腦、膝上型電腦、伺服器、工作台、攜帶型通信終端機、個人數位助理(personal digital assistant;PDA)、攜帶型媒體播放器(portable media player;PMP)、數位攝影機、智慧型電話、平板
電腦及/或可穿戴元件等。
主處理器1100可控制計算元件1000的全部操作。主處理器1100可控制/管理計算元件1000等的組件的操作。主處理器1100可處理出於操作計算元件1000的目的的各種操作。主處理器1100可包括根據本發明概念的至少一個實例實施例的交易加速器2000。交易加速器2000可與主處理器1100中的處理器及/或中央處理單元中的至少一者連接以增大並行交易操作的數目等。
觸控面板1200可經組態以在觸控驅動器積體電路1202的控制下感測來自使用者的觸控輸入等。顯示面板1300可經組態以在顯示驅動器積體電路1302的控制下顯示影像資訊等。
系統記憶體1400可儲存用於計算元件1000的操作中的資料等。舉例而言,系統記憶體1400可包括揮發性記憶體,諸如靜態隨機存取記憶體(SRAM)、動態RAM(dynamic RAM;DRAM)及/或同步DRAM(synchronous DRAM;SDRAM)等;及/或非揮發性記憶體,諸如相變RAM(phase-change RAM;PRAM)、磁阻RAM(magneto-resistive RAM;MRAM)、電阻RAM(resistive RAM;ReRAM)及/或鐵電RAM(ferroelectric RAM;FRAM)等。
儲存元件1500可在不管是否供電的情況下儲存資料。舉例而言,儲存元件1500可包括各種非揮發性記憶體中的至少一者,諸如快閃記憶體、PRAM、MRAM、ReRAM及/或FRAM等。舉例而言,儲存元件1500可包括計算元件1000的嵌入式記憶體及/或可移除記憶體等。
音訊處理器1600可藉由使用音訊信號處理器1610來處理音訊信號。音訊處理器1600可經由麥克風1620接收音訊輸入
及/或可經由揚聲器1630提供音訊輸出。通信區塊1700可經由天線1710及/或使用有線連接等與外部元件/系統交換信號。通信區塊1700的收發器1720及/或調節器/解調器(modulator/demodulator;MODEM)1730可基於各種無線通信協定:長期演進(long term evolution;LTE)、微波存取全球互通(worldwide interoperability for microwave access;WiMax)、全球行動通信系統(global system for mobile communication;GSM)、碼分多重存取(code division multiple access;CDMA)、藍牙、近場通信(near field communication;NFC)、無線保真(wireless fidelity;Wi-Fi)及/或無線射頻識別系統(radio frequency identification;RFID)等,及/或使用有線通信協定,諸如乙太網、通用序列匯流排(universal serial bus;USB)等中的至少一者來處理與外部元件/系統交換的信號。
影像處理器1800可經由透鏡1810接收光。包括於影像處理器1800中的影像元件1820及影像信號處理器(image signal processor;ISP)1830可基於接收到的光產生關於外部物件的資訊。除觸摸面板1200、顯示面板1300、音訊處理器1600及/或影像處理器1800等以外,使用者介面1900可包括能夠與使用者交換資訊的介面。使用者介面1900可包括鍵盤、滑鼠、列印機、投影儀、各種感測器、人體通信元件等。
計算元件1000可更包括功率管理IC(power management IC;PMIC)1010、電池1020及/或功率連接器1030等。功率管理IC 1010可利用由電池1020供應的功率及/或由功率連接器1030供應的功率產生內部功率,且可將內部功率提供至主處理器
1100、觸摸面板1200、觸摸驅動器積體電路(TDI)1202、顯示面板1300、顯示驅動積體電路(DDI)1302、系統記憶體1400、儲存元件1500、音訊處理器1600、通信區塊1700、影像處理器1800及/或使用者介面1900等。
在上文實例實施例中,根據本發明概念的組件藉由使用術語「第一」、「第二」、「第三」以及類似者來描述。然而,術語「第一」、「第二」、「第三」以及類似者可用於區分組件彼此且並不限制本發明概念的實例實施例。舉例而言,術語「第一」、「第二」、「第三」以及類似者並不涉及任何形式的次序或數值含義。
在上文實例實施例中,根據本發明概念的實例實施例的組件藉由使用區塊及/或單元進行描述。區塊及/或單元可藉由各種硬體元件實施,諸如積體電路、特殊應用IC(application specific IC;ASIC)、場可程式化閘陣列(FPGA)及/或複雜可程式化邏輯元件(complex programmable logic device;CPLD)等,可為在硬體元件中驅動及/或執行的韌體,及/或執行軟體的硬體元件的組合。此外,區塊及/或單元可包括藉由充當知識產權(intellectual property;IP)的積體電路或電路中的半導體部件實施的電路。
根據本發明概念的至少一個實例實施例,交易加速器可增大藉由處理器執行的並行交易操作的數目。因此,提供一種使處理器的交易速度較高的交易加速器的操作方法,一種包括交易加速器的計算元件的操作方法及/或一種包括交易加速器的計算元件。
雖然已描述本發明概念的各種實例實施例,但所屬領域中具通常知識者將顯見的是,可在不脫離如所附申請專利範圍中
所闡述的本發明概念的精神及範疇的情況下對其進行各種變化及修改。
100、200、300、400、500、1000:計算元件
110、210、510:主匯流排
120、220、320、420:中央處理單元
121、221、521:處理器
122、222、322、422、522:靜態隨機存取記憶體
123、223、423、523、2000:交易加速器
123a:第一時槽
123b:第二時槽
123c:第三時槽
124、224:橋接器
130、230、530:主記憶體
140、240、540、1500:儲存元件
150、250、550:周邊元件
151、251、551:功率管理積體電路
152、252、552:介面元件
153、253、553:其他元件
225:內部匯流排
301、401:第一元件
302、402:第二元件
303、403:第三元件
321、421:主動功率管理處理器
520:第一中央處理單元
560:第二中央處理單元
570:DMA控制器
1010:功率管理IC
1020:電池
1030:功率連接器
1100:主處理器
1200:觸控面板
1202:觸控驅動器積體電路
1300:顯示面板
1302:顯示驅動器積體電路
1400:系統記憶體
1600:音訊處理器
1610:音訊信號處理器
1620:麥克風
1630:揚聲器
1700:通信區塊
1710:天線
1720:收發器
1730:調節器/解調器
1800:影像處理器
1810:透鏡
1820:影像元件
1830:影像信號處理器
1900:使用者介面
ADDR:目標位址
DAT:寫入資料
D_SFR1、D_SFR2、D_SFR3:特定功能資訊
GDAT:廢料資料
ID:識別符
L1:第一潛時
L2:第二潛時
L3:第三潛時
L4:第四潛時
L5:第五潛時
L6:第六潛時
L7:第七潛時
n1:第一內部節點
n2:第二內部節點
n3:第三內部節點
n4:第四內部節點
N1:第一節點
N2:第二節點
N3:第三節點
N4:第四節點
N5:第五節點
N6:第六節點
N7:第七節點
N8:第八節點
RID:讀取識別符
RID1:第一讀取識別符
RID2:第二讀取識別符
RID3:第三讀取識別符
RID4:第四讀取識別符
RRSP:讀取交易回應
SFR1:第一特定功能暫存器
SFR2:第二特定功能暫存器
SFR3:第三特定功能暫存器
RTX:讀取交易請求
S110、S120、S130、S140、S210、S220、S230、S240、S250、S260、S270、S301、S311、S312、S313、S321、S322、S323、S324、S331、S332、S333、S341、S342、S343、S410、S420、S430、S440、S450、S460、S470、S510、S520、S601、S611、S612、S613、S621、S622、S623、S624、S631、S632、S633、S641、S642、S643、S710、S720、S730、S740、S810、S820、S830、S840、S910、S920、S930、S940、S950、S960:操作
WID:寫入標識符
WID1:第一寫入識別符
WID2:第二寫入識別符
WID3:第三寫入識別符
WID4:第四寫入識別符
WRSP:寫入交易回應
WTX:寫入交易請求
本發明概念的上述及其他目標及特徵將藉由參考隨附圖式詳細描述其實例實施例而變得更顯而易見。
圖1示出根據本發明概念的至少一個實例實施例的計算元件。
圖2示出根據本發明概念的至少一個實例實施例的計算元件的交易加速器的操作方法。
圖3示出根據至少一個實例實施例的交易加速器執行寫入交易操作的實例。
圖4示出根據至少一個實例實施例的包括於交易加速器中的時槽的實例。
圖5示出根據至少一個實例實施例的交易加速器基於圖4的第一時槽至第三時槽增加並行交易操作的數目的實例。
圖6及圖7示出根據一些實例實施例的藉由圖5的部分操作更新第一時槽至第三時槽的實例。
圖8示出根據至少一個實例實施例的交易加速器執行讀取交易操作的實例。
圖9示出根據至少一個實例實施例的交易加速器管理讀取資料的方法的實例。
圖10示出根據至少一個實例實施例的交易加速器基於圖4的第一時槽至第三時槽增加並行交易操作的數目的實例。
圖11至圖13示出根據一些實例實施例的藉由圖10的部分操作更新第一時槽至第三時槽的實例。
圖14示出根據本發明概念的至少一個實例實施例的計算元件。
圖15示出根據至少一個實例實施例的內部匯流排的操作方法的實例。
圖16示出根據本發明概念的至少一個實例實施例的計算元件操作的實例。
圖17示出根據本發明概念的至少一個實例實施例的計算元件操作的實例。
圖18示出根據至少一個實例實施例的圖17的計算元件中發生喚醒事件的實例。
圖19示出根據本發明概念的至少一個實例實施例的計算元件。
圖20示出根據本發明概念的至少一個實例實施例的計算元件的實例。
S110、S120、S130、S140:操作
Claims (19)
- 一種連接於至少一個主機元件與匯流排之間的交易加速器的操作方法,所述方法包括: 自所述至少一個主機元件接收第一交易請求,其中所述第一交易請求包括目的地位址,所述目的地位址指示所述匯流排中的組件或連接至所述匯流排的組件作為所述第一交易請求的目的地組件,所述目的地組件位於所述至少一個主機元件外部; 將所述第一交易請求傳輸至所述匯流排;以及 回應於將所述第一交易請求傳輸至所述匯流排而將對應於所述第一交易請求的第一交易回應傳輸至所述至少一個主機元件。
- 如請求項1所述的方法,其中將所述第一交易回應傳輸至所述至少一個主機元件更包括: 回應於所述第一交易請求而在與所述目的地組件的第一交易完成之前將所述第一交易回應傳輸至所述至少一個主機元件。
- 如請求項1所述的方法,其中 所述第一交易請求包括寫入交易請求;且 所述方法更包括 回應於將所述第一交易請求傳輸至所述匯流排而將所述第一交易請求的識別符儲存於與所述交易加速器相關聯的記憶體中。
- 如請求項3所述的方法,更包括: 自所述匯流排接收對應於所述第一交易請求的第二交易回應;以及 回應於所接收到的所述第二交易回應而清除所述第一交易請求的所述識別符。
- 如請求項3所述的方法,其中 所述交易加速器包括多個交易時槽;且 所述方法更包括 自所述至少一個主機元件接收多個交易請求,所述多個交易請求包括所述第一交易請求, 將對應於所述多個交易請求的多個識別符分別儲存於所述多個交易時槽中, 自所述匯流排接收第二交易回應,以及 自所述多個識別符當中清除對應於所述第二交易回應的識別符。
- 如請求項5所述的方法,更包括: 判定所述多個交易時槽中的至少一個交易時槽是否為空; 基於指示所述至少一個交易時槽為空的所述判定的結果而允許自所述至少一個主機元件接收新交易請求;以及 基於指示所述多個交易時槽為滿的所述判定的所述結果而禁止自所述至少一個主機元件接收所述新交易請求。
- 如請求項1所述的方法,其中 所述第一交易請求包括讀取交易請求;且 所述第一交易回應包括廢料資料作為讀取資料。
- 如請求項7所述的方法,更包括: 回應於將所述第一交易請求傳輸至所述匯流排而將所述第一交易請求的識別符儲存於與所述交易加速器相關聯的記憶體中。
- 如請求項8所述的方法,更包括: 自所述匯流排接收對應於所述第一交易請求的第二交易回應; 儲存包括於所接收到的所述第二交易回應中的讀取資料;以及 清除所述第一交易請求的所述識別符。
- 如請求項7所述的方法,其中 所述交易加速器包括多個交易時槽;且 所述方法更包括 自所述至少一個主機元件接收多個交易請求,所述多個交易請求包括所述第一交易請求; 將對應於所述多個交易請求的多個識別符分別儲存於所述多個交易時槽中,以及 在記憶體中分配分別對應於所述多個交易請求的多個儲存空間。
- 如請求項10所述的方法,其中所述多個儲存空間的大小相同。
- 如請求項10所述的方法,其中所述記憶體中的所述多個儲存空間的分配包括: 基於接收所述多個交易請求的次序而在所述記憶體中分配對應於所述多個交易請求的所述多個儲存空間。
- 如請求項10所述的方法,更包括: 自所述匯流排接收第二交易回應; 將包括於所述第二交易回應中的讀取資料儲存於所述多個儲存空間當中對應於所述第二交易回應的儲存空間中;以及 自所述多個識別符當中清除對應於所述第二交易回應的識別符。
- 如請求項1所述的方法,其中所述至少一個主機元件包括: 至少一個處理器;以及 第二匯流排,連接於所述至少一個處理器與所述交易加速器之間。
- 一種計算元件的操作方法,所述計算元件包括至少一個處理器、匯流排、交易加速器以及多個周邊元件,所述多個周邊元件中的每一周邊元件位於所述至少一個處理器外部,所述方法包括: 藉由所述至少一個處理器將第一讀取交易請求傳輸至所述交易加速器,所述第一讀取交易請求包括目的地位址,所述目的地位址指示所述匯流排中的所述多個周邊元件的至少一個周邊元件或連接至所述匯流排的所述多個周邊元件的至少一個周邊元件作為所述第一讀取交易請求的目的地組件; 藉由所述交易加速器將第一讀取交易回應傳輸至所述至少一個處理器,所述第一讀取交易回應對應於所述第一讀取交易請求; 回應於所述第一讀取交易回應而藉由所述至少一個處理器將第二讀取交易請求傳輸至所述交易加速器; 藉由所述交易加速器將對應於所述第二讀取交易請求的第二讀取交易回應傳輸至所述至少一個處理器;以及 藉由所述交易加速器將所述第一讀取交易請求及所述第二讀取交易請求傳輸至所述多個周邊元件中的所述至少一個周邊元件。
- 如請求項15所述的方法,更包括: 藉由所述交易加速器自所述至少一個周邊元件接收對應於所述第一讀取交易請求的第三讀取交易回應; 藉由所述交易加速器將包括於所述第三讀取交易回應中的第一讀取資料儲存於記憶體中; 藉由所述交易加速器自所述至少一個周邊元件接收對應於所述第二讀取交易請求的第四讀取交易回應;以及 藉由所述交易加速器將包括於所述第四讀取交易回應中的第二讀取資料儲存於所述記憶體中。
- 如請求項16所述的方法,更包括: 藉由所述至少一個處理器將第一寫入交易請求傳輸至所述交易加速器; 藉由所述交易加速器將第一寫入交易回應傳輸至所述至少一個處理器,所述第一寫入交易回應對應於所述第一寫入交易請求; 回應於所述第一寫入交易回應而藉由所述至少一個處理器將第二寫入交易請求傳輸至所述交易加速器; 藉由所述交易加速器將第二寫入交易回應傳輸至所述至少一個處理器,所述第二寫入交易回應對應於所述第二寫入交易請求;以及 藉由所述交易加速器將所述第一寫入交易請求及所述第二寫入交易請求傳輸至所述多個周邊元件中的所述至少一個周邊元件。
- 如請求項17所述的方法,其中 所述第一寫入交易請求與儲存於所述記憶體中的所述第一讀取資料一起傳輸至所述至少一個周邊元件;以及 所述第二寫入交易請求與儲存於所述記憶體中的所述第二讀取資料一起傳輸至所述至少一個周邊元件。
- 一種計算元件,包括: 匯流排; 多個周邊元件,連接至所述匯流排;以及 中央處理單元(CPU),連接至所述匯流排,所述中央處理單元經組態以經由所述匯流排來控制所述多個周邊元件,所述多個周邊元件位於所述中央處理單元外部, 所述中央處理單元包括: 至少一個處理器核心;及 交易加速器,包括兩個或大於兩個交易時槽,所述交易加速器經組態以 自所述至少一個處理器核心接收第一交易請求,所述第一交易請求包括目的地位址,所述目的地位址指示所述多個周邊元件的至少一個周邊元件作為所述第一交易請求的目的地組件, 回應於所接收到的所述第一交易請求而將第一交易回應傳輸至所述至少一個處理器核心, 將所述第一交易請求傳送至所述匯流排,以及 與所述第一交易請求有關的資訊儲存於所述兩個或大於兩個交易時槽中的一者中,直至所述第一交易請求完成為止。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020200176815A KR20220086785A (ko) | 2020-12-16 | 2020-12-16 | 트랜잭션 가속기의 동작 방법. 트랜잭션 가속기를 포함하는 컴퓨팅 장치의 동작 방법, 그리고 트랜잭션 가속기를 포함하는 컴퓨팅 장치 |
| KR10-2020-0176815 | 2020-12-16 | ||
| US17/410,115 US12026109B2 (en) | 2020-12-16 | 2021-08-24 | Operating method of transaction accelerator, operating method of computing device including transaction accelerator, and computing device including transaction accelerator |
| US17/410,115 | 2021-08-24 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202230149A TW202230149A (zh) | 2022-08-01 |
| TWI904236B true TWI904236B (zh) | 2025-11-11 |
Family
ID=81941452
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW110133724A TWI904236B (zh) | 2020-12-16 | 2021-09-10 | 交易加速器操作方法、包括交易加速器之計算元件的操作方法以及包括交易加速器之計算元件 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US12026109B2 (zh) |
| KR (1) | KR20220086785A (zh) |
| CN (1) | CN114637707A (zh) |
| TW (1) | TWI904236B (zh) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190379553A1 (en) * | 2018-06-08 | 2019-12-12 | Fungible, Inc. | Early acknowledgment for write operations |
| CN110851378A (zh) * | 2018-08-20 | 2020-02-28 | 英特尔公司 | 双列直插式存储器模块(dimm)可编程加速卡 |
| TWI697218B (zh) * | 2018-12-28 | 2020-06-21 | 香港商阿里巴巴集團服務有限公司 | 使用全域加速節點提高區塊交易速度 |
| CN111373694A (zh) * | 2020-02-21 | 2020-07-03 | 香港应用科技研究院有限公司 | 零知识证明硬件加速器及其方法 |
| US20200371917A1 (en) * | 2019-05-24 | 2020-11-26 | Texas Instruments Incorporated | Write streaming in a processor |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| IL96808A (en) * | 1990-04-18 | 1996-03-31 | Rambus Inc | Introductory / Origin Circuit Agreed Using High-Performance Brokerage |
| JP3027843B2 (ja) | 1993-04-23 | 2000-04-04 | 株式会社日立製作所 | バススヌ−プ方法 |
| JPH0981500A (ja) | 1995-09-18 | 1997-03-28 | Yaskawa Electric Corp | 仮想dma転送方法 |
| US5961623A (en) * | 1996-08-29 | 1999-10-05 | Apple Computer, Inc. | Method and system for avoiding starvation and deadlocks in a split-response interconnect of a computer system |
| US6275888B1 (en) * | 1997-11-19 | 2001-08-14 | Micron Technology, Inc. | Method for configuring peer-to-peer bus bridges in a computer system using shadow configuration registers |
| US6256693B1 (en) * | 1999-07-15 | 2001-07-03 | 3Com Corporation | Master/slave data bus employing undirectional address and data lines and request/acknowledge signaling |
| US20020174295A1 (en) | 2001-01-29 | 2002-11-21 | Ulrich Thomas R. | Enhanced file system failure tolerance |
| DE102004031715B4 (de) * | 2004-06-30 | 2013-05-29 | Globalfoundries Inc. | Kombinierte On-Chip-Befehls- und Antwortdatenschnittstelle |
| US7688838B1 (en) * | 2004-10-19 | 2010-03-30 | Broadcom Corporation | Efficient handling of work requests in a network interface device |
| JP2007206924A (ja) | 2006-02-01 | 2007-08-16 | Victor Co Of Japan Ltd | 演算処理システム |
| US8255673B2 (en) | 2008-04-25 | 2012-08-28 | Arm Limited | Monitoring transactions in a data processing apparatus |
| US8706974B2 (en) | 2008-04-30 | 2014-04-22 | Freescale Semiconductor, Inc. | Snoop request management in a data processing system |
| JP6416488B2 (ja) * | 2014-03-31 | 2018-10-31 | 株式会社メガチップス | 半導体装置 |
| CN111984562B (zh) * | 2020-09-07 | 2022-05-10 | 苏州盛科通信股份有限公司 | 寄存器突发访问控制的方法、电子设备及存储介质 |
-
2020
- 2020-12-16 KR KR1020200176815A patent/KR20220086785A/ko active Pending
-
2021
- 2021-08-24 US US17/410,115 patent/US12026109B2/en active Active
- 2021-09-10 TW TW110133724A patent/TWI904236B/zh active
- 2021-10-21 CN CN202111226124.8A patent/CN114637707A/zh active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190379553A1 (en) * | 2018-06-08 | 2019-12-12 | Fungible, Inc. | Early acknowledgment for write operations |
| CN110851378A (zh) * | 2018-08-20 | 2020-02-28 | 英特尔公司 | 双列直插式存储器模块(dimm)可编程加速卡 |
| TWI697218B (zh) * | 2018-12-28 | 2020-06-21 | 香港商阿里巴巴集團服務有限公司 | 使用全域加速節點提高區塊交易速度 |
| US20200371917A1 (en) * | 2019-05-24 | 2020-11-26 | Texas Instruments Incorporated | Write streaming in a processor |
| CN111373694A (zh) * | 2020-02-21 | 2020-07-03 | 香港应用科技研究院有限公司 | 零知识证明硬件加速器及其方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114637707A (zh) | 2022-06-17 |
| TW202230149A (zh) | 2022-08-01 |
| US12026109B2 (en) | 2024-07-02 |
| KR20220086785A (ko) | 2022-06-24 |
| US20220188251A1 (en) | 2022-06-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5537533B2 (ja) | ハードウェアのダイナミックなキャッシュパワー管理 | |
| US10936533B2 (en) | GPU remote communication with triggered operations | |
| JP5047249B2 (ja) | 割り込みポストトランザクションに対する保留メカニズム | |
| US8156376B2 (en) | Method, device and system for storing data in cache in case of power failure | |
| CN116880773B (zh) | 一种内存扩展装置及数据处理方法、系统 | |
| EP3479402B1 (en) | Method and apparatus for remote field programmable gate array processing | |
| JP7408357B2 (ja) | メモリシステム及びその制御方法 | |
| TWI519962B (zh) | 智慧雙資料率(ddr)記憶體控制器 | |
| CN110046050B (zh) | 一种核间数据传输的装置和方法 | |
| CN116225995B (zh) | 一种总线系统及芯片 | |
| JP5837631B2 (ja) | モバイルデバイスにおけるバッテリー限界ステータスの表示 | |
| US10621115B2 (en) | System and method for communication link management in a credit-based system | |
| TWI904236B (zh) | 交易加速器操作方法、包括交易加速器之計算元件的操作方法以及包括交易加速器之計算元件 | |
| CN105264608A (zh) | 存储数据的方法、内存控制器和中央处理器 | |
| JP5304815B2 (ja) | マイクロコンピュータ | |
| US9152588B2 (en) | Race-free level-sensitive interrupt delivery using fabric delivered interrupts | |
| US12117944B2 (en) | Systems, methods, and devices for queue management with a coherent interface | |
| CN115964982A (zh) | 加速器的拓扑结构 | |
| JP2014059661A (ja) | 情報処理装置及びその制御方法、プログラム | |
| US20170168548A1 (en) | Segregated power state control in a distributed cache system | |
| US20230090126A1 (en) | Device and method for reducing save-restore latency using address linearization | |
| TW202328896A (zh) | 多媒體壓縮訊框感知快取記憶體替換策略 | |
| HK1169184A (zh) | 硬件動態高速緩存電源管理 |