EDA技術(shù)與FPGA技術(shù)設(shè)計(jì)應(yīng)用
21世紀(jì)是信息產(chǎn)業(yè)主導(dǎo)的知識(shí)經(jīng)濟(jì)時(shí)代,信息領(lǐng)域正在發(fā)生一場(chǎng)巨大變革,其先導(dǎo)力量和決定性因素正是微電子技術(shù)'>集成電路。片的日益成熟,特別是深亞微米(DSM,DeepSub-Mron)和超深亞微米(VDSM,Very Deep Sub-Micron)技術(shù),極大促進(jìn)了集成電路產(chǎn)業(yè)的快速發(fā)展。
本文引用地址:http://butianyuan.cn/article/190407.htm集成電路發(fā)展經(jīng)歷了電路集成、功能集成、技術(shù)集成,直至今天基于計(jì)算機(jī)軟硬件的知識(shí)集成,這標(biāo)志著傳統(tǒng)電子系統(tǒng)已全面進(jìn)入現(xiàn)代電子系統(tǒng)階段,這也被譽(yù)為進(jìn)入3G時(shí)代,即單片集成度達(dá)到1G個(gè)管技術(shù)'>晶體管、器件工作速度達(dá)到1GHz、數(shù)據(jù)傳輸速率達(dá)到1Gbps。
EDA(Electronic DesignAutomation,電子設(shè)計(jì)自動(dòng)化)技術(shù)基于計(jì)算機(jī)輔助設(shè)計(jì),它融合了應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理技術(shù)、智能化技術(shù)的最新成果,以實(shí)現(xiàn)技術(shù)'>電子產(chǎn)品的自動(dòng)設(shè)計(jì)。EDA是現(xiàn)代電子設(shè)計(jì)技術(shù)的核心,在現(xiàn)代集成電路設(shè)計(jì)中占據(jù)重要地位。FPGA(FieldProgrammable GateArray,現(xiàn)場(chǎng)可編程門(mén)陣列)作為可編程邏輯器件的典型代表,它的出現(xiàn)及日益完善適應(yīng)了當(dāng)今時(shí)代的數(shù)字化發(fā)展浪潮,它正廣泛應(yīng)用在現(xiàn)代數(shù)字系統(tǒng)設(shè)計(jì)中。
1.EDA技術(shù)特征
EDA是電子設(shè)計(jì)領(lǐng)域的一場(chǎng)革命,它源于計(jì)算機(jī)輔助設(shè)計(jì)(CAD,Computer AidedDesign)、計(jì)算機(jī)輔助制造(CAM,Computer Aided Made)、計(jì)算機(jī)輔助測(cè)試(CAT,Computer AidedTest)和計(jì)算機(jī)輔助工程(CAE,Computer AidedEngineering)。利用EDA工具,電子設(shè)計(jì)師從概念、算法、協(xié)議開(kāi)始設(shè)計(jì)電子系統(tǒng),從電路設(shè)計(jì)、性能分析直到IC版圖或PCB版圖生成的全過(guò)程均可在計(jì)算機(jī)上自動(dòng)完成。
EDA代表了當(dāng)今電子設(shè)計(jì)技術(shù)的最新發(fā)展方向,其基本特征是設(shè)計(jì)人員以計(jì)算機(jī)為工具,按照自頂向下的設(shè)計(jì)方法,對(duì)整個(gè)系統(tǒng)進(jìn)行方案設(shè)計(jì)和功能劃分,由硬件描述語(yǔ)言完成系統(tǒng)行為級(jí)設(shè)計(jì),利用先進(jìn)的開(kāi)發(fā)工具自動(dòng)完成邏輯編譯、化簡(jiǎn)、分割、綜合、優(yōu)化、布局布線(xiàn)(PAR,PlaceAnd Route)、仿真及特定目標(biāo)的適配編譯和編程下載,這被稱(chēng)為數(shù)字邏輯電路的高層次設(shè)計(jì)方法。
作為現(xiàn)代電子系統(tǒng)設(shè)計(jì)的主導(dǎo)技術(shù),EDA具有兩個(gè)明顯特征:即并行工程(ConcurrentEngineering)設(shè)計(jì)和自頂向下(Top-down)設(shè)計(jì)。其基本思想是從系統(tǒng)總體要求出發(fā),分為行為描述(BehaviourDescription)、寄存器傳輸級(jí)(RTL,Register Transfer Level)描述、邏輯綜合(LogicSynthesis)三個(gè)層次,將設(shè)計(jì)內(nèi)容逐步細(xì)化,最后完成整體設(shè)計(jì),這是一種全新的設(shè)計(jì)思想與設(shè)計(jì)理念。
2.FPGA原理
今天,數(shù)字電子系統(tǒng)的設(shè)計(jì)方法及設(shè)計(jì)手段都發(fā)生了根本性變化,正由分立數(shù)字電路向可編程邏輯器件(PLD,ProgrammableLogic Device)及專(zhuān)用集成電路(ASIC,Application Specific IntegratedCircuit)轉(zhuǎn)變。FPGA與CPLD(Programmable LogicDevice,復(fù)雜可編程邏輯器件)都屬于PLD的范疇,它們?cè)诂F(xiàn)代數(shù)字系統(tǒng)設(shè)計(jì)中正占據(jù)越來(lái)越重要的地位。
FPGA是由用戶(hù)編程來(lái)實(shí)現(xiàn)所需邏輯功能的數(shù)字集成電路,它不僅具有設(shè)計(jì)靈活、性能高、速度快等優(yōu)勢(shì),而且上市周期短、成本低廉。FPGA設(shè)計(jì)與ASIC前端設(shè)計(jì)十分類(lèi)似,在領(lǐng)域中FPGA應(yīng)用日益普及,已成為集成電路中最具活力和前途的產(chǎn)業(yè)。同時(shí),隨著設(shè)計(jì)技術(shù)和制造工藝的完善,器件性能、集成度、工作頻率等指標(biāo)不斷提升,F(xiàn)PGA已越來(lái)越多地成為系統(tǒng)級(jí)芯片設(shè)計(jì)的首選。
FPGA由PAL(可編程陣列邏輯)、GAL(通用陣列邏輯)發(fā)展而來(lái),其基本設(shè)計(jì)思想是借助于EDA開(kāi)發(fā)工具,用原理圖、狀態(tài)機(jī)、布爾表達(dá)式、硬件描述語(yǔ)言等方法進(jìn)行系統(tǒng)功能及算法描述,設(shè)計(jì)實(shí)現(xiàn)并生成編程文件,最后通過(guò)編程器或下載用目標(biāo)器件來(lái)實(shí)現(xiàn)。
FPGA器件采用邏輯單元陣列(LCA,Logic CellArray)結(jié)構(gòu)、SDRAM工藝,其中LCA由三類(lèi)可編程單元組成。
(1)可配置邏輯塊(CLB,Configurable LogicBlock):被稱(chēng)為核心陣列,是實(shí)現(xiàn)自定義邏輯功能的基本單元,散布于整個(gè)芯片;
(2)輸入/輸出模塊(IOB,Input/OutputBlock):排列于芯片四周,為內(nèi)部邏輯與器件封裝引腳之間提供可編程接口;
(3)可編程互連資源(PI,Programmable Interconnect):包括不同長(zhǎng)度的連線(xiàn)線(xiàn)段及連接,其功能是將各個(gè)可編程邏輯塊或I/O塊連接起來(lái)以構(gòu)成特定電路。
全球生產(chǎn)FPGA的廠家很多,但影響力最大的是Xilinx公司和Altera公司,世界上第一片F(xiàn)PGA是在20世紀(jì)80年代中期Xilinx公司率先推出的。不同廠家生產(chǎn)的FPGA在可編程邏輯塊的規(guī)模、內(nèi)部互連線(xiàn)結(jié)構(gòu)及所采用的可編程元件上存在較大差異,實(shí)際使用時(shí)應(yīng)注意區(qū)分。
FPGA設(shè)計(jì)應(yīng)用及優(yōu)化策略
1.FPGA設(shè)計(jì)層次分析
FPGA設(shè)計(jì)包括描述層次及描述領(lǐng)域兩方面內(nèi)容。通常設(shè)計(jì)描述分為6個(gè)抽象層次,從高到低依次為:系統(tǒng)層、算法層、寄存器傳輸層、邏輯層、電路層和版圖層。對(duì)每一層又分別有三種不同領(lǐng)域的描述:行為域描述、結(jié)構(gòu)域描述和物理域描述。
系統(tǒng)層是系統(tǒng)最高層次的抽象描述,針對(duì)于電子系統(tǒng)整體性能。算法層又稱(chēng)為行為層,它是在系統(tǒng)級(jí)性能分析和結(jié)構(gòu)劃分后對(duì)每個(gè)模塊的功能描述。算法層所描述的功能、行為最終要用數(shù)字電路來(lái)實(shí)現(xiàn)。而數(shù)字電路本質(zhì)上可視為由寄存器和組合邏輯電路組成,其中寄存器負(fù)責(zé)信號(hào)存儲(chǔ),組合邏輯電路負(fù)責(zé)信號(hào)傳輸。寄存器傳輸層描述正是從信號(hào)存儲(chǔ)、傳輸?shù)慕嵌热ッ枋稣麄€(gè)系統(tǒng)。寄存器和組合邏輯本質(zhì)上是由邏輯門(mén)構(gòu)成,邏輯層正是從邏輯門(mén)組合及連接角度去描述整個(gè)系統(tǒng)。
FPGA各個(gè)描述層次及綜合技術(shù)關(guān)系如圖1所示。傳統(tǒng)的綜合工具是將寄存器傳輸級(jí)(RTL)的描述轉(zhuǎn)化為門(mén)級(jí)描述。隨著以行為設(shè)計(jì)為主要標(biāo)志的新一代系統(tǒng)設(shè)計(jì)理論的不斷成熟,能夠?qū)⑾到y(tǒng)行為級(jí)描述轉(zhuǎn)化為RTL描述的高層次綜合技術(shù)不斷涌現(xiàn)。
作為現(xiàn)代集成電路設(shè)計(jì)的重點(diǎn)與熱點(diǎn),F(xiàn)PGA設(shè)計(jì)一般采用自頂向下、由粗到細(xì)、逐步求精的方法。設(shè)計(jì)最頂層是指系統(tǒng)的整體要求,最下層是指具體的邏輯電路實(shí)現(xiàn)。自頂向下是將數(shù)字系統(tǒng)的整體逐步分解為各個(gè)子系統(tǒng)和模塊,若子系統(tǒng)規(guī)模較大則進(jìn)一步分解為更小的子系統(tǒng)和模塊,層層分解,直至整個(gè)系統(tǒng)中各子模塊關(guān)系合理、便于設(shè)計(jì)實(shí)現(xiàn)為止。
2.vhdl在FPGA設(shè)計(jì)中的應(yīng)用
集成電路設(shè)計(jì)規(guī)模及復(fù)雜度不斷增大,用傳統(tǒng)原理圖方法進(jìn)行系統(tǒng)級(jí)芯片設(shè)計(jì)已不能滿(mǎn)足設(shè)計(jì)要求,而硬件描述語(yǔ)言(HDL,HardwareDescriptionLanguage)在進(jìn)行大規(guī)模數(shù)字系統(tǒng)設(shè)計(jì)時(shí)具有諸多優(yōu)勢(shì),因此利用硬件描述語(yǔ)言進(jìn)行系統(tǒng)行為級(jí)設(shè)計(jì)已成為FPGA與ASIC設(shè)計(jì)的主流。目前最流行、最具代表性的硬件描述語(yǔ)言是美國(guó)國(guó)防部(DOD)開(kāi)發(fā)的VHDL(VHSICHardware Description Language)和GDA(Gateway DesignAutomation)公司開(kāi)發(fā)的Verilog HDL。
VHSIC代表Very High Speed IntegratedCircuit,因此VHDL即甚高速集成電路硬件描述語(yǔ)言。VHDL語(yǔ)法嚴(yán)格,1987年即成為IEEE標(biāo)準(zhǔn),即IEEE STD1076-1987,1993年進(jìn)一步修訂成為IEEE STD 1076-1993。
VHDL作為IEEE標(biāo)準(zhǔn),已得到眾多EDA公司支持,其主要優(yōu)點(diǎn)有:
● 描述能力強(qiáng),支持系統(tǒng)行為級(jí)、寄存器傳輸級(jí)和門(mén)級(jí)三個(gè)層次設(shè)計(jì);
● 可讀性好、移植性強(qiáng),其源文件既是程序又是文檔,便于復(fù)用和交流;
● 支持自頂向下的設(shè)計(jì)和基于庫(kù)(Library-based)的設(shè)計(jì);
● 支持同步、異步及隨機(jī)電路的設(shè)計(jì);
● 與工藝無(wú)關(guān),生命周期長(zhǎng)。
VHDL語(yǔ)言主要應(yīng)用在行為層和寄存器傳輸層,這兩層可充分發(fā)揮出VHDL面向高層的優(yōu)勢(shì)。利用VHDL實(shí)現(xiàn)數(shù)字電路的實(shí)質(zhì)是利用綜合工具將高層次描述轉(zhuǎn)化為低層次門(mén)級(jí)描述,其中綜合可分為三個(gè)層次:高層次綜合(High-LevelSynthesis)、邏輯綜合(Logic Synthesis)和版圖綜合(Layout Synthesis)。3.基于VHDL的FPGA系統(tǒng)行為級(jí)設(shè)計(jì)
具體包括以下重要環(huán)節(jié):設(shè)計(jì)輸入(Design Entry)、設(shè)計(jì)綜合(DesignSynthesis)、設(shè)計(jì)約束(Design Constraints)、設(shè)計(jì)實(shí)現(xiàn)(DesignImplement)、設(shè)計(jì)仿真(Design Simulation)和器件編程(Device Programming)。
評(píng)論