虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

动态内存管理

  • 基于ARM的嵌入式强实时内核设计

    随着国内工业化、数字化的迅速发展,嵌入式开发在IT行业中的重要性越来越显著。嵌入式开发领域对产品的功能性、稳定性、实时性等方面的要求也越来越高。 采用嵌入式实时操作系统作为开发平台,以高性能的嵌入式处理器为工业控制等领域的主控制器可以有效地提高系统的可靠性、实时性、和软件编程的灵活性。在嵌入式处理器方面,ARM构架已经在高性能、低功耗、低成本的嵌入式领域里占领先地位。而在嵌入式操作系统方面,适合国内发展方向的解决方案以及系统基础结构方面并不理想。首先,国外成熟的嵌入式实时操作系统大都成本高、结构复杂,不适合强实时应用;其次,因大部分实时操作系统不公开源码,使开发的产品存在安全隐患。而类似μC/OS-II的小型强实时嵌入式操作系统内核虽然具有低成本、易控制、小规模、高性能等特性,但这类系统的基础较为薄弱,面临产品化和商业化还有一定的距离。 本文针对这种情况,结合现有的操作系统内核理论及嵌入式强实时系统的特殊需求,特别是对μC/OS-Ⅱ的研究分析基础上,面向强实时应用,设计、构造了一种适合在32位ARM处理器环境下使用的内核。这样做的目的是为了提供一个基础牢固、值得信赖的基本平台。 本文研究工作主要集中在以下几个方面: 针对嵌入式环境中高效、简洁、易扩展、易剪裁的要求,对内核体系结构框架进行了设计。内核整体上采用分层结构,在各层中采用功能相对独立的模块:在最底层借鉴微核的原理,只提供最基本的功能模块。 针对系统快速和稳定的实时响应能力需求,为IRQ中断建立了统一的中断入口,采用合理的半嵌套工作方式;保留FIQ为不可屏蔽中断,在快速反应场合使用;引入中断分段处理机制解决中断和任务的ITC机制共享,需要硬保护机制相互协调所引起的硬保护机制被隐性地泛滥使用问题。 针对应用提出的系统行为的可预测性需求,在调度算法方面采用基于优先级位图的抢占阈值调度算法,提高了处理器的利用率和任务集合的可调度性,减少了内核存储开销;在共享资源访问控制方面,以优先级天花板协议为依据,使用互斥事件解决优先级反转和死锁问题的发生。 为了保障系统的强实时性能,本文还对内核的时钟管理、内存管理等方面进行了设计。最后,通过实时性能测试,结果表明该实时内核有很好的强实时特性。

    标签: ARM 嵌入式 内核设计

    上传时间: 2013-04-24

    上传用户:alia

  • 64位MIPS微处理器的模块设计和FPGA验证

      作为嵌入式系统核心的微处理器,是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嵌入式操作系统,达到了预计的设计要求。  

    标签: MIPS FPGA 微处理器 模块设计

    上传时间: 2013-07-07

    上传用户:标点符号

  • 一种基于FPGA的新型谐波分析仪研究

    随着技术的飞速发展,电力电子装置如变频设备、变流设备等容量日益扩大,数量日益增多,使得电网中的谐波污染日益严重,给电力系统和各类用电设备带来危害,轻则增加能耗,缩短设备使用寿命,重则造成用电事故,影响安全生产.电力系统中的谐波问题早在20世纪20年代就引起了人们的注意.近年来,产生谐波的设备类型及数量均已剧增,并将继续增长,谐波造成的危害也日趋严重.该论文分析比较了传统测量谐波装置和基于FPGA的新型谐波测量仪器的特性.分析了基于FFT的谐波测量方法,综述了可编程元器件的发展过程、主要工艺发展及目前的应用情况,并介绍了一种主流硬件描述语言Verilog HDL的语法及其具体应用.分析了高速数字信号系统的信号完整性问题,提出了使用FPGA实现的整合处理器解决高速数字系统信号完整性问题的方法,并比较分析了各种主流的整合处理器解决方案的优缺点.分析了使用实时操作系统进行复杂嵌入式系统软件开发的优缺点,并在该系统软件开发中成功移植应用了实时操作系统UCOSII,改造了该操作系统中内存管理方式.研究了使用FPGA实现FFT算法的优缺点,对比分析了主要硬件实现架构的性能和优缺点,提出了一种基于浮点数的FFT算法FPGA实现架构,详细设计了基于浮点数的硬件乘法器和加法器.该设计架构运行稳定,计算速度快捷.并通过实际仿真验证了该设计的正确性和优越性.最终通过以上工作设计实现了一种新型的基于FPGA的谐波测量仪,该仪器的变送单元和采样单元通过实际型式试验检验,符合设计要求.该仪器的FPGA单元通过系统仿真,符合设计要求.

    标签: FPGA 谐波分析仪

    上传时间: 2013-04-24

    上传用户:diertiantang

  • WinCE程序设计

    Windows CE程序设计,北京大学出版社,[美]Douglas Boling 著。全书的内容主要包括Windows编程基础(HelloWindowsCE、屏幕绘图、输入:键盘、输入笔和菜单、窗口、控件和对话框)、Wi ndows CE 基础(通用控件和WindowsCE、内存管理、文件、数据库和注册表、进程与线程)、通信(串行通信、Windows网络和IrSock、连接到桌面)、高级主题(外壳编程、系统编程、COM基础)。

    标签: WinCE 程序设计

    上传时间: 2013-07-16

    上传用户:kennyplds

  • ARM嵌入式系统开发—软件设计与优化

    ·作者: (美)Andrew/N.Sloss;沈建华译 出版社: 北京航空航天大学出版社 出版日期: 2005-05  如果你想去做一位专业的ARM开发者,建议你可以读下这本书,曾经在部门开发ARM的我们,基本上是人手一本,这本比杜春雷的《ARM体系结构与编程》好很多,毕竟是ARM的系统开发,后面包括了Cache和内存管理,杜春雷的那本只是把ARM公司的一些SPEC翻译了一下,当然周立功的

    标签: ARM 嵌入式 系统开发 软件设计

    上传时间: 2013-05-27

    上传用户:shenlan

  • 嵌入式VxWorks系统开发与应用

    ·【内容提要】  本书详细介绍了当今流行的嵌入式操作系统VxWorks,首先概括VxWorks操作系统的基本知识,如任务管理、任务间通信机制、内存管理以及定时管理等内容,说明了嵌入式操作系统的实现关键。然后,结合作者多年的嵌入式系统的开发应用经验,详细阐述了VxWorks系统中BSP和应用的开发技巧,并提供了多个应用实例及分析设计。本书适用于嵌入式系统开发人员作为参考手册使用。【目录】第1章 概述 

    标签: VxWorks 嵌入式 系统开发

    上传时间: 2013-04-24

    上传用户:telukeji

  • 嵌入式VxWorks系统开发与应用

    ·【内容提要】  本书详细介绍了当今流行的嵌入式操作系统VxWorks,首先概括VxWorks操作系统的基本知识,如任务管理、任务间通信机制、内存管理以及定时管理等内容,说明了嵌入式操作系统的实现关键。然后,结合作者多年的嵌入式系统的开发应用经验,详细阐述了VxWorks系统中BSP和应用的开发技巧,并提供了多个应用实例及分析设计。本书适用于嵌入式系统开发人员作为参考手册使用。【目录】第1章 概述 

    标签: VxWorks 嵌入式 系统开发

    上传时间: 2013-04-24

    上传用户:yuchunhai1990

  • 《Linux应用开发技术详解》配套工具下载

    ·本书全面介绍了Linux的编程知识,包括Linux程序的调试、Shell编程、Linux的内存管理、Linux的系统调用、标准I/O流、进程与进程调度、进程间通信、信号编程、Linux多线程编程、网络编程、数据库编程、图形编程等。书中最后还介绍了近年来较为热门的Linux国际化和本地化程序设计。  本书内容丰富、深入浅出,每章内容都含有大量编程实例,以加强读者理解和提供给读者使用。本书适合希望利用

    标签: Linux 应用开发

    上传时间: 2013-08-05

    上传用户:ommshaggar

  • 中望cad 2010简体中文版下载

    中望CAD2010体验版正式发布。作为中望公司的最新年度力作,在继承以往版本优势的基础上,中望CAD2010融入了以“安全漏洞抓取、内存池优化、位图和矢量图混合处理”等多项可以极大提高软件稳定性和效率的中望正在申请全球专利的独创技术,新增了众多实用的新功能,在整体性能上实现了巨大的飞跃,主要体现在以下几方面: 大图纸处理能力的提升 文字所见即所得、消隐打印等新功能 二次开发接口更加成熟 一、大图纸处理能力的提升 中望CAD2010版采用了更先进的内存管理以及压缩技术,采用了一些新的优化算法,使得中望CAD常用命令执行效率和资源占用情况得到进一步的提高,特别是在低内存配置下大图纸的处理能力,大大减少了图纸内存资源占用量,提升了大图纸处理速度。主要体现在: 大图纸内存占用量显著下降,平均下降约30%,地形图类图纸则平均下降50%; 实体缩放和平移,zoom\pan\redraw更加顺畅; 保存速度更快、数据更安全,保存速度平均有40%的提升。 二、新增功能 1、文字所见即所得 文字编辑器有多处改进,文字编辑时显示的样式为最后在图面上的样式,达到了所见即所得的效果。文字编辑器新加入段落设置,可进行制表位、缩进、段落对齐方式、段落间距和段落行距等项目的调整。另外,在文字编辑器内可直接改变文字倾斜、高度、宽度等特征。 2、消隐打印 中望CAD2010版本支持二维和三维对象的消隐打印,在打印对象时消除隐藏线,不考虑其在屏幕上的显示方式。此次消隐打印功能主要体现在以下两个方面: (一)、平台相关命令和功能的调整 视口的“属性”:增加“着色打印”选项(“线框”和“消隐”两种着色打印项) 选择视口后,右键菜单支持“着色打印”项( “线框”和“隐藏”两种模式) 命令mview增加了“着色打印”功能项,可以方便用户设置视口的“着色打印属性”(线框和消隐两种模式) 打印”对话框调整:在布局空间,激活“打印”对话框,以前的“消隐打印”选项显示为“隐藏图纸空间对象”。 页面设置管理器启动的“打印设置”对话框调整:图纸空间中,通过页面设置管理器激活的“打印设置”对话框,以前的“消隐打印”选项显示为“隐藏图纸空间对象” (二)、消隐打印使用方法的调整 模型空间: 可通过“打印”或“页面设置管理器”打开的“打印设置”对话框中的“消隐打印”选项来控制模型空间的对象是否消隐打印,同时包含消隐打印预览,若勾选“消隐打印”按钮,模型空间的对象将被消隐打印出来。 布局空间: 若要在布局空间消隐打印对象,分为两种情况:     1) 布局空间视口外的对象是否消隐,直接取决于“打印设置”对话框中“隐藏图纸空间对象”按钮是否被勾选;     2)布局空间视口中的对象是否消隐,取决于视口本身的属性,即“着色打印”特性选项,必须确保该选项为“消隐”才可消隐打印或预览 3、图层状态管理器 可以创建多个命名图层状态,以保存图层的状态列表,用户可以通过选择图层状态来表现图纸的不同显示效果。这种图层状态可以输出供其它图纸使用,也可以输入其它保存的图层状态设置。 4、文字定点缩放 能够依据文字位置的特征点,如中心,左下等,作为基准点,对多行文字或单行文字进行缩放,同时不改变基准点位置。 5、Splinedit新功能 全面支持样条曲线的编辑,主要体现在SPLINEDIT命令行提示中,如下: 拟合数据(F)/闭合样条(C)/移动(M) 顶点(V)/精度(R)/反向(E)/撤消(U)/<退出(X)>: 拟合数据: 增加(A)/闭合(C)/删除数据(D)/移动(M)/清理(P)/切线(T)/<退出(X)>: 增加、删除数据:通过增加、删除样条曲线的拟合点来控制样条曲线的拟合程度。 移动:通过移动指定的拟合点控制样条曲线的拟合数据 闭合/打开:控制样条曲线是否闭合。 清理:清除样条曲线的拟合数据,从而使命令提示信息变为不包含拟合数据的情形。 切线:修改样条曲线的起点和端点切向。 闭合样条:将打开的样条曲线闭合。若选择的样条曲线为闭合的,该选项为“打开”,将闭合的样条曲线打开。 移动:可用来移动样条曲线的控制点到新的位置。 精度:可通过添加控制点、提高阶数或权值的方式更为精密的控制样条曲线的定义。 反向:调整样条曲线的方向为反向。 6、捕捉和栅格功能增强 7、支持文件搜索路径 关于激活注册:打开CAD界面,找到左上面的“帮助”,激活产品-复制申请码-再打开你解压到CAD包找到keygen.exe(也就是注册机,有的在是“Key”文件里,如果没有可以到网上下载),输入申请码--点击确定,就中间那个键--得到数据 应该是五组-复制再回到上面激活码页面,粘贴激活码确定就ok !复制(粘贴)的时候用 ctrl +c(v),用鼠标右键没用! 如果打开安装CAD就得注册才能运行的,那方法也跟上边的差不多! 其实你在网上一般是找不到激活码的,因为各个申请码不一样,所以别人的激活码到你那基本上没用,只能用相应的方法得到激活码,这方法也就要你自己去试了,我原来也不会装CAD,但现在一般3分钟就装好了,只要知道怎么说了就快了,一般软件都是一样的装法,不会装可以到网上找资料!有时求人不如求已,自己算比在网上等着别人给你算快多了

    标签: 2010 cad 简体中文

    上传时间: 2013-11-18

    上传用户:段璇琮*

  • Keil C51开发系统基本知识3

    Keil C51开发系统基本知识3 1. 1. 专用寄存器include文件例如8031、8051均为REG51.h其中包括了所有8051的SFR及其位定义,一般系统都必须包括本文件。2. 2. 绝对地址include文件absacc.h该文件中实际只定义了几个宏,以确定各存储空间的绝对地址。3. 3. 动态内存分配函数,位于stdlib.h中 4. 4. 缓冲区处理函数位于“string.h”中其中包括拷贝比较移动等函数如:memccpy memchr memcmp memcpy memmove memset这样很方便地对缓冲区进行处理。5. 5. 输入输出流函数,位于“stdio.h”中流函数通8051的串口或用户定义的I/O口读写数据,缺省为8051串口,如要修改,比如改为LCD显示,可修改lib目录中的getkey.c及putchar.c源文件,然后在库中替换它们即可。3. 第三节 Keil C51库函数原型列表

    标签: Keil C51 开发系统 基本知识

    上传时间: 2013-11-06

    上传用户:smallfish