访问手机版页面
你的位置:老古开发网 > 其他 > 正文  
基于EP9312的银税类嵌入式系统硬件设计方案
内容导读:

1 嵌入式系统的概念与特点

嵌入式系统结合微处理器或微控制器的系统电路与其专属软件,达到系统操作效率的最高比,这里把嵌入式系统定义为一个体积较小的计算机系统(与pc机相比),由于其体积较小,因此软硬件结构和应用范围与pc机相比有较大的不同,其特性可归纳为下列四项:

(1)通常执行特定功能;

(2)以微电脑与外围构成核心;

(3)严格的时序与稳定性要求;

(4)全自动操作循环。

嵌入式系统具有目的性或针对性,其开发是围绕着产品和产品的特定功能来进行的。它必须最大限度的在硬件和软件上"量身订作"以提高效率[1],本文设计的嵌入式系统主要用于金融和税务类产品。

2 总体设计

2.1 cpu的选择

本文采用的是cirrus logic公司的嵌入式处理器ep9312[1]。

ep9312是一款arm9系列的处理器,arm9系列是高性能和低功耗特性方面最佳的硬宏单元,它具有五级流水线,并提供1.1mi/s/mhz的哈佛结构,而其前代产品arm7系列处理器则具有嵌入式ice-rt逻辑,功耗非常低,并提供0.9mi/s/mhz的三级流水线和冯.诺依曼结构。因为本主要用于开发先进的计算机终端,机顶盒、高端打印机等产品,所以需要较快的运算速度,而arm7主要用于对价位和功耗敏感的消费类产品,并且其运算速度相对较慢,所以本设计系统选择arm9系列[2],在arm9系列cpu中还有ep9307和ep9315。ep9307与ep9312的功能构造基本相同,只少了1个ide接口,但多了图形加速的功能,由于金融税务类产品大多需要较多的gpio,而与ep9307相比,ep9312可以很容易地设计出较多的gpio。ep9315在ep9312拥有的功能上再增加了pcmcia接口和图形加速功能,但这并不是金融税务类产品所必需的功能,综合考虑之后,本系统选择了ep9312。

2.2 技术指标

经过系统调研并基于产品成本考虑,嵌入式系统的技术指标如下所述:

cirrus logic公司的ep9312作为主处理器;

32mb flash使用nor flash;

64mb sdram;

显示格式:西文:24×12点阵,中文:24×24点阵,26行,80列,或者西文:16×8点阵,中文:16×16点阵,26行,80列;

800×600×16bpp、1024×768×16bpp多种tft显示模式,支持单扫描或双扫描;

1个并口;

5个串口;

2个ps/2端口;

1个1/10/100mb/s为的以太网接口,支持tcp/ip协议;

1个usb host和1个usb slave接口。

2.3 系统组成

ep9312已经集成了嵌入式系统所需的许多功能,为了使本设计满足金融税务类产品的要求,还增加了如下硬件:super i/o器件(包含2个uart、1个并口、2个ps/2产品控制器),网络phy接口器件、接口电平转换器、flash、sdram等,pcb板采用4层板,表层为信号层,其中的电源线路层和地线层深埋在主板的内层,不易受到电源杂波的干扰,尤其是高频电路,可以获得较好的抗干扰能力,系统的基本结构如图1所示[2]。

3 模块功能描述

3.1 cpu

ep9312的内核是arm920t,其主频为200mhz,100mhz内部总线,有16kb的指令cache和16kb的数据cache,内部集成了很多功能模块,其中主要包括:lcd控制器,3个usb host控制器,3个串口控制器,ethernet mac、eide、ac97接口等,ep9312内含mmu,支持tcp/ip协议,也为开发各种字符图形功能提供了快捷的方法[3]。本设计充分利用了这些内部集成功能,减少了外围器件。

3.2 reset模块

系统的reset模块为系统提供启动及复位信号,是系统运行的开端。

本系统采用max708csa作为复位器件,设计成用户重启的按钮控制。发出reset信号送给cpu的rston引脚、flash模块、jatg模块等。另采用一片max708csa作为系统上电的按钮控制,发出por信号发给cpu的prstn引脚,如图2所示。

3.3 系统时钟模块

系统时钟模块的作用是产生20个独立的时钟频率来满足ep9312不同独立逻辑部分的要求,所以这些时钟频率都来源于外部的一个低频晶体振荡器。这样处理器速率、总线速率、视频速率就可以不同而且互不影响。

ep9312提供两个接口外接晶体振荡器,其频率分别为32khz(实时时钟)和14.7456mhz。

为了获得足够高的时钟频率,ep9312同时提供两个pll,将32khz和14.7456mhz频率提升到足够高(14.756mhz,最大频率可为400mhz)。

3.4 调试端口(jatg)模块

ep9312提供了jtag调试接口,它有6条测试扫描链,这个接口通过5个外部控制信号实现调试功能;

tdo-测试数据输出,tdi-测试数据输入,tms-测试模式选择,tck-测试时钟,ntrst-测试复位。

由于ep9312集成了这些jtag信号,因此引出这些信号线在板上扩展出jtag口,即可与jtag测试器进行通信。

3.5 存储器

ep9312内含sdram控制器,它提供了一个高速存储接口给多种存储装置,包括sdram,synchronous flash和synchronous rom等。

