電子系統(tǒng)EDA集成開發(fā)環(huán)境框架結(jié)構(gòu)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:EDA集成開發(fā)環(huán)境是電子系統(tǒng)開發(fā)必備的工具與手段。本文根據(jù)目前的EDA工具軟件及其套件結(jié)構(gòu)和電子系統(tǒng)的開發(fā)需要,提出三種不同類型的典型EDA集成開發(fā)環(huán)境框架結(jié)構(gòu)——板級(jí)、芯片級(jí)和綜合型電子系統(tǒng)EDA集成開發(fā)環(huán)境框架結(jié)構(gòu),并以圖示的方式進(jìn)行描述。
關(guān)鍵詞:電子系統(tǒng) 電子設(shè)計(jì)自動(dòng)化(EDA) 集成開發(fā)環(huán)境(IDE) SoC 框架結(jié)構(gòu)
引 言
電子系統(tǒng)EDA集成開發(fā)環(huán)境IDE(Integrated Development Environment)是指根據(jù)電子系統(tǒng)設(shè)計(jì)流程,將設(shè)計(jì)流程中各個(gè)階段所需要的不同的EDA工具軟件集成在一個(gè)硬件平臺(tái)上,進(jìn)行項(xiàng)目設(shè)計(jì)開發(fā)的軟硬工作環(huán)境。在此環(huán)境中,項(xiàng)目的設(shè)計(jì)數(shù)據(jù)通過(guò)文件方式在各個(gè)EDA工具之間流轉(zhuǎn),就像工廠里生產(chǎn)流水線上的產(chǎn)品流動(dòng)一樣,直到產(chǎn)品生產(chǎn)全過(guò)程結(jié)束。
由于各個(gè)EDA工具開發(fā)商在不同的設(shè)計(jì)環(huán)節(jié)有不同的專長(zhǎng),其EDA工具也有不同的特色。有的EDA工具行為描述能力強(qiáng),不僅具有算法級(jí)和寄存器傳輸級(jí)行為設(shè)計(jì)描述能力,而且還具有系統(tǒng)級(jí)行為設(shè)計(jì)描述能力;有的EDA工具的邏輯綜合效率高,占用資源少;有的EDA工具時(shí)序仿真較為精確,設(shè)計(jì)的項(xiàng)目能夠工作于較高的頻率;有的EDA工具界面友好,容易使用。選擇優(yōu)秀的EDA工具,構(gòu)成超級(jí)的電子系統(tǒng)EDA集成開發(fā)環(huán)境是項(xiàng)目開發(fā)工程師首要的任務(wù)之一。通常,選擇優(yōu)秀的EDA工具有如下幾個(gè)約束條件:①EDA工具的使用授權(quán)限制;②設(shè)計(jì)語(yǔ)言、設(shè)計(jì)數(shù)據(jù)、設(shè)計(jì)格式的兼容性;③EDA工具與計(jì)算機(jī)及其操作系統(tǒng)的兼容性問(wèn)題;④設(shè)計(jì)項(xiàng)目實(shí)際需要的限制。
不同的設(shè)計(jì)對(duì)象,其EDA集成開發(fā)環(huán)境架構(gòu)有很大的差別。例如,在經(jīng)典的板級(jí)電子系統(tǒng)設(shè)計(jì)中,通常是將許多專用集成電路(ASIC)芯片、通用的門電路芯片設(shè)計(jì)在一塊印刷電路板(PCB)上來(lái)完成整個(gè)電子系統(tǒng)設(shè)計(jì),其設(shè)計(jì)的基本素材的集成電路芯片;在現(xiàn)代的芯片級(jí)電子系統(tǒng)設(shè)計(jì)中,通常是將許多的軟、硬知識(shí)產(chǎn)權(quán)(IP)核或電路模塊設(shè)計(jì)在一個(gè)超在規(guī)模集成電路芯片上來(lái)完成整個(gè)電子系統(tǒng)設(shè)計(jì),其設(shè)計(jì)的基本素材是可復(fù)用的IP核或電路模塊。隨著集成電路技術(shù)的發(fā)展,電子系統(tǒng)設(shè)計(jì)開始逐漸從經(jīng)典的板級(jí)系統(tǒng)設(shè)計(jì)轉(zhuǎn)化為現(xiàn)代的芯片級(jí)系統(tǒng)設(shè)計(jì),因此電子系統(tǒng)設(shè)計(jì)工程師的開發(fā)工作也逐漸從板上電子系統(tǒng)設(shè)計(jì)轉(zhuǎn)向片上系統(tǒng)(SoC)設(shè)計(jì),設(shè)計(jì)的基本構(gòu)件也從通用的IC轉(zhuǎn)為復(fù)用的IP。
本文根據(jù)目前的EDA工具軟件或套件的結(jié)構(gòu),從電子系統(tǒng)的設(shè)計(jì)開發(fā)需要出發(fā),把電子系統(tǒng)EDA集成開發(fā)環(huán)境分為三種類型:板級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境、芯片級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境和綜合型電子系統(tǒng)EDA集成開發(fā)環(huán)境,并且提出此三種類型的EDA集成開發(fā)環(huán)境的框架結(jié)構(gòu),以便電子系統(tǒng)設(shè)計(jì)者從總體上了解和掌握電子系統(tǒng)集成開發(fā)環(huán)境使用方法和構(gòu)造方法。
1 板級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境
典型的板級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境如圖1所示。此種類型的集成開發(fā)環(huán)境通常是由板級(jí)電子系統(tǒng)的硬件系統(tǒng)集成設(shè)計(jì)環(huán)境(即PCB集成設(shè)計(jì)環(huán)境)和軟件系統(tǒng)集成設(shè)計(jì)環(huán)境兩個(gè)部分構(gòu)成的。
任何一種板級(jí)電子系統(tǒng)都是由硬件和軟件兩個(gè)子系統(tǒng)組成的,因此一個(gè)完整的板級(jí)電子系統(tǒng)集成開發(fā)環(huán)境,除了用于硬件系統(tǒng)開發(fā)的EDA集成設(shè)計(jì)環(huán)境外,還應(yīng)當(dāng)包括軟件實(shí)時(shí)仿真開發(fā)調(diào)試環(huán)境。對(duì)于低端的微控制器應(yīng)用系統(tǒng),通常是由硬件仿真器及其配套仿真軟件組成的(見圖1中部);對(duì)于高端32位嵌入式處理器應(yīng)用系統(tǒng),通常是一種基于嵌入式實(shí)時(shí)操作系統(tǒng)RTOS(Real-Time Operating System)平臺(tái)(見圖1底部)。
2 芯片級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境
芯片級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境,也是一種集成電路(IC)EDA集成開發(fā)環(huán)境。在集成電路設(shè)計(jì)中,不同的設(shè)計(jì)方法和設(shè)計(jì)流程需要不同的EDA集成開發(fā)環(huán)境。根據(jù)設(shè)計(jì)對(duì)象的不同,芯片級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境可分為專用集成電路(ASIC)集成設(shè)計(jì)環(huán)境和片上系統(tǒng)(SoC)集成設(shè)計(jì)環(huán)境。這里需特別指出的是SoC和ASIC概念的區(qū)別。從電子線路的角度理解可以認(rèn)為:ASIC是一種具有某種特定功能的大規(guī)模集成電路芯片,如VGA圖像處理芯片、PCI接口芯片、視頻放大芯片等;而SoC是一種集成了微處理器、存儲(chǔ)器、外圍電路和軟件系統(tǒng)程序的自成系統(tǒng)的超大規(guī)模集成電路芯片。
(1)ASIC集成設(shè)計(jì)環(huán)境
典型的ASIC集成設(shè)計(jì)環(huán)境如圖2所示。由圖2可以得出,在此集成設(shè)計(jì)環(huán)境的設(shè)計(jì)流程中,可以生成五種不同類型的產(chǎn)品:①經(jīng)過(guò)功能驗(yàn)證后的軟IP核;②經(jīng)邏輯綜合驗(yàn)證后的固IP核,③可編程的專用集成電路(ASIC)器件;④由ASIC版圖生成的硬IP核;⑤由代工廠生產(chǎn)的ASIC芯片。
(2)SoC集成設(shè)計(jì)環(huán)境
典型的SoC集成設(shè)計(jì)環(huán)境如圖3所示。此集成環(huán)境是一種典型的軟硬協(xié)同設(shè)計(jì)集成環(huán)境(或平臺(tái))。在此集成設(shè)計(jì)環(huán)境的設(shè)計(jì)流程中,也可以生成五種不同類型的產(chǎn)品:①經(jīng)過(guò)功能驗(yàn)證后的軟IP核;②經(jīng)邏輯綜合驗(yàn)證后的固IP核,③可編程的片上系統(tǒng)(SoPC)器件;④由SoC版圖生成的硬IP核;⑤由代工廠生產(chǎn)的SoC芯片。
片上系統(tǒng)(SoC)設(shè)計(jì)所需要的EDA工具,若從硬件設(shè)計(jì)角度看,在設(shè)計(jì)流程的前端設(shè)計(jì)與ASIC設(shè)計(jì)差別不大;但是,從整個(gè)芯片設(shè)計(jì)角度出發(fā),這兩種類型的芯片設(shè)計(jì)有較大區(qū)別。這是因?yàn)樵赟oC設(shè)計(jì)中,一般都含有微處理器核,所設(shè)計(jì)的系統(tǒng)級(jí)芯片都必須具備有設(shè)備驅(qū)動(dòng)程序與操作系統(tǒng)或嵌入式實(shí)時(shí)操作系統(tǒng)接口,并且具備有應(yīng)用程序完成數(shù)字計(jì)算、信號(hào)處理變換、控制決策等功能。因此,在設(shè)計(jì)的前期,要軟、硬件協(xié)同設(shè)計(jì),確定哪些功能是由硬件完成的,哪些軟件功能是由軟件完成的,需要進(jìn)行一個(gè)適當(dāng)劃分。在設(shè)計(jì)的中后期,要進(jìn)行軟硬件協(xié)同驗(yàn)證,即把軟硬件設(shè)計(jì)放到一個(gè)虛擬的集成環(huán)境中進(jìn)行仿真驗(yàn)證,以便驗(yàn)證硬件的性能是否達(dá)到設(shè)計(jì)目標(biāo),軟件功能是否實(shí)現(xiàn)設(shè)計(jì)要求。
3 綜合型電子系統(tǒng)EDA集成開發(fā)環(huán)境
典型的綜合型電子系統(tǒng)EDA集成開發(fā)環(huán)境如圖4所示,通常稱其為整機(jī)型或混合型電子系統(tǒng)EDA集成開發(fā)環(huán)境。這種類型集成開發(fā)環(huán)境綜合集成了芯片級(jí)和板級(jí)電子系統(tǒng)設(shè)計(jì)的EDA工具,可以完成如下三個(gè)方面工作:印刷電路板(PCB)設(shè)計(jì)、專用集成電路(ASIC)芯片設(shè)計(jì)和片上系統(tǒng)(SoC)芯片設(shè)計(jì)。在此集成開發(fā)環(huán)境中,PCB設(shè)計(jì)平臺(tái)完成經(jīng)典的板級(jí)電子系統(tǒng)設(shè)計(jì)工作,ASIC設(shè)計(jì)平臺(tái)完成專用集成電路芯片設(shè)計(jì)工作,SoC設(shè)計(jì)平臺(tái)完成現(xiàn)代芯片級(jí)電子系統(tǒng)設(shè)計(jì)工作,而PLD設(shè)計(jì)平臺(tái)完成可編程型的ASIC和SoC芯片(包括CPLD/FPGA、SOPC等芯片)的設(shè)計(jì)工作。
4 電子系統(tǒng)EDA集成開發(fā)環(huán)境比較分析
無(wú)論是板級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境,還是芯片級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境,都不能全面地反應(yīng)現(xiàn)代電子系統(tǒng)設(shè)計(jì)的實(shí)際現(xiàn)狀,即在板級(jí)電子系統(tǒng)設(shè)計(jì)中存在有專用芯片設(shè)計(jì)問(wèn)題,而在芯片級(jí)電子系統(tǒng)設(shè)計(jì)中存在印刷電路板(PCB)設(shè)計(jì)問(wèn)題。存在這一實(shí)際問(wèn)題的主要原因有如下兩個(gè)方面:①在板級(jí)電子系統(tǒng)設(shè)計(jì)中,為了某種特殊需要(如簡(jiǎn)化系統(tǒng)邏輯設(shè)計(jì)、縮小PCB體積、提高系統(tǒng)的運(yùn)行速度和可靠性等),或特殊功能要求(如特殊算法功能、特殊的數(shù)字信號(hào)處理功能等),需要采用一些用戶自行設(shè)計(jì)的專用芯片,特別是可編程專用芯片。因此,在板級(jí)電子系統(tǒng)集成開發(fā)環(huán)境中需要融入芯片級(jí)電子系統(tǒng)設(shè)計(jì)的EDA工具。②在芯片級(jí)電子系統(tǒng)設(shè)計(jì)中,就目前的技術(shù)現(xiàn)狀而言,即使是系統(tǒng)級(jí)芯片(SoC),由于集成電路規(guī)模和集成電路技術(shù)的限制,不可能把整個(gè)實(shí)際的電子系統(tǒng)電路完全集成在一個(gè)芯片內(nèi),需要把不能集成在芯片內(nèi)的功能用另一個(gè)或多個(gè)芯片或器件來(lái)實(shí)現(xiàn),而把多個(gè)芯片組合成一個(gè)電子系統(tǒng)就需要通過(guò)PCB,這就需要在芯片級(jí)電子系統(tǒng)集成環(huán)境中嵌入板級(jí)電子系統(tǒng)設(shè)計(jì)的EDA工具。正是基于上述原因,在綜合型電子系統(tǒng)集成環(huán)境中,通常需要在板級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境中融入芯片級(jí)電子系統(tǒng)設(shè)計(jì)的EDA工具,而在芯片級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境中嵌入板級(jí)電子系統(tǒng)設(shè)計(jì)的EDA工具,因此稱之為“綜合型或混合型電子系統(tǒng)EDA集成開發(fā)環(huán)境”。這種綜合型電子系統(tǒng)集成開發(fā)環(huán)境,是目前EDA工程技術(shù)的一種發(fā)展趨勢(shì)。雖然,從表面上看,綜合型電子系統(tǒng)集成環(huán)境只是板級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境和芯片級(jí)電子系統(tǒng)EDA集成開發(fā)環(huán)境的一種組合,但是其與簡(jiǎn)單的組合有著本質(zhì)的差別。這種差別源于EDA集成環(huán)境中的一個(gè)重要概念——EDA系統(tǒng)的框架結(jié)構(gòu)。
EDA系統(tǒng)框架結(jié)構(gòu)是一套創(chuàng)建電子系統(tǒng)集成設(shè)計(jì)環(huán)境和使用EDA工具軟件的規(guī)范,能將來(lái)自不同EDA廠商的EDA工具軟件進(jìn)行優(yōu)化組合,集成在一個(gè)易于管理的統(tǒng)一環(huán)境之下,支持任務(wù)之間、項(xiàng)目之間、設(shè)計(jì)工程師之間的信息傳輸和工程數(shù)據(jù)共享。這是并行設(shè)計(jì)工作和自頂向下設(shè)計(jì)方法的基礎(chǔ),也是構(gòu)建電子系統(tǒng)集成設(shè)計(jì)環(huán)境或集成設(shè)計(jì)平臺(tái)的基本規(guī)范。目前,主要的EDA系統(tǒng)都建立了框架結(jié)構(gòu),并且它們都遵循國(guó)際計(jì)算機(jī)輔助設(shè)計(jì)框架結(jié)構(gòu)組織——CFI(CAD Framework International)的統(tǒng)一技術(shù)標(biāo)準(zhǔn)。