http://home.km-airnet.net/space-26-do-blog-id-77.html
AMSS(Advanced Mobile Subscriber Software)
标签 : Mobile Subscriber Software AMSS Advanced 2009-03-05 16:55在Qualcomm7系列的架构中,一颗IC内包了二颗ARM处理器,一颗是用ARM9的核心,专门负责处理通讯协定,RF及所有的IO开关控制,而另外一颗则是用ARM11的核心,用来处理多媒体和我们所熟知的作业系统如Linux或Windows等,而ARM9端则是有自己的作业系统,二者之间是透过shared memory的硬体来做沟通,软体则是使用RPC (Remote Procedure Call)的机制。跑在ARM9上的软体我们称之为AMSS(Advanced Mobile Subscriber Software),而跑在ARM11上的就是Linux或Windows了。
二者虽然看起来都很容易理解,但其实在开发上却有些许的不同,由于ARM 9端是负责最直接的硬体IO的控制,因此除了default的pin define可以由AMSS先做好之外,若是在Linux执行时动态改变的话,则要透过RPC去「请求」ARM 9上的AMSS来做。而RPC则是利用Shared memory drvier来forward,shared memory driver则是没有原始码。因此对Linux kerenl里的driver来说,有部分的API等同于是是没有原始码可以去追踪的。只能假设shared memory部分的程式是没有问题的。
虽然还不大习惯single chip的开发环境,但巳经渐能体验出这种架构的威力,除了具有竞争力的价格之外,在体积及功耗上也都会比multi chip来得更小及更低。当然,single chip的软体架构往往复杂,开发上虽然不一定比较难,但往往更需要依赖原厂的技术支援。
至于single chip有没有可能在未来逐渐地成为hand held device主流,个人认为还是要看产品的规格及客户的需求。