为了支持中国IC产业,当看到时代民芯电子设计大赛时,毫不犹豫报名参加。第一阶段侥幸入围并获得了一等奖,自然也就义不容辞地继续参加第二阶段比赛。6月初收到了竞赛用的开发板,到现在也快半个月了。本人对设计中需要的一些资源做了下测试,这里就使用情况做一下感想与总结。
开发板使用的是MXT0106,该芯片是基于SPARC V8的32位嵌入式处理器,具有单独的浮动运算单元。本人使用下来,觉得有以下几个特点。
1.具有串口调试单元,连接串口即可进行在线程序调试。目前大部分芯片都支持JTAG调试,但是支持串口调试的还是少数。使用JTAG调试,需要配套的JTAG工具才能实现在线调试。一般芯片的JTAG工具都价格不菲,比如TI的DSP芯片的JTAG工具,基本在几千元的价格。MXT0106自带的DSU串口调试单元,使得仿真调试成本几乎是零成本。本人在使用中发现在线调试的速度也是可以接受,不比TI的USB接口的JTAG工具慢,而且稳定性非常好。时代民芯提供的IDE集成了gdb图形调试界面insight,使得使用者无须面对gdb的字符命令,大大提高了易用性。
2.芯片内部资源极其丰富,12路计数器,2路普通定时器,10路PWM定时器,4路串口,64个GPIO,2路I2C,4路AD,4个16位模拟开关,支持1553B总线。这些资源在控制领域,可以说是绰绰有余。10路PWM意味着可以控制10个电机或舵机,4路AD可以同时采样4个测量值,4个16位模拟开关着意味着可以顺序输入64个模拟输入用于AD或其他用途。至于1553B总线,本人了解甚少,不在讨论范围。其他如多路串口,I2C接口,为系统提供了很大的扩展性。
3.处理速度快,高达375Mhz的主频,完全赶超ARM9的处理能力。同时内部有单独的浮点单元,使得能够快速进行浮点计算。对于普通单片机来说,上百M的主频几乎难以企及,而对浮点计算更是力不从心。单片机对浮点计算通常产用查表,或者整型化处理,精度差且处理麻烦。MXT0106可以直接进行浮点计算,大大提供芯片处理能力,非常适合需要进行复杂算法控制的场合。本人参赛的设计正好需要进行复杂的平衡算法控制,适合使用该芯片。
不过在使用过程中,仍然觉得该系列芯片还有改善的地方。
首先,可能只是基于控制领域的设计,因此一些对外的接口不够丰富或者通用。比如USB接口或者SDIO接口都没有,使得不能对外进行高速方便的数据拷贝。也没有LCD控制器,使得人机交互较难实现。
其次,由于没有MMU的支持,使得无法移植LINUX操作系统,只能使用uclinux或者ucos等轻量级的嵌入式操作系统。这对于高达几百M主频的芯片来说,不能使用linux等高级操作系统,也算是一种遗憾。
最后,MXT0106的BGA封装可能是业余爱好者的一大使用障碍。本人觉得可以提供简化版的容易焊接的同类型芯片,可以让广大电子爱好者都能使用起来,对国产芯片的推广是件好事。
总之,本人觉得MXT0106是一款功能强大,使用方便的嵌入式控制器。在目前中国,连自主产权的单片机都尚未推广,却能够有这么一款32位的高性能处理器产生,不能不说是国内IC产业的一大进步。相信随着类似时代民芯这样的国内IC设计公司的崛起,未来中国的IC产业必会越来越强大,产生诸如TI,ADI等这样的大公司,必然是指日可待。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。