单片机
返回首页

基于EP9312的银税类嵌入式系统硬件设计方案

2012-03-27 来源:国外电子元器件

1 嵌入式系统的概念与特点
   嵌入式系统结合微处理器或微控制器的系统电路与其专属软件,达到系统操作效率的最高比。这里把嵌入式系统定义为一个体积较小的计算机系统(与PC机相比),由于其体积较小,因此软硬件结构和应用范围与PC机相比有较大的不同。其特性可归纳为下列四项:
    (1)通常执行特定功能;
    (2)以微电脑与外围构成核心;
    (3)严格的时序与稳定性要求;
    (4)全自动操作循环。
    嵌入式系统具有目的性或针对性,其开发是围绕着产品和产品的特定功能来进行的。它必须最大限度地在硬件和软件上“量身定做”以提高效率。本文设计的嵌入式系统主要用于金融和税务类产品。

2 总体设计
2.1 CPU的选择
    本文采用的是Cirrus Logic公司的嵌入式处理器EP9312。
    EP9312是一款ARM9系列的处理器,ARM9系列是高性能和低功耗特性方面最佳的硬宏单元。它具有五级流水线,并提供1.1 MI/s/MHz的哈佛结构。而其前代产品ARM7系列处理器则具有嵌入式ICE-RT逻辑,功耗非常低,并提供0.9MI/s/MHz的三级流水线和冯 ·诺依曼结构。因为本系统主要用于开发先进的计算机终端、机顶盒、高端打印机等产品,所以需要较快的运算速度,而ARM7主要用于对价位和功耗敏感的消费类产品,并且其运算速度相对较慢,所以本设计系统选择ARM9系列。在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;
    ●64 MB SDRAM;
    ●显示格式:西文:24x12点阵,中文:24x24点阵,26行,80列。或者西文:16x8点阵,中文:16x16点阵,26行,80列;
    ●800x600x16bpp、1024x768x16bpp多种TFT显示模式,支持单扫描或双扫描;
    ●1个并口;
    ●5个串口;
    ●2个PS/2端口;
    ●1个1/10/100 Mb/s的以太网接口。支持TCP/IP协议;
    ●1个USB Host和1个USB Slave接口。
2.3 系统组成
    EP9312 已经集成了嵌入式系统所需的许多功能,为了使本设计满足金融税务类产品的要求,还增加了如下硬件:SuperI/0器件(包含2个UART、1个并口、2 个PS/2接口控制器)、网络PHY接口器件、接口电平转换器、Flash、SDRAM等。PCB板采用4层板,表层为信号层,其中的电源线路层和地线层深埋在主板的内层,不易受到电源杂波的干扰,尤其是高频电路,可以获得较好的抗干扰能力。系统的基本结构如图l所示。

3 模块功能描述
3.1 CPU
    EP9312的内核是ARM920T,其主频为200MHz,100 MHz内部总线。有16 KB的指令Cache和16 KB的数据Cache,内部集成了很多功能模块,其中主要包括:LCD控制器、3个USB Host控制器、3个串口控制器、Ethernet MAC、EIDE、AC’97接口等。EP9312内含MMU,支持TCP/IP协议,也为开发各种字符图形功能提供了快捷的方法。本设计充分利用了这些内部集成的功能,减少了外围元件。
3.2 RESET模块
    系统的RESET模块为系统提供启动及复位信号,是系统运行的开端。
    本系统采用MAX708CSA作为复位器件,设计成用户重启的按钮控制。发出RESET信号送给CPU的RSTOn引脚、Flash模块、JATG模块等。另采用一片MAX708CSA作为系统上电的按钮控制。发出POR信号送给CPU的PRSTn引脚,如图2所示。

3.3 系统时钟模块
    系统时钟模块的作用是产生20个独立的时钟频率来满足EP9312不同独立逻辑部分的要求,所有这些时钟频率都来源于外部的一个低频晶体振荡器。这样处理器速率、总线速率、视频速率就可以不同而且互不影响。
    EP9312提供两个接口接外部晶体振荡器,其频率分别为32 kHz(实时时钟)和14.7456 MHz。
    为了获得足够高的时钟频率,EP9312同时提供两个PLL,将32 kHz和14.7456MHz频率提升到足够高(14.7456 MHz,最大频率可为400 MHz)。
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位数据总线的16 MB存储系统。今后如有需要,只需用16 MB器件代替8 MB的器件,即可方便地扩容至32 MBSDRAM的系统。
    本系统所用的Flash器件是Intel公司的TE28F320J3D-75。该器件采用56引脚TSOP封装,32 MB的存储空间由32个128KB的擦除块组成。该Flash采用25根地址线和16位数据线,可以通过BYTE信号来选择是8位还是16位方式访问。本系统采用16位方式访问,因此该信号线接高电平,同时,AO地址线接地。OE/WE是读写信号,由EP9312的读写控制线直接控制。系统中将Flash 的片选信号CE2、CEl信号接地,CEO由EP9312的两根片选信号CSO和CS6通过跳线来控制,如图3所示。

    本系统的Flash需要设计成2 MB、4 MB、8 MB均支持的电路,只需要焊接不同容量的器件即可。这样做可以满足不同用户的需求,如:使用CF卡的用户只要2 MB Flash即可。此时,需要对Flash和SDRAM的型号进行细致的选择,并对地址总线和数据总线进行相应的设计。
