TWI493467B - Interrupt signal processing method and computer system - Google Patents

Interrupt signal processing method and computer system Download PDF

Info

Publication number
TWI493467B
TWI493467B TW098137296A TW98137296A TWI493467B TW I493467 B TWI493467 B TW I493467B TW 098137296 A TW098137296 A TW 098137296A TW 98137296 A TW98137296 A TW 98137296A TW I493467 B TWI493467 B TW I493467B
Authority
TW
Taiwan
Prior art keywords
system management
management interrupt
software system
values
smi
Prior art date
Application number
TW098137296A
Other languages
Chinese (zh)
Other versions
TW201117103A (en
Inventor
Chung Ching Huang
Donna Lim
Yeh Cho
Original Assignee
Via Tech 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 Via Tech Inc filed Critical Via Tech Inc
Priority to TW098137296A priority Critical patent/TWI493467B/en
Publication of TW201117103A publication Critical patent/TW201117103A/en
Application granted granted Critical
Publication of TWI493467B publication Critical patent/TWI493467B/en

Links

Landscapes

  • Stored Programmes (AREA)

Description

中斷信號處理方法與電腦系統Interrupt signal processing method and computer system

本發明係為一種中斷信號處理方法與電腦系統,特別是利用對應於軟體系統管理中斷信號數值之有效位元長度作為SW-SMI信號處理之方法與電腦系統。The invention relates to an interrupt signal processing method and a computer system, in particular to a method and a computer system for processing SW-SMI signal by using the effective bit length corresponding to the software system management interrupt signal value.

請參閱第一圖,其為常見的電腦系統功能方塊示意圖,主要包含:中央處理單元(CPU)101、北橋晶片103、南橋晶片105、顯示晶片117、記憶體控制器111、記憶體單元109、週邊裝置113以及基本輸出輸入系統(Basic Input/Output System,以下簡稱為BIOS)107。其中關於系統操作之各功能方塊作用如下:中央處理單元101為電腦系統負責管理與運算的單元;北橋晶片103與南橋晶片105則為中央處理單元101對外的溝通橋樑,其中北橋晶片103負責連結記憶體控制器111與顯示晶片117等高速的元件,而南橋晶片105負責連接速度較慢的周邊裝置113如硬碟、USB、網路晶片等;而基本輸出輸入系統107是一套記錄在非揮發式記憶體內的程式,用以記憶電腦週邊硬體相關設定,讓電腦正確管理並讓系統運作。Please refer to the first figure, which is a schematic diagram of a common computer system function, which mainly includes a central processing unit (CPU) 101, a north bridge wafer 103, a south bridge wafer 105, a display wafer 117, a memory controller 111, a memory unit 109, The peripheral device 113 and a basic input/output system (hereinafter referred to as BIOS) 107. The function blocks of the system operation are as follows: the central processing unit 101 is a unit for managing and computing the computer system; the north bridge chip 103 and the south bridge chip 105 are external communication bridges of the central processing unit 101, wherein the north bridge chip 103 is responsible for connecting the memory. The body controller 111 and the high-speed components such as the display wafer 117, and the south bridge wafer 105 is responsible for connecting the slower peripheral devices 113 such as a hard disk, a USB, a network chip, etc.; and the basic output input system 107 is a set of records in a non-volatile state. A program in memory that remembers the computer-related hardware-related settings to allow the computer to properly manage and operate the system.

在電腦系統中,系统管理中斷(System Management Interrupt,以下簡稱為SMI)可因為觸發原因的不同而區分為硬體系统管理中斷(Hardware System Management Interrupt,以下簡稱為HW-SMI)或軟體系统管理中斷(Software System Management Interrupt,以下簡稱為SW-SMI)等類別。無論觸發的原因為何,電腦系統啟動系统管理中斷的程序大致相同,即透過南橋晶片105上的系统管理中斷針腳SMI#傳送一系统管理中斷信號至中央處理單元101。接著,觸發該中央處理單元101進入系統管理模式(System Management Mode,以下簡稱為SMM),此模式為中央處理單元101的最高權限模式,進入此模式後電腦系統原本正在執行的任務將被中斷。然後,中央處理單元101將透過記憶體控制器111讀取位於記憶體單元109內的一特殊區域,即系统配置動態存取記憶體(System Management Random Access Memory,以下簡稱為SMRAM)區域內的程式以判斷應執行何種中斷處理程式。特別是,SMRAM中的程式稱為SMI處理程式,此處理程式是由基本輸出輸入系統107在電腦系統開機的初期事先載入記憶體單元109。In a computer system, a system management interrupt (SMI) can be classified into a hardware system management interrupt (HW-SMI) or a software system management interrupt due to different triggering reasons. (Software System Management Interrupt, hereinafter referred to as SW-SMI). Regardless of the cause of the trigger, the computer system initiates the system management interrupt procedure to be substantially the same, that is, a system management interrupt signal is transmitted to the central processing unit 101 via the system management interrupt pin SMI# on the south bridge wafer 105. Then, the central processing unit 101 is triggered to enter a system management mode (hereinafter referred to as SMM), which is the highest privilege mode of the central processing unit 101. After entering this mode, the task originally executed by the computer system will be interrupted. Then, the central processing unit 101 reads the special area located in the memory unit 109 through the memory controller 111, that is, the program in the system configuration random access memory (SMRAM) area. To determine which interrupt handler should be executed. In particular, the program in the SMRAM is referred to as an SMI processing program which is previously loaded into the memory unit 109 by the basic output input system 107 at the beginning of the startup of the computer system.

進一步來說,由軟體程式對特定硬體做寫入的動作而產生的SMI,就稱為軟體系统管理中斷,而此特定硬體在進階組態與電源介面規格(Advanced Configuration and Power Interface,ACPI)中稱為SMI指令埠(Command Port),其指令長度為1個位元組。Further, the SMI generated by the software program writing to a specific hardware is called a software system management interrupt, and the specific hardware is in the Advanced Configuration and Power Interface (Advanced Configuration and Power Interface, ACPI) is called the SMI command (Command Port), and its instruction length is 1 byte.

一般來說,軟體程式如果需要BIOS對某一硬體做某方面的控制時,會透過下達特定的SW-SMI指令告知BIOS其想要做的事情。例如:依據ACPI中的定義,BIOS會提供一個ACPI致能指令(enable command)給作業系統(operating system,OS),當OS想進入ACPI模式之前,它會對SMI指令埠寫入ACPI致能指令;假設ACPI致能指令為068h,則OS便將068h填入SMI指令埠。另一方面,無論寫入SMI指令埠的數值為何,該寫入行為將觸發該南橋晶片105上的系统管理中斷接腳SMI#傳送系統管理中斷信號至中央處理單元101,並使中央處理單元101進入系統管理模式。在系統管理模式下,中央處理單元101將透過記憶體控制器111讀取記憶體單元109中被規劃為系统配置動態存取記憶體區域內的SMI處理程式。舉例來說,假設寫入南橋晶片105內部的SMI指令埠為068h,則利用該數值068h與系统配置動態存取記憶體區域內的程式進行比對,以判斷發出軟體系統管理中斷事件的對應處理程式的位址,並將程式計數器移動至該起始位址,再執行中斷處理程式內的控制流程。In general, if the software program requires the BIOS to perform some control on a certain hardware, it will inform the BIOS of what it wants by issuing a specific SW-SMI command. For example, according to the definition in ACPI, the BIOS will provide an ACPI enable command to the operating system (OS). When the OS wants to enter the ACPI mode, it will write the ACPI enable command to the SMI command. If the ACPI enable command is 068h, the OS will fill 068h into the SMI command. On the other hand, regardless of the value written to the SMI command, the write behavior will trigger the system management interrupt pin SMI# transfer system management interrupt signal on the south bridge wafer 105 to the central processing unit 101, and the central processing unit 101 Enter system management mode. In the system management mode, the central processing unit 101 reads the SMI processing program in the memory unit 109 that is planned to be in the system configuration dynamic access memory area through the memory controller 111. For example, if the SMI command 写入 written in the south bridge chip 105 is 068h, the value 068h is used to compare with the program in the system configuration dynamic access memory area to determine the corresponding processing for issuing the software system management interrupt event. The address of the program, and the program counter is moved to the start address, and then the control flow in the interrupt handler is executed.

簡言之,一個SW-SMI的處理涉及了南橋晶片105、基本輸出輸入系統107、記憶體控制器111與中央處理單元101彼此間的溝通,與此控制流程相關的程式則被放在記憶體單元109內的系统配置動態存取記憶體區域,該區域內的程式是在電腦系統開機時由基本輸出輸入系統所載入,且對於SW-SMI指令而言,此程式必須定義清楚,一旦被BIOS載入記憶體單元時,不應任意更動程式內容。In short, the processing of one SW-SMI involves the communication between the south bridge chip 105, the basic output input system 107, the memory controller 111 and the central processing unit 101, and the program related to this control flow is placed in the memory. The system in unit 109 configures the dynamic access memory area. The program in the area is loaded by the basic output input system when the computer system is powered on, and for SW-SMI instructions, the program must be clearly defined once When the BIOS loads the memory unit, the program content should not be changed arbitrarily.

經由上述說明可以得知,電腦系統在判斷SW-SMI事件的流程時,必須大幅倚賴基本輸出輸入系統107所提供的SMI處理程式來處理軟體所發出的SW-SMI指令。在習知技術的作法中,BIOS廠商負責管理SW-SMI處理程式與SW-SMI指令間的對應關係。對於每一個SW-SMI都會分配到一個獨有的指令,而每個SW-SMI指令的長度為一個位元組。由於SW-SMI指令與SW-SMI處理程式是由BIOS廠商所管理,因此系統廠商或是晶片組(chipset)廠商若要增加其他的SW-SMI處理程式來處理其他事件時,必須先確認BIOS中有哪些SW-SMI指令尚未使用到,再從這些未使用的SW-SMI指令中擇一對應所新增的SW-SMI處理程式。這樣的開發模式則導致下述問題:即系統或晶片組廠商所合作的基本輸出輸入系統廠商不只一家,而不同的基本輸出輸入系統廠商對於相同的事件處理所分配的SW-SMI指令與SMI處理程式的起始位址亦不盡相同;另一方面,不同的基本輸出輸入系統廠商就同一個SW-SMI指令所對應的事件處理也不一定相同。因此,在目前的情況下,同一家基本輸出輸入系統廠商的系統中,有可能因管理不善,而使用相同的SW-SMI指令的數值,進而造成系統執行時的衝突。而且,不同的基本輸出輸入系統廠商間也可能因為SW-SMI指令的數值的整體規劃不相同而衍生困擾。As can be seen from the above description, when judging the flow of the SW-SMI event, the computer system must rely heavily on the SMI processing program provided by the basic output input system 107 to process the SW-SMI command issued by the software. In the practice of the prior art, the BIOS manufacturer is responsible for managing the correspondence between the SW-SMI processing program and the SW-SMI instruction. For each SW-SMI, a unique instruction is assigned, and each SW-SMI instruction is one byte long. Since SW-SMI commands and SW-SMI handlers are managed by BIOS vendors, system vendors or chipset vendors must first confirm the BIOS if they want to add other SW-SMI handlers to handle other events. Which SW-SMI instructions have not been used yet, and then select one of these unused SW-SMI instructions to add the new SW-SMI handler. Such a development model leads to the problem that the system or chipset manufacturer cooperates with more than one basic output input system manufacturer, and different basic output input system vendors allocate SW-SMI instructions and SMI processing for the same event processing. The starting address of the program is also different; on the other hand, the event processing of the same basic output input system manufacturer is not necessarily the same for the same SW-SMI instruction. Therefore, in the current situation, in the system of the same basic output input system manufacturer, the same SW-SMI command value may be used due to poor management, thereby causing conflicts in system execution. Moreover, different basic output input system vendors may also be plagued by the fact that the overall planning of the SW-SMI command values is different.

此外,因為在進階組態與電源介面規格的定義中,規定SW-SMI指令的長度固定為一位元組的長度(即8個位元的長度),這代表SMI處理程式可以辨識的SW-SMI指令總數至多為一個位元組所能支援的個數,即2^8=256個中斷指令,即依據此規格的定義時,電腦系統上可支援的最大SW-SMI處理程式數目為256個,這也使得電腦系統可支援SW-SMI處理程式的擴充性受到相當侷限。In addition, because in the definition of advanced configuration and power interface specifications, the length of the SW-SMI instruction is fixed to the length of one tuple (ie, the length of 8 bits), which represents the SW that the SMI handler can recognize. - The total number of SMI commands is at most one number that can be supported by one byte, that is, 2^8=256 interrupt instructions. According to the definition of this specification, the maximum number of SW-SMI handlers that can be supported on a computer system is 256. This also makes the expansion of the SW-SMI processing program supported by the computer system limited by the authorities.

經由上述說明可知,習知技術使用SW-SMI指令判定SW-SMI處理程式的缺失包含:不同的基本輸出輸入系統廠商對於各個SW-SMI指令的定義可能不一致、一旦新增SW-SMI處理程式便需要在基本輸出輸入系統的程式架構中找尋可用的指令,以及電腦系統所搭配的SW-SMI處理程式日益增加,僅能支援256個不同的SW-SMI處理程式的作法將不敷使用等,因此迫切的需要能解決前述缺失的作法。According to the above description, the conventional technology uses the SW-SMI command to determine that the SW-SMI processing program is missing: different basic output input system manufacturers may have different definitions for each SW-SMI instruction, and once the SW-SMI processing program is added, Need to find available instructions in the program structure of the basic output input system, and the SW-SMI processing program that the computer system is equipped with is increasing. Only the support of 256 different SW-SMI processing programs will not be used, so There is an urgent need to address the aforementioned shortcomings.

本案之一方面係為一種軟體系統管理中斷信號處理方法,應用於可執行一軟體之電腦系統,該方法包含下列步驟:因應該軟體對一核心邏輯電路中之一第一暫存器寫入對應一軟體系統管理中斷指令的一組數值,該核心邏輯電路發出一系統管理中斷信號至一中央處理單元;該中央處理單元執行一系統管理中斷處理程式;該系統管理中斷處理程式判斷該組數值之有效位元長度;以及該系統管理中斷處理程式根據該有效位元長度與該第一暫存器內之該組數值執行一記憶體單元中相對應之一軟體系統管理中斷處理程式。One aspect of the present invention is a software system management interrupt signal processing method, which is applied to a computer system capable of executing a software, the method comprising the following steps: corresponding to a software write to a first register of a core logic circuit A software system manages a set of values of an interrupt instruction, the core logic circuit sends a system management interrupt signal to a central processing unit; the central processing unit executes a system management interrupt processing program; the system management interrupt processing program determines the set of values The effective bit length; and the system management interrupt processing program executes a software system management interrupt processing program corresponding to a memory unit according to the effective bit length and the set of values in the first temporary register.

本案之另一方面係為一種電腦系統,應用於軟體系統管理中斷,該電腦系統包含:一核心邏輯電路,具有一第一暫存器,對該第一暫存器寫入一組數值可使該核心邏輯電路發出一系統管理中斷信號;一記憶體單元,電連接於該核心邏輯電路,其係記錄複數個軟體系統管理中斷處理程式;以及一中央處理單元,電連接於該記憶體單元與該核心邏輯電路,其係接收該系統管理中斷信號,並根據該組數值之有效長度與內容執行相對應之軟體系統管理中斷處理程式。Another aspect of the present invention is a computer system applied to a software system management interrupt, the computer system comprising: a core logic circuit having a first register, and writing a set of values to the first register The core logic circuit sends a system management interrupt signal; a memory unit electrically connected to the core logic circuit, which records a plurality of software system management interrupt processing programs; and a central processing unit electrically connected to the memory unit and The core logic circuit receives the system management interrupt signal and executes a software system management interrupt processing program corresponding to the content execution according to the effective length of the set of values.

在電腦系統中,習用技術使用固定長度為位元組長度的SW-SMI指令來判定SW-SMI處理程式之作法,具有可支援SW-SMI指令數目有限而易發生定義衝突,以及過度仰賴基本輸出輸入系統廠商等缺失,本案便以此作為出發點,希望能找到一個兼顧SW-SMI指令間衝突問題與提供系統與晶片組廠商較大的彈性,進而減少開發過程中過度仰賴基本輸出輸入系統廠商就中斷指令配置設定的作法。In computer systems, the conventional technique uses a SW-SMI instruction with a fixed length of the length of the byte to determine the SW-SMI processing program. It has a limited number of SW-SMI instructions and is prone to definition conflicts, and relies too much on the basic output. The input system vendors are missing, and this case is used as a starting point. I hope to find a solution to the conflict between SW-SMI instructions and the flexibility of the system and chipset manufacturers to reduce the excessive dependence on the basic output input system manufacturers during the development process. Interrupt instruction configuration settings.

如前所述,本案目的在發展出一種針對SW-SMI信號判別的處理方法,並將其作法應用於電腦系統的軟體系統管理中斷上。此處的電腦系統包含:記憶體單元、核心邏輯電路與中央處理單元,彼此之間則以匯流排或其他方式電連接而成,而核心邏輯電路中具有中斷指令暫存器(即習用技術之SMI指令埠,下稱SMI暫存器)。As mentioned above, the purpose of this case is to develop a processing method for SW-SMI signal discrimination, and apply it to the software system management interrupt of the computer system. The computer system here comprises: a memory unit, a core logic circuit and a central processing unit, which are electrically connected with each other by a bus bar or the like, and the core logic circuit has an interrupt instruction register (ie, a conventional technology) SMI command 埠, hereinafter referred to as SMI register).

