本文介绍了基于软PLC(Programmable Logic Controller,可编程控制器)的嵌入式技术起源和背景,综述了基于软PLC的嵌入式系统的关键技术和优点,最后介绍了其设计和实现的方法。 基于软PLC的嵌入式系统的研究与实现分为开发系统和运行系统(又称为虚拟机系统)。本文概述了开发系统,其运行于PC机的操作系统如Windows或者Linux等,为用户提供一个大众化的编程环境,它包含编辑器、编译器、连接器、调试器和通信接口几个部分。编辑界面友好,可以让用户方便的使用LD、ST和FBD三种语言编写程序,编译器和连接器将源程序文件编译和连接成虚拟机系统可执行的目标代码文件;分析了开发系统,其中详细描述了编译模块的编制过程,实现了将指令表语言转换为运行系统能够识别的C/C++指令的功能;详细地研究了梯形图转换为指令表语言,以及由指令表语言向梯形图语言的算法和数据结构。调试器借助于虚拟机运行系统提供的服务可完成对应用程序的调试纠错;讨论了uCLinux操作系统和编译调试技术,以及采用ModBus/TCP工业通信协议的通信接口用于开发系统和运行系统之间的通信。 另一方面,本文分析了虚拟机运行系统,它运行于安装了uCLinux的ARM7平台上,包括运行内核模块、系统管理模块和通信接口模块。由于uCLinux没有MMU和本身对实时性没有什么要求,而针对基于软PLC的嵌入式系统的研究与实现要求,本文在对其进行了uCLinux小型化研究的同时探讨了双内核实时性方案,解决了uCLinux实时性不足的问题。运行内核模块调度和执行应用程序并管理时钟。系统管理模块管理系统状态和内存。通信模块用于开发系统及I/O设备通信。在此基础上,对基于软PLC的嵌入式系统的进行了设计与实现,并通过试验将编译的目标代码传递到基于软PLC的嵌入式运行系统中,实现了控制功能,验证了生成目标代码的正确性和开发系统的可行性,实现了编辑界面友好,系统开放,性价比较高的软PLC嵌入式系统,达到了预期的目标,具有一定理论和应用价值。
上传时间: 2013-04-24
上传用户:jiiszha
十多年来,随着信息技术、电子技术和通讯技术的发展,嵌入式系统已经获得了空前的应用和发展。随着嵌入式应用系统功能复杂度的提高、对软件产品的非功能约束的特别关注以及由于市场的激烈竞争导致嵌入式软件推出周期的缩短,都使得嵌入式软件开发人员面临着严峻的危机和挑战。传统的结构化开发方法已经显得力不从心,于是嵌入式软件开发人员在软件开发中引入了目前较为流行的“面向对象方法(OO)”,.但是目前对该方法的应用还只是停留在传统的以编程为中心的嵌入式软件开发方法上,不能很好地保证软件复用和代码的重用,因此难以满足市场对嵌入式软件开发效率和开发质量的要求。 本课题的研究内容是应用面向对象方法的框架技术,对嵌入式系统领域的专有结构组件进行封装,创新性地提出了面向嵌入式系统领域的通用实时框架ARTIC(Abstract real-time contrO1)。ARTIC框架除了具有框架的共有优点一最大限度实现软件重用外,最突出的是具备以下两个特点: 1、功能和非功能的分离 在应用面向对象的技术时,传统的嵌入式软件开发方法关注的重点是软件结构和功能分解,、忽略了嵌入式环境下特殊的非功能性要求。为了在实现系统功能需求的同时,保证软件系统的非功能性需求的实现,ARTIC框架引入了面向方面的思想,、把系统的非功能性需求从功能模块中分离出来,为它们单独设计组件。开发人员在应用该框架进行嵌入式软件设计时,只需要关注功能需求的实现,对于实时性、调度等非功能需求的实现可以通过调用ARTIC提供的时间管理模型和任务调度模型直接实现。 2、基于状态机的主动对象设计模式 根据嵌入式系统通常由多个控制线程组成的特点,应用基于状态机的主动对象设计模式,把嵌入式软件系统构建成多个主动对象的缉合。相对于传统的面向对象方法,本文提出的主动对象的最大特点在于:它提供对事件队列、控制线程和表示主动对象动态行为状态机等的封装,并且该模式可以直接支持嵌入式系统的并行性。 ARTIC框架的应用能够帮助嵌入式软件的开发人员快速地开发出高质量的嵌入式软件,除此之外,因为它包含了一个微小的实时操作系统(RTOS) 报包装,在某些场合可以作为一个简易的RTOS使用。为了验证ARTIC的性能,本文将该框架应用于硬币搬送实时控制系统的开发设计,从该系统的应用中充分体现了ARTIC框架的优点。
上传时间: 2013-06-21
上传用户:cxl274287265
随着图像处理技术的不断发展,图像处理技术在国民经济和社会生活的各个方面都得到了广泛的运用。与此同时,人们对图像处理的要求也越来越高。传统的数字图像处理器件主要有专用集成芯片(Application Specific Integrated Circuit)和数字信号处理器(Digital Signal Process)。进入20世纪以来,伴随着半导体技术的发展,现场可编程门阵列FPGA以其应用灵活、集成度高、功能强大、设计周期短、开发成本低的特点,越来越多地被应用在图像处理领域。大量实践证明,FPGA的并行处理能力与流水线作业能显著地提高图像处理的速度,因此基于FPGA的图像处理系统有着广阔的发展前景。 本文研究的是一个在嵌入式视频监控系统下的图像预处理子系统。首先实现了一个通用可重复配置的图像处理算法研究硬件平台,完成图像的采集、接收、处理、存储、输出等功能。由于FPGA本身具有完全的可重复配置性,所以该架构的硬件平台可以很方便的升级和重复配置。其次在该平台上,本文使用Verilog HDL硬件语言在FPGA芯片上实现了多种图像预处理算法。在实现过程中,为了充分发挥FPGA在并行处理方面的强大功能,本文对算法做了一定的改进,使其尽量能使用并行处理的方式来完成。实验结果表明,本图像预处理系统能在毫秒级高速地完成多种图像算法,完全能够满足视频监控系统50帧/秒的输出要求。 最后根据视频监控系统在实际运用中出现的噪声类型多样化的情况,我们设计了一种基于反馈理论的图像处理效果控制模块。该模块能通过对处理后图像峰值信噪比(PSNR)的分析,控制FPGA对下一幅图像的噪声采用更有针对性的图像处理方法。
上传时间: 2013-05-20
上传用户:gundamwzc
随着电子技术的不断发展和进步,嵌入式系统也越来越广泛的渗入到人类生活的方方面面。我们生活中常用的手机、数码相机、掌上电脑、便携式扫描仪等等都应用到了嵌入式系统。 论文首先介绍了嵌入式系统,包括嵌入式系统的构成、特点、发展趋势以及FPGA在嵌入式中的应用等,指明嵌入式系统设计一般可分为硬件设计和软件设计两部分。 硬件设计部分,首先介绍了FPGA的相关知识,包括FPGA构成、特性、开发工具、开发流程等,并对论文中选用的Altera公司的CyclonⅡ器件做了详细的介绍。利用SOPC Builder、NiosⅡ等工具设计创建了NiosⅡ CPU内核,添加以太网、Flash、PIO以及VGA接口等模块,生成了一个Nios CPU内核,完成硬件设计。 软件设计部分,研究了嵌入式操作系统的发展、种类、特点等,简单介绍了几种代表性的嵌入式操作系统。选择嵌入式操作系统时,综合考虑了内核、可移植性、可裁剪性、外挂模块、成本、服务等各种因素,最终选用μCLinux操作系统。详细介绍了μCLinux的特点、基本架构、代码结构等。利用NiosⅡIDE为宿主机建立Linux开发环境。在IDE里配置Linux内核和文件系统,编译后上载到做好的硬件平台上。启动μCLinux后将一个C语言编写的九宫格求解程序下载到开发板中运行,检验运行结果,验证嵌入式系统的正确性。 论文所做的只是嵌入式系统的一个应用实例。实际应用过程中,用户可以根据自己的实际需要对软硬件进行修改,以实现不同的功能。
上传时间: 2013-07-19
上传用户:zhuoying119
ARM嵌入式系统C语言编程资料,欢迎各位朋友 下载
上传时间: 2013-06-06
上传用户:himbly
可重构计算技术兼具通用处理器(General-Purpose Processor,GPP)和专用集成电路(Application Specific Integr—ated Circuits,ASIC)的特点,既可以提供硬件高速的特性,又具有软件可以重新配置的特性。而动态部分可重构技术是可重构计算技术的最新进展之一。该技术的要点就是在系统正常工作的情况下,修改部分模块的功能,而系统其它模块能够照常运行,这样既节约硬件资源,又增强了系统灵活性。 可重构SoC既可以在处理器上进行编程又可以改变FPGA内部的硬件结构,这使得SoC系统既具有处理器善于控制和运算的特点,又具FPGA灵活的重构特点;由于处理器和FPGA硬件是在同一块硅片上,使得它们之间的通信宽带大大提高,这种平台很适合于容错算法的实现。 本文基于863计划项目;动态重构计算机的可信实现关键技术,重点研究应用于恶劣环境中FPGA自我容错的体系结构,提出了一套完整的SoC系统的容错设计方案,并研究其实现技术,设计实现了实现该技术的硬件平台和软件算法,并验证成功。 论文取得了如下的创新性研究成果: 1、设计了实现动态重构技术的硬件平台,包括高性能的FPGA(内含入式处理器PowcrPC)、PROM、SRAM、FLASH、串口通信等硬件模块。 2、说明了动态重构技术的设计规范和设计流程,实现动态重构技术。 3、提出了一种基于动态重构实现容错的方法,不需要外部处理器干预,由嵌入式处理器负责管理整个过程。 4、设计并实现了嵌入式处理器运行时需要的软件,主要有两个功能,首先是从CF卡中读入重构所需的配置文件,并将配置文件写进FPGA内部的配置存储器中,改变FPGA内部的功能。其次,是实现容错技术的算法。
上传时间: 2013-04-24
上传用户:edrtbme
工业生产过程往往具有非线性、不确定性,难以建立精确的数学模型。应用常规的PID控制器难以达到理想的控制效果。作为的重要分支,人工神经网络具有良好的非线性映射能力和高度的并行信息处理能力,已成为非线性系统建模、辨识和控制中常用的理论和方法。其中,神经元具有很强的信息综合、学习记忆、自学习和自适应能力,可以处理那些难以用模型和规则描述的过程,将神经元与PID结合,应用到实际的控制中,可以在线调整PID的参数,使系统具有较强的抗干扰能力、自适应能力和较好的鲁棒性。 目前,人工神经网络的研究主要是神经网络的理论研究、神经网络的应用研究和神经网络的实现技术研究,这三方面是相互依赖和相互促进的关系。本文主要侧重的是神经网络的实现技术研究方面,创新性地利用FPGA嵌入式系统开发技术实现单神经元PID智能控制器的研究与设计,并将其封装成为一个专用的IP核供其他的控制系统使用。 首先,对单神经元PID智能控制器的设计原理和设计算法进行了深入的研究与分析;其次,利用MATLAB设计单神经元PID智能控制器,针对特定的被控对象,对其进行仿真实验,获得比较理想的系统输出;然后,研究基于FPGA的单神经元智能控制算法的实现,对控制器进行VHDL语言分层设计,使用Altera公司的软件QuartusⅡ6.1进行仿真实验。两个仿真实验结果表明,基于FPGA的单神经元智能控制器比MATLAB设计的单神经元PID智能控制器性能优良。 本文的设计模块主要包括权值修改模块、误差计算模块、权值产生模块和输出模块。在各个模块的设计中进行了优化处理,使本文的设计不仅利用的硬件资源少,而且也有很快的运行速度,同时也改善了传统控制器的控制性能。
上传时间: 2013-04-24
上传用户:13517191407
随着半导体制造技术不断的进步,SOC(System On a Chip)是未来IC产业技术研究关注的重点。由于SOC设计的日趋复杂化,芯片的面积增大,芯片功能复杂程度增大,其设计验证工作也愈加繁琐。复杂ASIC设计功能验证已经成为整个设计中最大的瓶颈。 使用FPGA系统对ASIC设计进行功能验证,就是利用FPGA器件实现用户待验证的IC设计。利用测试向量或通过真实目标系统产生激励,验证和测试芯片的逻辑功能。通过使用FPGA系统,可在ASIC设计的早期,验证芯片设计功能,支持硬件、软件及整个系统的并行开发,并能检查硬件和软件兼容性,同时还可在目标系统中同时测试系统中运行的实际软件。FPGA仿真的突出优点是速度快,能够实时仿真用户设计所需的对各种输入激励。由于一些SOC验证需要处理大量实时数据,而FPGA作为硬件系统,突出优点是速度快,实时性好。可以将SOC软件调试系统的开发和ASIC的开发同时进行。 此设计以ALTERA公司的FPGA为主体来构建验证系统硬件平台,在FPGA中通过加入嵌入式软核处理器NIOS II和定制的JTAG(Joint Test ActionGroup)逻辑来构建与PC的调试验证数据链路,并采用定制的JTAG逻辑产生测试向量,通过JTAG控制SOC目标系统,达到对SOC内部和其他IP(IntellectualProperty)的在线测试与验证。同时,该验证平台还可以支持SOC目标系统后续软件的开发和调试。 本文介绍了芯片验证系统,包括系统的性能、组成、功能以及系统的工作原理;搭建了基于JTAG和FPGA的嵌入式SOC验证系统的硬件平台,提出了验证系统的总体设计方案,重点对验证系统的数据链路的实现进行了阐述;详细研究了嵌入式软核处理器NIOS II系统,并将定制的JTAG逻辑与处理器NIOS II相结合,构建出调试与验证数据链路;根据芯片验证的要求,设计出软核处理器NIOS II系统与PC建立数据链路的软件系统,并完成芯片在线测试与验证。 本课题的整体任务主要是利用FPGA和定制的JTAG扫描链技术,完成对国产某型DSP芯片的验证与测试,研究如何构建一种通用的SOC芯片验证平台,解决SOC验证系统的可重用性和验证数据发送、传输、采集的实时性、准确性、可测性问题。本文在SOC验证系统在芯片验证与测试应用研究领域,有较高的理论和实践研究价值。
上传时间: 2013-05-25
上传用户:ccsp11
本文论述了嵌入式TCP/IP协议栈的实现,介绍了TCP/IP协议栈的原理,以及硬线实现TCP/IP协议栈的意义和应用。 第一章为绪论,介绍论文研究的目的、内容、意义和国内外研究发展的现状。 第二章介绍FPGA设计的流程和Verilog HDL设计语言。着重介绍了FPGA的代码输入、编译、综合、仿真和下载等等步骤,并且介绍了FPGA设计中使用到的EDA软件。介绍了Verilog HDL语言的起源,以及Verilog HDL语言的优缺点,并与VHDL语言进行了简单的比较。 第三章介绍嵌入式系统要实现的经过剪裁的TCP/IP协议栈的内容。着重介绍了要实现的TCP/IP协议栈的子协议,包括TCP协议、UDP协议、IP协议、ARP协议、ICMP协议。在介绍这些协议的时候,介绍了这些协议的工作原理,以及这些协议要用到的报文的格式。 第四章介绍实现剪裁的TCP/IP协议栈的实现,具体介绍的经过剪裁的TCP/IP各个模块的设计工作。这个部分着重介绍各个模块的设计方法,实现各个模块的过程。在设计完这些模块后,对这些模块的仿真进行了仿真。 第五章是全文的总结,概括了作者在这次毕业设计中的主要工作和课题的意义,同时指出了进一步工作的方向和需要解决的问题。
上传时间: 2013-07-04
上传用户:leesuper
随着计算机科学在人机交互领域的极大发展,作为人脸信息处理中的一项关键技术,人脸检测现在已经成为模式识别,计算机视觉和人机交互领域不可缺少的一部分。但是,人脸检测算法存在计算量大、速度慢等缺点。软件实现方式无法达到实时处理要求,而现有的硬件实现需要占用大量硬件资源。 本文针对现有人脸检测硬件实现的缺点,通过对Adaboost算法和现有硬件结构的分析,提出了双流水线硬件检测架构:扫描窗口流水线、特征向量流水线。并在Vertex-II Pro FPGA平台验证成功,达到实时检测的标准。具体工作和创新点包括如下几点: 介绍了人脸检测的原理以及人脸检测经典算法。其中,详细介绍了Adaboost算法。 对现有的结构进行详细分析。指出现有各架构的缺点,即资源占用多,检测速度慢。针对这两个问题,本文提出了一个适合嵌入式应用的扫描窗口、特征向量双流水线检测硬件架构,详细说明了该架构的工作原理,并在该架构基础上,通过加入预测加载技术,进一步提高检测速度。随后,采用存储器访问效率,架构内部存储单元大小,检测时间长短,运算单元数量四个标准,详细比较了新架构和现有架构的差别,显示出新架构的优势。 基于提出的架构,给出了Adaboost人脸检测系统的VLSI实现方案。本文中,采用自顶向下的设计方法将人脸检测系统分成若干个子模块,然后对每个子模块进行详细的设计和说明,给出了每个子模块的硬件架构、状态转换以及verilog实现后的仿真波形。 采用Xilinx公司的VII Pro FPGA开发板完成人脸检测系统的硬件验证。FPGA验证结果表明对于QCIF分辨率的视频图像,人脸检测系统能够达到50fps的检测速度,满足实时检测的要求。
上传时间: 2013-06-15
上传用户:1193169035