当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于ARM9芯片S3C2410a的GPRS数据终端设计

随着科技的发展,人类生活节奏的加快,信息在生活中的地位日益重要,如何方便快捷并及时有效地获取信息成为现代信息处理中的关键问题。在这种需求下,中国移动GPRS业务及时地投人运营,无线数据通信的应用越来越广泛。相对原来GSM的拨号方式的电路交换数据传送方式.GPRS是分组交换技术,具有实时在线、按量计费、快捷登录,高速传输、自如切换的优点。GPRS采用分组交换的技术,数据传输速率最高理论值能达171.2 kb/s。电路交换数据业务速率为9.6 kb/s,因此GPRS在传输速度方面具有无与伦比的优势。更由于其本身就是一个分组数据网,支持TCP/IP协议,无需经过PSTN等网络的转接,可直接与Internet网络连接,因此GPRS在信息处理方面的优势是不可比拟的。
    为了满足GPRS数据终端的低成本、小型化和移动灵活等要求,采用ARM9芯片S3c2410a对GPRS数据终端进行控制。本文在S3C2410a中移植的是Linux操作系统,通过Linux操作系统可方便快捷地进行数据的传输和网络终端的控制;同时改善了系统性能,提高了系统可靠性,并使系统的扩展和开发性能进一步得到提高。

1 GPRS技术
1.1 GPRS工作原理
    GPRS的英文全称是General Packet Radio Service,译作“通用分组无线服务”,它是利用“包交换”(Packet-Switched)的概念发展起来的一套无线传输方式。所谓“包交换”就是将Data封装成许多独立的封包,再将这些封包一一传送出去,形式上有点类似邮局中的寄包裹。其作用在于只有当有资料需要传送时才会占用频宽,而且可以以传输的资料量计价,这对广大用户来说是较合理的计费方式,因为像Interact这类的数据传输大多数的时间频宽是闲置的。
    GPRS网络是基于现有的GSM网络来实现的,在现有的GSM网络中需增加一些节点,如GGSN(Gateway GPRS Supporting Node,GPBS网关支持节点)和SGS(Serving GSN,GPRS服务支持节点),GSN是GPRS网络中最重要的网络节点。GSN具有移动路由管理功能,它可以连接各种类型的数据网络,并可以连到GPRS寄存器。GSN可以完成移动终端和各种数据网络之间的数据传送和格式转换。GSN可以是一种类似于路由器的独立设备,也可以与GSM中的MSC集成在一起。
    GSN有两种类型:一种为SGSN(Serving GSN,服务GSN),另一种为GGSN(Gateway GSN,网关GSN)。SGSN的主要作用是记录移动终端的当前位置信息,并且在移动终端和GGSN之间完成移动分组数据的发送和接收。GGSN主要是起网关作用,它可以和多种不同的数据网络连接。如ISDN。PSPDN和LAN等。GGSN可以把GSM网中的GPRS分组数据包进行协议转换,从而可以把这些分组数据包传送到远端的TCP/IP或X.25网络。GPRS工作时,通过路由管理来进行寻址和建立数据连接,而GPRS的路由管理表现在以下3个方面:一是移动终端发送数据的路由建立;二是移动终端接收数据的路由建立;三是移动终端处于漫游时数据路由的建立。对于第一种情况,当移动终端产生了一个PDU分组数据单元,这个PDU经过SNDC层处理,称为SNDC数据单元,然后经过LLC层处理为LLC帧,并通过空中接口送到GSM网络中移动终端所处的SGSN,SGSN把数据送到GGSN,GGSN把收到的消息进行解装处理,转换为可在公用数据网中传送的格式(如PSPDN的PDU),最终送给公用数据网的用户。为了提高传输效率,并保证数据传输的安全,可以对空中接口上的数据做压缩和加密处理。在第二种情况中,一个公用数据网用户传送数据到移动终端时,首先通过数据网的标准协议建立数据网和GGSN之间的路由。数据网用户发出的数据单元(如PSPDN中的PDU),通过建立好的路由把数据单元PDU送给GGSN。而GGSN再把PDU送给移动终端所在的SGSN上,GSN把PDU封装成SNDC数据单元,再经过LLC层处理为LLC帧单元,最终通过空中接口送给移动终端。第三种情况是一个数据网用户传送数据给一个正在漫游的移动用户。这种情况下的数据传送必须要经过归属地的GGSN,然后送到用户A端。

1.2 GPRS的协议模型
    Um接口是GSM的空中接口。Um接口上的通信协议有5层,自下而上依次为物理层、MAC (Media Access Control)层、LLG(Logical LinkControl)层、SNDC层和网络层。Um接口的物理层为射频接口部分,而物理链路层则负责提供空中接口的各种逻辑信道。GSM空中接口的载频带宽为200 kHz,一个载频分为8个物理信道。如果8个物理信道都分配为传送GPRS数据,则原始数据速率可达200 kb/s。考虑前向纠错码的开销,则最终的数据速率可达164 kb/s左右。MAC为媒质访问控制层。MAC的主要作用是定义和分配空中接口的GPRS逻辑信道,使得这些信道能被不同的移动终端共享。LLG层为逻辑链路控制层。它是一种基于高速数据链路规程HDLG的无线链路协议。SNDC被称为子网依赖结合层。它的主要作用是完成传送数据的分组、打包,确定TCP/IP地址和加密方式。网络层的协议目前主要是Phasel阶段提供的TCP/IP和L25协议。TCP/IP和X.25协议对于传统的GSM网络设备(如:BSS,NSS等设备)是透明的。[!--empirenews.page--]

2 嵌入式系统设计
2.1 系统硬件结构
2.1.1 ARM9系统硬件结构
    ARM9系统硬件结构见图1。
 
2.1.2 GPRS传输设备
    本文使用的GPRS传输设备是北京华荣汇通信设备有限公司开发的GR100型GPRS MODEM,采用了高性能内嵌TCP/IP协议栈GPRS模块。
2.2 系统运作过程
(1)物理过程。ARM利用AT指令通过GPRSModem拨号,正确反馈及应答后,一条物理通道即GPRS信道就在系统中的GPRS Modem和GPRS网络之间建立起来。
(2)数据过程。PPP协议将原始的GPRS物理层连接改造成无差错的数据链路,系统将远程登录Internet,并得到GPRS网关分配的IP地址。
(3)网络过程。采用IP协议作为网络层协议。IP协议将接人Internet的具有不同IP地址的终端都联系起来。经过IP路由选择,可以实现系统与连在Internet上的任一IP终端进行数据交互。
(4)传输过程。选择TCP作为传输层协议,为数据传输提供面向连接,可靠服务。

3 软件设计
3.1 嵌入式系统的引导代码Bootloader
    Bootloader(引导加载程序)是嵌入式系统加电后运行的第一段代码,在PC中,引导加载程序由BIOS和位于硬盘MBR中的操作系统引导加载程序一起组成的。
    Bootloader启动大多数分为2个阶段。第一阶段主要包含依赖于CPU的体系结构硬件初始化的代码,通常都用汇编语言来实现。这个阶段任务有:基本的硬件设备初始化(屏蔽所有的中断、关闭处理器内部指令,数据Cache等);为第二阶段准备RAM空间;如果是从某个固态存储媒质中,则复制Bootloader的第二阶段代码到RAM中;设置堆栈;跳转到第二阶段的C程序入口点。
    第二阶段通常用c语言完成,以便实现更复杂的功能。这个阶段任务有:初始化本阶段要使用到的硬件设备;检测系统内存映射;将内核映像和根文件系统映像从Flash读到RAM 为内核设置启动参数;调用内核。
    在U-BOOT(在PPC-BOOT的基础上进化而来的一个开放源码的嵌入式BOOTROM程序)中通过下面两行代码进行两个阶段的工作交换:
Ldr pc,_start_armboot
_start_armboot:.word staxt_armboot
    Bootloader调用Linux内核的方法是直接跳转到内核的第一指令处,在跳转时必须满足下列条件:CPU寄存器设置。R0为O;R1为机器类型ID;R2为启动参数,标记列表在RAM中的起始基地址,CPU模式。必须禁止中断(IRQs和VlQs);CPU必须设置为SVC模式。Cache和MMU的设置。MMU必须关闭;指令Cache可以打开也可以关闭;数据Cache必须关闭。在编写完Bootloader后,利用JTAG下载电缆.烧写到Nor Flash中即可。

3.2 配置和编译Linux内核
    Linux内核主要由5个子系统组成:进程调度、内存管理、虚拟文件系统、网络接口、进程间通信。
3.2.1 配置内核
    配置内核的命令有make config;make oldcoafig;make menucoafig;make xconfig。无论哪个命令都将产生config文件,并在每一个c源文件中加上<Linux/config.h>,使define的宏起全局性的作用。
3.2.2 编译内核
    编译内核需要3个步骤,分别是创建内核依赖关系、创建内核镜像文件和创建内核模块。执行make up命令进行编译。
    生成内核以后,接下来要做的是安装它。对每一个内核配置来说。要复制4个丈件:没有压缩的内核镜像(zlmage和bzlmage)、压缩的内核镜像(vmlinux)、内核符号映射文件(System.map)以及配置文件(config)。
    最后用loader.exe烧写zlmage 或bzImage 到Nor Flash 的0x00010000地址。

4 GPRS数据终端实现
    GR100通过RS232接口与ARM9系统连接,最终实现了基于ARM9芯片S3c2410a的GPRS数据终端。该终端内部已移植了Linux操作系统,可在该系统下自主开发软件,使其功能更加强大,例如连接LCD,实现可视化操作等。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