JTAG模式下的MPC5554外部FLASH編程的設計與實現
0 引 言
隨著信息技術的發(fā)展,嵌入式系統(tǒng)越來越廣泛地應用于手機通信、汽車、航空航天、工業(yè)控制等領域。在這些電子產品中,大多以嵌人式微處理器為核心,配套相關的外圍輔助設備,對控制對象進行軟硬件的功能剪裁性設計,并將控制程序固化在非易失性存儲器中。FLASH作為一種存儲速度快,容量大,可多次擦寫并且價格便宜的存儲器得到了廣泛的應用。由于有些微處理器內部不包含FLASH或FLASH存儲空間太小、擦寫次數有限,為了提供足夠的程序存儲空間,需要對其進行外部FLASH擴展。JTAG是目前廣泛使用的一種系統(tǒng)在線編程的模式,大大方便了嵌入式系統(tǒng)下載程序至FLASH。該設計使用的微處理器為MPC5554,通過JTAG接口對外擴FLASH進行編程。
1 MPC5554簡介
MPC5554是Freescale公司推出的采用PowerPC內核的一款32位微控制器.屬于MPC5500系列第一代產品,可用于航空航天、汽車、工業(yè)控制等嵌入式系統(tǒng)中。如圖1所示,MPC5554內部帶有浮點運算單元,集成DSP運算指令,擁有較高的計算能力,可以滿足多任務處理和實時控制的要求。MPC5554包含64 KB內部SRAM,32 KB Cache,2 MB內部FLASH,64路eDMA,24路eMIOS,64路eTPU通道,2路eSCI,4路DSPI,3路FlexCAN,40路12 b A/D(可擴展為64路),中斷控制器,以及JTAG,Nexus調試接口等功能模塊。MPC5554為416腳PBGA封裝,可在-40~+150℃的環(huán)境下工作,系統(tǒng)時鐘可達132 MHz,中斷延遲小于70 ns(@132 MHz),內部邏輯供電1.5 V,輸入/輸出供電3.3 V,5 V,外部總線接口支持1.62~3.6 V操作。
MPC5554提供2 MB可編程、非優(yōu)化內部FLAsH,可用于指令存取和數據存儲。然而MPC5554內部的FLASH為CMF型FLASH,這種FLASH的缺陷是擦寫次數有限,以擦寫一次為單位計算,MPC5554的內部FLASH只能進行100次。對于開發(fā)人員,這種局限性非常不利于開發(fā)階段的程序寫入和功能調試。一種有效方法是擴展外部FLASH,這樣可以在開發(fā)階段將程序寫入外部FLAsH,待程序定版后,只需做稍微修改再寫入內部FLASH。此外,當控制對象為復雜的多變量系統(tǒng)時,內部FLASH往往無法提供足夠的程序存儲空間,采用外部擴展FLASH就顯得尤為必要。
2 JTAG介紹
JTAG(Joint Test Action Group)成立于1985年,由幾家主要的電子制造商發(fā)起制訂的PCB和IC測試標準。JTAG建議于1990年被IEEE批準為IEEE1149.1-1990測試訪問端口和邊界掃描結構標準。該標準規(guī)定了進行邊界掃描所需要的硬件和軟件。JTAG主要用于:電路的邊界掃描測試和可編程芯片的在系統(tǒng)編程。目前MPC5554中使用的JTAG為IEEE1149.1-2001標準。
評論