本发明属于集成电路微电子,特别是涉及一种仿真主频驱动的信号自动映射方法。
背景技术:
1、超大规模vlsi设计的验证一般都选择在fpga原型系统上进行逻辑功能的验证。但大规模vlsi设计通常在数亿乃至数十亿门,单片fpga容纳不下。因此需要对设计进行分割到多片fpga。受限于fpga的io引脚,跨fpga之间的信号传递需要通过时分复用技术(time-division multiplexing, tdm)。传统的方式是通过手工对信号进行分组然后分配到fpga的io引脚。这种方式需要耗费过多的时间,容易出错,并且引脚的分配没有目标导向。因此,需要一种能够自动将信号映射到fpga的io引脚该种分配方式能够获取一个较高的仿真主频的方法。
技术实现思路
1、针对以上技术问题,本发明提供一种仿真主频驱动的信号自动映射方法。
2、本发明解决其技术问题采用的技术方案是:
3、一种仿真主频驱动的信号自动映射方法,方法包括以下步骤:
4、s100:读取fpga分割之后的设计,将分割后的设计用孤岛子图表示,每个孤岛子图中包含多个slice;
5、s200:将slice按照预设的拓扑结构进行放置,每个slice对应单独的fpga;
6、s300:对slice的边界信号按照类型进行分配;其中,类型包括松耦合信号和紧耦合信号;
7、s400:对松耦合信号,按照预设的第一原则进行分组,得到各松耦合信号的分组编号;
8、s500:对紧耦合信号,按照预设的第二原则进行分组,得到各紧耦合信号的分组编号;
9、s600:根据各松耦合信号的分组编号和各紧耦合信号的分组编号分配到端口,获取分配后的各fpga间各端口的仿真主频,判断各fpga间各端口的仿真主频是否达到预设的仿真主频,若达到预设的主频,则获取可行信号引脚映射方案;
10、其中,s400包括:
11、1、同一原始分组的信号放在同一组并编号:给定信号集,对于,,如果,则将与放置于同一组并编号;
12、2、同一时钟域的信号放在同一组并编号:给定信号集,对于,,如果,则将与放置于同一组并编号;
13、3、传输到同一目的地的信号放在同一组并编号:给定信号集,对于,,如果且,当不违背条件1和2时,则将与放置于同一组并编号;
14、s500包括:
15、同一端口放置相同时钟域的信号分组:根据系统预设的时钟域数量不超过lvds端口数量,需要满足约束时钟的个数需要端口的数量,k为时钟域的端口数量;
16、相同时钟域可以放在不同的端口。
17、优选地,s600中获取分配后的各fpga间各端口间的主频具体为:
18、;
19、其中,表示默认的时钟频率,m和k为一常数,指的是fpga的器件特性,tdm表示端口的tdm率。
20、优选地,s500还包括:
21、若未达到预设的主频,则返回s300,直至各fpga间各端口的主频达到预设的主频。
22、上述一种仿真主频驱动的信号自动映射方法,基于信号类型对各信号进行分组和分配,完成分配后进行各fpga之间各端口的主频计算,若各fpga之间各端口的主频能达到预设的仿真主频,则获取可行信号引脚映射方案,能够无人工参与实现主频驱动的fpga信号引脚自动化分配。
1.一种仿真主频驱动的信号自动映射方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,s600中获取分配后的各fpga间各端口间的主频具体为:
3.根据权利要求2所述的方法,其特征在于,s500还包括: