《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于EP9312的金融嵌入式系統(tǒng)實(shí)現(xiàn)方案
基于EP9312的金融嵌入式系統(tǒng)實(shí)現(xiàn)方案
張聞捷,欒柱曉
摘要: 闡述了采用EP9312來構(gòu)造銀行稅務(wù)類嵌入式系統(tǒng)的理由,將EP9312與其它嵌入式處理器進(jìn)行了比較。根據(jù)EP9312的特點(diǎn)和系統(tǒng)需求,提出了一種基于EP9312的嵌入式系統(tǒng)硬件設(shè)計(jì)方案。介紹了系統(tǒng)的技術(shù)指標(biāo)及其所使用的Super I/O、PHY、接口電平轉(zhuǎn)換器、Flash、SDRAM、Boot-loader等各組成部分。該系統(tǒng)主要應(yīng)用于高端打印機(jī)、計(jì)算機(jī)終端和高端收款機(jī)等產(chǎn)品。
Abstract:
Key words :

闡述了采用EP9312來構(gòu)造銀行稅務(wù)類嵌入式系統(tǒng)的理由,將EP9312與其它嵌入式處理器進(jìn)行了比較。根據(jù)EP9312的特點(diǎn)和系統(tǒng)需求,提出了一種基于EP9312的嵌入式系統(tǒng)硬件設(shè)計(jì)方案。介紹了系統(tǒng)的技術(shù)指標(biāo)及其所使用的Super I/O、PHY、接口電平轉(zhuǎn)換器、Flash、SDRAM、Boot-loader等各組成部分。該系統(tǒng)主要應(yīng)用于高端打印機(jī)、計(jì)算機(jī)終端和高端收款機(jī)等產(chǎn)品。

  1 嵌入式系統(tǒng)的概念與特點(diǎn)

  嵌入式系統(tǒng)結(jié)合微處理器或微控制器的系統(tǒng)電路與其專屬軟件,其特性可歸納為下列四項(xiàng):

  (1)通常執(zhí)行特定功能;

  (2)以微電腦與外圍構(gòu)成核心;

  (3)嚴(yán)格的時(shí)序與穩(wěn)定性要求;

  (4)全自動(dòng)操作循環(huán)。

  嵌入式系統(tǒng)具有目的性或針對(duì)性,其開發(fā)是圍繞著產(chǎn)品和產(chǎn)品的特定功能來進(jìn)行的。它必須最大限度地在硬件和軟件上“量身定做”以提高效率。本文設(shè)計(jì)的嵌入式系統(tǒng)主要用于金融和稅務(wù)類產(chǎn)品。

  2 總體設(shè)計(jì)

  2.1 CPU的選擇

  本文采用的是Cirrus Logic公司的嵌入式處理器EP9312。

  EP9312是一款A(yù)RM9系列的處理器,ARM9系列是高性能和低功耗特性方面最佳的硬宏單元。它具有五級(jí)流水線,并提供1.1 MI/s/MHz的哈佛結(jié)構(gòu)。而其前代產(chǎn)品ARM7系列處理器則具有嵌入式ICE-RT邏輯,功耗非常低,并提供0.9MI/s/MHz的三級(jí)流水線和馮·諾依曼結(jié)構(gòu)。因?yàn)楸鞠到y(tǒng)主要用于開發(fā)先進(jìn)的計(jì)算機(jī)終端、機(jī)頂盒、高端打印機(jī)等產(chǎn)品,所以需要較快的運(yùn)算速度,而ARM7主要用于對(duì)價(jià)位和功耗敏感的消費(fèi)類產(chǎn)品,并且其運(yùn)算速度相對(duì)較慢,所以本設(shè)計(jì)系統(tǒng)選擇ARM9系列。在ARM9系列CPU中還有EP9307和EP9315。EP9307與EP9312的功能構(gòu)造基本相同,只少了1個(gè)IDE接口,但多了圖形加速的功能。由于金融稅務(wù)類產(chǎn)品大多需要較多的GPIO,而與EP9307相比,EP9312可以很容易地設(shè)計(jì)出較多的GPIO。EP9315在EP9312擁有的功能上再增加了PCMCIA接口和圖形加速功能,但這并不是金融稅務(wù)類產(chǎn)品所必需的功能。綜合考慮之后,本系統(tǒng)選擇了EP9312。

  2.2 技術(shù)指標(biāo)

  經(jīng)過系統(tǒng)調(diào)研并基于產(chǎn)品成本考慮,嵌入式系統(tǒng)的技術(shù)指標(biāo)如下所述:

  ●Cirrus Logic公司的EP9312作為主處理器;

  ●32MB Flash使用NOR Flash;

  ●64 MB SDRAM;

  ●顯示格式:西文:24x12點(diǎn)陣,中文:24x24點(diǎn)陣,26行,80列。或者西文:16x8點(diǎn)陣,中文:16x16點(diǎn)陣,26行,80列;

  ●800x600x16bpp、1024x768x16bpp多種TFT顯示模式,支持單掃描或雙掃描;

  ●1個(gè)并口;

  ●5個(gè)串口;

  ●2個(gè)PS/2端口;

  ●1個(gè)1/10/100 Mb/s的以太網(wǎng)接口。支持TCP/IP協(xié)議;

  ●1個(gè)USB Host和1個(gè)USB Slave接口。

   2.3 系統(tǒng)組成

 

  EP9312已經(jīng)集成了嵌入式系統(tǒng)所需的許多功能,為了使本設(shè)計(jì)滿足金融稅務(wù)類產(chǎn)品的要求,還增加了如下硬件:SuperI/0器件(包含2個(gè)UART、1個(gè)并口、2個(gè)PS/2接口控制器)、網(wǎng)絡(luò)PHY接口器件、接口電平轉(zhuǎn)換器、Flash、SDRAM等。PCB板采用4層板,表層為信號(hào)層,其中的電源線路層和地線層深埋在主板的內(nèi)層,不易受到電源雜波的干擾,尤其是高頻電路,可以獲得較好的抗干擾能力。系統(tǒng)的基本結(jié)構(gòu)如圖l所示。

  

 

  3 模塊功能描述

  3.1 CPU

  EP9312的內(nèi)核是ARM920T,其主頻為200MHz,100 MHz內(nèi)部總線。有16 KB的指令Cache和16 KB的數(shù)據(jù)Cache,內(nèi)部集成了很多功能模塊,其中主要包括:LCD控制器、3個(gè)USB Host控制器、3個(gè)串口控制器、Ethernet MAC、EIDE、AC’97接口等。EP9312內(nèi)含MMU,支持TCP/IP協(xié)議,也為開發(fā)各種字符圖形功能提供了快捷的方法。本設(shè)計(jì)充分利用了這些內(nèi)部集成的功能,減少了外圍元件。

  3.2 RESET模塊

  系統(tǒng)的RESET模塊為系統(tǒng)提供啟動(dòng)及復(fù)位信號(hào),是系統(tǒng)運(yùn)行的開端。

  本系統(tǒng)采用MAX708CSA作為復(fù)位器件,設(shè)計(jì)成用戶重啟的按鈕控制。發(fā)出RESET信號(hào)送給CPU的RSTOn引腳、Flash模塊、JATG模塊等。另采用一片MAX708CSA作為系統(tǒng)上電的按鈕控制。發(fā)出POR信號(hào)送給CPU的PRSTn引腳,如圖2所示。

  

RESET模塊電路

 

  3.3 系統(tǒng)時(shí)鐘模塊

  系統(tǒng)時(shí)鐘模塊的作用是產(chǎn)生20個(gè)獨(dú)立的時(shí)鐘頻率來滿足EP9312不同獨(dú)立邏輯部分的要求,所有這些時(shí)鐘頻率都來源于外部的一個(gè)低頻晶體振蕩器。這樣處理器速率、總線速率、視頻速率就可以不同而且互不影響?!P9312提供兩個(gè)接口接外部晶體振蕩器,其頻率分別為32 kHz(實(shí)時(shí)時(shí)鐘)和14.7456 MHz。

  為了獲得足夠高的時(shí)鐘頻率,EP9312同時(shí)提供兩個(gè)PLL,將32 kHz和14.7456MHz頻率提升到足夠高(14.7456 MHz,最大頻率可為400 MHz)。

  3.4 調(diào)試端口(JATG)模塊

  EP9312提供了JTAG調(diào)試接口,它有6條測(cè)試掃描鏈。這個(gè)接口通過5個(gè)外部控制信號(hào)實(shí)現(xiàn)調(diào)試功能:

  TDO--測(cè)試數(shù)據(jù)輸出;TDI--測(cè)試數(shù)據(jù)輸入;

  TMS--測(cè)試模式選擇;TCK--測(cè)試時(shí)鐘;nTRST--測(cè)試復(fù)位。

  由于EP9312集成了這些JTAG信號(hào),因此引出這些信號(hào)線在板上擴(kuò)展出JTAG口,即可與JTAG調(diào)試器進(jìn)行通信。

   3.5 存儲(chǔ)器

 

  EP9312內(nèi)含SDRAM控制器,它提供一個(gè)高速存儲(chǔ)接口給多種存儲(chǔ)裝置,包括SDRAM,Synchronous Flash和Synchronous ROM等。

  CPU中已有SDRAM控制器,因此系統(tǒng)不需外加SDRAM控制器,只要采用合適的SDRAM存儲(chǔ)器,與EP9312的專用SDRAM信號(hào)線相連接即可。

  本系統(tǒng)采用2片IS4216400B的16位數(shù)據(jù)總線SDRAM器件組合構(gòu)成了一個(gè)32位數(shù)據(jù)總線的16 MB存儲(chǔ)系統(tǒng)。今后如有需要,只需用16 MB器件代替8 MB的器件,即可方便地?cái)U(kuò)容至32 MBSDRAM的系統(tǒng)。

  本系統(tǒng)所用的Flash器件是Intel公司的TE28F320J3D-75。該器件采用56引腳TSOP封裝,32 MB的存儲(chǔ)空間由32個(gè)128KB的擦除塊組成。該Flash采用25根地址線和16位數(shù)據(jù)線,可以通過BYTE信號(hào)來選擇是8位還是16位方式訪問。本系統(tǒng)采用16位方式訪問,因此該信號(hào)線接高電平,同時(shí),AO地址線接地。OE/WE是讀寫信號(hào),由EP9312的讀寫控制線直接控制。系統(tǒng)中將Flash的片選信號(hào)CE2、CEl信號(hào)接地,CEO由EP9312的兩根片選信號(hào)CSO和CS6通過跳線來控制,如圖3所示。

  

