首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于C8051F310和CS8900A的计算机网络实验平台设计(1)

基于C8051F310和CS8900A的计算机网络实验平台设计(1)

O 引言
《计算机网络》课程是大学计算机及相关专业开设的一门计算机与通信的专业课程。本课程具有很强的实践性,很多教学内容都需要高成本的实验环境才能实现,加上网络设备更新快、成本高,一般高校难以承担。而通过软件技术.建立一个软件模拟的实验室环境,不仅可节约实验成本,还可提高实验教学的水平和质量。
局域网技术发展十分迅速,Ethernet (以太网)是目前使用最广泛的局域网技术。因此,学习以太网技术对深入掌握局域网知识是非常重要的。本设计的目的就是利用嵌入式网络模块来实现网络数据的发送和接收,使学生熟悉网络的数据发送流程。
1 实验平台的硬件设计
计算机网络实验平台的硬件框图如图1所示,它主要由C805lF310、CS8900A和MAX232以及外围电路组成。

1.1 单片机C8051F310
C805lF310是美国Cygnal公司的产品。该器件是完全集成的混合信号片上系统型 MCU芯片,采用32脚LQFP封装,体积较小。C8051F310的模拟外设包括10位ADC以及速率可达200 KSpS的两个模拟比较器。器件的供电电压为2.7~3.6 V,典型工作电流为5mA@25MHz,典型停机电流为0.1μA。同时,C8051F310还带有1280字节的内部数据RAM(1 K+256)和16 KB的闪速存储器,可以在系统编程,其扇区大小为512字节。该MCU芯片的数字外设包括29个端口I/O,所有口线的耐压均为5 V,并具有4个通用16位计数器/定时器。C8051F310的时钟源既可用内部可编程振荡器(24.5 MHz,±2%精度),也可用外部振荡器(晶体、RC、C)或外部时钟。
1.2 以太网控制芯片CS8900A
CS8900A是Cirrus Logic公司生产的低功耗16位以太网控制器。它功能强大,其高度集成设计使其不再需要其它以太网控制器所必需的昂贵外部器件。CS8900A的内部结构如图2所示。

CS8900A包括片上RAM、10BASE-T发送和接收滤波器以及带24 mA驱动能力的直接ISA总线接口。除了高度集成外,CS8900A还提供其他性能和配置选择。它独特的PacketPage结构可自动适应网络通信量模式的改变和现有系统资源,因而系统效率很高。
CS8900A的内部功能主要是802.3介质访问控制块(MAC)。802.3介质访问控制块可支持全双工操作,并可完全依照IEEE802.3以太网标准来处理有关以太网数据帧的发送和接收,包括冲突检测、帧头的产生和检测、CRC校验码的生成和验证等。通过对发送控制器(TXCMD)的初始化配置,MAC 能自动完成帧的冲突后重传。如果帧的数据部分少于64字节,它还能生成填充字段,以使数据帧达到802.3所要求的最短长度。
CS8900A的主要特点是符合IEEE802.3以太网标准,并带有ISA接口。片内有4K字节RAM,可适用I/0操作模式、存储器操作和 DMA操作模式。芯片带有传送、接收低通率的10BASE-T连接端口,并支持10BASE2、10BASE5和10BASE-F的AUI接口,也可自动生成报头,自动进行CRC检验,而且冲突后可自动重发。CS8900A的最大电流消耗为55 mA(5 V电源),可全双工操作,同时支持外部EEPROM。
CS8900A收到由主机发来的数据包(从目的地址域到数据域,如图3所示)后,即可侦听网络线路,如果线路忙,就等待,否则就立即发送该数据帧,图3所示是其802.3帧格式。

发送时.首先应添加以太网帧头(包括先导字段和帧开始标志),然后生成CRC校验码,最后将此数据帧发送到以太网上。接收时,则把从以太网接收的数据帧经过解码、去帧头和地址等步骤后所得到的数据放在缓存内,这样,在CRC校验通过后,根据初始化配置情况,CS8900A通知主机收到了数据帧,并将数据用某种传输模式传到主机的存储区。
1. 3 硬件电路分析和设计
本实验平台采用C805lF310作为控制器,而以太网控制芯片CS8900A也是主要的一个工作部件,用于完成对网络数据的发送和接收。网络隔离变压器E2023是和芯片CS8900A配套使用的,用于将外部线路与CS8900A隔开,防止干扰,并可实现带电插拔功能。此外,CS8900A还有两个接口,一个是用来和用户模块连接的RS232串行接口(用MAX232芯片进行电平转换),另一个是用来连接网络的RJ45接口。
C805lF310通过数据线、地址线和控制线与CS8900A相连。它可通过等实现对CS8900A的工作方式的控制和读写操作。当 CS8900A有硬件复位或软件复位时,它将默认成8位工作模式。本设计采用8位模式,这样,C805lF310的P1口与CS8900A的低8位数据线相连。CS8900A与C8051F310之间的数据传输采用默认的I/O模式,因此,读写管脚被置高,以关闭Memory方式。在此模式下,用3根地址线就可以实现对所有寄存器的访问,只要将管脚SAl、SA2和SA3对应接到C8051F310的地址线上即可。实际上,除了为保证缺省偏移地址 (0X300H)须将SA8和SA9置高外。其余不用的地址线都接入低电平。
2 实验平台的软件设计
本系统的软件部分主要包括计算机程序、单片机程序及以太网芯片CS8900A的驱动程序。
2.1 计算机程序
计算机程序主要指的是实验界面。这是人机交互的窗口。通过该界面,学生可以控制并查看发送和接收流程。这样,可在发送数据时,输入要发送的内容,选择使用的协议,并控制发送流程,然后查看并分析各层数据;而在接收数据时,则可通过分析收到的数据包来分析使用的协议。
2.2 CS8900A的驱动程序设计
在8位I/0模式下,CS8900A不支持中断方式。因此,C805lF310采用查询方式与CS8900A通信。在CS8900A开始工作之前,系统必须进行一定的初始化,以确定它的工作模式。在主机与网络交换数据的过程中。还需要不断地对CS8900A的内部寄存器进行读写操作。通常在 I/0模式下,MCU可以通过操作CS8900A的几个主要的寄存器来实现对CS8900A中所有内部寄存器进行读写,这几个主要的工作寄存器有:
返回列表