标签芯片 | 读写器 | 天线 | 中间件 | 智能卡 | 生物识别 | 条码 | 制造设备 | 物流 | 零售 | 防伪 | 交通 | 停车 | 资产管理 | 动物 | 身份识别 | 军事 | 航空 | 门禁 | 一卡通
供求商机 资讯中心 产品中心 企业资料 人才招聘
 
 首页 >> 技术中心>> 正文
在嵌入FPGA的IP核8051上实现TCP/IP的设计
来源:电子元器件应用   2007-7-30 14:27:17
关键词: 嵌入  FPGA  IP核  8051  TCP  IP  数据采集  


提要该便携式接触网故障信号分析仪采用图形化程序设计语言LabVIEW开发设计, 可实现数据的高速实时采集、在线分析、自动存储、显示等功能。

0 引言

随着芯片规模的越来越大、资源的越来越丰富, 芯片的设计复杂度也大大增加。事实上, 在芯片设计完成后, 有时还需要根据情况改变一些控制, 这在使用过程中会经常遇到。这时候如果再对芯片设计进行改变将是很不可取的, 因为需要设计人员参与这种改变, 这无论是对设计者还是用户都是不能接受的。于是就有必要让这种可以改变的简单控制在芯片设计时就存在, 而且同时还应该使这种改变相对容易, 比较通用, 并且与芯片的其它设计部分尽量不相关。为了满足上述的要求, 在FPGA中嵌入一个比较理想的选择, 而这个即通用又控制简单的IP核最好选择8051微处理器。

在FPGA中植入8051后, 还可在上面实现简单的TCP/IP协议, 以支持远程访问或进行远程调试, 这只是在嵌入FPGA的8051上的一个应用。为了保证用户能够对8051实现不同的控制操作,设计时也可以采用一个外部flash对8051进行加载, 这样, 用户只需要将编译好的汇编语言代码加到flash就可以控制8051的工作, 而此时用户完全不需要对FPGA进行操作就能实现简单的控制,而这需要的仅仅只是keil的编译环境。

1 IP核8051的FPGA实现

现在有许多免费的8051核可以利用, 这些核都可通过硬件描述语言来实现, 并且基本上都可综合, 也就是直接拿来就能用, 需要的只是根据自身的具体需求做一些简单修改即可。总的说来, IP核8051的移植是比较简单的。

本系统的设计与实现可以采用oregano system的mc8051内核, 并且加入定时计数的和串口模块, 8051单片机的设计结构框图如图1所示。

在8051核的FPGA设计中, 完全可以实现包括计时/计数、中断、串口、数据及程序存储器、特殊寄存器、布尔处理的位处理机等的所有功能, 而且兼容所有指令, 只是在具体的移植过程中做一些改变而已。

这种方法对程序存储器不再做内外之分, 因为FPGA内部存储容量已经能够满足要求, 同时将程序存储器的容量扩大了一倍 (变为8KB), 以满足大程序的容量需求; 为了让8051更为强大且更具有通用性, 可将数据存储器RAM的容量扩大一倍, 变为256字节。可以看出, 在设计过程中将8051的功能也进行了加强, 但是并不影响对它的控制, 仅仅是在硬件上对存储器的容量进行了扩大, 而这种扩大只是改变了地址线的宽度, 完全不影响111条指令的正确执行。对用户来说这只是可以使用的内部RAM增加了, 控制并没有任何改变。当然, 在资源比较紧张, 而且程序容量比较小时, 也可以将存储器的容量改小, 这种改变也相当方便, 只需要改变地址线的宽度就能达到目的。由此可见, 设计时完全可以根据需要改变IP核的设计, 而不局限于8051。

