FPGA設計藝術(9)FPGA開發技巧與工程管理

      網友投稿 1001 2022-05-30

      文章目錄

      前言

      設計技巧和常見錯誤

      PCB設計

      數字設計

      同步設計計數器示例:紋波計數器

      減少編碼時的不確定性。

      Verilog/VHDL編碼

      仿真

      FPGA的設計藝術(9)FPGA開發技巧與工程管理

      為什么仿真?

      工程管理

      管理工程師

      前言

      閱讀一段話:

      產品開發工程師對公司的未來成功與產品對當前的成功一樣重要。將工程師,受過高等教育的技術專家視為商品,會降低團隊士氣,并不可避免地影響項目進度和質量。在競標一個項目以贏得業務的情況下,期望或要求工程師無償加班來彌補差額并不是公司長期成功的途徑。

      是不是深有同感,這是工程管理理念的一部分,本文最后提出了一系列值得每個公司管理者需要長遠考慮的問題,你要打造一個什么樣的團隊乃至公司?你要如何管理?

      在此之前,還是先看有關FPGA開發有關的內容,這是工程師、開發者的日常。

      本文首發自:易百納技術社區,鏈接:FPGA的設計藝術(9)FPGA開發技巧與工程管理

      設計技巧和常見錯誤

      FPGA開發包括數字設計,代碼設計和印刷電路板(PCB)設計元素。以下段落介紹了這些領域中的一些最佳做法和常見錯誤。

      設備配置:確定FPGA配置源和JTAG訪問的方法。 JTAG鏈中允許有多個設備(當鏈中的設備不是來自同一家族或制造商時,請格外小心)。確保訪問配置模式控制引腳。

      時鐘輸入引腳:專用時鐘輸入引腳可輕松訪問內部全局時鐘布線資源。

      供應商IP引腳:在PCB布局之前構建供應商IP。諸如DRAM控制器之類的復雜IP具有非常特殊的時序和PCB布局約束。 PCB設計人員使用工具生成的引腳分配,并進行盡可能少的更改。任何更改都將反饋到綜合工具以驗證可接受性。在PCB制造之前執行此操作。

      數據流。考慮通過FPGA傳輸的數據。某些FPGA架構在一定方向上的數據傳輸效率更高,例如從左到右,進位從上到下移動。分配用于物理架構的引腳可以提高資源使用效率。

      電氣標準。盡管FPGA有多個IO庫,但是在單個庫中可以混合使用哪些IO標準是有限制的。嘗試在FPGA Bank中混合不兼容的IO標準是一個常見錯誤,在PCB布局完成后很難發現。

      同步開關輸出(SSO):每個IO bank的汲取電流量受到限制。如果同時更改太多輸出,則bank可能需要的電流超過可用電流。使用Xilinx Virtex-4 FPGA的同步開關輸出(SSO)分析是對此主題的一個很好的展示。

      上述鏈接截圖:

      功耗分配:閱讀并注意有關電源電壓,sequencing和去耦的制造商建議。

      調試支持:測試連接器與設計中最大的總線一樣大,加上一些控制信號,可以在integration過程中提供令人難以置信的洞察力。

      有些工程師似乎認為,HDL讓他們編寫的軟件可以神奇地成為FPGA中的數字設計。其實不然。數字設計技術是開發FPGA的關鍵技能。無論使用哪種工具或語言,糟糕的數字設計都會導致糟糕的產品。

      下面給出幾條數字設計的建議:

      層次結構:將設計分成足夠小的單元,以用描述其作用的名稱進行標記。

      模塊設計:一個常見的錯誤是無效的模塊或接口定義。

      跨時鐘域(CDC)。每個設計單元或組件應具有一個時鐘(如果設計單元具有多個時鐘,則需要跨時鐘)。在設計單元之間移動數據和/或信號需要特別注意CDC。

      同步設計:FPGA需要同步設計技術。所有FPGA制造商都建議同步設計。如果您的設計不同步,則制造商的支持人員將竭誠為您提供幫助。同步設計消除了通過不同邏輯路徑與速度變化相關的問題。通過以規定的時間間隔對信號進行采樣,可以以簡單的方式處理快路徑和慢路徑。它們在各種工藝,電壓和溫度(PVT)的變化中都能很好地工作,并且易于遷移到新技術。 Bob Zeidman在《 CPLD和FPGA設計簡介》中介紹了一套簡潔的同步設計規則。

      同步設計簡單的說就是所有的數據都通過組合邏輯和觸發器,同步到一個時鐘上。

      延遲始終由觸發器控制,而不是組合邏輯。

      任何由組合邏輯產生的信號,如果不先經過同步觸發器,就不能反饋到同一組組合邏輯中。

      時鐘不能被門控–換句話說,時鐘必須直接進入觸發器的時鐘輸入,而不需要經過任何組合邏輯。

      系統只有一個時鐘。不要為實體或進程提供其他實體或進程的輸出時鐘。(這里是VHDL里的說法,在Verilog中可以理解為一個模塊(無論多小的模塊)的輸出不能作為另一個模塊的時鐘)。

      紋波計數器使用一個電路的數據輸出作為另一電路的時鐘輸入。這違反了規則5;不要為另一個電路的輸出提供時鐘。這種非同步設計使用較少的邏輯進行計數,并且在時鐘速度較慢時還可以,但在時鐘速度較高時可能會造成災難性的后果。考慮到在Fclk = 100MHz(Tclk = 10ns)和Tpd = 1ns的情況下,一個12級波紋計數器將在多個時鐘周期內改變位!產生的故障輸出是確定性的。

      避免這樣做,因為它會導致潛在的缺陷。在開始在HDL中編碼設計之前,你應該對你想要的功能有一個清晰的了解。

      推斷的鎖存器:推斷的鎖存器警告是工具告訴你,設計者沒有有效地傳達他們的意圖。為了完成所描述行為的等式,工具必須添加一個設計者沒有要求的內存元素! 通過在進程中為信號分配默認值(case),并在if語句中加入 else子句來避免這種情況。

      敏感列表

      變量:可合成的HDL不是軟件。變量可以是功能強大的工具,但它們可以吸引那些無所顧忌的人來編寫軟件,而不用描述數字設計。如果有變量,請查找錯誤。

      參考:

      Ripple Counter

      仿真

      仿真需要花更多的時間,但是投資回報率很高。主要的好處是,在進行上板之前,您知道FPGA功能是正確的。

      功能-明,HDL描述的設計符合要求。在實驗室中驗證硬件功能的工作量很大。由于對FPGA的可見性有限,因此很難調試。在仿真過程中,您幾乎可以無限了解設計。在仿真過程中查找設計或編碼錯誤要比在實驗室上板過程中快得多。

      系統模型:當仿真與FPGA外部部件通信的數字設計時,仿真需要外部部件的模型。當開發這些系統模型時,其理念是圍繞著合理的真實性。 如果你只是簡單地測試一個SPI接口,一個非常簡單的模型就可以了。

      時序:功能仿真告訴我們故事的第一部分。來自綜合工具的靜態時序分析表明,設計將或不會以所需的時鐘速度運行。這些工具需要與時鐘相關的約束定義。

      花費多久仿真:在Xilinx Virtex-5設備中使用諸如以太網MAC之類的硬IP時,運行涉及MAC IP的仿真幾乎沒有意義。這種仿真需要花費大量時間,并且您不能修改IP來糾正任何缺陷。(此外,它已經由制造商和許多設計進行了廣泛的測試。)

      有關仿真的更多內容,仿真技巧以及注意事項,可以參考我的其他博客:

      FPGA設計心得(10)關于行為仿真的一點觀點

      工程管理

      工程就是生意,而生意就是關系。因此,成功的工程是關于建立高質量的關系。項目通常不會因為技術原因而失敗。他們失敗的原因是開發團隊中的人的行為。

      許多工程師聲稱他們不關心營銷,盡管這是讓他們就業的原因。利潤是企業持續經營活動的要求,與營銷密切相關。一個公司最強的營銷是高質量、有良好記錄(讀作:可維護)的產品。所有的工程師都應該朝著這個目標努力。這就是你如何為你的公司、你的團隊、你自己建立聲譽。你的聲譽強烈地影響著你的下一份工作;或者說缺乏聲譽。

      制作的文檔中出現句子碎片。錯別字也會讓人懷疑你的專業性。這是一個競爭激烈的世界;不要提供理由來質疑你對細節的關注。

      生產力:在PeopleWare中,DeMarco和Lister確定,長時間不間斷的活動會大大提高工作效率。在經歷了一天的持續中斷(會議、電子郵件、電話等)之后,人們可能會一無所獲地離開。這損害了計劃和預算,但更重要的是它損害了士氣。

      注: T. DeMarco and T. Lister. Peopleware - Productive Projects and Teams. 1999.

      培訓:工學院提供科學和數學基礎知識,但確實為我們做好了在工作中學習的準備。向工程師提出他不熟悉的問題類型時,講師指導的培訓可以明顯縮短學習曲線。

      團隊。團隊凝聚力和個人積極性是項目成功的關鍵。等于或大于技術挑戰。所有學科之間的團隊凝聚力至關重要。如果項目失敗,那么FPGA的設計完美程度將無關緊要。

      公司價值。產品開發工程師對公司的未來成功與產品對當前的成功一樣重要。將工程師,受過高等教育的技術專家視為商品,會降低團隊士氣,并不可避免地影響項目進度和質量。在競標一個項目以贏得業務的情況下,期望或要求工程師無償加班來彌補差額并不是公司長期成功的途徑。

      工作滿意度。給工程師一個有趣的問題,一個解決問題的資源,盡可能少的干擾和煩惱,使他們的工作滿意度很高。幸運的是,培養工程師的自我價值相對容易。一副大顯示器要花幾百美元。考慮到由于信息可用性而帶來的效率提高以及士氣和動力的提高,投資回報率是相當不錯的。

      時間規劃。時間規劃預估是有關事件何時發生的最佳猜測。將來距離越遠,準確性越低。您必須定期修改長期計劃。要求員工付出巨大的個人犧牲才能滿足任意計劃,這是長期企業災難的良方。

      FPGA 單片機

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:學習壓縮感知比較好的文章鏈接收藏
      下一篇:【Unity3D日常開發】(十二)Unity3d中使用MVC框架
      相關文章
      国产成人不卡亚洲精品91| 亚洲中文字幕在线无码一区二区| 亚洲国产日韩在线人成下载| 亚洲国产精品婷婷久久| 亚洲AV午夜成人影院老师机影院| 国产亚洲精品a在线观看app| 亚洲综合AV在线在线播放| 亚洲精品国产综合久久一线| 亚洲AV中文无码乱人伦在线视色| 无码天堂亚洲国产AV| 亚洲第一视频在线观看免费| 国产亚洲精品2021自在线| 国产偷国产偷亚洲高清在线| yy6080久久亚洲精品| 亚洲成av人片不卡无码久久| 亚洲精品成人区在线观看| 亚洲国产午夜中文字幕精品黄网站| 亚洲国产成人久久一区久久| 亚洲免费无码在线| 伊人久久大香线蕉亚洲| 亚洲精品无码午夜福利中文字幕| 亚洲精品无码高潮喷水在线| 亚洲va久久久噜噜噜久久男同 | 亚洲精彩视频在线观看| 亚洲综合视频在线| 亚洲福利秒拍一区二区| 亚洲午夜精品一区二区公牛电影院| 亚洲人成电影在线观看网| 亚洲一区在线观看视频| 亚洲综合成人婷婷五月网址| 亚洲日韩一区二区三区| 色窝窝亚洲av网| 亚洲综合久久夜AV | 中文字幕亚洲无线码a| 亚洲不卡中文字幕无码| 亚洲美女在线观看播放| 亚洲最大的成人网站| 日韩在线视精品在亚洲| 久久99亚洲综合精品首页| 精品亚洲永久免费精品| 久久精品亚洲一区二区三区浴池|