本案的核心作法如下:在軟體對該核心邏輯電路中之SMI指令暫存器寫入對應一SW-SMI指令的一組數值之際,令核心邏輯電路發出一SMI信號至該中央處理單元。接著,中央處理單元係開始執行SMI處理程式。然後,令SMI處理程式判斷在該指令暫存器中所儲存之對應該SMI指令的該組的數值之有效位元長度。之後,令該SMI處理程式根據該有效位元長度與SMI指令暫存器內之數值來執行在記憶體單元中相對應之軟體系統管理中斷處理程式。The core method of this case is as follows: When the software writes a set of values corresponding to a SW-SMI instruction to the SMI instruction register in the core logic circuit, the core logic circuit sends an SMI signal to the central processing unit. Next, the central processing unit begins executing the SMI processing program. The SMI handler is then caused to determine the effective bit length of the set of values corresponding to the set of SMI instructions stored in the instruction register. Thereafter, the SMI processing program is executed to execute the software system management interrupt processing program corresponding to the memory unit based on the effective bit length and the value in the SMI instruction register.

基於現行技術的架構的作法,上述的核心邏輯電路可以是一般的南橋晶片或是另一個專門用以輔助判斷系統管理中斷的專用邏輯電路;而核心邏輯電路與中央處理單元之間則可採用SMI#接腳的方式直接進行中斷信號的傳遞,或是透過匯流排以間接的方式由核心邏輯電路傳送至中央處理單元中;至於對SMI指令暫存器寫入對應SW-SMI指令的數值之步驟,則可視電腦系統的規劃,由中央處理單元所執行的軟體來透過系統匯流排將發生SW-SMI指令之數值寫入SMI指令暫存器中;再者,SMI處理程式可由基本輸出輸入系統來提供,應用上則可透過系統匯流排將系統中的各個SW-SMI處理程式寫入該記憶體單元而間接提供給中央處理單元執行時使用。Based on the architecture of the prior art, the above core logic circuit can be a general south bridge chip or another dedicated logic circuit specially used to assist in judging system management interrupts; and SMI can be used between the core logic circuit and the central processing unit. The #pin method directly transfers the interrupt signal, or is indirectly transmitted from the core logic circuit to the central processing unit through the bus; and the step of writing the value corresponding to the SW-SMI command to the SMI instruction register According to the planning of the computer system, the software executed by the central processing unit writes the value of the SW-SMI command into the SMI instruction register through the system bus. Further, the SMI processing program can be used by the basic output input system. Provided, the application can be used by the system bus bar to write each SW-SMI processing program in the system to the memory unit and indirectly to the central processing unit for execution.

