女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于FPGA的ASIC協(xié)同原型驗證設(shè)計方案

電子設(shè)計 ? 來源:CSDN 博主 ? 作者:時光-易逝 ? 2020-12-30 12:00 ? 次閱讀

鑒于芯片設(shè)計的復(fù)雜度提升, 成功設(shè)計一個芯片所牽扯的步驟與過程也愈加復(fù)雜,所需花費的資金也成倍增加,一個典型的芯片開發(fā)項目的周期和花銷如下所示

可以見到在芯片制造出來之前,很多精力會花費在RTL代碼驗證工作上,另外軟件的相關(guān)開發(fā)工作,也會在得到芯片前開始,這2方面都需要借助FPGA原形來模擬芯片的行為,幫助硬件開發(fā)和軟件開發(fā)者,共同提升工作效率。

FPGA原型在數(shù)字芯片設(shè)計中,基本是必不可少的,原因非常明顯,相比用仿真器,或者加速器等來跑仿真,F(xiàn)PGA的運行速度,更接近真實芯片,可以配合軟件開發(fā)者來進行底層軟件的開發(fā)。當然FPGA原型作為芯片的替身,也是有諸多限制的,比如規(guī)模限制,速度限制,功耗限制,結(jié)構(gòu)限制等,在使用FPGA原型作為芯片的替代時,需要進行相應(yīng)的修改,才能完成相應(yīng)功能,甚至有些功能最終無法覆蓋。

如果對FPGA中可以映射為ASIC的資源做逐一對比,我們可以得到這樣的表格。

pIYBAF9uJ4aAQSh4AAD7nwm1X60635.jpg

以上表格看出,除了普通的RTL邏輯以及基本端口,其他的類似存儲時鐘DSP等,最好都是做手動修改進行映射,把ASIC設(shè)計轉(zhuǎn)換為FPGA比較靠譜。

要把一塊ASIC做出FPGA的原型,需要大致一下步驟,

1 FPGA選型

2 做板或者購買原型板。

3 將ASIC設(shè)計轉(zhuǎn)換裝入FPGA

4 調(diào)試啟動FPGA原型

5 載入軟件協(xié)同運行

6 軟硬件系統(tǒng)驗證

下文就按照這些步驟逐一討論:

o4YBAF9uJ4iAMXp3AAEBWzRc4q8702.jpg

第一個就是FPGA的選型問題,在選型前,當然需要對ASIC的設(shè)計進行大致的了解,包括以下各方面:

o4YBAF9uJ4qAdelEAAGmAICMiGc702.jpg

選型問題最關(guān)心的幾個維度:

1 容量 其中包括純邏輯容量,存儲容量,dsp單元容量這些

2 內(nèi)置IP 包括時鐘,存儲控制,cpu等的硬核

3 接口 普通接口與專用高速接口

4 速度 資源占用率在50%左右時的速度,一般被用來評估原型

其中純邏輯容量,也就是ASIC中組合電路與觸發(fā)器的容量,是可以直接與FPGA中的資源換算的。

pIYBAF9uJ4uAdkgtAADaR2TgtwY986.jpg

比如上圖xilinx V7 2000T中有2.4M FF,大致對應(yīng)ASIC的2輸入與非門10M gates,如果使用率按照50%算,大概放置5M邏輯門沒問題。

內(nèi)置的存儲器,可以實現(xiàn)21M的單雙端口ramrom,fifo等,如果ASIC中使用的存儲稍微多一點,也可以用lut實現(xiàn)部分的存儲,替代block ram。

如果使用較多乘加運算,也可以映射fpga中的dsp器件實現(xiàn),具體各種型號的FPGA包含多少器件,可以參考xilinx文檔。

對于內(nèi)置ip,最先要考慮的,就是時鐘模塊MMCM,一般FPGA會有幾個到幾十個時鐘模塊,例如下表2000T中包含24個CMTs,也就是24個PLL和MMCM,每組PLL和MMCM可以對一個時鐘域的時鐘進行分頻倍頻。一般ASIC會包含多個時鐘域,每個時鐘域至少需要一個CMTs對時鐘進行操作,可以據(jù)此選擇使用哪個FPGA器件。

o4YBAF9uJ42ARDBeAADnTpKHPqw154.jpg

如要選擇帶有ARM硬核的FPGA來模擬ASIC中的ARM核,則需要選擇zynq系列。系統(tǒng)中自研的邏輯,則通過AXI掛入總線中,當然這樣未必能使FPGA與ASIC中的系統(tǒng)完全一致,但是作為一個圓形,也是足夠的,以下是部分帶有ARM核的FPGA的容量以及相應(yīng)IP情況

o4YBAF9uJ4-AUvhVAAFKa3PxTxc007.jpg

對于接口的限制,一般FPGA的普通接口數(shù)量夠大,不會成為瓶頸,主要在于ASIC所需的特定接口,在FPGA中是否能夠滿足,很多時候這些特定接口需要外接phy才能完成相應(yīng)功能。

影響FPGA最終運行速度的因素很多,包括代碼風格,具體設(shè)計,資源占用率,F(xiàn)PGA型號等,所以這需要在RTL代碼基本框架完成后,通過工具綜合才能得到一個大致數(shù)值,所以作為ASIC原型,盡量選擇速度夠快的FPGA。

通過以上限定條件,基本可以選出使用哪種FPGA型號,但是可能ASIC資源占用太多,任何一種都裝不下,這就有2種解決方式了。一種是分塊分別驗證,當然這樣風險極高,且沒法直接驗證最終系統(tǒng)。

另外就是使用多片F(xiàn)PGA得到原型,這就要涉及不同F(xiàn)PGA之中功能劃分的問題,這個是比較麻煩且有難度的事情,對FPGA電路設(shè)計,以及ASIC到FPGA的代碼轉(zhuǎn)換,都有挺多新問題。

第2步就是制版,這需要考量的方面也是相當多,比如信號完整性,電源問題,時鐘問題,可擴展性等,本人對此沒有直接經(jīng)驗,也就無從展開。當然對于需要多個FPGA的驗證板,一般實力的團隊,未必能搞定,所以選擇花錢買平安,直接選用類似HAPS這樣的驗證系統(tǒng),可能更靠譜。

第3步就是ASIC的設(shè)計裝入FPGA。這需要對原本面向ASIC的代碼,進行修改。

對于一般的純RTL邏輯,在ASIC中與FPGA中都可以綜合出可用結(jié)果,但是以下表中的器件,需要修改

pIYBAF9uJ5GAGe_YAAFHNTiKRdo580.jpg

芯片中的pad,一般是fab廠給出的硬核,具有輸入輸出,驅(qū)動上下拉控制等。在轉(zhuǎn)換成FPGA時,一般會在例化中直接用assign替代,并.XDC或者.v中指定上下拉等

如果有ASIC門級網(wǎng)表,可以把底層ASIC實例器件用verilog行為描述替換,在FPGA綜合中則可以對應(yīng)實現(xiàn)。其他的簡單cell例化,也可以這樣轉(zhuǎn)換一下。

對于存儲器,一般可以在FPGA中找到與ASIC功能一致的SRAM,ROM ,可以直接把FPGA MEM 外包一層改變端口名字,替代ASIC MEM。小的嵌入flash,則可以把FPGA的SRAM包一層邏輯來模仿。

其他的硬核IP, 可能需要在FPGA中尋找功能一致的,并相應(yīng)修改接口,與ASIC代碼中其他部分有效連接。

對于BIST,最直接的辦法是去除,一般不會影響實際功能。

對于各種門控時鐘,倍頻分頻等,一般需要針對FPGA做手動修改,使用DCM完成與芯片中時鐘一致的行為。

以下就一些修改中會出現(xiàn)的具體問題,詳細說明。

首先我們拿到的ASIC設(shè)計的結(jié)構(gòu),基本如下圖所示,最外一圈是各種pad ring,里邊先是芯片的各種輔助功能,包括 clk, rst, power, test,debug等。然后是與芯片實際功能相關(guān)的部分,可能包括部分模擬電路,數(shù)字電路包括cpu,mem 總線,各種邏輯控制等。我們需要明確用FPGA來原形驗證的,主要是數(shù)字電路中的那些核心功能,芯片核心外部的那些輔助邏輯,很多是需要修改的,也是無法得到驗證的。這里的pad一般直接在FPGA中直接去例化一個包含幾個assign語句的 FPGA PAD 等效實例,clk rst 需要根據(jù)具體上電順序,時鐘資源做調(diào)整,一般會對rst功能進行簡化,做成一個全局復(fù)位,clk中的分頻與關(guān)斷功能會放在CMT中實現(xiàn)。power控制,一般在FPGA中直接忽略,因為用FPGA幾乎無法模擬各種UPF指定的行為。debug test可以根據(jù)實際情況保留或者去除,但是即使保持,一般也不會真的去用。核心功能中需要更改的,一般就是各種內(nèi)部存儲器了。

o4YBAF9uJ5KAU4ItAABr-sbLcfw959.jpg

時鐘門控 clock gating 一般在ASIC中廣泛使用,一般會在clk模塊中例化成由latch與門組成的門控單元,對某個模塊進行時鐘控制。這些門控單元,如果直接在FPGA中例化為相同邏輯的latch與門,邏輯功能是沒有問題的。但是這時與門出來的受控時鐘,則不能再FPGA的專用時鐘網(wǎng)絡(luò)中走線,而是走普通的信號網(wǎng)絡(luò),這樣FPGA能達到的頻率很差。為了糾正這樣情況,可以把對寄存器的門控,放在寄存器端,也就是選用FPGA中行如FDCE這樣帶門控的寄存器。這個過程可以手動完成,但是比較麻煩,一般來說專門的FPGA綜合工具能做這種自動轉(zhuǎn)換。比如 vivado中使用 (* gated_clock = "true" *) input clk_a; 標定受控時鐘,并在腳本加入 -gated_clock_conversion on 綜合選項。

pIYBAF9uJ5SAMgUDAACEUPLqIb8614.jpg

當然如果需要的可控時鐘不太多,也就是少于FPGA中BUFGCE的數(shù)量,則可以直接把門控信號加在 BUFGCE的控制端,輸出就是走時鐘網(wǎng)絡(luò)的門控信號了。如果FPGA器件中有 BUFHCE,則可以對更多層級的時鐘進行門控,也就可以得到更多的受控時鐘。

有關(guān)FPGA門控時鐘的更詳細解釋,可以參照 https://forums.xilinx.com/t5/General-Technical-Discussion/Reg-Clock-gati...

ASIC轉(zhuǎn)變到FPGA使用的綜合約束,在SDC與XDC基本相容,例如

o4YBAF9uJ5WASP10AABCNnQArGg415.jpg

這些都可以直接使用,當然很多情況下FPGA還是不可能跑到ASIC速度,必須降速運行。另外還需要添加FPGA中對管腳位置,類型,驅(qū)動強度等的約束,以及一些綜合選項

以上即為對ASIC代碼更改的主要部分,在下到FPGA板調(diào)試前,最好對更改的FPGA代碼進行仿真,確認功能正常,減少上板調(diào)試的工作量。

第4步為啟動調(diào)試FPGA原型。

在把修改后的FPGA代碼裝入調(diào)試前,先需要保證FPGA板本身是正常可用的,這時如果是外購的開發(fā)板或者類似haps的驗證系統(tǒng),則會省去一些麻煩。

如果是頭次開發(fā)的FPGA板,則需要先裝入一個最簡單的FPGA鏡像文件,測試一下FPGA的電源供電,下載連接是否可用,然后通過幾個用于測試的FPGA文件,測試下板上與FPGA連接的其他器件是否正常工作。一般頭次設(shè)計的板子,多少會有各種問題,比如電源供電問題,管腳連接的差分信號匹配問題,阻抗匹配,電流驅(qū)動,信號質(zhì)量等問題 如果板子通過了以上測試,則可以認為電路硬件設(shè)計沒有問題,可以裝入FPGA原形文件進行測試了。

裝入修改了的FPGA原型模擬ASIC,一般不會一次成功,一般出現(xiàn)的問題可以分為以下三類:

1 RTL邏輯錯誤,包括原本ASIC既有的和修改過程引入的錯誤。

2 接口錯誤 與外部器件的電信號連接錯誤,包括電壓不匹配,驅(qū)動電流不一致等。

3 軟件錯誤 MCU運行的軟件沒有正確配置相關(guān)功能導(dǎo)致,這種一般在仿真中難以發(fā)現(xiàn),因為仿真很少運行真正的軟件系統(tǒng)。

對fpga原型的板上調(diào)試,可以歸納為以下步驟。

o4YBAF9uJ5eAT0qPAAEr1cN26H8340.jpg

當載入實際運行的軟件后,通過FPGA原型,就可以如同在實際芯片中一樣,對軟件進行測試修改,同時完成系統(tǒng)級的驗證工作了。也就進入了步驟5.6,這與普通的嵌入式軟件開發(fā)大致相同。

對于通過FPGA進行原型驗證,有以下設(shè)計流程上的建議,值得參考