虽然整个8051IP核能正确执行所有指令, 并能实现串口、计时器及中断控制, 且整个IP的核工作时钟也在20 MHz以上, 但是, 由于这时候的所有指令周期并不与真实的8051完全一致, IP核中有的指令需要比真正的8051多执行几个周期才能完成, 这就使得分析IP核的工作时钟复杂起来了, 因为相对于真正的8051不能有一个精确的工作时钟对比。但是经过分析仍然可以认为, IP核应该可以工作在15 MHz左右, 也就是比真实的8051快了15倍左右。这对于芯片整体来说, 其速度可能相对较低, 但是由于这部分与芯片其它部分的逻辑相关性极小, 所以并不会影响芯片的整体性能, 而对于一些简单控制来说, 这个速度还是能够满足要求的。

2 UIP协议栈

2.1 UIP简介

在FPGA中实现TCP/IP协议的主要目的是为了满足设计人员对芯片的远程调试。而满足这种要求实际上并不需要很强大和快速的传输功能。功能过于强大将会占用过多的资源, 而且实际上, 很多功能并没有实际作用; 同时也不需要很快的传输速度。毕竟对于一个芯片的设计来说,无论是设计文档或是设计程序, 容量都是非常有限的。综合考虑, 则应选择一个实现简单、占用资源少, 但能够比较稳定地进行数据传输的协议, 为此, 本文选择了相对简单的UIP协议栈,而放弃了功能比较强大的LWIP协议栈。选择UIP还有一个好处, 就是这个协议栈是专门针对单片机等微控制器设计的TCP/IP协议栈, 它能够利用嵌入的IP核8051来实现TCP/IP协议, 而不再需要额外的逻辑单元。

UIP的特点是代码量和数据量都比较小, 因而可以为存储器比较紧张的地方提供合适的实现方案, 包括TCP/IP所需的最小实现方案和只包含TCP、IP、ICMP (ping) 以及简单的UDP协议, 其具体的实现方法如图2所示, 图2中, 带“×”的表示已经实现。

2.2 UIP协议栈的实现方法

通过UIP可实现TCP/IP协议集的四个基本协议, 包括ARP地址解析协议、IP网际互联协议,ICMP网络控制报文协议和TCP传输控制协议。为了在8位、16位处理器上应用, UIP协议栈在实现各层协议时采用有针对性的方法来保证代码大小和存储器使用量最小。

实现ARP地址解析协议时, 为节省存储器,ARP应答包可直接覆盖ARP请求包; 而在实现IP网络协议时, 则对原协议进行了极大的简化, 并没有实现分片和重组; 当实现ICMP网络控制报文协议时, 只需实现echo (回响) 服务。UIP在生成回响报文时, 并不重新分配存储器空间, 而是直接修改echo请求报文来生成回响报文。设计时可将ICMP类型字段从“echo”改变成 “echo re-ply”类型, 并重新计算校验和修改校验和字段。UIP里的TCP没有实现发送和接收数据的滑动窗口。每个TCP连接的状态均由uip_conn结构保存。uip_conn结构包括当地和远端的TCP端口编号、远程主机的IP地址、重发时间值、上一段重发的编号以及连接段的最大尺寸等信息。uip_conn结构数组可用于保存所有的连接, 数组的大小等于可支持同时连接的最大数量。为了减少储存器的使用量, 在处理重发时, UIP并不缓存发送的数据包, 而是由应用程序在需要重发时重新生成发送的数据。

2.3 UIP协议栈的接口

为了UIP协议栈能具有最大的通用性, 在实现时可将底层硬件驱动和顶层应用层之外的所有协议集“打包”在一个“库”里。协议栈通过接口与底层硬件和顶层应用进行通信。通过这种方式可使uIP具有极高的通用性和独立性, 以便移植到不同的系统和方便地实现不同的应用, 很好的体现TCP/IP协议平台无关性的特点。UIP协议栈与系统底层和应用程序之间的接口如图3所示。图中, 各接口之间都是由一系列函数来实现的。

3 UIP协议栈在IP核8051上的实现

3.1 UIP协议栈在IP核8051上的移植

由于UIP协议栈是专门针对微处理器编写的,所以移植也是非常的方便, 但需注意以下几点:

