TWI627521B - 時序估算方法與模擬裝置 - Google Patents
時序估算方法與模擬裝置 Download PDFInfo
- Publication number
- TWI627521B TWI627521B TW106118944A TW106118944A TWI627521B TW I627521 B TWI627521 B TW I627521B TW 106118944 A TW106118944 A TW 106118944A TW 106118944 A TW106118944 A TW 106118944A TW I627521 B TWI627521 B TW I627521B
- Authority
- TW
- Taiwan
- Prior art keywords
- time
- read
- write
- write request
- transmission time
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3323—Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
- G06F30/3312—Timing analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/28—Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一種時序估算方法,適用於功能驗證模型。時序估算方法係先於第一時點送出功能驗證模型的第一讀寫要求。於第二時點從匯流排接收關聯於第一讀寫要求的第一回應。計算第一時點與第二時點之間的延遲時間。當延遲時間大於第一讀寫要求對應的傳輸時間時,送出第二讀寫要求。當延遲時間小於第一讀寫要求對應的傳輸時間時,於第二時點經過一補償時間後送出第二讀寫要求。補償時間不大於傳輸時間與延遲時間的差值。
Description
本發明係關於一種時序估算方法與模擬裝置,特別是一種關於電路驗證的時序估算方法與模擬裝置。
行動裝置或是穿戴裝置的發展依舊是科技業界中的大熱門。行動裝置或是穿戴裝置的外型講求輕薄短小,而在體積相對小的裝置上,如何控制功率的消耗變成很重要的議題。
目前對於多媒體裝置功率消耗的模擬或驗證大多著重在處理器或記憶體等大型處理單元上。就實務上而言,這些處理單元本身大多自帶時間資訊,因此反映出相對應的功率消耗是比較容易的。但除了這些處理單元,其他比較小型的處理單元像是視訊處理單元、影像顯示處理單元等,在模擬驗證上,多是使用純功能模型進行模擬或驗證,而不帶任何時間資訊,因此提升了反應功率消耗的困難度。但是,若想要重新開發一個自帶時間資訊的模型以對這些小型的處理單元進行模擬或驗證,則可能需花數個月的時間去完成,對開發時程的影響會非常大。
本發明在於提供一種時序估算方法與模擬裝置,在精確地反應出多媒體裝置功率消耗的情況下,同時使模擬驗證的時程長度相仿於單純使用功能模型進行模擬驗證的時程長度。
本發明揭露了一種時序估算方法,所述的時序估算方法適用於功能驗證模型。時序估算方法係先於第一時點送出功能驗證模型的第一讀寫要求。於第二時點從匯流排接收關聯於第一讀寫要求的第一回應。計算第一時點與第二時點之間的延遲時間。當延遲時間大於第一讀寫要求對應的傳輸時間 時,送出第二讀寫要求。當延遲時間小於第一讀寫要求對應的傳輸時間時,於第二時點經過一補償時間後送出第二讀寫要求。補償時間不大於傳輸時間與延遲時間的差值。
本發明揭露了一種模擬裝置,所述的模擬裝置電性連接處理器與記憶體。處理器用以驅動功能驗證模型於第一時點送出第一讀寫要求。模擬裝置具有延遲模擬模組與處理時間估測模組。延遲模擬模組用以於第二時點從匯流排接收關聯於第一讀寫要求的第一回應。且延遲模擬模組用以計算第一時點與第二時點之間的延遲時間。處理時間估測模組用以判斷延遲時間是否大於第一讀寫要求對應的傳輸時間。當延遲時間大於第一讀寫要求對應的傳輸時間時,處理時間估測模組用以送出第二讀寫要求。當延遲時間不大於第一讀寫要求對應的傳輸時間時,處理時間估測模組用以於第二時點經過補償時間後送出第二讀寫要求。其中,補償時間不大於傳輸時間與延遲時間的差值。
綜合以上所述,本發明提供了一種時序估算方法與模擬裝置,在一實施例中,係以一個純功能不帶時間資訊的模型為基礎,示範如何根據不同參數以及不同資料格式反應出相對應的執行時間以及功率消耗。除此之外,本發明提供的時序估算方法與模擬裝置適用於多種多媒體裝置的硬體架構,因此可以很快速的套用到任何一個符合標準的視訊處理單元上。
以上之關於本揭露內容之說明及以下之實施方式之說明係用以示範與解釋本發明之精神與原理,並且提供本發明之專利申請範圍更進一步之解釋。
以下在實施方式中詳細敘述本發明之詳細特徵,其內容足以使任何熟習相關技藝者了解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明。以下之實施例係進一步詳細說明本發明之觀點,但非以任何觀點限制本發明之範疇。
請參照圖1A、圖1B與圖2,圖1A係為根據本發明一實施例所繪示之待測系統的功能方塊示意圖,圖1B係為根據本發明一實施例所繪示之模擬系統的功能方塊示意圖,圖2係為執行圖1所示之本發明一實施例的模擬裝置之功能方塊示意圖。
如圖2所示,模擬裝置3具有處理器12與記憶體14。記憶體電性連接處理器。記憶體用以儲存至少一指令。當處理器12執行至少一指令時,模擬裝置3執行時序估算方法。
圖1A示出了待測系統2的架構。待測系統2具有待測元件22、動態隨機存取記憶體25、直接記憶體存取模組26、靜態隨機存取記憶體27與匯流排B。匯流排B電性連接待測元件22、動態隨機存取記憶體25、直接記憶體存取模組26與靜態隨機存取記憶體27。待測元件22例如為中央處理器、圖形處理器、編碼器或是解碼器,在此並不加以限制。匯流排B可以為任意的資料交換架構。
如圖1B所示,模擬裝置3信號連接該功能驗證模型42。於實務上係以功能驗證模型42模擬待測元件22,並以 硬體模型44模擬圖1A中的動態隨機存取記憶體25、直接記憶體存取模組26、靜態隨機存取記憶體27與匯流排B。藉由令模擬裝置3控制功能驗證模型42與硬體模型44傳輸資料,從而可以獲得出至少一待測元件22的傳輸時序與相關效能。
請再參照圖6以說明功能驗證模型的實施態樣,圖6係為根據本發明一實施例所繪示之功能驗證模型的功能方塊圖。在圖6所示的實施例中,功能驗證模型42’具有延遲模擬模組101與處理時間估測模組103。
該功能驗證模型42’於一第一時點送出第一讀寫要求後,並於第二時點從匯流排B接收關聯於第一讀寫要求的第一回應。該延遲模擬模組101紀錄該第一時點與該第二時點,並且計算第一時點與第二時點之間的延遲時間。
該處理時間估測模組103判斷所述的延遲時間是否大於等於第一讀寫要求對應的傳輸時間。當延遲時間大於等於第一讀寫要求對應的傳輸時間時,功能驗證模型42用以送出第二讀寫要求。當延遲時間不大於等於第一讀寫要求對應的傳輸時間時,處理時間估測模組103於第二時點經過補償時間後送出第二讀寫要求。其中,所述的補償時間不大於傳輸時間與延遲時間的差值。
在一實施例中,當延遲時間大於等於傳輸時間時,處理時間估測模組103更用以計算延遲時間與傳輸時間的逾時差值,並將逾時差值加入逾時總值。當延遲時間小於傳輸時間時,處理時間估測模組103用以計算延遲時間與傳輸時間的不足差值。當逾時總值大於零時,處理時間估測模組103用以自逾時總量中扣除相當於不足差值的時間量,並令補償時間為零。於實務上,當逾時總值不大於零時處理時間估測模組103例如用以計算不足差值並以不足差值做為補償時間。其中,所述的傳輸時間例如為讀寫要求的平均傳輸時間。
請再參照圖7,以說明功能驗證模型的另一種實施態樣,圖7係為根據本發明一實施例所繪示之功能驗證模型的功能方塊圖。在圖7所示的實施例中,所述功能驗證模型42”依據至少一畫格(frame)中的多個切片(slice)提供多個讀寫要求,以經由匯流排B存取記憶體。功能驗證模型42”更具有執行時間預測模組109與傳輸數計算模組107。
傳輸數計算模組107,用以取得讀寫要求對應的至少一畫格所對應的總讀寫要求次數。總讀寫要求次數例如係用以指示讀寫的總次數。於一實施例中,該模擬裝置會先在一段組態設定時間中取得所需的參數。傳輸數計算模組107例如是在所述的組態設定時間中取得總讀寫要求次數。於實務上,傳輸數計算模組107例如是依據讀寫要求對應的至少一切片的類型(slice type)、至少一畫格的解析度、至少一畫格的編碼方式或是關聯讀寫要求的其他參數,以估計(estimate)得總讀寫要求次數。或者,功能驗證模型42”會在所述的組態設定時間中完整地跑過一次模擬,以取得實際的總讀寫要求次數。上述僅為舉例示範,實際上並不以此為限。
該時間預測模組109用以依據讀寫要求對應的至少一切片的類型(slice type)、至少一畫格的解析度或至少一畫格的編碼方式取得讀寫要求所需的總傳輸時間。且執行時間預測模組109用以依據總傳輸時間與總讀寫要求次數取得讀寫要求的平均傳輸時間。如前述地,在一實施例中,平均傳輸時間即被作為前述的傳輸時間。
在一實施例中,所述的讀寫要求其中之一具有第一讀寫長度,而功能驗證模型具有第二讀寫長度。如圖7所示,功能驗證模型42”例如更具有流量調整模組105,流量調整模組105用以判斷第一讀寫長度是否相等於第二讀寫長度。當判斷第一讀寫長度與第二讀寫長度不相等時,調整讀寫要求的讀寫長度為第二讀寫長度。舉例來說,第一讀寫長度是128位元組,而第二讀寫長度為16位元組,此時讀寫要求被分割為8個具有第二讀寫長度的子要求,流量調整模組105分別接收各子要求,從而使流量調整模組105接收得完整的讀寫要求。在另一實施例中,第一讀寫長度是16位元組,而第二讀寫長度為128位元組,此時,功能驗證模型42”可以直接接收完整的讀寫要求,流量調整模組105不需要對讀寫要求進行處理亦或流量調整模組105收集8個具有第一讀寫長度的子要求後,功能驗證模型再接收該完整的讀寫要求。
於實務上,該功能驗證模型42”依據至少一畫格(frame)中的多個切片(slice)提供多個讀寫要求,以經由匯流排存取記憶體。該時間預測模組109用以依據至少一切片的類型(slice type)、至少一畫格的解析度或至少一畫格的編碼方式與延遲時間計算出功率消耗值。功率消耗值例如為平均功率或是瞬時功率。
以下係舉圖3至圖4D為例,以具體說明模擬裝置的時序作動。請先參照圖3,圖3係為根據本發明一實施例所繪示之時序估算方法的步驟流程圖。於步驟S203中,判斷當前的延遲時間是否大於等於傳輸時間。若是,進入步驟S205,設定補償時間為零,接著進入步驟S207,計算延遲時間與傳輸時間的逾時差值,將逾時差值加入逾時總值。而於步驟S203中,若判斷當前的延遲時間不大於等於傳輸時間則進入步驟209。於步驟S209中,計算傳輸時間與延遲時間的不足差值,判斷逾時總值是否大於零。若是,進入步驟S213。若否,進入步驟S211。於步驟S211中,以不足差值為補償時間。而於步驟S213中,令補償時間為零,並將逾時總值扣除不足差值。請參照以下的敘述以說明不同判斷結果下的情況。
請參照圖4A,圖4A係為根據本發明一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。在第一時點T1,該功能驗證模型42送出第一讀寫要求req1。於第二時點T2,從硬體模型44接收關聯於第一讀寫要求req1的第一回應rep1。功能驗證模型42計算第一時點T1與第二時點T2之間的延遲時間TL1。在此實施例中,延遲時間TL1不大於等於第一讀寫要求req1對應的傳輸時間Tt1,因此,該功能驗證模型42於第二時點T2經過補償時間後的第三時點T3送出第二讀寫要求req2。補償時間不大於傳輸時間Tt與延遲時間Tl的差值。在此實施例中,補償時間係相等於傳輸時間Tt與延遲時間Tl的不足差值Tins1,也就是說,該功能驗證模型42於第二時點T2經過一段相當於不足差值Tins1長度的時間之後再送出第二讀寫要求req2。藉此,以使功能驗證模型42送出讀寫要求至接收關聯於讀寫要求回應之間的時間長度實質上等於讀寫要求所對應的傳輸時間Tt。
請接著參照圖4B,圖4B係為根據本發明另一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。該功能驗證模型42於第四時點T4送出第三讀寫要求req3,並於第五時點T4接收到關聯於第三讀寫要求req3的第三回應rep3。其中,第四時點T4與第五時點T5之間具有延遲時間TL3。延遲時間TL3大於等於第三讀寫要求req3所對應的傳輸時間Tt3。在此情況下,功能驗證模型42在接著送出第三讀寫要求req4。在一實施例中,功能驗證模型42係於第六時點T6送出第四讀寫要求req4,第六時點T6實質上相同於第五時點T5。
如前述地,延遲時間可能大於等於傳輸時間,或者延遲時間可能不大於傳輸時間。也就是說,延遲時間與傳輸時間之間可能具有一差值。以傳輸時間為基準來說,於一實施例中,在延遲時間不大於等於傳輸時間的情況下,功能驗證模型42計算延遲時間與傳輸時間之間的不足差值,並設定補償時間的長度相等於此不足差值,且自一逾時總值中扣除不足差值。而在延遲時間大於等於讀寫要求所對應的傳輸時間的情況下,功能驗證模型42計算延遲時間與傳輸時間之間的逾時差值,並將逾時差值加入逾時總值,並設定補償時間為零。功能驗證模型42係用以依據逾時總值選擇性地調整後續的補償時間的大小。上述提到的各差值例如為絕對值,但並不以此為限。
舉實際的參數來說,該模擬裝置3例如統計有一逾時總值TR(作為文字說明用,並未標示於圖式中)。在圖4A所示的實施例中,該功能驗證模型42於第二時點T2接收到關聯於第一讀寫要求req1的第一回應rep1時,功能驗證模型42紀錄並計算延遲時間TL1與傳輸時間Tt1之間的不足差值Tins1,功能驗證模型42設定補償時間的長度等同於不足差值Tins1,也就是說,在接收到第一回應rep1後,功能驗證模型42經過一段相當於不足差值Tins1長度的時間後再提供第二讀寫要求req2。而在圖4B所示的實施例中,該功能驗證模型42於第五時點T5接收到關聯於第三讀寫要求req3的第三回應rep3時,功能驗證模型42記錄並計算延遲時間TL3與傳輸時間Tt3之間的逾時差值TR3,且係將逾時差值TR3加入逾時總值TR中。
於實務上,依據逾時總值的大小,功能驗證模型42可以設定對應的補償時間長度,或者功能驗證模型42也可以有不同的更新逾時總值的方式。請接著參照圖4C以對逾時總值的計算方式進行說明,圖4C係為根據本發明更一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。在圖4C所示的實施例中,圖4C所述的實施例係為延續於圖4B所述的實施例的其中一種情況。在圖4C所述的實施例中,該功能驗證模型42於第六時點T6送出第四讀寫要求req4,且於第七時點T7接收到關聯於第四讀寫要求req4的第四回應rep4。第六時點T6與第七時點T7之間的延遲時間TL4小於第四讀寫要求req4對應的傳輸時間Tt4,且延遲時間TL4與第四讀寫要求req4對應的傳輸時間Tt4之間具有不足差值Tins4。於實務上,功能驗證模型42例如更判斷逾時總值TR是否大於零。在此實施例中,由於逾時總值TR大於零,雖然延遲時間TL4不大於傳輸時間Tt4,補償時間還是被設為零,並將逾時總值扣除不足差值。也就是說,該功能驗證模型42係於第八時點T8送出第五讀寫要求req5,第八時點T8實質上相同於第七時點T7,或者說第八時點T8緊接著第七時點T7。
請接著參照圖4D,圖4D係為根據本發明又一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。在圖4D所示的實施例中,該功能驗證模型42於第六時點T6送出第四讀寫要求req4,且於第七時點T7接收到關聯於第四讀寫要求req4的第四回應rep4。第六時點T6與第七時點T7之間的延遲時間TL4小於第四讀寫要求req4對應的傳輸時間Tt4,且延遲時間TL4與第四讀寫要求req4對應的傳輸時間Tt4之間具有不足差值Tins4。於實務上,功能驗證模型42例如更判斷逾時總值TR是否大於零。在此實施例中,逾時總值TR等於零或為負值,功能驗證模型42以不足差值Tins4為補償時間。
前述的各傳輸時間Tt1~Tt4可以彼此不同,也可以彼此相同。在一實施例中,所述的傳輸時間係為依據多個讀寫指令所對應的實際傳輸時間取得的平均傳輸時間。在一實施例中,該功能驗證模型42依據至少一畫格(frame)中的多個切片(slice)提供多個讀寫要求,每一切片對應於所述的各要求的至少其中之一。功能驗證模型42係依據讀寫要求對應的至少一切片的類型(slice type)、至少一畫格的解析度或至少一畫格的編碼方式取得讀寫要求所需的總傳輸時間,且取得至少一畫格所對應的總讀寫要求次數。功能驗證模型42再依據總傳輸時間與總讀寫要求次數取得讀寫要求的平均傳輸時間。其中,編碼方式例如為H.264,當編碼方式為H.264時,切片類型例如為I類型、P類型或B類型。上述僅為舉例示範,但本發明所提供的功能驗證模型42並不限於上述的實施情境當中,而且也不限於以畫格為基礎的驗證方式。
於一實施例中,當該功能驗證模型42,例如編碼器23,其經由匯流排B存取動態隨機存取記憶體25所儲存之資料以進行編碼,功能驗證模型42依據至少一切片的類型、至少一畫格的解析度或至少一畫格的編碼方式與延遲時間計算出編碼過程的功率消耗值。所述的功率消耗值可以是平均功率或者是瞬時功率。
依據上述,本發明提供了一種時序估算方法,請參照圖5以說明所述的時序估算方法,圖5係為根據本發明一實施例所繪示之時序估算方法的方法流程圖。所述的時序估算方法適用於估算該待測系統2的功能驗證模型42的效能。功能驗證模型42依據至少一畫格(frame)中的多個切片(slice)提供多個讀寫要求,以經由匯流排存取記憶體。如圖所示,在時序估算方法的步驟S111,係依據總傳輸時間與總讀寫要求次數取得讀寫要求的平均時間。在時序估算方法的步驟S101中,係該功能驗證模型42於第一時點送出第一讀寫要求。在步驟S103中,於第二時點從匯流排接收關聯於第一讀寫要求的第一回應。在步驟S105中,計算第一時點與第二時點之間的延遲時間。在步驟S107中,當延遲時間大於等於第一讀寫要求對應的傳輸時間 時,送出第二讀寫要求。在步驟S109中,當延遲時間小於第一讀寫要求對應的傳輸時間時,於第二時點經過一補償時間後送出第二讀寫要求。補償時間不大於傳輸時間與延遲時間的差值。
綜合以上所述,本發明提供了一種時序估算方法與模擬裝置,在一實施例中,係以一個純功能不帶時間資訊的模型為基礎,示範如何根據不同參數以及不同資料格式反應出相對應的執行時間以及功率消耗。除此之外,本發明提供的時序估算方法與模擬裝置適用於多種特定的硬體架構,因此可以很快速的套用到任何一個符合標準的視訊處理單元上。藉由本發明提供的時序估算方法與模擬裝置,可以在數個禮拜內就反映出時間以及功率消耗等資訊。除此之外,使用者還可以根據目前系統的流量動態調整視訊處理單元的速度來反映相對應的流量。例如目前的系統流量很繁忙,處理的資料量會被減少來減輕整體的負擔;相對地,如果系統有很充裕的時間處理,處理的速度會被加快。這兩種不同的情況在反應時間跟功率消耗上會有非常大的差距,因此必須列入當作參考條件。除此之外,本發明提供的時序估算方法與模擬裝置更允許使用者自行定義某些特定參數來符合不同的視訊處理元件的輸入,而更具彈性並符合使用者各種不同的需求。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明。在不脫離本發明之精神和範圍內,所為之更動與潤飾,均屬本發明之專利保護範圍。關於本發明所界定之保護範圍請參考所附之申請專利範圍。
12、12’、12”‧‧‧處理器
14、14a、14b、14’、14”‧‧‧記憶體
142’‧‧‧第一記憶單元
144’‧‧‧第二記憶單元
22‧‧‧功能驗證模型
25‧‧‧動態隨機存取記憶體
26‧‧‧直接記憶體存取模組
27‧‧‧靜態隨機存取記憶體
3‧‧‧模擬裝置
B‧‧‧匯流排
rep1~rep5‧‧‧回應
req1~req4‧‧‧讀寫要求
T1~T8‧‧‧時點
TL1~TL4‧‧‧延遲時間
Tt1~Tt4‧‧‧傳輸時間
TR1~TR3‧‧‧逾時差值
Tins1~Tins4‧‧‧不足差值
14、14a、14b、14’、14”‧‧‧記憶體
142’‧‧‧第一記憶單元
144’‧‧‧第二記憶單元
22‧‧‧功能驗證模型
25‧‧‧動態隨機存取記憶體
26‧‧‧直接記憶體存取模組
27‧‧‧靜態隨機存取記憶體
3‧‧‧模擬裝置
B‧‧‧匯流排
rep1~rep5‧‧‧回應
req1~req4‧‧‧讀寫要求
T1~T8‧‧‧時點
TL1~TL4‧‧‧延遲時間
Tt1~Tt4‧‧‧傳輸時間
TR1~TR3‧‧‧逾時差值
Tins1~Tins4‧‧‧不足差值
圖1A係為根據本發明一實施例所繪示之待測系統的功能方塊示意圖。 圖1B係為根據本發明一實施例所繪示之模擬系統的功能方塊示意圖。 圖2係為執行圖1所示之本發明一實施例的模擬裝置之功能方塊示意圖。 圖3係為根據本發明一實施例所繪示之時序估算方法的步驟流程圖。 圖4A係為根據本發明一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。 圖4B係為根據本發明另一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。 圖4C係為根據本發明更一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。 圖4D係為根據本發明又一實施例所繪示之功能驗證模型與硬體模型的時序示意圖。 圖5係為根據本發明一實施例所繪示之時序估算方法的方法流程圖。 圖6係為根據本發明一實施例所繪示之功能驗證模型的功能方塊圖。 圖7係為根據本發明一實施例所繪示之功能驗證模型的功能方塊圖。
Claims (8)
- 一種時序估算方法,適用於一功能驗證模型,該功能驗證模型用以提供多個讀寫要求,以模擬經由一匯流排存取一記憶體,該時序估算方法包括:取得一第一時點,該功能驗證模型於該第一時點送出一第一讀寫要求;取得一第二時點,該功能驗證模型於該第二時點從該匯流排接收關聯於該第一讀寫要求的一第一回應;計算該第一時點與該第二時點之間的一延遲時間;判斷該延遲時間是否大於等於該第一讀寫要求對應的一傳輸時間;當該延遲時間大於等於該第一讀寫要求對應的該傳輸時間時,該功能驗證模型送出一第二讀寫要求;以及當該延遲時間小於該第一讀寫要求對應的該傳輸時間時,該功能驗證模型於該第二時點經過一補償時間後送出該第二讀寫要求,該補償時間不大於該傳輸時間與該延遲時間的差值。
- 如請求項1所述之時序估算方法,其中當該延遲時間大於等於該第一讀寫要求對應的該傳輸時間時,包括:計算該延遲時間與該傳輸時間的一逾時差值;以及將該逾時差值加入一逾時總值。
- 如請求項1所述之時序估算方法,其中當該延遲時間小於該第一讀寫要求對應的該傳輸時間時,包括: 計算該傳輸時間與該延遲時間的一不足差值;判斷一逾時總值是否大於零;當該逾時總值大於零時,令該補償時間為零, 並將該逾時總值扣除該不足差值;以及當該逾時總值不大於零時,以該不足差值為該補償時間。
- 如請求項1所述之時序估算方法,其中該傳輸時間為該些讀寫要求的平均傳輸時間。
- 如請求項4所述之時序估算方法,其中每一切片對應於該些要求的至少其中之一,該時序估算方法更包括:依據該些讀寫要求對應的至少一切片的類型(slice type)、至少一畫格的解析度或該至少一畫格的編碼方式取得該些讀寫要求所需的一總傳輸時間;取得該至少一畫格所對應的一總讀寫要求次數;以及依據該總傳輸時間與該總讀寫要求次數取得該些讀寫要求的平均傳輸時間。
- 如請求項1所述之時序估算方法,其中該些讀寫要求其中之一具有一第一讀寫長度,該功能驗證模型具有一第二讀寫長度,該時序估算方法更包括:判斷該第一讀寫長度是否相等於該第二讀寫長度;以及當判斷該第一讀寫長度與該第二讀寫長度不相等時,調整該些讀寫要求的讀寫長度為該第二讀寫長度。
- 如請求項1所述之時序估算方法,更包括:依據該至少一切片的類型(slice type)、該至少一畫格的解析度或該至少一畫格的編碼方式與該些延遲時間計算出一功率消耗值。
- 一種模擬裝置,包括:一處理器;一記憶體,電性連接該處理器,該記憶體用以儲存至少一指令;其中,當該處理器執行該至少一指令時,該模擬裝置執行如請求項1至請求項7其中任一所述之時序估算方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106118944A TWI627521B (zh) | 2017-06-07 | 2017-06-07 | 時序估算方法與模擬裝置 |
CN201710485998.2A CN109002568B (zh) | 2017-06-07 | 2017-06-23 | 时序估算方法与时序估算装置 |
US15/843,375 US10896276B2 (en) | 2017-06-07 | 2017-12-15 | Timing esimation method and simulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106118944A TWI627521B (zh) | 2017-06-07 | 2017-06-07 | 時序估算方法與模擬裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI627521B true TWI627521B (zh) | 2018-06-21 |
TW201903555A TW201903555A (zh) | 2019-01-16 |
Family
ID=63256172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106118944A TWI627521B (zh) | 2017-06-07 | 2017-06-07 | 時序估算方法與模擬裝置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10896276B2 (zh) |
CN (1) | CN109002568B (zh) |
TW (1) | TWI627521B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120089385A1 (en) * | 2010-10-12 | 2012-04-12 | Hsu Che-Mao | Memory modeling methods and model generators |
TW201232408A (en) * | 2011-01-19 | 2012-08-01 | Nat Univ Tsing Hua | Cycle-count-accurate (CCA) processor modeling for system-level simulation |
CN105446795A (zh) * | 2014-09-22 | 2016-03-30 | 波音公司 | 虚拟机操作中的并行化 |
CN106201689A (zh) * | 2016-07-07 | 2016-12-07 | 哈尔滨工程大学 | 一种具有时序控制的多队列事件注入装置和方法 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020152060A1 (en) * | 1998-08-31 | 2002-10-17 | Tseng Ping-Sheng | Inter-chip communication system |
US20060117274A1 (en) * | 1998-08-31 | 2006-06-01 | Tseng Ping-Sheng | Behavior processor system and method |
US9195784B2 (en) * | 1998-08-31 | 2015-11-24 | Cadence Design Systems, Inc. | Common shared memory in a verification system |
US8868914B2 (en) * | 1999-07-02 | 2014-10-21 | Steven W. Teppler | System and methods for distributing trusted time |
EP1467294A3 (en) | 2003-04-04 | 2005-06-01 | Interuniversitair Microelektronica Centrum Vzw | Design method for electronic systems using library of hardware components with performance parameters and cost functions |
JP4020849B2 (ja) * | 2003-09-25 | 2007-12-12 | 松下電器産業株式会社 | シミュレーション装置、シミュレーションプログラム、記録媒体及びシミュレーション方法 |
US20060080076A1 (en) | 2004-10-12 | 2006-04-13 | Nec Laboratories America, Inc. | System-level power estimation using heteregeneous power models |
EP1736905A3 (en) | 2005-06-21 | 2007-09-05 | Nvidia Corporation | Building integrated circuits using logical units |
CN102231835B (zh) * | 2005-07-22 | 2013-04-17 | 三菱电机株式会社 | 图像解码装置及方法 |
WO2007066319A1 (en) | 2005-12-08 | 2007-06-14 | Mentor Graphics Corporation | Conversion of switching signals of a circuit simulation into a transaction model |
US8543367B1 (en) | 2006-02-16 | 2013-09-24 | Synopsys, Inc. | Simulation with dynamic run-time accuracy adjustment |
US7917719B2 (en) * | 2006-12-04 | 2011-03-29 | Sandisk Corporation | Portable module interface with timeout prevention by dummy blocks |
WO2009050768A1 (ja) * | 2007-10-15 | 2009-04-23 | Fujitsu Limited | シミュレート方法、電子装置の設計方法、シミュレートプログラムおよびシミュレーション装置 |
JP5034955B2 (ja) | 2008-01-08 | 2012-09-26 | 富士通株式会社 | 性能評価シミュレーション装置、性能評価シミュレーション方法および性能評価シミュレーションプログラム |
US9015649B2 (en) | 2010-07-19 | 2015-04-21 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method and apparatus for electronic system model generation |
TW201224748A (en) | 2010-12-06 | 2012-06-16 | Ind Tech Res Inst | Transaction level system power estimation method and system |
GB2488516A (en) * | 2011-02-15 | 2012-09-05 | Advanced Risc Mach Ltd | Using priority dependent delays to ensure that the average delay between accesses to a memory remains below a threshold |
US8904209B2 (en) | 2011-11-14 | 2014-12-02 | Microsoft Corporation | Estimating and managing power consumption of computing devices using power models |
US9141736B2 (en) | 2012-09-02 | 2015-09-22 | Ninad Huilgol | Method for power estimation for virtual prototyping models for semiconductors |
CN102809928B (zh) * | 2012-08-10 | 2014-08-20 | 南京南瑞继保电气有限公司 | 一种工业企业热力设备能耗的控制优化方法 |
US20140107999A1 (en) | 2012-10-12 | 2014-04-17 | Silicon Integration Initiative, Inc. | Multi-level abstract power modeling method |
CN103092098B (zh) * | 2012-12-28 | 2015-10-14 | 沈阳东软医疗系统有限公司 | 一种多通道时序控制的方法和装置 |
US9507883B2 (en) | 2013-06-24 | 2016-11-29 | Altera Corporation | Method and apparatus for implementing a system-level design tool for design planning and architecture exploration |
US9563724B2 (en) | 2013-09-28 | 2017-02-07 | International Business Machines Corporation | Virtual power management multiprocessor system simulation |
CN104598659B (zh) * | 2013-10-31 | 2018-09-18 | 格芯公司 | 对数字电路进行仿真的方法和设备 |
TWI531187B (zh) * | 2014-11-24 | 2016-04-21 | 財團法人工業技術研究院 | 晶片上網路之時序功率估算裝置與方法 |
-
2017
- 2017-06-07 TW TW106118944A patent/TWI627521B/zh active
- 2017-06-23 CN CN201710485998.2A patent/CN109002568B/zh active Active
- 2017-12-15 US US15/843,375 patent/US10896276B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120089385A1 (en) * | 2010-10-12 | 2012-04-12 | Hsu Che-Mao | Memory modeling methods and model generators |
TW201232408A (en) * | 2011-01-19 | 2012-08-01 | Nat Univ Tsing Hua | Cycle-count-accurate (CCA) processor modeling for system-level simulation |
CN105446795A (zh) * | 2014-09-22 | 2016-03-30 | 波音公司 | 虚拟机操作中的并行化 |
CN106201689A (zh) * | 2016-07-07 | 2016-12-07 | 哈尔滨工程大学 | 一种具有时序控制的多队列事件注入装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201903555A (zh) | 2019-01-16 |
CN109002568A (zh) | 2018-12-14 |
US10896276B2 (en) | 2021-01-19 |
US20180357337A1 (en) | 2018-12-13 |
CN109002568B (zh) | 2022-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5963282B2 (ja) | 割り込み分配スキーム | |
CN111742305B (zh) | 调度具有不统一等待时间的存储器请求 | |
US7821518B1 (en) | Fairly arbitrating between clients | |
US10191868B2 (en) | Priority framework for a computing device | |
JP6137582B2 (ja) | 電子デバイス、メモリコントローラ、装置 | |
JP6335335B2 (ja) | タイルベースのレンダリングgpuアーキテクチャのための任意のタイル形状を有する適応可能なパーティションメカニズム | |
WO2019019926A1 (zh) | 系统参数的优化方法、装置及设备、可读介质 | |
JP6411557B2 (ja) | キャッシュ要求を調停するシステムおよび方法 | |
JP2019502201A (ja) | マルチスレッドアクセスのためのソフトウェア定義のfifoバッファ | |
JP2017518574A (ja) | フラッシュメモリベースのストレージデバイスの入力/出力仮想化(iov)ホストコントローラ(hc)(iov−hc)におけるコマンドトラッピング | |
US20230273747A1 (en) | Arbitration method and device, and non-transitory computer-readable storage medium | |
TWI627521B (zh) | 時序估算方法與模擬裝置 | |
US20130262812A1 (en) | Hardware Managed Allocation and Deallocation Evaluation Circuit | |
US11907144B1 (en) | Early semaphore update | |
JP4020849B2 (ja) | シミュレーション装置、シミュレーションプログラム、記録媒体及びシミュレーション方法 | |
CN110020129B (zh) | 点击率校正方法、预估方法、装置、计算设备及存储介质 | |
US8593472B1 (en) | System and method for accessing a frame buffer via a storage driver | |
CN106909522B (zh) | Gpu写请求数据的延迟控制方法、装置以及云计算系统 | |
CN113439260B (zh) | 针对低时延存储设备的i/o完成轮询 | |
US10051087B2 (en) | Dynamic cache-efficient event suppression for network function virtualization | |
WO2023206332A1 (en) | Enhanced latency-adaptive viewport prediction for viewport-dependent content streaming | |
US12204757B1 (en) | Strong ordered transaction for DMA transfers | |
US20220413909A1 (en) | Techniques to enable quality of service control for an accelerator device | |
JP2007323473A (ja) | 情報処理装置 | |
WO2018049821A1 (zh) | 请求源响应的仲裁方法、装置及计算机存储介质 |