最近計畫針對我們華清遠見
的教學開發一套pxa270系統,我把我的一些軟、硬體開發過程記錄下來和大家一起分享、討論。有好的建議大家一定要及時交流,[email protected]
平台硬體功能要求:32m/64m nor flash、64m sdram、10m/100m自適應網口、串列埠、sd卡介面、usb主從口、實時時鐘、4*4掃瞄鍵盤、i2c的e2rom、蜂鳴器、a/d、can匯流排介面、vga介面、數字液晶介面、音訊介面、電源管理等功能。
平台嵌入式作業系統要求:
1、linux:版本2.6.23 並可以執行google的android手機作業系統
2、wince:6.0
電路板開發工具:capture cis+allegro
下面就開始我們的專案了。做硬體設計,首先考慮的是電源設計,所以今天討論的主題就是pxa270電源電路設計。
intel xscale pxa270處理器是乙個高度整合的soc,並且針對電池供電的手持裝置如pda、3g手機等的應用做了優化,是希望以較低的功耗完成計算和多**應用的產品的理想選擇。 它整合了豐富的「 片內外設」,並專為無線應用包含了intel最新的移動計算技術。主頻在13~624 mhz內調節,為大多數移動應用提供足夠的效能。
系統中這些包括音訊功放、usb、lcd、mmc卡等不同的應用模組都要求不同功率級別的穩壓源。電源管理指如何將電源有效分配給系統的不同元件,即負責整機的電源供給及供電管理排程。
pxa270的電源管理部分比較複雜。這裡先討論和硬體設計相關部分。
一、pxa270的電壓需求及電流需求
圖1.1 典型電源電路
可以看出處理器需要外部提供的低電壓有vcc_(core,pll,sram),高電壓有vcc_(io、mem、lcd、bb、usb、usim)。並且外部電源管理晶元還提供了nvdd_fault和nbatt_falt訊號(這兩個訊號主要用於向處理器報告電源異常),而且可以接受處理器發出的sys_en和pwr_en訊號(這兩個訊號主要用於控制電源管理晶元的電壓輸出,以達到在睡眠模式下節電的目的)。
表1.1 電壓需求
本系統中vcc_bb和vcc_usim不用,其它電壓確定為:
vcc_batt
3.0v
vcc_io
3.3v
vcc_lcd
3.3v
vcc_mem
3.3v
vcc_usb
3.3v
vcc_sram
1.1v
vcc_core
0.8—1.45v
vcc_pll
1.3v
表1.2 vcc_core電流需求
vcc_core 的電流受平台硬體配置和所執行的系統軟體和應用的影響比較大,且和設定的工作頻率相關。我們的平台要求最大可以執行在520m左右,那vcc_core要求至少可以提供1.45v及689ma左右的電流。
表1.3 其它電流需求
二、選擇合適的電源管理晶元
從上面的要求可以看到pxa270需要多種電壓,而且最好能夠匹配它的電源管理功能。電源晶元選擇方案上來看主要有兩種:1、分立元件 2、整合度高的電源管理晶元。
分立元件 指每個電壓都單獨特定的乙個晶元來提供,優點是設計簡單、**也相對便宜;缺點是整合度低,占用pcb面積大、不易管理控制。
專用的電源管理晶元 指乙個晶元可以提供pxa270所需的多路電壓,並且提供管理功能,如:電壓的動態調節,電壓監測、開關控制等;缺點:效能複雜一些,設計難度稍大、**也相對高一些,還有有些晶元在市場上不太好買。
經過比較,最終還是決定使用電源管理晶元(做嵌入式嘛,就是要不怕困難的精神,何況還有參考電路呢)。
目前,我知道的在pxa270上使用的比較成熟的電源管理晶元有兩款,ti的tps65020和美信的max1856cetm。這兩款晶元和pxa270連線的參考原理圖手頭上都有,**差別也不大。最終選擇了max1856cetm,主要還是考慮我有它的allegro封裝(有的時候理由就是這麼簡單)。
還有個問題,max1856cetm和tps65020目前北京都沒貨,得從深圳拿。目前還是選max1856cetm吧,畢竟有的開發板上用的就是它。如果最後實在不好拿貨,再換別的方案。
max1856有aetm、betm、cetm,3個功能、封裝相容的晶元。只是max1856cetm輸出的電流最大。有個朋友用的是max1856a(這個要好買些),但說有時比較容易燒。參照表1.4及表1.2和表1.3,可以分析出之所以max1856a容易燒,是因為vcc_core 需求的電流很容易就超出max1586a所能提供的500ma。所以選擇max1856c。
表1.4
可見vcc_io是滿足的。 vcc_pll vcc_sram的功率差不多,我想既然開發能正常用,所以這幾個電壓應該也是滿足的。
三、max1856cetm的接線及功能分析
圖1.2 max1856cetm和pxa270接線圖
對本系統而言,由於採用的是外接電源的方式,所以不考慮電池充放電路的管理。圖1.2是接線圖,採用的是優龍開發板提供的參考圖。由圖可見,max1856c提供pxa270所需要的所有電壓,圖中:
vcc_core: 0.7----1.475v v,復位時1.3v
vcc_pll:1.3v
vcc_sram:1.1v
vcc_batt:3.0v
btbt_in:3.0v
需要注意的是bkbt_in一定要有,不然系統啟動不了。不接它的話jtag一復位系統的3.3v就會丟失,jtag連線就會斷掉(這是乙個朋友的經驗,目前沒分析出來原因)。
pwr_en: 可以控制電壓輸出3、4、5的開關
sys_en: 可以控制電壓輸出1、6的開關
vcc_bat: 不受控制,一直有
pwr_scl和pwr_sda:i2c輸入口,可以用來控制vcc_core的電壓(0.7—1.475v)
電源管理部分就到這了,後面要考慮「時鐘部分」的設計了
PXA270嵌入式系統設計一 電源管理部分
最近計畫針對我們華清遠見的教學開發一套pxa270系統,我把我的一些軟 硬體開發過程記錄下來和大家一起分享 討論。有好的建議大家一定要及時交流,lht farsight.com.cn 平台硬體功能要求 32m 64m nor flash 64m sdram 10m 100m自適應網口 串列埠 sd卡...
PXA270嵌入式系統設計一 電源管理部分
最近計畫針對我們華清遠見的教學開發一套pxa270系統,我把我的一些軟 硬體開發過程記錄下來和大家一起分享 討論。有好的建議大家一定要及時交流,lht farsight.com.cn 平台硬體功能要求 32m 64m nor flash 64m sdram 10m 100m自適應網口 串列埠 sd卡...
PXA270嵌入式系統設計二 時鐘及復位部分
最近計畫針對我們華清遠見的教學開發一套pxa270系統,我把我的一些軟 硬體開發過程記錄下來和大家一起分享 討論。有好的建議大家一定要及時交流,一 時鐘部分 任何一款處理器都需要至少乙個時鐘源。在處理器的內部會有相應的時鐘管理單元來為cpu及各個功能控制單元提供合適的時鐘。pxa270處理器的需要兩...