本案利用了對應SW-SMI指令的數值之實際有效位元長度的資訊,在SMI處理程式判斷應執行的SW-SMI處理程式時,提供SW-SMI指令的有效位元長度給SMI處理程式,而提供有效位元長度資訊的方式可以是將代表該有效位元長度之一位元長度資訊可與SW-SMI數值內容合併記錄於核心邏輯電路中的SMI指令暫存器(即第一暫存器),或是被單獨記錄於一個專用於儲存長度的暫存器(即第二暫存器),再由SMI處理程式至核心邏輯電路中讀取第一暫存器或第二暫存器所記錄關於長度的資訊;抑或由其他的邏輯電路或系統匯流排(如PCI系統匯流排)在系統管理中斷處理程式的控制過程中以直接或間接的方式提供給SMI處理程式使用SW-SMI指令之位元長度資訊。In this case, the information of the actual effective bit length corresponding to the value of the SW-SMI instruction is used, and when the SMI processing program determines the SW-SMI processing program to be executed, the effective bit length of the SW-SMI instruction is provided to the SMI processing program, and The manner of providing valid bit length information may be that the SMI instruction register (ie, the first register) that records the bit length information representing the length of the effective bit and the SW-SMI value content is combined in the core logic circuit. ), or separately recorded in a scratchpad dedicated to the storage length (ie, the second scratchpad), and then the SMI processing program to the core logic circuit to read the first scratchpad or the second scratchpad Record information about the length; or use other logic circuits or system busses (such as PCI system bus) to be directly or indirectly provided to the SMI handler using the SW-SMI command during the control of the system management interrupt handler Bit length information.

