加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

多核及GPU的影響下,F(xiàn)PGA產(chǎn)業(yè)前景如何?

09/26 12:20
940
閱讀需 16 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

大俠好,歡迎來到FPGA技術(shù)江湖,江湖偌大,相見即是緣分。大俠可以關(guān)注FPGA技術(shù)江湖,在“闖蕩江湖”、"行俠仗義"欄里獲取其他感興趣的資源,或者一起煮酒言歡?!爸缶蒲詺g”進(jìn)入IC技術(shù)圈,這里有近100個IC技術(shù)公眾號。

今天給大俠帶來在FPAG技術(shù)交流群里平時討論的問題答疑合集(二十),以后還會多推出本系列,話不多說,上貨。

Q:多核、GPU的威脅下,F(xiàn)PGA產(chǎn)業(yè)前景幾何?

看到2011年的一篇文章《FPGA末日來臨?多核處理器便可取代之-FPGA》。里面提到多核和GPU會對FPGA的產(chǎn)業(yè)造成一定影響。我在通信行業(yè)工作了幾年,稍微有點了解。通信行業(yè)里面,F(xiàn)PGA目前的現(xiàn)狀,只是做純接口轉(zhuǎn)換,其他本來可以使用FPGA的地方,最終使用了NP(包分類)、或者多核(上層業(yè)務(wù)處理,例如cavium)。有說在視頻處理以及安防市場,也在使用多核取代FPGA。當(dāng)然有些場合只能使用FPGA,例如芯片驗證。我想知道FPGA產(chǎn)業(yè)未來前景如何?

補充:

1.不是對比FPGA和其他芯片的性能。我說的是很多應(yīng)用場景用其他芯片(其他芯片技術(shù)的進(jìn)步)替換掉FPGA(當(dāng)然可以使用FPGA,也能工作好好的)。

2.所使用的芯片牛,和產(chǎn)品賣的好是沒有必然的關(guān)系的。公司里面講究的是投入產(chǎn)出比,在預(yù)算范圍內(nèi),實現(xiàn)同一個功能的產(chǎn)品,所有方案中,通常采用成本低(包括采購和人力成本)、易開發(fā)(快速開發(fā)完成)、易維護(hù)的方案。

3.還有公司不是學(xué)校實驗室,做各種FPGA開發(fā)板,用FPGA來做各種實驗,公司做的是產(chǎn)品。公司里從決定做的那一刻開始,F(xiàn)PGA的絕大部分功能就已經(jīng)固定了。

4.理論上說在FPGA使用量大的時候會去流片,但根據(jù)我這幾年的工作經(jīng)驗,使用FPGA的公司,要么就一直使用FPGA,要么找其他替代芯片,我沒有見過那家公司剛開始使用FPGA然后自己去流片的。當(dāng)然不是說不存在,我是說這個比例很小。

FPGA相比于C代碼的開發(fā)難度還是很大的。舉幾個簡單例子:

1.多核、NP之類的芯片不需要考慮資源和時許收斂的問題;

2.招一個C程序員太容易了,會寫C的程序員數(shù)量要遠(yuǎn)遠(yuǎn)多于FPGA開發(fā)人員,而且培養(yǎng)C程序員要容易的多。

3.FPGA的編譯時間太長,一顆V7或者S5編譯一次有可能需要12到24小時不等,代碼每次改動都需要重新編譯(雖然使用partition可以稍微縮短時間,但是效果不是那么好);

4.FPGA的調(diào)試難度大,無非就是抓波、添加調(diào)試寄存器,兩者都無法繞過編譯時間的問題。

回到我所說的問題,有可能在某些行業(yè),由于某些芯片技術(shù)的進(jìn)步,成本相當(dāng)?shù)那闆r下已經(jīng)能夠?qū)崿F(xiàn)FPGA的相同的功能,此時FPGA就有被替代的可能。

A:多核和 GPU 確實有沖擊,但是不能一概而論, FPGA 有獨特的優(yōu)勢和廣闊的市場前景,仍然具有很強的競爭力。隨著技術(shù)的不斷進(jìn)步和市場需求的不斷增加,F(xiàn)PGA 產(chǎn)業(yè)仍具有廣闊的前景,簡單列舉一些,僅供參考:

一、FPGA 的獨特優(yōu)勢

1. 靈活性:

? FPGA 可以根據(jù)不同的應(yīng)用需求進(jìn)行編程和重新配置,這使得它在應(yīng)對不斷變化的市場需求和技術(shù)標(biāo)準(zhǔn)時具有極大的優(yōu)勢。與其他芯片相比,F(xiàn)PGA 不需要進(jìn)行漫長的流片過程,能夠快速實現(xiàn)產(chǎn)品的迭代和升級。

? 在一些新興領(lǐng)域,如人工智能、5G 通信、物聯(lián)網(wǎng)等,應(yīng)用場景的多樣性和不確定性使得 FPGA 的靈活性成為關(guān)鍵優(yōu)勢。例如,在 5G 基站中,F(xiàn)PGA 可以根據(jù)不同的通信協(xié)議和頻段進(jìn)行調(diào)整,滿足不同運營商的需求。

2. 高性能:

? 雖然多核和 GPU 在某些方面具有強大的計算能力,但 FPGA 在特定任務(wù)上的性能表現(xiàn)并不遜色。例如,在數(shù)據(jù)中心的網(wǎng)絡(luò)加速、視頻處理等領(lǐng)域,F(xiàn)PGA 可以實現(xiàn)低延遲、高吞吐量的數(shù)據(jù)處理,這對于實時性要求較高的應(yīng)用至關(guān)重要。

? FPGA 可以并行處理多個任務(wù),并且可以針對特定的算法進(jìn)行優(yōu)化,從而提高計算效率。與通用處理器相比,F(xiàn)PGA 在處理特定任務(wù)時能夠提供更高的性能和更低的功耗。

3. 低功耗

? 在一些對功耗要求嚴(yán)格的應(yīng)用場景,如移動設(shè)備、嵌入式系統(tǒng)等,F(xiàn)PGA 的低功耗特性使其成為理想的選擇。與多核和 GPU 相比,F(xiàn)PGA 在運行時的功耗較低,能夠延長設(shè)備的電池壽命或降低系統(tǒng)的散熱需求。

? FPGA 可以通過動態(tài)調(diào)整功耗模式來適應(yīng)不同的工作負(fù)載,進(jìn)一步降低功耗。例如,在空閑狀態(tài)下,F(xiàn)PGA 可以進(jìn)入低功耗模式,減少能量消耗。

二、市場需求的推動

1. 新興領(lǐng)域的發(fā)展:

? 隨著人工智能、5G 通信、物聯(lián)網(wǎng)等新興技術(shù)的快速發(fā)展,對高性能、低功耗、靈活可配置的芯片需求不斷增加。FPGA 正好滿足這些需求,因此在這些領(lǐng)域具有廣闊的應(yīng)用前景。

? 例如,在人工智能領(lǐng)域,F(xiàn)PGA 可以用于加速深度學(xué)習(xí)算法的推理過程,提高計算效率;在 5G 通信中,F(xiàn)PGA 可以實現(xiàn)基站的信號處理和網(wǎng)絡(luò)加速;在物聯(lián)網(wǎng)中,F(xiàn)PGA 可以實現(xiàn)傳感器數(shù)據(jù)的處理和傳輸。

2. 定制化需求:

? 許多行業(yè)對芯片的定制化需求較高,而 FPGA 可以滿足這種需求。與通用芯片相比,F(xiàn)PGA 可以根據(jù)客戶的具體要求進(jìn)行定制化設(shè)計,提供更加個性化的解決方案。

? 例如,在醫(yī)療設(shè)備、工業(yè)自動化、航空航天等領(lǐng)域,對芯片的性能、可靠性和安全性要求較高,需要進(jìn)行定制化設(shè)計。FPGA 可以根據(jù)這些特殊需求進(jìn)行編程和優(yōu)化,滿足客戶的要求。

三、技術(shù)發(fā)展的趨勢

1. 先進(jìn)制程的應(yīng)用:

? 隨著半導(dǎo)體技術(shù)的不斷進(jìn)步,F(xiàn)PGA 也在不斷采用先進(jìn)的制程工藝,提高性能和降低功耗。例如,目前的 FPGA 已經(jīng)采用了 7nm、5nm 等先進(jìn)制程工藝,未來還將繼續(xù)向更先進(jìn)的制程邁進(jìn)。

? 先進(jìn)制程的應(yīng)用使得 FPGA 能夠集成更多的邏輯單元和存儲器,提高芯片的性能和功能。同時,先進(jìn)制程也有助于降低 FPGA 的功耗,提高芯片的可靠性。

2. 軟件定義硬件的趨勢:

? 軟件定義硬件(SDH)是一種新興的技術(shù)趨勢,它將軟件的靈活性和硬件的高性能相結(jié)合。FPGA 正好符合 SDH 的理念,通過軟件編程可以實現(xiàn)對硬件的重新配置和優(yōu)化。

