《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應用 > 基于IP核的FPGA 設(shè)計方法
基于IP核的FPGA 設(shè)計方法
摘要: 隨著集成電路制造技術(shù)迅速向亞微米發(fā)展, 產(chǎn)生了系統(tǒng)級集成的新概念, 為縮短系統(tǒng)級芯片的設(shè)計時間, 重復利用已有的設(shè)計, 核基設(shè)計方法被廣泛采用。本文介紹了核的分類及核基FPGA 的設(shè)計流程, 討論了軟核的設(shè)計思路和使用特點, 并給出了設(shè)計實例。
關(guān)鍵詞: SoPC IP核 FPGA
Abstract:
Key words :

  前 言

  幾年前設(shè)計專用集成電路(ASIC) 還是少數(shù)集成電路設(shè)計工程師的事, 隨著硅的集成度不斷提高,百萬門的ASIC 已不難實現(xiàn), 系統(tǒng)制造公司的設(shè)計人員正越來越多地采用ASIC 技術(shù)集成系統(tǒng)級功能(System L evel In tegrete - SL I) , 或稱片上系統(tǒng)(System on a ch ip ) , 但ASIC 設(shè)計能力跟不上制造能力的矛盾也日益突出?,F(xiàn)在設(shè)計人員已不必全部用邏輯門去設(shè)計ASIC, 類似于用集成電路( IC) 芯片在印制板上的設(shè)計,ASIC 設(shè)計人員可以應用等效于印制板上IC 芯片的功能模塊, 稱為核(core)、或知識產(chǎn)權(quán)( IP) 宏單元進行系統(tǒng)設(shè)計, 這就是基于核的設(shè)計方法。CPU、存儲器、總線控制器、接口電路、DSP 等都可成為核。但是ASIC 設(shè)計與印制板(PCB) 設(shè)計有很大區(qū)別,ASIC 必須用EDA 工具進行硬件設(shè)計, 主要問題都是通過計算機仿真解決, 而不能象印制板設(shè)計那樣通過實驗調(diào)試解決, 另外ASIC 的制造還需要數(shù)量可觀(一般數(shù)萬美元) 的不可重復工程費用(NRE)。80年代后期出現(xiàn)的現(xiàn)場可編程門陣列(FPGA" title="FPGA">FPGA ) 和復雜可編程邏輯器件(CPLD) 是ASIC 的一種, 其優(yōu)點是在制造廠家提供的FPGA 或CPLD 芯片上, 可由設(shè)計工程師對其進行現(xiàn)場編程完成ASIC 的最后設(shè)計, 而不需昂貴的NRE 費?,F(xiàn)在FPGA 的規(guī)模已達到百萬門, 如XILINX 公司的V irtex 系列, 完全可以實現(xiàn)片上系統(tǒng),其設(shè)計方法將逐步轉(zhuǎn)向核基設(shè)計。

  1 核的分類和特點

  核是一種預定義的并經(jīng)過驗證的復雜功能模塊, 它可以集成到系統(tǒng)設(shè)計中。核基設(shè)計主要特點是可重復使用已有設(shè)計模塊, 縮短設(shè)計時間, 減少設(shè)計風險, 通過高層的集成可望提高整個系統(tǒng)的性能。在FPGA 設(shè)計中的核分為三種, 如表1所示:

  表1 核的分類和特點

  硬核
(hard core)
預定義的已布局布線的模塊 不能修改設(shè)計, 必須采指定實現(xiàn)技術(shù) 時序性能有保證

  固核
(firm core) HDL 源碼,與實現(xiàn)技術(shù)有關(guān)的網(wǎng)表 部分功能可以修改, 采用指定的實現(xiàn)技術(shù) 關(guān)鍵路徑時序可控制

  軟件
(soft core)
行為級或RTL 級HDL源碼 可修改設(shè)計,與具體實現(xiàn)技術(shù)無關(guān) 時序性能無保證, 由使用者確定

  

  硬核是針對特定的實現(xiàn)技術(shù)優(yōu)化的, 它具有不能修改的結(jié)構(gòu)和布局布線, 可作為庫元件使用, 且時序性能穩(wěn)定, 但硬核不能按設(shè)計需要修改和調(diào)整時序。固核由HDL 源碼和與實現(xiàn)技術(shù)有關(guān)的網(wǎng)表組成, 使用者可按規(guī)定增減部分功能。固核的關(guān)鍵路徑時序是固定的, 但其實現(xiàn)技術(shù)不能更改, 即不同廠家FPGA 的固核不能互換使用。軟核是可綜合的硬件描述語言(HDL ) 源碼, 它與實現(xiàn)技術(shù)無關(guān), 可按使用者需要修改, 具有最大的使用靈活性, 但軟核的關(guān)鍵路徑時序性能無保證, 最終性能主要決定于使用者采用的綜合、布局布線和實現(xiàn)技術(shù)。

  在FPGA 設(shè)計中, 由于不同廠家的具體實現(xiàn)技術(shù)差別較大, 完全與硬件實現(xiàn)技術(shù)無關(guān)的軟核性能受到很大限制, 而硬核缺少使用的靈活性, 因此作為軟、硬核折中的固核使用較多。以上是具有代表性的核的分類, 在實際使用中, 某種功能的核往往以各種形式出現(xiàn), 由使用者按需要選用, 軟核也不僅只有HDL 源碼, 還包括用于功能測試的行為模型和測試向量, 用于指導綜合的約束文件。

  2 核基FPGA 設(shè)計方法簡介

  在核基設(shè)計中, 一個完整的設(shè)計主要由兩部分組成, 一部分是核, 如圖1中的MCU、RAM , 另一部分是用戶自己定義的邏輯電路。按系統(tǒng)設(shè)計的要求將這些功能模塊連接在一起就完成了芯片的設(shè)計,各個核或功能塊的連接目前還沒有統(tǒng)一的標準, 因不同的設(shè)計而定, 一般應滿足一定的時序要求。作為核基設(shè)計的第一步是選擇合適的核, 這主要從核的功能、性能可靠性和實現(xiàn)技術(shù)幾方面來選擇。
 

核基設(shè)計芯片示意圖


圖1 核基設(shè)計芯片示意圖

  一個核首先要有核的功能描述文件, 用于說明該核的功能、時序要求等, 如圖2所示, 其次還要包括設(shè)計實現(xiàn)和設(shè)計驗證兩個方面的文件, 即不但要有實現(xiàn)核功能的寄存器傳輸級(RTL ) 源碼或網(wǎng)表, 還要有用于核實現(xiàn)后驗證邏輯功能正確性的仿真模型和測試向量。硬核的實現(xiàn)較簡單, 類似于PCB 設(shè)計中IC 芯片的使用, 軟核的使用情況較為復雜, 實現(xiàn)后的性能與使用者的具體實現(xiàn)方式有關(guān), 為保證軟核的性能, 軟核提供者一般還提供綜合描述文件, 用于指導軟核的綜合, 固核的使用介于上述二者之間。
 

核由設(shè)計實現(xiàn)和設(shè)計驗證組成


圖2 核由設(shè)計實現(xiàn)和設(shè)計驗證組成

 

  很多核提供者都提供核的評價環(huán)境和演示、開發(fā)板,便于用戶了解核的功能和使用。
核基FPGA 設(shè)計流程如圖3所示。設(shè)計輸入部分包括:
1) 用戶設(shè)計邏輯、軟核、固核或硬核仿真模型的輸入,
2) 功能仿真,
3) 邏輯綜合。其中仿真模型是一個行為級模型, 只用作功能仿真, 不進行綜合。
 

