999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

用網格實現大規模集成電路仿真文件模式編譯的研究

2006-12-31 00:00:00鄧倩妮
計算機應用研究 2006年8期

(1.上海交通大學 軟件學院, 上海 200030; 2.安捷倫科技(上海)有限公司, 上海 200131; 3.上海交通大學 計算機科學與工程系, 上海 200030)

摘要:提出用網格服務實現分布式VCD的編譯,并給出了VCD分割算法的分析,在半導體測試程序開發中快速有效地進行VCD 模式的編譯,同時也介紹了該網格系統的工作流程和部署。

關鍵詞: 自動測試系統; 網格服務; 網絡服務; VCD編譯; 半導體測試

中圖法分類號: TP391文獻標識碼: A

文章編號: 1001 3695(2006)07 0225 03

Massive VCD Pattern Compiling with Grid Technology

ZHANG Hua 1,2 , DENG Qian ni3

(1.College of Software Engineering, Shanghai Jiaotong University, Shanghai 200030, China; 2.Agilent Technologies (Shanghai)Co.,Ltd.,Shanghai 200131, China; 3.Dept.of Computer Science Engineering, Shanghai Jiaotong University, Shanghai 200030,China)

Abstract: Compiling VCDs to ATE recognized patterns is an essential work to develop semiconductor test program.Proposes to deploy the VCD compiling program into a distributed environment by grid service technology. An analysis of the VCD splitting al

gorithm is also given in this paper,to compile VCDs to Patterns fast and effecti vely, together with a detail description of how this web service based grid system works.

Key words: ATE; Grid Service; Web Service; VCD Compiling; Semiconductor Test

1 背景介紹

1.1 半導體測試及VCD的編譯

在集成電路行業中,設計和測試是兩個不可分割的部分。所謂半導體測試,又稱集成電路芯片測試,是指在集成電路芯片的輸入端輸入一定的信號,并在芯片輸出端檢測輸出的信號是否符合設計的邏輯和規范。芯片上所有管腳為了完成某一功能的輸入和輸出的集合就稱為模式(Pattern)。為了滿足大規模自動測試的需求,芯片廠商均使用自動測試系統(Automated Test Equipment, ATE)測試芯片。控制自動測試系統測試某一類芯片的軟件稱為測試程序。芯片設計工程師在進入測試階段之前,一般都會在仿真軟件中檢驗設計的正確性,并產生仿真文件,包括信號名稱、輸入信號和期望輸出等。大多數仿真文件都是VCD(Value Change Dump)格式,所以又稱為VCD文件。開發測試程序中的一個重要工作是將集成電路設計中產生的VCD文件編譯成可供測試的模式。隨著半導體制程進入深亞微米時代,小小一塊芯片可以實現很高的集成度,功能也趨于復雜,于是仿真文件也隨之龐大和繁雜,造成編譯的時間越來越長,所需的存儲資源和計算資源也越來越多。在實際應用中,一臺SUN Blade 150的工作站(擁有512MB)內存,編譯一個200MB左右大小的VCD需要20min~30min,且大量計算資源和存儲資源被占用,幾乎不能做其他工作。若VCD文件在1GB以上,則要求配置強大的工作站,花費數小時乃至一天才能完成編譯工作。倘若在編譯過程中出現錯誤如資源耗盡,或其他一些與ATE相關的問題,則之前數小時的工作就前功盡棄了。通常,一塊芯片的仿真文件可以有幾十個甚至成百上千個。編譯這些文件是一項耗時、耗力、耗資源的工作。可以說電路仿真文件的模式轉換是一個大規模計算的問題。對于此問題,可部署網格計算程序來解決。

1.2 網格的基本思想

網格是一個新出現的概念,代表了一種先進的技術和基礎設施,是繼Internet技術后又一重大技術進步。

所謂網格,就是一個集成的資源與計算環境,或者說一個計算資源池[8]。網格能充分吸納各種計算資源,將之轉換成隨處可得的、標準的、經濟的計算能力。網格的思想借鑒了電力網的概念,即用戶只需要一個插座就可以獲得無窮的電能,而不用關心該電能是如何產生的以及來自何處。網格技術亦希望可隨處得到強大的、統一的計算和資源能力。

網格的出現,一開始就是為了解決大規模計算問題,所以又稱網格計算(Grid Computing)[3]。網格計算的初衷是為了充分利用閑置的計算資源,若某臺計算機正在進行其他作業而無法開始另一個作業時,可以將該作業轉移到另一臺較空閑的計算機上完成。推而廣之,則可將該作業分發到多臺計算機上并行地完成此項運算。該思想是基于大多數企業或組織的計算機真正用于繁忙計算的時間不到5%,大多數服務器只使用了其 15% 以下的處理能力來滿足用戶需要,剩下的服務器時間(CPU、RAM、硬盤等)仍然空閑著未被使用的事實。如果能充分利用這些空閑資源將有效提高工作效率[1]。

網格計算提供CPU資源和存儲資源。這為大量數據的大規模運算提供了良好的保證。另外網格計算也可以包括其他資源——特殊設備(如半導體自動測試系統ATE)、特殊軟件、軟件許可以及其他服務等[2]。因此網格計算可以在企業,尤其是高科技企業中得到廣泛的應用。

現代的網格是基于開放網格服務架構(OGSA)的體系結構[4]。OGSA是一種基于網格服務的分布式交互和計算體系結構,用來確保異構系統間的互操作性,這樣不同類型的系統就可以進行通信、共享信息。它利用新興的Web服務定義了Web服務定義語言(WSDL)接口[5,6]。所有的服務均遵循指定的網格服務接口和行為。OGSA是一個面向服務的網絡架構(SOA)。它提供一組遵守特別約定的、定義明確的接口。這些接口發現解決動態服務創建、生命周期管理、通知和可管理性等方面的問題;約定解決命名和升級問題。OGSA 還提供了一種網格安全機制來確保服務間所有的通信均是安全的。這對于在一個異構的,跨Internet的企業網中架構網格是非常適用的。

2 算法研究

2.1 概述

將網格技術運用于VCD模式編譯的一個基本思想就是將一個作業拆分并分配到不同的計算節點(工作站),以充分利用已有的存儲資源和計算資源。其實現可分為以下兩類:

(1)在一次作業中,由客戶端將多個VCD文件分配到不同的工作站編譯,然后將生成的模式文件(Pattern)在客戶端匯總,完成該次作業。

(2)在一次作業中,客戶端將一個大的VCD文件分割成數個較小的子文件,并將這些子文件分配到不同的工作站編譯,然后將生成的子Pattern送回客戶端裝配成一個完整的Pattern,完成該次作業。第一類實現不涉及到對源文件的處理,每個小作業相當于一個獨立的作業在各計算節點完成,因此實現較為方便。這里著重討論第二類方法。為了程序的統一性,第二種方法的實現應看作是第一類實現的超集,即將一個大的VCD父文件分割成數個小的VCD格式的子文件,然后再調用第一類實現。若令第一類方法的函數表示為 Y=G(X) 。其中, G為編譯函數,X 表征VCD集, Y 表征Pattern集。

則第二類的實現可表述為

y=C(Y′),Y′=G(X′),X′=S(x)

故 y=C(G(S(x)))

其中, S為分割函數,C為合并函數, x, y是X,Y中的元素,X′,Y′分別是X,Y 的子集。因此,在第一類實現的基礎上,第二類實現必須滿足:

(1)原文件的分割,并保持子文件的一致性。

所謂子文件的一致性,是指:

①子文件中信號的邏輯關系必須與原文件保持一致,不破壞原文件的邏輯和時序, 也即 x=S-1 (X′);

②子文件必須保持VCD格式,并可作為一個單獨的作業被處理,即 X′X。

只有滿足以上兩個條件才能認為分割是成功的。