(1) 协议栈是用C语言编写的, 故在移植时需要再加上两个头文件, 一个是8051的头文件, 另一个是8051的硬件初始化头文件;

(2) 通过keil c编译器编译时, 在选器件时需要注意, 只有选取数据寄存器为256个字节才能顺利通过编译, 这也是为什么前面8051IP核的数据存储器RAM需要扩展至256个字节的原因。不对RAM进行扩展, 就会出现“不能写B9地址”的错误, 因为在没有对RAM扩展前, 根本不存在B9地址;

(3) 将软件keil编译生成的hex文件送入到8051的程序存储器, 即可在IP核8051上实现简单的TCP/IP协议。这在软件测试时, 与实际工作将有所不同。软件测试时需要将hex文件作为程序存储器的初始化输入, 即在EDA软件编译8051时, 将程序存储器的初始化文件mif的路径设置为hex所在的路径, 在完成综合布线后, hex文件的内容就进入了程序存储器。这样, 仿真时就能在8051IP上实现TCP/IP协议了。

3.2 UIP的工作流程

TCP/IP协议在嵌入到FPGA的IP核8051上的工作流程, 实际上也是简化后的TCP/IP协议的工作流程, 这跟正式的TCP/IP协议有所不同。下面的工作流程以输入一个同步帧 (即: 三向握手的第一次握手) 为例。对于8051实现的UIP来说, 它属于被动建立连接, 其正确的输出结果应该是三向握手的第二次握手, 送出一个确认同步帧是所期望的结果。

下面简单介绍UIP的整个工作流程:

(1) 在P0端口有数据前, 读取数据函数并反复执行, 以对P0端口进行监视 (此种情况只是在测试时, 实际工作中物理层通过控制信号通知读数函数P0口是否有数据);

(3) 为信号的第8级分解小波模极大值图; (4) 为信号各级 (共9级) 的高频分量即小波系数。

由图4可以看出, 该故障信号分析仪能有效采集实时故障信号, 并可在对信号经过小波分析后有效的提取故障特征, 而且故障点定位明显。

5 结束语

该便携式接触网故障信号分析仪采用图形化程序设计语言LabVIEW开发设计, 可实现数据的高速实时采集、在线分析、自动存储、显示等功能。高速数字化仪NI PXI- 5112卡采样速度高、性能稳定可靠, 适宜对高速变化信号的实时监测。将软件安装在PXI- 1042工控机上, 具有体积小、抗干扰能力强、携带方便等特点, 同时具有故障性质判断、故障定位功能。该系统目前已经在石家庄变电所现场运行, 效果良好。

参考文献

[1] 刘君华.基于LabVIEW的虚拟仪器设计[M].北京: 电子工业出版社,2003:115- 127.
[2] Rober H. Bishop.LabVIEW6i 实用教程[M].北京: 电子工业出版社,2003:209- 265.
[3] LabVIEW Data Acqusition Basics Manual on NI- 5112[M].National Instrument Corpration,1998.
[4] Mok Aloysius K,Srusrt Douglas.RTT seman tics forLabVIEW.IEEE Aerospace Applications ConrerenceProceedings,1998:61- 71.
[5] 杨乐平, 李海涛,等.LabVIEW高级程序设计[M].北京:清华大学出版社,2003:390- 392.

作者:罗侄敬


      
推荐 】【 打印 】【 发表评论 】【 加入收藏

 相关文章
· 基于CDMA 1X网络的远程无线数据采集系统
· 基于GPRS的巡更主机的设计与实现
· 基于DSP的移动网络终端硬件平台的实现
· 基于蓝牙技术的无线数据采集系统的设计
· 利用FPGA协处理提升无线子系统的性能
· 基于FPGA的IEEE 802.11协议帧生成器的设计
· 大幅加速流程的无线测试新方案盘点
· 基于FPGA的RFID系统解码模块设计
· 在嵌入FPGA的IP核8051上实现TCP/IP的设计
· 基于FPGA的指纹采集接口设计与实现
 最新供求
