高通平台上的AMSS(Modem端) windows环境搭建

qualcomm amss 文件结构以及编译流程分析 AMSS的source实际上是Qualcomm平台的的底层部分,去掉了为应用程序提供接口的AEE(application execution environment)部分,高通在DualProc芯片上的其他平台基本上都是采用的这样的架构。所以如果要了解这套source的话有必要对BREW作一个基本的了解,不需要了解它应用程序的运作机制,只需要了解底层的操作系统,尤其是REX(Run Time Executive)的运行机制必须了解。在6K平台只有单芯片(ARM9或者ARM11)。在7K&8K平台硬件 阅读详情

高通平台上的AMSS(Modeom端)Windows环境搭建

一、首先简单介绍一下,高通平台7&8系列平台的软硬件架构。

如图:


硬件上采用的是ARM9+ARM11(最新的采用Cotex-A8或是Cotex-A9)的架构。其中ANDROID是在ARM11上运行,而ARM9部分负责处理通信协议、射频、GPIO等,或者可以称作MODEM端,同样也运行一个OS,称为AMSS(Advanced Mobile Subscriber Software)。

二、主要介绍如何建立AMSS代码的编译环境

编译AMSS的source有两种方式:一是在windows下编译 ,另一是在linux下编译。因为无法取得linux环境下的RVCT2.2的licence,所以通常情况下都是在windows环境下编译。

编译所需要的工具

     GNU make              3.81      

     RVDS (RVCT) 2.2.1      BLD593    

     Perl                    5.8.5 or later

     Python                  2.4.x (注意:必须是Python2.4.X 版本太高了反而不行。)

        elfweaver.exe

特别建议:配置文件中有些目录的设置,建议编译工具统一安装在同一个目录下,便于代码提交更新。如C:\ARM\

介绍编译工具的安装与注意事项

1、Perl 工具

     Perl称为“实用报表提取语言”(Practical Extraction and Report Language),最初只是 Unix 系统管理员的一个工具,在工作日里被用在无数的小任务中。如今它已经发展成为一种非常复杂的,通用的编程语言,以及完整的开发环境,包括调试器,调节器,交叉引用,编译器,库,语法提示编辑器,以及所有其它“真正”的编程语言所具有的所有挂勾。当然,我们也只用到了Perl对AMSS整个代码中脚本的解析功能,其他的也就没有什么了。

网络上可以下载到最新的Perl版本,只要版本在5.8.5以上就可以了,安装过程中没有什么注意事项,选择“NEXT”,直到安装完成。安装的路径建议在统一规定的目录下,如C:\ARM

 

2、Python

    Python(KK 英语发音:/'pa θɑn/, DJ 英语发音:/ paiθ n/)是一种面向对象、直译式计算机程序设计语言,创始人为Guido van Rossum。这种语言的语法简捷而清晰,并且具有丰富和强大的类库。python常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。常见的一种应用情形是,使用python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,速度要求非常高,就可以用C++重写。

同样的,我们也只需要这个工具进行编译,不用过多关注怎么使用。版本上只选择2.4.x,过高或是更低的版本都不适合,这点是高通平台Release Note 强调的。

官方下载地址:http://www.python.org/ftp/python/2.3.4/  (已经下载了。)

安装的路径建议在统一规定的目录下,如C:\ARM

 

3、GNU make

Windows环境下GNU工具,就是比较熟悉的Cygwin,但有一个问题,不是最新的版本就可以。已

经下载了安装执行文件和整个安装包,安装过程如下:

1) 


执行安装文件cygwin_setup.exe

2)  选择安装程序来源

3) 


选择安装目录

同样是建议安装的路径统一在规定的目录下,如C:\ARM

4)  选择安装时,为下载储存的目录(由于安装程序源都已经下载了,因此直接选择到该目录)

5)  选择需要安装的套件

注:一定要选择全部安装,否则无法实现编译。

6)  安装完成……

 

4、RVDS