(2)子Pattern的合并,并保持與父Pattern的一致性。

VCD的分割和合并是一個黑箱的過程,對用戶而言是不透明的。用戶看到的只是一個輸入和一個輸出。因此合并后的Pattern應與不進行分割而直接編譯生成的Pattern是一致的,即滿足 y=C(G(S(x))), 且 y=G(x)。

因為切割和合并的工作將在客戶端完成,因此必須要求切割算法S和合并算法C足夠簡單,計算資源和存儲資源的消耗較少,而將較復雜的工作交由各計算節點完成。

2.2 VCD分割算法的分析

(1)VCD的構成。VCD仿真文件是ASCII格式的文檔,它記錄了設計中所有信號值的變化[9]。其記錄順序是基于事件的,即當只有信號變化時才會記錄在VCD文件中。

VCD從結構上可以分成三個部分:①頭部分,記錄了VCD產生的時間和版本以及最重要的——時間單位的長度。若時間單位為100ps,則“#3000”表示從零時刻開始第300ns的時間點。②信號定義部分,定義了信號名及信號代碼。③波形部分,定義了每個信號(用信號代碼表示)在某個時間點的跳變(即事件)。

以下是一個簡單的VCD文件:

以上的VCD代碼定義了三個信號,TDI, TDO和TCK。它所代表的信號波形如圖1所示。其中橫軸為時間軸,以ns為單位;縱軸為信號軸,分別有TDI, TDO, TCK三個信號。

從本質上講VCD是一個二維的圖表,其中 X軸是時間,Y 軸是信號。因此切割可以從兩方面入手,即按時間點切割和按信號分割。

(2)時間點切割算法。所謂按時間點切割是指將VCD文件按時間順序分割成幾個小塊,再包裝成符合VCD格式的小文件。如上例VCD文件,可以在200ns處切割,切成0ns~200ns和200ns~300ns兩個VCD文件,每個文件均包括TDI, TDO和TCK三個信號。因為VCD文件是基于時間流的,因此每個切割后的VCD文件必須包含一個序號,表明每個小塊的前后順序以便在拼裝時參照該序號順序進行排列。

此方法的優點是操作簡便,客戶端的計算開銷較小,且生成的文件大小可以任意控制。有利于網格計算的環境特點。但它也有較嚴重的缺點,即2.1節中提到切割后產生的VCD集 X′應滿足X′X。 因為 X中的元素是相互獨立且無關聯的,也即X ′中的元素也應滿足相互獨立性。但由于時間是有前后順序的,因此該方法產生 X ′中的元素有基于時間的弱關聯,并不是完美的 X 子集。在較簡單時序的VCD切割中,時間上的弱關聯不會有影響,但若時序較為復雜,就會產生意想不到的情況,使處理時間增長,開銷增大甚至導致失敗。

另外由于生成的子Pattern塊必須按序號順序拼裝,由于網格計算的特點,不同塊的處理時間有長有短,結果到達的時間也有先后,使得在拼裝過程中會出現因為缺少某一順序塊還未到達,拼裝程序會暫時停止等待該塊到達以后再繼續的情況。這樣就會造成處理時間增大和資源的浪費等不利情況。(3)信號分割算法。所謂按信號分割是指將每個信號的波形取出,并包裝成數個小的VCD文件,其中每個VCD文件只包含一個信號或一個信號組。如上例,就可以分成TDI, TDO, TCK三個VCD文件。因為各個信號之間的關系基本上是獨立的(也會出現一個信號與另外一個信號或多個信號有關聯的情形。在這種情況下可以采用預處理將這些關聯去除或將這些關聯信號合并入一個VCD文件中)。因此該方法不會出現時間點切割算法的嚴重缺點。在拼裝時也無須等待其他塊,可以實現快速拼裝。可以說信號分割算法滿足了切割的要求,可以處理各種復雜的情況。當然信號分割算法也有缺點:①該算法無法按使用者的意愿決定切割后塊的大小,缺少了一定的靈活性,而且分割后的塊可能仍然較大(當然較原文件而言已經極小了)。②客戶端需要一定的預處理,增大了客戶端的開銷。

