2013-12-21 16 views
2

我剛看完Udacity功能硬件驗證課程的第一週。它表示,它需要電氣工程師和軟件工程師的技能。這就是爲什麼它吸引我。但是我有一個印象,就是隻有芯片設計師。我錯了嗎? 對嵌入式軟件開發有用嗎? 例如,如何將這些信息與Raspberry Pi和/或Android設備一起使用?這是可能的還是我在浪費我的時間在這門課程上? 如果有人能給我一個見解,我會很高興。Udacity:功能硬件驗證。什麼是實現?

回答

2

1)這是一個堆棧溢出的問題?不知道,會看到會發生什麼。

2),這是浪費時間,我會說不,它的自由,只是看,學到一些東西

3)它適用於嵌入在樹莓派或Android?可能不會,取決於您的嵌入式首先關閉的定義,如果您正在對操作系統或環境進行api /庫調用,那只是編寫應用程序。如果你正在挖掘裸機,它會變得更近,但並不完全。現在,如果您正在某處與您攜手合作或正在或將要設計芯片,fpgas,cplds等的地方工作,並且該公司願意進入20世紀90年代或2000年,並允許軟件開發人員在模擬中開發rtl,獲得模擬器許可證(非常昂貴,不需要很多節奏許可證來影響你的工資)。

在芯片開發階段的時間內(相對於後期芯片在下一個芯片開始之前銷售芯片一段時間),我們使用我認爲這個類正在教授的東西來構建我們自己的模擬器,但可能不是因爲傳統的測試方法並不完全是我所說的。我們模擬部分或整個芯片,使用「外語界面」或任何供應商稱之爲的軟件,將軟件連接到模擬硬件。我們使用抽象層來實現這一點,即我們針對sim編寫的代碼中很大一部分將使用不同的抽象層/填充層對硅進行運行。這可能需要數月甚至更長時間的軟件開發,並且可以發現邏輯設計中的錯誤以及硬件/軟件接口的設計(中斷是一個好主意,我們可以快速輪詢,使用dma,等等)。

Cadence當然會推動他們的產品和他們的做事方式,即使他們的產品支持廣泛的功能。還有其他工具。我是verilator的粉絲,開源,免費。但它所支持的verilog非常特別,大部分都是可綜合的,這對我來說很好,所以根據你依賴的verilog作者,他們可能沒有支持whate verilator所需要的習慣。伊卡洛斯verilog更寬容,但非常緩慢。 verilator比節奏慢10倍,icarus比那慢。但免費是免費的......例如,在opencores中有很多東西,如果你想看到這個動作,琥珀,mpx和altor32就是我玩過的東西,例如你可以玩。

如果你登陸這些芯片/電路板公司的工作之一,然後熟悉模擬器,如節奏和modelsim和免費工具(verilator,icarus,gtkwave,ghdl等)是有價值的。能夠讀取verlog和/或vhdl(如果您已經是程序員,這並不難),唯一的新東西是某些代碼真正是「並行」的,而今天的多核處理器實際上並不是新的一個程序員的東西)。如果您能夠將軟件連接到模擬器,那麼您對該公司來說是一筆資產,因爲您可以通過模擬硬件來促進這一發展,並將公司的資金以單位數倍的薪水節省,並在芯片發現之前發現錯誤並縮短計劃幾個月。

最後,能夠查看波形並查看您的代碼執行是一種令人上癮的體驗。

就像學習裸機或程序集一樣,在下一個較低級別熟悉硬件只能幫助您成爲一名程序員,即使這種體驗與您正在編程的邏輯或處理器不同。請記住,就像程序員一樣,可以讓任意數量的程序員完成相同的任務,他們可以在任何地方提供多達N種不同的解決方案。僅僅因爲一個mips克隆的實現具有某些細節並不意味着所有的mips或者所有的處理器都看起來像內部那樣。

+0

非常感謝您的回答,這真的很有幫助。我是StackOverflow的新手,我很樂意學習哪種平臺更適合這種類型的問題。 – melis