基于的新一代公用信息終端ARM設計
信息終端屬于公用電話(huà)領(lǐng)域,在功耗,接入方式,操作方便性等方面都有特殊要求,因此采用標準的嵌入式系統設計。
信息終端的處理器選用SoC嵌入式處理器 ARM7系列中的EP7312。處理器采用ARM7TDMI的處理器內核,有8k字節高速緩沖存儲器(CACHE),支持MMU,帶64路TLB(translation look-aside buffer);寫(xiě)緩沖器。超低功耗(典型值)74MHz工作狀態(tài)時(shí)為90mW, 18MHz工作狀態(tài)時(shí)為30mW,空閑狀態(tài)時(shí)為10mW(CPU時(shí)鐘停止,其余工作),掛起狀態(tài)時(shí)1 mW(實(shí)時(shí)時(shí)鐘工作,其余停止工作)。
操作系統采用NUCLEUS嵌入式操作系統。 NUCLEUS嵌入式操作系統提供源代碼,用戶(hù)能夠深入地了解底層內核的運作方式,并可根據自己的特殊要求改動(dòng)系統軟件。它采用了先進(jìn)的微內核(Micro-kernel)技術(shù),在優(yōu)先級安排,任務(wù)調度,任務(wù)切換等各個(gè)方面都有相當大的優(yōu)勢,對防止優(yōu)先級倒轉等的方面都有一定的獨到之處。而且,能夠結合 Paradigm,SDS以及 ATI自己的多任務(wù)調試器組成功能強大的集成開(kāi)發(fā)環(huán)境。另外 NUCLEUS除提供功能強大的內核操作系統外,還提供種類(lèi)豐富的功能模塊。
信息終端利用ISDN接入公用互聯(lián)網(wǎng),由于 ISDN交換機有遠供的能力(可以提供1W的電力),接入終端不需要外接電源,接入方式簡(jiǎn)單。這對于一種公用電話(huà)的替代產(chǎn)品來(lái)說(shuō)是非常理想的。而且ISDN網(wǎng)性能穩定,使用靈活,技術(shù)成熟。信息終端可以充分利用ISDN的兩個(gè)B通道可以給用戶(hù)提供一種公用互聯(lián)網(wǎng)接入方式,在這個(gè)平臺基礎上就可以開(kāi)發(fā)出各種形式的增值服務(wù)。
2 信息終端的硬件設計
信息終端硬件的核心是終端主板,它負責管理鍵盤(pán)掃描、外圍狀態(tài)監測等。LCD接口提供 320×240分辨率的顯示屏用以顯示數據、圖像,以及與用戶(hù)交互信息。另外,由于信息終端屬于公用電話(huà)系統,還需包含讀卡器板、功能鍵盤(pán)板、門(mén)開(kāi)及摘掛機檢測等功能模塊。
本系統充分利用ISDN交換機的供電能力,電源板從ISDN線(xiàn)路取電,經(jīng)變換后向主板提供+5V和+3.3V電源。自帶后備電池,保證在線(xiàn)路掉電時(shí),能完成正在進(jìn)行的操作和保存記錄。主板的原理框圖如圖1所示。
主板由嵌入式處理器(EP7312)、FLASH (INTEL公司的28F320C3)、SDRAM(W986416DH)、ISDN參考模型中的U接口控制芯片(MC145576)、聲音編解碼芯片(MC145481)、ISDN數據鏈路控制芯片(HFC- S+)等芯片組成。
EP7312通過(guò)總線(xiàn)對FLASH、SDRAM、HFC-S+進(jìn)行控制。處理器通過(guò)對HFC-S+進(jìn)行控制,實(shí)現ISDN 通話(huà)及通信的功能。MC145576芯片主要完成ISDN參考模型中的S/T接口和U接口之間轉換。主板上集成8M的FLASH存貯空間,分為兩個(gè)部分,其中3M作為程序空間,剩下存放和MS- DOS4兼容的文件系統。HFC-S+支持B通道和D通道高級數據鏈路控制(HDLC),向外提供GCI總線(xiàn)、FIFO控制等。MC145481 CODEC芯片是一個(gè)PCM編解碼芯片,它實(shí)現聲音的數字化和重組。
在EP7312的鍵盤(pán)掃描各口線(xiàn)上都加上雙向過(guò)壓保護二極管BAV99及防短路的電阻,提高了防靜電能力及防短路能力。主板時(shí)鐘芯片采用PHILIPS的 PCF8563芯片以防止停振。
3 信息終端的軟件設計
本系統的軟件主要分為啟動(dòng)代碼,芯片驅動(dòng)程序設計,操作系統和ISDN協(xié)議棧的移植,應用程序的設計等。系統軟件結構如圖2。
3.1 啟動(dòng)代碼的設計
啟動(dòng)代碼在信息終端的設計中是很重要的一環(huán),它是EP7312處理器在冷啟動(dòng)后首先執行的一段代碼,用ARM匯編指令編寫(xiě)。在這一段程序中要執行一些必須的初始化任務(wù) ,例如中斷向量表的初始化、SDRAM控制器初始化、存儲器管理單元(MMU)初始化等等。
設置入口指針:?jiǎn)?dòng)程序首先必須定義入口指針,而且整個(gè)應用程序只有一個(gè)入口指針。
設置中斷向量表:ARM7要求中斷向量表必須設置在從0地址開(kāi)始,連續8×4字節的空間,分別是復位、未定義指令錯誤、軟件中斷、預取指令錯誤、數據存取錯誤、IRQ、FIQ和一個(gè)保留的中斷向量。
初始化堆棧和CPU寄存器:系統堆棧初始化取決于用戶(hù)使用的中斷,以及系統需要處理的錯誤類(lèi)型。還需要設置CPU相關(guān)的寄存器,以確定系統使用的SDRAM和其它外設芯片的刷新頻率,數據總線(xiàn)寬度等信息。
評論