色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

深入了解FPGA廠商并掌握FPGA編程語言

FPGA設計論壇 ? 來源:FPGA設計論壇 ? 作者:FPGA設計論壇 ? 2022-10-20 14:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

FPGA(Field-Programmable Gate Array),即現場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎上進一步發展的產物。而且FPGA開發工程師是一個相對高薪的工作,學習的人也不少。然而對于剛入門的初學者來說,總有一種無從下手的感覺。本文是來自一個資深FPGA工程師的自述,他從FPGA的的基礎知識開始介紹,提出學習FGPA需要注重的要點,并用自己的親身經歷驗證和告誡廣大愛好者,經驗都是從實踐中獲得,多動手才是王道。

深入了解FPGA廠商并掌握FPGA編程語言

談FPGA之前,先說說生產廠商吧。全球知名的FPGA生產廠商有:

1.Altera,開發平臺是Quartus II

2.Xilinx?開發平臺是ISE

3.Actel ,開發平臺是Libero

4.Lattice

5.Atmel

其中Altera作為世界老牌可編程邏輯器件的廠家,是可編程邏輯器件的發明者,開發軟件MAX+PLUSII和QuartusII。記得上學的時候用的用的就是altera的芯片,當時的工具也是MAX,現在感覺當時的軟件很強大了,現在感覺比較弱智了,下載FPGA就是用串口,當時的時鐘速率也就是25M左右,用的是試驗箱,就是一個大箱子,里面有板子和說明,板子上還有8位數碼管和跳線,當時感覺好神奇啊,現在感覺那是個垃圾、廢物,忘記是那個廠家了。

Xilinx是FPGA的發明者,擁有世界一半以上的市場,提供90%的高端65nmFPGA產品,開發軟件為ISE,其產品主要用于軍用和宇航。畢業后就是xilinx的,altera的很少用,大家一定問為什么,我也畢業的時候也是這樣問老大的,老大說altera的不好用,我也有點氣不忿兒,現在看來確實是這樣,總結幾點:

1:xilinx的資源豐富,新手會說很雜不容易用,但是如果上手之后,里面的資源確實會為你處理帶來方便,比如BUFG,IODELAY,ODDR,OBUFT等等這些小的資源,還有一些IPcore,altera的好像要少些。

2:xilinx邏輯量比較大,一些大容量的FPGA好像altera沒有這么大的,比如V5,V6,V7,K7,這些altera是遠遠沒有的。不過也帶來了隱患,比如說散熱。不過有一點xilinx好像沒有altera的做的好,那就是高速查分線,xilinx叫GTP,GTX,GTH,現在好像也區別不大了。

Altera和Xilinx主要生產一般用途FPGA,其主要產品采用RAM工藝。Actel主要提供非易失性FPGA,產品主要基于反熔絲工藝和FLASH工藝。

講到FPGA語言就不得不講verilog 和VHDL,本人大學學的是VHDL,工作就一直在用VHDL。我覺得veilog更接近底層,關鍵是更接近C,所以被FPGA工程師所喜歡。HDL特別是Verilog HDL得到在第一線工作的設計工程師的特別青睞,不僅因為HDL與C語言很相似,學習和掌握它并不困難,更重要的是它在復雜的SOC的設計上所顯示的非凡性能和可擴展能力。在學習HDL語言時,筆者認為先學習VerilogHDL比較好:一是容易入門;二是接受Verilog HDL代碼做后端芯片的集成電路廠家比較多,現成的硬核、固核和軟核比較多。

實現起來,veilog更容易實現。比如說要例化多個模塊,我們就可以用for語句,并且這個是可綜合的。我們在申明總線時,由于比較繁瑣的語句的時候,稍不注意還會有書寫錯誤。

我們都知道FPGA一般作為主控芯片,I2C也一般是做主設備。但是大家有沒有遇到過做從設備的情況,從設備穩定嗎?一般情況下,I2C做從設備是不好做的,特別是做大容量的從設備。I2C看起來簡單,但是里面還有很多問題,如果我們只考慮簡單的7為device address,8 bit register address,數據讀寫位也是簡單的8bit的話,另外讀寫只是簡單的I2C interface的話,還簡單些。

如果要考慮大容量的,如16bit的設備地址,讀的情形考慮到簡單的接口外還要考慮有restart的情況,就不好做了,如果要考慮的再細一點,特別是做圖像處理的話,讀寫EDID的時候有個搜索device設備的過程,這種情形恐怕做好的就不容易了。

