嵌入式Linux系统开发技术详解--基于ARM(完整版) 详细解读~!
上传时间: 2013-07-11
上传用户:咔乐坞
作为嵌入式系统核心的微处理器,是SOC不可或缺的“心脏”,微处理器的性能直接影响着整个SOC的性能。 与国际先进技术相比,我国在这一领域的研究和开发工作还相当落后,这直接影响到我国信息产业的发展。本着赶超国外先进技术,填补我国在该领域的空白以摆脱受制于国外的目的,我国很多科研单位和公司进行了自己的努力和尝试。经过几年的探索,已经有多种自主知识产权的处理器芯片完成了设计验证并逐渐进入市场化阶段。我国已结束无“芯”的历史,并向设计出更高性能处理器的目标迈进。 艾科创新微电子公司的VEGA处理器,是公司凭借自己的技术力量和科研水平设计出的一款64位高性能RSIC微处理器。该处理器基于MIPSISA构架,采用五级流水线的设计,并且使用了高性能处理器所广泛采用的虚拟内存管理技术。设计过程中采用自上而下的方法,根据其功能将其划分为取指、译码、算术逻辑运算、内存管理、流水线控制和cache控制等几个功能块,使得我们在设计中能够按照其功能和时序要求进行。 本文的首先介绍了MIPS微处理器的特点,通过对MIPS指令集和其五级流水线结构的介绍使得对VEGA的设计有了一个直观的认识。在此基础上提出了VEGA的结构划分以及主要模块的功能。作为采用虚拟内存管理技术的处理器,文章的主要部分介绍了VEGA的虚拟内存管理技术,将VEGA的内存管理单元(MMU)尤其是内部两个翻译后援缓冲(TLB)的设计作为重点给出了流水线处理器设计的方法。结束总体设计并完成仿真后,并不能代表设计的正确性,它还需要我们在实际的硬件平台上进行验证。作为论文的又一重点内容,介绍了我们在VEGA验证过程中使用到的FPGA的主要配置单元,FPGA的设计流程。VEGA的FPGA平台是一完整的计算机系统,我们利用在线调试软件XilinxChipscope对其进行了在线调试,修正其错误。 经过模块设计到最后的FPGA验证,VEGA完成了其逻辑设计,经过综合和布局布线等后端流程,VEGA采用0.18工艺流片后达到120MHz的工作频率,可在其平台上运行Windows-CE和Linux嵌入式操作系统,达到了预计的设计要求。
上传时间: 2013-07-07
上传用户:标点符号
JPEG2000是新一代的静态图像压缩标准,它相比JPEG有很多新的特性,如渐进传输和感兴趣区域编码等,因而它具有广阔的应用前景,特别是在数码相机、PDA等便携式设备中。 JPEG2000的核心主要包括小波变换和基于最优化截断点的嵌入式块编码(EBCOT)算法,其计算复杂度远远高于JPEG,完全采用软件方案实现将会占用大量的处理器时间和内存开销,而且速度较慢,实时处理的能力较差。为了推广JPEG2000在便携式产品、消费类电子产品中的应用,打开巨大的潜在市场,研究硬件实现的算法实时处理方案具有重要的应用价值。 EBCOT算法是一个两层的编码引擎,其中的上下文编码的运算量约占到总运算量的50%,是提高编码速度的关键算法之一。由于上下文编码大部分都是逻辑运算,没有复杂的数学运算,但逻辑控制流程复杂繁琐,对存储器访问频繁,采用DSP或者其他的通用处理器通过指令控制实现该算法,未能显著提高编码速度。本文采用FPGA芯片,以电路逻辑的方式来实现该算法并进行优化,在研究和分析了上下文编码算法运算特点的基础上,设计了列判断和交错存储相结合的硬件实现方案,并采用硬件描述语言Verilog在寄存器传输级描述了相应的硬件电路。通过功能仿真和逻辑综合后,所获得的上下文编码模块最大时钟频率为101MHz,且能在130ms内完成对一幅512×512灰度图像的编码,性能比Jasper软件中的实现方案提高了75%。 JPEG2000的一个重要特性是其具有渐进传输的能力,而码流组织是获得渐进传输特性的技术关键。码流组织通过在输出码流中安排数据包的先后顺序来实现渐进传输的目的。本文对JPEG2000中实现渐进传输的机制进行了分析,并研究了码流组织的算法实现。 为了对JPEG2000算法实现进行验证,本文设计了基于FPGA和ARM的验证实验平台,其中FPGA主要完成算法中运算量较大的小波变换、上下文编码和算术编码,而ARM处理器则完成码流组织、数据打包以及和PC机的通信。本文在该平台上对所设计的上下文编码算法和码流组织模块的设计进行了验证,实验结果表明本文设计的算法模块功能正确,并在一定程度上提高了编码速度。
上传时间: 2013-04-24
上传用户:独孤求源
C/C+语言struct 深层探索 C++中 extern "C"含义深层探索 C 语言高效编程的几招 想成为嵌入式程序员应知道的 0x10 个基本问题 C 语言嵌入式系统编程修炼 C 语言嵌入式系统编程修炼之一:背景篇 C 语言嵌入式系统编程修炼之二:软件架构篇 C 语言嵌入式系统编程修炼之三:内存操作 C 语言嵌入式系统编程修炼之四:屏幕操作 C 语言嵌入式系统编程修炼之五:键盘操作 C 语言嵌入式系统编程修炼之六:性能优化 C/C++语言 void及 void 指针深层探索 C/C++语言可变参数表深层探索 C/C++数组名与指针区别深层探索 C/C++程序员应聘常见面试题深入剖析(1) C/C++程序员应聘常见面试题深入剖析(2) 一道著名外企面试题的抽丝剥茧 C/C++结构体的一个高级特性――指定成员的位数 C/C++中的近指令、远指针和巨指针 从两道经典试题谈 C/C++中联合体(union)的使用 基于 ARM 的嵌入式 Linux 移植真实体验 基于 ARM 的嵌入式 Linux 移植真实体验(1)――基本概 基于 ARM 的嵌入式 Linux 移植真实体验(2)――BootLoa 基于 ARM 的嵌入式 Linux 移植真实体验(3)――操作系 基于 ARM 的嵌入式 Linux 移植真实体验(4)――设备驱 基于 ARM 的嵌入式 Linux 移植真实体验(5)――应用实 深入浅出 Linux 设备驱动编程 1.Linux 内核模块 2.字符设备驱动程序 3.设备驱动中的并发控制 4.设备的阻塞与非阻塞操作
上传时间: 2013-04-24
上传用户:thh29
随着电子技术和信息技术的发展,可编程逻辑器件的应用领域越来越宽。可编程SoC设计已成为SoC设计的新方法。论文介绍了可编程逻辑器件的设计方法和开发技术,并用硬件描述语言和FPGA/CPLD设计技术,探索和研究了基于FPGA的RISCMCU的设计与实现过程。 论文参照Mircochip公司的PICl6C5X单片机的体系结构,设计了8位RISCMCU。该嵌入式MCU设计采用了自顶向下的设计方法和模块化设计思想。MCU总体结构设计划分控制模块、ALU模块、存储模块三大模块。然后,对各模块的具体技术实现细节分别进行了阐述。论文中设计的MCU能实现PICl6C5X单片机33条指令中除OPTION、CLRWDT、SLEEP和TRIS四条指令以外的其余29条指令的功能,但应用是基于FPGA的,能与其他外设IP方便的结合在一起使用,比ASIC的PICl6C57X的应用更具灵活性。 软件仿真和硬件验证表明:所设计的嵌入式MCU在各方面均达到了一定的性能指标,在Altera公司ACEX1K系列的EPlK30TCl44-3器件上的工作频率达21.88MHz。这些为自主设计R/SCMCU的IP核提供了值得借鉴的探索成果和设计思路,在通用控制领域也有一定的实用价值。 此外,论文中还介绍了三相SPWM控制模块的设计,该模块具有死区时间和载波比任意可调的特点,可以单独应用,也可以作为MCU的外设子模块应用。
上传时间: 2013-07-16
上传用户:熊少锋
随着无线通信的应用日益广泛,无线通信系统的种类也越来越繁杂,但是由于不同通信系统的工作频段、调制方式、通信协议等原理结构上存在差异而极大限制了不同系统之间的互通。软件无线电摆脱了硬件体系结构的束缚,成为解决不同通信体制之间互操作问题和开展多种通信业务的最佳途径,具有巨大的商业和军事价值,被喻为无线电通信领域一次新的技术革命。 本文首先回顾了软件无线电的提出和发展现状,然后论述了软件无线电的基本理论和数学模型。在此理论和模型的基础上,设计了软件无线电接收机的硬件平台。该平台包括射频部分、中频处理部分和基带处理部分。射频部分由天线和无线接收机组成;中频部分先将接收机输出的模拟信号数字化,然后再通过FPGA实现下变频;基带部分主要由DSP和嵌入式系统组成,完成解调、同步等处理并可以进行一些其他的应用。其中的嵌入式系统的主处理器是基于ARM7-TDMI内核的LPC2200芯片,为了实现开发的方便在此芯片上移植了uC/OS-Ⅱ嵌入式时实内核。 软件无线电接收机是一个很庞大的体系,其中的数字下变频器DDC是一个非常关键的组成部分,在这部分中可方便的对接收频段、滤波器特性等进行编程控制,极大的提高了通信设备的性能和灵活性,因此本文的重点在于数字下变频器的设计与实现。实现下变频的方法有很多种,由于FPGA在速度和灵活性上的优势,其应用也越来越广泛,因此主要采用了居于领导地位的XILINX公司的SPATAN-Ⅱ芯片来实现数字下变频的功能。
上传时间: 2013-04-24
上传用户:mfhe2005
该论文介绍二次雷达的基本概念、发展历史、工作流程和运作机理以及单脉冲二次雷达的系统原理,并且对传统的单脉冲二次雷达应答信号处理器的硬件结构进行改进,提出一种全新的应答处理器硬件结构,即FPGA+DSP的混合结构.这种硬件结构的特点是结构灵活,有较强的通用性.该论文围绕FPGA+DSP这种数字信号处理的硬件结构,阐述了它在单脉冲二次雷达应答数字信号处理器中的应用,使用VHDL语言设计FPGA程序,并且给出主要模块的仿真结果.FPGA主要完成距离计数、方位计数、脉冲分解、产生应答数据送给DSP、与PC104交换报表等功能.长时间的成功试验表明,基于FPGA和DSP技术的二次雷达应答信号处理器在3毫秒内可以同时处理四个重叠应答,计算所接收的每一个脉冲的到达方向,得到真实脉冲并且给出脉冲置信度.系统达到了预期的目的.该课题的另外一个重要意义是对传统的二次监视雷达应答信号处理器进行了改进,使单脉冲二次雷达系统的应答处理能力在可靠性、稳定性和系统精度三个方面有质的飞跃.
上传时间: 2013-04-24
上传用户:gokk
DFT(离散傅立叶变换)作为将信号从时域转换到频域的基本运算,在各种数字信号处理中起着核心作用
上传时间: 2013-08-04
上传用户:wangdean1101
随着现代控制理论在机电技术领域的不断发展,多电动机协调控制技术在机电控制系统中得到广泛的应用,给嵌入式系统的数控应用提供了巨大机遇。传统的伺服运动控制很难在处理大数据量、复杂算法时保证系统的灵活性和实时性。嵌入式系统是近年来发展起来的以应用为中心并且软硬件可裁剪的实时系统,它的特点是高度自动化,响应速度快等,非常适合于要求实时的和多任务的场合。 本文以嵌入式数控系统为项目背景,研究设计了一种基于ARM和FPGA的嵌入式数控系统的方案。设计中,通过QuartusⅡ、ModelSim和Protel 99等电子设计自动化开发工具完成了一个高性能嵌入式软硬件系统的设计及仿真验证;采用了实用小巧的嵌入式实时操作系统μC/OS-Ⅱ,为应用系统的实时性提供了保证。该嵌入式数控系统满足了用户对应用系统实时性和快速处理的要求,具有较广泛的应用前景。 通过本课题实践表明,基于ARM和FPGA构建嵌入式数控系统的应用方案完全可行、合理,同传统的人机交互系统设计相比,能大量地减轻研发任务,提高研发速度,能够在短时间内得到控制性能优秀的数控系统。而μC/OS-Ⅱ实时操作系统的加入,使得系统很好地进行多任务处理,并保证了系统的实时性。
上传时间: 2013-07-22
上传用户:huangzchytems
机械手是自动装配生产线上必不可少的设备,它可以模拟人手臂的部分动作,按预定的程序、轨迹和要求,实现抓取、搬运和装配等工作。在减轻人的劳动强度、提高装配质量和提高装配效率等方面,起到了积极的作用。本文基于ARM和FPGA嵌入式系统,开展了机械手控制系统的研发工作,实现了机械手的自动控制。 嵌入式ARM处理器,具有运行速度快、功耗低、程序设计灵活、外围硬件资源丰富等优点,但其普通输入输出口的高低电平变化周期最快只能到1微妙左右,不适合高速输入输出;FPGA芯片高速输入输出数据,时间可缩短至几十纳秒。通过ARM处理器和FPGA技术的有机结合,发挥各自的优势,使系统具有程序设计灵活、以太网通信、大容量存储、高速数据输山、低成本等特点,满足高速机械手自动控制的要求。 本文分析了ARM和FPGA系统,以及机械手控制系统的功能要求;设计硬件模块、接口电路;阐述了系统软件的设计过程,包括启动代码U—BOOT、操作系统μCLinux的移植;并介绍了如何利用便件描述语言VHDL来实现机械手逻辑控制。
上传时间: 2013-04-24
上传用户:luyanping