? 隨著 SDH 技術(shù)的不斷發(fā)展,F(xiàn)PGA 的應(yīng)用范圍將進(jìn)一步擴大。未來,F(xiàn)PGA 可能會成為軟件定義網(wǎng)絡(luò)(SDN)、軟件定義存儲(SDS)等領(lǐng)域的核心芯片,為數(shù)據(jù)中心、云計算等應(yīng)用提供更加靈活和高效的解決方案。

3. 與其他技術(shù)的融合:

? FPGA 可以與其他技術(shù)進(jìn)行融合,形成更加強大的解決方案。例如,F(xiàn)PGA 可以與多核處理器、GPU、ASIC 等芯片進(jìn)行協(xié)同工作,發(fā)揮各自的優(yōu)勢,提高系統(tǒng)的性能和效率。

? 此外,F(xiàn)PGA 還可以與傳感器、通信模塊等外設(shè)進(jìn)行集成,實現(xiàn)更加智能化的應(yīng)用。例如,在物聯(lián)網(wǎng)中,F(xiàn)PGA 可以與傳感器集成在一起,實現(xiàn)對環(huán)境數(shù)據(jù)的實時處理和傳輸。

等等……

Q:PHY芯片B50612在幀間隔十幾毫秒會出現(xiàn)丟幀情況,發(fā)端TXEN拉起來了,收端RXDV沒拉起來咋辦?

各位大佬!請教一個問題,千兆以太網(wǎng)PHY芯片B50612在幀間隔十幾毫秒左右會出現(xiàn)丟幀情況發(fā)端TXEN拉起來了,收端RXDV沒拉起來,有誰有遇到過嗎?

A:這種情況可能由多種原因引起。以下是一些可能的原因及解決方法,僅供參考:

一、硬件問題

1. 檢查連接:

● 確保芯片的連接穩(wěn)定,包括引腳連接、電源供應(yīng)等。檢查是否有松動的連接或焊接不良的地方。

● 確認(rèn)傳輸線路的質(zhì)量,是否存在干擾或信號衰減的情況??梢允褂?a class="article-link" target="_blank" href="/baike/491602.html">示波器等工具檢查信號的完整性。

2. 時鐘問題:

● 檢查時鐘源是否穩(wěn)定,時鐘頻率是否正確。不穩(wěn)定的時鐘可能導(dǎo)致數(shù)據(jù)傳輸錯誤。

● 確保時鐘信號的相位和同步正確,以保證收發(fā)兩端的同步。

3. 電源問題:

● 檢查芯片的電源供應(yīng)是否穩(wěn)定,電壓是否在正常范圍內(nèi)。不穩(wěn)定的電源可能導(dǎo)致芯片工作異常。

● 確認(rèn)電源的紋波和噪聲是否在可接受范圍內(nèi),過高的紋波和噪聲可能影響芯片的性能。

二、軟件配置問題

1. 寄存器設(shè)置:

● 檢查 PHY 芯片的寄存器設(shè)置是否正確。確保配置參數(shù)與你的應(yīng)用需求相匹配。

● 特別是與幀間隔相關(guān)的參數(shù),如幀間間隔時間、幀長度等,可能需要根據(jù)實際情況進(jìn)行調(diào)整。

2. 驅(qū)動程序問題:

● 確認(rèn)使用的驅(qū)動程序是否與 B50612 芯片兼容,并且是最新版本。舊版本的驅(qū)動程序可能存在 bug。

● 檢查驅(qū)動程序的配置是否正確,包括中斷處理、數(shù)據(jù)接收和發(fā)送的設(shè)置等。

三、環(huán)境因素

1. 電磁干擾

● 檢查周圍環(huán)境是否存在電磁干擾源,如電機、電源適配器等。電磁干擾可能導(dǎo)致數(shù)據(jù)傳輸錯誤。

● 可以采取屏蔽措施,如使用屏蔽電纜、增加接地等,來減少電磁干擾。

2. 溫度問題:

● 檢查芯片的工作溫度是否在正常范圍內(nèi)。過高或過低的溫度可能影響芯片的性能。

● 如果可能,可以使用散熱器或溫度控制設(shè)備來保持芯片的溫度穩(wěn)定。

如果你嘗試了以上方法仍然無法解決問題,建議參考芯片的數(shù)據(jù)手冊、應(yīng)用筆記或聯(lián)系芯片廠商的技術(shù)支持人員,以獲取更詳細(xì)的幫助和解決方案。

