【文章內(nèi)容簡(jiǎn)介】
,大型SoC(特別是應(yīng)用處理器)硬件特性趨于同質(zhì)化 軟件重要性 硬件 軟件成為產(chǎn)品的本質(zhì)特性 系統(tǒng)軟件的挑戰(zhàn) 系統(tǒng)大型化,如何堅(jiān)持嵌入式系統(tǒng)的核心精髓:緊湊、高效、穩(wěn)定 平行處理(多核多線程)下的高效編程 應(yīng)用程序的跨平臺(tái)兼容性,19,一個(gè)家庭網(wǎng)關(guān)設(shè)計(jì)案例,mC,Video Processing Core,Baseband Signal Processor,OFDM Modem Processor,510K Lines of Microcode,100K Lines of App SW,2050K Lines of Protocol firmware,510K Lines of Control Code,250500K Lines of firmware,Over 2M Lines of Application SW,50100K Lines of Protocol firmware,250300K Lines of DSP firmware,Up to 2M Lines of Network SW,一共超過500萬行代碼,這是我3年前的數(shù)據(jù)。,20,工程可以很大,問題可以很細(xì)。,同一個(gè)平臺(tái)上,提高處理器主頻一定帶來系統(tǒng)整體性能提高嗎? (e.g. memory access latency = 10ns) A) CPU = 200MHz, memory access = 2 CPU cycle = 10ns B) CPU = 250MHz, memory access = 3 CPU cycle = 12ns 函數(shù)的入口參數(shù)個(gè)數(shù)和次序是問題嗎? 只前面一定數(shù)量的參數(shù)能放在寄存器而不是內(nèi)存里面進(jìn)行傳遞 程序和數(shù)據(jù)區(qū)的對(duì)齊有規(guī)則嗎? cache訪問內(nèi)存的行為機(jī)制是怎樣的?,底層的問題和優(yōu)化空間很多,但是被日漸忽視,21,當(dāng)“主頻”成為標(biāo)簽和符號(hào),這便是必然,Current Gen,Next Gen,Efficiency,Performance,,Current Gen,Next Gen,Efficiency,Performance,多數(shù)情況下軟件優(yōu)化能夠帶來的性能和功耗優(yōu)化比例,遠(yuǎn)大于硬件優(yōu)化所能企及的程度。,當(dāng)前狀況,理想狀況,22,誰是功夫熊貓,芯片設(shè)計(jì)流程比較標(biāo)準(zhǔn)化了,國(guó)內(nèi)也擁有了一個(gè)比較有經(jīng)驗(yàn)的工程和中層經(jīng)理人才庫(kù) 系統(tǒng)架構(gòu)師和關(guān)鍵軟件高手之類的最核心人員成為稀缺 從工程師配置來看,多數(shù)芯片公司的軟件工程師已經(jīng) 5x 硬件工程師,23,Good N