[go: up one dir, main page]

TWI463331B - Simulation system and method for soc - Google Patents

Simulation system and method for soc Download PDF

Info

Publication number
TWI463331B
TWI463331B TW100114396A TW100114396A TWI463331B TW I463331 B TWI463331 B TW I463331B TW 100114396 A TW100114396 A TW 100114396A TW 100114396 A TW100114396 A TW 100114396A TW I463331 B TWI463331 B TW I463331B
Authority
TW
Taiwan
Prior art keywords
interrupt
platform
physical
level
data packet
Prior art date
Application number
TW100114396A
Other languages
Chinese (zh)
Other versions
TW201243620A (en
Inventor
Fu Ching Ynag
Yu Hsuan Lin
Hsun Wei Kao
Sheng Hsun Cho
Original Assignee
Global Unichip Corp
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 Global Unichip Corp filed Critical Global Unichip Corp
Priority to TW100114396A priority Critical patent/TWI463331B/en
Publication of TW201243620A publication Critical patent/TW201243620A/en
Application granted granted Critical
Publication of TWI463331B publication Critical patent/TWI463331B/en

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Description

系統單晶片之模擬系統及方法System single chip simulation system and method

本發明係有關於系統單晶片的模擬系統及方法,且特別是有關於可交互中斷之系統單晶片的模擬系統及方法。The present invention relates to analog systems and methods for system single wafers, and more particularly to analog systems and methods for system interruptable interrupted single wafers.

由於製程不斷的演進以及客戶端對於系統功能需求的增加,越來越多的矽智財(Silicon Intellectual Property,IP)被整合進系統單晶片(System on Chip,SoC)中,因此增加了設計的複雜度。Due to the continuous evolution of the process and the increasing demand for system functions by the client, more and more Silicon Intellectual Property (IP) is integrated into the System on Chip (SoC), thus increasing the design. the complexity.

在傳統的晶片設計流程中,系統效能評估往往需要等待硬體原型開發板(例如具有場可程式閘陣列(Field Programmable Gate Array,FPGA)之開發板)完成之後,才能進行系統軟體的整合驗證及分析。然而,整個系統的驗證週期相當耗時。此外,硬體原型開發板只能提供功能性驗證,而無法提供真正的執行速度。因此,在系統設計及規劃初期,需要能進行快速模擬、方便觀測分析且可彈性調整系統架構及規格的電子系統層級(Electroniuc Systrem Level)之虛擬平台(virtual platform),其可幫助系統晶片設計者定義出高效能之系統架構,避免多次的反覆設計,並提供系統級軟體開發環境,進而縮短整體系統設計開發週期。In the traditional chip design process, the system performance evaluation often needs to wait for the hardware prototype development board (such as the development board with Field Programmable Gate Array (FPGA)) to complete the integration verification of the system software. analysis. However, the verification cycle of the entire system is quite time consuming. In addition, hardware prototyping boards can only provide functional verification and do not provide true execution speed. Therefore, in the early stage of system design and planning, an electronic platform (Electroniuc Systrem Level) virtual platform capable of rapid simulation, convenient observation and analysis, and flexible adjustment of system architecture and specifications is needed, which can help system chip designers. Define a high-performance system architecture, avoid multiple repetitive designs, and provide a system-level software development environment to shorten the overall system design and development cycle.

在晶片設計流程中,一般是使用暫存器傳輸層級(Register Transfer Level,RTL)或是處理程序層級模型(Transaction Level Modeling,TLM)來建立系統單晶片的模擬系統,其中代表性的暫存器傳輸層級是使用Verilog-HDL,而代表性的處理程序層級模型是使用程式語言System C。相較於暫存器傳輸層級,處理程序層級模型可提供較高的抽象層級(Abstraction Level),進而降低系統單晶片開發的複雜度。藉由處理程序層級模型技術,系統設計人員可以在架構設計階段來輕易的修改系統架構、進行實驗並收集數據,進而分析與改良系統。此外,透過處理程序層級模型技術所開發之硬體平台的輔助,軟體工程師可以在架構設計階段結束後,利用此平台開始撰寫應用程式。In the chip design process, a register transfer level (RTL) or a Transaction Level Modeling (TLM) is generally used to establish a system single-chip analog system, in which a representative register is used. The transport hierarchy uses Verilog-HDL, and the representative handler hierarchy model uses the programming language System C. Compared to the scratchpad transport hierarchy, the handler level model provides a higher level of abstraction, which in turn reduces the complexity of system single-chip development. By processing the program level model technology, system designers can easily modify the system architecture, conduct experiments, and collect data during the architecture design phase to analyze and improve the system. In addition, with the help of the hardware platform developed by the processor level model technology, software engineers can use this platform to start writing applications after the architecture design phase.

一般而言,在處理程序層級模型所構成的模擬系統中,不同平台之間的資料傳遞係透過轉換(transaction)來進行。然而,不同平台之間的中斷(Interrupt)無法透過轉換的方式來傳遞,於是不同平台的處理器無法進行交互中斷,使得該模擬系統無法被視為完整的一個系統,即無法模擬出系統單晶片中矽智財單元的完整操作。In general, in an analog system composed of a handler level model, data transfer between different platforms is performed through a transaction. However, the interrupt between different platforms cannot be transmitted through the conversion method, so the processors of different platforms cannot be interrupted interactively, so that the analog system cannot be regarded as a complete system, that is, the system single chip cannot be simulated. The complete operation of the Lieutenant Intelligence Unit.

因此,需要一種模擬方式能於具有處理程序層級模型之混合系統中建立交互中斷的機制。Therefore, there is a need for a simulation method that establishes an interaction interrupt in a hybrid system with a handler level model.

本發明提供系統單晶片之模擬系統及方法。本發明提供之一種系統單晶片之模擬系統包括一處理程序層級模型虛擬平台以及耦接於上述處理程序層級模型虛擬平台之一暫存器傳輸層級實體平台。上述處理程序層級模型虛擬平台包括:一虛擬處理器;一虛擬設計單元;以及一中斷代理器,用以將來自上述虛擬設計單元的一虛擬中斷信號轉換成一第一中斷資料封包。上述暫存器傳輸層級實體平台包括:一實體設計單元;一中斷轉換器,用以根據上述第一中斷資料封包,產生對應於上述虛擬中斷信號之一第一中斷;以及一實體處理器,用以相應於上述第一中斷而執行一第一中斷程序。The present invention provides a system and method for simulating a single wafer of a system. A system single-chip simulation system provided by the present invention includes a processing program level model virtual platform and a scratchpad transmission level entity platform coupled to the processing program level model virtual platform. The processing program level model virtual platform includes: a virtual processor; a virtual design unit; and an interrupt agent for converting a virtual interrupt signal from the virtual design unit into a first interrupt data packet. The above-mentioned register transfer level entity platform includes: a physical design unit; an interrupt converter for generating a first interrupt corresponding to one of the virtual interrupt signals according to the first interrupt data packet; and an entity processor A first interrupt routine is executed in response to the first interrupt described above.

再者,本發明提供另一種系統單晶片之模擬系統包括一處理程序層級模型虛擬平台以及耦接於上述處理程序層級模型虛擬平台之一暫存器傳輸層級實體平台。上述暫存器傳輸層級實體平台包括:一實體設計單元;以及一中斷轉換器,用以將來自上述實體設計單元的一實體中斷信號轉換成一中斷資料封包。上述處理程序層級模型虛擬平台包括一虛擬設計單元;一中斷代理器,用以根據上述中斷資料封包,產生對應於上述實體中斷信號之一中斷;以及一虛擬處理器,用以控制上述虛擬設計單元,並相應於上述中斷而執行一中斷程序。Furthermore, the present invention provides another system single-chip simulation system including a processing program level model virtual platform and a scratchpad transmission level entity platform coupled to the processing program level model virtual platform. The above-mentioned register transfer level physical platform includes: a physical design unit; and an interrupt converter for converting a physical interrupt signal from the physical design unit into an interrupt data packet. The processing program level model virtual platform includes a virtual design unit; an interrupt agent for generating an interrupt corresponding to the physical interrupt signal according to the interrupt data packet; and a virtual processor for controlling the virtual design unit And executing an interrupt program corresponding to the above interrupt.

再者,本發明提供一種模擬方法,適用於結合一處理程序層級模型虛擬平台以及一暫存器傳輸層級實體平台之系統單晶片之一模擬系統。於上述處理程序層級模型虛擬平台中,將來自一虛擬設計單元的一虛擬中斷信號轉換成一第一中斷資料封包。根據一特定通訊協定,將上述第一中斷資料封包從上述處理程序層級模型虛擬平台傳送至上述暫存器傳輸層級實體平台。於上述暫存器傳輸層級實體平台中,根據上述第一中斷資料封包產生對應於上述虛擬中斷信號之一第一中斷。於上述暫存器傳輸層級實體平台中,相應於上述第一中斷而執行一第一中斷程序。Furthermore, the present invention provides a simulation method suitable for combining one of the processing program level model virtual platform and one of the system single chip simulation systems of the scratchpad transmission level physical platform. In the processing program level model virtual platform, a virtual interrupt signal from a virtual design unit is converted into a first interrupt data packet. Transmitting the first interrupt data packet from the processing program level model virtual platform to the scratchpad transport level entity platform according to a specific communication protocol. In the above-mentioned register transfer level entity platform, a first interrupt corresponding to one of the virtual interrupt signals is generated according to the first interrupt data packet. In the above-mentioned register transfer level entity platform, a first interrupt program is executed corresponding to the first interrupt.

再者,本發明提供另一種模擬方法,適用於結合一處理程序層級模型虛擬平台以及一暫存器傳輸層級實體平台之系統單晶片之一模擬系統。於上述暫存器傳輸層級實體平台中,將來自一實體設計單元的一實體中斷信號轉換成一中斷資料封包。根據一特定通訊協定,將上述中斷資料封包傳送至上述處理程序層級模型虛擬平台。於上述處理程序層級模型虛擬平台中,根據上述中斷資料封包來產生對應於上述實體中斷信號之一中斷。於上述處理程序層級模型虛擬平台中,相應於上述中斷而執行一中斷程序。Furthermore, the present invention provides another simulation method suitable for combining one of the processing program level model virtual platform and one of the system single chip simulation systems of the scratchpad transmission level physical platform. In the above-mentioned scratchpad transport level entity platform, a physical interrupt signal from a physical design unit is converted into an interrupt data packet. The interrupt data packet is transmitted to the processing program level model virtual platform according to a specific communication protocol. In the processing program level model virtual platform, an interrupt corresponding to one of the physical interrupt signals is generated according to the interrupt data packet. In the above-mentioned handler level model virtual platform, an interrupt program is executed corresponding to the above interrupt.

為讓本發明之上述和其他目的、特徵、和優點能更明顯易懂,下文特舉出較佳實施例,並配合所附圖式,作詳細說明如下:實施例:第1圖係顯示根據本發明一實施例所述之系統單晶片(SoC)之模擬系統100。模擬系統100包括處理程序層級模型(TLM)虛擬平台10以及暫存器傳輸層級(RTL)實體平台20。在此實施例中,處理程序層級模型虛擬平台10係由配備有程式語言System C引擎的電腦設備所實施,例如具有Linux作業系統之電腦,而暫存器傳輸層級實體平台20係透過具有場可程式閘陣列(FPGA)之硬體開發板來實現,其中處理程序層級模型虛擬平台10係經由週邊組件互連(Peripheral Component Interconnect,PCI)匯流排30耦接於暫存器傳輸層級實體平台20。此外,處理程序層級模型虛擬平台10可視為一時序週期近似(cycle approximate,CX)平台,而暫存器傳輸層級實體平台20可視為一時序週期精確(cycle accurate,CA)平台。在其他實施例中,處理程序層級模型虛擬平台10亦可透過其他連接方式,例如通用串列匯流排(Universal Serial Bus,USB)或是網路等,連接於暫存器傳輸層級實體平台20。The above and other objects, features and advantages of the present invention will become more <RTIgt; A system single chip (SoC) simulation system 100 according to an embodiment of the invention. The simulation system 100 includes a handler level model (TLM) virtual platform 10 and a scratchpad transport level (RTL) entity platform 20. In this embodiment, the handler level model virtual platform 10 is implemented by a computer device equipped with a programming language System C engine, such as a computer with a Linux operating system, and the scratchpad transport level physical platform 20 has a field. The hardware platform of the program gate array (FPGA) is implemented, wherein the processor level model virtual platform 10 is coupled to the scratchpad transport level physical platform 20 via a Peripheral Component Interconnect (PCI) bus bar 30. In addition, the processor level model virtual platform 10 can be regarded as a cycle approximate (CX) platform, and the scratchpad transmission level physical platform 20 can be regarded as a cycle accurate (CA) platform. In other embodiments, the handler level model virtual platform 10 can also be connected to the scratchpad transport level entity platform 20 through other connection methods, such as a Universal Serial Bus (USB) or a network.

處理程序層級模型虛擬平台10包括指令集模擬器(lnstruction Set Simulator,ISS)110、待驗證之軟體矽智財單元120A-120C、中斷代理器(agent)130、向量中斷控制器(Vectored Interrupt Controller,VIC)140以及驅動器150,其中指令集模擬器110可視為虛擬處理器,而軟體矽智財單元120A-120C可視為虛擬設計單元,其欲被整合至系統單晶片內。指令集模擬器110透過匯流排115與軟體矽智財單元120A-120C進行資料傳遞,並控制軟體矽智財單元120A-120C。此外,欲傳送至暫存器傳輸層級實體平台20的資料亦係透過匯流排115傳送至匯流排代理器(未顯示),再經由驅動器150與PCI匯流排30傳送至暫存器傳輸層級實體平台20。The handler level model virtual platform 10 includes an instruction set simulator (ISS) 110, a software entity to be verified 120A-120C, an interrupt agent 130, and a vectored interrupt controller (Vectored Interrupt Controller, The VIC) 140 and the driver 150, wherein the instruction set simulator 110 can be considered a virtual processor, and the software entity 120A-120C can be considered a virtual design unit that is intended to be integrated into a system single chip. The instruction set simulator 110 transmits data to the software entity 120A-120C through the bus bar 115, and controls the software entity 120A-120C. In addition, the data to be transmitted to the scratchpad transport level physical platform 20 is also transmitted to the bus bar agent (not shown) through the bus bar 115, and then transmitted to the scratchpad transport level entity platform via the driver 150 and the PCI bus bar 30. 20.

暫存器傳輸層級實體平台20包括處理器210、硬體矽智財單元220A-220C、中斷轉換器(transactor)230、向量中斷控制器240以及晶片層級轉換器250,其中硬體矽智財單元220A-220C可以被燒錄於場可程式閘陣列(FPGA)中,其是欲被整合至系統單晶片內已開發或驗證完成之實體單元。相似地,處理器210可透過匯流排215與硬體矽智財單元220A-220C進行資料傳遞。此外,欲傳送至處理程序層級模型虛擬平台10的資料亦係透過匯流排215傳送至匯流排轉換器(未顯示),再經由晶片層級轉換器250與PCI匯流排30傳送至處理程序層級模型虛擬平台10。The scratchpad transport level physical platform 20 includes a processor 210, a hardware unit 220A-220C, a transactor 230, a vector interrupt controller 240, and a wafer level converter 250, wherein the hardware unit The 220A-220C can be programmed into a field programmable gate array (FPGA), which is a physical unit that has been developed or verified to be integrated into a single wafer of the system. Similarly, the processor 210 can perform data transfer with the hardware and smart unit 220A-220C through the bus bar 215. In addition, the data to be transmitted to the processor level model virtual platform 10 is also transmitted to the bus bar converter (not shown) through the bus bar 215, and then transmitted to the processor level model virtual via the chip level converter 250 and the PCI bus bar 30. Platform 10.

第2圖係顯示第1圖中根據本發明一實施例所述之交互中斷觸發路徑示意圖,其係表示處理程序層級模型虛擬平台10內的任一軟體矽智財單元會產生中斷並傳送至暫存器傳輸層級實體平台20內的處理器210,以供後續處理。同時參考第1圖及第2圖,首先,軟體矽智財單元120A、120B或120C會經由匯流排125提供中斷信號SINT1 至中斷代理器130。接著,中斷代理器130會判斷中斷信號SINT1 是要被傳送至指令集模擬器110或是傳送至暫存器傳輸層級實體平台20內的處理器210。當中斷信號SINT1 是要被傳送至暫存器傳輸層級實體平台20內的處理器210時,中斷代理器130會將中斷信號SINT1 轉換成中斷資料封包P1,並傳送至暫存器傳輸層級實體平台20內中斷轉換器230。在第2圖中,為了簡化說明,驅動器150、匯流排30與晶片層級轉換器250的操作將省略並將描述於後。接著,當接收到中斷資料封包P1之後,中斷轉換器230會將中斷資料封包P1轉換回中斷信號SINT1 ,並傳送至向量中斷控制器240。接著,向量中斷控制器240會根據中斷信號SINT1 產生中斷INT1並安排其優先級,以便提供中斷INT1至處理器210。於是,當接收到中斷INT1之後,處理器210便可執行對應於中斷INT1之中斷程序。另一方面,當中斷信號SINT1 要被傳送至指令集模擬器110時,中斷代理器130會將中斷信號SINT1 傳送至向量中斷控制器140(如虛線所顯示),使得向量中斷控制器140能根據中斷信號SINT1 產生中斷INT1至指令集模擬器110並控制其優先級。於是,指令集模擬器110便可執行對應於中斷INT1之中斷程序。2 is a schematic diagram showing an interaction interrupt trigger path according to an embodiment of the present invention in FIG. 1 , which indicates that any software entity in the processing level model virtual platform 10 generates an interrupt and transmits to the temporary The processor transports the processor 210 within the hierarchical entity platform 20 for subsequent processing. Referring to FIG. 1 and FIG. 2 simultaneously, first, the software entity 120A, 120B or 120C provides the interrupt signal S INT1 to the interrupt agent 130 via the bus bar 125. Next, the interrupt agent 130 determines whether the interrupt signal S INT1 is to be transferred to the instruction set simulator 110 or to the processor 210 within the scratchpad transport level entity platform 20. When the interrupt signal S INT1 is to be transferred to the processor 210 in the scratchpad transport level entity platform 20, the interrupt proxy 130 converts the interrupt signal S INT1 into the interrupt data packet P1 and transfers it to the scratchpad transport level. The converter 230 is interrupted within the physical platform 20. In Fig. 2, the operation of the driver 150, the bus bar 30, and the wafer level converter 250 will be omitted and will be described later for simplicity of explanation. Then, after receiving the interrupt data packet P1, the interrupt converter 230 converts the interrupt data packet P1 back to the interrupt signal S INT1 and transmits it to the vector interrupt controller 240. Next, vector interrupt controller 240 interrupts INT1 interrupt signal INT1 is generated according to the S and the priority of their arrangement, so as to provide the processor 210 to interrupt INT1. Thus, upon receiving the interrupt INT1, the processor 210 can execute the interrupt routine corresponding to the interrupt INT1. On the other hand, when the interrupt signal S INT1 is to be transferred to the instruction set simulator 110, the interrupt proxy 130 transmits the interrupt signal S INT1 to the vector interrupt controller 140 (as indicated by the dashed line), such that the vector interrupt controller 140 The interrupt INT1 can be generated to the instruction set simulator 110 according to the interrupt signal S INT1 and its priority can be controlled. Thus, the instruction set simulator 110 can execute the interrupt routine corresponding to the interrupt INT1.

第3圖係顯示第1圖中根據本發明另一實施例所述之交互中斷觸發路徑示意圖,其係表示暫存器傳輸層級實體平台20內的任一硬體矽智財單元會產生中斷並傳送至處理程序層級模型虛擬平台10內的指令集模擬器110,以供後續處理。同時參考第1圖及第3圖,首先,硬體矽智財單元220A、220B或220C會經由匯流排225提供中斷信號SINT2 至中斷轉換器230。接著,中斷轉換器230會判斷中斷信號SINT2 是要被傳送至處理器210或是傳送至處理程序層級模型虛擬平台10內的指令集模擬器110。當中斷信號SINT2 是要被傳送至處理程序層級模型虛擬平台10內的指令集模擬器110時,中斷轉換器230會將中斷信號SINT2 轉換成中斷資料封包P2,並傳送至處理程序層級模型虛擬平台10內的中斷代理器130。在第3圖中,為了簡化說明,驅動器150、匯流排30與晶片層級轉換器250的操作將省略並將描述於後。接著,當接收到中斷資料封包P2之後,中斷代理器130會將中斷資料封包P2轉換回中斷信號SINT2 ,並傳送至向量中斷控制器140。接著,向量中斷控制器140會根據中斷信號SINT2 產生中斷INT2並安排其優先級,以便提供中斷INT2至指令集模擬器110。於是,當接收到中斷INT2之後,指令集模擬器110便可執行對應於中斷INT2之中斷程序。另一方面,當中斷信號SINT2 要被傳送至處理器210時,中斷轉換器230會將中斷信號SINT2 傳送至向量中斷控制器240(如虛線所顯示),使得向量中斷控制器240能根據中斷信號SINT2 產生中斷INT2至處理器210並控制其優先級。於是,處理器210便可執行對應於中斷INT2之中斷程序。3 is a schematic diagram showing an interaction interrupt trigger path according to another embodiment of the present invention in FIG. 1 , which indicates that any hardware entity in the scratchpad transport level entity platform 20 generates an interrupt and The instruction set simulator 110 within the handler level model virtual platform 10 is passed for subsequent processing. Referring to FIG. 1 and FIG. 3 simultaneously, first, the hardware unit 220A, 220B or 220C provides the interrupt signal S INT2 to the interrupt converter 230 via the bus bar 225. Next, the interrupt converter 230 determines whether the interrupt signal S INT2 is to be transmitted to the processor 210 or to the instruction set simulator 110 within the handler level model virtual platform 10. When the interrupt signal S INT2 is to be transferred to the instruction set simulator 110 in the handler level model virtual platform 10, the interrupt converter 230 converts the interrupt signal S INT2 into the interrupt data packet P2 and transfers it to the handler level model. The interrupt agent 130 within the virtual platform 10. In FIG. 3, the operation of the driver 150, the bus bar 30, and the wafer level converter 250 will be omitted and will be described later for simplicity of explanation. Then, after receiving the interrupt data packet P2, the interrupt proxy 130 converts the interrupt data packet P2 back to the interrupt signal S INT2 and transfers it to the vector interrupt controller 140. Next, the vectored interrupt controller 140 generates an interrupt INT2 based on the interrupt signal S INT2 and prioritizes it to provide an interrupt INT2 to the instruction set simulator 110. Thus, after receiving the interrupt INT2, the instruction set simulator 110 can execute the interrupt routine corresponding to the interrupt INT2. On the other hand, when the interrupt signal S INT2 is to be transmitted to the processor 210, the interrupt converter 230 transmits the interrupt signal S INT2 to the vector interrupt controller 240 (as shown by the dashed line) so that the vector interrupt controller 240 can The interrupt signal S INT2 generates an interrupt INT2 to the processor 210 and controls its priority. Thus, the processor 210 can execute the interrupt routine corresponding to the interrupt INT2.

值得注意的是,在執行交互中斷之前,需要先對處理程序層級模型虛擬平台10以及暫存器傳輸層級實體平台20內的中斷進行設定與配置。由於處理程序層級模型虛擬平台10以及暫存器傳輸層級實體平台20所構成的模擬系統100是用來模擬同一系統單晶片的操作,因此兩平台的中斷設定與配置必須考慮系統的單一性。It is worth noting that the interrupts in the handler level model virtual platform 10 and the scratchpad transport level physical platform 20 need to be set and configured before the interaction interruption is performed. Since the simulation system 100 composed of the handler level model virtual platform 10 and the scratchpad transport level physical platform 20 is used to simulate the operation of the same system single chip, the interrupt setting and configuration of the two platforms must consider the unity of the system.

第4圖、第5圖與第6圖係分別顯示根據本發明一實施例所述之中斷配置封包40、中斷種類封包50及交互中斷封包60。當有複數個中斷代理器/中斷轉換器存在時,欄位CHID係用來指定該封包是對應於哪一個中斷代理器/中斷轉換器。欄位LENGTH係用來表示該封包的資料長度。欄位TYPE係用來表示該封包的類型。例如,“00”係表示該封包為中斷設置封包40、“01”係表示該封包為中斷種類封包50而“10”係表示該封包為交互中斷封包60。4, 5, and 6 show an interrupt configuration packet 40, an interrupt type packet 50, and an inter-interruption packet 60, respectively, according to an embodiment of the invention. When there are multiple interrupt agent/interrupt converters, the field CHID is used to specify which interrupt agent/interrupt converter the packet corresponds to. The field LENGTH is used to indicate the length of the data of the packet. The field TYPE is used to indicate the type of the packet. For example, "00" indicates that the packet is the interrupt setting packet 40, "01" indicates that the packet is the interrupt type packet 50, and "10" indicates that the packet is the interactive interrupt packet 60.

同時參考第1圖與第4圖,在中斷配置封包40中,欄位42係用來指示暫存器傳輸層級實體平台20內中斷事件的來源,而欄位44係用來指示處理程序層級模型虛擬平台10內中斷事件的來源。舉例來說,模擬系統100可模擬系統單晶片的32個中斷事件,其中每一中斷事件的來源可以是由處理程序層級模型虛擬平台10或是暫存器傳輸層級實體平台20內的矽智財單元所提供。此外,如先前所描述,欄位42與欄位44皆是表示該系統單晶片的32個中斷事件。因此,欄位42與欄位44的內容應該是互補值,以避免衝突產生。例如,欄位42中PP_VIC_SEL[0]係對應於暫存器傳輸層級實體平台20內的矽智財單元220A。因此,欄位42的PP_VIC_SEL[0]應被設為“1”,以表示該位元之中斷來源是位於暫存器傳輸層級實體平台20內的矽智財單元220A。同時地,欄位44的VP_VIC_SEL[0]則應被設為“0”,以表示該位元之中斷來源並非位於處理程序層級模型虛擬平台10內。Referring also to Figures 1 and 4, in the interrupt configuration packet 40, field 42 is used to indicate the source of the interrupt event in the scratchpad transport level entity platform 20, and field 44 is used to indicate the handler level model. The source of the interrupt event within virtual platform 10. For example, the simulation system 100 can simulate 32 interrupt events of a system single chip, wherein the source of each interrupt event can be the processor level virtual platform 10 or the scratchpad transport level entity platform 20 Provided by the unit. Moreover, as previously described, both field 42 and field 44 are 32 interrupt events representing the single wafer of the system. Therefore, the contents of field 42 and field 44 should be complementary values to avoid conflicts. For example, PP_VIC_SEL[0] in field 42 corresponds to the smart unit 220A in the scratchpad transport level entity platform 20. Therefore, PP_VIC_SEL[0] of field 42 should be set to "1" to indicate that the interrupt source for the bit is the smart asset unit 220A located in the scratchpad transport level entity platform 20. Simultaneously, VP_VIC_SEL[0] of field 44 should be set to "0" to indicate that the interrupt source for the bit is not located within the handler level model virtual platform 10.

參考第5圖,在中斷種類封包50中,欄位52、54與56係表示系統單晶片中32個中斷事件的種類。例如,對應於中斷配置封包40的欄位42與44,欄位52係用來指示該中斷事件為位準觸發(level trigger)或是邊緣觸發(edge trigger)。此外,當該中斷事件為邊緣觸發時,欄位54係用來指示該中斷事件為單一邊緣觸發(single edge trigger)或是雙邊緣觸發(both edge trigger)。再者,當該中斷事件為邊緣觸發時,欄位56係用來指示該中斷事件為上升邊緣觸發(rising edge trigger)還是下降邊緣觸發(falling edge trigger)。另外,當該中斷事件為位準觸發時,欄位56係用來指示該中斷事件為高位準觸發(high level trigger)還是低位準觸發(low level trigger)。此外,欄位58係用來指示該中斷事件是否被致能(enable)。Referring to Figure 5, in the interrupt type packet 50, fields 52, 54 and 56 represent the type of 32 interrupt events in the system single chip. For example, corresponding to fields 42 and 44 of the interrupt configuration packet 40, field 52 is used to indicate whether the interrupt event is a level trigger or an edge trigger. In addition, when the interrupt event is an edge trigger, the field 54 is used to indicate whether the interrupt event is a single edge trigger or a double edge trigger. Moreover, when the interrupt event is an edge trigger, the field 56 is used to indicate whether the interrupt event is a rising edge trigger or a falling edge trigger. In addition, when the interrupt event is a level trigger, field 56 is used to indicate whether the interrupt event is a high level trigger or a low level trigger. In addition, field 58 is used to indicate whether the interrupt event is enabled.

參考第6圖,在交互中斷封包60,欄位62係表示在系統單晶片的32個中斷事件中有哪些中斷事件發生。例如,當欄位62的VIC_INTERRUPT[0]被設為“1”時,則表示矽智財單元220A的中斷事件已被觸發。Referring to Figure 6, in the Interrupt Break Packet 60, field 62 indicates which interrupt events occurred in the 32 interrupt events of the system single chip. For example, when VIC_INTERRUPT[0] of field 62 is set to "1", it indicates that the interrupt event of the smart unit 220A has been triggered.

當開始進行模擬時,模擬系統100必須透過中斷配置封包40與中斷種類封包50先對處理程序層級模型虛擬平台10內的中斷代理器130以及暫存器傳輸層級實體平台的中斷轉換器230進行設定與配置,使得中斷代理器130以及中斷轉換器230在接收到中斷資料封包(例如交互中斷封包60)時,可對應地進行轉換。第7圖係顯示根據本發明一實施例所述之轉換示意圖,其係描述由中斷代理器130/中斷轉換器230所執行之中斷信號與中斷資料封包之間的轉換。在此實施例中,中斷代理器130/中斷轉換器230係透過有限狀態機(Finite State Machine,FSM)進行轉換。舉例來說,如箭頭A所顯示,當陸續接收到中斷資料封包Pn、中斷資料封包P(n+1)與中斷資料封包P(n+2)時,中斷代理器130/中斷轉換器230內的有限狀態機可根據先前接收的中斷配置封包40及中斷種類封包50,將所接收中斷資料封包轉換回中斷信號(如虛線70表示),其中中斷資料封包Pn係對應於中斷信號SINT1 、中斷資料封包P(n+1)係對應於中斷信號SINT3 與中斷信號SINT4 而中斷資料封包P(n+2)係對應於中斷信號SINT2 。另一方面,根據時脈信號CLK,中斷代理器130/中斷轉換器230亦可將中斷信號SINT1 -SINT4 轉換成中斷資料封包Pn、中斷資料封包P(n+1)與中斷資料封包P(n+2),並依序傳送至驅動器150/晶片層級轉換器250,如箭頭B所顯示。When the simulation is started, the simulation system 100 must first set the interrupt proxy 130 in the handler level model virtual platform 10 and the interrupt converter 230 in the scratchpad transport level physical platform through the interrupt configuration packet 40 and the interrupt type packet 50. And configuration, such that the interrupt agent 130 and the interrupt converter 230 can perform the corresponding conversion when receiving the interrupt data packet (eg, the inter-interrupt packet 60). Figure 7 is a diagram showing the transition between an interrupt signal and an interrupt data packet executed by the interrupt proxy 130/interrupt converter 230, in accordance with an embodiment of the present invention. In this embodiment, the interrupt agent 130/interrupt converter 230 is converted by a Finite State Machine (FSM). For example, as shown by the arrow A, when the interrupt data packet Pn, the interrupt data packet P(n+1), and the interrupt data packet P(n+2) are successively received, the interrupt agent 130/interrupt converter 230 is received. The finite state machine can convert the received interrupt data packet back to the interrupt signal (as indicated by the dashed line 70) according to the previously received interrupt configuration packet 40 and the interrupt type packet 50, wherein the interrupt data packet Pn corresponds to the interrupt signal S INT1 and the interrupt. The data packet P(n+1) corresponds to the interrupt signal S INT3 and the interrupt signal S INT4 and the interrupt data packet P(n+2) corresponds to the interrupt signal S INT2 . On the other hand, according to the clock signal CLK, the interrupt proxy 130/interrupt converter 230 can also convert the interrupt signal S INT1 - S INT4 into an interrupt data packet Pn, an interrupt data packet P(n+1), and an interrupt data packet P. (n+2), and sequentially transferred to the driver 150/wafer level converter 250 as indicated by arrow B.

參考回第1圖,在模擬系統100中,處理程序層級模型虛擬平台10與暫存器層級實體平台20之間的資料傳遞需符合匯流排30之通訊協定的格式。因此,驅動器150與晶片層級轉換器250會分別將來自中斷代理器130與中斷轉換器230的中斷資料封包轉換成符合匯流排30之通訊協定的格式,並透過匯流排30傳送至另一平台。此外,晶片層級轉換器250具有暫存單元,可以儲存所接收到之來自處理程序層級模型虛擬平台10的中斷資料封包或是欲傳送至處理程序層級模型虛擬平台10的中斷資料封包。具體而言,驅動器150可透過匯流排30對晶片層級轉換器250進行中斷資料封包的存取。Referring back to FIG. 1, in the simulation system 100, the data transfer between the handler level model virtual platform 10 and the scratchpad level physical platform 20 is in accordance with the format of the communication protocol of the bus 30. Therefore, the driver 150 and the wafer level converter 250 respectively convert the interrupt data packets from the interrupt proxy 130 and the interrupt converter 230 into a format conforming to the communication protocol of the bus bar 30, and transmit the same to the other platform through the bus bar 30. In addition, the wafer level converter 250 has a temporary storage unit that can store an interrupt data packet received from the processing level model virtual platform 10 or an interrupt data packet to be transmitted to the processing level model virtual platform 10. Specifically, the driver 150 can access the interrupt level data packet to the wafer level converter 250 through the bus bar 30.

藉由使用交互中斷,模擬系統100內的不同平台可被整合成同一系統,以便進行複雜的中斷密集(Interrupt intensive)軟體之開發,例如即時作業系統(Real time operating system,RTOS)。因此,可提高整體模擬的速度及精準度,進而加速系統單晶片的開發。By using interactive interrupts, different platforms within the simulation system 100 can be integrated into the same system for complex interrupt intensive software development, such as Real Time Operating System (RTOS). Therefore, the speed and accuracy of the overall simulation can be improved, thereby accelerating the development of the system single chip.

雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。Although the present invention has been disclosed in the above preferred embodiments, it is not intended to limit the invention, and any one of ordinary skill in the art can make some modifications and refinements without departing from the spirit and scope of the invention. Therefore, the scope of the invention is defined by the scope of the appended claims.

10...處理程序層級模型虛擬平台10. . . Handler level model virtual platform

100...模擬系統100. . . Analog system

110...指令集模擬器110. . . Instruction set simulator

120A-120C、220A-220C...矽智財單元120A-120C, 220A-220C. . .矽智财单位

130...中斷代理器130. . . Interrupt agent

140...向量中斷控制器140. . . Vector interrupt controller

150...驅動器150. . . driver

20...暫存器傳輸層級實體平台20. . . Scratchpad transport level entity platform

210...處理器210. . . processor

230...中斷轉換器230. . . Interrupt converter

240...向量中斷控制器240. . . Vector interrupt controller

250...晶片層級轉換器250. . . Wafer level converter

30...週邊組件互連匯流排30. . . Peripheral component interconnect bus

40...中斷配置封包40. . . Interrupt configuration packet

42、44、52、54、56、58、62...欄位42, 44, 52, 54, 56, 58, 62. . . Field

50...中斷種類封包50. . . Interrupt type packet

60...交互中斷封包60. . . Interrupt interrupt packet

CLK...時脈信號CLK. . . Clock signal

INT1、INT2...中斷INT1, INT2. . . Interrupt

P1、P2、Pn、P(n+1)、P(n+2)...中斷資料封包P1, P2, Pn, P(n+1), P(n+2). . . Interrupt data packet

以及as well as

SINT1 、SINT2 、SINT3 、SINT4 ...中斷信號S INT1 , S INT2 , S INT3 , S INT4 . . . Interrupt signal

第1圖係顯示根據本發明一實施例所述之系統單晶片之模擬系統;1 is a schematic diagram showing a system for simulating a system single chip according to an embodiment of the invention;

第2圖係顯示第1圖中根據本發明一實施例所述之交互中斷觸發路徑示意圖;2 is a schematic diagram showing an interaction interrupt trigger path according to an embodiment of the present invention in FIG. 1;

第3圖係顯示第1圖中根據本發明另一實施例所述之交互中斷觸發路徑示意圖;3 is a schematic diagram showing an interaction interrupt trigger path according to another embodiment of the present invention in FIG. 1;

第4圖係顯示根據本發明一實施例所述之中斷配置封包;Figure 4 is a diagram showing an interrupt configuration packet according to an embodiment of the invention;

第5圖係顯示根據本發明一實施例所述之中斷種類封包;Figure 5 is a diagram showing an interrupt type packet according to an embodiment of the present invention;

第6圖係顯示根據本發明一實施例所述之交互中斷封包;以及Figure 6 is a diagram showing an inter-interruption packet according to an embodiment of the invention;

第7圖係顯示根據本發明一實施例所述之轉換示意圖,其係描述由中斷代理器/中斷轉換器所執行之中斷信號與中斷資料封包之間的轉換。Figure 7 is a diagram showing a transition between an interrupt signal and an interrupt data packet executed by an interrupt agent/interrupt converter, in accordance with an embodiment of the present invention.

10...處理程序層級模型虛擬平台10. . . Handler level model virtual platform

100...模擬系統100. . . Analog system

110...指令集模擬器110. . . Instruction set simulator

120A-120C、220A-220C...矽智財單元120A-120C, 220A-220C. . .矽智财单位

130...中斷代理器130. . . Interrupt agent

140...向量中斷控制器140. . . Vector interrupt controller

150...驅動器150. . . driver

20...暫存器傳輸層級實體平台20. . . Scratchpad transport level entity platform

210...處理器210. . . processor

230...中斷轉換器230. . . Interrupt converter

240...向量中斷控制器240. . . Vector interrupt controller

250...晶片層級轉換器250. . . Wafer level converter

以及as well as

30...週邊組件互連匯流排30. . . Peripheral component interconnect bus

Claims (14)

一種系統單晶片之模擬系統,包括:一處理程序層級模型虛擬平台,包括:一虛擬處理器;一虛擬設計單元;以及一中斷代理器,用以將來自上述虛擬設計單元的一虛擬中斷信號轉換成一第一中斷資料封包;以及一暫存器傳輸層級實體平台,耦接於上述處理程序層級模型虛擬平台,包括:一實體設計單元;一中斷轉換器,用以根據上述第一中斷資料封包,產生對應於上述虛擬中斷信號之一第一中斷;以及一實體處理器,用以相應於上述第一中斷而執行一第一中斷程序,其中上述暫存器傳輸層級實體平台係設置於具有場可程式閘陣列之硬體開發板上,以及上述處理程序層級模型虛擬平台係由一特定作業系統所實施,其中上述虛擬設計單元以及上述實體設計單元分別為欲整合至同一系統單晶片之一軟體矽智財單元以及一硬體矽智財單元。 A system single chip simulation system comprising: a processing program level model virtual platform, comprising: a virtual processor; a virtual design unit; and an interrupt agent for converting a virtual interrupt signal from the virtual design unit Forming a first interrupt data packet; and a scratchpad transport level entity platform coupled to the processing program level model virtual platform, comprising: a physical design unit; and an interrupt converter for packaging according to the first interrupt data packet, Generating a first interrupt corresponding to one of the virtual interrupt signals; and a physical processor configured to execute a first interrupt program corresponding to the first interrupt, wherein the scratchpad transport level physical platform is set to have a field The hardware development board of the program gate array and the processing program level model virtual platform are implemented by a specific operation system, wherein the virtual design unit and the physical design unit are respectively a software body to be integrated into the same system single chip. The smart money unit and a hardware unit. 如申請專利範圍第1項所述之模擬系統,其中上述暫存器傳輸層級實體平台更包括:一向量中斷控制器,耦接於上述中斷轉換器以及上述實體處理器之間,用以控制上述第一中斷的優先級。 The analog system of claim 1, wherein the register transfer level physical platform further comprises: a vector interrupt controller coupled between the interrupt converter and the physical processor to control the above The priority of the first interrupt. 如申請專利範圍第1項所述之模擬系統,其中上述暫存器傳輸層級實體平台的上述中斷轉換器更將來自上述 實體設計單元的一實體中斷信號轉換成一第二中斷資料封包,並將上述第二中斷資料封包傳送至上述處理程序層級模型虛擬平台,使得上述處理程序層級模型虛擬平台的上述中斷代理器根據上述第二中斷資料封包產生對應於上述實體中斷信號之一第二中斷,以及上述虛擬處理器相應於上述第二中斷而執行一第二中斷程序。 The analog system of claim 1, wherein the interrupt converter of the above-mentioned register transfer level physical platform is further from the above Converting a physical interrupt signal of the physical design unit into a second interrupt data packet, and transmitting the second interrupt data packet to the processing program level model virtual platform, so that the interrupt agent of the processing program level model virtual platform is according to the foregoing The second interrupt data packet generates a second interrupt corresponding to one of the physical interrupt signals, and the virtual processor executes a second interrupt program corresponding to the second interrupt. 如申請專利範圍第3項所述之模擬系統,其中上述處理程序層級模型虛擬平台更包括:一向量中斷控制器,耦接於上述中斷代理器以及上述虛擬處理器之間,用以控制上述第二中斷的優先級。 The simulation system of claim 3, wherein the processing program level model virtual platform further comprises: a vector interrupt controller coupled between the interrupt agent and the virtual processor to control the foregoing The priority of the second interrupt. 如申請專利範圍第3項所述之模擬系統,其中上述暫存器傳輸層級實體平台更包括:一晶片層級轉換器,用以儲存上述第一中斷資料封包以及上述第二中斷資料封包,其中上述中斷轉換器係根據儲存在上述晶片層級轉換器之上述第一中斷資料封包來產生上述第一中斷。 The analog system of claim 3, wherein the register transfer level physical platform further comprises: a wafer level converter for storing the first interrupt data packet and the second interrupt data packet, wherein The interrupt converter generates the first interrupt based on the first interrupt data packet stored in the wafer level converter. 如申請專利範圍第5項所述之模擬系統,其中上述處理程序層級模型虛擬平台更包括:一驅動器,用以根據一特定通訊協定將來自上述中斷代理器之上述第一中斷資料封包儲存至上述晶片層級轉換器,以及根據上述特定通訊協定將儲存於上述晶片層級轉換器的上述第二中斷資料封包傳送至上述中斷代理器。 The simulation system of claim 5, wherein the processing program level model virtual platform further comprises: a driver for storing the first interrupt data packet from the interrupt agent to the foregoing according to a specific communication protocol And a chip level converter, and transmitting the second interrupt data packet stored in the chip level converter to the interrupt agent according to the specific communication protocol. 如申請專利範圍第1項所述之模擬系統,其中上述處理程序層級模型虛擬平台為一時序週期近似平台,而上述暫存器傳輸層級實體平台為一時序週期精確平台。 The simulation system of claim 1, wherein the processing program level model virtual platform is a timing cycle approximation platform, and the scratchpad transmission level physical platform is a timing cycle precision platform. 一種系統單晶片之模擬系統,包括:一暫存器傳輸層級實體平台,包括:一實體設計單元;以及一中斷轉換器,用以將來自上述實體設計單元的一實體中斷信號轉換成一中斷資料封包;以及一處理程序層級模型虛擬平台,耦接於上述暫存器傳輸層級實體平台,包括:一虛擬設計單元;一中斷代理器,用以根據上述中斷資料封包,產生對應於上述實體中斷信號之一中斷;以及一虛擬處理器,用以控制上述虛擬設計單元,並相應於上述中斷而執行一中斷程序,其中上述暫存器傳輸層級實體平台係設置於具有場可程式閘陣列之硬體開發板上,以及上述處理程序層級模型虛擬平台係由一特定作業系統所實施,其中上述虛擬設計單元以及上述實體設計單元分別為欲整合至同一系統單晶片之一軟體矽智財單元以及一硬體矽智財單元。 A system single chip simulation system includes: a scratchpad transmission level physical platform, comprising: a physical design unit; and an interrupt converter for converting a physical interrupt signal from the physical design unit into an interrupt data packet And a processing program level model virtual platform coupled to the temporary storage layer entity platform, comprising: a virtual design unit; and an interrupting agent, configured to generate, according to the interrupt data packet, a corresponding physical interrupt signal An interrupt; and a virtual processor for controlling the virtual design unit, and executing an interrupt program corresponding to the interrupt, wherein the scratchpad transport level physical platform is set in a hardware development with a field programmable gate array The board and the processing program level model virtual platform are implemented by a specific operating system, wherein the virtual design unit and the physical design unit are respectively a software entity and a hardware unit to be integrated into the same system single chip.矽智财单位. 如申請專利範圍第8項所述之模擬系統,其中上述處理程序層級模型虛擬平台更包括:一向量中斷控制器,耦接於上述中斷代理器以及上述虛擬處理器之間,用以控制上述中斷的優先級。 The simulation system of claim 8, wherein the processing program level model virtual platform further comprises: a vector interrupt controller coupled between the interrupt agent and the virtual processor to control the interrupt Priority. 如申請專利範圍第8項所述之模擬系統,其中上述處理程序層級模型虛擬平台為一時序週期近似平台,而上述暫存器傳輸層級實體平台為一時序週期精確平台。 For example, in the simulation system described in claim 8, wherein the processing program level model virtual platform is a timing cycle approximation platform, and the scratchpad transmission level physical platform is a timing cycle precision platform. 一種模擬方法,適用於結合一處理程序層級模型虛 擬平台以及一暫存器傳輸層級實體平台之系統單晶片之一模擬系統,上述模擬方法包括:於上述處理程序層級模型虛擬平台中,將來自一虛擬設計單元的一虛擬中斷信號轉換成一第一中斷資料封包;根據一特定通訊協定,將上述第一中斷資料封包從上述處理程序層級模型虛擬平台傳送至上述暫存器傳輸層級實體平台;於上述暫存器傳輸層級實體平台中,根據上述第一中斷資料封包產生對應於上述虛擬中斷信號之一第一中斷;以及於上述暫存器傳輸層級實體平台中,相應於上述第一中斷而執行一第一中斷程序,其中上述暫存器傳輸層級實體平台係設置於具有場可程式閘陣列之硬體開發板上,以及上述處理程序層級模型虛擬平台係由一特定作業系統所實施,其中上述虛擬設計單元以及上述實體設計單元分別為欲整合至同一系統單晶片之一軟體矽智財單元以及一硬體矽智財單元。 A simulation method suitable for combining a processing program hierarchy model The simulation platform and the one of the system single chip of the scratchpad transmission level physical platform, the simulation method comprises: converting a virtual interrupt signal from a virtual design unit into a first in the processing program level model virtual platform Interrupting the data packet; transmitting, according to a specific communication protocol, the first interrupt data packet from the processing program level model virtual platform to the temporary storage layer entity platform; and in the temporary storage layer entity platform, according to the foregoing An interrupt data packet generates a first interrupt corresponding to one of the virtual interrupt signals; and in the scratchpad transport level physical platform, a first interrupt program is executed corresponding to the first interrupt, wherein the scratchpad transport level The physical platform is disposed on a hardware development board having a field programmable gate array, and the processing program level model virtual platform is implemented by a specific operating system, wherein the virtual design unit and the physical design unit are respectively configured to be integrated One of the same system single chip software And a silicon intellectual property hardware unit. 如申請專利範圍第11項所述之模擬方法,更包括:於上述暫存器傳輸層級實體平台中,將來自一實體設計單元的一實體中斷信號轉換成一第二中斷資料封包,並儲存於一晶片層級轉換器;根據上述特定通訊協定,將儲存於上述晶片層級轉換器之上述第二中斷資料封包傳送至上述處理程序層級模型虛擬平台;於上述處理程序層級模型虛擬平台中,根據上述第二 中斷資料封包來產生對應於上述實體中斷信號之一第二中斷;以及於上述處理程序層級模型虛擬平台中,相應於上述第二中斷而執行一第二中斷程序。 The simulation method of claim 11, further comprising: converting a physical interrupt signal from a physical design unit into a second interrupt data packet in the scratchpad transport level entity platform, and storing the data in a a chip level converter; transmitting the second interrupt data packet stored in the chip level converter to the processing program level model virtual platform according to the specific communication protocol; in the processing program level model virtual platform, according to the second Interrupting the data packet to generate a second interrupt corresponding to one of the physical interrupt signals; and executing a second interrupt program corresponding to the second interrupt in the processing program level model virtual platform. 如申請專利範圍第12項所述之模擬方法,其中上述將上述第一中斷資料封包從上述處理程序層級模型虛擬平台傳送至上述暫存器傳輸層級實體平台的步驟更包括:將上述第一中斷資料封包儲存於上述暫存器傳輸層級實體平台之上述晶片層級轉換器,其中上述第一中斷係根據儲存在上述晶片層級轉換器之上述第一中斷資料封包所產生。 The method of claim 12, wherein the step of transmitting the first interrupt data packet from the processing program level model virtual platform to the temporary storage layer entity platform further comprises: The data packet is stored in the chip level converter of the scratchpad transport level physical platform, wherein the first interrupt is generated according to the first interrupt data packet stored in the chip level converter. 一種模擬方法,適用於結合一處理程序層級模型虛擬平台以及一暫存器傳輸層級實體平台之系統單晶片之一模擬系統,上述模擬方法包括:於上述暫存器傳輸層級實體平台中,將來自一實體設計單元的一實體中斷信號轉換成一中斷資料封包;根據一特定通訊協定,將上述中斷資料封包傳送至上述處理程序層級模型虛擬平台;於上述處理程序層級模型虛擬平台中,根據上述中斷資料封包來產生對應於上述實體中斷信號之一中斷;以及於上述處理程序層級模型虛擬平台中,相應於上述中斷而執行一中斷程序,其中上述暫存器傳輸層級實體平台係設置於具有場可程式閘陣列之硬體開發板上,以及上述處理程序層級模型虛擬平台係由一特定作業系統所實施,其中上述處理程序 層級模型虛擬平台之一虛擬設計單元以及上述暫存器傳輸層級實體平台之上述實體設計單元分別為欲整合至同一系統單晶片之一軟體矽智財單元以及一硬體矽智財單元。An analog method, which is suitable for combining a processing program level model virtual platform and a system single chip simulation system of a scratchpad transmission level physical platform, wherein the simulation method comprises: in the above-mentioned scratchpad transmission level entity platform, Converting a physical interrupt signal of an entity design unit into an interrupt data packet; transmitting the interrupt data packet to the processing program level model virtual platform according to a specific communication protocol; and in the processing program level model virtual platform, according to the interrupt data Encapsulating to generate an interrupt corresponding to one of the physical interrupt signals; and executing, in the processing program level model virtual platform, an interrupt program corresponding to the interrupt, wherein the scratchpad transport level entity platform is set to have a field programmable The hardware development board of the gate array, and the processing program level model virtual platform are implemented by a specific operating system, wherein the processing program The virtual design unit of the hierarchical model virtual platform and the above-mentioned physical design unit of the above-mentioned scratchpad transport level physical platform are respectively a software entity and a hardware unit to be integrated into the same system single chip.
TW100114396A 2011-04-26 2011-04-26 Simulation system and method for soc TWI463331B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW100114396A TWI463331B (en) 2011-04-26 2011-04-26 Simulation system and method for soc

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW100114396A TWI463331B (en) 2011-04-26 2011-04-26 Simulation system and method for soc

Publications (2)

Publication Number Publication Date
TW201243620A TW201243620A (en) 2012-11-01
TWI463331B true TWI463331B (en) 2014-12-01

Family

ID=48093888

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100114396A TWI463331B (en) 2011-04-26 2011-04-26 Simulation system and method for soc

Country Status (1)

Country Link
TW (1) TWI463331B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI560565B (en) 2015-11-30 2016-12-01 Ind Tech Res Inst Thermal simulation device and method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050080965A1 (en) * 2003-09-30 2005-04-14 Bennett Steven M. Mechanism to control hardware interrupt acknowledgement in a virtual machine system
US20050165597A1 (en) * 2004-01-27 2005-07-28 Arm Limited Apparatus and method for performing hardware and software co-verification testing
TW200917127A (en) * 2007-10-04 2009-04-16 Nat Univ Chung Cheng Structure having virtual input/output for embedded software and hardware integrated development
US20090150136A1 (en) * 2005-10-10 2009-06-11 Sei Yang Yang Dynamic-based verification apparatus for verification from electronic system level to gate level, and verification method using the same
TW201027378A (en) * 2009-01-08 2010-07-16 Realtek Semiconductor Corp Virtual platform and related simulation method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050080965A1 (en) * 2003-09-30 2005-04-14 Bennett Steven M. Mechanism to control hardware interrupt acknowledgement in a virtual machine system
US20050165597A1 (en) * 2004-01-27 2005-07-28 Arm Limited Apparatus and method for performing hardware and software co-verification testing
US20090150136A1 (en) * 2005-10-10 2009-06-11 Sei Yang Yang Dynamic-based verification apparatus for verification from electronic system level to gate level, and verification method using the same
TW200917127A (en) * 2007-10-04 2009-04-16 Nat Univ Chung Cheng Structure having virtual input/output for embedded software and hardware integrated development
TW201027378A (en) * 2009-01-08 2010-07-16 Realtek Semiconductor Corp Virtual platform and related simulation method

Also Published As

Publication number Publication date
TW201243620A (en) 2012-11-01

Similar Documents

Publication Publication Date Title
Farshchi et al. Integrating NVIDIA deep learning accelerator (NVDLA) with RISC-V SoC on FireSim
Mehta ASIC/SoC functional design verification
US20110307847A1 (en) Hybrid system combining TLM simulators and HW accelerators
Ogawa et al. A practical approach for bus architecture optimization at transaction level
CN103927219A (en) Accurate-period simulation model for reconfigurable special processor core and hardware architecture thereof
CN102339343A (en) Method for generating system model and method for transmitting data in system model
CN112753034B (en) Hardware simulation method of hardware simulation for system control block and control circuit design
US12112202B2 (en) Framework for application driven exploration and optimization of hardware engines
Huang et al. Centrifuge: Evaluating full-system HLS-generated heterogenous-accelerator SoCs using FPGA-acceleration
Nagarajan The design and verification of a synchronous first-in first-out (fifo) module using system verilog based universal verification methodology (uvm)
Darringer et al. Early analysis tools for system-on-a-chip design
CN108804380A (en) The cascade Cycle accurate model of vector calculus hardware accelerator multinuclear
Diamantopoulos et al. Plug&chip: A framework for supporting rapid prototyping of 3d hybrid virtual socs
TWI463331B (en) Simulation system and method for soc
Bhatt et al. RTL to GDS Implementation and Verification of UART using UVM and OpenROAD
CN118734753A (en) Dynamic Control of Circuit Design Simulation
Jain et al. Accelerating SystemVerilog UVM Based VIP to Improve Methodology for Verification of Image Signal Processing Designs Using HW Emulator
Yoo et al. Hardware/software cosimulation from interface perspective
Van Moll et al. Fast and accurate protocol specific bus modeling using TLM 2.0
Wicaksana et al. Hybrid prototyping methodology for rapid system validation in HW/SW co-design
Zhou et al. The design of UVM verification platform based on data comparison
Wang et al. System-level development and verification framework for high-performance system accelerator
US11373024B1 (en) Circuit simulation based on a high-level language circuit specification
Herbst et al. Switchboard: An Open-Source Framework for Modular Simulation of Large Hardware Systems
WO2021128781A1 (en) Processor technology-based verification method for assisting fpga to implement ai algorithm

Legal Events

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