微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于的新一代公用信息终端ARM设计

基于的新一代公用信息终端ARM设计

时间:08-14 来源:互联网 点击:
1 信息终端的总体设计

信息终端属于公用电话领域,在功耗,接入方式,操作方便性等方面都有特殊要求,因此采用标准的嵌入式系统设计。

信息终端的处理器选用SoC嵌入式处理器 ARM7系列中的EP7312。处理器采用ARM7TDMI的处理器内核,有8k字节高速缓冲存储器(CACHE),支持MMU,带64路TLB(translation look-aside buffer);写缓冲器。超低功耗(典型值)74MHz工作状态时为90mW, 18MHz工作状态时为30mW,空闲状态时为10mW(CPU时钟停止,其余工作),挂起状态时1 mW(实时时钟工作,其余停止工作)。

操作系统采用NUCLEUS嵌入式操作系统。 NUCLEUS嵌入式操作系统提供源代码,用户能够深入地了解底层内核的运作方式,并可根据自己的特殊要求改动系统软件。它采用了先进的微内核(Micro-kernel)技术,在优先级安排,任务调度,任务切换等各个方面都有相当大的优势,对防止优先级倒转等的方面都有一定的独到之处。而且,能够结合 Paradigm,SDS以及 ATI自己的多任务调试器组成功能强大的集成开发环境。另外 NUCLEUS除提供功能强大的内核操作系统外,还提供种类丰富的功能模块。

信息终端利用ISDN接入公用互联网,由于 ISDN交换机有远供的能力(可以提供1W的电力),接入终端不需要外接电源,接入方式简单。这对于一种公用电话的替代产品来说是非常理想的。而且ISDN网性能稳定,使用灵活,技术成熟。信息终端可以充分利用ISDN的两个B通道可以给用户提供一种公用互联网接入方式,在这个平台基础上就可以开发出各种形式的增值服务。

2 信息终端的硬件设计

信息终端硬件的核心是终端主板,它负责管理键盘扫描、外围状态监测等。LCD接口提供 320×240分辨率的显示屏用以显示数据、图像,以及与用户交互信息。另外,由于信息终端属于公用电话系统,还需包含读卡器板、功能键盘板、门开及摘挂机检测等功能模块。

本系统充分利用ISDN交换机的供电能力,电源板从ISDN线路取电,经变换后向主板提供+5V和+3.3V电源。自带后备电池,保证在线路掉电时,能完成正在进行的操作和保存记录。主板的原理框图如图1所示。


主板由嵌入式处理器(EP7312)、FLASH (INTEL公司的28F320C3)、SDRAM(W986416DH)、ISDN参考模型中的U接口控制芯片(MC145576)、声音编解码芯片(MC145481)、ISDN数据链路控制芯片(HFC- S+)等芯片组成。

EP7312通过总线对FLASH、SDRAM、HFC-S+进行控制。处理器通过对HFC-S+进行控制,实现ISDN 通话及通信的功能。MC145576芯片主要完成ISDN参考模型中的S/T接口和U接口之间转换。主板上集成8M的FLASH存贮空间,分为两个部分,其中3M作为程序空间,剩下存放和MS- DOS4兼容的文件系统。HFC-S+支持B通道和D通道高级数据链路控制(HDLC),向外提供GCI总线、FIFO控制等。MC145481 CODEC芯片是一个PCM编解码芯片,它实现声音的数字化和重组。

在EP7312的键盘扫描各口线上都加上双向过压保护二极管BAV99及防短路的电阻,提高了防静电能力及防短路能力。主板时钟芯片采用PHILIPS的 PCF8563芯片以防止停振。


3 信息终端的软件设计

本系统的软件主要分为启动代码,芯片驱动程序设计,操作系统和ISDN协议栈的移植,应用程序的设计等。系统软件结构如图2。


3.1 启动代码的设计
启动代码在信息终端的设计中是很重要的一环,它是EP7312处理器在冷启动后首先执行的一段代码,用ARM汇编指令编写。在这一段程序中要执行一些必须的初始化任务 ,例如中断向量表的初始化、SDRAM控制器初始化、存储器管理单元(MMU)初始化等等。

设置入口指针:启动程序首先必须定义入口指针,而且整个应用程序只有一个入口指针。

设置中断向量表:ARM7要求中断向量表必须设置在从0地址开始,连续8×4字节的空间,分别是复位、未定义指令错误、软件中断、预取指令错误、数据存取错误、IRQ、FIQ和一个保留的中断向量。

初始化堆栈和CPU寄存器:系统堆栈初始化取决于用户使用的中断,以及系统需要处理的错误类型。还需要设置CPU相关的寄存器,以确定系统使用的SDRAM和其它外设芯片的刷新频率,数据总线宽度等信息。

初始化存储器系统:系统集成有MMU来管理内存空间。

改变处理器模式、状态:本系统让处理器一直处于超级用户模式。

初始化C语言所需的存储器空间:在初始化期间应将系统需要读写的数据和变量从

FLASH拷贝到SDRAM里。并要对一些全局的数据进行初始化,如BSS数据段。

跳转到C程序入口:启动代码跳到C程序的入口,开始一段NUCLEUS操作系统的初始化和应用程序初始化

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top