基于ARM7的无线内窥系统设计

技术分类: 嵌入式系统  医疗电子  | 2008-03-28
来源:单片机及嵌入式系统应用 | 作者:华中科技大学 张小田 萧奋洛 刘文予

  5 调试及优化方法

  5.1调试方法

  嵌入式系统的调试是一个很繁琐而复杂的过程。在调试之前划分好模块,可以大大提高调试效率;另外为了调试,还需要添加一些计划项目之外的调试工具。

  本系统的调试工作分为3个部分。

  (1)蓝牙无线链路层调试

  蓝牙无线链路层的调试可以直接借助PC上很多现有的串口工具来实现。

  (2)CMOS摄像头调试

  CMOS摄像头的调试有两个部分:SCCB配置时序、RGB图像数据时序。

  一般的处理器都不带SCCB接口,因此要用处理器的口线模拟SCCB时序。此时的调试一般都是通过示波器观察模拟的时序,看足否符合芯片手册上的要求。为了验证是否正确,一般可先读一个指定的寄存器(这些寄存器都有出厂默认值);然后写一个数据,读取出来验证是否吻合。

  RGB图像数据时序由CPLD产生,此时的调试需要ARM来配合。本系统在调试时,在PC上编写了一个简单的串口接收程序,ARM把SRAM中的图像数据通过串口发送给该PC,PC上的程序把这些原始的RGB数据插值并显示出来,从而可以得知CPLD的时序是否正确。当然,调试时序时,示波器仍然是必不可少的工具。

  (3)JPEG-LS算法调试

  JPEG-LS算法的调试分为两个步骤:PC上的算法验证和目标板上的调试。

  PC上的算法验证使用VC6.O模拟目标板上的运行环境,测试目标板上的各个功能接口。本部分的验证代码可供下载。

  目标板上调试时,还是要借助串口,把压缩的图像和原始图像通过串口发送至PC。Pc上的JPEG-LS解码程序解码压缩图像,然后与原始图像对比,从而找出算法中的错误。

  5.2 优化方法

  为提高图像传输的帧率,本系统主要采用了2种优化方法。

  (1)硬件优化

  硬件优化主要是在CPLD采集数据时,使用双缓冲,使得连续采集下一帧图像和传输上一帧图像可以并行,从而提高系统的吞吐率。

  (2)软件优化

  软件优化的作用在本系统的调试过程中效果明显;本系统的第一个版本,图像采集速率仅为3 s/帧;通过软件优化后,达到了最终的O.3 s/帧。其优化如下:

  ①循环外移,避免在循环中重复运算;

  ②频繁使用的变量申明为寄存器变量;

  ③把所有的JPEG-LS编码函数代码拷贝到RAM中执行。

  默认情况下,所有的代码都存放在Flash中。ARM运行时,从Flash中读取指令并且执行。众所周知,Flash的访问速度相对RAM而言,相差一个数量级,因此,如果把关键代码放在RAM中,执行速率将会大大提高。而AT9lR40008内部自带512 KB的RAM,足够本系统使用,因此,这个方法可行。

  解决的方法有两个,一是写一个启动程序,在启动时,把系统所有的代码都拷贝到RAM中,这样系统速度会提高。然而,该方法实现起来较麻烦,且如果程序扩展,可能会超过RAM的512 KB限制。因此,本系统采用另外一个简单方法。采用IAR Embedded Workbench开发环境,通过阅读其编译器手册发现,在函数之前添加一个__ramfunc伪指令,那么链接器在生成启动代码时,会将该函数拷贝到RAM中,从而提高运行效率。其使用例子如下:

  __ramfunc void encode_oneline(vcrid)

  通过使用该方法,系统的运行效率提高了约lO倍。

  结语

  本系统以ARM为核心,实现了JPEG-LS无损图像压缩算法,并日结合CPLD实现了CMOS摄像头的时序控制。通过蓝牙传输,实现了数字化的无线内窥系统。

  本系统具有良好的扩充性,可以使得系统更加微型化。首先,如果采用CSR公司更新的BC3系列芯片,则将融合ARM核以及蓝牙功能,可以更加减小内窥镜的体积。最重要的是,如果发展自主产权的内窥镜芯片,那么以现有的SOPC技术,可以将ARM核、CPLD逻辑门以及蓝牙通信功能集成在一起,形成无线内窥镜的集成解决方案,从而使其产业化成为可能。

  本系统在实现过程中,完成了一系列的调试工具,积累了调试以及优化经验。我国现有的医疗设备开发技术相对比较落后,在此分享,希望对同类型的产品设计以及芯片生产能有一些参考价值。

1】【2】【3
加载中

对文章的评论

更多评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销