在本案的較佳實施例中,除了一般習用技術所採用的位元組長度的SW-SMI指令外,另外提供了使用字組(Word)、雙字組(Double Word)長度的SW-SMI指令,藉以提供新增的軟體系統管理中斷的識別用途,藉由前述其他的邏輯電路或系統匯流排的協助,SMI處理程式可以透過中央處理單元在同一個時脈之內至核心控制邏輯中讀取紀錄在SMI指令暫存器的數值內容。In the preferred embodiment of the present invention, in addition to the byte-length SW-SMI instruction used in the conventional art, a SW-SMI instruction using a word (Word) and a double word (Double Word) length is additionally provided. In order to provide the identification of the newly added software system management interrupt, the SMI processing program can read from the same clock to the core control logic through the central processing unit through the assistance of the other logic circuits or system bus. Record the value of the value in the SMI instruction register.

SW-SMI指令與SW-SMI處理程式間的對應關係可以相當有彈性,例如為完全不同的SW-SMI指令內容,或是新增的SW-SMI處理程式與某個SW-SMI處理程式有關連性,則可以在SW-SMI指令內容中由靠近最高有效位元(Most Significant Bit,MSB)的第一位元組定義共同相關的資訊內容,而靠近最低有效位元(Least Significant Bit,LSB)的位元組則可以定義不同的資訊內容。由於系統匯流排等提供了對應於SW-SMI指令之有效位元長度的資訊,SMI處理程式可以用此資訊避免對資料讀取時的誤動作,即,在寫入一位元組資料時,SMI指令暫存器上的其他位元亦可能因為之前SW-SMI指令的長度為一字組長或是一雙字組長等原因而有數值,此時藉由長度對齊的機制便可以知道該部份的數值與本次的SW-SMI指令無關。The correspondence between the SW-SMI command and the SW-SMI handler can be quite flexible, for example, for a completely different SW-SMI command content, or a new SW-SMI handler associated with a SW-SMI handler. Sex, you can define the common related information content in the SW-SMI instruction content by the first byte near the Most Significant Bit (MSB), and close to the Least Significant Bit (LSB). The bytes can define different information content. Since the system bus and the like provide information corresponding to the effective bit length of the SW-SMI command, the SMI handler can use this information to avoid malfunctions when reading data, that is, when writing a one-tuple data, SMI The other bits on the instruction register may also have a value because the length of the previous SW-SMI instruction is a word length or a double word length, etc., and the length alignment mechanism can know the part. The value is independent of this SW-SMI instruction.

在程式裡增加對於有效位元長判斷的作法,除了可以改善前述缺失外,在現有的電腦系統上實現時也相當簡便。即,僅需將新增之不同有效位元長度的中斷程式所對應的SW-SMI指令之數值在流程中先行判斷,並將該些數值所對應的SW-SMI處理程式安排在現有SMI中斷處理程式區塊之前,則在軟體進入系統管理模式時,由進入點(即系统配置動態存取記憶體的起始點)開始判斷的程式便進入新的SW-SMI指令群組所對應之SMI處理程式。Adding a way to judge the effective bit length in the program, in addition to improving the aforementioned shortcomings, is also quite simple to implement on existing computer systems. That is, it is only necessary to first determine the value of the SW-SMI instruction corresponding to the interrupt program with different effective bit lengths in the flow, and arrange the SW-SMI processing program corresponding to the values in the existing SMI interrupt processing. Before the program block, when the software enters the system management mode, the program that is judged by the entry point (that is, the starting point of the system configuration dynamic access memory) enters the SMI processing corresponding to the new SW-SMI command group. Program.

後續的較佳實施例係以SW-SMI指令為字組的有效位元長度(即16位元)進行說明,但實際上的應用並不限於以字組長度作為SW-SMI指令有效位元長度判定時的例子,即其他可能的長度如雙字組、四字組或其他非位元組長度之整數倍長度的SW-SMI指令亦可能被採用。The subsequent preferred embodiment is described by the SW-SMI instruction as the effective bit length of the block (ie, 16 bits), but the actual application is not limited to the length of the block as the effective bit length of the SW-SMI instruction. An example of a decision, that is, other possible lengths such as a double word, quad block, or other non-byte length of the SW-SMI instruction may also be employed.

由於系统管理中斷只有一個進入點,所有的系统管理中斷事件都會在同一個處理程式中處理,系统管理中斷產生時,南橋晶片會設定系统管理中斷事件的狀態,因此系统管理中斷處理程式必須判斷要處理哪個系统管理中斷事件,因此本發明之應用始點係對應於習知技術所提的”進入SMM”,結束點則對應於習知技術所提的”執行中斷處理程式內的控制流程”。Since the system management interrupt has only one entry point, all system management interrupt events will be processed in the same processing program. When the system management interrupt is generated, the south bridge chip will set the state of the system management interrupt event, so the system management interrupt handler must judge Which system management interrupt event is handled, so the application starting point of the present invention corresponds to the "entry SMM" mentioned by the prior art, and the end point corresponds to the "control flow in the execution interrupt processing program" proposed by the prior art.

請參見第二圖,其係本案為改善習用手段缺失所發展出來關於個人電腦系統較佳實施例之流程示意圖。首先中央處理單元因SMI#信號進入系統管理模式(步驟401),接著SMI處理程式判斷核心邏輯電路所提供的SW-SMI指令之有效位元長度是否為位元組長度(步驟403),若是,表示該軟體系統管理中斷的處理程式係依循一般藉由基本輸出輸入系統所判斷的中斷信號,因此流程進入一般的判斷中斷處理流程(步驟405);若否,則進入一查表比對的過程,以達成對有效位元長度為字組以上長度的數值所代表之SW-SMI處理程式進行處理(步驟407),實現查表的細節可能各異,但作法不外在該查表比對的過程中,就個別定義的SMI指令與接收到的資料進行比對,一旦相符,便進入系統管理模式執行相對應的處理程序;對應的中斷處理程式執行完畢後(步驟405、步驟407),中央處理單元將回到原本的正常處理流程中,關於查表比對(步驟407)過程的進一步說明則請參見第三圖及第四圖。Please refer to the second figure, which is a schematic diagram of the flow of a preferred embodiment of the personal computer system developed in order to improve the lack of conventional means. First, the central processing unit enters the system management mode by the SMI# signal (step 401), and then the SMI processing program determines whether the effective bit length of the SW-SMI command provided by the core logic circuit is the byte length (step 403), and if so, The processing program indicating the software system management interrupt follows the interrupt signal generally judged by the basic output input system, so the flow enters the general judgment interrupt processing flow (step 405); if not, the process proceeds to a table lookup comparison process. The processing of the SW-SMI processing program represented by the value of the length of the effective bit is greater than the length of the block (step 407), and the details of the table lookup may be different, but the method is not only in the table comparison. In the process, the individually defined SMI instruction is compared with the received data, and once it matches, the system management mode is executed to execute the corresponding processing program; after the corresponding interrupt processing program is executed (step 405, step 407), the central The processing unit will return to the original normal processing flow. For further explanation of the table lookup comparison (step 407), please refer to the third and fourth figures.