對于第①種缺點,因為現在一般芯片的信號管腳都較多,少則100個,多則超過1000個,且功能越復雜,管腳越多。因此若一個VCD有超過1GB的大小,則分割后每個VCD塊的大小也可能不超過100MB,甚至只有幾兆,這樣的大小是可以接受的。對于第②種缺點,預處理的算法還是較為簡單的,即使原文件較大,預處理的時間相對于直接編譯原文件的時間可以忽略不計。因此信號分割在算法時間上仍然很有優勢。

3 網格系統的設計與部署

對于部署在網格環境中的該系統,其工作流程如下:

(1)服務申請者在客戶端提交任務。客戶端根據客戶輸入決定是采用直接分發還是切割再分發。若直接分發則進入下一步;若切割則調用預處理程序后再進入下一步。

(2)客戶端檢查注冊中心服務器(UDDI或WSIL),取得可提供編譯服務的計算節點的URL引用。

(3)客戶端向各計算節點(包括本機)提交服務申請,各計算節點回復WSDL和服務數據(Serv

ice Data)。

(4)客戶端根據獲得的數據向所有可用的計算節點分配任務,并生成網格服務實例,各節點獨立計算。

(5)計算節點向客戶端反饋計算結果,并保留該網格服務實例。

(6)客戶端根據計算節點反饋或客戶輸入決定是否保留某計算節點上的服務實例。若服務已經準確完成則消滅該實例,反之則保留。

(7)客戶端將結果提交給申請者,任務完成。

系統設計整體思想為:①客戶端負責管理與分配計算任務;②每個計算節點僅暴露負責VCD Pattern編譯的相關接口;③使用基于Web服務拓展的網格服務,以XML/SOAP作為信息交換協議,以HTTP及FTP作為傳輸協議;④各計算節點負責提供計算資源并向客戶端提交計算結果,客戶端通過計算節點提供的接口與各計算節點進行交互,整體結構如圖2所示;⑤客戶端本身亦可為計算節點,客戶端與各計算節點是對等的,每個計算節點均可以是客戶端,反之亦然;⑥計算節點擁有服務實例隊列,并根據任務優先級排序。

4 總結

VCD的文件編譯成Pattern是每個ATE公司和半導體設計公司均會遇到的問題。一般情況下這項工作對于工程師而言是一個吃力且耗時的工作。因為一次作業會占用一臺工作站大量的時間和資源,因此也占用了大量的人力。但同時,整個企業內部在這個時間段內卻可能有大量的計算機閑置,造成資源分配的不均衡,這個現象在跨國企業里尤為明顯。如何充分利用企業內部的計算資源,提高工作效率,是每個企業都在追尋的目標,而網格就是答案。傳統的編譯VCD的時間在網格內可以縮短為原來的幾百分之一甚至千分之一, 原先需要數小時甚至一個晚上才能得到的結果現在只需十幾分鐘就可以解決了,這對于提高工作效率的影響是巨大的。

本文所探討的目的就是希望通過網格服務改變現有的在ATE界的一些工作模式,并推而廣之,為所有半導體界需要大規模計算的領域提供解決方案的參考。同時隨著網格服務與網絡服務的日益融合,Internet技術會出現新的巨大飛躍。作為高科技之本的半導體業如何駕馭這個新的浪潮,也值得我們繼續深入地思考。

參考文獻:

[1] Ian Foster,Carl Kesselman,Steven Tuecke.The Anatomy of the Grid Enabling Scalable Virtual Organizations[EB/OL].http://www.globus.org/research/papers/anatomy.pdf.

[2] Viktors Berstis.Fundamentals of Grid Computing EB/OL].http://www.redbooks.ibm.com/redpapers/pdfs/redp3613.pdf,2002.

