新闻中心

EEPW首页>嵌入式系统>设计应用> 基于FPGA的LCD显示远程更新

基于FPGA的LCD显示远程更新

作者: 时间:2014-11-10 来源:网络 收藏

  ·帧存控制模块

本文引用地址://m.amcfsurvey.com/article/265115.htm

  帧存控制模块实现2个帧存SRAM的“乒乓”切换,当DSP向其中一个帧存写显示信息时,由构成的帧存控制模块将另一个帧存的控制权交给显示控制器图像处理模块,反之亦然。

  ·软件设计

  TCP/IP是一种网络通信协议,它规范了网络上所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式及传送方式。TCP/IP是Internet的基础协议,也是一种计算机数据打包和寻址的标准方法。在Intemet中几乎可以无差错地传送数据。

  LWIP是瑞士计算机科学院的Adam Dunkels等开发的一套用于嵌入式系统的开放源代码TCP/IP协议栈。LWIP既可以移植到操作系统上,也可以在无操作系统的情况下独立运行。LWIP TCP/IP实现的重点是在保持TCP协议主要功能的基础上减少对RAM的占用,一般它只需要几十kB的RAM和50 kB左右的ROM就可以运行,使得LWIP协议栈适合在嵌入式系统中使用。

  LWIP的特性如下:

  (1)支持多网络接口下的IP转发;

  (2)支持ICMP协议;

  (3)包括实验性扩展的的UDP(用户数据报协议);

  (4)包括阻塞控制,I T估算,以及快速恢复和转发的TCP(传输控制协议);

  (5)提供专门的内部回调接口(Raw API)用于提高应用程序性能;

  (6)可选择的Berkeley接121API(多线程情况下);

  (7)在最新的版本中支持PPP;

  (8)新版本中增加了的IP fragment的支持;

  (9)支持DHCP协议,动态分配IP地址。

  在Xilinx的Spartan 6上实现的LWIP TCP/IP采用的是LWIP的版本V1.1.1,提出和采用以下几种移植和运行方式:

  (1 )TCP/IP协议的每一层是一个单独进程,链路层是一个进程,IP层是一个进程,TCP层是一个进程。这样的优势是网络协议的每一层都非常清晰,代码的调试和理解都非常容易;最大的缺点是数据跨层传递时会引起上下文切换。接收一个TCP信息段要引起3次上下文切换(从网卡驱动程序到链路层进程,从链路层进程到IP层进程,从IP层进程~]TCP进程)。对于操作系统来说,任务切换是要浪费时间的。过频的上下文切换使得系统运行比较沉重,这是不可取的。

  (2) TCP/IP协议栈在操作系统内核当中,应用程序通过操作系统的系统调用和协议栈来进行通讯,这样TCP/IP的协议栈就限定于特定的操作系统内核了。此法理论上可以实现,但代码不具有通用性,不便于将来的维护和再移植,同样也是不太可取的。

  (3)TCP/IP协议栈都在一个进程当中,这样TCP/IP协议栈就和操作系统内核分开了,而应用层程序既可以是单独的进程也可以驻留在TCP/IP进程中。如果应用程序是单独的进程,可以通过操作系统的邮箱、消息队列等和TCP/IP进程进行通讯。此种方式移植层次清晰,移植代码量适中,是比较好的思路,并且在此基础上移植调试成功,证明此思路是切实可行的,但缺点是依赖于操作系统的任务通信机制,不能得到很高的性能。

  (4)把应用层程序驻留TCP/IP进程中,则应用层程序就利用内部回调函数口(Raw API)和TCP/IP协议栈通讯。应用层程序既可以是独立的任务,也可以在TCP/IP线程中利用内部回调函数n(Raw API)和TCP/IP协议栈通讯。此方式不依赖实时操作系统,能在无操作系统的情况下运行。经过对LWIP协议栈源码的彻底消化,改写其接口代码,经多次调试移植成功,测试性能得到了很大提升。

  2.4 软件设计流程图

  软件设计分为发送部分和接受部分。

  程序流程图如下:

  发送端流程图 接收端流程图

LCD显示屏相关文章:lcd显示屏原理


tcp/ip相关文章:tcp/ip是什么


lcd相关文章:lcd原理

上一页 1 2 下一页

关键词:FPGALCDMicroblaze

评论


相关推荐

技术专区

关闭