華為FPGA設計高階技巧xilinx篇閱讀筆記一

2021-09-27 02:15:13 字數 965 閱讀 2673

個人覺得前言部分是這篇的精華,乙個fpga工程師應該具備的基礎。總結起來就是,在用hdl語言描述電路時,頭腦中應該清楚綜合出來是什麼樣的,對映到晶元後又是什麼樣子的。因此在進行hdl電路設計時應該了解fpga內部的硬體結構以及基礎資源,掌握與結構相關的設計技巧,具體可以參考博主之前的部落格。前言指出目前大多數fpga工程師的乙個弊端,曾經博主也是這樣的人。

隨著hdl語言,綜合工具以及相關工具的推廣,廣大工程師不再進行繁瑣的畫原理圖,連線等工作,這樣雖然提高了工作效率,但同時也帶來了弊端。使現在越來越多的工程師不關心自己電路的實現形式,再進行hdl電路設計時,腦袋裡沒有任何電路的概念,以及自己的設計綜合出來是什麼樣的,對映到晶元後又是什麼樣的,有沒有充分利用fpga的資源。這樣過分依賴綜合工具就會造成,遇到問題時,想到的只是還更好的晶元,自己束手無策。導致成本上公升,影響開發周期。

綜合工具通常包括兩個過程:

第三部分主要講的是器件結構對coding style的影響,這個主要看所用的器件,需要對fpga底層資源結構有一定的了解。具體可以參考博主之前的部落格

只要是在乙個lut內實現的邏輯,不管是幾輸入,邏輯延時基本一樣。

對fpga設計而言,如果速度想要更快,應當努力減少路徑上的lut的個數,而不是邏輯技術(asic則是減少邏輯級數);如果想要面積更小,應當努力減少lut的個數,而不是邏輯門數。(與asic設計完全不一樣)

圖a結構前面的2輸入與門占用乙個lut,後面的2個三輸入或門各占用乙個lut,總共占用3個lut,lut級數是2級。

圖b結構,雖然增加了乙個2輸入與門,並且邏輯級數與a一樣,也是2級,但它只占用了2個lut,lut級數只有1級。

門數增加,邏輯未變,但資源占用減少,速度更快

未完待續…

FPGA設計思想與技巧

1 本節目錄 2 本節引言 3 fpga簡介 4 fpga設計思想與技巧 5 結束語。不積跬步,無以至千里 不積小流,無以成江海。就是說 不積累一步半步的行程,就沒有辦法達到千里之遠 不積累細小的流水,就沒有辦法匯成江河大海。fpga field programmable gate array 是在...

FPGA設計之硬體篇(一)

下了很大的決心來寫這篇文章,我做fpga也有兩年了,從剛開始的verilog開始學起,到後來的最小系統,再到颶風ii代開發板設計,到現在的xilinx xc2c系列cpld開發,覆蓋了硬體設計底層的一些經驗。其實自己很想玩下fpga的嵌入式,覺得很有前途的,但是後來自己也只是在學校開發板上過了下癮。...

FPGA設計之硬體篇(二)

上次大致寫了篇關於fpga硬體設計的散文,這次寫寫專業點的東西。進入社會才發現往往人們是身不由己,之前想找份專做fpga的,發現在武漢這邊動不動就是研生,起步太高,我曾經發洩過,為什麼自己就不能遇到真正的伯樂 或許自己算不上一匹好馬 但是我真的努力過,我也爭取過,可是現實還是把自己淘汰。在現在的公司...