上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
前言
本书旨在介绍Arm的Helium技术,即针对Arm Cortex-M系列处理器的矢量运算扩展。Helium为微控制器带来了令人兴奋的新功能,允许在低成本、低功耗的设备上运行复杂的数字信号处理或机器学习应用程序。
本书旨在为那些想要了解这些新特性的工程师和学生提供帮助。本书不是数字信号处理器(Digital Signal Processor,DSP)编程的入门书籍,阅读本书的前提是对C语言和Arm汇编语言有所了解。
排版约定
本书遵循如下排版约定。
• 汇编程序代码:
• C程序代码:
• 寄存器位采用方括号表示,例如Q0[15:0]表示寄存器Q0的第15位到第0位。
• 十六进制数值的前缀为0x(例如,0x10代表十进制的16),二进制数值的前缀为0b(例如,0b101代表十进制的5)。
• 在语法描述中,指令域<>中的内容必须用合适的值代替,{}表示可选内容。
• C/C++函数(包括Helium原语函数)名称采用小写字母表示。
致谢
感谢Arm Education Media为我提供了撰写本书的机会,并使本书得以出版。感谢安谋科技教育计划程鸿先生和宋斌先生对本书的支持。
许多人都对本书做出了贡献。我要特别感谢来自Arm France的Fabien Klein和Christophe Favergeon,以及来自Arm应用工程团队的Salman Arif和Edmund Player,感谢他们在示例代码、培训材料的获取和问题的诸多建议及答案方面提供帮助。我还要感谢François Botman、Sjoerd Meijer和Hanno Becker,感谢他们提供专业的评审意见。没有他们的帮助,本书不可能完成。
Jon Marsh
2020年9月