核基FPGA 設(shè)計流程
圖3 核基FPGA 設(shè)計流程

 

  設(shè)計的輸入一般是采用HDL 語言, 如VHDL、V erilog 等, 輸入完設(shè)計和仿真模型后就可進行功能仿真, 當功能仿真完成后, 就可進行邏輯電路的綜合。

  用戶邏輯和軟核的綜合應加合理的時序約束, 以滿足設(shè)計的要求, 約束條件可由綜合文件(Synthesis Script ) 給出。完成設(shè)計輸入后進入設(shè)計實現(xiàn)階段,在此階段固核的網(wǎng)表和設(shè)計約束文件, 用戶綜合出的網(wǎng)表和設(shè)計約束文件一起輸入給FPGA 布局布線工具, 完成FPGA 的最后實現(xiàn), 并產(chǎn)生時序文件用于時序仿真和功能驗證。最后進入設(shè)計驗證階段,用靜態(tài)時序分析判定設(shè)計是否達到性能要求, 對比功能仿真結(jié)果和時序仿真結(jié)果, 驗證設(shè)計的時序和功能是否正確。若設(shè)計的性能不能達到要求, 需找出影響性能的關(guān)鍵路徑, 并返回延時信息, 修改約束文件, 對設(shè)計進行重新綜合和布局布線, 如此重復多次直到滿足設(shè)計要求

 

