FPGA原型验证系统要尽可能多的复用SoC相关的模块,这样才是复刻SoC原型的意义所在。
通常,许多SoC中设计的方式在FPGA中其实是不能通用的,在SoC设计的顶层,主要包括SoC芯片外设元件和顶层的IO PAD实例。典型的SoC顶层的简化视图如下所示:
为了将这种SoC设计顺利移植到FPGA,我们需要用FPGA中现有的等效物替换图中所示的Chip Support和IO PAD,或者简单地完全移除顶层,并用新的FPGA里面特有的单元顶层封装Design Core。
RTL中的IO PAD实例化的代码在FPGA中是不能被综合的,并且FPGA中其实是不需要再将SoC代码中的IO PAD综合的,因为综合工具根据相关设置能够将相应的SoC的IO映射到FPGA的IO PAD,在大多数情况下只需要做绑定FPGA管脚的配置,并用其FPGA等效实物的可综合模型替换每个SoC的IO PAD实例。
ASIC的工艺厂商威廉希尔官方网站
库中的典型IO焊盘在其边界处可能有20个或更多的连接,包括主输入和输出加上电压和转换控制以及扫描测试。其中一些连接将连接到封装引脚/球,而另一些连接到设计的核心或直接连接到相邻的焊盘。为了进行FPGA原型设计,我们只需要对从设计核心到“外部”世界的逻辑连接进行建模。因此,我们只需要一种更简单的焊盘形式来实现逻辑连接,省略扫描等。我们写一个小RTL文件,该文件适合SoC
RTL中的IO PAD实例化,但包含等效的FPGA子集,这将黑盒PAD实例化转换为FPGA可综合的。尽管SoC中可能有一千多个PAD,但可能只有十种或更多不同类型的PAD。用FPGA等效可综合逻辑代码替换每种类型将相对简单,特别是如果我们的SoC设计在多个项目中使用相同的PAD库,我们可以建立一个小的等效逻辑库。
上图中标记为“Design Support”的块包含设计中通常特定于目标的元素,通常被视为SoC的RTL代码主要功能的次要元素,但对其功能正确至关重要。这可能包括时钟生成和分配、复位控制和同步、电源门控以及测试和调试控制等功能。
一些团队建议简单地用另一个更简单的块替换Design Support块,该块负责FPGA所需的元件。这意味着,实际上我们有一个新的FPGA兼容版本的SoC顶层。SoC的顶层RTL文件可以用作新FPGA顶层的基础,下图中的框图显示了新顶层的示例,可以看到顶层的时钟生成和同步电路图。
支持现有设计核心。等效FPGA芯片支持块的创建是一项相对简单的FPGA设计任务,涉及分频器、时钟缓冲器和同步器,当原型使用多片FPGA时,FPGA时钟网络的使用变得更加复杂。
审核编辑:刘清
-
FPGA
+关注
关注
1628文章
21711浏览量
602749 -
asic
+关注
关注
34文章
1197浏览量
120398 -
SoC设计
+关注
关注
1文章
148浏览量
18774 -
PAD
+关注
关注
1文章
97浏览量
30674 -
RTL
+关注
关注
1文章
385浏览量
59748
原文标题:【芯知识】SoC设计的IO PAD怎么移植到FPGA原型验证
文章出处:【微信号:于博士Jacky,微信公众号:于博士Jacky】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论