:推 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...),
碰到硬件的机率也很低了~~