[3] Matt Haynos.Perspectives on Grid:Grid Computing next generation Distributed Computing[EB/OL].http://www 106.ibm.com/de veloperworks / grid/library/gr heritage/.

[4] Ian Foster, Carl Kesselman, Jeffrey Nick, et al. Physiology of the Grid[EB/OL].http://www.globus.org/research/papers/ogsa.pdf.

[5] Liang Jie Zhang.Developing Grid Computing Applications[EB/OL].http://www 106.ibm.com/developerworks/library/gr grid1/, http:www 106.ibm.com/developerworks/library/gr grid2/.

[6] M artin C Brown.Merging Grids and Web Services[EB/OL].http://www 106.ibm.com/developerworks/grid/library/gr web/,2003.

[7] Martin C Brown.Grid Computing moving to a Standardized PlatformEB/OL].http://www 106.ibm.com/developerworks/library/gr stanp

lat.html, 2004.

[8] The DOE Common Component Architecture Project[EB/OL].http://www.extreme.indiana.edu/~gannon/cca_report.html.

[9] Institute of Electrical and Electronics Engineers, Inc.,[Z].IEEE Std 1362 2001,2001.

作者簡介:張驊(1978-),男,開發工程師,軟件工程碩士,研究方向為網格服務、半導體設計和測試。

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。

主站蜘蛛池模板: 日本一区二区三区精品AⅤ| 日韩 欧美 小说 综合网 另类 | 亚洲一级色| 日韩一区二区三免费高清| 99精品视频九九精品| 免费毛片网站在线观看| 精品人妻无码区在线视频| 亚洲无码A视频在线| 日韩精品一区二区三区swag| 亚州AV秘 一区二区三区| 亚洲不卡影院| 亚洲综合18p| 国产成人亚洲精品无码电影| 国产a v无码专区亚洲av| 国产免费看久久久| 91麻豆国产视频| 国产午夜福利在线小视频| 午夜国产大片免费观看| 夜夜操天天摸| 亚洲综合色区在线播放2019| 精品99在线观看| 特黄日韩免费一区二区三区| 久久五月视频| 国产人成乱码视频免费观看| 日韩精品高清自在线| 亚洲一区二区日韩欧美gif| 72种姿势欧美久久久久大黄蕉| 欧美国产视频| 国产99热| 色婷婷丁香| 精品人妻无码区在线视频| 2020最新国产精品视频| 国产成人免费视频精品一区二区| 亚洲国产亚综合在线区| 婷婷色狠狠干| 亚洲中字无码AV电影在线观看| 国内精品九九久久久精品| 69av免费视频| 久久久久久久蜜桃| 在线免费无码视频| 直接黄91麻豆网站| 天堂在线www网亚洲| 亚洲人成网站在线观看播放不卡| 中文字幕在线看| 欧美亚洲综合免费精品高清在线观看| 中文字幕伦视频| 一本大道香蕉高清久久| 欧美日韩亚洲综合在线观看| 精品一区二区三区水蜜桃| 真实国产乱子伦高清| 中文字幕在线视频免费| 97精品国产高清久久久久蜜芽| 国产网友愉拍精品| 国产精品永久在线| A级毛片无码久久精品免费| 亚洲国产成人精品青青草原| 成人伊人色一区二区三区| 色国产视频| 国产在线小视频| 午夜小视频在线| 亚洲色成人www在线观看| 国产精品免费电影| 伊人久久综在合线亚洲91| 成人国产免费| 亚洲精品无码专区在线观看 | 老司机久久精品视频| 婷婷六月天激情| 亚洲色欲色欲www网| 免费观看欧美性一级| 2024av在线无码中文最新| 精品视频一区在线观看| 伊人AV天堂| 99国产在线视频| 久久永久视频| 四虎永久免费网站| 极品国产一区二区三区| 91国内视频在线观看| 国产第三区| 天天综合色天天综合网| 三上悠亚在线精品二区| 精品国产成人a在线观看| 一本一道波多野结衣一区二区|