如果你是大廠商,像一些AT的ROM,Flash等公司,做的也是巨爛,我們用他們的芯片,用ARM訪問也是會有一些問題,就是他們考慮的不太周全。像一些圖像驅動的廠商,做的I2C相對來說還好些;通信設備的I2C寫的也是很差,控制起來比較麻煩,像一些光纖收發器的廠商,也就是光模塊的廠商,有的時候你用ARM等標準設備訪問的時候,也會有一些問題。所以你如果要做個I2C的從設備的話,要考慮的周全一些,這樣我們的芯片健壯性就會比較高。

做FPGA代碼,其中一個最重要的步驟,那就是仿真。仿真簡單的說,就是驗證代碼是否正確。里面就包含了很多仿真的東西,測試平臺的搭建,庫的建立等等。最讓我們忽略的恐怕就是線延時了。有的時候我們仿真正確,但是加載到FPGA里面就不正確了,這是為什么呢?你忽略了一個問題,那就是線延時。你的接口從FPGA到接口芯片肯定鋪銅線過去了,中間這段走線是有延時。所以在我們仿真的時候,測試平臺要在庫和頂層之間加上一定的延時。這樣來保證我們代碼的正確。

精品來自于于千錘百煉 要不斷的發現問題才能解決問題

如果我們用FPGA只是做個小程序實驗實驗我們的功能,應該說還是比較容易的;如果我們用FPGA作產品,那么你要考慮的要很多,有的時候你覺得你的代碼很完美,實驗也沒啥問題,那么你有沒有讓你的程序跑一年甚至是更遠時間,你有沒有把你的程序放在各種環境下實驗。如果說你認為這是芯片的問題和你的程序沒有關系,這就大錯特錯了。這些最終考究的就是你的代碼的健壯性,也就是說的精品來自于千錘百煉。

這里我們談談FPGA需要注意的兩點:

1:調試各類驅動芯片;如果做通信的話,有各種通信芯片,主要包括PHY芯片,通信交換芯片,光纖驅動芯片等,各類芯片。另外還有各種通信接口。這些接口和芯片需要時間去調試和積累,這些不是在論壇上能完成的,這個過程是要在實驗室來完成的。

2:定位FPGA的位置,FPGA要了解的大部分不是FPGA知識,而是硬件知識和軟件知識,這是因為FPGA的位置是FPGA的硬件和軟件的橋梁。首先要了解硬件,大部分做FPGA不太關注硬件問題,都認為硬件不是FPGA的問題,這就大錯特錯了,硬件設計的好壞直接影響到FPGA工作的質量。

親身經歷驗證對任何問題要有懷疑自我的精神

先描述下邏輯:FPGA實現一個邏輯,每按下一個按鈕(邏輯做了消抖),出現10個200ns的脈沖,然后通過示波器抓輸出波形,示波器出發條件,設置自動觸發(上升沿)或者條件觸發<1ms都試過。

問題出現:每次按下按鈕,不是每次都能在示波器看到脈沖波形,大概按下10次會有1-2次示波器抓不到波形!首先我懷疑是我做的邏輯問題,這個樓主一貫的風格,先懷疑自己,驗證自己沒有問題了再懷疑相關,而不是想當然說自己這個沒問題那個沒問題,我覺得這點很重要,就是懷疑精神,我發現設計工程師都想把自己推的一干二凈,說自己的沒有問題,我覺得出現問題任何地方都是值得懷疑的,先去檢查自己,不是說自己沒問題就沒有問題的,如果后來證明是自己的問題,這不相當于自己打自己的臉嗎!總結一點:要有懷疑精神,所有相關的都是值得懷疑的。

回歸正題,然后我用chipesope抓到是輸出邏輯有波形,但是示波器上看不到,出現這種情況大家會怎么做?我輸出邏輯沒有問題后,我就想是不是IO的驅動能力,因為我外面直接用示波器測量的,是不是沒有負載,所有輸出不正常,基于這點,然后我把輸出的邏輯再接入到FPGA某一輸入管腳,然后又寫著一段程序,檢測輸入是不是有信號過來,然后做了計數之類,結果發現,當示波器沒有波形的時候,輸入的信號也有,計數也正常。出現這種情況大家會怎么做?

是不是同一芯片的問題,然后我把這個輸出的管腳飛線到另外一個芯片,當示波器沒有波形的時候,另外一個芯片輸入的信號也有!

基于以上測試,我大膽預測是示波器的問題,也不能說是示波器的問題吧,估計是沒有這種的應用場景。然后我有試了另外一家的芯片,寫上同樣的邏輯,測試結果一樣。做了這么多試驗,也證明了,就是示波器沒有這樣的場景。用的示波器是泰克的2032等,試了他的兩款表,都是如此,不是黑他的表,我估計所有的表也都是如此。