o4YBAF9uJ5mALVsrAAEf9S9w9XY691.jpg

以上參考了xilinx網(wǎng)站內(nèi)容,以及FPMM等書。

編輯:hfy


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1643

    文章

    21963

    瀏覽量

    614078
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1242

    瀏覽量

    121985
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2182

    瀏覽量

    124349
  • 芯片設(shè)計
    +關(guān)注

    關(guān)注

    15

    文章

    1066

    瀏覽量

    55466
收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    AMD技術(shù)賦能西門子FPGA原型設(shè)計解決方案

    西門子的 Veloce proFPGA CS 是一款針對軟件驗證和軟硬件系統(tǒng)集成優(yōu)化的原型系統(tǒng)。它是一款基于 FPGA 的邏輯功能驗證級工具
    的頭像 發(fā)表于 02-27 11:48 ?587次閱讀

    新思科技推出基于AMD芯片的新一代原型驗證系統(tǒng)

    近日,新思科技宣布推出全新基于AMD Versal? Premium VP1902自適應(yīng)系統(tǒng)級芯片(SoC)的HAPS?原型驗證系統(tǒng),以此進一步升級其硬件輔助驗證(HAV)產(chǎn)品組合。 此次推出的全新
    的頭像 發(fā)表于 02-19 17:12 ?595次閱讀

    Nordic推出最新物聯(lián)網(wǎng)原型驗證平臺Thingy:91 X

    近日,全球低功耗無線連接解決方案的領(lǐng)軍企業(yè)Nordic Semiconductor正式推出了其最新的物聯(lián)網(wǎng)原型驗證平臺——Thingy:91 X。該平臺專為LTE-M、NB-IoT、Wi-Fi
    的頭像 發(fā)表于 12-11 10:13 ?1325次閱讀

    芯華章發(fā)布新一代FPGA原型驗證系統(tǒng)HuaPro P3

    近日,芯華章正式推出了其新一代高性能FPGA原型驗證系統(tǒng)——HuaPro P3。這款系統(tǒng)集成了最新一代的可編程SoC芯片,并配備了芯華章自主研發(fā)的HPE Compiler工具鏈,為用戶提供了更為強大
    的頭像 發(fā)表于 12-11 09:52 ?546次閱讀

    芯華章推出新一代高性能FPGA原型驗證系統(tǒng)

    華章科技,也在不斷提升硬件驗證的對應(yīng)方案和產(chǎn)品能力。 HuaPro P3作為芯華章第三代FPGA驗證系統(tǒng)產(chǎn)品,采用最新一代可編程SoC芯片,結(jié)合自研的HPE Compiler工具鏈,可
    發(fā)表于 12-10 10:49 ?535次閱讀
    芯華章推出新一代高性能<b class='flag-5'>FPGA</b><b class='flag-5'>原型</b><b class='flag-5'>驗證</b>系統(tǒng)

    國產(chǎn)EDA公司芯華章科技推出新一代高性能FPGA原型驗證系統(tǒng)

    作為國產(chǎn)EDA公司的芯華章科技,也在不斷提升硬件驗證的對應(yīng)方案和產(chǎn)品能力。 HuaPro P3作為芯華章第三代FPGA驗證系統(tǒng)產(chǎn)品,采用最新一代可編程SoC芯片,結(jié)合自研的HPE Co
    發(fā)表于 12-10 09:17 ?626次閱讀
    國產(chǎn)EDA公司芯華章科技推出新一代高性能<b class='flag-5'>FPGA</b><b class='flag-5'>原型</b><b class='flag-5'>驗證</b>系統(tǒng)

    FPGAASIC的區(qū)別 FPGA性能優(yōu)化技巧

    FPGAASIC的區(qū)別 FPGA(現(xiàn)場可編程門陣列)和ASIC(專用集成電路)是兩種不同的集成電路技術(shù),它們在多個方面存在顯著的區(qū)別: FPGA
    的頭像 發(fā)表于 12-02 09:51 ?879次閱讀

    FPGAASIC在大模型推理加速中的應(yīng)用

    隨著現(xiàn)在AI的快速發(fā)展,使用FPGAASIC進行推理加速的研究也越來越多,從目前的市場來說,有些公司已經(jīng)有了專門做推理的ASIC,像Groq的LPU,專門針對大語言模型的推理做了優(yōu)化,因此相比GPU這種通過計算平臺,功耗更低、
    的頭像 發(fā)表于 10-29 14:12 ?1798次閱讀
    <b class='flag-5'>FPGA</b>和<b class='flag-5'>ASIC</b>在大模型推理加速中的應(yīng)用

    數(shù)字芯片設(shè)計驗證經(jīng)驗分享文章 實際案例說明用基于FPGA原型來測試、驗證和確認IP——如何做到魚與熊掌兼

    本系列文章從數(shù)字芯片設(shè)計項目技術(shù)總監(jiān)的角度出發(fā),介紹了如何將芯片的產(chǎn)品定義與設(shè)計和驗證規(guī)劃進行結(jié)合,詳細講述了在FPGA上使用硅知識產(chǎn)權(quán)(IP)內(nèi)核來開發(fā)ASIC原型項目時,必須認真考
    的頭像 發(fā)表于 10-28 14:53 ?885次閱讀
    數(shù)字芯片設(shè)計<b class='flag-5'>驗證</b>經(jīng)驗分享文章 實際案例說明用基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>原型</b>來測試、<b class='flag-5'>驗證</b>和確認IP——如何做到魚與熊掌兼

    FPGAASIC的優(yōu)缺點比較

    適應(yīng)各種應(yīng)用場景。這意味著用戶可以根據(jù)需要,通過編程來更改FPGA的功能,而無需更改硬件設(shè)計。 設(shè)計周期短 :與ASIC相比,FPGA的設(shè)計、驗證和生產(chǎn)周期更短。這主要是因為
    的頭像 發(fā)表于 10-25 09:24 ?1542次閱讀

    解鎖SoC “調(diào)試”挑戰(zhàn),開啟高效原型驗證之路

    引言由于芯片設(shè)計復(fù)雜度的提升、集成規(guī)模的擴大,以及產(chǎn)品上市時間要求的縮短,使得設(shè)計驗證變得更加困難。特別是在多FPGA環(huán)境中,設(shè)計調(diào)試和驗證的復(fù)雜性進一步增加,傳統(tǒng)的調(diào)試手段難以滿足對高性能、高效率
    的頭像 發(fā)表于 10-09 08:04 ?1052次閱讀
    解鎖SoC “調(diào)試”挑戰(zhàn),開啟高效<b class='flag-5'>原型</b><b class='flag-5'>驗證</b>之路

    快速部署原型驗證:從子卡到調(diào)試的全方位優(yōu)化

    引言原型驗證是一種在FPGA平臺上驗證芯片設(shè)計的過程,通過在FPGA上實現(xiàn)芯片的設(shè)計原型,使得開
    的頭像 發(fā)表于 09-30 08:04 ?1008次閱讀
    快速部署<b class='flag-5'>原型</b><b class='flag-5'>驗證</b>:從子卡到調(diào)試的全方位優(yōu)化

    FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?

    ,共同進步。 歡迎加入FPGA技術(shù)微信交流群14群! 交流問題(一) Q:FPGA中的FPGA算法工程師、FPGA邏輯工程師、FPGA
    發(fā)表于 09-23 18:26

    ASIC IP核移植到FPGA上——更新概念并推動改變以完成充滿挑戰(zhàn)的任務(wù)!

    本系列文章從數(shù)字芯片設(shè)計項目技術(shù)總監(jiān)的角度出發(fā),介紹了如何將芯片的產(chǎn)品定義與設(shè)計和驗證規(guī)劃進行結(jié)合,詳細講述了在FPGA上使用IP核來開發(fā)ASIC原型項目時,必須認真考慮的一些問題。文
    的頭像 發(fā)表于 08-10 17:13 ?1036次閱讀
    將<b class='flag-5'>ASIC</b> IP核移植到<b class='flag-5'>FPGA</b>上——更新概念并推動改變以完成充滿挑戰(zhàn)的任務(wù)!

    大規(guī)模 SoC 原型驗證面臨哪些技術(shù)挑戰(zhàn)?

    引言隨著電子設(shè)計自動化(EDA)驗證工具的重要性日益增加,開發(fā)者們開始尋求減少流片成本和縮短開發(fā)周期的方法。其中,使用可編程邏輯芯片(FPGA)來構(gòu)建有效的驗證流程成為一種流行的解決方案
    的頭像 發(fā)表于 06-06 08:23 ?1490次閱讀
    大規(guī)模 SoC <b class='flag-5'>原型</b><b class='flag-5'>驗證</b>面臨哪些技術(shù)挑戰(zhàn)?