TW201935258A - 應用處理器、汽車電子處理器、以及包含應用處理器的計算裝置 - Google Patents

應用處理器、汽車電子處理器、以及包含應用處理器的計算裝置 Download PDF

Info

Publication number
TW201935258A
TW201935258A TW107145762A TW107145762A TW201935258A TW 201935258 A TW201935258 A TW 201935258A TW 107145762 A TW107145762 A TW 107145762A TW 107145762 A TW107145762 A TW 107145762A TW 201935258 A TW201935258 A TW 201935258A
Authority
TW
Taiwan
Prior art keywords
interrupt
debugging
root complex
aggregation
interface
Prior art date
Application number
TW107145762A
Other languages
English (en)
Other versions
TWI752291B (zh
Inventor
李載憲
Original Assignee
南韓商三星電子股份有限公司
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 南韓商三星電子股份有限公司 filed Critical 南韓商三星電子股份有限公司
Publication of TW201935258A publication Critical patent/TW201935258A/zh
Application granted granted Critical
Publication of TWI752291B publication Critical patent/TWI752291B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Abstract

一種應用處理器包括:中央處理單元;根複合體,在所述中央處理單元的控制下與至少一個外部裝置進行通訊並在操作狀態發生改變時產生狀態改變中斷;以及中斷聚合及除錯單元,根據所述狀態改變中斷對與所述狀態改變中斷相關聯的至少一個組件實行除錯。

Description

應用處理器、汽車電子處理器、以及包含應用處理器的計算裝置
本文的揭露內容的實施例是有關於一種半導體裝置,且更具體而言,是有關於一種應用處理器、一種汽車電子處理器、以及一種包含應用處理器的計算裝置。
處理器被配置成執行各種對象(例如,韌體、作業系統及應用)且被配置成控制周邊裝置。為達成高的處理速度,處理器被配置成經由高速介面(例如,周邊組件互連快速(peripheral component interconnect express,PCIe)介面)與周邊裝置進行通訊。
舉例而言,處理器可被製造成包括基於PCIe的根複合體(root complex)。周邊裝置可被製造成包括基於PCIe的交換機或端點介面(end point interface)。
已開發了PCIe介面以達成高的速度。然而,由於如今需要低功率設計,因此正在試圖達成低功率PCIe介面。由於試圖達成低功率PCIe介面,因此可能會造成不期望的故障。
本揭露的實施例提供一種應用處理器及汽車電子處理器以及包含應用處理器的計算裝置,所述應用處理器及汽車電子處理器自動地除錯並恢復在通訊介面中造成的故障。
根據示例性實施例,一種應用處理器包括:中央處理單元;根複合體,在所述中央處理單元的控制下與至少一個外部裝置進行通訊並在操作狀態發生改變時產生狀態改變中斷;以及中斷聚合及除錯單元,根據所述狀態改變中斷對與所述狀態改變中斷相關聯的至少一個組件實行除錯。
根據示例性實施例,一種汽車電子處理器包括:中央處理單元;根複合體,在所述中央處理單元的控制下與至少一個外部裝置進行通訊,並產生中斷;以及中斷聚合及除錯單元,根據所述中斷而對與所述中斷相關聯的至少一個組件實行除錯。所述至少一個外部裝置包括制動控制器、轉向控制器、傳動系控制器、燈控制器、影像感測器、引擎控制器、蓄電池控制器、雨刷控制器、安全控制器及顯示器控制器中的至少一者。
根據示例性實施例,一種計算裝置包括彼此進行通訊的應用處理器與裝置。所述應用處理器包括:中央處理單元;根複合體,與所述裝置進行通訊;匯流排,連接所述中央處理單元與所述根複合體;以及中斷聚合及除錯單元,經由所述匯流排而與所述根複合體進行通訊。所述裝置包括端點介面,所述端點介面被配置成與所述根複合體進行通訊,且所述中斷聚合及除錯單元實行所述根複合體及所述端點介面的除錯。
根據示例性實施例,一種應用處理器包括中央處理單元、根複合體電路以及中斷及除錯電路。所述中央處理單元執行韌體、作業系統或應用且具有解決第一中斷的中斷控制器。所述根複合體電路在所述中央處理單元的控制下與外部裝置進行通訊並在操作狀態發生改變時產生第二中斷。所述中斷及除錯電路僅接收來自所述根複合體電路的所述第二中斷並解決所述第二中斷而不將所述第二中斷傳送至所述中央處理單元。
以下,可詳細且清楚地闡述本揭露的實施例以使此項技術中具有通常知識者易於實作本揭露。
圖1是示出根據本揭露實施例的計算裝置10的方塊圖。參照圖1,計算裝置10包括處理器100及裝置200。處理器100可與裝置200進行通訊。處理器100可包括各種處理器(例如,應用處理器及汽車電子處理器)中的一者。
處理器100可包括中央處理單元(central processing unit,CPU)110、匯流排120、橋接器130、根複合體140、中斷聚合及除錯單元150及時脈產生器160。中央處理單元110可執行各種對象,例如,韌體、作業系統及應用。中央處理單元110可控制處理器100的組件或裝置200的組件。
中央處理單元110包括第一介面111及中斷控制器113。第一介面111被配置成與匯流排120進行通訊。舉例而言,第一介面111可包括先進擴展介面(Advanced eXtensible Interface,AXI)的主機裝置。
中斷控制器113可自中斷聚合及除錯單元150接收第二中斷IRQ2。中斷控制器113可對第二中斷IRQ2進行處理。舉例而言,中斷控制器113可暫停當前操作且可請求中央處理單元110的核心對第二中斷IRQ2進行處理。
當中央處理單元110的核心完整地處理第二中斷IRQ2時,中斷控制器113可清除由此被處理的第二中斷IRQ2。中央處理單元110的核心可恢復所暫停的操作。舉例而言,第二中斷IRQ2可自中斷聚合及除錯單元150發送而不通過匯流排120。
匯流排120被配置成與第一介面111、橋接器130及根複合體140的第一介面141進行通訊。匯流排120可對第一介面111、橋接器130及根複合體140的第一介面141之間的通訊進行仲裁。匯流排120可包括AXI匯流排。
橋接器130可將匯流排120的第一通訊方案改變成第二通訊方案。舉例而言,第一通訊方案可包括高速AXI。第二通訊方案可包括低速先進周邊匯流排(Advanced Peripheral Bus,APB)。第一通訊方案可支持用於資料通訊的高速通訊,且第二通訊方案可支持控制通訊(例如,特殊功能暫存器(special function register,SFR)的設定)。
橋接器130可根據第二通訊方案而與根複合體140的第二介面142及中斷聚合及除錯單元150的第二介面152進行通訊。
根複合體140可經由匯流排120而與中央處理單元110進行通訊且可與裝置200進行通訊。根複合體140包括第一介面141、第二介面142、控制器143、暫存器144及物理區塊145。
第一介面141可使用第一通訊方案(例如,AXI)來與匯流排120進行通訊。第一介面141可包括AXI從機介面(AXI slave interface)。第一介面141可與根複合體140連接。
第二介面142可使用第二通訊方案(例如,APB)來與橋接器130進行通訊。第二介面142可與控制器143連接。舉例而言,控制器143可包括緊連邏輯(glue logic),緊連邏輯連接至根複合體140的核心的輸入及輸出且被配置成對輸入及輸出進行控制。
暫存器144可包括:命令暫存器,向根複合體140發送命令;狀態暫存器,儲存根複合體140中的各個組件的狀態資訊;故障暫存器,儲存根複合體140中的各個組件的故障資訊(例如,錯誤日誌);等等。
物理區塊145被配置成根據所定義的規則而與裝置200交換訊號。物理區塊145可對應於開放系統互連(Open System Interconnection,OSI)的物理層。物理區塊145包括鎖相環(phase locked loop,PLL)146。
鎖相環146可自時脈產生器160接收第二時脈CLK2。鎖相環146可基於第二時脈CLK2而產生在物理區塊145中使用的參考時脈。
中斷聚合及除錯單元150可與匯流排120及橋接器130進行通訊。中斷聚合及除錯單元150可自根複合體140接收第一中斷IRQ1。第一中斷IRQ1可經由不通過第一介面151及第二介面152的單獨的通道來接收。
中斷聚合及除錯單元150可管理第一中斷IRQ1。舉例而言,中斷聚合及除錯單元150可根據第一中斷IRQ1而對根複合體140及與根複合體140連接的裝置200實行除錯。中斷聚合及除錯單元150可將第一中斷IRQ1的一部分作為第二中斷IRQ2發送至中斷控制器113。
中斷聚合及除錯單元150包括第一介面151、第二介面152及中斷計數器153。第一介面151可使用第一通訊方案(例如,AXI)來與匯流排120進行通訊。舉例而言,第一介面151可包括AXI主機介面。
中斷聚合及除錯單元150可經由匯流排120而與根複合體140的第一介面141進行通訊。亦即,除了中央處理單元110之外,中斷聚合及除錯單元150亦可與根複合體140連接且可與根複合體140進行通訊。
第二介面152可使用第二通訊方案(例如,APB)來與橋接器130進行通訊。第二介面152可用於使中央處理單元110控制中斷聚合及除錯單元150的設定。中斷計數器153可用於對自根複合體140接收的第一中斷IRQ1進行計數。舉例而言,中斷計數器153可用於對第一中斷IRQ1進行計數及聚合。
時脈產生器160可產生第一時脈CLK1及第二時脈CLK2。第一時脈CLK1可被供應至處理器100的組件,例如中央處理單元110、匯流排120、橋接器130以及中斷聚合及除錯單元150。第二時脈CLK2可被供應至根複合體140。第一時脈CLK1的頻率可相同於或不同於第二時脈CLK2的頻率。
裝置200可經由端點介面201而與處理器100的根複合體140進行通訊。裝置200的端點介面201可包括暫存器202及物理區塊203。
暫存器202可包括將命令發送至端點介面201的命令暫存器、儲存端點介面201的各個組件的狀態資訊的狀態暫存器等。
物理區塊203被配置成根據所定義的規則而與根複合體140的物理區塊145交換訊號。物理區塊203可對應於OSI(開放系統互連)的物理層。物理區塊203包括鎖相環(PLL)204。
鎖相環204可自根複合體140接收時脈。鎖相環204可基於自根複合體140接收的時脈而產生在物理區塊203中使用的參考時脈。
以下,將闡述計算裝置10的操作。中央處理單元110可經由第一介面111及匯流排120而與根複合體140的第一介面141進行通訊。中央處理單元110可經由根複合體140而與裝置200實行資料通訊。
中央處理單元110可經由第一介面111、匯流排120及橋接器130而與根複合體140的第二介面142進行通訊。中央處理單元110可經由第一介面111、匯流排120及橋接器130而控制根複合體140的設定(例如,儲存於暫存器144中的設定)。
中央處理單元110可經由第一介面111、匯流排120及橋接器130而與中斷聚合及除錯單元150的第二介面152進行通訊。中央處理單元110可經由第一介面111、匯流排120及橋接器130而控制中斷聚合及除錯單元150的設定。
中斷聚合及除錯單元150可經由第一介面151及匯流排120而與根複合體140的第一介面141進行通訊。中斷聚合及除錯單元150可經由第一介面151及匯流排120來對與根複合體140的核心、物理區塊145或第一介面141相關聯的狀態(例如,儲存於暫存器144中的資訊)進行除錯且可根據除錯的結果而實行恢復。
中斷聚合及除錯單元150可經由第一介面151、匯流排120、根複合體140的第一介面141及根複合體140的核心而與裝置200的端點介面201進行通訊。中斷聚合及除錯單元150可經由第一介面151、匯流排120及根複合體140而對與裝置200中的端點介面201的核心或物理區塊203相關聯的狀態(例如,儲存於暫存器202中的資訊)進行除錯且可根據除錯的結果而實行恢復。
中斷聚合及除錯單元150可經由第一介面151、匯流排120及橋接器130而與根複合體140的第二介面142進行通訊。中斷聚合及除錯單元150可經由第一介面151及匯流排120而對與根複合體140的控制器143或第二介面142相關聯的狀態(例如,儲存於暫存器144中的資訊)進行除錯且可根據除錯的結果而實行恢復。
舉例而言,中斷聚合及除錯單元150可因應於自根複合體140發送的第一中斷IRQ1而實行除錯。舉例而言,中斷聚合及除錯單元150可被配置成因應於指示根複合體140的操作狀態的改變的狀態改變中斷或指示故障的故障來實行除錯。
舉例而言,中斷聚合及除錯單元150可更被配置成對第一中斷IRQ1進行聚合。舉例而言,中斷聚合及除錯單元150可根據第一中斷IRQ1而存取(或掃描)根複合體140或端點介面201且可實行給定操作。
中斷聚合及除錯單元150可對第一中斷IRQ1進行計數且可對第一中斷IRQ1進行處理(例如,清除)。當第一中斷IRQ1被處理達給定計數的次數時,中斷聚合及除錯單元150可將第二中斷IRQ2發送至中央處理單元110。中斷聚合及除錯單元150可藉由發送第二中斷IRQ2來實行中斷聚合,第二中斷IRQ2的數目小於第一中斷IRQ1的數目。
舉例而言,中斷聚合及除錯單元150可包括在給定狀態之間轉變的狀態機。舉例而言,中斷聚合及除錯單元150可包括根據給定次序實行命令的序列器(sequencer)。
在中斷聚合及除錯單元150是以狀態機或序列器實作的情形中,可經由簡單程式來調整中斷聚合及除錯單元150的操作次序或操作方法。因此,中斷聚合及除錯單元150的靈活性得到改善。
圖2是示出根據本揭露實施例的中斷聚合及除錯單元150的操作方法的流程圖。參照圖1及圖2,在操作S110中,中斷聚合及除錯單元150可自根複合體140接收第一中斷IRQ1。
在操作S120中,中斷聚合及除錯單元150可判斷所接收到的第一中斷IRQ1是否是被指定用於除錯的中斷。舉例而言,第一中斷IRQ1可具有各種種類。部分種類的第一中斷IRQ1可被指定用於使中斷聚合及除錯單元150實行除錯。
舉例而言,所指定的中斷可包括指示根複合體140或端點介面201的操作狀態(例如,節電模式)的改變的狀態改變中斷。所指定的中斷可包括指示在根複合體140或端點介面201中出現故障的故障中斷。
舉例而言,中斷聚合及除錯單元150可對根複合體140的暫存器144及端點介面201的暫存器202中與中斷相關聯的暫存器進行讀取。中斷聚合及除錯單元150可根據自暫存器讀取的值而確定中斷的種類。
若所接收到的第一中斷IRQ1不是被指定用於除錯的中斷,則中斷聚合及除錯單元150可實行操作S130。在操作S130中,中斷聚合及除錯單元150可將所接收到的第一中斷IRQ1作為第二中斷IRQ2旁通至中央處理單元110。
若所接收到的第一中斷IRQ1是被指定用於除錯的中斷,則中斷聚合及除錯單元150可實行操作S140。在操作S140中,中斷聚合及除錯單元150可根據所接收到的第一中斷IRQ1而對與所接收到的第一中斷IRQ1相關的至少一個組件實行除錯。舉例而言,所述至少一個組件可包括根複合體140或連接至根複合體140的裝置200。
舉例而言,所述除錯可包括檢查與所述至少一個組件相關聯的暫存器(例如,114或202)。暫存器可儲存關於所產生的中斷的種類的資訊或者關於所述至少一個組件的操作狀態的資訊。中斷聚合及除錯單元150可藉由檢查暫存器來判斷在所述至少一個組件中是否出現故障。
舉例而言,在實行除錯之後,中斷聚合及除錯單元150可清除第一中斷IRQ1而不將第一中斷IRQ1發送至中央處理單元110,或者可將第一中斷IRQ1作為第二中斷IRQ2發送至中央處理單元110。
圖3是示出中斷聚合及除錯單元150運作的實例的狀態圖。參照圖1及圖3,中斷聚合及除錯單元150可具有第一狀態S1、第二狀態S2及第三狀態S3中的一者。
第一狀態S1可為空閒狀態。當未作為第一中斷IRQ1接收到狀態改變中斷或故障中斷時,中斷聚合及除錯單元150可具有第一狀態S1(例如,空閒狀態)。
當中斷聚合及除錯單元150處於第一狀態S1時,可發生狀態改變中斷或故障中斷被作為第一中斷IRQ1接收到的第一事件E1。當發生第一事件E1時,中斷聚合及除錯單元150可自第一狀態S1切換至第二狀態S2。第二狀態S2可為除錯狀態。
舉例而言,在接收到狀態改變中斷且經過特定時間之後,中斷聚合及除錯單元150可進入第二狀態S2。由於中斷聚合及除錯單元150在特定時間期間進行等待,因此可確保具有能完成根複合體140或端點介面201的狀態改變以及應用所改變的狀態的時間。
在第二狀態S2中,中斷聚合及除錯單元150可檢查與中斷相關的至少一個暫存器(例如,144或202)。舉例而言,中斷聚合及除錯單元150可對儲存根複合體140及端點介面201的狀態資訊的狀態暫存器進行讀取。
對於另一個實例而言,中斷聚合及除錯單元150可檢查根複合體140或端點介面201的故障暫存器,所述故障暫存器儲存關於故障的資訊(例如,日誌)。中斷聚合及除錯單元150可根據檢查的結構而進入第一狀態S1或第三狀態S3。
在第二狀態S2中,當發生在根複合體140或端點介面201中不存在故障的第二事件E2時,中斷聚合及除錯單元150可進入第一狀態S1。另外,中斷聚合及除錯單元150可清除狀態改變中斷或故障中斷而不將狀態改變中斷或故障中斷發送至中央處理單元110。
在第二狀態S2中,當發生在根複合體140或端點介面201中存在故障的第三事件E3時,中斷聚合及除錯單元150可進入第三狀態S3。
在第三狀態S3中,中斷聚合及除錯單元150可實行與中斷相關聯的至少一個組件的恢復。舉例而言,中斷聚合及除錯單元150可控制與所述至少一個組件相關聯的暫存器。
舉例而言,中斷聚合及除錯單元150可藉由將相關聯的暫存器(例如,命令暫存器)重設或初始化或者向相關聯的暫存器(例如,命令暫存器)輸入特定命令來實行恢復。
在第三狀態S3中,當發生實行恢復且經過特定時間(或給定時間)的第四事件E4時,中斷聚合及除錯單元150可進入第二狀態S2。由於中斷聚合及除錯單元150在特定時間期間進行等待,因此可確保具有能完成根複合體140或端點介面201的狀態改變以及應用所改變的狀態的時間。
在第二狀態S2中,當故障恢復時,中斷聚合及除錯單元150可清除狀態改變中斷或故障中斷且可進入第一狀態S1。在第二狀態S2中,當故障未恢復時,中斷聚合及除錯單元150可再次進入第三狀態S3。
中斷聚合及除錯單元150在第一狀態S1到第三狀態S3之間的轉變可由被指定供中斷聚合及除錯單元150實行的一組命令來執行。舉例而言,所述一組命令可包括讀取命令、循環命令(loop command)、正確分支命令(branch in true command)、錯誤分支命令(branch in false command)、內部暫存器的更新命令、修訂或寫入命令、修訂及寫入命令等。
中斷聚合及除錯單元150可藉由對於其中指定了除錯的第一種類的中斷實行所述一組命令中的第一命令來實行除錯及恢復。中斷聚合及除錯單元150可藉由對於其中指定了除錯的第二種類的中斷實行所述一組命令中的第二命令來實行除錯及恢復。
中斷聚合及除錯單元150執行的所述一組命令可經由第二介面152來修訂、添加或刪除。中斷聚合及除錯單元150根據中斷的種類而執行的命令可經由第二介面152來修訂、添加或刪除。因此,中斷聚合及除錯單元150可針對處理器100所屬環境的改變來提供高度靈活性。亦即,中斷聚合及除錯單元150可易於重構。
如上所述,中斷聚合及除錯單元150可藉由檢查暫存器來對根複合體140或端點介面201實行除錯。另外,中斷聚合及除錯單元150可藉由調整暫存器的值來對根複合體140或端點介面201實行恢復。因此,處理器100及計算裝置10的可靠性得到改善。
另外,當恢復成功時,中斷聚合及除錯單元150可清除中斷,而不將所述中斷發送至中央處理單元110。由於不必要的中斷不會被發送至中央處理單元110,因此中央處理單元110或中斷控制器113的工作負荷可減小,且中央處理單元110的資源得到保證。
圖4示出根複合體140及端點介面201的狀態改變的實例。在實施例中,圖4中示出其中實行基於PCIe的現用狀態功率管理(Active State Power Management,ASPM)的實例。現用狀態功率管理(ASPM)可藉由根複合體140與端點介面201之間的協調來實行而不藉由外部裝置(例如,中央處理單元110、匯流排120、橋接器130及中斷聚合及除錯單元150)的命令或干預來實行。
舉例而言,中央處理單元110、匯流排120、橋接器130或中斷聚合及除錯單元150可將根複合體140及端點介面201辨識為處於現用狀態。儘管被外部組件辨識為處於現用狀態,然而根複合體140及端點介面201仍可自動地(或主動地)進入節電模式。
當外部組件欲經由根複合體140或端點介面201實行資料通訊時,根複合體140及端點介面201可自動地(或主動地)返回至較高功率模式。亦即,現用狀態功率管理可針對外部組件被隱藏或隱蔽。
參照圖4,根複合體140及端點介面201的狀態在第一時間T1處可為「L0」狀態。在第一時間T1處,上游埠的訊號(即,端點介面201的埠的訊號CLKREQ#)可被設定成低位準。在第一時間T1處,下游埠的訊號(即,端點介面140的埠的訊號CLKREQ#)可被設定成低位準或者可被設定成第三狀態TriState(例如,高阻抗狀態)。
由於端點介面201在第一時間T1處以低位準驅動訊號CLKREQ#,因此訊號CLKREQ#可具有低位準。在「L0」狀態中,根複合體140或端點介面201的鎖相環146或204可有效地維持參考時脈REFCLK(例如,「有效(valid」)。舉例而言,鎖相環146或204可連續地產生及輸出參考時脈REFCLK。
在第二時間T2處,根複合體140及端點介面201可進入「L1」狀態。舉例而言,當在特定時間期間不在根複合體140與端點介面201之間實行通訊時,根複合體140及端點介面201可進入「L1」狀態。
詳言之,根複合體140及端點介面201可進入「L1.0」狀態。在第二時間T2與第三時間T3之間,根複合體140可將訊號CLKREQ#設定成第三狀態TriState(例如,高阻抗狀態)。在第三時間T3處,端點介面201可將訊號CLKREQ#設定成第三狀態TriState(例如,高阻抗狀態)。
由於根複合體140及端點介面201二者皆將訊號CLKREQ#設定成第三狀態(例如,高阻抗狀態),因此在第四時間T4處,訊號CLKREQ#可轉變成高位準。當訊號CLKREQ#轉變成高位準時,在第五時間T5處,根複合體140及端點介面201可經由「L1.2.Entry」狀態進入「L1.2.idle」狀態。
在實施例中,根複合體140可因應於根複合體140及端點介面201進入「L1.2.Entry」狀態的事件或者訊號CLKREQ#轉變成高位準的事件而輸出狀態改變中斷作為第一中斷IRQ1。
根複合體140及端點介面201可因應於根複合體140及端點介面201進入「L1.2.Entry」狀態的事件或者訊號CLKREQ#轉變成高位準的事件而停止產生參考時脈REFCLK。舉例而言,根複合體140及端點介面201可將鎖相環146及204禁用。
在根複合體140及端點介面201進入「L1.2.Idle」狀態之後,外部組件可能欲利用根複合體140或端點介面201來實行資料通訊。在此種情形中,根複合體140或端點介面201可使用訊號CLKREQ#來請求自「L1.2.Idle」狀態返回。
在實施例中,在第六時間T6處,根複合體140可以低位準驅動訊號CLKREQ#。由於根複合體140以低位準驅動訊號CLKREQ#,因此在第七時間T7處,訊號CLKREQ#可轉變成低位準。隨著訊號CLKREQ#轉變成低位準,在第八時間T8處,根複合體140及端點介面201可進入「L1.2.Exit」狀態。
在實施例中,根複合體140可因應於根複合體140及端點介面201進入「L1.2.Exit」狀態的事件或者訊號CLKREQ#轉變成低位準的事件而輸出狀態改變中斷作為第一中斷IRQ1。
然後,根複合體140及端點介面201可進入「L1.0」狀態且可終止「L1」狀態。根複合體140及端點介面201可進入用於返回「L0」狀態的狀態。
在根複合體140及端點介面201自「L1.2.Idle」狀態進入「L1.0」狀態的同時,根複合體140及端點介面201應產生參考時脈REFCLK。根複合體140及端點介面201可因應於根複合體140及端點介面201進入「L1.2.Exit」狀態的事件或者訊號CLKREQ#轉變成低位準的事件來啟用鎖相環146及204。
在實施例中,根複合體140及端點介面201在特定時間段TL10_REFCLK_ON 內應產生有效參考時脈REFCLK。然而,可能發生由於在鎖相環146及204中未進行鎖定的故障而不產生參考時脈REFCLK的事件。舉例而言,在其中處理器100或裝置200因例如撞擊、高溫或低溫等環境因素而劣化的情形中,可能會造成在鎖相環146及204中的一者中相位不被鎖定的故障。
當在根複合體140或端點介面201中在特定時間段TL10_REFCLK_ON 內未產生參考時脈REFCLK時,根複合體140可確定發生鏈路停運(link down)。根據判斷的結果而定,根複合體140可對根複合體140的物理區塊145及端點介面201的物理區塊203進行重設。
物理區塊145及203的鏈路停運及重設需要給定的時間。因此,物理區塊145及203的鏈路停運及重設可能會造成根複合體140及端點介面201的延時及效能的劣化。
根據本揭露實施例的中斷聚合及除錯單元150可因應於包括狀態改變中斷的第一中斷來對根複合體140的暫存器144及端點介面201的暫存器202進行檢查。舉例而言,中斷聚合及除錯單元150可對儲存鎖相環146及204的狀態資訊的狀態暫存器進行檢查。
當檢查出鎖相環未鎖定時,中斷聚合及除錯單元150可對鎖相環146及204中的未鎖定的鎖相環進行重設(或初始化)。舉例而言,中斷聚合及除錯單元150可對暫存器144及202中與鎖相環146及204相關聯的命令暫存器進行重設(或初始化)或者可將特定命令值儲存於命令暫存器中。
中斷聚合及除錯單元150可藉由控制未鎖定的鎖相環以試圖再次鎖定來恢復鎖相環146及204的故障。因此,即使處理器100或裝置200劣化,仍可確保處理器100或裝置200的可靠性,且處理器100或裝置200的壽命可得到延長。
圖5示出中斷聚合及除錯單元150實行除錯及恢復的實例。參照圖1及圖5,舉例而言,當訊號CLKREQ#轉變成高位準時,中斷聚合及除錯單元150可輸出第一中斷IRQ1。第一中斷IRQ1可包括狀態改變中斷,所述狀態改變中斷提供根複合體140及端點介面201進入「L1.2」狀態的通知。
在操作S210中,第一中斷IRQ1可儲存於中斷聚合及除錯單元150的中斷計數器153中。中斷聚合及除錯單元150可管理第一中斷IRQ1的種類。當第一中斷IRQ1是指示進入「L1.2」狀態的狀態改變中斷時,中斷聚合及除錯單元150可將第一中斷IRQ1自中斷計數器153清除而不將第一中斷IRQ1發送至中央處理單元110。
當訊號CLKREQ#轉變成高位準時,鎖相環(例如,146)可停止產生參考時脈REFCLK。當停止產生參考時脈REFCLK時,暫存器144的儲存指示鎖相環146被成功鎖定的資訊的狀態暫存器PLL_DONE可被更新成儲存指示「未鎖定(Unlocked)」的高位準。
當訊號CLKREQ#轉變成低位準時,中斷聚合及除錯單元150可輸出第一中斷IRQ1。第一中斷IRQ1可包括狀態改變中斷,所述狀態改變中斷提供根複合體140及端點介面201終止「L1.2」狀態(或自「L1.2」狀態退出)的通知。
在操作S220中,第一中斷IRQ1可儲存於中斷聚合及除錯單元150的中斷計數器153中。中斷聚合及除錯單元150可管理第一中斷IRQ1的種類。當第一中斷IRQ1是指示「L1.2」狀態結束的狀態改變中斷時,在操作S230中,中斷聚合及除錯單元150可檢查狀態暫存器PLL_DONE。
由於狀態暫存器PLL_DONE儲存指示「未鎖定」的高位準,因此中斷聚合及除錯單元150可將鎖相環146或與鎖相環146相關聯的命令暫存器重設或初始化。因應於所述重設或初始化,在操作S240中,鎖相環146可開始產生參考時脈REFCLK。
當產生參考時脈REFCLK時,狀態暫存器PLL_DONE可被更新成儲存指示「鎖定(Locked)」的低位準。在操作S250中,中斷聚合及除錯單元150可再次檢查狀態暫存器PLL_DONE。
由於狀態暫存器PLL_DONE儲存指示「鎖定」的低位準,因此在操作S260中,中斷聚合及除錯單元150可將第一中斷IRQ1自中斷計數器153清除。
如上所述,根據本揭露實施例的中斷聚合及除錯單元150可檢查鎖相環146是否鎖定。當鎖相環146未鎖定時,中斷聚合及除錯單元150可使鎖相環146再次試圖鎖定操作。因此,會防止出現鏈路停運,且根複合體140及端點介面201的延時及效能得到改善。
在上述實施例中,中斷聚合及除錯單元150被闡述為針對鎖相環146實行除錯及恢復。然而,中斷聚合及除錯單元150可對根複合體140或端點介面201的除了鎖相環146之外的任何其他組件實行除錯及恢復。
舉例而言,中斷聚合及除錯單元150可實行各種除錯及恢復,例如對時脈及資料恢復(clock and data recovery,CDR)區塊的鎖定成功的除錯及恢復、對自動頻率控制(auto frequency control,AFC)區塊的控制成功的除錯及恢復以及錯誤除錯及恢復。
圖6是示出根據本揭露實施例的中斷聚合及除錯單元150對中斷進行聚合及管理的實例的流程圖。參照圖1及圖6,在操作S310中,中斷聚合及除錯單元150可接收第一中斷IRQ1。
在操作S320中,中斷聚合及除錯單元150可判斷所接收到的第一中斷IRQ1是被指定用於聚合(或旨在用於聚合)的中斷。舉例而言,所指定的中斷可包括資料中斷。根複合體140可在與端點介面201實行資料通訊時輸出資料中斷。舉例而言,每當進行資料交易時,根複合體140皆可輸出資料中斷。
舉例而言,中斷聚合及除錯單元150可藉由檢查(或掃描)根複合體140的暫存器144的中斷暫存器或端點介面201的暫存器202的中斷暫存器來確定第一中斷IRQ1的種類。
當所接收到的第一中斷IRQ1不是被指定用於聚合的中斷時,在操作S330中,中斷聚合及除錯單元150可將第一中斷IRQ1作為第二中斷IRQ2旁通至中央處理單元110。然後,中斷聚合及除錯單元150可終止與第一中斷IRQ1相關聯的操作。
若所接收到的第一中斷IRQ1是被指定用於聚合的中斷,則在操作S340中,中斷聚合及除錯單元150可增大中斷計數器153的計數。在操作S350中,中斷聚合及除錯單元150可實行根據中斷的種類而定義的命令以對根複合體140的暫存器144或端點介面201的暫存器202進行讀取或寫入(例如,檢查)。另外,中斷聚合及除錯單元150可藉由將中斷暫存器的中斷值初始化來清除第一中斷IRQ1。
在操作S360中,中斷聚合及除錯單元150可判斷中斷計數器153的計數是否達到臨限值。當中斷計數器153的計數未達到臨限值時,中斷聚合及除錯單元150可終止與第一中斷IRQ1相關聯的操作。
當中斷計數器153的計數達到臨限值時,實行操作S370。在操作S370中,中斷聚合及除錯單元150可將第二中斷IRQ2發送至中央處理單元110。在操作S380中,中斷聚合及除錯單元150可重設所述計數。亦即,中斷聚合及除錯單元150可對自根複合體140發送的資料中斷進行聚合且可將聚合的結果發送至中央處理單元110。
當在裝置200與處理器100之間交換的資料的量增大時,根複合體140輸出的資料中斷的數目可急劇增大。中央處理單元110或中斷控制器113單獨處理急劇增多的資料中斷可能會造成中央處理單元110的工作負荷增加。
根據本揭露實施例的中斷聚合及除錯單元150可被配置成對資料中斷進行聚合並將聚合的結果發送至中央處理單元110的中斷控制器113。因此,中央處理單元110或中斷控制器113可對資料中斷進行聚合及處理,且因此,中央處理單元110的工作負荷減小。
圖7是示出根據本揭露實施例的中斷聚合及除錯單元150實行除錯、恢復及聚合處理的實例的流程圖。參照圖1及圖7,在操作S410中,中斷聚合及除錯單元150可自根複合體140接收第一中斷IRQ1。
舉例而言,第一中斷IRQ1可包括狀態改變中斷、故障中斷或資料中斷。在操作S420中,中斷聚合及除錯單元150可判斷第一中斷IRQ1是否是被指定用於除錯的中斷。
在其中第一中斷IRQ1是被指定用於除錯的中斷的情形中,中斷聚合及除錯單元150可實行操作S430。在操作S430中,中斷聚合及除錯單元150可如參照圖2至圖5所述實行除錯及恢復。
在其中第一中斷IRQ1不是被指定用於除錯的中斷的情形中,中斷聚合及除錯單元150可實行操作S440。在操作S440中,中斷聚合及除錯單元150可判斷第一中斷IRQ1是否是被指定用於聚合的中斷。
在其中第一中斷IRQ1是被指定用於聚合的中斷的情形中,在操作S450中,中斷聚合及除錯單元150可實行聚合。操作S450可對應於圖6所示操作S330至操作S370。在其中第一中斷IRQ1不是被指定用於聚合的中斷的情形中,在操作S460中,中斷聚合及除錯單元150可對第一中斷IRQ1進行旁通。
在圖7中,示出在實行操作S430之後接著實行操作S440。在此種情形中,中斷聚合及除錯單元150在實行操作S430之後可不清除第一中斷IRQ1。作為另外一種選擇,可在實行操作S430之後接著將第一中斷IRQ1清除。在此種情形中,中斷聚合及除錯單元150可跳過操作S440至S460。
如上所述,根據本揭露實施例的中斷聚合及除錯單元150可實行除錯及恢復以自動地處理狀態改變中斷或故障中斷。另外,中斷聚合及除錯單元150可藉由實行聚合來對資料中斷進行聚合及管理。
因此,針對在根複合體140中出現中斷,中央處理單元110的工作負荷可減小,且因此,中央處理單元110的資源效率可得到提高。
圖8是示出圖1所示計算裝置10的應用實例的方塊圖。參照圖8,計算裝置10a可包括處理器100a及裝置200。處理器100a的組件及裝置200的組件相同於圖1所示處理器100的組件及裝置200的組件,且因此,此處將不再對其予以贅述。
相較於圖1,來自圖8所示根複合體140的第一中斷IRQ1a及IRQ1b的一部分IRQ1a可被發送至中斷聚合及除錯單元150,且另一IRQ1b可被直接發送至中央處理單元110。與所述一部分對應的中斷IRQ1a的種類及與所述另一對應的中斷IRQ1b的種類可經由第二介面142來進行調整。
圖9是示出根據本揭露另一實施例的計算裝置20的方塊圖。舉例而言,計算裝置20可對應於智慧型電話、智慧墊、智慧型電視、智慧型手錶及可穿戴裝置中的至少一者。
參照圖1及圖9,計算裝置20包括處理器100b、裝置200a、隨機存取記憶體21、天線22、電力供應管理裝置23、電力供應裝置24、顯示裝置25、相機26、音訊輸入裝置27及音訊輸出裝置28。
處理器100b可為應用處理器。處理器100b可包括參照圖1或圖8所述的處理器100或100a。舉例而言,處理器100b可包括參照圖1所述的中央處理單元110、匯流排120、橋接器130、根複合體140、中斷聚合及除錯單元150及時脈產生器160。
如同參照圖1或圖8所述的處理器100或100a,處理器100b可根據中斷而包括除錯、恢復及聚合。不同於參照圖1或圖8所述的處理器100或100a,處理器100b可更包括音訊編解碼器170及視訊編解碼器180。
音訊編解碼器170可生成或儲存音訊資料且可再現(或播放)音訊資料。舉例而言,音訊編解碼器170可對由音訊輸入裝置27獲得的資料進行編碼,以生成音訊資料。音訊編解碼器170可對由音訊輸入裝置27生成的音訊資料或儲存於儲存裝置211a中或隨機存取記憶體21中的音訊資料進行解碼,且可經由音訊輸出裝置28來再現(或播放)經解碼的音訊資料。
視訊編解碼器180可生成或播放視訊資料。舉例而言,視訊編解碼器180可對由相機26獲得的資料進行編碼以生成視訊資料。視訊編解碼器180可對由相機26生成的視訊資料或儲存於儲存裝置211a中或隨機存取記憶體21中的視訊資料進行解碼,且可經由顯示裝置25來再現(或顯示)經解碼的視訊資料。
裝置200a可與處理器100b進行通訊。裝置200a可包括數據機210a、儲存裝置211a及神經形態裝置212a。數據機210a、儲存裝置211a及神經形態裝置212a可根據參照圖1至圖7所述的方案而與處理器100b進行通訊。
舉例而言,數據機210a、儲存裝置211a及神經形態裝置212a中的每一者可包括端點介面201且可經由端點介面201而與處理器100b進行通訊。處理器100b的中斷聚合及除錯單元150可對數據機210a、儲存裝置211a及神經形態裝置212a中的每一者的端點介面201實行除錯及恢復。
數據機210a可經由天線22而與外部裝置進行通訊。舉例而言,數據機210a可被配置成基於例如以下各種無線通訊方案中的至少一者而與外部裝置進行通訊:長期演進(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)、Wi-Fi及射頻辨識(radio frequency identification,RFID)。
數據機210a可基於例如以下各種有線通訊方案中的至少一者而與外部裝置進行通訊:通用序列匯流排(universal serial bus,USB)、序列先進技術附接(serial AT attachment,SATA)、高速晶片互連(high speed interchip,HSIC)、小型電腦系統介面(small computer system interface,SCSI)、火線(Firewire)、周邊組件互連(peripheral component interconnection,PCI)、周邊組件互連快速(PCI express,PCIe)、非揮發性記憶體快速(nonvolatile memory express,NVMe)、通用快閃儲存器(universal flash storage,UFS)、安全數位(secure digital,SD)、安全數位輸入輸出(secure digital input/output,SDIO)、通用異步收發器(universal asynchronous receiver transmitter,UART)、序列週邊介面(serial peripheral interface,SPI)、高速序列週邊介面(high speed SPI,HS-SPI)、RS232、內部積體電路(inter-integrated circuit,I2C)、高速內部積體電路(high speed inter-integrated circuit,HS-I2C)、積體晶片間聲音(integrated-interchip sound,I2S)、索尼/飛利浦數位介面(Sony/Philips digital interface,S/PDIF)、多媒體卡(multimedia card,MMC)及嵌式多媒體卡(embedded MMC,eMMC)。
儲存裝置211a可用作處理器100b的輔助儲存裝置。舉例而言,可由處理器100b執行的各種應用或作業系統的源代碼以及由作業系統或應用產生的用於長期儲存的各種資料可儲存於儲存裝置211a中。
儲存裝置211a可包括基於例如以下非揮發性記憶體的固態驅動機(solid state drive,SSD):快閃記憶體、相變隨機存取記憶體(phase-change RAM,PRAM)、磁性隨機存取記憶體(magnetic RAM,MRAM)、鐵電式隨機存取記憶體(ferroelectric RAM,FRAM)或電阻式隨機存取記憶體(resistive RAM,RRAM)。
神經形態裝置212a可實行機器學習。舉例而言,神經形態裝置212a可自處理器100b接收資訊且可基於資訊實行機器學習。神經形態裝置212a可生成分類符作為機器學習的結果。
當輸入特定資訊時,分類符可對與所述特定資訊相關聯的結果進行分類及輸出。神經形態裝置212a可藉由利用資訊實行分類以及反饋分類結果與實際結果之間的差異來實行機器學習。
神經形態裝置212a可被配置成驅動由機器學習生成的分類符。神經形態裝置212a可自處理器100b接收特定資訊且可對與特定資訊相關聯的結果進行分類。神經形態裝置212a可將分類的結果返回至處理器100b。
神經形態裝置212a可被配置成適於並列操作。舉例而言,神經形態裝置212a可具有基於圖形處理單元(graphic processing unit,GPU)的結構或專門設計成適於實行並列操作的結構。
隨機存取記憶體21可用作處理器100b的主記憶體。舉例而言,隨機存取記憶體21可儲存各種資料以及欲由處理器100b處理的處理碼(process code)。隨機存取記憶體21可包括動態隨機存取記憶體(dynamic random access memory,DRAM)、靜態隨機存取記憶體(static RAM,SRAM)、相變隨機存取記憶體(PRAM)、磁性隨機存取記憶體(MRAM)、鐵電式隨機存取記憶體(FRAM)、電阻式隨機存取記憶體(RRAM)等。
電力管理電路23可將電力自電力供應裝置24分配或供應至計算裝置20的組件。電力管理電路23可根據計算裝置20的狀態或欲由計算裝置20實行的任務的量來調整欲被分配或供應至計算裝置20的組件的電力的量。
舉例而言,電力管理電路23可控制計算裝置20或者計算裝置20的每一個組件的節電模式。電力供應裝置24可包括安裝於人工結構(例如,建築或便攜式蓄電池)中的電源。
顯示裝置25可顯示由視訊編解碼器180再現(或播放)的視訊資料。舉例而言,顯示裝置25可包括液晶顯示器(liquid crystal display,LCD)、有機發光二極體(organic light-emitting diode,OLED)顯示器、主動矩陣式OLED(active matrix OLED,AMOLED)顯示器、撓性顯示器、電子墨水等。
音訊輸入裝置27可將外部聲音轉換成音訊資料。音訊輸入裝置27可包括麥克風等。音訊輸出裝置28可將音訊資料轉換成聲音。音訊輸出裝置28可包括揚聲器、耳機等。
在上述實施例中,音訊編解碼器170及視訊編解碼器180被闡述為包含於處理器100b中。然而,音訊編解碼器170及視訊編解碼器180可放置於處理器100b外部。音訊編解碼器170或視訊編解碼器180可包括端點介面201,且可被改變成經由端點介面201而與處理器100b進行通訊。
在實施例中,數據機210a可被劃分且被設置於處理器100b外部及內部。舉例而言,用於LTE的數據機可被設置於處理器100b內部,且用於Wi-Fi的數據機可作為裝置200a的一部分設置於處理器100b外部。
圖10是示出根據本揭露實施例的汽車電子處理器100c及汽車電子裝置200b的圖。參照圖9,汽車電子處理器100c可包括參照圖1或圖8所述的處理器100或100a。舉例而言,汽車電子處理器100c可包括中央處理單元110、匯流排120、橋接器130、根複合體140以及中斷聚合及除錯單元150。
汽車電子處理器100c可經由根複合體140而與汽車電子裝置200b進行通訊。汽車電子處理器100c的中斷聚合及除錯單元150可對汽車電子裝置200b中的每一者的根複合體140及端點介面201實行除錯及恢復。汽車電子處理器100c的中斷聚合及除錯單元150可對資料中斷進行聚合及管理。
汽車電子裝置200b可包括制動控制器210b、轉向控制器211b、傳動系控制器212b、燈控制器213b、影像控制器214b、引擎控制器215b、蓄電池控制器216b、雨刷控制器217b、安全控制器218b及顯示器控制器219b。
制動控制器210b、轉向控制器211b、傳動系控制器212b、燈控制器213b、影像控制器214b、引擎控制器215b、蓄電池控制器216b、雨刷控制器217b、安全控制器218b及顯示器控制器219b中的每一者可包括端點介面201,且可經由端點介面201而與汽車電子處理器100c進行通訊。
制動控制器210b可包括用於感測制動(brake)的狀態的感測器。制動控制器210b可經由端點介面201將感測器的感測結果發送至汽車電子處理器100c。制動控制器210b可更包括用於控制制動的控制器。制動控制器210b可經由端點介面201自汽車電子處理器100c接收控制命令。制動控制器210b可根據控制命令來控制制動。
轉向控制器211b可包括用於感測轉向的狀態的感測器。轉向控制器211b可經由端點介面201將感測器的感測結果發送至汽車電子處理器100c。轉向控制器211b可更包括用於控制轉向的控制器。轉向控制器211b可經由端點介面201自汽車電子處理器100c接收控制命令。轉向控制器211b可根據控制命令來控制轉向。
同樣,傳動系控制器212b可將與傳動系相關聯的感測器的感測結果發送至汽車電子處理器100c。傳動系控制器212b可根據來自汽車電子處理器100c的控制命令來控制傳動系。燈控制器213b可將與燈相關聯的感測器的感測結果發送至汽車電子處理器100c。燈控制器213b可根據來自汽車電子處理器100c的控制命令來控制燈。
影像控制器214b可利用感測器來感測場景,並利用編碼器來將視野內的場景編碼成影像資料且可將影像資料發送至汽車電子處理器100c。引擎控制器215b可將與引擎相關聯的感測器的感測結果發送至汽車電子處理器100c。引擎控制器215b可根據來自汽車電子處理器100c的控制命令來控制引擎。
蓄電池控制器216b可將關於蓄電池的狀態的資訊發送至汽車電子處理器100c。蓄電池控制器216b可根據來自汽車電子處理器100c的控制命令來控制蓄電池的設定。雨刷控制器217b可將與外部環境(例如,是否下雨)相關聯的感測器的感測結果發送至汽車電子處理器100c。雨刷控制器217b可根據來自汽車電子處理器100c的控制命令來控制雨刷。
安全控制器218b可將與安全裝置(例如,安全帶(seat belt)、氣囊(airbag)及電子控制懸架(electronic controlled suspension,ECS))相關聯的感測器的感測結果發送至汽車電子處理器100c。再舉例而言,安全控制器218b可將與外部環境(例如,傾斜、下降及碰撞)相關聯的感測結果發送至汽車電子處理器100c。安全控制器218b可根據來自汽車電子處理器100c的控制命令來控制安全裝置。
顯示器控制器219b可將與外部環境(例如,照明強度及移動速度)相關聯的感測器的感測結果發送至汽車電子處理器100c。根據來自汽車電子處理器100c的控制命令而定,顯示器控制器219b可調整顯示裝置的照明強度或者可限制欲顯示的內容。
在上述實施例中,使用用語「區塊」來稱呼根據本揭露實施例的組件。「區塊」可利用各種硬體裝置(例如,積體電路(integrated circuit,IC)、應用專用積體電路(application specific IC,ASCI)、現場可程式化閘陣列(field programmable gate array,FPGA)及複雜可程式化邏輯裝置(complex programmable logic device,CPLD))、軟體(例如,韌體及在硬體裝置中驅動的應用)或硬體裝置與軟體的組合來實作。另外,「區塊」可包括利用半導體裝置實作的電路或智慧財產(intellectual property,IP)。
儘管在上述實施例中未單獨定義,然而上述實施例中所提及的組件可利用各種硬體裝置、在硬體裝置中驅動的韌體、軟體(例如,應用)或硬體裝置與軟體的組合來實作,或者可利用智慧財產(IP)來實作。
根據本揭露,中斷聚合及除錯單元可根據根複合體的中斷而對與中斷相關聯的至少一個裝置實行除錯。因此,本發明提供一種應用處理器及汽車電子處理器以及包含應用處理器的計算裝置,所述應用處理器及汽車電子處理器自動地除錯並恢復在通訊介面中造成的故障。
按照所述領域中的傳統,可採用施行一種或多種所述功能的區塊來闡述及示出實施例。在本文中可被稱為單元或模組等的該些區塊是由例如邏輯閘、積體電路、微處理器、微控制器、記憶體電路、被動電子組件、主動電子組件、光學組件、硬接線電路(hard-wired circuit)等類比及/或數位電路以實體方式構建的,且可視需要由韌體及/或軟體來驅動。所述電路可例如被實施於一或多個半導體晶片中,或者實施於例如印刷電路板等基板支撐件上。構成區塊的電路可由專用硬體、或者由處理器(例如,一或多個經過程式化的微處理器及相關聯的電路系統)或者由用於實行區塊的一些功能的專用硬體與用於實行區塊的其他功能的處理器的組合來實作。實施例的每一區塊可在不背離本揭露的範圍的條件下在實體上分成二或更多個交互作用且分立的區塊。同樣,實施例的區塊可在不背離本揭露的範圍的條件下在實體上組合成更複雜的區塊。
儘管參照本揭露的示例性實施例闡述了本揭露,然而此項技術中具有通常知識者應理解,在不背離由下文申請專利範圍所述的本揭露的精神及範圍的條件下,可作出各種變化及潤飾。
10、10a、20‧‧‧計算裝置
21‧‧‧隨機存取記憶體
22‧‧‧天線
23‧‧‧電力供應管理裝置/電力管理電路
24‧‧‧電力供應裝置
25‧‧‧顯示裝置
26‧‧‧相機
27‧‧‧音訊輸入裝置
28‧‧‧音訊輸出裝置
100、100a、100b‧‧‧處理器
100c‧‧‧汽車電子處理器
110‧‧‧中央處理單元
111、141、151‧‧‧第一介面
113‧‧‧中斷控制器
120‧‧‧匯流排
130‧‧‧橋接器
140‧‧‧根複合體
142、152‧‧‧第二介面
143‧‧‧控制器
144、202‧‧‧暫存器
145、203‧‧‧物理區塊
146、204‧‧‧鎖相環(PLL)
150‧‧‧中斷聚合及除錯單元
153‧‧‧中斷計數器
160‧‧‧時脈產生器
170‧‧‧音訊編解碼器
180‧‧‧視訊編解碼器
200、200a‧‧‧裝置
200b‧‧‧汽車電子裝置
201‧‧‧端點介面
210a‧‧‧數據機
210b‧‧‧制動控制器
211a‧‧‧儲存裝置
211b‧‧‧轉向控制器
212a‧‧‧神經形態裝置
212b‧‧‧傳動系控制器
213b‧‧‧燈控制器
214b‧‧‧影像控制器
215b‧‧‧引擎控制器
216b‧‧‧蓄電池控制器
217b‧‧‧雨刷控制器
218b‧‧‧安全控制器
219b‧‧‧顯示器控制器
CLK1‧‧‧第一時脈
CLK2‧‧‧第二時脈
CLKREQ#‧‧‧訊號
E1‧‧‧第一事件
E2‧‧‧第二事件
E3‧‧‧第三事件
E4‧‧‧第四事件
IRQ1‧‧‧第一中斷
IRQ1a、IRQ1b‧‧‧中斷
IRQ2‧‧‧第二中斷
L0、L1、L1.0、L1.2.Entry、L1.2.Exit、L1.2.Idle‧‧‧狀態
PLL_DONE‧‧‧狀態暫存器
REFCLK‧‧‧參考時脈
S1‧‧‧第一狀態
S110、S120、S130、S140、S210、S220、S230、S240、S250、S260、S310、S320、S330、S340、S350、S360、S370、S380、S410、S420、S430、S440、S450、S460‧‧‧操作
S2‧‧‧第二狀態
S3‧‧‧第三狀態
T1‧‧‧第一時間
T2‧‧‧第二時間
T3‧‧‧第三時間
T4‧‧‧第四時間
T5‧‧‧第五時間
T6‧‧‧第六時間
T7‧‧‧第七時間
T8‧‧‧第八時間
TL10_REFCLK_ON‧‧‧時間段
藉由參照附圖詳細闡述本揭露的示例性實施例,本揭露的以上及其他對象及特徵將變得顯而易見。
圖1是示出根據本揭露實施例的計算裝置的方塊圖。
圖2是示出根據本揭露實施例的中斷聚合及除錯單元的操作方法的流程圖。
圖3是示出中斷聚合及除錯單元運作的實例的狀態圖。
圖4示出根複合體及端點介面的狀態改變的實例。
圖5示出中斷聚合及除錯單元實行除錯及恢復的實例。
圖6是示出根據本揭露實施例的中斷聚合及除錯單元對中斷進行聚合及管理的實例的流程圖。
圖7是示出根據本揭露實施例的中斷聚合及除錯單元實行除錯、恢復及聚合處理的實例的流程圖。
圖8是示出圖1所示計算裝置的應用實例的方塊圖。
圖9是示出根據本揭露另一實施例的計算裝置的方塊圖。
圖10是示出根據本揭露實施例的汽車電子處理器及汽車電子裝置的圖。

Claims (20)

  1. 一種應用處理器,包括: 中央處理單元; 根複合體,在所述中央處理單元的控制下與外部裝置進行通訊並在操作狀態發生改變時產生狀態改變中斷;以及 中斷聚合及除錯單元,根據所述狀態改變中斷對與所述狀態改變中斷相關聯的組件實行除錯。
  2. 如申請專利範圍第1項所述的應用處理器,其中所述根複合體因應於所述根複合體的節電狀態的改變而產生所述狀態改變中斷。
  3. 如申請專利範圍第2項所述的應用處理器,其中所述節電狀態的所述改變包括根據現用狀態功率管理發生的改變。
  4. 如申請專利範圍第1項所述的應用處理器,其中所述中斷聚合及除錯單元藉由檢查所述根複合體的暫存器而實行所述除錯。
  5. 如申請專利範圍第1項所述的應用處理器,更包括: 匯流排,與所述中央處理單元連接且根據第一通訊方案而與所述中央處理單元進行通訊;以及 橋接器,與所述匯流排連接且將所述第一通訊方案改變成第二通訊方案,其中: 所述根複合體包括: 第一介面,根據所述第一通訊方案而與所述匯流排進行通訊;以及 第二介面,根據所述第二通訊方案而與所述橋接器進行通訊。
  6. 如申請專利範圍第5項所述的應用處理器,其中所述中斷聚合及除錯單元藉由經由所述匯流排及所述第一介面檢查所述根複合體的暫存器而實行所述除錯。
  7. 如申請專利範圍第5項所述的應用處理器,其中所述中斷聚合及除錯單元藉由經由所述匯流排及所述根複合體檢查與所述根複合體連接的外部裝置的暫存器而實行所述除錯。
  8. 如申請專利範圍第5項所述的應用處理器,其中所述中斷聚合及除錯單元藉由經由所述匯流排、所述橋接器、及所述第二介面檢查與所述第二介面相關聯的暫存器而實行所述除錯。
  9. 如申請專利範圍第1項所述的應用處理器,其中所述中斷聚合及除錯單元根據所述除錯的結果而自所述根複合體的故障實行恢復。
  10. 如申請專利範圍第9項所述的應用處理器,其中所述中斷聚合及除錯單元藉由根據所述除錯的所述結果將所述根複合體中的暫存器的值初始化而自所述故障實行所述恢復。
  11. 如申請專利範圍第9項所述的應用處理器,其中所述中斷聚合及除錯單元藉由根據所述除錯的所述結果經由所述根複合體將連接至所述根複合體的外部裝置中的暫存器的值初始化而自所述故障實行所述恢復。
  12. 如申請專利範圍第1項所述的應用處理器,其中: 所述根複合體包括鎖相環,且 所述除錯包括檢查是否達成所述鎖相環的鎖定。
  13. 如申請專利範圍第12項所述的應用處理器,其中當所述鎖相環的所述鎖定失敗時,所述中斷聚合及除錯單元實行恢復以將所述鎖相環初始化。
  14. 如申請專利範圍第1項所述的應用處理器,其中所述中斷聚合及除錯單元清除所述狀態改變中斷而不將所述狀態改變中斷發送至所述中央處理單元。
  15. 如申請專利範圍第1項所述的應用處理器,其中所述中斷聚合及除錯單元: 當自所述根複合體接收到被指定用於聚合的中斷時,增大中斷計數;以及 當所述中斷計數達到臨限值時,將中斷發送至所述中央處理單元。
  16. 一種汽車電子處理器,包括: 中央處理單元; 根複合體,在所述中央處理單元的控制下與外部裝置進行通訊,並產生中斷;以及 中斷聚合及除錯單元,根據所述中斷而對與所述中斷相關聯的組件實行除錯,其中 所述外部裝置包括制動控制器、轉向控制器、傳動系控制器、燈控制器、影像控制器、引擎控制器、蓄電池控制器、雨刷控制器、安全控制器或者顯示器控制器。
  17. 如申請專利範圍第16項所述的汽車電子處理器,其中所述中斷聚合及除錯單元根據所述除錯的結果而實行故障的恢復。
  18. 一種計算裝置,包括: 彼此進行通訊的應用處理器與裝置,其中: 所述應用處理器包括: 中央處理單元; 根複合體,與所述裝置進行通訊; 匯流排,連接所述中央處理單元與所述根複合體;以及 中斷聚合及除錯單元,經由所述匯流排而與所述根複合體進行通訊, 所述裝置包括端點介面,所述端點介面與所述根複合體進行通訊,且 所述中斷聚合及除錯單元實行所述根複合體及所述端點介面的除錯。
  19. 如申請專利範圍第18項所述的計算裝置,其中所述中斷聚合及除錯單元: 根據狀態改變中斷而實行所述除錯,所述狀態改變中斷指示所述根複合體的狀態的改變, 在所述根複合體與所述端點介面進行通訊的同時因應於資料中斷而增大中斷計數,以及 當所述中斷計數達到臨限值時,向所述中央處理單元發送中斷。
  20. 如申請專利範圍第18項所述的計算裝置,其中所述裝置包括Wi-Fi數據機、固態驅動機、及神經形態裝置中的至少一者。
TW107145762A 2018-02-05 2018-12-18 應用處理器、汽車電子處理器、以及包含應用處理器的計算裝置 TWI752291B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2018-0013950 2018-02-05
KR1020180013950A KR102504660B1 (ko) 2018-02-05 2018-02-05 응용 프로세서, 전장 프로세서, 그리고 응용 프로세서를 포함하는 컴퓨팅 장치
??10-2018-0013950 2018-02-05

Publications (2)

Publication Number Publication Date
TW201935258A true TW201935258A (zh) 2019-09-01
TWI752291B TWI752291B (zh) 2022-01-11

Family

ID=67308659

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107145762A TWI752291B (zh) 2018-02-05 2018-12-18 應用處理器、汽車電子處理器、以及包含應用處理器的計算裝置

Country Status (6)

Country Link
US (2) US10853214B2 (zh)
KR (1) KR102504660B1 (zh)
CN (1) CN110119374A (zh)
DE (1) DE102018132807A1 (zh)
SG (1) SG10201900247XA (zh)
TW (1) TWI752291B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10949586B1 (en) * 2020-07-01 2021-03-16 Xilinx, Inc. Post-synthesis insertion of debug cores
US11803668B2 (en) 2021-07-30 2023-10-31 Nvidia Corporation Isolating a region of a system on a chip for safety critical operations
CN116075810A (zh) * 2021-07-30 2023-05-05 辉达公司 隔离片上系统的区域以进行安全关键性操作
US20230324978A1 (en) * 2022-04-06 2023-10-12 Hewlett-Packard Development Company, L.P. Power saving feature controls for add-in cards

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511204A (en) * 1994-09-07 1996-04-23 International Business Machines Corporation Performing system tasks at power-off using system management interrupt
US6385683B1 (en) 1999-08-13 2002-05-07 Lsi Logic Corporation Methods and apparatus for raid hardware sequencing to achieve a higher performance raid architecture
US6754690B2 (en) 1999-09-16 2004-06-22 Honeywell, Inc. Method for time partitioned application scheduling in a computer operating system
JP2006139548A (ja) 2004-11-12 2006-06-01 Hitachi Global Storage Technologies Netherlands Bv メディア・ドライブ及びそのコマンド実行方法
US20080147905A1 (en) 2006-12-15 2008-06-19 Infineon Technologies Ag Method and system for generating a DMA controller interrupt
JP4914253B2 (ja) 2007-03-09 2012-04-11 株式会社リコー 半導体集積回路及びエラー解析方法
US8275975B2 (en) 2008-01-25 2012-09-25 Mtekvision Co., Ltd. Sequencer controlled system and method for controlling timing of operations of functional units
US8151145B2 (en) 2008-04-03 2012-04-03 Oracle America, Inc. Flow control timeout mechanism to detect PCI-express forward progress blockage
US8898448B2 (en) 2008-06-19 2014-11-25 Qualcomm Incorporated Hardware acceleration for WWAN technologies
JP5217946B2 (ja) 2008-11-19 2013-06-19 株式会社リコー 半導体回路及び信号伝送システム
CN102549555B (zh) * 2009-10-07 2015-04-22 惠普发展公司,有限责任合伙企业 主机存储器的基于通知协议的端点高速缓存
US8566495B2 (en) 2009-11-06 2013-10-22 Qualcomm Incorporated Systems, methods and apparatus for data communication
US8689028B2 (en) * 2011-07-01 2014-04-01 Intel Corporation Method and apparatus to reduce idle link power in a platform
GB2497966A (en) 2011-12-23 2013-07-03 Renesas Mobile Corp Interrupt event management
US8914566B2 (en) * 2012-06-19 2014-12-16 Teradyne, Inc. Managing interrupts
US9043457B2 (en) 2012-10-25 2015-05-26 Qualcomm Incorporated Dynamic adjustment of an interrupt latency threshold and a resource supporting a processor in a portable computing device
US9363468B2 (en) 2013-02-19 2016-06-07 American Megatrends, Inc. Vehicle video display system
EP2962210A4 (en) * 2013-02-28 2016-11-02 Intel Corp OPERATING A MECHANISM FOR ENUMERATION AND / OR CONFIGURATION OF AN INTERCONNECTION PROTOCOL FOR A DIFFERENT INTERCONNECTION PROTOCOL
JP2015064676A (ja) * 2013-09-24 2015-04-09 株式会社東芝 情報処理装置、半導体装置、情報処理方法およびプログラム
US9255968B2 (en) * 2013-11-22 2016-02-09 Altera Corporation Integrated circuit with a high-speed debug access port
US9396142B2 (en) * 2014-06-10 2016-07-19 Oracle International Corporation Virtualizing input/output interrupts
US20160124874A1 (en) 2014-10-30 2016-05-05 Sandisk Technologies Inc. Method and apparatus for interrupt coalescing
US9747245B2 (en) * 2014-12-17 2017-08-29 Intel Corporation Method, apparatus and system for integrating devices in a root complex
US9880601B2 (en) 2014-12-24 2018-01-30 Intel Corporation Method and apparatus to control a link power state
US9842036B2 (en) 2015-02-04 2017-12-12 Apple Inc. Methods and apparatus for controlled recovery of error information between independently operable processors
JP6582503B2 (ja) 2015-04-08 2019-10-02 富士通株式会社 情報処理装置
JP6617439B2 (ja) 2015-06-01 2019-12-11 日本電気硝子株式会社 ガラス物品の製造装置
KR20170032502A (ko) 2015-09-14 2017-03-23 삼성전자주식회사 스토리지 장치 및 그것의 인터럽트 발생 방법
US10860374B2 (en) 2015-09-26 2020-12-08 Intel Corporation Real-time local and global datacenter network optimizations based on platform telemetry data
US20170091013A1 (en) 2015-09-28 2017-03-30 Netapp, Inc. Pcie error reporting and throttling

Also Published As

Publication number Publication date
US20210049084A1 (en) 2021-02-18
US20190243736A1 (en) 2019-08-08
CN110119374A (zh) 2019-08-13
US11366732B2 (en) 2022-06-21
US10853214B2 (en) 2020-12-01
DE102018132807A1 (de) 2019-08-08
KR102504660B1 (ko) 2023-03-02
KR20190094615A (ko) 2019-08-14
TWI752291B (zh) 2022-01-11
SG10201900247XA (en) 2019-09-27

Similar Documents

Publication Publication Date Title
TWI752291B (zh) 應用處理器、汽車電子處理器、以及包含應用處理器的計算裝置
JP6333993B2 (ja) ハードウェアプラットフォームのためのファームウェアのインシステムプロビジョニング
US8898517B2 (en) Handling a failed processor of a multiprocessor information handling system
KR20220090526A (ko) 적응형 시스템의 구성, 보안 및 관리를 위한 서브시스템
US9983889B1 (en) Booting of integrated circuits
US20210081538A1 (en) Early platform hardening technology for slimmer and faster boot
US8015426B2 (en) System and method for providing voltage power gating
US20200192832A1 (en) Influencing processor governance based on serial bus converged io connection management
US9841795B2 (en) Method for resetting an electronic device having independent device domains
KR101577936B1 (ko) 인텔리전트 듀얼 데이터 레이트 (ddr) 메모리 제어기
US11422896B2 (en) Technology to enable secure and resilient recovery of firmware data
CN105492989A (zh) 用于时钟门控控制的早唤醒-警告
US20210357202A1 (en) Firmware updating
EP3905005A1 (en) Verified high-power transition and fast charging with pre-boot scaling
CN106575276B (zh) 子系统的电源管理控制
US10657292B2 (en) Security for programmable devices in a data center
US10180800B2 (en) Automated secure data and firmware migration between removable storage devices that supports boot partitions and replay protected memory blocks
US10275259B1 (en) Multi-stage booting of integrated circuits
US20230144332A1 (en) Technology to automatically conduct speed switching in processor links without warm resets
US20220291733A1 (en) Methods and apparatus to reduce display connection latency
WO2023010265A1 (en) Firmware update technologies
US20240103561A1 (en) Handshaking mechanism for clock network control
WO2022099531A1 (en) Offloading reliability, availability and serviceability runtime system management interrupt error handling to cpu on-die modules
KR20210137096A (ko) 데이터 센터 내의 라이센싱된 프로그램가능 디바이스들에 대해 코어들의 실행 로킹