為止。若重復多次還不能達到設(shè)計要求, 則需修改設(shè)計或采用其它實現(xiàn)技術(shù)。

 

  3 軟核的設(shè)計及使用

  由于FPGA 的硬件技術(shù)迅速發(fā)展, 硬件資源越來越豐富, 速度越來越快, 使軟核資源利用率不高、工作速度較低等不足得到很大的彌補, 軟核在核基設(shè)計中作用越來越大。其主要優(yōu)點是功能與實現(xiàn)技術(shù)無關(guān), 使用靈活。這樣我們可以很方便地在不同的實現(xiàn)技術(shù)下使用軟核。如用X IL INX FPGA 實現(xiàn)的軟核, 不需改動設(shè)計, 重新綜合后就可以用ACTEL FPGA 實現(xiàn), 設(shè)計實現(xiàn)的靈活性大為提高。但軟核的性能受實現(xiàn)技術(shù)影響還是很大, 怎樣保證軟核達到預想的性能是目前需要解決的難題。國外近年提出了與實現(xiàn)技術(shù)無關(guān)的可綜合軟核的思想, 希望通過對編制軟核的HDL 源碼的某種限制, 并結(jié)合綜合工具的時序約束功能, 達到部分控制軟核性能的目的。如限制軟核只能采用嚴格的同步邏輯設(shè)計, 沒有反饋環(huán)路、多時鐘路徑、三態(tài)邏輯、鎖存器和異步置位復位觸發(fā)器, 只使用D 觸發(fā)器和邏輯門。這樣借助于綜合工具, 可有效地控制軟核關(guān)鍵路徑的延時,并預測具體實現(xiàn)技術(shù)中軟核的性能。當然這是以犧牲一定的FPGA 邏輯資源為代價的, 但隨著硅技術(shù)的發(fā)展, 硬件資源十分豐富, 用一定的硬件資源浪費去換取設(shè)計靈活性提高是值得的, 正如在PC 機軟件設(shè)計中, 現(xiàn)在已很少有人過多考慮程序占用的存儲空間一樣。

  本文作者按照上述軟核設(shè)計思想, 采用全同步邏輯設(shè)計, 只使用D 觸發(fā)器和邏輯門, 實現(xiàn)了與PIC16C57兼容的8位微控制器的設(shè)計。頂層結(jié)構(gòu)如圖4, 采用哈佛結(jié)構(gòu), 取指和指令執(zhí)行并行工作, 除少數(shù)幾條程序跳轉(zhuǎn)指令外, 全部為單時鐘周期指令。程序存儲器ROM 一般放在FPGA 外, 若ROM 中指令較少, 也可放在FPGA 內(nèi)。數(shù)據(jù)總線采用多路選擇器形式, 以適應不同的實現(xiàn)技術(shù)。指令寄存器和特殊功能寄存器, 包括IO 端口寄存器、狀態(tài)寄存器、程序計數(shù)器等, 都由D 觸發(fā)器構(gòu)成, 通用寄存器采用了FPGA 的RAM 模塊, 指令譯碼和算數(shù)邏輯單元由組合邏輯門構(gòu)成。
 

8位微控制器頂層結(jié)構(gòu)圖


圖4 8位微控制器頂層結(jié)構(gòu)圖

  實現(xiàn)的主要功能:
(1) 指令與P IC16C57兼容。
(2) 三個8位雙向IO 口。
(3) 程序存儲器2K X 12 B IT。
(4) 內(nèi)部RAM 共32個, 7個為特殊寄存器。
(5) 二級子程序堆棧。
(6) 未實現(xiàn)指令: POT ION、SLEEP、CLRWDT。
(7) 單相時鐘。

 

  該軟核用VHDL 語言完成設(shè)計的輸入, 用EXPRESS 綜合工具進行綜合, 采用Xilinx 4000系列FPGA 實現(xiàn), 不包括ROM 約需2500邏輯門, 時鐘頻率5MHz, 即運行一條指令200ns。

  上述軟核在綜合、布局布線時, 只給予了簡單的時序約束, 當需要改用其它FPGA 實現(xiàn)時, 可用綜合工具重新綜合、布局布線, 一般不需改變時序約束文件就能達到上述性能, 因此當時鐘頻率不太高時,軟核的使用還是較為方便的。但當時鐘頻率較高時,雖然采用了與實現(xiàn)技術(shù)無關(guān)的可綜合軟核的思想,軟核的性能還是與使用者及其采用的實現(xiàn)技術(shù)緊密相關(guān), 要真正做到與實現(xiàn)技術(shù)無關(guān)是很困難的。此時軟核的使用者必須清楚其使用的復雜性, 最好能得到軟核提供者的技術(shù)支持, 許多軟核提供者都提供這方面的服務。

  4 總結(jié)

  隨著硅技術(shù)的發(fā)展, 集成電路芯片的硬件生產(chǎn)能力迅速提高, 幾年前FPGA、CPLD 的規(guī)模還在萬門左右, 現(xiàn)在ALTERA 公司已宣布將推出250萬門的CPLD。如此快的發(fā)展速度, 使集成電路設(shè)計能力嚴重不足, 只靠增加設(shè)計人員, 不從設(shè)計方法上改進, 提高設(shè)計的效率, 是不可能解決問題的。因此基于核的設(shè)計、設(shè)計重利用等技術(shù), 近年來在國外發(fā)展很快, 并成立了相應的標準化組織, 如VSIA (Virtual Socket Interface Alliance) , 專門從事核或稱IP模塊的互連標準研究, 以使核的使用就象在印制板上使用集成電路塊一樣方便。一個片上系統(tǒng)的時代即將到來, 電子工程師應跟上這個時代發(fā)展的潮流,正如以前電子管系統(tǒng)向晶體管系統(tǒng), 分離元件系統(tǒng)向集成電路系統(tǒng)發(fā)展一樣。

 
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
中文一区在线| 久久久天天操| 久久大香伊蕉在人线观看热2| 亚洲人成人77777线观看| 国模精品一区二区三区| 国产精品亚洲第一区在线暖暖韩国| 欧美日韩国产精品一区二区亚洲| 老司机免费视频一区二区三区| 欧美怡红院视频一区二区三区| 亚洲小少妇裸体bbw| 最近中文字幕日韩精品| 亚洲国产日韩欧美在线99| 欧美一区午夜精品| 欧美在线观看一区二区| 亚洲欧美在线免费观看| 亚洲欧美国产制服动漫| 亚洲一区欧美一区| 亚洲私拍自拍| 亚洲男人第一av网站| 亚洲一区二区精品| 亚洲国产99| 91久久精品国产91性色| 亚洲国产精品久久| 亚洲精品永久免费| 日韩亚洲精品电影| 亚洲视频每日更新| 亚洲欧美国产高清va在线播| 亚洲欧美第一页| 午夜亚洲性色视频| 久久高清国产| 亚洲日韩第九十九页| 亚洲靠逼com| 中文久久精品| 午夜亚洲影视| 久久免费视频一区| 美女国产精品| 欧美日韩二区三区| 国产精品对白刺激久久久| 国产精品v欧美精品v日韩精品| 国产精品久线观看视频| 国产日韩欧美高清| 怡红院精品视频在线观看极品| 亚洲高清毛片| av成人老司机| 欧美一级专区| 亚洲福利国产精品| 日韩图片一区| 欧美一级片在线播放| 久久国产精品亚洲77777| 裸体丰满少妇做受久久99精品| 久久久久久久综合色一本| 欧美福利一区二区三区| 欧美性感一类影片在线播放| 国产一区二区三区成人欧美日韩在线观看 | 国产精品尤物| 在线观看视频一区二区欧美日韩 | 亚洲精品在线观看免费| 亚洲欧美变态国产另类| 亚洲国产aⅴ天堂久久| av成人黄色| 久久国产精品免费一区| 欧美精品亚洲一区二区在线播放| 国产精品红桃| 永久免费视频成人| 99热在线精品观看| 欧美一区二区视频免费观看| 久久精品国产综合| 亚洲香蕉伊综合在人在线视看| 亚洲欧美精品伊人久久| 蜜桃伊人久久| 欧美午夜在线| 国产欧美日韩精品丝袜高跟鞋| 国内一区二区三区在线视频| 激情综合亚洲| 亚洲国产一区二区精品专区| 亚洲免费婷婷| 亚洲国产毛片完整版| 亚洲天堂av在线免费观看| 欧美在线高清| 欧美激情二区三区| 国产精品亚洲一区| 亚洲第一主播视频| 亚洲一区二区三区中文字幕在线 | 在线视频你懂得一区二区三区| 亚洲综合色视频| 亚洲电影欧美电影有声小说| 国产精品99久久久久久久女警| 久久精品日韩一区二区三区| 欧美成人免费全部观看天天性色| 欧美性猛片xxxx免费看久爱| 国产一区二区三区四区在线观看| 亚洲精品美女91| 亚洲电影欧美电影有声小说| 亚洲综合国产| 欧美高潮视频| 国产喷白浆一区二区三区| 韩国三级在线一区| 亚洲第一色中文字幕| 夜色激情一区二区| 亚洲国内自拍| 久久国产精品第一页| 欧美精品二区| 国产专区欧美专区| 亚洲性视频网址| 99国产精品久久久久久久| 久久精品五月婷婷| 欧美日韩一区在线观看| 最新精品在线| 亚洲第一级黄色片| 午夜久久久久久| 欧美人成在线视频| 一区在线影院| 性色av一区二区三区在线观看| 亚洲图片欧洲图片av| 久久久久一区| 国产一区二区中文| 亚洲图片欧美午夜| 一本色道久久88亚洲综合88| 久久人人97超碰国产公开结果| 国产精品美女视频网站| 91久久亚洲| 亚洲电影免费观看高清完整版在线观看 | 亚洲国产精品一区二区第四页av| 先锋a资源在线看亚洲| 欧美激情一区在线观看| 狠狠综合久久av一区二区小说| 亚洲——在线| 国产精品99久久久久久有的能看| 美乳少妇欧美精品| 含羞草久久爱69一区| 亚洲欧美视频在线| 亚洲欧美在线网| 欧美午夜美女看片| 亚洲高清精品中出| 亚洲日本va午夜在线影院| 久久影院午夜论| 一区在线观看| 99热免费精品在线观看| 欧美成人dvd在线视频| 一色屋精品视频在线观看网站| 欧美一级二级三级蜜桃| 午夜精彩视频在线观看不卡| 欧美日韩亚洲系列| 日韩视频在线一区二区三区| 亚洲伦理一区| 欧美激情精品久久久久久| 亚洲精品日韩激情在线电影 | 久久久久91| 国产色视频一区| 亚洲欧美日本国产专区一区| 亚洲欧美中文字幕| 国产免费亚洲高清| 欧美伊人久久| 久久三级福利| 亚洲日本久久| 亚洲一区二区在线看| 国产精品www| 亚洲欧洲99久久| 久久免费视频网站| 亚洲大胆人体在线| 亚洲人成欧美中文字幕| 欧美色图天堂网| 亚洲香蕉网站| 欧美专区亚洲专区| 国模吧视频一区| 亚洲激情在线观看| 欧美日产在线观看| 亚洲视频视频在线| 玖玖国产精品视频| 亚洲激情另类| 亚洲淫性视频| 国产视频精品免费播放| 久久精品国内一区二区三区| 免费亚洲电影| 亚洲美女福利视频网站| 久久国产精品久久精品国产 | **网站欧美大片在线观看| 9色精品在线| 国产精品亚洲成人| 日韩一区二区精品视频| 国产精品久久九九| 欧美综合二区| 欧美极品一区| 亚洲视频一区在线观看| 欧美在线一区二区| 激情国产一区| 性感少妇一区| 亚洲国产二区| 午夜国产一区| 经典三级久久| 亚洲特级毛片| 国产一区二区av| 亚洲欧美国产视频| 黑人巨大精品欧美黑白配亚洲| 亚洲毛片av| 国产精品婷婷| 亚洲人体一区| 国产免费一区二区三区香蕉精| 亚洲国产天堂久久国产91| 国产精品你懂的在线|