經驗是從實踐中獲得 多動手才是王道

FPGA新手總是覺得FPGA無從下手,也不知道該如何下手。包括剛開始做FPGA開發時候的我,也是如此。針對這種情況,我還是勸新手們,多做點試驗,多有點想法,然后試著寫些小的程序,然后再FPGA上驗證功能,如果不是你想要的,那就再調試,慢慢的你就學習到一些實踐的東西。因為最終FPGA不是理論,他要靠實踐來完成,你才知道哪些是對的哪些是錯的。光靠書本不去試驗肯定是不行的,所以勸大家多動動手。

目前覺得fpga的發展方向:1:接口統一化,類似于AXI系接口;2:硬件語言軟件化;3:系統化。以后fpga開發難度會越來越下降,也是技術開發的方向。擱在幾年前,硬件很吃香,現在幾乎不需要硬件工程師。其實也不是不需要,而是硬件越來越標準化,一個行業越來越標準,說明開發的難度也隨之降低。

做開發,心態問題很重要,什么人適合做研發,什么人適合做銷售。我覺得這個是勉強不來的。有的人做銷售,不需要什么技術和技巧,因為他從小就能說會道,周邊的人都比較喜歡,和別人溝通,交際這方面比較擅長。如果是這樣的人,就適合做銷售和行政之類,和別人打交道的工作。如果你讓這些人做技術,他坐不住,處處感覺別扭。有的人做研究,我覺得同樣也不需要太多的技術,因為他從小就沉默寡言,喜歡發呆思考問題,數理化總能不怎么學都能考試高分,但是如果家里來了親戚,確害羞的不愛說話,也就是人們常說的木訥,這些人適合做技術。如果你讓這些人做銷售,單子估計一個也接不到。所以我覺得不管做什么,根絕自己的性格找到合適的工作,這樣身心愉悅!

審核編輯 :李倩

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

    關注

    1646

    文章

    22059

    瀏覽量

    619159
  • 邏輯器件
    +關注

    關注

    0

    文章

    90

    瀏覽量

    20423
  • 編程語言
    +關注

    關注

    10

    文章

    1956

    瀏覽量

    36754