請參見第三圖(a)(b),其為第一種實現查表比對過程所對應之系统配置動態存取記憶體內的記憶體配置圖與控制流程圖。在第三圖(a)的SMI中斷處理程式包括:SW-SMI處理程式α、SW-SMI處理程式β、SW-SMI處理程式γ等,分別被配置了一塊記憶體空間I、II、III以儲存個別的軟體系統管理中斷處理程式內容,而第三圖(b)的流程圖中可以看出中央處理單元在進入軟體系統管理中斷(步驟501)的流程後,首先讀取SW-SMI指令的數值(步驟503)並將此SW-SMI指令數值與從SMI指令暫存器所讀取到的數值進行比對(步驟505),若記憶體單元中的SW-SMI指令之數值符合自南橋晶片的SMI指令暫存器所儲存的數值,便開始執行對應於此SW-SMI指令之SW-SMI處理程式(步驟507),並在執行完畢SW-SMI處理程式的內容後便離開中斷處理流程(步驟511);若中央處理單元比對SW-SMI指令的數值與SMI指令暫存器內的數值之結果為不符合,則移動程式計數器至下一個SW-SMI處理程式的起始位址(步驟509),接著重複進行前述讀取SW-SMI指令(步驟503)與判斷(步驟505)的動作。Please refer to the third figure (a) (b), which is the memory configuration diagram and control flow chart in the system configuration dynamic access memory corresponding to the first implementation of the table lookup comparison process. The SMI interrupt processing program in the third diagram (a) includes: SW-SMI processing program α, SW-SMI processing program β, SW-SMI processing program γ, etc., and a memory space I, II, III is respectively configured. The contents of the individual software system management interrupt handler are stored, and in the flowchart of the third diagram (b), it can be seen that the central processing unit first reads the SW-SMI command after entering the software system management interrupt (step 501). The value (step 503) compares the SW-SMI command value with the value read from the SMI command register (step 505), if the value of the SW-SMI command in the memory unit conforms to the self-bridge chip The value stored in the SMI instruction register starts executing the SW-SMI processing program corresponding to the SW-SMI instruction (step 507), and exits the interrupt processing flow after executing the contents of the SW-SMI processing program ( Step 511); if the central processing unit compares the value of the SW-SMI instruction with the result of the value in the SMI instruction register, the program counter is moved to the start address of the next SW-SMI processing program (step 509), then repeat the aforementioned reading SW-SMI instruction (step Step 503) and the action of the judgment (step 505).

舉例而言,系统管理中斷在被觸發後首先固定跳躍至SW-SMI處理程式α的起始點並讀取SW-SMI指令α的內容,比對SW-SMI指令α與自SMI指令暫存器所讀取到的數值x是否相等,若不相等則程式將繼續跳躍至SW-SMI處理程式β的起始點,即儲存SW-SMI指令β的地方讀取SMI指令β的內容…。如此反覆進行,假設在第三圖(b)中,x的內容與SW-SMI指令γ的內容相同,則SMI控制流程將進入SW-SMI處理程式γ中,並開始執行SW-SMI處理程式γ內的步驟。For example, after the system management interrupt is triggered, it firstly jumps to the starting point of the SW-SMI processing program α and reads the contents of the SW-SMI instruction α, and compares the SW-SMI instruction α with the self-SMI instruction register. Whether the read values x are equal, if not equal, the program will continue to jump to the starting point of the SW-SMI processing program β, that is, the content of the SMI command β is read where the SW-SMI command β is stored. In this way, it is assumed that in the third figure (b), the content of x is the same as the content of the SW-SMI instruction γ, the SMI control flow will enter the SW-SMI processing program γ, and the execution of the SW-SMI processing program γ will be started. The steps inside.

再請參見第四圖(a)(b),其為第二種可能用以實現中斷處理程式之查表比對過程所對應之系统配置動態存取記憶體配置圖與控制流程圖。這種作法是將個別的SW-SMI處理程式記錄在記憶體單元中的第一紀錄區塊內並取得其分別對應之起始位址後,再將這些SW-SMI處理程式所對應的SW-SMI指令之數值與起始位址一起寫入於記憶體單元中的第二紀錄區塊內,藉以提供一個在比對結果符合時,能夠按圖索驥取得SW-SMI處理程式所在位置的功效。Referring to FIG. 4(a)(b), it is a second system configuration dynamic access memory configuration diagram and control flow chart corresponding to the table lookup comparison process that may be used to implement the interrupt processing program. In this method, an individual SW-SMI processing program is recorded in the first recording block in the memory unit and the corresponding starting address is obtained, and then the SW-SMI processing program corresponds to the SW- The value of the SMI instruction is written in the second record block in the memory unit together with the start address, thereby providing a function of obtaining the position of the SW-SMI handler according to the figure when the comparison result is met.

如第四圖(a)所示,這類型的查表的方式是在系统配置動態存取記憶體的起始點規劃出一專用查表區,即,第二紀錄區塊,中斷控制流程在進入系統管理模式(步驟601)後,先透過該專用查表區進行查詢SW-SMI指令的動作(步驟603),將核心邏輯電路中的SMI指令暫存器所取得的數值(即觸發SMI狀態之SW-SMI數值)與專用查表區內的各個SW-SMI指令分別進行比對(步驟605),若比對未成功,則繼續取得查表區中的下一個SW-SMI指令的數值(步驟607),然後重新開始進行比對(步驟605),一旦SW-SMI指令的數值與SMI指令暫存器內的數值比對的結果為符合,則繼續讀取記錄於SW-SMI指令後的各中斷流程的起始位址(步驟609),接著SMI處理程式將把程式計數器移動至取得的SW-SMI處理程式之起始位址(步驟611)而開始執行記錄於第一紀錄區塊內的SW-SMI處理程式(步驟613),例如自SW-SMI處理程式β的起始點開始執行SW-SMI處理程式β內的中斷步驟,並於SW-SMI處理程式β之步驟被執行完畢後離開SMM(步驟615)。As shown in the fourth figure (a), this type of lookup table is to plan a dedicated lookup table at the starting point of the system configuration dynamic access memory, that is, the second record block, and the interrupt control flow is After entering the system management mode (step 601), the operation of querying the SW-SMI command is performed through the dedicated look-up table area (step 603), and the value obtained by the SMI instruction register in the core logic circuit is triggered (ie, the SMI state is triggered). The SW-SMI value is compared with each SW-SMI command in the dedicated lookup table (step 605). If the comparison is unsuccessful, the value of the next SW-SMI command in the lookup table is continuously obtained ( Step 607), and then restart the comparison (step 605), once the value of the SW-SMI instruction matches the result of the value in the SMI instruction register, the reading is continued after the SW-SMI instruction is recorded. The start address of each interrupt flow (step 609), and then the SMI handler will move the program counter to the start address of the obtained SW-SMI processing program (step 611) and start executing the record in the first record block. SW-SMI processing program (step 613), for example, from the SW-SMI processing program β Point in step executes interrupt processing program SW-SMI β, and away from the SMM is performed (step 615) After completion of the step SW-SMI processing program of beta].

請參見第五圖,其為本發明之較佳實施例在實際應用時由基本輸出輸入系統廠商配合處理的程式配置之示意圖。圖中標示的是在程式開機的時候,基本輸出輸入系統寫入至記憶體單元之系统配置動態存取記憶體區塊中的程式配置,在系统配置動態存取記憶體區塊中可以進一步區分為第一程式區塊與第二程式區塊,其中由SW-SMI處理程式A、SW-SMI處理程式B、SW-SMI處理程式C等所構成的區域,即,第一程式區塊,為現有電腦系統中關於SMI程式所使用的區塊,用以儲存具有位元組長度的SW-SMI指令對應之中斷處理程式群;另外一個區塊,即,第二程式區塊,則被用來儲存SW-SMI指令之有效位元長度為非位元組長度之SW-SMI處理程式α、SW-SMI處理程式β、SW-SMI處理程式γ…等第二類型中斷處理程式。Please refer to the fifth figure, which is a schematic diagram of a program configuration processed by a basic output input system manufacturer in actual application according to a preferred embodiment of the present invention. The figure shows the program configuration in the system configuration dynamic access memory block where the basic output input system writes to the memory unit when the program is booted, which can be further distinguished in the system configuration dynamic access memory block. The first program block and the second program block, wherein the area formed by the SW-SMI processing program A, the SW-SMI processing program B, the SW-SMI processing program C, and the like, that is, the first program block, is The block used by the SMI program in the existing computer system is used to store the interrupt processing program group corresponding to the SW-SMI instruction having the byte length; the other block, that is, the second program block, is used. The second type interrupt processing program such as the SW-SMI processing program α, the SW-SMI processing program β, the SW-SMI processing program γ, etc., which store the SW-SMI command, is a non-byte group length.

