CASIO

采用IAR Embedded Workbench,顺利过渡到双核i.MX

Casio building

CASIO在开发其新款 EX-word 电子词典系列时采用了IAR Embedded Workbench

处理器是电子词典的核心组件,CASIO决定将传统的32位RISC CPU替换为基于Arm架构的双核处理器,并借此机会引入IAR Embedded Workbench for Arm。尽管在平衡性能和功耗效率方面遇到了许多挑战,但由于得到了IAR的支持,公司成功地推动了开发工作,没有延误。

CASIO在本文中谈到了公司在开发新电子词典时面临的技术问题,以及采用IAR Embedded Workbench的其他细节。

CASIO作为电子词典领先制造商,显著提升了分辨率、字体和声音质量,并开发了多种不同的产品。

quote-red

我们部门开发语言学习类产品,主打产品是EX-word电子词典,同时还针对学生、企业、重视生活和文化的老年人群体以及语言分类设备等开发多款产品。我们还负责开发专用的英语学习工具,如“EX-word RISE”和“joy study”。我们在2019年1月发布的EX-word XD-SR系列开发中采用了IAR Embedded Workbench。

- Masaaki Yanagisawa

XD-SR系列(图片1)采用了更高分辨率的LCD显示屏。之前的型号采用了HVGA(528×320)显示屏,但现在已经升级到了FWVGA(864×480)显示屏。字体也从位图字体改为了轮廓字体。对于英语等语言的音频输出质量也通过采用Opus压缩技术得到了提高(最高48kHz编码),这种技术通常用于互联网上。处理器也进行了升级,使用户可以更舒适地操作设备。

NXP i.MX系列芯片用于EX-word XD-SR系列产品

 

quote-red

我们选择了由NXP半导体开发的i.MX系列处理器,这是一款配备了Cortex-A和Cortex-M处理器核心的双核处理器。Cortex-A负责处理搜索、图形显示、视频播放、判断英语发音和USB通信等任务。Cortex-M负责处理按键、触摸输入以及音频播放和录音等任务。对于操作系统(OS),我们决定采用符合μITRON规范的实时操作系统,支持多核非对称多处理(AMP),即Cortex-A和Cortex-M都配备了μITRON。

EX-word最初于1996年发布时使用的是16位x86处理器。后来我们从2000年代初开始使用32位RISC处理器,现在我们首次采用基于Arm架构的处理器。

- Yanagisawa

Casio case figure

CASIO进行了平台更换,以跟上竞争对手的规格要求

 

CASIO在开发过程中遇到了几个挑战。

 

quote-red

我们开发了一款在海外市场使用WVGA(800×480)LCD显示屏且采用与之前型号相同处理器的模型,但遇到了一些显示速度的问题。然而,与此同时,其他竞争对手在全球市场推出了高分辨率显示屏的产品,因此我们决定改变我们的平台并提升系统性能。这确实是促使我们从头开始重新开发的警示。

- Yanagisawa

 

quote-red

显示字体也是一个大问题。有市场评论指出字体看起来很丑,这开始引起了我们的注意。

- Hokuchi

quote-red

之前的型号处理器也配备了OpenVG加速器,但仅凭此并不足以提升性能...... 如果我们要实现轮廓字体的使用,那么非绘图进程的负载将增加,例如从内存调用数据的进程等。

在之前型号的处理器上,CPU核心的处理速度没有问题,但我们确实遇到了一些问题。例如,外部RAM是SDRAM,因此操作时钟速度不是很快。与之相比,当前型号配备了LPDDR2 RAM,数据传输速度比以前提高了10倍以上,系统性能显著提升。

- Yanagisawa 

CASIO考虑了几种获取搜索和音频数据的途径

quote-red

在我们公司的案例中,我们使用eMMC闪存ROM来存储内容数据。在我们之前的型号中,处理器在访问eMMC接口时遇到了速度太慢的问题。当前型号将eMMC切换到DDR模式,因此数据传输速度比之前的型号提高了约4倍。

系统配置已经改变,尽管屏幕分辨率从HVGA改变为FWVGA,但是像执行搜索和显示信息这样的正常过程现在比之前快了约1.5倍。

- Yanagisawa

Casio system architecture

CASIO在开发电池供电的电子词典时非常注重细节。

 

quote-red

尽管我们提升了性能,但我们也必须保持功耗,这就是为什么我们将处理分成了两个核心。这是一项艰巨的工作,但我们成功地在提升性能和功耗效率之间找到了平衡。

- Hokuchi

在开发新产品时需要创造力的几个方面

 

quote-red

尽可能停止所有未使用的进程是一个基本规则。因此,我们将操作系统的时钟周期设置得相对较长,并确保即使在CPU的“深度”低功耗模式下,也能从中调用生成这个时钟周期的定时器。对于实时操作系统,我们将时钟周期设置为短的1毫秒间隔命令,尽管通常情况下响应速度是优先考虑的,但我们决定为电子词典系统设定较长的时钟周期。只有在必要时才使用高速定时器来快速执行任务,因此当不需要时,我们尽量保持一切缓慢。这些最新型号比之前的型号节能效率提高了约5倍。

- Yanagisawa

初次使用IAR Embedded Workbench

 

quote-red

使用IAR Embedded Workbench是我们第一次使用多核处理器,因此最初我们对其能否进行真正的调试持怀疑态度。幸运的是,它的表现比我们预期的更顺利,这让我们感到非常高兴。

- Yanagisawa

多核调试功能如何?

 

quote-red

我们能够在屏幕上确认双核的行为。当一个核中断时,另一个核的进程也会停止。

- Yanagisawa

 

quote-red

我觉得设置详细的断点条件非常方便。例如,当变量达到指定值时中断,或者当它经过某个地址时中断,等等。

- Hokuchi

 

quote-red

这是我在CASIO的第二年,直到参与这个项目之前我从未涉足嵌入式开发。虽然我没有接受过如何使用IAR Embedded Workbench的正式培训,但我整整一年都能很好地完成我的工作。我认为一个像我这样的新手能够成功地使用这个平台开发产品,这非常令人印象深刻。

- Sakakibara

提供灵活的许可证模式是选择IAR的关键因素

 

quote-red

灵活的许可证是我们选择采用IAR Embedded Workbench的原因之一。CASIO在开发电子词典时使用了许多外包中间件。此外,诸如《康熙字典》和《英日大辞典》等词典的内容都有单独的插件软件,我们通过分配给外部分包商等其他方进行开发。在这个过程中,我们发现Arm正版工具的许可限制可能会使向其他外部公司提供编译器变得困难。

- Yanagisawa

 

CASIO面对超过十个分包商(包括海外分包商),寻找合适的通用解决方案是一项挑战。许多软件供应商只能在购买许可证的地区获得技术支持,而IAR却提供全球技术支持,我们的工程师能够在IAR全球各本地办公室用当地语言获得技术支持。

未来CASIO产品的发展方向

 

quote-red

从某种意义上说,XD-SR系列只是前一款产品内容的升级。未来,我希望充分利用处理器的功能,尝试开发到目前为止我们放弃的功能和内容。

- Yanagisawa