TW200951750A - Simulation apparatus, simulation method and computer-readable recording medium on or in which simulation program is recorded - Google Patents
Simulation apparatus, simulation method and computer-readable recording medium on or in which simulation program is recorded Download PDFInfo
- Publication number
- TW200951750A TW200951750A TW098106420A TW98106420A TW200951750A TW 200951750 A TW200951750 A TW 200951750A TW 098106420 A TW098106420 A TW 098106420A TW 98106420 A TW98106420 A TW 98106420A TW 200951750 A TW200951750 A TW 200951750A
- Authority
- TW
- Taiwan
- Prior art keywords
- basic processing
- simulation
- execution
- software
- execution record
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/40—Data acquisition and logging
Description
200951750 六、發明說明: 【發明戶斤屬之技術領域3 發明領域 在此所討論的多個實施例是有關於一種執行需藉由軟 體及硬體來實施的一系統的效能評估模擬之技術。 發明背景 近年來,需與一電子設備一起使用的一半導體裝置, ® 諸如例如一大型積體電路(LSI)被大規模整合,且習知地被 單獨用作個別元件的一處理器、一匯流排、一記憶體等可 被合併在單晶片上。 大體上,整合到單晶片上的目的在於小型化、低成本 及減小電力消耗。如以上所描述的這樣一種半導體裝置被 ' 稱為系統LSI或系統單晶片(SoC)。 然而,增加要併入如以上所描述的這樣一種半導體裝 ©置(以下有時稱為LSI或系統LSI)中之功能引起缺點,即增加 了設計的困難。大部分困難源於如下事實:由於整合到單 晶片上,一經確定的硬體架構之後不能輕易改變。 特別地,為了迫使小型化及低成本,需要減小系統LSI 的處理負載,且減小設計上的餘裕,且在設計的第一階段 的效能驗證技術對於解決以上所描述的問題是重要的。 在關於一系統具有的功能是否需藉由硬體或軟體來實 施之臨時決定被執行之後,對系統LSI等的效能驗證被執 200951750 大體上,軟體係用c語言、組合語言或某一其他語言來 描述’且對軟體的操作可藉由在包括一目標處理器或用於 一目標處理器的一指令集模擬器(ISS)之一實際裝置模型上 執行來模擬。 而且’關於硬體的操作,模擬可藉由利用暫存器轉移 層次(RTL)、交易層級模型或RTL及TLM兩者之描 述來執行。要注意,代表性的RTL是Verilog-HDL,且代表 性的TLM是系統C(System C)。 以此方式,藉由模擬包括軟體及硬體兩者的整個系 統,可執行對諸如處理器負載比之效能的評估。 要注思,還有一種技術是習知地可用的,其中,模擬 被執行以便建立軟體(應用程式)(例如,參見日本專利早期 公開號第2002-215423號及曰本專利早期公開號第 2006-59108號)。 用於半導體裝置的一習知的效能評估模擬裝置之範例 被顯示在第14圖中。在習知的模擬裝置1〇〇中,一中央處理 單元(cpu)ioi、一I-快取記憶體(指令快取記憶體)1〇2、一 D-快取記憶體(資料快取記憶體)1〇3、—匯流排1〇4、一外部 RAM(隨機存取記憶體)105及周邊Hw(硬體)1〇6係藉由一硬 體模型來實施。 要注意,該CPU 101包括用以執行軟體的—Iss 11〇、 用以執行對外部存取的-存取處理部分lu、及用以總計統 s十資訊120作為模擬結果的一資料總計部分112。 然而,該習知的模擬裝置1〇〇執行實際上需併入該處理 200951750 器中且基於如以上在該ISS 110上所描述的規格121的軟體 122。因此,為了以高準確度執行驗證,要求該軟體Η〗的 足夠完整度,且在設計的早期階段不能執行最佳化的檢 驗,即效能評估模擬。 而且,在執行模擬的地方,存在如下問題:該ISS 100 佔用了模擬的較大部分,且執行時間變得非常長。 因此,習知地,一種技術是可用的,其中,需執行於 _ 一處理器上的軟體利用一 UML分析被模型化以產生軟體以 便允許在設計的早期階段之驗證。而且,習知地,另一技 術是可用的,其中,一功能模型及軟體產生自所要求的規 格或一概念模型(參見例如日本專利早期公開號第 2〇〇1_318812號及日本專利早期公開號第2007-310449號,以 下刀別稱為專利文件3及4) 〇 然而,因為專利文件3及4中所揭露的該等技術包含來 自所要求規格的-文件的—應用程式之模型化,所以在產 φ ^軟體之前’需要相當數目的卫時,且需要許多時間。 而且,因為疏遠了實際上需併人的軟體,或換句話說, -效能驗證環境的準確度在專利文件3及4中所揭露的該等 技術中是未知的,所以所產生的軟體是否可靠是未知的。 【發明内容】 發明概要 本發明的-目的在於用一些工時及高準確度實施需藉 由軟體或硬體來實施的一系統的效能評估模擬。 要注意’除了以上所描述的目的,用以實現由以下所 5 200951750 描述的本發明之多個實施例的組合所提供(而不是由習知 的技術所提供)的該等效果也將被理料本發日㈣—目的。 根據本發明之一層面,提供有一種模擬裝置及一種模 擬二丄其中’ 一第一獲取部分執行現存試驗性軟體以獲 為行記錄劃分 八錢^70 °接著’―基本處理執行記錄產生部 ==個基本處理單元中的某,產生需用於模 本處=執行記錄。接著,—模擬執行部分將該基 效能評;::至用以執行模擬的-硬體模型以獲取 根據本發明之另-層面,提供有—種其上⑬ 之記錄媒體’用以致使—電腦作為:上所描 遂的第—獲取部分、劃分部分、基本處理執行 分及模擬執行部分發揮作用。 〜 °ρ 結合該等附圖(其中,相同的部分或元件係 下面的描述及該等後附中請專利範圍: =::〜、特徵—。 第1圖疋顯示作為一實施例的模擬裝i 組態的方塊圖; 、擬裝置之本質部分的 第圖疋S兒明作為該實施例的模拇梦里 分的-程序的視圖; 、、之旗標處理部 、第3圖是說明由作為該實施例的模擬裝置的第 部分所獲取的執行記錄的範例的視圖; 200951750 第4圖是說明由作為該實施例的模擬裝置的基本處理 執行記錄產生部分之簡單軟賴餘生部分所產生的物件 序列的範例的視圖; 第5圖是說明與第4圖中所說明的物料列的一部分相 對應的簡單序列圖的範例的視圖; 第6圖是顯示由作為該實施例的模擬裝置的基本處理 _
執行記錄產生部分之簡單軟賴型產生部分職生的簡單 軟體模型的視圖; 第7圖是顯示由作為該實施例的模擬裝置的模擬執行 P刀所實%的模擬目標的組態的範例的方塊圖; 第8圖是說明藉由該實施例之模擬裝置的模擬執行部 分在模擬中執行週期事件的範例的圖解; 第9圖是說明作為該實施例的模擬方法的一處理程序 的流程圖; ,第10圖是說明作為該實施例的模擬裝置的基本處理聋 行記錄產生部分的簡單軟體模型產生部分的操作程序直 例的流程圖; 第11A及11B圖是說明作為該實施例的模擬裝置的美 本,執行記錄產生部分之簡單軟體模型產生部分之處: 的二例的視圖,且其t,第11A®說明在該簡單軟體模型產 生。卩分執行處理之前的一基本處理,及第11B圖在用以產生 :抽象模型之處理在第11A圖中所顯示的基本處理中被執 仃之後執行一基本處理; 第12圖是說明作為一第一修改的模擬方法的處理程序 7 200951750 的流程圖, 第13圖是說明作為—第二修改的模擬方法的處理程序 的流程圖;及 处理程序 第14圖是顯示用於半導體裝置之習知的 裝置的組態的範例的方塊圖。 汴估杈擬 【實施方式j 較佳實施例之詳細說明 參考附圖,下面將描述本發明的多個實施例。 [1]本發明之實施例 百考幻圖中所顯示的方塊圖,將描述作為本發 明之-實_的—效能評估模擬裝置( 置)1的組態。 π个係做戒 本模擬裝置1被用以評估要被併入諸如例如一⑶之半 導體裝置中的硬體(例如CPU)之效能。根據執行記錄本模 擬裝置1之模擬被執行’其中’該執行記錄是在沒有使_ 的情況下由執行軟體所獲得的執行歷程。 特别地纟模擬裝置1係有關於軟體之模型化及用 以評 估硬體放二之硬體’且提供軟體之模型化,其中,過去的 於體又十貝產可被實際地使用’使得-目標CPU的架構驗 可、'見金刀析可在不需ISS的情況下被執行所用的一 抽象度來執行。 其中孩執行記錄(執行指令序列)是當軟體由用於一目 ^CPU的1ss等來執行時實際上所執行㈣令歷程。 i 1包括_ sw(軟體)/Hw(硬體)劃分部分2、一 200951750 劃分部分5、一函數 旗標處理部分3、一第一獲取部分4、— 己錄產生部分10及一模擬 模組產生部分6、一基本處理執行言 執行部分20。 根據為模擬目標的-系統之規格,該讀題劃分部分 2將依據料規格所確定的-處理劃分為—軟體處理及另 —硬體處理。
賴標處理部分3將-原始石馬的分支行及/或一旗標嵌 入恰在-函數行前面或後面的該試驗性軟體的—位置該 原始碼的分支行《賴表示用以呼叫現存試驗性軟體中 預先所纽的且被肖以產纽下藉_基核理執行記錄 產生部分H)所描述的-基本處理執行記錄之__物件的函數 行。 例如,在該試驗性軟體以如第2圖中所說明的這樣一種 方式被組配的地方,該旗標處理部分3將用以對一預定位址 執行讀取的一旗標嵌入恰在一“if,陳述及一“else,,陳述的後 面的一位置,該“if’陳述及該“else”陳述表示一原始碼的一 77支行。該旗標處理部分3在此插入用以讀取“addrl + offset”的“DT_READ (addrl,offset,data)”、用以讀取“addr2 + offset”的“DT—READ (addr2,offset,data)”、及用以讀取“addr4 + offset”的“DT_READ (狂(1(^4,(^361;,(!31&)”作為旗標。 而且,該旗標處理部分3在此將用以讀取“addr3 + offset” 的 “DT_READ (addr3,offset,data)”作為一旗標插入恰 在用以呼叫諸如“ex_testO(num);”之一物件的一函數行前面 的一位置。 9 200951750 藉 由以此方式藉由該旗枵 指定位址的讀取可被獲取,卩分3插入該旗標,對-執行該試驗性軟體所獲得的—執:由在實際機器或-ISS上 著,根據賴標資訊,可執 行錄巾的旗標資訊。接 描述的物件的旗標之間的第6圖中所說明的及以下所 原始碼之自_取。因此二件轉移圖(物件序列圖)及一 產生部分丨!可產生簡單軟/下所描述的—簡單軟體模型
‘二意=财理部分3例如根據該試驗性軟體中的 自動才曰疋一分支行,且自動嵌入-旗標。而且, 該旗標處理部分3自動指定基於規則(例如用於-函數的命 名方法)的-預定函數,其中,用以呼叫—物件的函數在第 2圖的範例中具有基於“ex”的某一規則。科,該旗標處理 部分3自動將該旗標嵌入恰在該指定函數的前面或後面的 一位置
該第一獲取部分4執行在實際機器或一ISS上預先產生 的用於轉向的試驗性軟體以獲取該試驗性軟體的一執行記 錄(第一執行記錄)。 這裏,要被該第一獲取部分4獲取的一執行記錄的範例 被說明於第3圖中。 第3圖中的該執行記錄之資訊對於每一處理主要包括 作為執行時間資訊的一時間戳記(第3圖中之“time”)、指令/ 資料存取之名稱(第3圖中之“type”)、在資料存取情況下的 讀取/寫入之名稱、在一指令的情況下的一物件(“Object (¥#line),,;物件檔案)、及一位址。要注意,如果該物件被 10 200951750 ^到,則可朗㈣處_行什麼原始權宰。 而且’該第1取部分4還獲取該1 間的呼叫函數的執行資訊(原_ 處理的實際物件之 生以下所描述的-簡單軟體模型。包括::的數目)以便產 普通整合式開數具有由作為除錯域真器及-Iss的 4所獲取的資訊。 孩第一獲取部分
要注意,因為在試驗性軟體是通 下,指令位址申及資料存取串的數目(其表二軟體的情況 理量)還可藉由改變轉移率來變化,所以必 器上的模擬條件。 w &目標處理 該劃刀部分5將由該第一獲取部分 劃分《録核理單元。^執行記錄 =軟體模型來執行的一處理的一執行單元。特別地疋: 土本處理單元被說明於第6圖中,如以下所描述。 為Ή如在一多媒體處理或一通訊處理之鹿 =,—處理在大多數情況下被重複執行,二 =5自-週期處輯—龍找出⑽躲務開始點且根 ^找出的任務開始點,在—任務的—單元中執行劃分。 ^,該劃分部分5自一指令位址行監控物件樓案之間的- 處理之一>;ώ "L ,且找到一任務的定界符,且接著執行劃分。 這襄該劃分部分5產生如第4圖中所說明的一物件序 擷取週期處理的一型樣,使得該執行記錄被劃分 為多個基本處理單元。 第5圖是說明第4圖中所說明的該物件序列表的範例的 11 200951750 視圖。在第5圖中,“χχχ 〇”、“yyy 〇”及“zzz 〇,,分別表示一 物件。 如在第5圖中所看到的,每一基本處理單元Fn[1]被擷 取’作為自物件檔案之間之存取的開始點至結尾點的間隔。 根據由該劃分部分5所劃分的該等基本處理單元,該函 數模組產生部分6產生需用於需由該模擬執行部分20來執 行的模擬的一函數模組。參考以下所描述的第7圖,將描述 該函數模組的細節。 該基本處理執行記錄產生部分10修改該等多個基本處 © 理單元中的某一個以產生需用於模擬的基本處理執行記 錄。 特別地,該基本處理執行記錄產生部分1〇包括簡單軟 體模型產生部分11、―第二獲取部分12及—合成部分13。 - 該簡單軟體模黯生部分i_來自猶者的指令自 - 由該劃分部分5所獲得的該等多個基本處理單元中摘取為 修改目“的一基本處理單元(改變目標基本處理單元),且 根據賴轉改目縣核理單元,產㈣簡單健難。 © 特別地’該簡單軟體模型產生部分㈣該試驗性軟體 擷取與需遭修改的—處理相對應的—基本處理單元(修改 目標基本處理單元),且修改所練基本處理單元以產生血 需應用^目標CPU的新軟體相對應的—基本處理單元。、 簡單軟體的組態(簡單軟體模型)lla被說明於第6圖 中-玄簡單軟體模型lla大約由一使用者模型Ub及—即時 OS(RTOS)llc來組配。該使用者模型⑽由一資料處理部分 12 200951750 lld及諸如在資料處理期間需藉由—系料叫而被呼叫的 -初始化序列及一處理序列之—控制部分Ue來組配,其 中’該資料處科分丨刚叫行㈣—料_所開始的 -資料結構的接續、重複及選擇處理,且包括對一ram的 資料存取。 該簡單軟體私型產生部分u擷取且修改與該使用者模 型lib相對應的—部分作為—修改目標。 Ο 鲁 要主意’參考第10圖的流程圖,以下將描述該簡單軟 體模型產生部分Η之更詳細的操作内容。 該第二獲取部分12執行由在-實際機器或-ISS上的 該間早軟體模鼓生部如所產㈣關料龍型lla 以獲取-執行記錄(試驗性執行記錄),其為該 11a的執行歷程。 該合成部分13合成來自藉由該劃分部分5所劃分的該 等夕個基本纽單元巾之除了該等修改目標基本處理單元 2的基本處理單元賴試驗性執行記錄以產生-基本處 理執行έ己錄。 利用由該基本處理執行記錄產生部W崎產生的該基 理執仃記錄,該輯執行部分2()執行難以獲取用於 Μ目標CPU的效能評估的統計資訊。 特別地,賴擬執行部分瓣該基本處理執行記錄輸 計資訊)、執行模擬的硬體以獲取效能評估所需的資訊(統 參考第7圖,將描述需由該模擬部分20來實施的效能評 13 200951750 估模擬的目標(硬體模型)。 特別地,CPU 21、一I-快取記憶體(指令快取記憶 體)3〇、一D-快取記憶體(資料快取記憶體別、匯流排32、 外部RAM 33及周邊硬體(硬體;在第7圖中表示為“周邊 HW’’)34所有這些都是效能評估模擬的目標。 +該CPU 21是-目標處理器,其是效能評估的一目標。 藉由田軟體在該CPU 21上被執行時檢查硬體效能,該cpu 21的效能驗證可被執行。 '•玄CPU 21係由自該基本處理單元所組配的函數模組 書 至22 n(這裏,n代表3或3以上的一整數)、一排程器部 分23及-麵纽部分μ綠配。該等函數模組22_m_n (二下稱為函數模組22 ’其中該等函數模組仏丄至心彼此 /又有區分)接收基本處理執行記錄25的—輸入,其是自該執 订記錄所麻的-基本纽單元的__記錄分析㈣。 該等函數模組22作為一基本處理單元在cpu 21中單獨 發揮作用’該基本處理單元是需執行於根據該執行記錄由 該存取處理部分24賴分㈣軟贿型上的—處理的―冑 〇 際單元。 特別地,所輸入的基本處理執行記錄屬於該等函數模 卫22中的-個,且在多個記錄屬於—函數方塊之執行以 後,一基本處理執行記錄被選定。 該排程器部分23讀取事件控制資訊26,且根據該事件 1 > Λ向相對應的函數模組22請求程序處理。 該事件控制資訊26係自該第一獲取部分4所獲取的該 14 200951750 執行記錄來獲得,且被形成於包括代表一特定事件在 定時間發生之__參數的__樓案。 ’根據該事件控制資訊26,該排㈣部分23將該 土本处理執行記錄輸入至該相對應的函數模組22。 特別地,根據概行記錄中的該事件控财訊,該模 仃部分2〇將該基本處理執行記錄輸入至該硬體模組。 接著’自藉㈣存取處理部分24所執行的模擬處理, ^程為部分23產生需用於效能評估的統計資訊π。
=如’該排程H部分23獲取且產生作為用於每一基本 =理早兀’即用於每-函數模組22的該統計f似的指令 fi(ns)、指令提取時間(ns)、f料存取時間㈣及一 址^载因數(%)。特別地,因為該執行記錄具有-指令位 =於資料存取的-位址串,所以該模擬執行糊 =該“快取記憶體及該資料快取記憶體可執行匯流排 :且因此,指令執行時間、指令提取時間、資料存取 時間等可被監控以產生該cpu負載因數之統計資料等。 根據來自該函數模組22之一指令提取或資料存 ^該存取處理·24執行對.丨緣錢㈣ 憶體31的存取。 的取0己 RAM'f °亥1_快取'己憶體3〇是用以縮短存在於該外部 Ram 33上的一指令的猶%。士 餘時間的一指令快取記憶體。而 ^。己隐體31,與該L快取記憶體30相似,是用以 3 r貧料子取時間的—資料快取記憶體。該 Μ不同嫌·快取記憶㈣,因為它不僅糊於讀取隱= 15 200951750 且準備用於寫入。 該I-快取記憶體30及該D-快取記憶體31被連接到該匯 流排32。在本實施例中,該外部RAM 33及該周邊HW 34也 被連接到該匯流排32。要注意,該外部RAM 33透過該匯流 排32被連接到該cpu 21的外部。該周邊HW 34是一外部 I/F ’用於一特定應用程式等的專用硬體。 該模擬執行部分20例如利用系統c語言,以一交易層級 建構除了該基本處理執行記錄的輸入以外的一部分。
這裏,該CPU 21(CPU模型)藉由該模擬執行部分2〇在 模擬中週期性地執行-事件的方式被說明於第8圖中。 對每-事件的程序處理係由多個基本處理來組配。例 如’如果-週期事件A根據作為—參數的預総用的一頻率 出現,則根據該週期事件A的出現,該cpu 21中的該排程 器部分23呼叫該函數模組22_2連_函數模組⑸。
該等遭呼叫函數模組22]及22_2單獨地執行一相對應 的基本處理的執行記錄。藉由所要求的規格等…優先次 序被預先應祕事件及基核理,觀該等事件或該等基 本處理之間的時間碰撞被避免。在第8圖中的範例中該排 程器部分23執行控制,使得該事件A與後續事件 碰撞。 白工仍 一紙伏組“个1重钒行用以收集效能言f 需的諸如指令提取、記憶體存取指令日㈣;肖耗等之辦 ,資料之-般處理,而且根據硬體的完整度, 每一模組為唯一的一函數之描述。 16 200951750 接著’參考第9圖的一流程圖(步驟Si至si7、S8,、 S10 )’將描述本模擬裝置丨的一操作程序之概要’即作為本 發明之實施例的一模擬方法。 首先’本模擬裝置1接收與硬體(以下稱為目標CPU)及 軟體有關的一系統的所要求規格的一輸入,該硬體為一效 能評估目標’該軟體需被併入該目標CPU中(步驟S1)。要注 意’雖然用以驗證函數的一函數模型有時被產生,但是產 生一函數模型之描述在此被省略。 接著,該SW/HW劃分部分2將根據所要求規格所產生 的一處理 劃分為用於軟體的一處理及用於硬體的另一處理(一 軟體模型及一硬體模型)(步驟S2)。 這裏,該模擬執行部分20產生與硬體有關的一操作模 型(步驟S3)。要注意,該操作模型係由描述來產生,該描述 包括RTL、具有高的抽象度的TLM、或該RTL及TLM兩者。 另一方面,作為能夠產生用於效能評估的一充足負載 的試驗性軟體的過去所產生的現存軟體(過去的軟體)被用 作該實施例中的軟體(步驟S4)。特別地,一現存模型的一原 始碼(其為一轉甸設計源)被利用。這裏,將描述利用一即時 OS(RTOS)的一實例。 接著,該旗標處理部分3將一旗標嵌入該試驗性軟體, 如以上參考第2圖所描述(步驟S5 ;旗標處理步驟)。 接著,該第一獲取部分4編譯該試驗性軟體作為用於一 目標處理器的軟體’且產生一執行二進制數。一實際機器 17 200951750 八的-脱或透過—仿真器的—計算器及包括用以獲取指 :的執打歷程(執行記錄)的一⑽的―計算器被用作實際上 軟體的—軟體執行環境,藉此,該執行記錄被獲取(步 驟S6及S7;第—獲取步驟)。 ^ 行記錄劃分為基本處 接著,該劃分部分4將所獲取的執 理單元(步驟S8 ;劃分步驟)。
要注意,連同該等基本處理單元之掏取,該函數模組 產生部分6在硬體中產生―相對應的函數模組(步驟S8> 接著,關於劃分為該等基本處理單元的該執行記錄, =基本處理執行記錄產生部分_該簡單軟體模型產生部 ^11自該試驗性軟體的現存函數選擇需遭修改的一處理部 分(步驟S9),且關於修改部分,產生該簡單軟體模型步 驟S9之是(yes)路線)(步驟sl〇)。 這襄,該簡單軟體模型lla是如下一模型,其中,需以 要求規格遭描述的函數如它們—樣被併人之抽象程度被描 述’且特別地,該簡單軟體模型lla是如下-翻,其中,
諸如用於錯誤檢測的—分支處理、内部狀態轉移、内部變 數保持等之處理被省略。 。。參考第10圖,以下將描述用以自該執行記錄產生該簡 單軟體模型lla的一詳細程序。 片要注意,此時,該函數模組產生部分6當有必要與由該 簡單軟體模型產生部糾所產生的簡單軟體模型相符時, 執行對該硬體的函數模組之校正(步驟sl〇,)。 接著,該第二獲取部分12編譯所產生的簡單軟體模型 18 200951750 作為該目標處理器的一模型(步驟su),且產生一執行二進 制數(步驟2)。之後,該第二獲取部分12在用於該目财 理器的ISS上執行該執行二進制數(步驟S13),且獲取實際上 遭執行指令的-執行難(試純執行靖)(步驟S1句。 接著,該合成部分13合成在步驟S9未被選作修改部分 的一現存部分的基核輯元上的減行記錄與該試驗性 執行記錄(步職5),且產生該基本處理執料錄( S16)。 最後,利用該基本處理執行記錄及該操作模型,該模 擬執行部分20執行對該目標CPU 21的效能評估模擬(=驟 S17 ;模擬執行步驟),且接著,該處理結束。這裏,該模 擬執行部⑽將《核理以的減行記_為輸二應 用到該操作模型連同參數設定,諸如執行魏評估模擬: —頻率。 參考第10圖的流程圖(步驟S20至S33),現在將描述該 簡單軟體模型產生部分11之更詳細的操作程序(―簡單軟 體模型的流程)。 該簡單軟體模型產生部分U自藉由由該劃分部分根據 第3至5圖中所說明的程序劃分該試驗性軟體之執行記錄所 獲得的該等多個基本處理單元中擷取且獲取最近需遭修改 的—處理部分(步驟S2〇)。 接著,該簡單軟體模型產生部分11自該執行記錄只操 取除了該資料存取以外的一指令處理行以產生資料(步驟 S21)。而且,根據預先添加的物件資訊,該簡單軟體模型 19 200951750 產生部分11產生第4圖中所顯示的 或者,該簡單軟體模型產生部八序列表(步驟S22)。 位址串添加物件資訊來產生—物件11還可藉由自-指4 接著,根據一物件序列及一 ^ ° “time”),該簡單軟體模型產生部a、己(第4圖中的 在每-物件的處理時間期/該執仃5己錄摘取需 S23)。 钒仃的一呼叫函數(步驟 <-1 夂
型產生部分⑽㈣取函單#軟= 或該腦llb分類(步軸)。特別地,該簡單軟體觀 生部分11參考每—呼叫函數所躲的物件以判定該函數男 否有關於該使用者模型11a或該RT〇s Ub。 關於與該RTOS llb有關的函數,該簡單軟體模型產与 部分U娜在辦叫函料理的前面錢面的物件(步塌 S25),且計算該等已擷取物件的雜產生比(步驟s2〇。
因為所描述的處理與該使用者模型Ua相似,被包括方 該執行記錄中,所以參考現存部分,在相似部分處的記隹 被互相連接。特別地,該簡單軟體模型產生部分U根據該 基本處理的該執行處理的時間戳記,操取在該呼叫函數處 理的前面及後面的RTOS物件,且計算來自由該第一獲取部 分4所獲取的該執行記錄的一物件型樣的產生頻率,且接 著,應用用以決定每一物件的產生比的一係數以產生該型 樣產生比。 要注意,該型樣產生比被用作該事件控制資訊26的一 20 200951750 部分,用以控制該排程器部分23。 另一方面,關於該使用者模型lib,該簡單軟體模沒產 生部分11根據第4圖的該物件序列的相關性以及該呼叫函 數之執行資訊,自現存試驗性軟體的原始碼(其為關於該使 用者模型lib的該資料處理部分lld及該控制部分Ue的一 轉向源)擷取必要描述以產生一函數層級的一抽象化模变 (步驟S27及S28)。 ❹
這裏,必要描述是該呼叫函數及該呼叫函數被讀取於 其中的一行的前面及後面的部分之處理及_分支的一流程 的補充(步驟S27),且用於異常檢測的一“if,陳述及一内部 狀態轉移處理被忽略。 例如’該簡單軟體模型產生部分U執行在第4圖中所顯 示的該物件序列表中恰在時間戳記“3〇53〇”之函數“#1〇〇” 之後及恰在時間戳記“30539”之函數“#398”之前的部分的 補充。而且,該簡單軟體模型產生部分u執行恰在時=戳 記“30557”之函數“#406”之後及恰在時間戳記“3〇572”之函 數“#174”之前的部分的補充。 而且,該簡單軟體模型產生部分U將用以控制該切斷 基本處理的開始及結尾的一 “main”函數添加至根據以上所 描述的程序所產生的抽象化模型的原㈣(步驟啊。例 如,該簡單軟體模黯生时时第丨⑽巾所說明的該基 本處理1及2中的函數“π 與“f2.o”之間禾 土 』艰加一“main”函數 “main.o”,如第11B圖中所看到的。因此,該等基本處理η 被用作一抽象化模型llf,其獨立操作而 处可 禹要用一周邊處 21 200951750 理層執行資料合作。 以此方式,該簡單軟體模型產生部分u自該 的該物件序列產生該簡單軟體模的該資料處理 1 Id 〇 要注意,該簡單軟體模型產生部分π不僅設定以上所 描述的該基本處理之呼叫,還有在一物件中需遭呼叫的 RAM存取的—位址及㈣,及要被併人除了妓本處理以 外的了物件中的-變數作為該“main”函數中的初始值。因 此’藉由自藉由編譯該基本程序所擷取該執行記錄移除該 ❹ 物件“main-o”的程序,及在刻標處理器上執行經編譯的基 本處理’該基本處理部分的指令及資料存取的準確數目可 由該第二獲取部分12來掌握。 立要注意’關於該RAM存取的位址,該簡單軟體模型產 生。P分11根據為-轉向源的該現存試驗性軟體的記㈣㈣ 射在RAM區域分配一適合的位址。而且,該簡單軟體模 型產生部分11分配—適合的值作為除了與剛_描㈣纟 址相似的與该基本處理有關的那些以外的一變數。 以此方式,該基本處理執行記錄產生部分1〇根據該試 驗性軟體修改由該試驗性軟體所獲得的該基本處理單元以 獲取與需併人翻標CPU的新軟體相對應的執行記錄。 接著’該第二獲取部分12執行一編譯處理(步驟S29)及 執行(步驟S30)以獲取一試驗性執行記錄(步驟S31)。 接著’該基本處理執行記錄產生部分1〇將該試驗性執 行記_分為與該資料處理部分叫㈣的誠驗性執行 22 200951750 記錄的—部分及與該控 錄的另—部分技勒2)。 驗性執行記 理執2錄==性:記錄的時間戳記,該基本處 分與該資㈣ 77心κ驗性執行記錄的-週期部 …’處理部分Ud有關及 週期部分與該控制部分Ue有關。錄的一非
執:產=二::,,該基本處理 的一型樣產生比, 分以有關的該部分 _ 且輪出所計算的型樣產生比(步驟S26)。 爽相i# 6亥控制部分116有關的該部分係由系統呼叫 …σ來’且被執行。因為該部分 體所要求的規格來決定,所以該處理時序在開發= =不根據架構檢查來決定。因此,該基本處理執行記 分1〇自該現存執行記錄計算-物件型樣的產生頻 率’即該物件的指令的數目與所有指令的數目之比,及該 物件的了執行週期’且應用用以決定每-物件的產生比的 係數以產生該控制部分Ue的型樣產生比。 接著’在步驟S31處所獲取的該試驗性執行記錄被輸出 至該合成部分13。特別地’該基本處理執行記錄產生部分 10將與該資料處理部分lld及該㈣部分Ue有關的該等部 分共同作為—試驗性執行記錄(步驟S33)及該處理前進至第 9圖中的步驟S15處的一處理。 以此方式,用作為本發明之實施例的該模擬裝置1及模 擬方法,4第—獲取部分4執行預先產生的試驗性軟體以獲 23 200951750 取一第-執行記錄,且該劃分部分5將 =為多個基本處理單元。接著,該基本處理執=: 產生‘刀10修改該等基本處理單元中的某-個以產生需用
於模擬的一基本處理執行記錄。接著,該模擬執行部L Z基本處理執行記錄輸人至用以執行模擬的硬體模型以 獲取效能評估所必要的資訊。
因此藉由在需實際併入一目標cpu中的實際軟體未 被完成的-階段利用試驗性軟體,_目標⑽的效能呼估 可X尚準確度被執行。特別地,該基本處理執行記錄產 生部分10修改該試驗性軟體的一執行記錄以產生與該實際 軟體相對應的-執行記錄。因此,即使需實際併w目標 CPU中的新軟體未被完成,在設計的早期階段該模擬仍可 藉由實際上過去的軟體設計資產以高準確度被執行, 且該目標mn構檢查可職行。教,㈣該現存試 驗性軟體被使用,所以來自所要求的規袼的一文件的—應
用知式之模型化不需被執行,且還可減少直到該試驗性軟 體被產生時的步驟的數目。 而且’藉由應用一組態(其中’對於每-基本函數,軟 -負载被應用於硬體模型),每一函數的抽象 程度可根據軟體設計的進展程度來改變,且效能評估的準 確度可被進一步提高。 而且,利用該基本處理執行記錄,該模擬執行部分20 執行模擬而不需在模擬之後在一ISS上執行軟體。因此,與 模擬有關的步驟的數目可被減小,且模擬所需的時間可被 24 200951750 減少。 以此方式,用本模擬裝置卜該系統LSI(目標CPU)的架 構在開發的早期階段可以以高準確度被檢查,且本發明可 大大有助於:該處理負載及設計餘裕被抑制以實現低成本 及小型化。 你战丞尽匙理執行記錄產生部分1〇中,尤其是 該簡單軟體模型產生部分u產生一簡單軟體模型,且=
二獲取部分12獲取該簡單軟體模型的該試驗性執行記錄。 接者,該合成部分13合成一未修改的部分與該試驗性執行 =且因此,與實際軟體相對應的-執行記錄可確:: 且以減少數目的㈣自魏細驗錄體來產生。 軟體處理部分3自動地將-旗標嵌入該試驗性
的該旗” ΓΓ體模型產生部分11根據該執行記錄中 叼及褀‘貝矾,產生一簡單 T 模型產生部分U可以以高速率 '地簡單軟體 產生及-原始碼之躲^ 4執^物件序列之 錄中=事It根據㈣帛1料分4賴取的該執行吃 〜件控制貧訊,該鵪擬執 執行記錄輸入至該硬體模型,所、將5亥基本處理 錄的模擬可彻現m該基核理執行記 [2]本發明之細 確疋地被執行。 要注意,本發明不限於以 在不背離本發明之範圍的情況下斤變例,且 例如,孩組態議於《上所描述的實施:二。, 25 200951750 該基本處理執行記錄產生部分1〇改變由該劃分部分5所割 分的該等基本處理單元的内容以根據該試驗性敕體來獲取 與安裝軟體相對應的該執行記錄。然而,本發明不限於此, 且一替代組態可被應用,其中,該基本處理執行記錄產生 部分10用單獨準備的不同的基本處理單元替換由該劃分部 为5所劃分的該等基本處理單元,以獲取與該安裝軟體相對 應的該執行記錄。 這裏,一實例(其中,根據最近所產生的軟體,該等不 同的基本處理單元被替換)(以下所描述的第12圖中所說明 ^ 的一實例)及另一實例(其中,根據不同的試驗性軟體,該等 不同的基本處理單元被代替)(以下所描述的第13圖中所說 明的另一實例)是可用的。 例如’參考第12圖的流程圖(步驟81至84、86至沾、 S8’、S15至S17、S40至S46、S46,),將描述根據最近所產 生的軟體替換該等基本處理單元之實例。要注意,與第9圖 中的那些相同的元件係用相同的參考符號來表示,且在此 省略其相同的詳細描述。而且,為了簡化以下所描述的第 _ 12圖及還有第13圖中的說明,該旗標嵌入處理(第9圖中的 步驟S5之處理)被省略。 特別地,在對第12圖中所顯示的本實施例之第一修改 中,該基本處理執行記錄產生部分10擷取一修改部分的— 基本處理作為一修改目標(步驟S40)。接著,該基本處理執 行e錄產生部分1 〇在以下所描述的步驟S36處刪除所擷取 基本處理或將一不同的基本處理取代為所擷取基本處理的 26 200951750 特別地’該基本處理執行記錄產生部分1〇獲取獨立於 該忒驗性軟體的與該修改部分有關的一新軟體(步驟S41), 且該第二獲取部分12將所獲取的軟體設計編譯為用於該目 標CPU的設計(步驟S42),且獲取一執行二進制數(步驟 S43)。接著,該第二獲取部分12利用一ISS在該目標cpiLL 執行該執行二進制數以獲取與該修改部分有關的一試驗性 Ο 執行記錄(第二執行記錄)(步驟S44)。 接著,該基本處理執行記錄產生部分1〇用在步驟S45 所獲取的》亥式驗性執行記錄替換在步驟所擁取的該修 改部分的該基本處理單元(步驟S46)。特別地,該基本處理 ' 齡記職生部分1G將賴齡執行骑插人所操取部分 - 巾。糾’該崎模域铸分6產核騎域驗性執行 記錄相對應的一函數模組(步驟S46')。 基本處理執行記錄(步驟S16)。
力心螺的一部分以產生一基本處理執行記 此’與以上所描料實關中的那些相似 〜之後,該合成部分U合成該未修改部分及該試驗性執 仃》己錄(v驟S15),且該基本處魏行記錄產生部分產生 行記錄(軟體模型)。因 相似的工作效果可被 、S6-1 至 S8-1、 參考第13圖的流程圖(步驟S4-1、 27 200951750 S6-2至 S8-2、S15、S16、S50至州 Ώ 一 S53、及S60),現在將描述 j h、中’根據不同於在步驟以被轉向的試驗性軟體, 處理單元被替換。要注意,對於第U圖中的那些相 同的讀Μ相同的參考概來W,且在此省略其相同 的細描述。 特別地,在第圖中所顯示的本發明之第二修改中, 該第-獲取部分4獲取現存試驗性軟體的兩個片段幻及们 (步驟S4 1及S4-2) ’且在—實際機器上執行所獲取的軟體
(步驟86-1及86_2),且接著獲取執行記錄Χ2及Υ2(第-及第 二執行記錄)(步驟S7-1及S7-2)。 接著該劃分部分5執行將該等執行記錄X2及Υ2劃分 為基本處理單元(步驟S8-1及S8-2)。 接著’该基本處理執行記錄產生部分1〇在該試驗性軟 歡1的基本處理單元中選擇—替換部分,其需㈣來自該 該4驗性軟體的兩個片段幻與幻之_—基本部分(步驟
S5〇),且該基本處理執行記錄產生部分1〇擷取該替換部分 的一基本處理(步驟S51)。 另一方面,該基本處理執行記錄產生部分1〇自該試驗 t敕體Y1的該基本處理單元齡—轉向部分的-基本處理 單元(步驟S52)。 接著,該基本處理執行記錄產生部分10用該轉向部分 處的該基本處理單元替換所擷取基本處理單元(步驟S53)。 因此,該基本處理執行記錄產生部分10處理來自該現 存試驗性軟體的該等多個片段乂丨及丫丨的與該安裝軟體相 28 200951750 對應的-基核理執行記錄。 、要左思’在關於該轉向部分的函數替代或添加必須 執仃的地^ ’在第13圖中由—交替長的及兩條短的虛線 ,·示的簡單軟體模型化處理S60(步驟S10至S14)被執 執行用以執行簡單軟體模型化的該轉向部分之抽象 且接著’所產生的簡單软體模型在該目標處理器上被 執行以產生一試驗性執行記錄。 :而且,根據個別基本處理的執行時間,該RT〇s部分自 為該轉向源的該軟體執行記軸取先前及後糾耶物件 的執行記錄。接著,—產生頻率及—次序之參數被應用於 /等基本處理執行記錄及根據以上所描述的程序所產生的 該Rios部分的該等執行記錄以產生一軟體負載。因此,當 過去的軟體的某些函數被移植或具有彼此不同的函數的 兩個或更多個軟體片段被整合時可在開發的一早期階段 容易地執行模型化。 以此方式’作為本發明之第二修改的該模擬裝置丨的該 基本處理執行記錄產生部分10使用且組合該現存試驗性軟 體的多個片段χΐ&γι以產生一基本處理執行記錄(軟體模 型)。因此’可獲得與以上所描述的該等實施例的那些相同 的工作效果。 而且’該函數模組產生部分6及該基本處理執行記錄產 生部分10被單獨提供於以上所描述的該等實施例中。然 而’本發明不限於此,且該函數模組產生部分6可作為該基 本處理執行記錄產生部分10的一部分被實施。 29 200951750 要注意,作為該SW/HW劃分部分2、旗標處理部分3、 第一獲取邻刀4、劃分部分5、函數模組產生部分6 '基本處 理執行記錄產生部分1〇、簡單軟體模型產生部分u、第二 獲取部分12、合成部分13及模擬執行部分20的功能可由一 電腦(包括一CPU、一資訊處理裝置及各種終端機)藉由執行 一預定應用程式(模擬程式)來實施。 該程式以一狀態被提供,其中,它被記錄在諸如例如
一軟性磁碟、一 CD (CD-ROM、CD-R、CD-RW 等)、一 DVD
(DVD-ROM、DVD-RAM、DVD-R、DVD-RW、DVD+R、 Q DVD+RW等)之—電腦可讀記錄媒體上。在此實财,電腦 自該兄錄媒體讀取模擬程式,且轉移該所讀取的程式至一 内部儲存裝置或—外部儲存裝置,使得該程式被儲存且被 使用。而且,該程式可被預先記錄在諸如例如一磁碟、一 光碟、-磁光碟等之一儲存裝置(記錄媒體)上,藉此該程 式透過一通訊線路自該儲存裝置被提供給電腦。 這裏,電腦是包括硬體及一OS(作業系統)的一概念, 且表不在該OS控制下操作的硬體。而且,在無〇8被需要, © 且硬體只由-應用程式來操作的地方該硬體本身對應於 一電腦。该硬體至少包括諸如-CPU之-微處理器及用以 讀取3己錄媒體上所記錄的電腦程式之裝置。 作為以上所描述的模擬程式的該應用程式包括用以致 使以上所描述的這樣—電腦實施如下部分的功能的程式 碼:該SW/HW劃分部分2、旗標處理部分3、第一獲取部分 4、劃分部分5、函數模組產生部分6、基本處理執行記錄產 30 200951750 生部分10、簡單軟體模型產生部分11、第二獲取部分12、 合成部分13及模擬執行部分20。而且,該等函數中的一些 可不藉由一應用程式而藉由一OS來實施。 I:圖式簡單說明3 第1圖是顯示作為一實施例的模擬裝置之本質部分的 組態的方塊圖; 第2圖是說明作為該實施例的模擬裝置之旗標處理部 分的一程序的視圖; 第3圖是說明由作為該實施例的模擬裝置的第一獲取 部分所獲取的執行記錄的範例的視圖; 第4圖是說明由作為該實施例的模擬裝置的基本處理 執行記錄產生部分之簡單軟體模型產生部分所產生的物件 序列的範例的視圖; 第5圖是說明與第4圖中所說明的物件序列的一部分相 對應的簡單序列圖的範例的視圖; 第6圖是顯示由作為該實施例的模擬裝置的基本處理 執行記錄產生部分之簡單軟體模型產生部分所產生的簡單 軟體模型的視圖; 第7圖是顯示由作為該實施例的模擬裝置的模擬執行 部分所實施的模擬目標的組態的範例的方塊圖; 第8圖是說明藉由該實施例之模擬裝置的模擬執行部 分在模擬中執行週期事件的範例的圖解; 第9圖是說明作為該實施例的模擬方法的一處理程序 的流程圖; 31 200951750 第ι〇圖是說明作為該實施例的模擬裝置的基本處理執 行記錄赵料的簡單軟龍黯㈣分的操作 例的流程圖; 第11A及11B圖是說明作為該實施例的模擬裝置的基 本處理執行記錄產生部分之簡單軟體模型產生部分之處二 的範例的視圖,且其中,第11A圖說明了在該簡單軟體模型 產生部分執行處理之前的一基本處理,及第UB圖在用以產
生一抽象模型之處理在第11A圖中所顯示的基本處理中被 執行之後執行一基本處理; 第12圖是說明作為-第一修改的模擬方法的處理程序 的流程圖; 第I3圖是說明作為-第二修改的模擬方法的處理程序 的流程圖;及 第14圖是㈣毅半導體裝置之f知的效能評估模擬 裝置的組態的範例的方塊圖。 【主要元件符號說明】 1…效能評估模擬裝置 2…s W(軟體)/HW(硬體)劃分 部分 3…旗標處理部分 4.··第一獲取部分 5…劃分部分 6...函數模組產生部分 1 〇...基本處理執行記錄產生部分 11…簡單軟體模型產生部分 1 la·..簡單軟體組態/簡單軟體 模型 lib…使用者模型 11c·.·即時〇s(RT〇s) lie...控制部分 Ilf...抽象化模型 12…第二獲取部分
32
200951750 13.. .合成部分
20.. .模擬執行部分 21 …CPU 22、22-1-22-n...函數模組 23.. .排程器部分 24.. .存取處理部分 25.. .基本處理執行記錄 26.. .事件控制資訊 27…統計貢訊 30.. .指令快取記憶體 31.. .資料快取記憶體 32.. .匯流排 33…外部RAM 34.. .周邊硬體 S1-S60...步驟 S8'-S46\..步驟 S4-1-S8-2...步^驟
33
Claims (1)
- 200951750 七1. 申請專利範圍: 10 15 20 —_用-硬體模型執剌於需藉由 施的-系統的效能評估之模擬之模擬裝置,^包^來實 一二1 一獲取部分’適於執行現存試驗性軟:獲取 弟一執行記錄; 本處部分,適於將該第—執行記_分為多個基 :基本處理執行記職生部分,適於㈣該等多個 基本處理單元中的某一個以產生需用於讀 本處理執行記錄;及 、、土 至用二Γ執行^,適於賴基核理執行記錄輸入 執行該模擬的該硬體模独獲取該效能評估所 兩的負訊。 2. 如申請物範圍第丨項㈣之模健置, 處理執行記職生部分包括^ “土 1單軟體模黯生部分,適於自該”個基本處 ^中娜—修改目標基本處理單元及根據該所擁 夕改目標基本處理單元產生一簡單軟體模型·, —第二獲取部分,適於根據該簡單軟體模型庐取一 試驗性執行記錄;及 又一一合成部分’適於合成除了該修改目標基本處理單 、乂外的4等多個基本處理單元及該試驗性執行記錄 以產生該基本處理執行記錄。3. 如申請專利範圍第2項所述之模擬裝置,其進—步包含:34 200951750 一旗標處理部分,適於將代表一原始碼的一分支行 或用以呼叫該試驗性軟體中的一物件的一函數列的一 旗標嵌入該試驗性軟體中;及其中 該第一獲取部分遭組配以執行該旗標遭嵌入其中 5 的該試驗性軟體以獲取該第一執行記錄,及 根據與該修改目標基本處理單元中的該旗標相對 應的旗標資訊,該簡單軟體模型產生部分在該修改目標 基本處理單元中產生一物件序列,且擷取該原始碼以產 生該簡單軟體模型。 10 4.如申請專利範圍第1項所述之模擬裝置,其中,該基本 處理執行記錄產生部分用一不同的基本處理單元替換 該等多個基本處理單元中的某一個以產生該基本處理 執行記錄。 5. 如申請專利範圍第4項所述之模擬裝置,其中,該基本 15 處理執行記錄產生部分執行與該試驗性軟體不同的試 驗性軟體以獲取一第二執行記錄,且根據該第二執行記 錄獲取該不同的基本處理單元。 6. 如申請專利範圍第1至5項中的任一項所述之模擬裝 置,其中,該模擬執行部分根據該第一執行記錄中的事 20 件控制資訊將該基本處理執行記錄輸入至該硬體模型。 7. —種利用一硬體模型執行用於需藉由軟體及硬體來實 施的一系統的效能評估之模擬之模擬方法,其包含下列 步驟: 一第一獲取步驟,執行現存試驗性軟體以獲取一第 35 200951750 一執行記錄; 一劃分步驟,將該第一執行記錄劃分為多個基本處 理單元; 一基本處理執行記錄產生步驟,修改該等多個基本 5 處理單元中的某一個以產生需用於該模擬的一基本處 理執行記錄;及 一模擬執行步驟,將該基本處理執行記錄輸入至用 以執行該模擬的該硬體模型以獲取該效能評估所需的資訊。 10 8.如申請專利範圍第7項所述之模擬方法,其中,該基本 處理執行記錄產生步驟包括下列子步驟: 一簡單軟體模型產生步驟,自該等多個基本處理單 元中擷取一修改目標基本處理單元,及根據該所擷取修 改目標基本處理單元產生一簡單軟體模型; 15 一第二獲取步驟,根據該簡單軟體模型獲取一試驗性執行記錄;及 一合成步驟,合成除了該修改目標基本處理單元以 外的該等多個基本處理單元與該試驗性執行記錄以產 生該基本處理執行記錄。 20 9.如申請專利範圍第8項所述之模擬方法,其進一步包含 下列步驟: 一旗標處理步驟,將代表一原始碼的一分支行或用 以呼叫該試驗性軟體中的一物件的一函數列的一旗標 嵌入該試驗性軟體中;及其中 36 200951750 在該第一獲取步驟,該旗標遭嵌入其中的該試驗性 軟體遭執行以獲取該第一執行記錄,及 510 15在該簡單軟體模型產生步驟,根據與該修改目標基 本處理單元中的該旗標相對應的旗標資訊,在該修改目 標基本處理單元中一物件序列遭產生,且該原始碼遭擷 取以產生該簡單軟體模型。 10. 如申請專利範圍第7項所述之模擬方法,其中,在該基 本處理執行記錄產生步驟,該等多個基本處理單元中的 某一個用一不同的基本處理單元遭替換以產生該基本 處理執行記錄。 11. 如申請專利範圍第10項所述之模擬方法其中在該基 本處理執行記錄產生步驟,與該試驗性軟體不同的試2 性軟體遭執行以獲取-第二執行記錄,且根據該第二執 行圯錄,該不同的基本處理單元遭獲取。 12·如申請專利範圍第7Π項中的任—項所述之模擬方 法,其中,在該模擬執行步驟,根據該第一執行記錄 =件控制資訊,該基本處理執行記錄遭輸入至該硬體 20 I*,心4其内記錄有-模擬程式之電腦可讀記錄媒 -美擬程式用以致使—電腦實施利用 ;、 估之模擬:Γ 體來實施的一系統的效能評 發揮作用:該模擬程式致使該電腦作為如下部分 第一獲取部分,適於執行現存試驗性軚體 37 200951750 10 15 20 一第—執行記錄; 本處理X分部分’過於將該第一執行記_分為多個基 基本:=:記:產生/分,_多個 本處理執行記錄;及 基 一模擬執行部分,適於將該基本處 至用:執行該模擬的該硬體模型以獲取該效能:入 需的資訊。 双肊砰估所 M·如申請專·圍第13項所述之其上或 擬程式之電腦可觀錄舰,其f㈣錄有—模 為該基本處理執行記錄產生 ϋ腦遭致使作 式致使該電腦作為如下部分發揮3相時,該模擬程 理單於自該_ 取―單:::==據_ -第二獲取部分,適於 , 試驗性執行記錄;及 據錢早軟體模型獲取- -合成部分’適於合成 元以外的該等多個基本處理單^改目標基本處理單 以產生該基本處理執行弋錄 及該試驗性執行記錄 15·如申所:之 擬程式之電腦可讀上4其内讀有一模 電腦作為如下部分發 、 邊模擬程式致使该 刀 作用:一旗標處理部分,適於將38 200951750 代表原始碼的-分支行或以呼叫該試驗性軟體中 的-物件的一函數列的—旗標钱入該試驗性軟體中; 該第—獲取部分’執行該旗標遭嵌人其中的該試驗 性軟體以獲取該第一執行記錄;及 5 關單軟雜黯生部分,根據與娜改目標基本 處理單旗標彳目對應的旗«訊,在該修改目標 基本處理單中產生-物件序列且擁取該原始碼以產 生該簡單軟體模型。 丨6·如申請專利範圍第13項所述之其上或其内記錄有一模 1〇 擬程式之電腦可讀記_體,其中,該模擬程式致使該 電腦發揮仙,使得該基本處理執行記錄產生部分用一 不同的基本處理單元替換該等多個基本處理單元中的 某一個以產生該基本處理執行記錄。 17. 如申請專利範圍第16項所述之其上記錄有—模擬程式 15 之電腦可讀記錄媒體,其中,_絲錢使該電腦發 揮作用,使得該基核_行記錄產生部分執行與該試 驗性軟體不同的試驗性軟體以獲取一第二執行記錄,且 根據該第二執行記錄獲取該不同的基本處理單元。 18. 如申請專利範圍第13至17項中的任一項所述之其上記 20 錄有一模擬程式之電腦可讀記錄媒體,其中,該模擬程 式致使該電腦發揮作用,使得該模擬執行部分根據該第 一執行記錄中的事件控制資訊將該基本處理執行記錄 輸入至該硬體模型。 39
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008153505A JP5200675B2 (ja) | 2008-06-11 | 2008-06-11 | シミュレーション装置,シミュレーション方法,シミュレーションプログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200951750A true TW200951750A (en) | 2009-12-16 |
TWI423058B TWI423058B (zh) | 2014-01-11 |
Family
ID=41415558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098106420A TWI423058B (zh) | 2008-06-11 | 2009-02-27 | 模擬裝置、模擬方法及記錄有模擬程式之電腦可讀記錄媒體 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8249850B2 (zh) |
JP (1) | JP5200675B2 (zh) |
KR (1) | KR101076348B1 (zh) |
TW (1) | TWI423058B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5034955B2 (ja) * | 2008-01-08 | 2012-09-26 | 富士通株式会社 | 性能評価シミュレーション装置、性能評価シミュレーション方法および性能評価シミュレーションプログラム |
JP5928128B2 (ja) * | 2012-04-25 | 2016-06-01 | 株式会社明電舎 | デジタル回路用シミュレーション方法 |
US9734263B2 (en) * | 2012-12-20 | 2017-08-15 | Intel Corporation | Method and apparatus for efficient pre-silicon debug |
CN103473431B (zh) * | 2013-09-25 | 2016-12-07 | 北京大学 | 一种轻量级的在线调试php程序的方法 |
CN103514055A (zh) * | 2013-10-09 | 2014-01-15 | 浪潮(北京)电子信息产业有限公司 | 一种面向过程的高性能计算应用性能的测评方法及系统 |
US10372590B2 (en) | 2013-11-22 | 2019-08-06 | International Business Corporation | Determining instruction execution history in a debugger |
JP7452071B2 (ja) | 2020-02-18 | 2024-03-19 | 富士通株式会社 | 抽出プログラム、抽出方法および情報処理装置 |
CN113821458B (zh) * | 2021-09-18 | 2023-09-05 | 日立楼宇技术(广州)有限公司 | 一种数据操作方法、装置、计算机设备和存储介质 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09114693A (ja) * | 1995-10-13 | 1997-05-02 | Toshiba Corp | プログラム開発支援装置及びプログラム実行装置 |
KR20010006983A (ko) | 1999-06-26 | 2001-01-26 | 양세양 | 신속 프로토타이핑 장치와 그것의 입출력 탐침방법 및그것을 이용한 혼합 검증 방법 |
JP2001256079A (ja) * | 2000-03-10 | 2001-09-21 | Matsushita Electric Ind Co Ltd | ソフトウェアのデバッグ方法および論理回路のデバッグ方法 |
JP2001318812A (ja) * | 2000-05-11 | 2001-11-16 | Nec Corp | 性能評価モデル生成装置および性能評価モデル生成方法 |
JP2001344287A (ja) * | 2000-06-02 | 2001-12-14 | Nec Microsystems Ltd | アルゴリズム記述におけるバスの性能評価方法 |
JP2002215423A (ja) * | 2001-01-22 | 2002-08-02 | Hitachi Ltd | ソフトウェアモデル作成方法 |
SG94796A1 (en) * | 2001-03-28 | 2003-03-18 | Council Scient Ind Res | A simulated circuit layout for low voltage, low power and high performance type ii current conveyor |
JP4503203B2 (ja) * | 2001-07-03 | 2010-07-14 | 富士通株式会社 | 情報処理装置を評価するためのテストプログラムを作成する方法、装置、およびそのための処理を記述したプログラム |
US20030121010A1 (en) * | 2001-12-21 | 2003-06-26 | Celoxica Ltd. | System, method, and article of manufacture for estimating a potential performance of a codesign from an executable specification |
JP3828104B2 (ja) * | 2003-10-02 | 2006-10-04 | 株式会社東芝 | 模擬回路パターン評価方法、半導体集積回路の製造方法、テスト基板、及びテスト基板群 |
JP4100630B2 (ja) * | 2004-05-14 | 2008-06-11 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Uml設計方法 |
KR100921314B1 (ko) * | 2004-07-12 | 2009-10-13 | 양세양 | 검증결과 재활용 기법을 채용한 고성능 설계검증 장치 및이를 활용한 신속한 설계검증 방법 |
JP2006059108A (ja) | 2004-08-19 | 2006-03-02 | Mitsubishi Electric Corp | 情報システム開発試験支援システム |
JP2007018313A (ja) | 2005-07-08 | 2007-01-25 | Fujitsu Ltd | 回路設計プログラム、回路設計装置、回路設計方法 |
US8781808B2 (en) * | 2005-10-10 | 2014-07-15 | Sei Yang Yang | Prediction-based distributed parallel simulation method |
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 |
JP2007310449A (ja) | 2006-05-16 | 2007-11-29 | Fujitsu Ltd | ソフトウェア/ハードウェア協調設計のためのモデル生成プログラム、およびモデル生成方法 |
WO2009050768A1 (ja) * | 2007-10-15 | 2009-04-23 | Fujitsu Limited | シミュレート方法、電子装置の設計方法、シミュレートプログラムおよびシミュレーション装置 |
JP5034955B2 (ja) * | 2008-01-08 | 2012-09-26 | 富士通株式会社 | 性能評価シミュレーション装置、性能評価シミュレーション方法および性能評価シミュレーションプログラム |
-
2008
- 2008-06-11 JP JP2008153505A patent/JP5200675B2/ja not_active Expired - Fee Related
-
2009
- 2009-02-26 US US12/393,155 patent/US8249850B2/en not_active Expired - Fee Related
- 2009-02-27 TW TW098106420A patent/TWI423058B/zh not_active IP Right Cessation
- 2009-03-24 KR KR1020090024890A patent/KR101076348B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP2009301231A (ja) | 2009-12-24 |
US8249850B2 (en) | 2012-08-21 |
US20090313001A1 (en) | 2009-12-17 |
JP5200675B2 (ja) | 2013-06-05 |
KR101076348B1 (ko) | 2011-10-25 |
TWI423058B (zh) | 2014-01-11 |
KR20090129320A (ko) | 2009-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW200951750A (en) | Simulation apparatus, simulation method and computer-readable recording medium on or in which simulation program is recorded | |
JP5629239B2 (ja) | ソフトウェアの動作をテストする装置及び方法 | |
US8417504B2 (en) | Conversion of circuit description to a transaction model | |
US5862361A (en) | Sliced synchronous simulation engine for high speed simulation of integrated circuit behavior | |
CN107040433A (zh) | 一种自动化测试方法及系统 | |
JPH10187789A (ja) | ハードウェア/ソフトウェア協調シミュレーション装置、ハードウェア/ソフトウェア協調シミュレーション方法及びハードウェア/ソフトウェア協調シミュレーションプログラムを記録した機械読み取り可能な記録媒体 | |
JP2018537732A (ja) | 音声データ処理方法及び装置 | |
CN113035162A (zh) | 民族音乐生成方法、装置、设备及存储介质 | |
JP4850091B2 (ja) | 検証シナリオ生成装置,方法,およびプログラム,並びに検証装置 | |
US8286141B2 (en) | Instruction-trace generation program, instruction-trace generating device, and instruction-trace generating method | |
TW200950859A (en) | Apparatus and methods for game conversion | |
CN112631920A (zh) | 一种测试方法、装置、电子设备及可读存储介质 | |
JP2003036278A (ja) | Fmeaシステム | |
CN111523504A (zh) | 基于表情分析的抑郁症预测方法、预测终端和存储介质 | |
JP2009223661A (ja) | 検証支援プログラム、該プログラムを記録した記録媒体、検証支援装置、および検証支援方法 | |
US7971167B2 (en) | Semiconductor design support device, semiconductor design support method, and manufacturing method for semiconductor integrated circuit | |
CN113032615A (zh) | 冥想音乐的生成方法、装置、设备及存储介质 | |
Twigg et al. | Predicting Formal Verification Resource Needs (Computation Time and Memory) through Machine Learning | |
JP2007018313A (ja) | 回路設計プログラム、回路設計装置、回路設計方法 | |
JP2004145712A (ja) | 半導体設計における動作記述の等価性検証方法 | |
KR101426763B1 (ko) | 음원 서비스 시스템 및 그 방법, 그리고 이에 적용되는 장치 | |
US20090106009A1 (en) | Reconstruction of data from simulation models | |
US20220245193A1 (en) | Music streaming, playlist creation and streaming architecture | |
JP4099359B2 (ja) | テストパターンデータベースを再利用する順序回路自動テストパターン生成システム | |
CN114492280A (zh) | 一种电路仿真方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |