嵌入式系统及应用课程设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
山东建筑大学
课程设计说明书
题目:基于ARM的网络通信系统的设计课程:嵌入式系统及应用课程设计
院(部):信息与电气工程学院
专业:电子信息工程
班级:电信062
学生姓名:**
学号:**********
指导教师:***
完成日期:2009年7月
目录
摘要 (II)
1 设计目的 (1)
2 设计要求 (1)
3 设计原理 (2)
4 设计内容 (5)
4.1系统框图 (5)
4.1需求分析 (5)
4.3器件选型 (6)
4.4 系统原理图 (8)
4.5 软件设计 (9)
总结与致谢 (11)
参考文献 (12)
摘要
在电子设备日趋网络化的背景下,作为目前广泛使用的以太网以及TCP/IP协议已经成为事实上最常用的网络标准之一,它以高速、可靠、分层以及可扩充性使得它在各个领域的应用越来越灵活,很多情况下运用以太网和TCP/IP能够简化结构和降低成本。
但是,目前关于嵌入式以太网的设计方案不是很多,在这不多的方案中大多是基于单片机或DSP的。
两者都存在要外扩很多外设的问题,并且前者速度太慢,后者成本又太高,这在一些对设备尺寸要求很小的场合是不行的。
本设计中,采用了基于ARM内核的微处理器S3C44BOX为基础的嵌入式系统与10 MB 以太网控制芯片RTL8019AS的接口电路实现了网络通信。
本系统可以通过网络接收命令和传送数据,S3C44BOX负责数据的采集和运算处理,通过互联网上任意一台计算机可以配置系统的工作方式和接收本系统采集的数据。
关键词:TCP/IP;ARM;S3C44B0X;RTL8019AS
1 设计目的
目前,以太网协议已经非常广泛地应用于各种计算机网络,如办公局域网、工业控制网络、因特网等场合,并且还在不断地发展。
基于以太网的新技术和联网设备不断出现,以太网已经成为事实上最常用的网络标准之一。
但是,基于以太网的嵌入式系统目前并不是很多。
其原因除了嵌入式系统本身运行速度较慢、资源较少且不足以实现以太网的各种协议外,更重要是设计以太网的接口及协议相对比较复杂,使人望而却步。
此次课程设计的目的就是设计一个基于ARM的网络通信系统,采用以太网接口电路,实现数据网络化。
2 设计要求
本设计要求实现一个能挂接到互联网上的数据通信系统。
该系统可以通过网络接收命令和传送数据,该系统的DSP负责数据的采集和运算处理,采集数据可以根据自己的需要假定(如温度、流速等),通过互联网上任意一台计算机可以配置系统的工作方式和接收系统采集的数据。
选择合适的ARM芯片型号以及以太网控制器芯片型号,完成系统设计,实现网络通信。
3 设计原理
ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。
技术具有性能高、成本低和能耗省的特点。
适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP 和移动式应用等。
ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。
利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。
目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。
至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。
ARM架构是面向低预算市场设计的第一款RISC微处理器。
ARM 即Advanced RISC Machines的缩写,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。
1985年4月26日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生,由美国加州SanJoseVLSI技术公司制造。
20世纪80年代后期,ARM很快开发成Acorn的台式机产品,形成英国的计算机教育基础。
1990年成立了Advanced RISC Machines Limited(后来简称为ARM Limited,ARM公司)。
20世纪90年代,ARM 32位嵌入式RISC(Reduced lnstruction Set Computer)处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。
ARM公司既不生产芯片也不销售芯片,它只出售芯片技术授权。
ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和众多合作伙伴。
当前ARM体系结构的扩充包括:
·Thumb 16位指令集,为了改善代码密度;
·DSP DSP应用的算术运算指令集;
·Jazeller 允许直接执行Java字节码。
·无线、消费类电子和图像应用的开放平台;
·存储、自动化、工业和网络应用的嵌入式实时系统;
·智能卡和SIM卡的安全应用。
ARM处理器本身是32位设计,但也配备16位指令集。
一般来讲存储器比等价32位代码节省达35%,然而保留了32位系统的所有优势。
ARM的Jazelle技术使Java加速得到比基于软件的Java虚拟机(JVM)高得多的性能,和同等的非Java 加速核相比功耗降低80%。
CPU功能上增加DSP指令集提供增强的16位和32位算术运算能力,提高了性能和灵活性。
ARM还提供两个前沿特性来辅助带深嵌入处理器的高集成SoC器件的调试,它们是嵌入式ICE-RT逻辑和嵌入式跟踪宏核(ETMS)系列。
TCP/IP(Transmission Control Protocol/Internet Protocol)的简写,中文译名为传输控制协议/网际协议,又叫网络通讯协议,这个协议是是Internet 最基本的协议、Internet国际互联网络的基础,简单地说,就是由网络层的IP 协议和传输层的TCP协议组成的。
TCP/IP 是供已连接因特网的计算机进行通信的通信协议。
TCP/IP 指传输控制协议/网际协议(Transmission Control Protocol / Internet Protocol)。
TCP/IP 定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准。
TCP/IP协议并不完全符合OSI的七层参考模型。
传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。
该模型的目的是使各种硬件在相同的层次上相互通信。
这7层是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
这4层分别为:
应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。
传输层:在此层中,它提供了节点间的数据传送,应用程序之间的通信服务,主要功能是数据格式化、数据确认和丢失重传灯。
如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
网络接口层(主机-网络层):接收IP数据报并进行传输,从网络上接收物理帧,抽取IP数据报转交给下一层,对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。
以太网(Ethernet)。
指的是由Xerox公司创建并由Xerox,Intel和DEC公司联合开发的基带局域网规范。
以太网络使用CSMA/CD(载波监听多路访问及冲突检测技术)技术,并以10M/S的速率运行在多种类型的电缆上。
以太网与IEEE802·3系列标准相类似。
它不是一种具体的网络,是一种技术规范。
以太网是当今现有局域网采用的最通用的通信协议标准。
该标准定义了在局域网(LAN)中采用的电缆类型和信号处理方法。
以太网在互联设备之间以10~100Mbps的速率传送信息包,双绞线电缆10 Base T以太网由于其低成本、高可靠性以及10Mbps的速率而成为应用最为广泛的以太网技术。
直扩的无线以太网可达11Mbps,许多制造供应商提供的产品都能采用通用的软件协议进行通信,开放性最好。
4 设计内容
4.1系统框图
系统整体框图如图1所示:
图1 系统框图
本系统核心为基于ARM的S3C44B0芯片,它的外围电路有时钟电路,SDRAM+FLASH电路,RESET电路等,它负责数据采集和运算,通过以太网设备实时传送,互联网上的任何一台得到授权的计算机可以配置系统的工作方式和接受采集的数据。
4.1需求分析
本次课程设计要求实现一个能挂接到互联网上的数据通信系统。
我们需要选择一片基于ARM7技术的芯片,由它负责数据的采集的运算,并将其外围电路设计完成。
还需要选择一片以太网控制器+以太网变压器,他们负责将主芯片信息通过RJ45接口实时传送到互联网上,实现网络通信。
4.3器件选型
本方案硬件电路使用的芯片主要有微处理器S3C44BOX,以太网控制器RTL8019AS,以太网变压器FB2022。
S3C44BOX 芯片的介绍
Samsung 公司推出的16/32 位RISC 处理器S3C44B0X 为手持设备和一般类型应用
提供了高性价比和高性能的微控制器解决方案。
为了降低成本,S3C44B0X 提供了丰富的内置部件,包括:8KB cache,内部SRAM,LCD 控制器,带自动握手的2 通道UART,4 通道DMA,系统管理器(片选逻辑,FP/EDO/SDRAM 控制器),代用PWM 功能的5 通道定制器,I/O端口,RTC,8 通道10 位ADC,IIC-BUS 接口,IIS-BUS 接口,同步SIO 接口和PLL 倍频器。
S3C44B0X 采用了ARM7TDMI 内核,0.25um 工艺的CMOS 标准宏单元和存储编译器。
它的低功耗精简和出色的全静态设计特别适用于对成本和功耗敏感的应用。
同S3C44B0还采用了一种新的总线结构,即SAMBAII(三星ARM CPU 嵌入式微处理器总线结构)。
S3C44B0X的杰出特性是它的CPU核,是由ARM公司设计的16/32 位ARM7TDMI RISC处理器(66MHZ)。
ARM7TDMI 体系结构的特点是它集成了Thumb 代码压缩器,片上的ICE断点调试支持,和一个32 位的硬件乘法器。
S3C44B0X 通过提供全面的、通用的片上外设,大大减少了系统电路中除处理器以外的元器件配置,从而最小化系统的成本。
本章将对下面所列的各种片上功能进行介绍。
2.5V ARM7TDMI 内核,带有8K高速缓存器(SAMBA II总线体系结构,主频高至66MHz); 外部存储器控制器(FP/EDO/SDRAM控制,片选逻辑);
LCD控制器(最大支持256色STN,LCD具有专用DMA);
2通道通用DMA、2通道外设DMA并具有外部请求引脚;
2通道UART 带有握手协议(支持IrDA1.0, 具有16-byte FIFO)/1通道SIO;
1通道多主IIC-BUS控制器;
1通道IIS-BUS控制器;
5个PWM定时器和1通道内部定时器;
看门狗定时器;
71个通用I/O口/8通道外部中断源;
功耗控制:具有普通,慢速,空闲和停止模式;
8通道10位ADC;
具有日历功能的RTC;
具有PLL的片上时钟发生器。
RTL8019AS的介绍
RTL8019AS 是高度集成以太网控制器,它能够简单的解答即插即用NE2000兼容适配器,这种适配器具有二重和功率下降特性。
通过三电平控制特性,RTL8019AS 是已制的对网络设备GREEN PC 理想的选择。
全二重功能能够模拟传播和接收在双绞线到全二重以太网交换机。
这个特性不仅强带宽从10 到20MBPS,而且避免了由于以太网频道争夺特性导致的读出多路存取协议的问题。
微软公司的即插即用功能能减轻用户较差的营业收入而注意适配器资源,如IRQ,输入输出,和存储器地址等等。
然而,为了特殊的应用而得不到即插即用功能的兼容性,RTL8019AS 支持JUMPER 和JUMPERLESS 选项。
为了提供完全解决即插即用方案,RTL8019AS 在集成10BASET 收发器,BNC,和AUI 接口之间的自动检测功能。
此外,8 条IRQ 总线和16 条基本地址总线为大资源情况下提供了宽松的环境。
RTL8019AS 支持16k,32k,和64k 字节BROM 和闪存接口。
它仍然提供页面模式功能,这种功能能支持在仅16k 字节内存系统空间下的4M 字节的BROM.此外,BROM 的无用命令被用来释放BROM 内存空间。
RTL8019AS 用16k 字节SRAM 设计在单片芯片上,它的设计不仅提供了更多友好的功能,而且节省了SRAM 存储资源。
RTL8019AS内部有2个RAM区1块16 KB 地址为0x4000 0x7fff 1块32 B 地址为0x0000 0x001f RAM按页存储每256 B为一页本方案中将RTL8019AS 的RAM 的前12 0x40000x4Bff 作为发送缓冲区后52页(0x4c00 0x7fff)作为接收缓冲区第0页只有32 B 用来存储以太网的物理地址RTL8019AS 具有32个输出/输出地址地址偏移量为00H 1FH 其中00H 0FH具有16个地址为寄存器的地址寄存器分为page0 page3 由RTL8019AS中的命令寄存器CR中的PS1和PS0位来决定要访问的页复位端口包括18H1FH 共8 个地址用于RTL8019AS的复
位软件。
本系统处理器S3C44BOX 与RTL8019AS 的接口采用UTP RJ45接口。
RTL8019AS与主机有三种接口工作模式:
跳线方式,网卡的I/O和中断由跳线决定。
即插即用方式,由软件进行自动配置plug and play。
免跳线方式,网卡的I/O和中断由外界的93C46里的内容决定。
在嵌入式应用场合如果不使用93C46的话可以降低成本同时又减少连线因此本文采用第1种方式即跳线方式即通过设置RTL8019AS的65脚jp为高电平(接到Vcc或通过一个
10 k 的上拉电阻)来实现。
4.4 系统原理图
系统原理图如附图所示。
4.5 软件设计
RTL8019AS 的编程包括初始化、发送、接收三部分功能。
在接收和发送数据以前要进行必需的检测和初始化。
RTL8019AS的初始化主要是设置所需的寄存器状态,建立网络接口收发的条件。
网络接口通过2个DMA操作来完成数据的接收和发送。
本地DMA 完成RTL8019AS与其内部FIFO队列之间的数据传送,远程DMA完RTL8019AS与S3C44B0之间的数据传送。
初始化RTL8019AS:
初始化部分完成RTL8019AS在使用之前的初始化工作,设置相关工作模式的寄存器,分配和初始化接收和发送缓冲区,初始化网卡接收地址。
传输数据包:
发送部分只要把数据写入缓冲区,启动执行命令,RTL8019AS 自动发送。
一般在RAM 内开辟2 个以太网数据包的空间作为发送缓冲区。
作为一个集成的以太网芯片,数据的发送校验,总线数据包的碰撞检测与避免是由芯片自己完成的。
只需要配置发送数据的物理层地址、源地址、目的地址、数据包类型以及发送的数据就可以了。
接收数据包:
它是完成数据接收任务,RTL8019AS接收到以太网数据包后自动将其存在接收缓冲区并发出中断信号,S3C44BOX在中断程序里通过DMA 就可接收到数据,即通过远端DMA 把数据从RTL8019AS 的RAM 空间,读回ARM 中处理。
这里主要是对一些相关的寄存器进行操作。
软件流程图如图2所示。
图2:软件流程图
总结与致谢
本次设计设计的基于ARM的网络通信系统具有价格适中,运行稳定,实时性高等特点,而且其数据传输速度等同于PC之间10M的网卡。
但是在接口的全面性上还有待于进一步提高。
通过本次课程设计,使我对ARM和网络通信系统知识的掌握和理解有了很大提高,巩固了我在《嵌入式系统》课程中所学的基本理论知识和实验技能,使我对《DSP原理及应用》课程有了更深入的了解,对现在流行的ARM和DSP技术有了一个整体的认识和提高,进一步激发了我对电子信息专业学习的兴趣;提高了我的protel绘图能力,以及设计电路,分析电路,筛选器件的综合能力。
在设计的过程和设计说明书的撰写过程中,高焕兵老师给予了我热心的帮助和大力的支持,给我提了诸多的宝贵意见,拓宽了我的思路。
在此我向老师致以崇高的敬意和衷心的感谢!
在我的学习过程中,辛征等其它老师也给了我耐心的指导和帮助。
我在此对各位老师表示诚挚的感谢!
参考文献
[1] 李驹华,张华.基于ARM 的工业以太网控制系统智能节点的设计[J].电子技术应
用.2003.(7)
[2] 马忠梅,徐英慧,叶勇建,林明.AT91系列ARM 核微控制器结构与开发[M].北京:北京航空航天大学出版社.2002.
[3] Labrosse J J,嵌入式系统构件[M].袁勤勇,等译.北京:机械工业出版社,2002.
[4] 陈赜.ARM9嵌入式技术及Linux高级实践教程[M] .北京:北京航空航天大学出版社,2005.
[5] 孙天泽,袁文菊.嵌入式设计及Linux驱动开发指南——基于ARM9处理器[M] .第2版.北京:电子工业出版社,2007.
[6] 田泽.ARM9嵌入式Linux开发实验与实践[M] .北京:北京航空航天大学出版社,2006.
[7] 于明.ARM9嵌入式系统设计与开发教程[M] .北京:电子工业出版社,2006.
[8] 赵星寒.ARM开发工具ADS原理与应用[M] .北京:北京航空航天大学出版社,2006.
[9] 季昱, 林俊超, 宋飞编.ARM嵌入式应用系统开发典型实例[M] .北京:中国电力出版社,2005.。