在工作中,我們接觸到的至少90%以上的FPGA項目,它的的資源/時序都有很大的優(yōu)化空間,為啥這么說?
1. ?? 首先是,不用優(yōu)化
為什么說不用優(yōu)化:
用地好好的,又沒有出啥毛病,為啥要優(yōu)化,你告訴我為啥要優(yōu)化?你告訴我為啥要優(yōu)化?你告訴我為啥要優(yōu)化?凈整一些幺蛾子!
FPGA的確會比單片機貴很多,但是FPGA目前還是大部分用在比較高端的產(chǎn)品上,對整個產(chǎn)品來說,成本很小,只要FPGA功能實現(xiàn)了就可以,我還優(yōu)化個錘子;
FPGA技術(shù)在高速發(fā)展,F(xiàn)PGA容量越來越大,編譯綜合工具越來越智能(HLS用C++都可以做FPGA開發(fā))等等,人也就會越來越懶,我都恨不得不寫什么代碼都能做FPGA開發(fā),你還想讓我優(yōu)化FPGA,我優(yōu)化個毛線。
一直不用優(yōu)化,自然就很少去優(yōu)化,代碼也就千奇百怪,自然也就會有很大的優(yōu)化空間。
如果有那么一天,當大家開始卷,特別是卷成本的時候(消費類一直在卷),F(xiàn)PGA的成本不得不要考慮的時候,優(yōu)化資源/時序的FPGA產(chǎn)品將更有優(yōu)勢(低成本、低功耗和小體積),更能得到市場的認可。
當然也有可能是那么一天,F(xiàn)PGA工藝更NB,F(xiàn)PGA容量無限大,F(xiàn)PGA資源/時序隨便開發(fā)都不會有問題,那就是:一直不用優(yōu)化。
2.? ? 其次是,不會優(yōu)化
? ? 你見過寫的像C代碼的Verilog吧,你告訴他不建議這樣寫,他說我學(xué)Verilog時,老師說過會C就會Verilog,學(xué)的時候也發(fā)現(xiàn)沒啥區(qū)別,這樣寫有什么問題?
關(guān)鍵這樣寫的代碼最后也能正常工作起來,你該怎么說?你覺得他會優(yōu)化資源/時序嗎?他只會覺得你不懂FPGA,你這人太較真,學(xué)東西太死板!不懂變通!
3.??? 最后是,等你優(yōu)化
? ? 看到千奇百怪、打滿補丁的FPGA代碼,我深深地吸了一口煙,緩緩?fù)鲁?,在煙云環(huán)繞中思索了好久:還是等你優(yōu)化,畢竟我家鍋是用來做飯的。