基于FreeRTOS的lwip协议栈的移植与测试
上传时间: 2022-07-21
上传用户:
第一章 LWIP 无操作系统移植第二章 LWIP 带操作系统移植第三章 RAW 编程接口 UDP 实验第四章 RAW 编程接口 TCP 客户端实验第五章 RAW 编程接口 TCP 服务器实验第六章 RAW 编程接口 Web Server 实验第七章 NETCONN 编程接口简介第八章 NETOCNN 编程接口 UDP 实验第九章 NETCONN 编程接口 TCP 客户端实验第十章 NETCONN 编程接口 TCP 服务器实验
上传时间: 2022-07-25
上传用户:
最近一个项目用到LWIP,恰好看到网上讨论的人比较多,所以有了写这篇学习笔记的冲动,一是为了打发点发呆的时间,二是为了吹过的那些NB往往决定做一件事是简单的,而坚持做完这件事却是漫长曲折的,但终究还是写完了,时间开销大概为四个月,内存开销无法估计。。这篇文章覆盖了LWIP协议大部分的内容,但是并不全面。它主要讲解了LWIP协议最重要也是最常被用到的部分,包括内存管理,底层网络接口管理,ARP层,IP层,TCP层,API层等,这些部分是LWIP的典型应用中经常涉及到的。而LWIP协议的其他部分,包括UDPDHCP,DNS,IGMP,SNMP,PP等不具有使用共性的部分,这篇文档暂时未涉及。原来文章是发在空间中的,每节每节依次更新,后来又改发为博客,再后来就干脆懒得发了。现在终于搞定,于是将所有文章汇总。绞尽脑汁的想写一段空前绝后,人见人爱的序言,但越写越觉得像是猫儿抓的一样。就这样,PS:由于本人文笔有限,情商又低,下里巴人一枚,所以文中的很多语句可能让您很纠结,您可以通过邮箱与我联系。共同探讨才是进步的关键。
标签: lwip
上传时间: 2022-08-09
上传用户:
Actel公司与Mentor Graphics公司日前推出Mentor Graphics的Precision RTL综合工具最新版本。该版本利用Actel基于闪存的ProASIC Plus家族FPGA产品以提供更高的设计性能。
上传时间: 2013-04-15
上传用户:eeworm
随着计算机网络与嵌入式控制技术的迅速发展,作为传统运输行业的铁路系统对此也有了新的要求,列车通信网络应运而生。经过多年的发展,国际电工委员会(IEC)为了规范列车通信网络,于1999年通过了IEC61375-1标准。该标准将列车通信网络分为两条总线:绞线式列车总线(WTB)和多功能车辆总线(MVB)。MVB是一个标准通信介质,为挂在其上的设备传输和交换数据。而多功能车辆总线控制器(MVBC)是MVB与MVB实际物理层之间的接口,其主要实现MVB数据链路层的功能。由于该项关键技术仍被国外公司垄断,因此开发具有自主知识产权的MVBC迫在眉睫。 鉴于上述原因,本文深入研究了IEC61375-1标准。根据MVBC的技术特点,本文提出了使用FPGA来实现其具体功能的方案。挂在MVB总线上的设备分为五类,他们的功能各不相同。而支持4类设备的MVBC具有设备状态、过程数据、消息数据通信和总线管理功能,并且兼容2类和3类设备。本文的目的就是用FPGA实现支持4类设备的MVBC。 本文采用自顶向下的设计方法。整个MVBC主要划分为:编码模块、译码模块、冗余控制模块、报文分析单元、通信存储控制器、主控制单元、地址逻辑模块。在整个开发流程中,使用Xilinx的ISE集成开发环境。使用Verilog HDL硬件描述语言对上述各个模块进行RTL级描述,并用Synplify Pro进行综合。最后,在ModelSim中对各个模块进行了布线后仿真和验证。 在实验室条件下,通过严格的仿真验证后,其结果证明了本文设计的模块达到了IEC61375-1标准的要求。因此,用FPGA实现MVBC这一方案具有可操作性。 关键词:列车通信网;多功能车辆总线;多功能车辆总线控制器;现场可编程门阵列
上传时间: 2013-07-18
上传用户:wxhwjf
DDR2 SDRAM是目前内存市场上的主流内存。除了通用计算机系统外,大量的嵌入式系统也纷纷采用DDR2内存,越来越多的SoC系统芯片中会集成有DDR2接口模块。因此,设计一款匹配DDR2的内存控制器将会具有良好的应用前景。 论文在研究了DDR2的JEDEC标准的基础上,设计出DDR2控制器的整体架构,采用自项向下的设计方法和模块化的思想,将DDR2控制器划分为若干模块,并使用Verilog HDL语言完成DDR2控制器IP软核中初始化模块、配置模块、执行模块和数据通道模块的RTL级设计。根据在设计中遇到的问题,对DDR2控制器的整体架构进行改进与完善。在分析了Altera数字PHY的基本性能的基础上,设计DDR2控制器与数字PHY的接口模块。搭建DDR2控制器IP软核的仿真验证平台,针对设计的具体功能进行仿真验证,并实现在Altera Stratix II GX90开发板上对DDR2存储芯片基本读/写操作控制的FPGA功能演示。 论文设计的DDR2控制器的主要特点是: 1.支持数字PHY电路,不需要实际的硬件电路就完成DDR2控制器与DDR2存储芯片之间的物理层接口,节约了设计成本,缩小了硬件电路的体积。 2.将配置口从初始化模块中分离出来,简化了具体操作。 3.支持多个DDR2存储芯片,使得DDR2控制器的应用范围更为广阔。 4.支持DDR2的三项新技术,充分发挥DDR2内存的特性。 5.自动DDR2刷新控制,方便用户对DDR2内存的控制。
上传时间: 2013-06-10
上传用户:ynzfm
本论文基于直接扩频通信的理论设计了一种全数字的中频接收机,使用Xilinx公司的FPGA芯片xc3s400作为接收机的主芯片,实现中频数字信号的下变频,基带解调,PN码的捕获及跟踪环路的设计并给出了它们的具体设计步骤及RTL级逻辑电路图。本文对于数字下变频器的设计、数字抑制载波恢复环的设计进行了详细的论述,还使用Matlab中的Simulink对本接收机系统所要使用的全数字Costas环进行了功能仿真并给出了仿真结果。 本文使用高速模数转换器AD9601对中频模拟信号进行采样,最后再用高速数模转换器AD9740还原出原始信息,并给出了它们与核心芯片xc3s400的接口设计方法及原理电路图。
上传时间: 2013-07-30
上传用户:weiwolkt
MP3音乐是目前最为流行的音乐格式,因其音质、复杂度与压缩比的完美折中,占据着广阔的市场,不仅在互联网上广为流传,而且在便携式设备领域深受人们喜爱。本文以MPEG-1的MP3音频解码器为研究对象,在实时性、面积等约束条件下,研究MP3解码电路的设计方法,实现FPGA原型芯片,研究MP3原型芯片的验证方法。 论文的主要贡献如下: (1)使用算法融合方法合并MP3解码过程的相关步骤,以减少缓冲区存储单元的容量和访存次数。如把重排序步骤融合到反量化模块,可以减少一半的读写RAM操作;把IMDCT模块内部的三个算法步骤融合在一起进行设计,可以省去存储中间计算结果的缓存区单元。 (2)反量化、立体声处理等模块中,采用流水线设计技术,设置寄存器把较长的组合逻辑路径隔开,提高了电路的性能和可靠性;使用连续访问公共缓存技术,合理规划各计算子模块的工作时序,将数据计算的时间隐藏在访存过程中;充分利用频率线的零值区特性,有效地减少数据计算量,加快了数据处理的速度。 (3)设计了MP3硬件解码器的FPGA原型芯片。采用Verilog HDL硬件描述语言设计RTL级电路,完成功能仿真,以Altera公司Stratix II系列的EP2S180 FPGA开发板为平台,实现MP3解码器的FPGA原型芯片。MP3硬件解码器在Stratix II EP2S180器件内的资源利用率约为5%,其中组合逻辑查找表ALUT为7189个,寄存器共有4024个,系统频率可达69.6MHz,充分满足了MP3解码过程的实时性要求。实验结果表明,MP3音频解码FPGA原型芯片可正常播放声音,解码音质良好。
上传时间: 2013-07-01
上传用户:xymbian
人脸自动识别技术是模式识别、图像处理等学科的一个最热门研究课题之一。随着社会的发展,各方面对快速有效的自动身份验证的要求日益迫切,而人脸识别技术作为各种生物识别技术中最重要的方法之一,已经越来越多的受到重视。对于具有实时,快捷,低误识率的高性能算法以及对算法硬件加速的研究也逐渐展开。 本文详细分析了智能人脸识别算法原理,发展概况和前景,包括人脸检测算法,人眼定位算法,预处理算法,PCA和ICA 算法,详细分析了项目情况,系统划分,软硬件平台的资源和使用。并在ISE软件平台上,用硬件描述语言(verilog HDL)对算法部分严格按照FPGA代码风格进行了RTL 硬件建模,并对C++算法进行了优化处理,通过仿真与软件算法结果进行比对,评估误差,最后在VirtexII Pro FPGA 上进行了综合实现。 主要研究内容如下: 首先,对硬件平台xilinx的VirtexII Pro FPGA 上的系统资源进行了描述和研究,对存储器sdram,RS-232 串口,JTAG 进行了研究和调试,对Coreconnect的OPB总线仲裁机理进行了两种算法的比较,RTL 设计,仿真和综合。利用ISE和VC++软件平台,对verilog和C++算法进行同步比较测试,使每步算法对应正确的结果。对软硬件平台的合理使用使得在项目中能尽可能多的充分利用硬件资源,制板时正确选型,以及加快设计和调试进度。其次,对人脸识别算法流程中的人脸检测,人眼定位,预处理,识别算法分别进行了比较研究,选取其中各自性能最好的一种算法对其原理进行了分析讨论。人脸检测采用adaboost 算法,因其速度和精度的综合性能表现优异。人眼定位采用小块合并算法,因为它具有快速,准确,弱时实的特点。预处理算法采用直方图均衡加平滑的算法,简单,高效。 识别算法采用PCA 加ICA 算法,它能最大的弱化姿态和光照对人脸识别的影响。 最后,使用Verilog HDL 硬件描述语言进行算法的RTL 建模,在C++算法的基础上,保证原来效果的前提下,根据FPGA 硬件特点对算法进行了优化。视频输入输出是人脸识别的前提,它提供FPGA 上算法需要处理的数据,预处理算法在C++算法的基础上进行了优化,最大的减少了运算量,提高了运算速度,16 位计算器模块使得在算法实现时可以根据系统要求,在FPGA的ip 核和自己设计的模块之间选择性能更好的一个来调用,FIFO的设计提供同步和异步时钟域的数据缓存。设计在ISE和VC++软件平台同时进行,随时对verilog和C++数据进行监测和比对。全部设计模块通过仿真,达到预定的性能要求,并在FPGA 上综合实现。
上传时间: 2013-07-13
上传用户:李梦晗
Scaler是平板显示器件(FPD,Flat Panel Display)中的重要组成部分,它将输入源图像信号转换成与显示屏固定分辨率一致的信号,并控制其显示在显示屏上。本文在研究图像缩放算法和scaler在FPD中工作过程的基础上,采用自上而下(Top-down)的设计方法,给出了scaler的设计及FPGA验证。该scaler支持不同分辨率图像的缩放,且缩放模式可调,也可以以IP core的形式应用于相关图像处理芯片中。 图像缩放内核是scaler的核心部分,它是scaler中的主要运算单元,完成图像缩放的基本功能,它所采用的核心算法以及所使用的结构设计决定着缩放性能的优劣,也是控制芯片成本的关键。因此,本文从缩放内核的结构入手,对scaler的总体结构进行了设计;通过对图像缩放中常用算法的深入研究提出了一种新的优化算法——矩形窗缩放算法,并对其计算进行分析和简化,降低了计算的复杂度。FPGA设计中,采用列缩放与行缩放分开处理的结构,使用双口RAM作为两次缩放间的数据缓冲区。使用这种结构的优势在于:行列缩放可以同时进行,数据处理的可靠性高、速度快:内核结构简单明了,数据缓冲区大小合适,便于设计。此外,本文还介绍了其他辅助模块的设计,包括DVI接口信号处理模块、缩放参数计算与控制模块以及输出信号检测与时序滤波模块。 本设计使用Verilog HDL对各模块进行了RTL级描述,并使用Quartus II7.2进行了逻辑仿真,最后使用Altera公司的FPGA芯片来进行验证。通过逻辑验证和系统仿真,证明该scaler的设计达到了预期的目标。对于不同分辨率的图像,均可以在显示屏上得到稳定的显示。
上传时间: 2013-05-30
上传用户:xiaowei314