当soc的规模在一片fpga中装不下的时候,我们通常选择多片fpga原型验证的平台来承载整个soc系统。而多片fpga系统的一个最重要的痛点就是如何将这些soc的逻辑功能原型正确的移植到多片fpga中。
通常,如果选择了商业的fpga原型验证供应商,而不自己做多片的平台,那么供应商都会提供一个辅助分割的自动分割工具,自动分割工具的最终目标与我们工程师的工作目标相同,即最小化fpga之间的io连接并平衡fpga内部的资源利用率,但值得重视是,自动分割工具不具备在找到最佳解决方案替代经验丰富的原型的能力,或许当下ai技术是一种可以尝试的方向。然而,自动分割工具一般具备的是尝试很多策略,直到成功。理想的组合可能是使用我们的技能和知识分配一组初始块,然后让自动工具完成其余部分。
对于用户而言,当然是希望一键成功,按一个按钮,或者执行一段脚本,啥也不用做就能完成原型移植工作,而实际上,工程师需要指导工具做的更好更合理。以下是一些需要工程师手动完成的任务,以帮助自动分区更加合理:
将需要连接到非fpga资源(例如,存储器或外部接口)的引脚分组在一起。如果没有将引脚保持在一起的约束条件,分割工具可以将引脚分割到所有fpga上。这是一个很关键的问题,因为像存储器这样的典型外部资源通常只连接到一个fpga,因为假如分布到多个fpga,那么数据在存取的时候就存在跨fpga的操作,会大大降低平台效率,并且这样的分割显然不合理。
限制每个fpga器件的资源使用:自动分区器可能具有默认值,但在任何情况下,fpga内部的可用资源(门、逻辑、内存)都应限制在50%到70%之间,这样对于布局布线而言压力会小很多,也就是说布局布线的成功率会提升。
填充黑盒(black box)或手动分配资源数量,以便即使是黑盒也具有一定的大小,然后分割软件将为该黑盒保留空间。自动分割工具无法拆分黑盒。
手动分配时钟和复位:就像我们手动分区一样,时钟、复位和启动等特殊组件应该复制到所有fpga中,这通常必须手动完成。
将模块尽量分组在一起以获得最高性能:这里的一个示例是手动划分块,这些块应该留在一个fpga中以获得最高的性能。
允许自动分割器执行复用:结果的质量因工具而异,但在需要io复用的设计中,自动分割工具可能能够找到一种解决方案,该解决方案允许较低的复用率,从而提高系统性能。
不同的fpga原型验证平台供应商通常都会提供自动分割工具,每个工具都有不同的方法。然而,我们不能将这些工具视为一键解决所有问题或者自动实现最佳解决方案。唯一接近此按钮理想状态的分区工具旨在快速通过、低利用率和低性能结果,最适合模拟器平台。对于基于fpga的原型设计而言,性能是我们的主要目标,这种完全自动化的分区是不可行的,对我们工程师来说,始终参与这个过程是必要的,也是有益的。或许ai技术的引入,会使自动分割工具越来越智能,甚至有一天会超越人工手动分割。
人体芯片技术具有先天优势,因此拥有不可小觑的市场前景
LIFAair受邀参加《生物气溶胶歼灭者》行业研讨会,为大众每一次呼吸负责
烟气Modbus数据转IEC104规约对接电业局平台,实时监测报警
苹果与宝马合作开发iPhone和手表的数字钥匙
晶闸管和二极管的区别
正确认识原型验证多片FPGA自动分割工具
74hc164驱动数码管电路,8位LED显示器电路
英飞凌推出新一代多模HSPA+射频收发器SMARTiTM U
联发科向美国申请给华为供货
通过利用工业以太网实现袋式除尘器电气控制系统的设计
关于FPGA的功耗评估需要知道些什么
纳芯微推出集成限流功能的四通道/八通道数字输入(DI)隔离器NSi860x
防水USBType-C连接器的设计要求
史上最全电路图详解
手机PCB的屏蔽罩
哪些应用将影响到数据存储产业的发展走势
特斯拉皮卡受警方青睐,墨西哥市长决定购买15辆改装成警车
快商通即将将亮相此次2019华为全球金融峰会
美议员呼吁对中芯国际实施更严格的限制
低功耗高PF隔离无频闪(PWM转模拟调光)WIFI调光方案