Q:stm32該如何深層次學(xué)習(xí)呢?

我想問問關(guān)于stm32F4的學(xué)習(xí)問題?我現(xiàn)在需要熟練掌握stm32某一系列的功能和使用,本來是想跟著江科大的視頻學(xué)的,但是手上已經(jīng)有了一塊stm32F407vet6,不是它教程里用的f103,也有一些什么面包板,led燈等一些小工具,就不大愿意再買他的套件了。但問題在于我手上這款stm32f407vet6它又不是正點原子用的那種什么探索者,是一塊大越電子出的開發(fā)板,比教程上的少很多外設(shè)。我想問問這樣子還能跟著正點原子它的教程學(xué)嗎?或者說還有什么其它書籍或者學(xué)習(xí)資料推薦一下,我感覺直接讀數(shù)據(jù)手冊讀的不是很懂。另外,stm32串口驅(qū)動什么的那種比較底層的東西該如何去學(xué)呢?

A:以下是關(guān)于深入學(xué)習(xí) STM32的建議,個人觀點,僅供參考:

一、學(xué)習(xí)資源選擇

1. 對于你手頭的 STM32F407VET6 開發(fā)板,雖然與正點原子的探索者開發(fā)板不同,但很多基礎(chǔ)知識和原理是相通的??梢詤⒖颊c原子的教程,但在實際操作中可能需要根據(jù)自己開發(fā)板的特點進(jìn)行一些調(diào)整。同時,也可以在網(wǎng)上搜索針對你所使用開發(fā)板的例程和教程,可能會有一些開發(fā)者分享的經(jīng)驗和資源。

2. 書籍方面,推薦《STM32 庫開發(fā)實戰(zhàn)指南》《ARM Cortex-M3 與 Cortex-M4 權(quán)威指南》等。這些書籍可以幫助你深入理解 STM32 的架構(gòu)、原理和編程方法。

二、深入學(xué)習(xí)底層驅(qū)動

1. 首先,要熟悉 STM32 的寄存器結(jié)構(gòu)和功能??梢酝ㄟ^閱讀芯片的數(shù)據(jù)手冊,了解串口等外設(shè)的寄存器配置方法。雖然直接讀數(shù)據(jù)手冊可能比較晦澀,但這是深入理解底層驅(qū)動的基礎(chǔ)。

2. 學(xué)習(xí) STM32 的固件庫。固件庫提供了一系列函數(shù),方便開發(fā)者進(jìn)行編程。通過研究固件庫中串口相關(guān)的函數(shù),可以了解串口驅(qū)動的實現(xiàn)原理。同時,可以自己動手修改函數(shù)參數(shù),觀察不同配置下串口的工作情況。

3. 參考開源項目。在 GitHub 等平臺上有很多基于 STM32 的開源項目,其中不乏優(yōu)秀的串口驅(qū)動實現(xiàn)??梢詫W(xué)習(xí)這些項目的代碼,了解不同的編程風(fēng)格和實現(xiàn)方法。

4. 進(jìn)行實踐項目。通過實際的項目開發(fā),如實現(xiàn)串口與其他設(shè)備的通信、構(gòu)建多串口通信系統(tǒng)等,加深對串口驅(qū)動的理解和掌握。在實踐過程中,遇到問題及時查閱資料和請教他人,不斷積累經(jīng)驗。

三、學(xué)習(xí)方法

1. 理論與實踐相結(jié)合。在學(xué)習(xí)過程中,不僅要掌握理論知識,還要通過實際的編程和調(diào)試來加深理解。多動手實踐,嘗試不同的功能和配置,觀察結(jié)果并分析原因。

2. 做好筆記和總結(jié)。在學(xué)習(xí)過程中,及時記錄重要的知識點、問題和解決方法。定期進(jìn)行總結(jié),梳理所學(xué)知識,形成自己的知識體系。

3. 加入技術(shù)社區(qū)??梢约尤?STM32 相關(guān)的技術(shù)論壇、QQ 群等社區(qū),與其他開發(fā)者交流經(jīng)驗、分享問題和解決方案。在社區(qū)中可以學(xué)習(xí)到很多實用的技巧和方法,同時也能拓寬自己的視野。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

任何技術(shù)的學(xué)習(xí)就好比一個江湖,對于每一位俠客都需要不斷的歷練,從初入江湖的小白到歸隱山林的隱世高人,需要不斷的自我感悟自己修煉,讓我們一起仗劍闖FPGA乃至更大的江湖。