关键词:IP SoC ET44M210芯片设计 可重用程序设计
1 概述
当前,使用8位单片机作为控制核心的应用仍然是主流。主要原因是,有相当数量的应用项目只需要使用8位单片机就完全能满足技术要求。8位单片机的低成本、易开发、技术资源丰富等优点,使得其它高位单片机无法与其匹配,因此,无论是芯片制造商还是系统应用开发人员,对8位单片机的现状和发展都给予了极大的关注。
8位嵌入式微处理器发展的一个重要特点是片上系统SoC(System on Chip)化。SoC化的技术含义就是在一个芯片上广泛使用知识产权IP(Intellectual Property),从而加速了嵌入式系统的研制和开发过程。从设计上来说,SoC是一个通用设计复用达到高生产率的软、硬件协同设计;从方法学的角度来说,SoC在开发工具和程序设计方面作了许多突出的改进,例如IP核可重用设计、规范化的接口及测试方法、内置嵌入式操作系统等。这些改进为8位嵌入式微处理器的深入应用开辟了更为广泛的前景。综合有关文献,8位嵌入式微处理器研制技术的发展特点如图1所示。
SoC嵌入式系统从真正意义上实现了所谓“片上系统”,即芯片级的系统应用。一个嵌入式微处理器芯片可以包含若干个知识产权IP模块,用户可以根据需求选用某种型号的芯片或向制造厂商定制。长期以来,嵌入式系统的软件开发一直落后于硬件技术的发展,是阻挠嵌入式系统快速发展的一个“瓶颈”。解决这一问题的重要途径就是使用“可重用”的IP模块程序IPP(Intellectual Property Program),它可以极大地加速软件的开发过程。这一方法有望可以使得嵌入系统应用程序的开发变得简单、方便和快捷。
继JTAG接口之后,一种使用USB接口的“仿真+实验模板”实现全仿真的开发方式,引起业界的越大关注。使用这种开发工具,只需要花费几百元钱就可以得到全功能的仿真操作和程序代码写入工具。这种廉价而又高质量的开发方式,无疑将对嵌入式微处理器的普及和推广产生巨大的影响。本文介绍的ET44M210芯片是一款低价格、高性能、采用CMOS工艺制造、具有RISC架构的8位微控制器芯片。芯片采用SMA封装,引脚数为100,由台湾义统电子股份有限公司(Etoms Electronics Corp.)设计生产。ET44M210的设计充分体现了当今SoC化产品的特征,在IP模块、开发工具和程序设计方面颇具特色。
2 ET44M210芯片的IP模块
ET44M210芯片包含有10个IP模块,其结构如图2所示。
微控制器MCU
MCU是ET44M210芯片的核心。它的工作电压范围为2.2V~3.6V DC,工作频率范围为0Hz~48MHz。该芯片采用RISC指令架构,有直接、间接和相对三种寻址方式,除了条件转移指令是双字节以外,其它所有指令均为单字节;具有上电复位、看门狗、密码保护等功能;共有20个中断源,16层堆栈;采用CMOS工艺制造,具有低功耗特点,典型工作电流为1.5mA(使用6MHz晶振、工作电压3.V时),待机时的工作电流仅为1μA。
锁相振荡环PLL
外部晶振为6MHz,可编程产生6、12、24和48MHz的时钟信号,提供给其它各IP模块使用。通过对有关寄存器的设置,可以选用“休眠”、“绿色”或“普通”系统时钟模式。
存储器ROM/RAM
程序存储器ROM是双字节的。程序计数器PC(Program Counter)是14位的,因此总共有16K的容量分为2个页面,每个页面为8K。源地址从0x0000起始,从0x10开始到0xA8用来存放中断服务程序的程序段,一共可以响应20个中断,每个程序段为8个字节。系统对各功能模块的响应使用统一的中断方式,因此极大地提高了芯片的工作效率,并使得程序的编制变得非常容易和清晰。ET44M210芯片ROM的内容可以重复改写。
ET44M210芯片的数据存储器RAM是单字节的静态存储器,总共有1321个,全部可以作为寄存器使用。在这些寄存器中有相当一部分已经赋予了特定的功能。如果这些功能进行分类,可以分为:通用寄存器、系统控制/初始化寄存器、特殊功能寄存器、USB控制/状态寄存器、无线调制解调器控制/状态寄存器/SPI控制/状态寄存器/定时器/计数器和I/O状态/控制寄存器等。ET44M210芯片所有功能的实现都是通过这些寄存器的设置来实现的。
输入输出I/O接口
芯片最多可以有42个I/O引脚,通过有关寄存器的设置可以定义输入、输出、上拉电阻选用、开路输出选用和按键唤醒选择等。
定时器/计数器
除了通常的带预除器的8位计数器外,还有一个16位的“长时计数器”(FRC,Free Run Counter),可以很方便地实现长时间定时或大容量计数。
脉宽调制输出PWM
芯片有2个脉冲宽度调制输出端,调制精度为16位,即脉冲宽度调制的最小量是脉冲周期的1/65536。
模拟/数字转换ADC
16通道、10位转换精度,提供内部3V标准参考电压。使用6MHz时钟源泉时的最快转换时间为4μs。
同步串行外围接口SPI
主/从通信模式均可选用,MSB和LBS的传输顺序可选。
通用串行总线集线器(USB HUB)
含内置式、可进行1点对3点通信的USB集线器,符合USB1.1标准。数据上传速度为12Mbps,下行速度为12Mbps。5V电源可由PC计算机USB接口提供。
无线射频调制解调器Wieless/RF Modem
通信频率为2.4GHz,可连接到RF102调制解调器的并行接口端,带CRC校验。无线传输距离≤10m。
3 ET44M210芯片的开发工具
ET_USBICE仿真软件ET44M210芯片采用“USB接口仿真+实验模板”作为硬件开发工具,如图3所示。
开发板的前半部分是仿真模板,在其上有一个ET44M210芯片,内部固化了仿真程序。仿真模板通过板上的USB接口与PC机进行通信,在仿真软件的配合下构成一个低成本,高性能的在线仿真器ICE和写入器。
开发板的后半部分是实验模板,在其上也是一个ET44M210芯片,用户通过实验模板进行系统开发和模拟实验。实验模板上有3个USB接口,供用户开展USB应用实验使用。仿真模板的前端可外接1个WM通信模板,为开展WM通信实验使用。实验板上还有1个48引脚的插座,可供连接I/O接口、ADC、PWM、SPI等使用。
ET44M210芯片采用ET_USBICE仿真软件作为软件开发工具,如图4所示。
ET_USBICE仿真软件使用USB接口与PC计算机进行通信。软件具有标准的通用仿真软件界面和工程导向管理功能,适用于Windows98/2000/XP等多种操作系统,可以很方便地对源程序进行编写、编译、侦错、仿真运行、代码生成、写入等全过程。
4 ET44M210芯片的程序设计
ET44M210芯片的程序设计有如下几个特点。
(1)汇编过程可以使用宏定义头文件(Head File)
ET44M210芯片中的各知识产权IP的功能选择是通过寄存器内容设置来完成的。知识产权功能设置寄存器多达数百个,为了使用方便,设计厂商为每个寄存器以及相应的位制定了一个特定的名称。在为这些名称建立了相应的名称-地址宏定义以后,用户在设置豁口内容时就不再需要使用地址,只需要直接使用寄存器及其相应的位的名称就可以了。所有关于寄存器及其位的名称-地址宏定义都被放入一个以H为后缀名的头文件中。ET_USBICE仿真软件的编译器可以接受类似C语言中所使用的头文件,这样做不仅为程序设计带来了极大的方便,同时也使程序设计实现了统一和规范。厂商提供的包含所有寄存器名称宏定义的头文件是ET44M210_REG.H。
(2)智能模块采用统一的中断工作方式
ET44M210芯片提供了多种特色知识产权,如USB通信接口、无线调制解调器WM等,还提供了许多流行的知识产权,如ADC、SPI、PWM等,所有这些知识产权的响应都是通过中断工作方式来实现的。ET44M210将ROM存储器的0x10~0xA8的区域作为20个中断响应入口,在使用时通过对有关的中断控制寄存器的设置控制优先级,这样很方便地就可以实现多知识产权工作的协调和统一。
(3)可重用知识产权模块程序IPP
由于ET44M210芯片在设计时采用了IP核可重用设计和规范化的接口,因此对于同一系列的不同芯片,知识产权应用程序可以重用。用户只需要对功能模块的数据接口进行安排,无需从头开始,可以极大地提高程序设计效率。
图4
设计厂商提供了各知识产权的功能演示程序。通过演示程序,用户一方面可以学习功能模块程序的应用方法另一方面也可以将功能模块的演示程序移植到用户实际的应用程序中,大大加快了程序设计的进度。
(4)支持C高级语言编程
ET_USBICE仿真软件提供C高级语言编译器,支持使用台湾义隆电子系统有限公司所定义的C语言标准编写源程序。
结语
8位嵌入式微处理器芯片正在向SoC化发展,通过设计重用和硬、软件协同设计的方法达到高效率。ET44M210芯片正是这种SoC化发展的一个范例。该芯片具有多个知识产权,最为突出的是有1个符合USB1.1协议标准的USB集线器和1个2.4GHz的高频无线调制解调器。ET44M210采用独特的“仿真+实验模块”开发方式,价格低、性能好,可以完全达到硬件在线仿真器ICE的功能。在程序设计中采用汇编宏定义头文件和可得用知识产权,使得嵌入系统应用程序的开发变得简单、方便和快捷。