cpu中已有sdram控制器,因此系统不需要外加sdram控制器,只要采用合适的sdram存储器,与ep9312的专用sdram信号线相连接即可。

本系统采用2片is4216400b的16位数据总线sdram器件组合构成了一个32位数据总线的16mb存储系统。今后如有需要,只需要16mb器件代替8mb的器件,即可方便地扩容至32mb sdram的系统。

本系统所用的flash器件是intel公司的te28f320j3d-75,该器件采用56引脚tsop封装,32mb的存储空间由32个128kb的擦除块组成,该flash采用25根地址线和16位数据线,可以通过byte信号来选择是8位还是16位方式访问。本系统采用16位方式访问,因此该信号线接高电平,同时ao地址线接地,oe/we是读写信号,由ep9312的读写控制线直接控制,系统中将flash的片选信号ce2、ce1信号接地,ceo由ep9312的两根片选信号cs0和cs6通过跳线来控制,如图3所示。
本系统的flash需要设计成2mb、4mb、8mb均支持的电路,只需要焊接不同容量的器件即可,这样做可以满足不同用户的需求,如:使用cf卡的用户只要2mb flash即可,此时,需要对flash和sdram的型号进行细致的选择,并对地址总线和数据总线进行相应的设计。

3.6 ps/2、串口和并口

通过super-i/o进行扩展,如图1所示,super-i/o选择winbond公司的w83977atf。该器件提供两个串口、一个并口、ps/2键盘鼠标接口和23个gpio,通过ep9312的waitn延时等待信号来匹配isa总线与存储总线的速度问题[3]。连同cpu提供的3个串口控制器,系统总共具有5个串口。

3.7 网络

ep9312内部含有一个ethernet的mac,只需要一个phy并通过vt6103l即可实现。

3.8 显示电路

要根据不同的显示屏来决定显示电路设计,本系统设计成共支持五种屏幕,包括tft、cstn、dstn、lvds、vga。ep9312输出的是数字信号,分别为1位数据、场频、行频、时钟、亮度控制几类信号。对于tft、cstn、可以直接与ep9312的内置接口相连,但要注意cstn在初始化彩色查找表时,将r.b色码互换,接tft屏要加电平转换器,对于dstn来说,本系统选用的屏幕为夏普公司的lm121vb1t02,该屏为单色屏,上下每时钟周期4个象素,每个信号对应一个象素点,查阅ep9312的输出象素转换表后发现,双扫描每时钟周期4个象素的模式并不适用于该屏,所以本系统在设计中选用了双扫描每时钟周期8个象素的模式,并从中挑选出适合的信号来驱动该屏,同时也要加电平转换器,在目前的市场上,tft接口的屏并不是主流,相对来说lvds接口的屏使用更广,对lvds接口的设计,本系统采用ds90c383mtd转换器来构建,对于彩色crt要加三个d/a转换器和电平转换器,单色crt只要一个d/a转换器和电平转换器,接vga屏要加专用器件,如adv7123[4],显示电路模块图如图4所示。
3.9 电源

ep9312需要4个不同的电源:rvdd(3.3v)、cvdd(1.8v)、vdd_pll(1.8v)和vdd_adc(3.3v)。板上其他元件除了3.3v供电的以外,还有5v供电的,整个系统的输入电压为12v,通过变压器件变成5v,再通过lt176et-3.3转换器件把+5v转变为3.3v的系统电压,通过lt176et-1.8转换器件把+3.3v转变为1.8v的ep9312内核电压。

3.10 gpio分配

ep9312有16个具有中断能力的增强型通用i/o,由于金融税务类嵌入式系统的产品通常不需要ide接口,因此ide接口的i/o设计成gpio,连同其他一些设计,总共增加了49个可选通用i/o。

3.11 bootloader

bootloader是系统加电启动运行的第一段软件代码,整个系统的加载启动任务就完全由bootloader来完成。简单的说,bootloader就是在操作内核或用户应用程序运行之前运行的一段小程序,通过这段小程序,可以初始化硬件设备,建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境[5],ep9312提供了20种bootloader的方式,分别经过eeclk、eedat、lbooti、lbooto、asdo、csn[7:6]的跳线组合来选择。

本系统在调试和生产时,采用16-bit serial boot的启动方式,对应的eeclk、eedat、lbooti、lbooto、asdo、csn[7:6]选择方式分为为:1、1、0、x、0、1。此时,cpu通过片内已经固化的4kb程序进行启动,初始化cpu和串口,并通过串口把用户程序下载到flash中,当系统正常工作时,则直接通过flash启动,直接在flash中读取程序代码运行[6]。

本设计利用前者把操作系统和应用程序写入flash中,用后者进行嵌入式系统的正常工作开启。

4 结束语

本文介绍了一种基于ep9312的银税类嵌入式系统的硬件设计方案,经过测试,系统各部分都能正常工作,实现了预定的功能。

与以前的嵌入式系统平台相比,本系统集成度高、主板面积小、外围接口多、成本低、运行速度快、是一款性价比很高的产品,能为嵌入式产品的开发提供一个良好的平台,主要面向计算机终端、存折打印机、补登机、pos机等嵌入式产品。


标签:
来源:《国外电子元器件》 作者: 时间:2007/1/26 0:00:00
相关阅读
推荐阅读
阅读排行
最近更新
商品推荐