很多工程师不太重视管脚评估与功耗评估,但是它们确实是一个很有必要的开发步骤。管脚评估可以检查器件原理图管脚分配正确与否,特别是FPGA器件一些特殊IP,只能分配到特定管脚,这就避免了前期硬件开发错误,耽误时间。
功耗评估可以简单判断出FPGA器件的大致功耗,方便用户对板子电源系统的选取,当然也有些应用对功耗要求特别严格,功耗评估可以让工程师对器件的选择更有把握。
1. 管脚评估
这里以lattice Crosslink器件LIF-MD6000-6MG81I为例,需要完成的功能为mipi-csi2一进两出。
我们通过数据手册了解到,LIF-MD6000-6MG81I有两个mipi硬核,无需我们分配管脚,下载方式只有spi和iic两种,这里我们选择sspi下载方式。
除了上述接口之外,我们发现还有一路mipi接口和一个外部复位引脚需要分配。另外Crosslink没有专门的JTAG引脚,我们又希望后续调试遇到问题后,能够用reveal insert观测到Crosslink内部逻辑时序,所以我们只能用别的引脚模拟JTAG引脚。
下图是我们为了给Crosslink做引脚评估而建立的Demo工程,其实就是一个顶层文件,加上一个“一进两出”的mipi ip核,软件环境为lattice Diamond 3.11。

从数据手册和pin脚文档可知,LIF-MD6000-6MG81I有三个bank,分别是bank0、bank1、bank2,这里我们把bank0和bank1的Vccio指定2.5V供电,bank2指定1.8V供电。
第一步,我们可以先不分配引脚,直接编译工程,这样的好处是软件自主分配的引脚都是好用的,我们不用试错,软件自动分配的引脚信息可以从report页面的Signal/Pad这一块看到。

第二步,引脚调整。打开软件spreadsheet工具,从这里可以对软件自动分配的引脚进行重新调整。一般来说,JTAG模拟引脚会被自动分配到bank0,但是这次由于bank0引脚不够了,所以我将JTAG模拟引脚都改到了bank2,下图是我更改后的引脚分配。

第三步,编译通过,根据引脚分配画原理图。
2. 功耗评估
一般来说,lattice器件的功耗评估都需要借助Power Calculator软件完成,这个工具可以直接从Diamond软件或Radiant软件打开。
下图为Power Calculator界面首页,一般来说,用户会在管脚评估阶段,顺便把功耗评估也做了,所以打开后,我们可以完全不用设置此界面信息。

第一步,打开Clocks标签页,设置程序内时钟的频率。

第二步,设置logic block、IO、PLL、Block Ram等资源。值得注意一点的是,AF一般默认10%,我们评估的时候一般按80%评估,但是如果用户想评估出最大功耗,可以把AF设置为100%。

第三步,查看总功耗情况。在Power Matrix标签页,最右下角数字即得到的评估功耗,因为我这里只是一个演示,并没有准确的填充数字,所以得到的总功耗很低,为47.734mW。