3.6 PS/2、串口和并口
    通过Super-I/O进行扩展,如图1所示。Super-I/O选择Winbond公司的W83977ATF。该器件提供两个串口、一个并口、PS/2 键盘鼠标接口和23个GPIO,通过EP9312的WAITn延时等待信号来匹配ISA总线与存储总线的速度问题。连同CPU提供的3个串口控制器,系统总共具有5个串口。
3.7 网络
    EP9312内部含有一个Ethernet的MAC,只需要一个PHY并通过VT6103L即可实现。
3.8 显示电路
    要根据不同的显示屏来决定显示电路设计,本系统设计成共支持五种屏幕,包括TFT、CSTN、DSTN、LVDS、VGA。EP9312输出的是数字信号,分别为18位数据、场频、行频、时钟、亮度控制几类信号。对于TFT、CSTN,可以直接与EP9312的内置接口相连,但要注意CSTN在初始化彩色查找表时,将R,B色码互换。接TFT屏要加电平转换器。对于DSTN来说,本系统选用的屏幕为夏普公司的LMl21VBlT02,该屏为单色屏,上下每时钟周期4个像素,每个信号对应一个像素点。查阅EP9312的输出像素转换表后发现,双扫描每时钟周期4个像素的模式并不适用于该屏,所以本系统在设计中选用了双扫描每时钟周期8个像素的模式,并从中挑选出合适的信号来驱动该屏,同时也要加电平转换器。在目前的市场上.TFT接口的屏并不是主流,相对来说LVDS接口的屏使用更广,对LNDS接口的设计,本系统采用DS90C383MTD转换器来构建。对于彩色CRT要加三个D/A转换器和电平转换器,单色CRT只要一个D/A转换器和电平转换器,接VGA屏要加专用器件,如ADV7123。显示电路模块图如图4所示。

3.9 电源
    EP9312需要4个不同的电源:RVDD(3.3 V)、CVDD(1.8 V)、VDD_PLL(1.8 V)和VDD_ADC(3.3V)。板上其他元件除了3.3 V供电的以外,还有5V供电的,整个系统的输入电压为12 V,通过变压器件变成5 V,再通过LTl76ET-3.3转换器件把+5 V转变为3.3 V的系统电压,通过LT176ET-1.8转换器件把+3.3V转变为1.8V的EP9312内核电压。
3.10 GPIO分配
    EP9312有16个具有中断能力的增强型通用I/0,由于金融税务类嵌入式系统的产品通常不需要IDE接口,因此把IDE接口的I/O设计成GPIO,连同其他一些设计,总共增加了49个可选通用I/O。
3.11 Bootloader
    Bootloader是系统加电启动运行的第一段软件代码。整个系统的加载启动任务就完全由Bootloader来完成。简单地说,Bootloader 就是在操作系统内核或用户应用程序运行之前运行的一段小程序。通过这段小程序,可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境。EP9312提供了20种Boot-loader的方式,分别经过 EECLK、EEDAT、LBOOTI、LBOOTO、ASDO、CSn[7:6]的跳线组合来选择。
    本系统在调试和生产时,采用16-bit serial boot的启动方式。对应的EECLK、EEDAT、LBOOTI、LBOOTO、ASDO、CSn[7:6]选择方式分别为:l、1、0、X、0、1。此时,CPU通过片内已经固化的4 KB程序进行启动,初始化CPU和串口,并通过串口把用户程序下载到Flash中。当系统正常工作时,则直接通过Flash启动。直接在Flash中读取程序代码运行。
    本设计利用前者把操作系统和应用程序写入Flash中,用后者进行嵌入式系统的正常工作开启。

4 结束语
    本文介绍了一种基于EP9312的银税类嵌入式系统的硬件设计方案。经过测试,系统各部分都能正常工作,实现了预定的功能。
    与以前的嵌入式系统平台相比,本系统集成度高、主板面积小、外围接口多,成本低,运行速度快,是一款性价比很高的产品,能为嵌入式产品的开发提供一个良好的平台。主要面向计算机终端、存折打印机、补登机、POS机等嵌入式产品。

进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 简洁的过零调功器电路设计与分析

  • 永不缺相启动运行的电动机控制电路

  • IGBT模块通过控制门极阻断过电流

  • 比较常见的功率整流器和滤波电路

  • 基于M66T旋律发​​生器的电路图解析

  • 基于CA3193的热电偶放大器电路

    相关电子头条文章