:推 sedgewick: 路過提一句, 寫 kernel 還要動示波器的話最好快逃吧... 10/27 01:30
:→ sedgewick: 這表示硬體層面的 bug 也太多了.
推文有位大大講到寫kernel動用示波器表示硬體層面的BUG太多,
這剛好可以拿來說明FW工程師可能會遇到的問題。
與SW相比,一樣是寫CODE,但基本上跟硬體打交道是FW工程師的宿命,
換言之FW工程師不能預期你的硬體是好的,當硬體有問題的時候
你要協助E.E.去查問題,甚至做workaround solution。
尤其是chip/板子剛回來準備start up的時候,
一上電你的uart console沒有輸出是常有的事。
不會動的原因可能是CPU reset電路沒做好,
或是DDR timing參數沒調好導致記憶體存取有問題,
扯一點可能Flash接腳沒焊好,最慘的是可能IC開回來
某些function根本就fail(FPGA跑的時候明明就是好的T.T)
像上述的這些情況發生時就需要示波器來協助FW工程師尋找/解決問題。
當然現在系統越長越大,FW工程師分工也越來越細,
有些工程師專長在kernel以及周邊硬體界面的驅動(I2C,SPI,USB,LCD,GMAC...)
;有些則是專精在user space應用程式(WEB,QT,android,socket...),
碰到硬體的機率也很低了~~