入行十年,我總結(jié)了這份FPGA學(xué)習(xí)路線:搞定這四點,你也能輕松進(jìn)階

五部分:
1編程語言
2基礎(chǔ)知識
3開發(fā)工具
4動手實驗
5升華

1

使用語言:硬件描述語言HDL或者是寄存器傳輸級語言RTL

主流語言是VHDL,Verilog,System Verilog
VHDL靈活,Verilog靈活
入門學(xué)習(xí)一門語言即可,老石推介Verilog
語言三大點:(1)語法(2)如何使用這個語言做設(shè)計(3)如何使用這個語言做驗證


彈幕有《Verilog傳奇》Verilog刷題網(wǎng)站:
HDLbits刷題網(wǎng)站,可以先做題,然后查書,通過實踐學(xué)習(xí),RTL設(shè)計主要有組合電路和時序電路兩個部分,另有一個是狀態(tài)機,HDLbits上都有一些題目,RTL驗證,初學(xué)者主要學(xué)習(xí)寫一個平臺及如何寫一些簡單的測試用例。

軟件順序執(zhí)行,硬件并行執(zhí)行
熟練Verilog可以是SystemVerilog
SystemVerilog可以看成是Verilog的超級,支持很多Verilog不支持但重要的類型的語言,比如自定義類型,接口等,還有一些用于仿真驗證的特性,比如業(yè)界常用的隨機約束和UVM,簡化表達(dá)
書籍

推介進(jìn)階學(xué)

仿真工具

faga開發(fā)工具有仿真工具
開源工具:


EDAplaygrand
2

專業(yè)基礎(chǔ)課:電路、數(shù)電、計算機體系結(jié)構(gòu)、接口、數(shù)字信號處理等

先看數(shù)電,其他書籍根據(jù)需求有目的的看
和fpga相關(guān)的是
(1)芯片的結(jié)構(gòu)以及它的一些基本組成單元的結(jié)構(gòu),推薦看FPGA官方文檔
(2)了解fpga的開放流程,為什么需要和這些流程是做什么的

3

開發(fā)平臺

- 熟悉fpga開發(fā)流程,比如如何創(chuàng)建工程,怎么添加你的源文件,怎么跑一系列的編譯流程,怎么加入時序的約束,怎么分配管腳,怎么將fpga映像文件加載到fpga里進(jìn)行
- 熟悉常用的IP設(shè)置,PLL,FILO,存儲器,學(xué)會調(diào)用和配置存儲器
- 學(xué)習(xí)硬件調(diào)試和時序分析的方法,比如一個設(shè)計看最大的頻率,或者時序不收斂的時候,你怎么去分析并且來修改你的設(shè)計
或者怎么使用一些硬件調(diào)試工具,強烈建議根據(jù)開發(fā)板來學(xué)習(xí)

4

做的實驗


數(shù)據(jù)處理

書籍
特權(quán)的書


思維導(dǎo)圖在老石談芯的公眾號
5升華:
當(dāng)然說以來容易,但實際上還是需要大家花很多時間和精力下功夫?qū)Q械?,事實上不管你是學(xué)習(xí)fpga還是學(xué)習(xí)其他任何東西,從來都是一份耕耘一分收獲,除了學(xué)習(xí)這些專業(yè)的內(nèi)容以外,我們更是在努力的變得自律,也在不斷地培養(yǎng)和鍛煉自己學(xué)習(xí)地能力以及在挫折和困難中不斷前行地那股韌勁,我相信付出肯定會有收獲,明天的你肯定也會感激今天所做的努力,我祝愿大家能夠享受學(xué)習(xí)的過程,我也希望能和大家一起不斷通過努力來變成更好的自己