编译需要的RVCT2.2.1版本,破解的版本。简单介绍一下破解方法。下载的破解包有三个压缩包RVDS220.rar、RVCT22_593_Windows.zip 和RVDS Crack.rar

  1)安装

解压缩文件RVDS220.rar,运行Setup.exe。

安装过程中,可能会提示“WARNING: Machine needsrebooting”,如果你确认没有新安装什么软件或者windows更新,可以点击“Ignore”忽略这个提示

同样是建议安装的路径统一在规定的目录下,如C:\ARM

下一步,会有一个Advanced…按钮,点击它,取消“Update environment variables inregistry”,不更新环境变量,这是为了避免和ADS12冲突。

有一个步骤是和文件关联,全部取消——你不会喜欢用Code Warrior编辑源代码的

最后,会弹出一个窗口,提示要license,这个直接取消。

 

2)打补丁到 build 593

拷贝RVCT22_593_Windows.zip 到本地,解压,可以看到一堆.exe文件

将其全部拷贝到安装目录C:\ARM\rvct22\RVCT\Programs\2.2\349\win_32-pentium,覆盖同名文件

 

3)破解

解压RVDS Crack 文件夹,运行 keygen.exe

点击上图中所示的Generate,则它会在本目录下生成license.dat。在C盘根目录下建文件夹flexlm 把生成的license.dat拷贝到里面。。。。。。这一步不知道如何破解,如果license.dat在其他目录下,无法正确完整破解RVDS工具。

导入license.dat。运行Licence Wizard 4.0

下一步,选择Install Lice…

即完成了License.dat的导入步骤。

 

4)对部分文件进行patch

运行patch.exe,

点击 Patch,然后依次选择下列所有文件。。。。这一步比较繁琐,要求每个文件都要Patch。

C:\apps\rvct22\IDEs\CodeWarrior\CodeWarrior\5.6.1\1592\win_32-pentium\bin\Plugins\License\oemlicense.dll

C:\apps\rvct22\IDEs\CodeWarrior\RVPlugins\1.0\86\win_32-pentium\oemlicense\oemlicense.dll

C:\apps\rvct22\RDI\armsd\1.3.1\66\win_32-pentium\armsd.exe

C:\apps\rvct22\RDI\AXD\1.3.1\98\win_32-pentium\axd.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armasm.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armcc.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armcpp.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armlink.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\fromelf.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\tcc.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\tcpp.exe

C:\apps\rvct22\RVD\Core\1.8\734\win_32-pentium\bin\tvs.exe

C:\apps\rvct22\RVD\Core\1.8\734\win_32-pentium\bin\xry100.dll

C:\apps\rvct22\RVARMulator\ARMulator\1.4.1\206\win_32-pentium\armiss.sdi

C:\apps\rvct22\RVARMulator\ARMulator\1.4.1\206\win_32-pentium\armulate.sdi

C:\apps\rvct22\RVARMulator\ARMulator\1.4.1\206\win_32-pentium\v6armiss.sdi

C:\apps\rvct22\RVARMulator\v6ARMulator\1.4.1\238\win_32-pentium\v6thumb2.sdi

C:\apps\rvct22\RVARMulator\v6ARMulator\1.4.1\238\win_32-pentium\v6trustzone.sdi

执行到这一步,已经完成了RVCT的安装。

 

5)验证

打开命令行窗口。在里面执行

armcc--vsn

输出应该是即表示安装成功。

ARM/ThumbC/C++ Compiler, RVCT2.2 [Build 593]

Softwaresupplied by: mammoth//ZWTiSO 2005

编译工具安装到上述4个步骤,就已经完成了AMSS Windows编译环境的建立。

 

5、Elfwearver.exe

这一步介绍的Elfwearver.exe工具是用来合并elf文件的,因为高通现在的release不包括Elfwearver.exe这个文件,因此需要自己生成,这个也是需要安装Python工具的一个原因。根据高通的文档(Release Note)

即可以生成所需的Elfwearver.exe。其中setup.py这个文件高通有提供。当然也可以用现成的Elfwearver.exe (也许还需要MSVCR71.dll等)。

生成Elfwearver.exe后,要修改Dmss_rule.min文件,

修改ELFWEAVER_CMD =tools/pyelf/elfweaver.exe为ELFWEAVER_CMD = python tools/pyelf/elfweaver

上述5个步骤中,其中的3、4、5步可以直接拷贝已经安装好的文件,不需要每个人都全部重新安装一次。

 

三、Windows环境变量设置

需要在系统环境变量中加入以下Path属性(有些自动会生成)

C:\ARM\Perl\site\bin;

C:\ARM\Perl\bin;

C:\ARM\Python24;

C:\ARM\RVCT22\bin\win_32-pentium;

C:\ARM\RVCT22\RVD\Core\1.8\734\win_32-pentium\bin;

C:\ARM\RVCT22\RVCT\Programs\2.2\349\win_32-pentium;

C:\ARM\RVCT22\Utilities\FLEXlm\9.2\release\win_32-pentium;

C:\ARM\cygwin\bin;

 

 

所需修改的文件路径为RVDS安装目录下的这两个文件

1.RDI/ARMSD/1.3.1/66/install.xml

2.utilities/installer/1.6/43/install.xml中

需要修改的内容两个文件是一样的

把%(HOSTPLAT)%全部替换为%(FS)win_32-pentium%

高通平台的AMSS 在高通平台的工程中存在两个文件夹Android 和amss 或 amss_proc ,其下有两个文件夹 adsp_proc,cdsp_proc,那么什么事amss 呢? 先记住一个概念 AMSS(Advanced Mobile Subscriber Software)先进移动用户软件,由Dual-Mode Subscriber Software(DMSS)升级而来。 一、首先简单介绍一下,高通平台7&8系列平台的软硬件架构。 如图: 硬件上采用的是ARM9+ARM11(最新的采用Cotex 阅读详情

相关推荐

高通平台android-modem 架构总结

高通平台android-modem 架构总结,希望大家都能好好学习,希望下载的给好评。

何为高通平台的AMSS

在高通平台的工程中存在两个文件夹Android 和amss 或 amss_proc ,其下有两个文件夹 adsp_proc,cdsp_proc,那么什么事amss 呢? 先记住一个概念 AMSS(Advanced Mobile Subscriber Software)先进移动用户软件,由Dual-Mode Subscriber Software(DMSS)升级而来。 一、首先简单介绍一下,高通平台...

audio usb 8155

BUSCO评估基因组的完整性

因为数据库收集的时候找的就是在不同的物种间都是单拷贝的基因,所以说在评估的物种里面应该也是单拷贝的状态才对。基因组层面评估:先去基因组上预测这些基因,再去做评估,如果说给他是一个注释好的基因集,这个时候提供的是一个蛋白集合,它就直接是去进行同源搜索,再去评估,看BUSCO数据库里面的这些单拷贝基因有或者无;首先,tblastn也是同源搜索,同源搜索之后,去对转录本进行读码框预测,预测完的结果还是去进行hmmsearch的搜索(hmmsearch是做蛋白质结构域搜索的),最终拿到BUSCO评估结果。

qq_64400864的博客 2960

[LTE] LTE基本架构

这篇文章主要介绍LTE的最基础的架构,包括LTE网络的构成,每一个网络实体的作用以及LTE网络协议栈,最后还包括对一个LTE数据流的模型的说明。LTE网络参考模型

轻舞飞扬 8万+

Spyglass实战指南:跨时钟域同步方案深度解析

本文深度解析了Spyglass在跨时钟域同步方案验证中的实战应用。通过真实案例阐述了亚稳态的危害,并详细介绍了从基础的两级同步器到复杂的异步FIFO与握手协议等八大同步方案,以及如何利用Spyglass进行有效配置、检查与问题排查,为提升芯片设计可靠性提供系统性的避坑指南。

weixin_29219189的博客 840

开关电源|控制方式PWM、PFM、混合调制

频率调制器根据误差放大器的输出大小来改变方波信号的频率,若负载电流突然增加,输出电压 Vout随之下降,反馈电压 VFB 减小,此时误 差放大器的输出增高,频率调制器输出方波信号的频率增大,增加电感充电次数;若负载电流突然增加,输出电压Vom随之下降,反馈电压Vr减小,此时误差放大器的输出增高,PWM比较器输出方波信号的占空比增大,增加电感充电时间:若负载电流突然下降,PWM比较器输出方波信号的占空比减小,减少电感充电时间,从而稳定输出电压。它是在固定开关频率下,通过改变脉冲宽度来调节占空比的。

weixin_46969363的博客 1万+

高通MODEM 编译环境搭建

关于我 YANG 你想的越多,顾虑就越多,什么都不想的时候反而能一往直前。你害怕的越多,困难就越多,什么都不怕的时候一切反而没那么难。别害怕别顾虑,想到就去做。这世界就是这样,当你把不敢去实现梦想的时候梦想会离你越来越远,当你勇敢地去追梦的时候,全世界都会来帮你。   加博友   关注他 文章分类 ·Android(1)·Cellular(18)·Lin

manshq163com的专栏 4191

CANape快速上手

文章帮助记录CANape学习过程。

小弱鸡的博客 1万+

高通平台上的AMSS(Modeom端)Windows环境搭建

高通平台上的AMSS(Modeom端)Windows环境搭建 一、主要介绍如何建立AMSS代码的编译环境 编译AMSS的source有两种方式:一是在windows下编译 ,另一是在linux下编译。因为无法取得linux环境下的RVCT2.2的licence,所以通常情况下都是在windows环境下编译。 编译所需要的工具      GNU make              3.81 

liwei405499的专栏 1375

养龙虾之_因特尔UHD/ULtra/Arc核显跑大模型_安装ollama_跑qwen3.5:0.8b/9b_使用copaw1.0.1测试_并配置copaw技能效果炸裂---AI大模型应用探索0019

摘要:本文探讨了利用Intel UHD770核显运行大语言模型的可能性。通过使用Intel发布的ipex-llm项目工具包,成功在核显上运行了Qwen3.5系列模型。测试发现0.8B小模型运行流畅(3-5秒响应),但智能程度有限;而9B大模型虽然效果更好,但响应时间长达2分钟,且GPU/CPU占用率不高。实验证明Intel核显确实可以运行LLM,但实际效果和性能表现仍有提升空间,特别是对大模型的支持尚不理想。

添柴程序猿的专栏 237

基于BERTopic模型的英文20新闻数据集主题聚类及可视化

BERTopic是基于深度学习的一种主题建模方法。BERT是一种用于NLP的预训练策略,它成功地利用了句子的深层语义信息。

Cachel Wood的博客 1461

高通AMSS编译实战:从零搭建Windows环境到生成mbn镜像(附RVCT2.2配置技巧)

本文详细介绍了在高通AMSS编译过程中,从零搭建Windows环境到生成mbn镜像的完整流程,特别提供了RVCT2.2配置的替代方案。涵盖Cygwin环境配置、AMSS源码结构解析、编译系统优化技巧以及常见错误解决方案,帮助开发者高效完成嵌入式通信模块的编译工作。

brown的博客 209

【部署优化篇三】《DeepSeek边缘计算实战:把目标检测模型塞进树莓派,让AI在巴掌大的设备上“开天眼“》

谁说只有超级计算机才能跑AI?今天咱们就要在树莓派上玩转DeepSeek目标检测,让这个巴掌大的小盒子变成会‘看’世界的智能终端!本文手把手教你从零开始,把最潮的目标检测模型塞进树莓派。全程高能预警,建议准备好你的树莓派4B/5和散热风扇,咱们这就开启边缘计算的魔法之旅!

商务合作|问题讨论|交流学习 请联系作者微信,加微信请务必注明来意,博客主页有联系方式 1306

Note for QC AMSS Build

<br />      因为我们没有购买Linux下的RVDS,因此Modem部分的源代码AMSS只能在windows下编译。在参考高通的参考文档和网上的技术博客之后,我们很快就建立起windos下编译的环境。<br /> <br />      主要的部分可以参考我转载的一篇博文http://blog.youkuaiyun.com/ganxiao1986/archive/2010/08/03/5786256.aspx ,这里我只是说几点不同的地方。<br /> Python不是必须的,高通的release note

威廉第三的专栏 1713

【网络安全】浅谈数据库攻击复现及相关安全优化

4、准备数据库服务器为了安全正式环境应该把数据库单独放一台服务器,只允许让应用服务器 IP 来访问数据库服务器,通过独立两者,就算其中一台发生问题,另一台也是好的,进一步降低了危险性。5、定时备份数据库开发定时备份功能,可以使用 Crontab,或者其他框架,设定周期备份数据,哪怕是数据丢失或被删除也可以快速恢复。

2401_88545587的博客 222

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

QC AMSS的编译问题

因为我们没有购买Linux下的RVDS,因此Modem部分的源代码AMSS只能在windows下编译。在参考高通的参考文档和网上的技术博客之后,我们很快就建立起windos下编译的环境。Python不是必须的,高通的release note也注明只有Linux

769

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

MSM6550 (ARM) ASIC DMSS6550 在windows编译怎么做

如题提出如上问题 MSM6550 (ARM) ASIC DMSS6550 在windows编译怎么做

thanklife的专栏 449

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

andorid使用科大的源

怎么下载Android源码

599

手机modem开发---MTK modem开发

原文链接:https://blog.youkuaiyun.com/zhangbijun1230/article/details/79935008?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-5&utm_source=distribute.pc_relevant.none-task-blog-...

checkchen99的博客 1885

Android电话Phone设计框架介绍

Android Phone设计介绍 在Android之rild进程启动源码分析一文中已经详细介绍了Android的电话系统架构设计,并对rild进程进行了详细的剖析。native层的rild进程负责与底层modem设备交互,比如向modem发送AT命令、从modem中接收消息,同时实时监控modem的状态;作为三层架构设计的Android电话系统:客户端的framework、服务端的rild、m...

架构设计 505

高通平台android 环境配置编译及开发经验总结【转】

1、高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通开发板上烧录文件系统 建立高通平台开发环境 高通平台,android和 modem 编译流程分析 高通平台 7620 启动流程分析 qcril 流程分析,设置sim卡锁 python scons 语法学习 Python 语言之 scons 工具流程分析:   1.2 搭建高通平台

dongwuming的专栏 1万+

高通modem(BP)简介

AP:Application Processor,即应用芯片 BP:Baseband Processor,即基带芯片 FCC(美国联邦通信委员会)认证要求将AP和BP分开,因为射频控制相关的功能(信号调制、编码、射频位移等)都是高度的时间相关的,最好能将这些函数放在一个CPU核上运行,并在这个CPU核上运行一个实时的操作系统,这样AP核上操作系统和驱动的bug就不会导致设备发送灾难性的数据到移动网络中;并且一旦BP被设计和认证好,不管你采用的操作系统和应用软件怎么变化,它都可以正确的执行通讯功能,手机的设计

lhh_qrsly的博客 2260

MSM平台上的AMSS

AMSS的source实际上是QC BREW(Binary Runtime Environment For Wireless)平台的的底层部分,去掉了为应用程序提供接口的AEE(application execution environment)部分,高通在Dual Proc芯片上的其他平台基本上都是采用的这样的架构。所以如果要了解这套source的话有必要对BREW作一个基本的了解,不需要了解它

北落师门'的专栏 1102
上一篇: base64
下一篇: 浅谈高通的MSM7230-评各大厂商
thinkandchange
博客等级 码龄15年 59粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值