原文標題:FPGA工程師自述:實踐中獲得經驗 多動手才是王道

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【經驗分享】玩轉FPGA串口通信:從“幻覺調試”到代碼解析

    FPGA開發,思路先行!玩FPGA板子,讀代碼是基本功!尤其對從C語言轉戰FPGA的“寶貝們”來說,適應流水線(pipeline)編程可能需
    的頭像 發表于 06-05 08:05 ?327次閱讀
    【經驗分享】玩轉<b class='flag-5'>FPGA</b>串口通信:從“幻覺調試”到代碼解析

    fpga和cpu的區別 芯片是gpu還是CPU

    一、FPGA與CPU的區別 FPGA(Field-Programmable Gate Array,現場可編程門陣列)和CPU(Central Processing Unit,中央處理器)是兩種不同類
    的頭像 發表于 02-01 14:57 ?1679次閱讀

    FPGA與ASIC的區別 FPGA性能優化技巧

    FPGA與ASIC的區別 FPGA(現場可編程門陣列)和ASIC(專用集成電路)是兩種不同的集成電路技術,它們在多個方面存在顯著的區別: FPGA ASIC 基本定義 由通用的邏輯單元
    的頭像 發表于 12-02 09:51 ?1087次閱讀

    玩轉FPGA必備的基礎知識

    ,那我們首先最重要的當然是要了解什么FPGAFPGA(Field-Programmable Gate Array),即現場可編程門陣列。看到編程
    的頭像 發表于 11-28 10:24 ?870次閱讀

    XILINX FPGA Verilog編程大全2015

    不錯的FPGA編程書籍
    發表于 11-26 13:59 ?8次下載

    Verilog vhdl fpga

    編程語言,熟悉時序約束、時序分析方法; 4.熟悉FPGA開發環境及仿真調試工具。 5.熟悉FPGA外部存儲控制器及數據傳輸接口,如E2PROM、FLASH、DDR等。有
    發表于 11-12 16:40

    詳解FPGA的基本結構

    ZYNQ PL 部分等價于 Xilinx 7 系列 FPGA,因此我們將首先介紹 FPGA 的架構。簡化的 FPGA 基本結構由 6 部分組成,分別為可編程輸入/輸出單元、基本可
    的頭像 發表于 10-25 16:50 ?3387次閱讀
    詳解<b class='flag-5'>FPGA</b>的基本結構

    FPGA與ASIC的優缺點比較

    FPGA(現場可編程門陣列)與ASIC(專用集成電路)是兩種不同的硬件實現方式,各自具有獨特的優缺點。以下是對兩者優缺點的比較: FPGA的優點 可編程性強 :
    的頭像 發表于 10-25 09:24 ?1753次閱讀

    FPGA加速深度學習模型的案例

    FPGA(現場可編程門陣列)加速深度學習模型是當前硬件加速領域的一個熱門研究方向。以下是一些FPGA加速深度學習模型的案例: 一、基于FPGA的AlexNet卷積運算加速 項目名稱
    的頭像 發表于 10-25 09:22 ?1279次閱讀

    FPGA編程語言的入門教程

    FPGA(現場可編程邏輯門陣列)的編程涉及特定的硬件描述語言(HDL),其中Verilog和VHDL是最常用的兩種。以下是一個FPGA
    的頭像 發表于 10-25 09:21 ?1280次閱讀

    FPGA芯片架構和資源有深入的理解,精通Verilog HDL、VHDL

    、計算機相關專業,具有良好的專業基礎知識。 2.工作年限不限,有工作經驗或優秀應屆畢業生亦可。 3.對FPGA芯片架構和資源有深入的理解,精通Verilog HDL、VHDL編程語言
    發表于 09-15 15:23

    為什么FPGA屬于硬件,還需要搞算法?

    ,就 需要設計相應的算法來指導硬件資源的配置和利用,以達到期望的性能和功能。 關于學習 FPGA 時先接觸語法,這是因為需要掌握如何用特定的編程語言來描述電路的邏輯和功能。這類
    發表于 09-09 16:54

    深入了解PCI轉XMC載板轉接卡

    電子發燒友網站提供《深入了解PCI轉XMC載板轉接卡.docx》資料免費下載
    發表于 09-06 14:35 ?0次下載

    國產FPGA的發展前景是什么?

    ,提升產品性能和技術水平。通過與國際巨頭的合作與競爭,國產FPGA在容量、制程、性能等方面逐步縮小與國際先進水平的差距。 技術創新:國產FPGA廠商積極探索新技術、新應用,如SoC FPGA
    發表于 07-29 17:04

    技術干貨驛站 ▏深入理解C語言掌握程序結構知識

    在計算機編程的世界中,C語言被廣泛認可為一門強大而高效的編程語言,其簡潔的語法和直接的指令使得它成為了許多程序員的首選。了解C
    的頭像 發表于 07-27 08:45 ?1879次閱讀
    技術干貨驛站 ▏<b class='flag-5'>深入</b>理解C<b class='flag-5'>語言</b>:<b class='flag-5'>掌握</b>程序結構知識
    主站蜘蛛池模板: 征服艳妇后宫春色 | 日本免费无码A专区在线观看 | 亚洲热在线视频 | 久久热最新网站获取3 | 欧美.亚洲.日韩.天堂 | 99久久精品费精品蜜臀AV | 老色69久久九九精品高潮 | 高h浪荡文辣文神奇宝贝 | 亚洲国产精品99久久久久久 | 邪恶肉肉全彩色无遮琉璃神社 | 欧美人成人亚洲专区中文字幕 | 久久中文字幕亚洲 | 琉璃美人煞在线观看 | 色欲人妻无码AV专区 | 国产在线观看www | 一本道mw高清码二区三区 | 国产精品AV色欲蜜臀在线 | 亚洲黄色在线观看 | 天美传媒 免费观看 | 天天拍拍国产在线视频 | 免费a毛片 | 人人听力网mp3下载 人人舔人人爱 | 国产手机在线精品 | 欧美成人性色生活18黑人 | 九九大香尹人视频免费 | 忘忧草在线影院WWW日本动漫 | 影音先锋av丝袜天堂 | 国产午夜免费不卡精品理论片 | 国产精品久久久亚洲偷窥女厕 | 高清 仑乱 一级 a | 久久黄色网址 | 欧美精品一区二区三区四区 | 纯肉小黄文高H | 欧美日韩一区在线观看 | 大香网伊人久久综合观看 | 最新影音先锋av资源台 | 男生脱美女内裤内衣动态图 | 99久久免费看国产精品 | 欧美97色伦综合网 | 午夜噜噜噜私人影院在线播放 | YELLOW视频直播在线观看高清 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品