因此,當本發明的較佳實施例在進行SW-SMI指令拆解判斷時,一旦在判讀有效位元的步驟(圖2之步驟403)中,得知對應該SW-SMI指令的有效位元長度的資訊符合進階組態與電源介面規格內部定義的長度(一位元組長度),便會進入原始的進入點並開始一般中斷流程的對應與處理(步驟405);另一方面,若SW-SMI指令之有效位元長度資訊顯示出有效位元長度為依據本發明所定義之不同的有效位元長度,如一字組長度一雙字組長度與一四字組長度等,則中斷處理流程將進入新的進入點所指示的區段,並由該起始點開始判斷中斷處理程式中的何者為此次中斷事件觸發時所對應的中斷源(步驟407)。Therefore, when the preferred embodiment of the present invention performs the SW-SMI instruction disassembly determination, once in the step of interpreting the valid bit (step 403 of FIG. 2), the valid bit corresponding to the SW-SMI instruction is known. The length information conforms to the length defined internally by the advanced configuration and the power interface specification (one tuple length), and then enters the original entry point and begins the correspondence and processing of the general interrupt process (step 405); The effective bit length information of the SW-SMI instruction shows that the effective bit length is different effective bit lengths defined according to the present invention, such as a block length, a double block length, and a quad block length, etc., and the interrupt processing is performed. The process will enter the segment indicated by the new entry point, and the start point will determine which of the interrupt handlers is the interrupt source corresponding to the trigger event (step 407).

簡言之,本發明的作法僅需對程式的判斷流程加以變更,配合基本輸出輸入系統在原判斷起點前新增部份的中斷處理程序,則可以輕易的融入現有的電腦系統開發流程中,而基本輸出輸入系統廠商仍負責原本記憶體區塊中的中斷處理程式,由晶片組廠商與系統廠商協調所需新增的SW-SMI處理程式並置放於新的記憶體區塊中,將大幅降低現有開發流程中需要密切進行三方溝通的不便。因為新的中斷處理程式區塊之規劃獨立於基本輸出輸入系統所使用的中斷處理程式區塊,可採用一個別的開發流程來進行,因此可以搭配任何基本輸出輸入系統廠商的作法,使得電腦系統的開發時程更具時效性,不需要因為不同基本輸出輸入系統廠商的規劃彼此不相同而造成必須重新撰寫對應的中斷判斷流程的不便。In short, the method of the present invention only needs to change the judgment process of the program, and the basic output input system can be easily integrated into the existing computer system development process by adding a part of the interrupt processing program before the original judgment starting point. The basic output input system manufacturer is still responsible for the interrupt processing program in the original memory block. The newly added SW-SMI processing program coordinated by the chipset manufacturer and the system manufacturer and placed in the new memory block will be greatly reduced. The inconvenience of close communication between the three parties is required in the existing development process. Because the planning of the new interrupt handler block is independent of the interrupt handler block used by the basic output input system, a different development process can be used, so it can be used with any basic output input system manufacturer to make the computer system The development time schedule is more time-sensitive, and it is not necessary to rewrite the corresponding interrupt judgment process because the plans of different basic output input system manufacturers are different from each other.

綜上所述,本案增加了對SW-SMI指令長度的判斷於軟體系统管理中斷的判斷流程中,這樣的作法除了解決習知技術仰賴基本輸出輸入系統過多的問題外,更具有以下幾個優點:本案的作法與現行技術相容,不會造成額外的成本;解決在基本輸出輸入系統與應用程式、驅動程式、繪圖晶片在使用軟體系统管理中斷事件時的衝突問題;在觸發軟體系统管理中斷事件的同時,可以同時轉移更多的資訊;可與不同基本輸出輸入系統廠商的核心相容;以及僅需要一個時脈週期便可以完成此方法。In summary, this case adds the judgment of SW-SMI instruction length in the judgment process of software system management interruption. In addition to solving the problem that the conventional technology relies on too many basic output input systems, this method has the following advantages. : The practice of this case is compatible with the current technology, and will not cause additional cost; solve the conflict problem in the basic output input system and application, driver, and graphics chip when using the software system to manage the interrupt event; trigger the software system management interrupt At the same time, more information can be transferred at the same time; it is compatible with the cores of different basic output input system vendors; and only one clock cycle is required to complete this method.

儘管本發明已以較佳實施例揭露如上,然其並非用以限定本發明,本發明得由熟習此技藝之人士任施匠思而為諸般修飾,然皆不脫如附申請專利範圍所欲保護者。While the invention has been described above by way of a preferred embodiment, it is not intended to limit the invention, and the invention may be modified by those skilled in the art, and the invention is not intended to be protector.

本發明圖式中所包含之各元件列式如下:The components included in the drawings of the present invention are as follows:

100...中斷控制暫存器100. . . Interrupt control register

101...中央處理單元101. . . Central processing unit

103...北橋晶片103. . . North Bridge Chip

105...南橋晶片105. . . South Bridge Chip

107...基本輸入輸出單元107. . . Basic input and output unit

109...記憶體單元109. . . Memory unit

111...記憶體控制器111. . . Memory controller

113...週邊裝置113. . . Peripheral device

117...顯示晶片117. . . Display chip

本案得藉由下列圖式及說明,俾得更深入之了解:The case can be further understood by the following diagrams and explanations:

第一圖,其係常見的電腦系統功能方塊示意圖。The first picture is a block diagram of the common computer system function.

第二圖,其係本案為改善習用手段缺失所發展出來關於軟體系統管理中斷信號處理的一較佳實施例之流程示意圖。The second figure is a schematic flow chart of a preferred embodiment of the software system management interrupt signal processing developed in order to improve the lack of conventional means.

第三圖(a)(b),其係第一種實現查表比對過程所對應之系统配置動態存取記憶體內的記憶體配置圖與控制流程圖。The third figure (a) (b) is the memory configuration diagram and control flow chart in the system configuration dynamic access memory corresponding to the first implementation of the table lookup comparison process.

第四圖(a)(b),其係第二種實現查表比對過程所對應之系统配置動態存取記憶體內的記憶體配置圖與控制流程圖。The fourth figure (a) and (b) are the memory configuration diagram and control flow chart in the system configuration dynamic access memory corresponding to the second implementation of the table lookup comparison process.

第五圖,其係本發明在實際應用時由基本輸出輸入系統廠商配合處理的程式配置之示意圖。The fifth figure is a schematic diagram of a program configuration that is processed by a basic output input system manufacturer in the actual application of the present invention.

Claims (22)

