嵌入式學習(二)之SoC晶元的開發流程

2021-09-25 22:09:01 字數 727 閱讀 9215

soc晶元開發流程大致分為四個階段,其中大部分工作都是借助於電子設計自動化(eda)工具完成的。

總體設計階段的任務是按照系統需求說明書確定soc的效能引數,並據此進行系統全域性的設計。例如選擇soc晶元的核心,確定儲存器和外圍電路,i/o介面等模組的配置,確定晶元布局,明確片內韌體(程式)的功能與需求,確定開發環境等。

將總設計的結果用rtl語言進行描述(原始檔)後,再使用邏輯綜合軟體將原始檔進行綜合,生成最簡的布林表示式和訊號的連線關係(以型別為edf的eda工業標準檔案表示)。

rtl是暫存器傳輸級描述語言,用以描述晶元硬體組成的邏輯結構及其功能。各項功能經驗證之後,可自動生成對應的門級電路圖。vhdl,verilog-hdl都是廣泛使用的硬體描述語言,在ip庫和硬體模組庫的支撐下可進行各部分的rtl設計。

這一階段將對由rtl生成的各部分電路圖作晶元電路綜合及**測試。所需驗證的邏輯電路是由and,or,nand等閘電路構成的。接著再用電路圖生成器來生成門級網表以進行門級**。

將經過驗證後的邏輯電路配置入soc晶元內,並與其他電路進行互連。然後借助eda中的布局佈線工具,生成vlsi製造工藝所需要的一組晶元版面掩膜圖(layout)。

掩膜圖上排列著大量的電晶體圖形和連線,它們由幾何圖形單元組成,並按半導體工藝要求分為眾多層次,由多邊形編輯器自動製作,並由掩膜圖驗證工具進行驗證。

接下來就可進入vlsi生產線試製樣片,驗證各項功能的正確性,發現問題並修改後再次進行流片,直至晶元功能全部符合系統總體設計的要求為止。

嵌入式linux開發學習(二)

總結一下自己的學習思路吧,對於乙個初學者,面對網上隨處可見的教程,不知道從何處下手,記得剛開始買了一塊開發板來搞,一來就開始搞系統移植 底層驅動這些,弄得頭暈,太難了,後來實在學著太費力了,學了很久感覺還停留在原地,都不見效果多方請教才改變了方式,慢慢地越學越順手。這個過程中饒了很多彎路,也浪費了很...

嵌入式開發學習

始於興趣,因興趣而精緻 對於很多人聽到嵌入式這個詞的時候,會感覺到有些迷茫,嵌入式到底和常見的硬體電路學習,軟體程式設計,物聯網等有什麼區別?學習嵌入式到底按照怎樣的乙個思路才能最快的進入狀態,領略嵌入式之美,怎樣才能正確進行興趣匹配實現自己的學習目標。接下來,就讓我簡單的介紹一下我對嵌入式學習的理...

嵌入式學習之裸機開發前奏

為裸機開發做鋪墊 我們需 安裝交叉編譯工具鏈 就是在linux下安裝軟體 並且進行相關配置方便裸機開發時使用 熟悉makefile流程 方便裸機開發工程管理 知道各個檔案字尾的作用以及來歷 mkv210 imge.c程式的作用以及內部 區分ubs串列埠燒寫和sd卡燒寫的區別 1 我們使用安裝包的形式...