基于龍芯2F的車載和便攜設(shè)備系統(tǒng)設(shè)計(jì)
3. 系統(tǒng)軟件
本系統(tǒng)運(yùn)行在LINUX DEBIAN4.0 操作系統(tǒng)下,其內(nèi)核為LINUX 2.6.21。將Bootloarder–PMON2000 燒制在板載的BIOS ROM 中,加電后自動(dòng)完成處理器、緩存、內(nèi)存控制器、網(wǎng)絡(luò)控制器等初始化工作。同時(shí)PMON2000 擁有少量行命令集,用于啟動(dòng)后對(duì)內(nèi)存的讀寫校驗(yàn)、板載Flash 的擦寫、IP設(shè)置、串口設(shè)置以及跟主機(jī)之間進(jìn)行數(shù)據(jù)通信,包括上傳、下傳文件、接收主機(jī)下達(dá)指令等等。通過PMON2000的內(nèi)部命令將LINUX 2.6.21 內(nèi)核裝入內(nèi)存。
在內(nèi)存條上有一個(gè)ROM,里面保存著內(nèi)存大小、行地址數(shù)、列地址數(shù)、內(nèi)存的bank 數(shù)等信息,這些信息可以通過I2C 總線來訪問到。作為一種通用設(shè)計(jì)方案,要求能支持各種不同類型的內(nèi)存條。而在系統(tǒng)的調(diào)試過程中,我們發(fā)現(xiàn)SM502 芯片的I2C 邏輯有bug 。因此采用SM502 的gpio 來模擬I2C 時(shí)序,實(shí)現(xiàn)對(duì)內(nèi)存(DIMM)條信息的讀取。并利用讀取到的信息對(duì)龍芯2F 處理器的DDR2 控制器進(jìn)行配置,收到良好的效果。經(jīng)測(cè)試,目前該系統(tǒng)支持市場(chǎng)上的所有類型的內(nèi)存條。
4.信號(hào)完整性設(shè)計(jì)
由于整個(gè)系統(tǒng)模塊電路體積較小,而電路的工作頻率較高,因此整個(gè)設(shè)計(jì)對(duì)信號(hào)的完整性有嚴(yán)格的要求。龍芯2F 處理器的DDR2 內(nèi)存總路線工作頻率高達(dá)300MHz ,這部分電路是高速電路設(shè)計(jì)的一個(gè)瓶頸,對(duì)這部分電路仿真的結(jié)果基本上可以反映出整個(gè)電路信號(hào)傳輸?shù)男Ч?。下面以DDR2 控制信號(hào)為例,描述該問題采取的設(shè)計(jì)方法和流程。
在實(shí)際設(shè)計(jì)中,首先利用龍芯2F 的IBIS 模型和仿真工具[4]預(yù)先確定關(guān)鍵信號(hào)的走線拓?fù)浣Y(jié)構(gòu)和匹配方式,由此來制定PCB 布線的約束。先提取PCB 布線前的仿真模型,通過觀察對(duì)應(yīng)的仿真結(jié)果波形,可確定獲得較好信號(hào)質(zhì)量的走線拓?fù)浣Y(jié)構(gòu)和匹配電路參數(shù)。完成PCB 布線后,再提取實(shí)際拓?fù)溥M(jìn)行仿真,提取后的拓?fù)湟妶D3 所示。此時(shí)模型已包括PCB 板的疊層和阻抗控制信息,并對(duì)實(shí)際過孔進(jìn)行了建模。通過調(diào)整走線并觀察仿真結(jié)果可獲得最終最佳的走線。圖4 給出了調(diào)整后的仿真結(jié)果,可以觀察到在receiver 端獲得了較好的信號(hào)質(zhì)量,同時(shí)driver 端的過沖現(xiàn)象也在可接受的范圍內(nèi)。最后在實(shí)際板極調(diào)試中再測(cè)量實(shí)際信號(hào)波形,通過調(diào)整匹配元件進(jìn)行微調(diào)來確保實(shí)際信號(hào)質(zhì)量的可靠性。實(shí)踐表明,基于這種方法和流程能減少信號(hào)完整性帶來的設(shè)計(jì)風(fēng)險(xiǎn),降低調(diào)試難度。本文稿中所有仿真IC modeling 參數(shù)為typical,driver 的激勵(lì)信號(hào)為133MHz 周期信號(hào)。
5.小結(jié)
本文介紹了基于龍芯2F 處理器的車載和便攜設(shè)備系統(tǒng)設(shè)計(jì)過程,主要對(duì)系統(tǒng)硬件結(jié)構(gòu)、軟件系統(tǒng)、信號(hào)的完整性設(shè)計(jì)、提高整機(jī)效率等關(guān)鍵技術(shù)進(jìn)行了闡述。該系統(tǒng)結(jié)構(gòu)緊湊,既能獨(dú)立工作又提供了靈活的擴(kuò)展接口,具有很大的應(yīng)用前景。
評(píng)論