本篇文档主要介绍MULTICUBE平台的搭建步骤,由于开源项目的说明文档较为简洁,且现有版本库代码也有纰漏,因此感兴趣的研究者们借助于本篇文档可以避开这些隐藏的陷阱。
在上一篇推文【教程】手把手教你搭建MPSoC设计空间探索平台(1)中,我已经把SCoPE的编译和安装过程介绍的比较清楚了。在MULTICUBE平台的搭建过程中,一共需要安装3个主要部件,第一个就是SCoPE;第二就是M3P,也就是M3P SCoPE XML Plug-in,是XML信息处理的插件;第三个就是Multicube Explorer,简写为M3Explorer,这个将在下一篇推文中介绍。本篇推文主要介绍M3P的编译和安装过程。
如果你关注或者浏览过MULTICUBE的网站,就会发现他们提供了一个安装脚本Auto-installation script。但是这个安装脚本,或许是由于年代久远,或许是缺少维护,安装过程会存在很多问题。 最有效的方案就是自己手动安装。
安装步骤
下载安装包并解压缩 在m3p-V1.0.5目录下 make 步骤很简单,也比较明了,但是其中会出现一些ERROR信息,导致make无法顺利进行。下面我将编译过程中会出现的一些问题列出来,为编译者提供参考。后面我也会把能够正确工作的VMWare镜像文件提供给感兴趣的研究人员。
可能的错误信息及解决方法
(1)与expatmm有关的错误。 这个问题的解决方法比较麻烦,需要手动编译该库文件。具体步骤如下。 git clone expatmm.git,从Github上面clone源代码 install autoconf/automake/libtool/libexpat1等工具或者库 执行.configure make sudo make install 这样关于expatmm的问题就能够得到解决。 (2)与ARP Lib有关的问题 在arplib目录下,修改其Makefile文件,加入ARP_HOME=$(shell pwd)语句。
运行Hello_world
到目前为止,我们应该已经安装了SCoPE和M3P,这样就可以执行一个简单的示例仿真。在M3Explorer安装目录下,有一个examples目录,里面有若干示例程序。我们可以选择最简单的hello_world例程。 为了能够顺利编译并执行hello_world程序,我们还需要做一些小的修补(可见这个项目坑很多)。 修补1:将Makefile中的$^改为$< 修补2:手动将scope-g++和opcost从utils目录下拷贝到bin目录下 修补3:将Makefile中的O3选项去掉 做了上面三个小的修补之后,执行make和make run就会执行hello_world程序。执行结果会在屏幕上面打印“Hello World”字样,并给出程序执行时间、cpu利用率、功耗等性能指标。
当然,这只是一个示例性程序,所用处理器模型的参数也都固定,但是已经前进了一小步了,下一步我们就需要安装M3Explorer,设计空间探索工具。
https://mp.weixin.qq.com/s/btExyreORCEhX5UB_JWiqA