深圳市天創(chuàng)威芯技術(shù)開(kāi)發(fā)有限公司 潘慧峰
Vhdl最早出現(xiàn)于上世紀(jì)80年代末,主要用于電路設(shè)計(jì)的一種高級(jí)程序語(yǔ)言。目前這種語(yǔ)言是現(xiàn)代的電路設(shè)計(jì)中的重點(diǎn),其優(yōu)勢(shì)也相對(duì)突出。它的出現(xiàn)完善了現(xiàn)代數(shù)字電路設(shè)計(jì)的整體結(jié)構(gòu),讓內(nèi)部程序和外部程序形成了良好的協(xié)調(diào),在技術(shù)上實(shí)現(xiàn)了創(chuàng)新化,也是未來(lái)科技研究的重要方向。筆者也根據(jù)自身的工作經(jīng)驗(yàn),就如何實(shí)現(xiàn)Vhdl的合理應(yīng)用提出了自己的看法。
Vhdl即超高速集成電路硬件描述語(yǔ)言,在數(shù)字電路設(shè)計(jì)當(dāng)中普遍使用。而在中國(guó),通常運(yùn)用于ASIC、FPGA或是CPLD的設(shè)計(jì)當(dāng)中。Vhdl主要描述數(shù)字系統(tǒng)的結(jié)構(gòu)和行為,從語(yǔ)法上和傳統(tǒng)的計(jì)算機(jī)高級(jí)語(yǔ)言類似。其系統(tǒng)的設(shè)計(jì)理念涉及到內(nèi)部功能和算法也包括外部端口,在對(duì)設(shè)計(jì)實(shí)體定義外部界面之后,其它設(shè)計(jì)也可以直接對(duì)實(shí)體進(jìn)行調(diào)用,這也是Vhdl系統(tǒng)設(shè)計(jì)的基礎(chǔ)。與其它的一些硬件描述語(yǔ)言相比,Vhdl在行為描述能力上更加出眾,也是目前設(shè)計(jì)領(lǐng)域最常見(jiàn)的意見(jiàn)描述語(yǔ)言,從邏輯上保障電子系統(tǒng)的安全運(yùn)行。而其大量的庫(kù)函數(shù)和語(yǔ)句,在系統(tǒng)設(shè)計(jì)早期就能對(duì)系統(tǒng)可行性進(jìn)行判斷,從而在仿真模擬的基礎(chǔ)上來(lái)進(jìn)行完善和優(yōu)化。即便是設(shè)計(jì)者對(duì)硬件結(jié)構(gòu)不完全掌握的前提下,也不需要對(duì)設(shè)計(jì)目標(biāo)器件進(jìn)行管理,也可以進(jìn)行獨(dú)立的設(shè)計(jì)[1]。
Vhdl的設(shè)計(jì)描述功能是多層次化的,既可以對(duì)門級(jí)電路進(jìn)行描述,也可以對(duì)系統(tǒng)級(jí)電路進(jìn)行描述。描述的方式可以通過(guò)結(jié)構(gòu)描述、行為描述和寄存器描述三種方式,必要時(shí)還能通過(guò)配合協(xié)調(diào)的方式來(lái)進(jìn)行。此外,在硬件電路模型的設(shè)計(jì)上,Vhdl也能體現(xiàn)其特點(diǎn),重點(diǎn)在于給硬件描述提升了自由度,并支持傳輸延遲,讓設(shè)計(jì)者們能夠創(chuàng)建高層次的系統(tǒng)模型,使系統(tǒng)模型能夠具備合理的穩(wěn)定性。
圖1 Vhdl的具體設(shè)計(jì)流程
Vhdl目前是IEEE標(biāo)準(zhǔn)下的硬件描述語(yǔ)言,因此現(xiàn)階段的大多數(shù)EDA工具都能支持Vhdl的使用,且主要的設(shè)計(jì)來(lái)源是Vhdl的源代碼,因而其結(jié)構(gòu)化的優(yōu)勢(shì)也能讓其易修改,且支持同步電路和異步電路的設(shè)計(jì)[2]。設(shè)計(jì)人員可以通過(guò)邏輯行為來(lái)描述電子系統(tǒng)。作為一種標(biāo)準(zhǔn)化的硬件描述語(yǔ)言,其強(qiáng)大的控制能力也能讓模塊更加具有利用價(jià)值,且模塊可以通過(guò)預(yù)先設(shè)計(jì)的方式來(lái)進(jìn)行存放,在后續(xù)的設(shè)計(jì)環(huán)節(jié)中也可以進(jìn)行調(diào)用,讓設(shè)計(jì)成果進(jìn)行交流,使得設(shè)計(jì)描述轉(zhuǎn)移的過(guò)程具備可行性。Vhdl的兼容性和獨(dú)立性也可以讓系統(tǒng)運(yùn)行完全脫離電子加工設(shè)備,并保障系統(tǒng)的合理運(yùn)行,隨時(shí)進(jìn)行數(shù)字系統(tǒng)的有效復(fù)制。例如圖1所展示的設(shè)計(jì)流程,就是對(duì)Vhdl特點(diǎn)的概括。
1.3.1 庫(kù)
庫(kù)是編譯后的數(shù)據(jù)集合,在庫(kù)中所存儲(chǔ)的內(nèi)容是結(jié)構(gòu)體描述、實(shí)體定義和程序包、在利用Vhdl來(lái)進(jìn)行設(shè)計(jì)時(shí),庫(kù)中的內(nèi)容就可以作為資源被利用,或是作為參考依據(jù),庫(kù)還可以作為已經(jīng)編譯過(guò)的設(shè)計(jì)文件,便于設(shè)計(jì)者們進(jìn)行共享和有用的基礎(chǔ)數(shù)據(jù)[3]。
1.3.2 程序包
程序包是從本質(zhì)上來(lái)看是命名的聲明部分,可以利用包來(lái)將過(guò)程函數(shù)進(jìn)行邏輯性的安排。程序包由包說(shuō)明和包體組成,任何可以出現(xiàn)在塊聲明中的語(yǔ)句,包括函數(shù)、類型、變量等都可以在包中使用,并且提供了全程變量。在程序包內(nèi)說(shuō)明的數(shù)據(jù)對(duì)實(shí)體是透明化的。
1.3.3 實(shí)體
實(shí)體既包括了大型的數(shù)字系統(tǒng),也包含了小型的與門。實(shí)體的性質(zhì)可以看作是電腦硬件的CPU處理器,并且具備微處理器的特點(diǎn)。實(shí)體說(shuō)明部分通常設(shè)計(jì)的是輸入和輸出的端口名稱和數(shù)據(jù)類型。
1.3.4 結(jié)構(gòu)體
結(jié)構(gòu)體是對(duì)設(shè)計(jì)實(shí)體的描述。從其根本性質(zhì)上來(lái)看,可以將其看作是一個(gè)功能模塊,對(duì)整個(gè)系統(tǒng)負(fù)責(zé),而結(jié)構(gòu)體則是對(duì)功能模塊內(nèi)部的一種邏輯描述形式。換而言之,就是功能模塊的內(nèi)部細(xì)節(jié)和工作原理可以通過(guò)結(jié)構(gòu)體來(lái)進(jìn)行具體描述,并將其合理地展示出來(lái)[4]。
1.3.5 配置
配置是對(duì)不同層次的實(shí)體與結(jié)構(gòu)體關(guān)系的一種連接式說(shuō)明。實(shí)體和結(jié)構(gòu)體的連接關(guān)系配置中,設(shè)計(jì)者們可以通過(guò)對(duì)配置語(yǔ)句的調(diào)整來(lái)為實(shí)體提供不同的結(jié)構(gòu)體匹配方式。例如在仿真設(shè)計(jì)當(dāng)中,就可以對(duì)不同的結(jié)構(gòu)體來(lái)進(jìn)行測(cè)試,選擇不同的結(jié)構(gòu)體來(lái)達(dá)到這一目標(biāo)。
Vhdl在數(shù)字集成電路設(shè)計(jì)當(dāng)中首先體現(xiàn)在其融合進(jìn)制計(jì)算的功能之上。目前一般的計(jì)算程序除了常見(jiàn)的二進(jìn)制計(jì)算之外,還包括某些場(chǎng)合下的十進(jìn)制計(jì)算方式。但這些計(jì)算方式都是在Vhdl語(yǔ)言編程的基礎(chǔ)上展開(kāi)的。而數(shù)字化集成電路系統(tǒng)當(dāng)中,要想實(shí)現(xiàn)數(shù)據(jù)的合理對(duì)接,也需要讓外部系統(tǒng)和內(nèi)部電路系統(tǒng)之間形成良好的協(xié)調(diào)和配合。Vhdl在電路設(shè)計(jì)系統(tǒng)中的規(guī)劃作用,也使得其成為了主要的編程語(yǔ)言。
由于Vhdl本身是具有高融合性的產(chǎn)物,而當(dāng)系統(tǒng)運(yùn)作需要以較快的速度運(yùn)行時(shí),電路設(shè)計(jì)硬件系統(tǒng)就應(yīng)該具備獨(dú)立的語(yǔ)言運(yùn)行編碼,從而促進(jìn)模塊工具系統(tǒng)的整體融合。通常情況下采用層次性的模塊先進(jìn)行系統(tǒng)規(guī)劃,然后在通過(guò)Vhdl來(lái)尋找到事先儲(chǔ)存在數(shù)據(jù)庫(kù)內(nèi)的有用信息,為集成電路設(shè)計(jì)提供數(shù)字資源的需要。與此同時(shí),Vhdl對(duì)電路設(shè)計(jì)系統(tǒng)模塊進(jìn)行了規(guī)劃,在運(yùn)行結(jié)構(gòu)、電路整體結(jié)構(gòu)和信息傳輸結(jié)構(gòu)方面進(jìn)行了重新編排,讓電路設(shè)計(jì)工具可以集中化、系統(tǒng)化地運(yùn)用,保障了信息的完整性[5]。值得一提的是電路設(shè)計(jì)階段的信息數(shù)據(jù)輸入還可以在有效的電路檢驗(yàn)工作下開(kāi)展,并保障電路設(shè)計(jì)庫(kù)的自動(dòng)更新,成為了一套相對(duì)完善的運(yùn)行程序,也是模塊工具集中化的體現(xiàn)。目前常用的模塊程序包括 IBM RISC system/6000或是 Sun SPACstation, HP 9000 Series 700/800,這也是目前現(xiàn)代集成電路設(shè)計(jì)中的主要技術(shù)模式,對(duì)于系統(tǒng)的綜合運(yùn)行能力提升具有顯著的促進(jìn)作用。
編程設(shè)計(jì)的綜合性融合也是Vhdl在數(shù)字集成電路設(shè)計(jì)中的主要優(yōu)勢(shì)。因?yàn)閂hdl語(yǔ)言的主要工作內(nèi)容包括項(xiàng)目的輸入、編輯、校驗(yàn)和編程工作。這些不同類型的內(nèi)容在現(xiàn)代化的數(shù)字集成電路設(shè)計(jì)當(dāng)中也應(yīng)該不斷地在電路設(shè)計(jì)結(jié)構(gòu)上做到完善。如果設(shè)計(jì)者們需要對(duì)電路設(shè)計(jì)外部運(yùn)行程序進(jìn)行修改,例如當(dāng)項(xiàng)目運(yùn)行語(yǔ)言程序出現(xiàn)問(wèn)題時(shí),就可以有效地利用其編程設(shè)計(jì)融合的特點(diǎn)來(lái)實(shí)現(xiàn)系統(tǒng)的規(guī)劃。因?yàn)閂hdl系統(tǒng)規(guī)劃的方式是通過(guò)內(nèi)部程序來(lái)實(shí)現(xiàn)外部數(shù)據(jù)的輸入,在系統(tǒng)規(guī)劃結(jié)構(gòu)方面實(shí)現(xiàn)了智能化和自動(dòng)化,電路設(shè)計(jì)結(jié)構(gòu)也能符合實(shí)際標(biāo)準(zhǔn),促進(jìn)設(shè)計(jì)的穩(wěn)定性提升[6]。
在傳統(tǒng)的電路設(shè)計(jì)工作當(dāng)中,無(wú)論是設(shè)計(jì)還是規(guī)劃環(huán)節(jié)都具有顯著的分散性的特點(diǎn),重點(diǎn)不明確,而Vhdl的使用可以有效地將分散化管理轉(zhuǎn)變成為集成化的管理體系。通過(guò)對(duì)Vhdl的基本運(yùn)行程序來(lái)看,其系統(tǒng)結(jié)構(gòu)設(shè)計(jì)體現(xiàn)出了明顯的靈活性和完善程度,系統(tǒng)的運(yùn)行可以有效降低電路設(shè)計(jì)成本的運(yùn)算量,實(shí)現(xiàn)一體化的水平提升。如果我們將Vhdl系統(tǒng)看作是一棟高樓,那么高樓的設(shè)計(jì)施工需要從底層施工過(guò)渡到頂層施工。Vhdl系統(tǒng)的底層設(shè)計(jì)部分是通過(guò)將電路內(nèi)部和外部系統(tǒng)進(jìn)行聯(lián)合設(shè)計(jì),讓數(shù)字電路系統(tǒng)處于一體化的模式之下,無(wú)論是在規(guī)劃的合理性還是設(shè)計(jì)后期的工作效率上都有明顯提高。此外,頂層設(shè)計(jì)可以將大數(shù)據(jù)進(jìn)行分析和運(yùn)行,然后讓外部硬件運(yùn)行的各個(gè)部分都能竟然有序,在整體化的連接之下運(yùn)行,這也是現(xiàn)代數(shù)字集成電路設(shè)計(jì)中的關(guān)鍵。
之前提到過(guò)Vhdl系統(tǒng)具有很出色的靈活性,而Vhdl在數(shù)字集成電路設(shè)計(jì)當(dāng)中也能夠發(fā)揮顯著的效果,尤其是融合多個(gè)平臺(tái)的功能上。數(shù)字集成電路設(shè)計(jì)本身具有多樣性的平臺(tái),可以讓電子數(shù)據(jù)在系統(tǒng)下實(shí)現(xiàn)數(shù)據(jù)傳輸和延遲傳輸?shù)墓δ?,并?shí)現(xiàn)電子技術(shù)支持下的多樣性傳輸。此外,Vhdl系統(tǒng)的整體結(jié)構(gòu)能夠?qū)崿F(xiàn)融合應(yīng)用,與現(xiàn)代數(shù)字系統(tǒng)的整體結(jié)構(gòu)相適應(yīng),從而完善數(shù)據(jù)多平臺(tái)傳輸結(jié)構(gòu)。具體來(lái)看,就是實(shí)現(xiàn)同步和異步電流的傳輸,構(gòu)建智能化的外界系統(tǒng),并通過(guò)源文件來(lái)獲得系統(tǒng)的設(shè)計(jì)數(shù)據(jù),讓語(yǔ)言編碼程序和仿真數(shù)據(jù)實(shí)現(xiàn)有效結(jié)合。例如通過(guò)“File-Project-Set Project to Current File”的菜單,就可以對(duì)電路設(shè)計(jì)內(nèi)部結(jié)構(gòu)進(jìn)行層次規(guī)劃,然后讓仿真系統(tǒng)建立仿真波形,依據(jù)程序的要求來(lái)綜合利用多平臺(tái)的資源,體現(xiàn)出融合應(yīng)用的特點(diǎn)。
作為電路設(shè)計(jì)的基本系統(tǒng)語(yǔ)言,數(shù)字語(yǔ)言編碼正是集成電路設(shè)計(jì)的基本結(jié)構(gòu)。Vhdl在基本界面的設(shè)計(jì)方面也具有完善的結(jié)構(gòu)系統(tǒng),即之前提到過(guò)的庫(kù)、程序包、結(jié)構(gòu)體和配置四個(gè)部分。從其基本的工作過(guò)程來(lái)看,流程是先通過(guò)庫(kù)來(lái)建立數(shù)據(jù)分析集合體,然后在保障電路設(shè)計(jì)結(jié)構(gòu)具備數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)上來(lái)讓程序包進(jìn)行優(yōu)化設(shè)計(jì),而電路設(shè)計(jì)系統(tǒng)是通過(guò)程序包向?qū)嶓w端口進(jìn)行輸送的。然后根據(jù)結(jié)構(gòu)體的電路設(shè)計(jì)信息來(lái)將信息結(jié)構(gòu)轉(zhuǎn)化為電路操作模式,并保障電路結(jié)構(gòu)的輸出,讓特定結(jié)構(gòu)體與數(shù)字電路設(shè)計(jì)結(jié)構(gòu)體進(jìn)行融合,形成完善的集成電路設(shè)計(jì)體系。
計(jì)數(shù)器是數(shù)字電路之中的常見(jiàn)應(yīng)用,包括二進(jìn)制、十進(jìn)制等。下文的設(shè)計(jì)方案是以模為12的加法計(jì)數(shù)器,端口包括。i(進(jìn)位)、nrest(置零)、load(加載)、d(數(shù)據(jù)輸入)、Ik(時(shí)鐘);輸出端口設(shè)計(jì)為co(輸出進(jìn)位)、qh(高位輸出)、ql(低位輸出)。
而這一‘12’模只需要在原有的基礎(chǔ)上進(jìn)行修改,就能夠?qū)崿F(xiàn)對(duì)任意進(jìn)制的加法和減法計(jì)數(shù)器,并且可以作為庫(kù)文件進(jìn)行使用,優(yōu)勢(shì)顯著。
通過(guò)研究,可以看到Vhdl語(yǔ)言設(shè)計(jì)從本質(zhì)上看就是通過(guò)軟件設(shè)計(jì)和配置相結(jié)合的過(guò)程,并且具有顯著的電路系統(tǒng)描述和建模能力。在未來(lái)的數(shù)字集成電路設(shè)計(jì)當(dāng)中,Vhdl也可以多層次地對(duì)數(shù)字系統(tǒng)進(jìn)行設(shè)計(jì),不僅有效縮短工作周期,還能提升設(shè)計(jì)的靈活性和有效性。本文主要從Vhdl的內(nèi)涵入手,從其優(yōu)勢(shì)進(jìn)行分析,并探究Vhdl在數(shù)字集成電路設(shè)計(jì)中的體現(xiàn),配合實(shí)例來(lái)證明了其在設(shè)計(jì)過(guò)程中的優(yōu)越性,是未來(lái)新技術(shù)的發(fā)展方向。而Vhdl的出現(xiàn)也說(shuō)明了現(xiàn)代電子系統(tǒng)設(shè)計(jì)的高要求。而在實(shí)際設(shè)計(jì)環(huán)節(jié)中也可以通過(guò)抽象的語(yǔ)言來(lái)對(duì)系統(tǒng)結(jié)構(gòu)進(jìn)行描述,之后通過(guò)細(xì)化模塊,將Vhdl描述成為門級(jí)電路,完善電子系統(tǒng)。
[1]嚴(yán)梓揚(yáng),蘇成悅,張宏鑫.Vhdl在數(shù)字集成電路設(shè)計(jì)中的應(yīng)用分析[J].自動(dòng)化與儀器儀表,2017(5)∶131-133.
[2]李要球,盧璐.VHDL硬件描述語(yǔ)言在數(shù)字電路設(shè)計(jì)中的應(yīng)用[J].實(shí)驗(yàn)室科學(xué),2011,14(5)∶97-99.
[3]周華.硬件描述語(yǔ)言VHDL的應(yīng)用[J].凱里學(xué)院學(xué)報(bào),2012,30(3)∶125-126.
[4]趙鴻,彭碧玉,王宏卓.基于VHDL的CRC校驗(yàn)及其在測(cè)控通信中的應(yīng)用[J].通信技術(shù),2010,43(2)∶29-30.
[5]王彩鳳,李衛(wèi)兵,卞麗.VHDL語(yǔ)言在電子設(shè)計(jì)中的應(yīng)用[J].實(shí)驗(yàn)科學(xué)與技術(shù),2014,12(4)∶65-67.