TINI的硬件结构和软件环境

2006-05-07 15:50:09来源: 互联网

硬件结构的基本组成、地址空间及I/O,并分析TINI应用的软件开发环境和软件运行环境。

TINI(Tiny InterNet Interface)是一种基本一线制协议的网络互连设备。它不仅可将不具备外界通信能力的器件连入一线制网络,而且通过TINI还可实现与信息网络的连接,从而满足商业或工业的嵌入式网络应用的需求。

具有网络互连功能的TINI,一般可支持如下领域的应用:

工业控制领域。集成有(CAN)Controller Area Network接口的TINI,实际上就是一个工业用仪器,用它可操作工厂的自动化设备以及网络化开关等设备。

②基于Web方式的设备监控。TINI可以直接与支持一线制协议的设备进行通信,并为这些设备进行远程诊断以及实现对远程设备的数据采集。

③协议转换。TINI可使一线制设备方便地接入Ethernet。尽管依靠某些一线制设备的I/O能力,PC机或工作站也可以使其与Ethernet网连接。但是,无论从连接成本还是设备尺寸考虑,TINI都是一个理想的选择。

一般而言,TINI的应用程序接口主要是面向度设备及网络的,而大多数嵌入式网络应用也是面向控制的,并以输入输出为中心。因此无需内建的硬件和API软件对人机接口提供支持。基于TINI的系统通常通过应用HTTP的网络服务器,提供远程的显示功能,也允许用户使用Web浏览器等客户端软件与TINI打交道。

TINI除了具有网络互连功能外,还可以应用于传统的孤立环境中,如监视、控制一个本的设备或系统。通过TINI的RS-232C串口、CAN总线接口或并口,本地设备或系统可以与外部世界实现通信。在TINI上运行的Java应用程序,担负着与相关设备在一定的协议支持下进行通信的任务,并通过TCP/IP网络,将通信结果传给远程系统。

1 TINI的硬件结构

TINI硬件部分提供有处理、控制以及设备级的通信和连网功能,包括微控制器、Flash ROM、SRAM、一线制网络接口、Ethernet接口、串行接口、CAN总线接口以及辅助电路等若干功能模块。如图1所示。

1.1 基本组成

微控制器、Flash ROM和SRAM是TINI的三大基本组成部分。

微控制器是TINI的核心,直接执行运行环境的Native Code。当前的微控制器是DS80C390,支持多种I/O形式,如串口I/O、一线制I/O以及CAN总线I/O;同时它还提供数个具有特功能的引脚,用于执行简单的控制任务,如驱动发光二极管等。该处理器的时钟频率达40MHz,具有32位的指令系统和24位的数据指针。其主要特性如下:

*与8051指令系统兼容;

*4个8位I/O口;

*3个16位定时/计数器;

*256字节scratchpad RAM;

*4KB SRAM;

*3倍于8051的运行速度;

*具有2个CAN2.0B控制器;

*具有2个全双工串口;

*寻址空间达4MB。

Flash ROM存储了TINI的运行环境。当系统断电时,数据不会丢失,并且数据可以重写,以便于TINI运行环境的升级与更新。目前所选用的FlashROM型号为AMD公司的AM29F040B,容量512KB,采用0.32μM制造,至少可重写数据1 000 000次以上。

静态RAM包括系统数据区及Java的运行空间,存储所有的文件系统数据。当系统掉电时,文件系统数据是否保留取决于静态RAM是否提供有备份电池。目前,所选用的SRAM是韩国HYUNDAI的产品,容量为512KB,可扩展到2MB。

1.2 地址空间及I/O

TINI的存储器、外围设备与微控制器统一编址。2种典型的外围设备是Ethernet控制器和时钟。微控制器的地址空间到达4MB,分代码段、数据段和外围设备段3部分地址空间。代码段和数据段的地址空间被存储芯片所占用,而外围设备段的地址空间则被Ethernet控制器和时钟等外设所占用。

TINT的地址空间如图2所示,其中代码段的最大空间为1MB,从0x000000开始编址;数据段的最大空间2MB,从0x100000开始编址;外围设备段的最大空间为1MB,从0x300000开始编址。若物理器件没有完全占用微控制器的约定空间,则各段的起始地址仍保持不变。如Flash ROM的容量仅为512KB,则代码段实际占用512KB,但是,数据段的起始地址仍为0x100000。

TINI的微控制器可支持如下几种低层次的通信协议:

*串行通信协议;

*CAN网络协议;

*一线制网络协议;

*TTL I/O。

2 TINI的软件环境

TINI的软件环境包括软件开发环境和软件运行环境2个方面。

2.1 TINI的软件开发环境

软件开发环境包括Java开发环境、Java通信API以及TINI软件开发包3个方面。进行TINI的应用开发,可采用JDK1.1.8以上版本实现,这可从SUN公司的网络上免费获得。Javax.comm包是JDK所扩充的函数包,提供给TINI一些特殊的I/O能力。为使开发工作顺序开展,需将Java串口API包javax.comm的有关文件拷到如下目录中:

.dll

.comm.properties

.jar

利用TINI SDK,可以方便地进行TINI的应用开发,它包括有tini.jar、tiniclasses.jar、tini.db、timi.tbin和slush.tbin等几部分。Tiniclasses.jar中封装有所有的TINI API类,它们是实现TINI应用开发的基础。Tini.jar中包括2个重要的工具:JavaKit和TINIConvertor。其中JavaKit用于引导固件、执行系统维护任务、设备端口号和通信速率、执行类Unix命令进行相应操作;TINIConvertor用于将应用程序中的类文件转换成TINI可执行的二进制文件。

2.2 TINI的软件运行环境

TINI的软件运行环境包括运行环境软件与实时操作系统RTOS两部分,如图3所示。运行环境软件包括由微处理器直接执行的Native Code,以及由JVM(Java Virtual Machine)解释运行的API;而实时操作系统RTOS,主要负责管理所有的系统资源、调度线程和进程的执行以及实现与外界通信。

Native Method层介于JVM和RTOS之间,是JVM和PTOS联系的桥梁。应用程序通过Native Method层来访问网络协议栈以及非网络设备的驱动程序,同时Native Method层还提供有配置和访问系统资源的方法。Native Method与JVM的接口称为Native Interface Layer。它构成了JVM所执行的Java Code和Native Method的边界。

TINI的JVM,虽然所占用的内存不足40KB,但是它却能够支持绝大部分JVM的功能,如对线程的完全支持、对所有基本类型的支持以及对Strings的支持等。唯一的不足是没有具备引导动态库的功能。TINI所使用的Java API函数,由2部分组成:一部分是JDK的Java.lang、Java.io、Java.net、Java.util包内的大部分函数;另一部分是TINI专用的com.dalsemi包。目前,JDK中Java.lang.math等函数暂时还无法被TINI所接受,有望在不久的将来被TINI所支持。

TINI操作系统处于运行环境的最底层,负责管理所有的系统资源。它主要由进程线程调度器、内存管理子系统和I/O管理子系统3部分组成,分别负责多个进程线程执行的调度安排、存储空间的管理以及实现内外部硬件的通信。TINI的应用程序可以访问所有的系统资源,可以实现底层的功能,包括操作系统所能实现的功能,这对于嵌入式系统是非常重要的。

关键字:硬件  结构  软件  软件环境

编辑: 引用地址:http://www.eeworld.com.cn/wltx/qtjs/200605/3143.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
硬件
结构
软件
软件环境

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved