苹果去年发布的 M1 芯片,因其令人难以置信的 IPC 和极高的能效震惊了科技界,让人们的注意力首次从 x86 架构真正转移到事实上的高性能架构上。
然而,尽管 M1 性能强大,这款芯片的生态圈仍然秉承苹果一贯的封闭风格,任何想要利用 M1 硬件的人都要通过苹果自己的操作系统 Mac OS,否则就非常困难。
尽管困难,许多工程师已经开始努力克服,最近有人甚至设法在 M1 芯片上完全运行了 Linux。
同样继续者这种尝试的则是 Maynard Handley,他是前 Apple Quick Time 的开发者之一,最近,他分享了一份 350 页的 PDF,分析了 M1 ARM 芯片的内部工作原理。
该文档(当前版本 0.70)从逆向工程的角度深入研究了 M1 架构,并得到了该领域其他专业人士和爱好者的大力支持。
此次放出的这份分析报告蕴含的工作量不可低估。因为它既需要对 ARM 架构及其诊断工作有深入的了解,也需要数小时的测试、技术文档和专利文献阅读以及社区讨论。
本文档是在 M1 芯片上收集已知的、现有的信息和逆向工程的研究结果,同时也包括作者自己的实验结果。
虽然这份报告还不是最终版本,但 Handley 的努力现在可以成为社区驱动的 M1-geared 圣经。报告中的部分内容还能为未来的进一步解密苹果芯片打下基础,比如对性能更强大的 Apple M2 进行逆向工程。
希望这份报告可以为封闭系统专用硬件平台进入更受欢迎的开源平台打下一扇大门。
Maynard Handley 在 Twitter 上放出了这份文件,
下载地址:(需梯子)
https://drive.google.com/file/d/1WrMYCZMnhsGP4o3H33ioAUKL_bjuJSPt/view
报告本来是写给自己的,需要一点硬核知识。
作者表示,这份东西是他写给自己的,但受众是任何对 M1 芯片技术细节感兴趣的人,当然,读者需要比较高的 CPU 基础知识。
一起来看看他自己为这本报告写的导言:
我对 L1 缓存之前部分讨论的所有内容都相当有信心,这部分之前我有时间进行实验,仔细阅读专利,并编辑写作。
L1 缓存的讨论以及后面的所有内容都更具试探性。这部分内容可能未经任何实验(或者我对某些实验不满意,因为我一直在思考解释结果的新方法,因此结果不确定)。
从我参考的许多专利文献来看,我认为这份报告的基本思想是正确的,但这个结论是快速浏览和分析的结果,我没有彻底阅读或追踪所有相关专利文献。
即便如此,A15 及其配套芯片(也许是 M2)很快就会问世,人们会想开始研究。希望以此文件可以作为一个引子,让以后的人可以将更多时间花在基本面分析上,以真正了解新事物,而不是花时间来重新发明轮子。
这份文件是实际上为我自己写的,目的是为对 M1 芯片的调查和研究做个记录。这些调查采取实验的形式,过程中参考了许多苹果专利文献,所有报告内容都通过对学术文献的合理知识联系在一起。
任何对 M1 芯片的技术细节感兴趣的人都是本报告的潜在读者。本报告假定读者的关于 CPU 的知识程度比一般的互联网意见领袖高得多。报告中收录了大量论文和专利的参考资料。读专利和论文是需要努力下功夫的。
我建议读者可以跳过对自己没有吸引力的部分,无论是实验的设计方式、解释方式、围绕某一点的文献描述,还是专利文献。
我已尽力报告的内容准确。不过尽管如此,报告内容还是可能存在多个错误,无论是实验设计、实施、分析、我对专利的理解,还是其他任何方面,欢迎技术更正。
各位小伙伴如果对自己的技术底蕴有自信的,对苹果的专利感兴趣的,可以下载来看看。
https://worldrepublicnews.com/learn-all-about-apples-m1-with-this-350-page-deep-dive/