CN101551747A - Arm系列微处理器的软件体系架构工具 - Google Patents

Arm系列微处理器的软件体系架构工具 Download PDF

Info

Publication number
CN101551747A
CN101551747A CNA2009100570521A CN200910057052A CN101551747A CN 101551747 A CN101551747 A CN 101551747A CN A2009100570521 A CNA2009100570521 A CN A2009100570521A CN 200910057052 A CN200910057052 A CN 200910057052A CN 101551747 A CN101551747 A CN 101551747A
Authority
CN
China
Prior art keywords
code
software
embedded
arm
hardware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2009100570521A
Other languages
English (en)
Other versions
CN101551747B (zh
Inventor
怯肇乾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chang Jianxun
Chen Liuxing
Henan Bo Yuan Electric Power Polytron Technologies Inc
Li Zhenyi
Sun Junwei
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN2009100570521A priority Critical patent/CN101551747B/zh
Publication of CN101551747A publication Critical patent/CN101551747A/zh
Application granted granted Critical
Publication of CN101551747B publication Critical patent/CN101551747B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明“ARM系列微处理器的软件体系架构工具”实现了各种ARM微处理/控制器件的嵌入式应用系统软件体系的快速构建,它以丰富的基于底层硬体的程序代码库和强大的嵌入式硬件体系适配能力,立足于嵌入式ARM硬件体系,通过简便易用的可视化人机交互,得到基于具体ARM型号微处理/控制器类型的实际配置,结合内嵌的广泛而丰富的代码数据库,经过逐级的适配与优化,向下形成由含有启动代码、系统初始化代码等在内的最小软件体系和所用外设和接口驱动程序组成的底层软件,向上形成由基于ARM指令集的直接软件体系或所选多任务实时操作系统的板级支持包、可调用的应用程序接口函数库和可以直接使用的应用程序框架组成的顶层软件。本软件架构工具应用于嵌入式系统设计,以最大限度地减少开发周期,降低研发成本和入门门坎,增强系统的可靠高效性,使直接展开功能性应用程序设计得以顺利实现,从而推动嵌入式产品快速上市。

Description

ARM系列微处理器的软件体系架构工具
【技术领域】
本发明展现了一种嵌入式应用软件体系快速设计的自动化软件工具,主要用于以各种ARM微处理/控制器为核心的嵌入式应用系统软件体系的快速构建,应用领域包括工业过程的检测与控制、语音/图像的处理与解压缩、仪表仪器、家用电器、便携式移动通讯、个人数字助理产品、消费电子、航空航天、军事等行业。
嵌入式应用体系设计中,做好具体的ARM硬件体系后,就可以应用本软件架构工具快速产生所需的关键性的基于硬体的基本程序框架了,之后,就是在此框架下编写功能代码了,整个嵌入式系统的设计过程得以大大地简化,产品的研发周期也得以极大地缩短。
本发明,不仅可以广泛适用于各级嵌入式软硬件设计人员的ARM单片机SCM(Single Chip Microcomputer)或FPGA(Field Programmable GateArray)-SoPC(System on Programmale Chip)的研发,也可以大量应用于各类高校/职校的嵌入式应用系统设计与机电一体化专业的学员的实践教育培训。
【背景技术】
嵌入式系统广泛应用,已经渗透到科学研究、工程设计、工业过程监控、交通管理、信息家电、智能家庭管理、环境监测、军事技术、气象探测、电子商务、各类产业和商业文化艺术、娱乐业以及人们的日常生活的方方面面中,从家用洗衣机、电冰箱,到作为交通工具的自行车、小汽车,再到办公室里的远程会议系统等等,处处都是可以使用嵌入式技术开发和改造的产品。
在各类嵌入式应用产品中,普遍采用的是以各种ARM微处理/控制器为核心的嵌入式应用系统。精简指令集RSIC(Reduce Instruction Set Computing)的ARM微处理/控制器内核,以性能优良、可靠高效、经济实用,被广泛采用。很多知名半导体厂商都推出了以各种ARM内核为核心CPU(CentralProcessing Unit)、附加各类常用外设和接口的单片高集成微处理/控制器。
嵌入式应用产品的研发,主要是相关的嵌入式应用系统的设计,其中重要的嵌入式软件体系设计中必不可少的基本设计是嵌入式软件体系的架构。嵌入式软件体系架构,通常采用混合编程形式,以加速研发的实现,主要的设计语言多采用C/C++,部分含有Java虚拟机的ARM微处理/控制器的主要设计语言是Java。嵌入式软件体系框架中,需要设计的程序有基本的启动程序、异常/中断处理程序、所用外设与接口的初始化配置与操作驱动程序、主程序文件、嵌入式实时操作系统内核的最小选配或嵌入移植、多任务的分配与同步/通信程序、实时监控程序等的基于底层硬体的软件,其中启动代码部分和实时性要求较高的部分代码必须采用ARM指令集汇编语言编写。
编制嵌入式ARM微处理/控制器软件体系框架,必须熟悉所选ARM内核的构造及其异常中断机制、存储体系构造、ARM汇编指令集,熟悉所用ARM系列微处理/控制器件的特点及其片内模块/外设/接口的构造与操作,熟悉所选嵌入式实时操作系统E-RTOS(Embedded Real Time Operation System)的移植需求及其对底层硬体驱动的特殊实现要求。这里的“熟悉”,不是一般的所谓“了解”,而是透彻的“理解”,否则就不可能“用活”和“活用”。
ARM指令集,有基本的ARM和Thumb指令集,有增强的双Thumb指令集和浮点运算指令集,更有针对不同内核的特殊指令集。有ARM7、ARM9、XScale等众多ARM内核,有Philips-NXP、Samsung、Atmel、Intel等知名半导体厂商在生产不同类型的各种ARM微处理/控制器件。每种型号的ARM微处理/控制器件都集成有或多或少的各类常用片内外设或接口。各类常用的片内外设或接口,多达几十个。各类常用E-RTOS,对底层硬体更有不同的依赖和要求。
不同ARM内核、不同半导体厂商、不同的具体ARM微处理/控制器件,都有100个左右的配置、操作和状态寄存器,复杂的ARM微处理/控制器件则多达数百个。寄存器的二进制位数通常为8、16或32位,每个寄存器的单个或数个位又有不同的涵义。这些寄存器中,有些是关于ARM-CPU的,有些是关于微处理/控制器的片内外设和接口的。
所以说,使用一款ARM微处理/控制器件,进行嵌入式软件体系设计,需要花费大部分时间进行嵌入式软件体系框架,并且需要不断的软件测试和调试,对设计人员能力的要求极高,很难一蹴而就。
嵌入式软件体系框架,迫切需要在保证可靠、高效、精炼、易用的前提下做到智能化、自动化、标准化、模块化,以缩短产品研发时间和软件开发成本,加速软件设计效率。本发明“ARM系列微处理器软件架构工具”就是这种广泛迫切需求的产物。有了本软件体系架构工具,对所用ARM微处理/控制器件,就可以停留在“了解”而不是众多的“熟悉”了。
【发明内容】
本发明的目的,在于提供一种在保证可靠、高效、精炼、易用的前提下做到智能化、自动化、标准化、模块化的ARM系列微处理器的软件体系架构的简易途径,以快速有效地解决以下问题:怎样在一个硬件平台上建立并运行起一个最小的基本软件体系?怎样通过软件与系统的各种外围设备打交道?怎样通过系统的各种接口在软件上实现和外部通信?怎样建立针对具体IDE或E-RTOS的多任务应用软件框架并使之即稳定可靠又实时高效?
嵌入式软件体系架构,与硬件密切相关,又称为硬体操作软件或者基于硬体的软件,其开发设计包括基本软件体系的构造、底层外设或接口驱动程序的设计、IDE/E-RTOS系统的建立等一系列繁琐的过程,也可以是这些部分的有机整合---可编程片上系统设计SoPC。为彻底简化这一过程,实现上述发明目的,本“ARM系列微处理器软件体系架构工具”,立足于嵌入式ARM硬件体系,通过简单易用的可视化人机交互进行“量体裁衣”的定制,得到基于具体ARM型号微处理/控制器类型的“实际配置”,结合内嵌的广泛而丰富的“代码数据库”,经过逐级的“适配与优化”,进而,向下形成由含有基本的启动代码、系统初始化代码在内的最小软件体系和所用外设和接口驱动程序组成的底层软件,向上形成由基于ARM指令集的直接软件体系或所选多任务E-RTOS的板级支持包BSP(Board Support Board)、可调用的应用程序接口API(Application Programmable Interface)函数库和可以直接使用的应用程序框架组成的顶层软件。有了具体的可靠高效的嵌入式ARM软件体系框架,软件工程师,就可以直接在此程序框架的各个“用户可以加入代码”的注释处,调用所产生的API函数,进行功能性应用程序设计了。嵌入式ARM应用系统,特别是其软件体系及其架构的设计层次与流程如图1所示。
本ARM系列微处理/控制器软件架构工具,有中文和英文两个版本,其主要组成及其特征如下:
1.可视化人机交互的“实际配置”
可视化人机交互的“实际配置”,通过各种简单明了、界面友好、便于操作的可视化Windows对话框视窗完成人机交互,形成描述具体嵌入式硬件应用体系环境和功能性应用程序必需的基于底层硬体的“实际配置”。
整个软件工具设计成“多文档界面MDI(Multi-Document Interface)应用程序”,众多人机交互的可视化Windows对话框视窗作为一个个子窗体出现,用以完成从半导体厂商及其器件类型到具体器件型号的选择,实现时钟/存储器/电源的管理、异常中断的安排、栈/堆/接口分配的最小启动配置,形成最小的软件体系,初始化和操作所选各种片内外设或接口的驱动配置;还有ARM内核的选择、集成开发环境IDE(Integrated DevelopmentEnvironment)/E-RTOS及其多任务分配与同步/通信的选择,API及其应用程序框架的选择,等。每个对话视窗,都对应一类配置,在窗口关闭时形成,记录在配置文件中。再次打开窗口,可以从该配置文件调出并显示上次的选择,以便于调整和修改。资源冲突的选择“配置”会按原半导体设计厂商的规定进行优化,在没有相关仲裁规则时会以弹出窗口的形式提示用户再次进行选择。人机交互窗口内的各项操作,都配有简单明了的提示或弹出“暗示”,复杂的操作则提供有相应的帮助文档。最终形成的“实际配置”文件,用于下一步的“适配与优化”。
“选配”实现的大部分功能示意在图2中,其中PLL为锁相环(PhaseLocked Logic),INTC为异常/中断控制器(Interrupt Controller)、EMIC为外部存储器接口控制器(Extemal Memory Interface Controller)、闪存控制器为(Flash Memory Controller)、DMA为直接存储器访问(Direct Memory Access)、MMU/PMU为存储器/电源管理单元(Memory Management Unit/PowerManagement Unit)、UART/SCI为通用异步收发器(Universal AsynchronousReceiver Transmitter)/串行通信接口(Serial Communication Interface)、SPI为串行外设接口(Serial Peripheral Interface)、I2C为内部集成电路接口(Inter-Integrated Circuit)、USB为主机/设备通用串行总线(Host/DeviceUniversal Serial Bus)、LCD为液晶显示器(Liquid Crystal Display)、I2S为数字音频总线(Inter-IC Sound Bus)、SD/MMC为安全数据卡/多媒体控制器(SecureDigital Card/Multimedia Control)、EMAC为以太网接口控制器(EthernetMedia Access Controller)、CAN为控制器局域网(Controller Area Network)、TSC为触摸屏控制器(Touch Screen Controller)、PWM为脉冲宽度调制(PulseWidth Modulation)、WDT为看门狗定时器(Watch Dog Timer)、RTC为实时时钟(Real Time Clock)、ADC为模数转换器(Analog Digital Converter)、DAC为数模转换器(Digital Analog Converter)、GPIO为通用输入/输出接口(GeneralPurpose I/O),AHB指先进的高性能总线(Advanced High performance Bus),APB指先进的外设总线(Advanced Peripheral Bus)。
可视化人机交互的“实际配置”,可以在几到十几分钟内快速完成,设计效率的提高,可想而知。
2.广泛丰富的“程序代码数据库”
要适合不同ARM内核及其不同半导体厂商的不同类型不同型号的微处理/控制器,必须具备广泛与丰富的而且经过调试与优化的“程序代码数据库”。本发明的软件架构工具,含有各类用不同ARM指令集编写的启动汇编语言代码文件库,用C/C++语言编写的各类常用外设或接口的驱动程序文件库、各种异常/中断中断处理函数库、常规的“应用程序架框”文件库、常用的E-RTOS之BSP库、及其多任务分配与通信函数库。对于具有Java虚拟机的ARM内核,还构建有大量的Java代码库,以支持以Java语言为主的嵌入式系统设计。各类接口的驱动文件,根据相关总线的标准通信协议和常规的编程指导思想,进行代码编写,通信协议如CAN总线传输,USB中断/批量/同步传输实现,等;编程指导思想如主动数据发送,中断数据接收,DMA方式实现大批量数据传输,等。代码数据库中的大部分程序文件都经过了实际调试,并进行了结构和执行效率上的优化,做到了模块化、标准化和易读易用。另外,还特别为代码数据库设计了特殊的链接接口,以便于应用中进一步的修改、完善和发展。
广泛丰富的“程序代码数据库”为本软件架构工具提供了强有力的底层硬体适应性保障:
本软件架构工具适用的常用ARM内核有:ARM7TDMI-S、ARM9xxT/E、CoretexM3、CoretexM1、XScale等。
本软件架构工具适用的常用ARM系列微处理/控制器件有:Philips-NXP的LPC2000/LPC3000系列、Samsung的Mobile-SOC系列、Atmel的AT91ASM、Intel的PXA/IOP/IXP系列、Actel/Altera/Xilinx的各种CoretexM1-FPGA、ADI的ADuC70xx/ADu71xx系列、ST的STR71x/STR73x/ATR75x/ATR91x系列、TI的TMS470R1x系列、FreeScale的MAC71xx系列、OKI的ML67xxx系列等。
本软件架构工具适用的常见片内外设或接口有:以PLL为中心的时钟发生/控制器、异常/中断控制器INTC、外存接口控制器EMIC、闪存控制器、DMA控制器、MMU/PMU、UART/SCI、SPI、I2C、USB主机/设备控制器、1394接口控制器、LCD控制器、I2S、SD/MMC、EMAC、CAN、TSC、8/16位定时/计数器(Timer/Counter)、PWM、WDT、RTC、ADC、DAC、GPIO、1-Wires总线接口控制器等。
本软件架构工具适用的常见E-RTOS有:RTX、μC/OS-II、μCLinux/ARM-Linux、WinCE/XP、VxWorks、Nucleus、eC/OS等。
“程序代码数据库”,由软件架构平台在“适配与优化”时调用,并实现与其的无缝的链接。
3.逐级紧凑“适配”及其“优化”
逐级紧凑“适配”及其“优化”,在可视化人机交互完成后,由用户单击软件架构工具中【代码发生】按钮,得以触发而执行。
架构软件工具分析得到的“实际配置”需求,逐一查找后台的“代码数据库”,按照启动代码、最小软件架构、底层外设/接口驱动、异常/中断/DMA、IDE或E-RTOS适配、BSP的形成、多任务分配与连接、GPIO配置、应用程序框架发生等顺序,由主到次,由硬件底层到软件上层,逐级逐一地进行“适配”,得到初步的各个程序文件代码,这就是所谓的“逐级紧凑适配”。
接下来,架构软件工具,对初步得到的各个程序文件代码进行优化。代码库中的程序,因需要适应很多硬件的实际情况,往往编写得面面俱到,如″switch″语句引起的众多“case”分支,而实际硬件平台常常是其中的一种情形,此时,十分需要“代码优化”,以缩小程序代码量,加速程序的执行效率,这对于资源有限和实时性要求高的嵌入式系统设计尤为重要。
本阶段完成的任务还有:适应底层硬体的各个必需API函数的形成,代码注释的添加,必需的应用程序框架的选择与优化,以注释形式给出众多的用户增加代码的位置,各个使用指导文件的产生,等。
逐级紧凑“适配”及其“优化”,过程虽然复杂,但通过计算机在后台完成,通常仅需要几分钟时间,就可以一蹴而就,程序设计效率非常之高。
4.简明规范开放的“软件体系代码”
针对具体硬件平台的ARM微处理/控制器系统的软件体系程序框架,在“适配与优化”的后期产生,它包括:启动程序文件,异常/中断处理文件,各个外设/接口的驱动程序文件,必需的应用程序框架文件,多任务分配及其同步与通信文件,适合该硬件体系的API函数库,相对所选E-RTOS的BSP,等等。
产生的“软件体系框架代码”具有以下显著特点:
Figure A20091005705200101
程序简洁明了
程序代码严格遵循汇编语言和C/C++语言的程序编写风格和规范,同时在程序中做有大量的注释,可读性强,对于代码探索、分析、技术交流及其初级人员学习十分方便。对汇编代码、函数、函数的参数、全局/局部变量的功用、涉及的算法、“读/写”操作或“收/发”访问的编程思想,其注释更为详细。
Figure A20091005705200102
代码规范标准
对程序代码,力求高度规范化、模块化、标准化。按功能类型把架构代码分为若干“对”程序文件,每“对”程序文件,划分为头文件(*.h、.*inc等)和程序体文件(*.c、*.cpp等),以便于项目的嵌套引用和重构组合。整个项目文件采用“树”状结构组织在一起。
源码完全开放
产生的各个程序文件,完全以源代码的形式给出,即便于应用、技术交流、编程学习,又便于软件架构工具本身的改进、完善和提高。
Figure A20091005705200104
紧随嵌入式系统开发需求
程序代码的编写上,尽可能采用低级语法规则给出,如在C/C++语言的使用上,就做到了尽可能使绝大多数代码为C语言,尽量避免使用C++语法,尽量不使用库函数或仅使用少量常规库函数,这样使程序代码对编译器几乎失去了依赖性,更加符合了嵌入式系统开发的需要。
【附图说明】
图1为本发明ARM系列微处理器软件体系架构工具的层次与流程框图。
图2为以ARM系列微处理器为核心的嵌入式系统的通用选择配置缩略框图。
图3为ARM单片机的厂商与器件选择框图。
图4为LPC2138单片机的系统配置框图。
图5为LPC2138单片机的系统管理窗口框图。
图6为LPC2138单片机的中断配置窗口框图。
图7为LPC2138单片机的中断异常代码架构选择窗口。
图8为LPC2138单片机的中断异常代码架构选择窗口。
图9为LPC2138单片机架构代码及其启动汇编代码浏览。
图10为LPC2138单片机架构代码及其SPI片内外设C代码浏览。
图11为LPC2138单片机架构代码及其主程序C代码浏览。
图12为程序代码架构文件预览与输出窗口框图。
图13为由项目工程文件直接打开的Real View MDK集成开发环境。
【实施方式】
本发明“ARM系列微处理/控制器软件体系架构工具”,实现了各种ARM微处理/控制器件的嵌入式应用系统软件体系的快速构建。具体实施中,关键环节的“程序代码库”和“适配与优化”,均在后台运行,面向用户的只是一系列的简易的“人机交互操作”,一直到最后得到其所需的嵌入式应用软件体系框架为止。
下面以工业测量和控制场合广泛应用的Philips-NXP的LPC2000系列ARM7TDMI-S单片机,针对ARM公司的主流的集编辑、编辑、调试于一体的IED---Real View MDK,产生的嵌入式软件应用体系框架为例,说明本“软件架构工具”中文版的具体应用。这里选用的具体器件型号是:LPC2138。
1.在Windows下运行本软件架构工具,选择厂商与器件型号,如图3所示。
2.由此可打开图4所示的LPC2138程序代码架构框图。
3.在图4中,单击亮橙色的各个按钮,即可打开对应的CPU管理窗口或片内外设配置窗口。在打开的窗口中可以通过人机对话的方式完成相应的寄存器配置和初始化、读写访问、中断等相关函数的选择。图5~8是对系统管理、中断管理与UART片内外设配置的窗口。
4.打开所需的各个窗口进行各项选择后关闭窗口,即可完成对所需的寄存配置和代码API接口函数的选择。然后,回到项目管理主窗口,在主菜单或工具栏中单击【生成代码】项,软件工具在后台即可生成所希望的程序代码框架。在项目管理主窗口主菜单或工具栏中单击【代码浏览】项,可以打开程序代码架构文件,从中可以浏览所生成的程序代码,如图9~11,该代码是针对Real View MDK集成开发环境产生的,程序代码所对应的开发环境的选择可以在系统控制管理窗口的一般配置页面完成。
5.在项目管理主窗口的菜单栏或工具栏中,单击【生成输出】项,可以将生成的程序代码输出到指定目录。如图12所示。
6.点击所生成目录中的项目工程文件,如针对Real View MDK软件的.uv2文件,即可打开相应的IDE环境,如图13所示。
7.如果需要修改程序架构代码,可以重新运行软件工具或在项目管理主窗口的菜单栏或工具栏中,单击【打开项目】项,选择以前建立项目的“.acf”文件,打开以前建立的项目,重新或者修改各个所需窗口中的选择项目,生成代码即可。

Claims (5)

1.本“ARM系列微处理器的软件体系架构工具”,其特征在于它具有嵌入式应用体系的广泛覆盖面、硬件与软件的紧密结合力、具体硬件操作的快速封装能力和面向具体集成开发环境IDE/嵌入式实时操作系统E-RTOS的高效过渡功能,通过对“简易可视化人机交互的‘实际配置’”、“全面丰富的‘程序代码数据库’”和“逐级紧凑的‘适配与优化’”的有机组合,能够快速形成简明、规范、开放的“嵌入式应用软件体系程序框架代码”,从而使传统而繁琐漫长的基于底层硬体的软件设计在很大程度上得以实现高效的自动化和智能化。
2.如权利要求1所述的“简易可视化人机交互的‘实际配置’”,其特征在于它能够通过可视化的多窗口显示和简单明了的选择操作,快速实现应用和问题的具体与简化,以完成厂商及其器件类型到具体器件型号的选择、时钟/存储器/电源的管理、异常/中断的安排、栈/堆/接口分配的最小启动配置,形成最小的软件体系,并初始化和操作所选各种片内外设或接口的驱动配置,还可以完成ARM内核的选择、IDE/E-RTOS及其多任务分配与同步/通信的选择,应用程序接口API函数及其应用程序框架的选择等。
3.如权利要求1所述的“全面丰富的‘程序代码数据库’”,其特征在于:该代码库含有各类用不同ARM指令集编写的启动汇编语言代码文件库、用C/C++语言编写的各类常用外设或接口的驱动程序文件库、各种异常/中断中断处理函数库、常规的“应用程序架框”文件库、常用的E-RTOS之板级支持包BSP库、多任务分配与通信函数库及适用于具有Java虚拟机的ARM内核的Java代码库,库中的大部分代码和程序文件都经过了反复的优化和调试,几乎覆盖了所有常用ARM内核及其数百个知名半导体厂商的ARM系列微处理/控制器件,而且代码库还能够通过预留的接口不能地实现完善和扩展。
4.如权利要求1所述的“逐级紧凑的‘适配与优化’”,其特征在于:“适配”能够按照启动代码、最小软件架构、底层外设/接口驱动、异常/中断/DMA、IDE或E-RTOS适配、BSP的形成、多任务分配与连接、GPIO配置、应用程序框架等顺序,由主到次,由硬件到软件,逐级逐步地展开,更好地完成“代码数据库”的搜索和“实际配置”的程序代码化;“优化”能够适合嵌入式系统设计的特点,兼顾硬件资源和实时性的要求,充分缩小程序代码量而加速其执行效率;“适配与优化”还能够完成适应具体硬体环境的各个必需API函数的形成,代码注释的添加,必需的应用程序框架的选择与优化,以注释形式给出众多的用户增加代码的位置,各个使用指导文件的产生,等。
5.如权利要求1所述的“简明规范开放的‘嵌入式应用软件体系程序框架代码’”,其特征在于:针对具体硬件平台所产生的软件体系程序框架,不但覆盖了启动程序文件、异常/中断处理文件、各个外设/接口的驱动程序文件、必需的应用程序框架文件、多任务分配及其同步与通信文件、适合该硬件体系的API函数库、相对所选E-RTOS的BSP等几乎所有的嵌入式应用软件需求,而且能够:使所得程序简洁明了,注释齐备,可读性强;使程序文件的结构和组织规范化、模块化、标准化;使源码完全开放,以便于应用、交流、学习和软件架构工具本身的改进、完善与提高;使代码尽可能采用低级而常规的编程规则给出,尽量降低对编译器的依赖性,更符合嵌入式系统开发的需要。
CN2009100570521A 2009-04-09 2009-04-09 Arm系列微处理器的软件体系架构工具 Expired - Fee Related CN101551747B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100570521A CN101551747B (zh) 2009-04-09 2009-04-09 Arm系列微处理器的软件体系架构工具

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100570521A CN101551747B (zh) 2009-04-09 2009-04-09 Arm系列微处理器的软件体系架构工具

Publications (2)

Publication Number Publication Date
CN101551747A true CN101551747A (zh) 2009-10-07
CN101551747B CN101551747B (zh) 2012-06-20

Family

ID=41156000

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100570521A Expired - Fee Related CN101551747B (zh) 2009-04-09 2009-04-09 Arm系列微处理器的软件体系架构工具

Country Status (1)

Country Link
CN (1) CN101551747B (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739530B (zh) * 2009-12-28 2011-11-02 深圳奥士达电子有限公司 Arm系统启动过程中的加密方法
CN102306108A (zh) * 2011-08-01 2012-01-04 西安交通大学 Arm 虚拟机中基于mmu 的外设访问控制的实现方法
CN102541568A (zh) * 2012-01-05 2012-07-04 北京工业大学 基于Cortex-M3系列微处理器的图形化编程开发方法
CN102591697A (zh) * 2011-01-10 2012-07-18 技嘉科技股份有限公司 执行使用者空间程式方法、使用其的电脑系统及纪录媒体
CN102830980A (zh) * 2012-09-03 2012-12-19 广州掇月信息科技有限公司 移动通信基带芯片开发平台
CN103412761A (zh) * 2013-08-26 2013-11-27 南京艾科朗克信息科技有限公司 基于fpga的多功能综合设计平台及其控制方法
CN105608211A (zh) * 2015-12-30 2016-05-25 北京超图软件股份有限公司 一种基于arm架构的gis系统
CN105786500A (zh) * 2016-02-26 2016-07-20 中国科学院光电技术研究所 一种嵌入式控制器程序框架自动生成方法
CN107967223A (zh) * 2017-12-07 2018-04-27 郑州云海信息技术有限公司 一种多产品线通用代码架构系统
CN108230494A (zh) * 2017-12-21 2018-06-29 广东汇泰龙科技有限公司 嵌入FreeRTOS操作系统的家用智能云锁的配置方法和云锁
CN109240658A (zh) * 2018-09-12 2019-01-18 郑州云海信息技术有限公司 一种基于神经网络的软件架构选择的方法及装置
CN109375955A (zh) * 2018-11-01 2019-02-22 无锡市同芯恒通科技有限公司 一种同种cpu适配不同操作系统的方法
CN109388430A (zh) * 2017-08-02 2019-02-26 丰郅(上海)新能源科技有限公司 实现微处理器对外设硬件控制的方法
CN111142940A (zh) * 2019-12-23 2020-05-12 成都海光微电子技术有限公司 处理器与软件的适配方法、装置、处理器、芯片和设备
CN112650190A (zh) * 2019-10-13 2021-04-13 九江精密测试技术研究所 一种快速实现rtx控制系统与嵌入式控制系统的转换装置
CN112988144A (zh) * 2019-12-02 2021-06-18 北京华航无线电测量研究所 通用嵌入式事件驱动软件开发框架及使用方法
CN114307903A (zh) * 2022-01-11 2022-04-12 深圳市刚竹医疗科技有限公司 一种双通道qpcr仪的系统电路

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004019239A2 (en) * 2002-08-21 2004-03-04 Windmill Microsystems Holding Bv Object-oriented design method for the time-effective and cost-effective development of production-grade embedded systems based on a standardized system architecture
CN1713167A (zh) * 2004-06-25 2005-12-28 中国科学院自动化研究所 基于arm嵌入式微处理器的最小系统结构设计
CN100507844C (zh) * 2007-08-22 2009-07-01 北京中星微电子有限公司 一种嵌入式系统中执行任务指令的方法及装置
CN100595738C (zh) * 2008-09-28 2010-03-24 东南大学 一种面向嵌入式应用的软件可控Cache的实现方法

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739530B (zh) * 2009-12-28 2011-11-02 深圳奥士达电子有限公司 Arm系统启动过程中的加密方法
CN102591697A (zh) * 2011-01-10 2012-07-18 技嘉科技股份有限公司 执行使用者空间程式方法、使用其的电脑系统及纪录媒体
CN102591697B (zh) * 2011-01-10 2016-04-13 技嘉科技股份有限公司 执行使用者空间程式方法及使用其的电脑系统
CN102306108B (zh) * 2011-08-01 2014-04-23 西安交通大学 Arm 虚拟机中基于mmu 的外设访问控制的实现方法
CN102306108A (zh) * 2011-08-01 2012-01-04 西安交通大学 Arm 虚拟机中基于mmu 的外设访问控制的实现方法
CN102541568A (zh) * 2012-01-05 2012-07-04 北京工业大学 基于Cortex-M3系列微处理器的图形化编程开发方法
CN102830980A (zh) * 2012-09-03 2012-12-19 广州掇月信息科技有限公司 移动通信基带芯片开发平台
CN103412761A (zh) * 2013-08-26 2013-11-27 南京艾科朗克信息科技有限公司 基于fpga的多功能综合设计平台及其控制方法
CN105608211A (zh) * 2015-12-30 2016-05-25 北京超图软件股份有限公司 一种基于arm架构的gis系统
CN105608211B (zh) * 2015-12-30 2019-02-22 北京超图软件股份有限公司 一种基于arm架构的gis系统
CN105786500B (zh) * 2016-02-26 2019-02-05 中国科学院光电技术研究所 一种嵌入式控制器程序框架自动生成方法
CN105786500A (zh) * 2016-02-26 2016-07-20 中国科学院光电技术研究所 一种嵌入式控制器程序框架自动生成方法
CN109388430A (zh) * 2017-08-02 2019-02-26 丰郅(上海)新能源科技有限公司 实现微处理器对外设硬件控制的方法
CN107967223A (zh) * 2017-12-07 2018-04-27 郑州云海信息技术有限公司 一种多产品线通用代码架构系统
CN108230494A (zh) * 2017-12-21 2018-06-29 广东汇泰龙科技有限公司 嵌入FreeRTOS操作系统的家用智能云锁的配置方法和云锁
CN109240658A (zh) * 2018-09-12 2019-01-18 郑州云海信息技术有限公司 一种基于神经网络的软件架构选择的方法及装置
CN109375955A (zh) * 2018-11-01 2019-02-22 无锡市同芯恒通科技有限公司 一种同种cpu适配不同操作系统的方法
CN112650190A (zh) * 2019-10-13 2021-04-13 九江精密测试技术研究所 一种快速实现rtx控制系统与嵌入式控制系统的转换装置
CN112988144A (zh) * 2019-12-02 2021-06-18 北京华航无线电测量研究所 通用嵌入式事件驱动软件开发框架及使用方法
CN112988144B (zh) * 2019-12-02 2023-09-12 北京华航无线电测量研究所 通用嵌入式事件驱动软件开发框架及使用方法
CN111142940A (zh) * 2019-12-23 2020-05-12 成都海光微电子技术有限公司 处理器与软件的适配方法、装置、处理器、芯片和设备
CN114307903A (zh) * 2022-01-11 2022-04-12 深圳市刚竹医疗科技有限公司 一种双通道qpcr仪的系统电路

Also Published As

Publication number Publication date
CN101551747B (zh) 2012-06-20

Similar Documents

Publication Publication Date Title
CN101551747B (zh) Arm系列微处理器的软件体系架构工具
US7860582B2 (en) Compact modular embedded device
Devine et al. MakeCode and CODAL: Intuitive and efficient embedded systems programming for education
CN102622470A (zh) 一种通用汽车代码转换方法
CN102087609B (zh) 多处理器平台下的动态二进制翻译方法
CN109074341A (zh) 减少引脚计数接口
CN110045982A (zh) 一种基于源代码聚合的嵌入式系统配置方法
CN101599040A (zh) 多接口仿真编程器
CN106843887A (zh) 一种嵌入式定制化开发平台自动生成系统的实现方法
CN109388430A (zh) 实现微处理器对外设硬件控制的方法
CN100580630C (zh) 满足SystemC语法要求的多核处理器及获得其执行代码的方法
CN101211516B (zh) 一种面向嵌入式系统的单片机集成实验平台
CN102096725A (zh) 一种基于fpga的仿真器
CN102193788A (zh) 基于动态二进制翻译的跨平台驱动程序复用方法
CN104572162A (zh) 一种基于龙芯手持式计算机的uefi固件实现方法
CN205103599U (zh) 一种跨境贸易bpo应用云终端装置
CN108182066A (zh) 一种基于嵌入式系统机车台内核实现方法
CN106909346A (zh) 一种基于一体计算机的uefi固件实现方法
Khner Expert. NET Micro Framework
CN106909400A (zh) 一种基于笔记本计算机的uefi固件实现方法
CN100456238C (zh) 实现分布式对象持久化的方法、装置及编译单元
CN201548951U (zh) 一种机顶盒界面的模拟装置
CN110413318A (zh) 图形化操作系统的移植方法、装置和相关设备
CN109324838A (zh) 单片机程序的执行方法、执行装置及终端
CN103258467A (zh) 基于模块化可动态配置的嵌入式实验平台

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201120

Address after: Room 901, 9 / F, unit 1, building 11, No.6 Cuizhu street, Zhengzhou high tech Industrial Development Zone, Henan Province 450001

Patentee after: HENAN BO YUAN ELECTRIC POWER POLYTRON TECHNOLOGIES Inc.

Patentee after: Sun Junwei

Patentee after: Chang Jianxun

Patentee after: Li Zhenyi

Patentee after: Chen Liuxing

Address before: No.5, row 18, East Fuying street, Ruzhou City, Henan Province

Patentee before: Be afraid of doing things

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120620

Termination date: 20210409