·求枪支离位报警项目合作
·求购类似马来西亚身份证卡
·求购远距离读写器(固定与手持两种)及配套标
·求医院用13.56特殊标签和读写器
·求车辆管理系统方案和报价
·buy 2.5 Million RFID Tag for library use
·大量采购2.45G有源电子标签和读写器
·求购915MHz电子标签(量大)
·求购PA薄膜
·井下人员定位招标
 相关关键词搜索
·资讯中心嵌入  FPGA  IP核  8051  TCP  IP  数据采集  
·技术中心嵌入  FPGA  IP核  8051  TCP  IP  数据采集  
 
 
 
业界资讯 纵深报道 技术学院
国际资讯 | 国内资讯 | 国内企业 | 国外企业 | Global News
  重点专题
· 自动识别协会射频工作组 · RFID圈内企业动态
· RFID行业高层访谈 · 智能卡与一卡通
· RFID与食品安全 · Scan China展会专题
· 远望谷IPO之路 · RFID与医疗卫生
· NFC手机与支付 · RFID联盟产业园建设介绍
· RFID与智能交通 · 各国RFID频段标准与政策
  相关产品

MSP430单片机无线模块学习板
nRF24Z1无线模块
篮牙无线扫描笔
2.4G无线音响模块
高频电子标签
nRF9e5无线模块
带串口的nRF905无线模块
红光条码扫描枪
CC2500无线模块
  推荐文章
· 1GHz以下全球免许可频段短距离无线系统的设
· 美包伯·琼斯大学使用RFID系统加强校园安全
· 美国社区居民利用RFID技术回收垃圾
· 美国港口运用RFID技术减少空气污染
· 拉美零售巨头使用RFID改善服装库存管理
· 沙特珠宝商利用RFID改善库存管理
· 基于RFID技术的运输车辆及汽车衡称重防作弊
· 加拿大宠物用品公司采用RFID系统快速满足沃
· 美诊所采用无源RFID系统减少标本瓶贴标错误
· 印度银行采用RFID技术提供个性化服务
  相关案例和方案
· 消防炮多路无线控制系统--上海兆富通信
· RFID自动化仓库管理系统解决方案
  相关资讯文章
· 新西兰用RFID采集海洋环境数据
· Innovision公司推出Gem近距离通信IP评估许
· 大幅加速流程的无线测试新方案盘点
· 纽约交通部就RFID预计到达时间系统进行测试
· 把握中国企业移动市场,从解决方案做起
· 自动化解决方案采用Ethernet/IP进行控制和
快 报 论 坛
· 静脉身份识别--系统集成
· 金属环境中屏蔽抗干扰材料资料,用于NFC/RFI
· 监狱管理腕带电子标签
· 煤矿井下人员定位电子标签
· RFID在防伪领域的应用
· RFID基本工作原理
快 报 问 吧
· 4469和4205
· 是否可以通过中继的方式,提高识别距离
· 标签读取的时候能读远读不了近?
· 请教门禁卡有哪几部分组成?
· private string RFID_CM的意思是什么?
· 解析服务、目录服务及信息发布技术研究
快 报 博 客
· 视频解析--世界顶尖的手掌静脉身份识别技术
· 艳照门事件的背后
· 手掌静脉身份识别
· 卡片分页机☆←自动分页机☆←优质分页机
· 金属输送台☆←打码配套输送台☆←化工输送台
· 说明书分页机☆←商函分页机☆←信函分页机☆←自

关于我们 | 广告服务 | 帮助中心 | 联系我们 | 友情链接 | 版权申明
客服电话:0531-82679069   编辑部电话:0531-82679328   节假日电话:0531-89180705   客服QQ:651127860 QQ群:41109672  47658979  MSN:RFIDinfo@126.com
版权所有©2003-2008  RFID射频快报 鲁ICP备05021498号 增值电信业务经营许可证鲁B2-20050166号