一種軟體系統管理中斷信號處理方法,應用於可執行一軟體之電腦系統,該方法包含下列步驟:因應該軟體對一核心邏輯電路中之一第一暫存器寫入對應一軟體系統管理中斷指令的一組數值,該核心邏輯電路發出一系統管理中斷信號至一中央處理單元;該中央處理單元執行一系統管理中斷處理程式;以及該系統管理中斷處理程式判斷該組數值之有效位元長度,若該有效位元長度大於一位元組長度,則進入一查表比對的過程;其中,該查表比對過程為該系統管理中斷處理程式根據該有效位元長度與該第一暫存器內之該組數值執行一記憶體單元中相對應之一軟體系統管理中斷處理程式,以達成對有效位元長度為一字組以上長度的該數值所代表之軟體系統管理中斷處理程式進行處理。 A software system management interrupt signal processing method is applied to a computer system capable of executing a software, the method comprising the steps of: writing a corresponding software system management interrupt instruction to a first temporary register of a core logic circuit; a set of values, the core logic circuit sends a system management interrupt signal to a central processing unit; the central processing unit executes a system management interrupt processing program; and the system management interrupt processing program determines the effective bit length of the set of values, If the effective bit length is greater than one tuple length, entering a table lookup comparison process; wherein the lookup table comparison process is the system management interrupt processing program according to the effective bit length and the first temporary storage The set of values in the device executes a corresponding software system management interrupt processing program in the memory unit to process the software system management interrupt processing program represented by the value whose effective bit length is longer than one word. . 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,其中該中斷信號係由該核心邏輯電路與該中央處理單元間之接腳所傳送。 The software system management interrupt signal processing method according to claim 1, wherein the interrupt signal is transmitted by a pin between the core logic circuit and the central processing unit. 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,其中該軟體對該核心邏輯電路中之該第一暫存器寫入該組數值之步驟係為該軟體控制該中央處理單元透過一系統匯流排將該組數值寫入該暫存器。 The software system management interrupt signal processing method according to claim 1, wherein the software writes the set of values to the first temporary register in the core logic circuit to control the central processing unit by the software. The set of values is written to the register via a system bus. 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,其中該中斷處理程式係由該電腦系統之一基本輸出輸入系統所提供,而該基本輸出輸入系統中之該中斷處 理程式係透過一系統匯流排寫入該記憶體單元。 The software system management interrupt signal processing method according to claim 1, wherein the interrupt processing program is provided by a basic output input system of the computer system, and the interrupt is in the basic output input system. The program program writes the memory unit through a system bus. 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,其中該有效位元長度係可為一位元組長度、一字組長度、一雙字組長度或一四字組長度。 The software system management interrupt signal processing method according to claim 1, wherein the effective bit length is one-bit tuple length, one-word group length, one double-word group length or one quad-word group length. 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,該方法更包含以下步驟:將代表該有效位元長度之一位元長度資訊記錄於該核心邏輯電路中。 The software system management interrupt signal processing method according to claim 1, wherein the method further comprises the step of: recording, in the core logic circuit, bit length information representing one of the effective bit lengths. 如申請專利範圍第6項所述之軟體系統管理中斷信號處理方法,其中該位元長度資訊記錄於該核心邏輯電路中之一第二暫存器。 The software system management interrupt signal processing method according to claim 6, wherein the bit length information is recorded in one of the core logic circuits and the second register. 如申請專利範圍第6項所述之軟體系統管理中斷信號處理方法,其中判斷該組數值之有效位元長度之步驟係由該系統管理中斷處理程式自該核心邏輯電路中讀取該位元長度資訊而得。 The software system management interrupt signal processing method according to claim 6, wherein the step of determining the effective bit length of the set of values is performed by the system management interrupt processing program from the core logic circuit. Information comes. 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,其中該第一暫存器係為一系統管理中斷指令暫存器。 The software system management interrupt signal processing method according to claim 1, wherein the first temporary register is a system management interrupt instruction register. 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,該方法更包含以下步驟:依據複數個數值之有效位元長度將對應於該複數個數值之複數個軟體系統管理中斷處理程式分為一第一類型軟體系統管理中斷處理程式與一第二類型軟體系統管理中斷處理程式;以及將該些複數個中斷處理程式寫入該記憶體單元中之一 特定區塊。 The software system management interrupt signal processing method according to claim 1, wherein the method further comprises the following steps: a plurality of software system management interrupt processing programs corresponding to the plurality of values according to the effective bit length of the plurality of values Dividing into a first type of software system management interrupt processing program and a second type software system management interrupt processing program; and writing the plurality of interrupt processing programs into the memory unit Specific block. 如申請專利範圍第10項所述之軟體系統管理中斷信號處理方法,其中將該複數個中斷處理程式寫入該記憶體單元中之一特定區塊之步驟係將該等第一類型軟體系統管理中斷處理程式與該等第二類型軟體系統管理中斷處理程式分別寫入於該特定區塊內之一第一程式區塊與一第二程式區塊中。 The software system management interrupt signal processing method according to claim 10, wherein the step of writing the plurality of interrupt processing programs to a specific block in the memory unit is to manage the first type software system. The interrupt handler and the second type of software system management interrupt handler are respectively written in one of the first program block and the second program block in the specific block. 如申請專利範圍第10項所述之軟體系統管理中斷信號處理方法,其中該特定區塊記錄該複數個軟體系統管理中斷處理程式之步驟係由電腦系統之一基本輸出輸入系統透過一系統匯流排寫入該記憶體單元所完成。 The software system management interrupt signal processing method according to claim 10, wherein the step of recording the plurality of software system management interrupt processing programs in the specific block is performed by a basic output input system of the computer system through a system bus This is done by writing to the memory unit. 如申請專利範圍第1項所述之軟體系統管理中斷信號處理方法,該方法還包含以下步驟:將對應於複數個數值且包含有該軟體系統管理中斷處理程式之複數個軟體系統管理中斷處理程式寫入該記憶體單元。 The software system management interrupt signal processing method according to claim 1, wherein the method further comprises the following steps: a plurality of software system management interrupt processing programs corresponding to the plurality of values and including the software system management interrupt processing program Write to this memory unit. 如申請專利範圍第13項所述之軟體系統管理中斷信號處理方法,其中該系統管理中斷處理程式根據該第一暫存器內之該組數值執行該記憶體單元中相對應之該軟體系統管理中斷處理程式之方法包含以下步驟:將寫入該第一暫存器之該軟體系統管理中斷指令與寫入該記憶體單元中之該複數個數值分別比對;以及於比對符合時將一程式計數器指向對應於該組數值之軟體系統管理中斷處理程式之起始位址。 The software system management interrupt signal processing method according to claim 13, wherein the system management interrupt processing program executes the corresponding software system management in the memory unit according to the set of values in the first temporary register. The method for interrupting the processing program includes the steps of: comparing the software system management interrupt instruction written in the first temporary register with the plurality of values written in the memory unit; and when the comparison is met The program counter points to the start address of the software system management interrupt handler corresponding to the set of values. 如申請專利範圍第13項所述之軟體系統管理中斷信號 處理方法,其中將對應於複數個數值之複數個軟體系統管理中斷處理程式寫入該記憶體單元之步驟係將該複數個數值中之一第一數值寫入該記憶體單元後,接著寫入該第一數值對應之軟體系統管理中斷處理程式;以及將該複數個數值中之一第二數值寫入該記憶體單元後,接著寫入該第二數值對應之軟體系統管理中斷處理程式。 Software system management interrupt signal as described in claim 13 The processing method, wherein the step of writing a plurality of software system management interrupt processing programs corresponding to the plurality of values into the memory unit is to write one of the plurality of values into the memory unit, and then write The software system management interrupt processing program corresponding to the first value; and writing the second value of the plurality of values to the memory unit, and then writing the software system management interrupt processing program corresponding to the second value. 如申請專利範圍第13項所述之軟體系統管理中斷信號處理方法,其中將對應於複數個數值之複數個軟體系統管理中斷處理程式寫入該記憶體單元之步驟係將該複數個軟體系統管理中斷處理程式記錄於該記憶體單元中之一第一紀錄區塊,以及將該複數個數值與該複數個軟體系統管理中斷處理程式所對應之起始位址寫入於該記憶體單元中之一第二紀錄區塊。 The software system management interrupt signal processing method according to claim 13, wherein the step of writing a plurality of software system management interrupt processing programs corresponding to the plurality of values into the memory unit is to manage the plurality of software systems. The interrupt processing program records one of the first record blocks in the memory unit, and writes the plurality of values to the memory unit in the memory unit corresponding to the start address corresponding to the plurality of software system management interrupt processing programs. A second record block. 一種電腦系統,應用於軟體系統管理中斷,該電腦系統包含:一核心邏輯電路,具有一第一暫存器,對該第一暫存器寫入一組數值可使該核心邏輯電路發出一系統管理中斷信號;一記憶體單元,電連接於該核心邏輯電路,其係記錄複數個軟體系統管理中斷處理程式;一中央處理單元,電連接於該記憶體單元與該核心邏輯電路,其係接收該系統管理中斷信號,並根據該組數值之有效位元長度與內容執行相對應之軟體系統管理中斷處理程式;一系統匯流排,電連接於該核心邏輯電路、該記憶體 單元與該中央處理單元,其係對該第一暫存器寫入該組數值;以及一基本輸出輸入系統,電連接於該系統匯流排,其係提供該複數個軟體系統管理中斷處理程式,並透過該系統匯流排記錄於該記憶體單元。 A computer system for applying a software system management interrupt, the computer system comprising: a core logic circuit having a first register, writing a set of values to the first register to enable the core logic circuit to issue a system Management interrupt signal; a memory unit electrically connected to the core logic circuit, which records a plurality of software system management interrupt processing programs; a central processing unit electrically connected to the memory unit and the core logic circuit, the system receives The system manages the interrupt signal, and the software system management interrupt processing program corresponding to the content execution according to the effective bit length of the set of values; a system bus bar electrically connected to the core logic circuit, the memory And the central processing unit writes the set of values to the first register; and a basic output input system electrically connected to the system bus, which provides the plurality of software system management interrupt processing programs, And recorded in the memory unit through the system bus. 如申請專利範圍第17項所述之電腦系統,其中該核心邏輯電路更包含一第二暫存器,其係記錄代表該有效位元長度之一位元長度資訊。 The computer system of claim 17, wherein the core logic circuit further comprises a second register, which records information on the length of one bit representing the length of the effective bit. 如申請專利範圍第17項所述之電腦系統,其中該核心邏輯電路與該中央處理單元間有一接腳,其係傳送該系統管理中斷信號。 The computer system of claim 17, wherein the core logic circuit and the central processing unit have a pin, which transmits the system management interrupt signal. 如申請專利範圍第17項所述之電腦系統,其中該複數個軟體系統管理中斷指令數值之有效位元長度係可為一位元組長度、一字組長度、一雙字組長度或一四字組長度。 The computer system of claim 17, wherein the plurality of software system management interrupt instruction values have a valid bit length of one tuple length, one block length, one double word length, or one fourth. The length of the block. 如申請專利範圍第17項所述之電腦系統,其中該複數個軟體系統管理中斷處理程式係被記錄於該記憶體單元之一特定區塊,而該特定區塊係可依據該複數個軟體系統管理中斷處理程式所對應之該複數個數值之有效位元長度分為一第一程式區塊與一第二程式區塊。 The computer system of claim 17, wherein the plurality of software system management interrupt processing programs are recorded in a specific block of the memory unit, and the specific block is based on the plurality of software systems The effective bit length of the plurality of values corresponding to the management interrupt processing program is divided into a first program block and a second program block. 如申請專利範圍第17項所述之電腦系統,其中該記憶體單元中之一第一紀錄區塊係記錄該複數個軟體系統管理中斷處理程式,而一第二紀錄區塊係記錄該複數個數值與該複數個軟體系統管理中斷處理程式所對應之起始位址。 The computer system of claim 17, wherein one of the first recording blocks of the memory unit records the plurality of software system management interrupt processing programs, and a second recording block records the plurality of The value is the starting address corresponding to the plurality of software system management interrupt handlers.
TW098137296A 2009-11-03 2009-11-03 Interrupt signal processing method and computer system TWI493467B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW098137296A TWI493467B (en) 2009-11-03 2009-11-03 Interrupt signal processing method and computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098137296A TWI493467B (en) 2009-11-03 2009-11-03 Interrupt signal processing method and computer system

Publications (2)

Publication Number Publication Date
TW201117103A TW201117103A (en) 2011-05-16
TWI493467B true TWI493467B (en) 2015-07-21

Family

ID=44935130

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098137296A TWI493467B (en) 2009-11-03 2009-11-03 Interrupt signal processing method and computer system

Country Status (1)

Country Link
TW (1) TWI493467B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI479419B (en) * 2012-02-08 2015-04-01 Wistron Corp Computer system and computer system processing method thereof
TWI604309B (en) 2012-07-31 2017-11-01 緯創資通股份有限公司 Method of proactively event triggering and related computer system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119248A (en) * 1998-01-26 2000-09-12 Dell Usa L.P. Operating system notification of correctable error in computer information
US20090210584A1 (en) * 2008-02-14 2009-08-20 International Business Machines Corporation Exception condition determination at a control unit in an i/o processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119248A (en) * 1998-01-26 2000-09-12 Dell Usa L.P. Operating system notification of correctable error in computer information
US20090210584A1 (en) * 2008-02-14 2009-08-20 International Business Machines Corporation Exception condition determination at a control unit in an i/o processing system

Also Published As

Publication number Publication date
TW201117103A (en) 2011-05-16

Similar Documents

Publication Publication Date Title
US5896550A (en) Direct memory access controller with full read/write capability
US8327161B2 (en) Command decoder for microcontroller based flash memory digital controller system
JP3264272B2 (en) Computer and power control method for computer
JPH10177563A (en) Microcomputer with built-in flash memory
JP2005071303A (en) Program starting device
TWI592866B (en) Methods for atomic writes in a ssd (solid state disk) system and apparatuses using the same
JPH1078889A (en) Microcomputer
TWI493467B (en) Interrupt signal processing method and computer system
US6543008B1 (en) Computer system and program rewriting method
TWI375170B (en) Non-volatile memory device and auxiliary circuit thereof
US7516260B2 (en) Method of communicating with embedded controller
JP5775398B2 (en) Semiconductor integrated circuit device
KR100534613B1 (en) apparatus and method for booting system using flash memory
US8117427B2 (en) Motherboard, storage device and controller thereof, and booting method
JP2008065725A (en) Nand flash memory device, and activation method of computing system using the same
JP2006504153A (en) Method and apparatus for changing the contents of a revision identification register
US5913225A (en) Cache flush mechanism for a secondary cache memory
KR101249831B1 (en) Computer system and method for booting the same
JP2011013836A (en) Memory arrangement management device and microprocessor
JP2846760B2 (en) Programmable controller
TWI235955B (en) BIOS upgrading method of embedded controller in electronic device
JPH11312138A (en) Interrupt control system and its control method therefor
JP2017208058A (en) Information processing device
JPS63157238A (en) Computer
TWI405127B (en) Methods for managing id information of a chip