Flash結(jié)構(gòu)圖

 

  本系統(tǒng)的Flash需要設(shè)計(jì)成2 MB、4 MB、8 MB均支持的電路,只需要焊接不同容量的器件即可。這樣做可以滿足不同用戶的需求,如:使用CF卡的用戶只要2 MB Flash即可。此時(shí),需要對(duì)Flash和SDRAM的型號(hào)進(jìn)行細(xì)致的選擇,并對(duì)地址總線和數(shù)據(jù)總線進(jìn)行相應(yīng)的設(shè)計(jì)。

  3.6 PS/2、串口和并口

  通過Super-I/O進(jìn)行擴(kuò)展,如圖1所示。Super-I/O選擇Winbond公司的W83977ATF。該器件提供兩個(gè)串口、一個(gè)并口、PS/2鍵盤鼠標(biāo)接口和23個(gè)GPIO,通過EP9312的WAITn延時(shí)等待信號(hào)來匹配ISA總線與存儲(chǔ)總線的速度問題。連同CPU提供的3個(gè)串口控制器,系統(tǒng)總共具有5個(gè)串口。

  3.7 網(wǎng)絡(luò)

  EP9312內(nèi)部含有一個(gè)Ethernet的MAC,只需要一個(gè)PHY并通過VT6103L即可實(shí)現(xiàn)。

  3.8 顯示電路

  要根據(jù)不同的顯示屏來決定顯示電路設(shè)計(jì),本系統(tǒng)設(shè)計(jì)成共支持五種屏幕,包括TFT、CSTN、DSTN、LVDS、VGA。EP9312輸出的是數(shù)字信號(hào),分別為18位數(shù)據(jù)、場(chǎng)頻、行頻、時(shí)鐘、亮度控制幾類信號(hào)。對(duì)于TFT、CSTN,可以直接與EP9312的內(nèi)置接口相連,但要注意CSTN在初始化彩色查找表時(shí),將R,B色碼互換。接TFT屏要加電平轉(zhuǎn)換器。對(duì)于DSTN來說,本系統(tǒng)選用的屏幕為夏普公司的LMl21VBlT02,該屏為單色屏,上下每時(shí)鐘周期4個(gè)像素,每個(gè)信號(hào)對(duì)應(yīng)一個(gè)像素點(diǎn)。查閱EP9312的輸出像素轉(zhuǎn)換表后發(fā)現(xiàn),雙掃描每時(shí)鐘周期4個(gè)像素的模式并不適用于該屏,所以本系統(tǒng)在設(shè)計(jì)中選用了雙掃描每時(shí)鐘周期8個(gè)像素的模式,并從中挑選出合適的信號(hào)來驅(qū)動(dòng)該屏,同時(shí)也要加電平轉(zhuǎn)換器。在目前的市場(chǎng)上.TFT接口的屏并不是主流,相對(duì)來說LVDS接口的屏使用更廣,對(duì)LNDS接口的設(shè)計(jì),本系統(tǒng)采用DS90C383MTD轉(zhuǎn)換器來構(gòu)建。對(duì)于彩色CRT要加三個(gè)D/A轉(zhuǎn)換器和電平轉(zhuǎn)換器,單色CRT只要一個(gè)D/A轉(zhuǎn)換器和電平轉(zhuǎn)換器,接VGA屏要加專用器件,如ADV7123。顯示電路模塊圖如圖4所示。

  

 

  3.9 電源

  EP9312需要4個(gè)不同的電源:RVDD(3.3 V)、CVDD(1.8 V)、VDD_PLL(1.8 V)和VDD_ADC(3.3V)。板上其他元件除了3.3 V供電的以外,還有5V供電的,整個(gè)系統(tǒng)的輸入電壓為12 V,通過變壓器件變成5 V,再通過LTl76ET-3.3轉(zhuǎn)換器件把 5 V轉(zhuǎn)變?yōu)?.3 V的系統(tǒng)電壓,通過LT176ET-1.8轉(zhuǎn)換器件把 3.3V轉(zhuǎn)變?yōu)?.8V的EP9312內(nèi)核電壓。3.10 GPIO分配

 

  EP9312有16個(gè)具有中斷能力的增強(qiáng)型通用I/0,由于金融稅務(wù)類嵌入式系統(tǒng)的產(chǎn)品通常不需要IDE接口,因此把IDE接口的I/O設(shè)計(jì)成GPIO,連同其他一些設(shè)計(jì),總共增加了49個(gè)可選通用I/O。

  3.11 Bootloader

  Bootloader是系統(tǒng)加電啟動(dòng)運(yùn)行的第一段軟件代碼。整個(gè)系統(tǒng)的加載啟動(dòng)任務(wù)就完全由Bootloader來完成。簡(jiǎn)單地說,Bootloader就是在操作系統(tǒng)內(nèi)核或用戶應(yīng)用程序運(yùn)行之前運(yùn)行的一段小程序。通過這段小程序,可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核或用戶應(yīng)用程序準(zhǔn)備好正確的環(huán)境。EP9312提供了20種Boot-loader的方式,分別經(jīng)過EECLK、EEDAT、LBOOTI、LBOOTO、ASDO、CSn[7:6]的跳線組合來選擇。

  本系統(tǒng)在調(diào)試和生產(chǎn)時(shí),采用16-bit serial boot的啟動(dòng)方式。對(duì)應(yīng)的EECLK、EEDAT、LBOOTI、LBOOTO、ASDO、CSn[7:6]選擇方式分別為:l、1、0、X、0、1。此時(shí),CPU通過片內(nèi)已經(jīng)固化的4 KB程序進(jìn)行啟動(dòng),初始化CPU和串口,并通過串口把用戶程序下載到Flash中。當(dāng)系統(tǒng)正常工作時(shí),則直接通過Flash啟動(dòng)。直接在Flash中讀取程序代碼運(yùn)行。

  本設(shè)計(jì)利用前者把操作系統(tǒng)和應(yīng)用程序?qū)懭隖lash中,用后者進(jìn)行嵌入式系統(tǒng)的正常工作開啟。

  4 結(jié)束語

  本文介紹了一種基于EP9312的銀稅類嵌入式系統(tǒng)的硬件設(shè)計(jì)方案。經(jīng)過測(cè)試,系統(tǒng)各部分都能正常工作,實(shí)現(xiàn)了預(yù)定的功能。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。