SOC學習歷程概述


從開始接觸soc到現在大概有兩年半左右的時間了,經歷了ORSOC到minsoc再到mkg-soc的搭建,以及現在的大小核系統的搭建

首先先講下學習的前期需要具備的知識,前面3點是必須,后面3點可以中間學習的過程再學習。之所以有這些要求主要是以防中間的學習過程中,有些東西看不懂而走彎路。

學習的前期准備:1、學過數電,有一定的電路基礎。2、熟練掌握verilog語言。3、對於計算機組成原理,體系結構有一定的了解。4、學過單片機編程,寫過一些簡單的裸機程序,最好能夠玩過microblaze這樣對於軟硬件協同設計會有一定的了解。5、對於eda工具能熟練使用(xilinx ise,modelsim)。6、熟悉linux 環境的使用

比較好的書籍或資料:

《數字電路設計》用於掌握電路基礎。

《verilog 數字系統設計教程--夏宇聞》、《verilog 135例》、《狀態機設計_by_foreveryoung_V2.0(1)》 用於掌握語言

《計算機組成與設計--verilog版》、《體系結構--胡偉武》用於掌握體系結構相關知識,特別是老胡那本書,如果想從事CPU設計的話,可以多讀幾遍

《數字集成電路物理設計》第4、6章、專用集成電路時序驗證  用於掌時序部分知識(4條路徑,幾個概念)(ASIC和FPGA在時序方面的理論都是類似的,只是后續約束方式不同)

eda 工具的使用的話,這個網上有很多相應的教程,個人認為軟件是死的,當你對理論部分有一定了解后,軟件使用起來會得心應手,但很多人往往都是先學軟件,點幾個按鈕完成操作,從而知其然而不知其所以然,編譯原理這門課程我覺得對於軟件開發人員來說還是挺有意義的。

對於ise的使用,要做到學會綜合、仿真、UCF編寫、布局布線、下板測試、在線調試

對於modelsim 小編現在只做到會仿真而已,對一些常用的腳本命令熟悉,所以沒啥其他說的。

對於linux環境的使用,只能說孰能生巧,需要把常用的命令搞熟,一些比較生澀的命令可以到時問度娘

好了,基礎部分講完了,這部分是小編在開始着手進行soc設計前完成的,如果是對於完全沒有一點基礎的,建議先按上面的步驟,可以花費2-4個月左右的時間,一步步完成,下面開始介紹小編的soc學習歷程了。

一、概述部分、

1、soc設計方法學介紹

2、or1200介紹

3、wishbone總線介紹

二、環境的搭建

1、ubuntu單、雙系統的安裝

2、win7及ubuntu下安裝基於虛擬機的or1200編譯仿真測試環境的搭建

3、基於ubuntu物理機上安裝or1200編譯仿真測試環境的搭建

三、minsoc學習

1、minsoc的文件結構

2、minsoc的top頂層硬件設計介紹

3、minsoc的bench頂層設計介紹

4、基於minsoc平台的uart模塊的仿真測試

5、添加ml501板級測試平台

6、基於minsoc平台的gpio ip添加及測試

7、基於minsoc平台的i2c ip的添加及測試(測試過程存在問題)

四、vsoc學習

1、vsoc的文件結構

2、vsoc的top頂層硬件設計介紹

3、vsoc的bench頂層設計介紹   

4、基於vsoc平台的cpu及內存的仿真測試

5、基於vsoc平台的uart模塊的仿真測試

6、基於vsoc平台的gpio模塊的仿真測試

7、基於vsoc平台的i2c模塊的仿真測試

8、基於vsoc平台的spi模塊的仿真測試

9、基於vsoc平台的ethmac模塊的仿真測試(ethmac 沒看懂,后面看懂后更新)

10、基於vsoc平台的vga模塊的仿真測試

11、基於vsoc平台從spi flash啟動的仿真和測試

五、基於vsoc平台的3維重構IP的設計及測試(現階段正在做)

1、3維重構IP的介紹

2、基於vsoc平台的3維重構IP添加及測試


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM