ASIC中综合ROM的问题
时间:10-02
整理:3721RD
点击:
在做FPGA设计的时候,如果想使用ROM,则可以直接调用ALTERA或者XILINX公司的IP库。但在做ASIC设计的时候,遇到以下三个问题:
1、如果是在做ASIC设计的时候,是不是我就必须首先使用verilog代码书写一个ROM的程序?这样的话DC在做综合的时候会自动识别这是一个ROM吗?我们平时用verilog书写ROM的时候,应当说综合出来的是一个register bank,也就是伪ROM吧。这样的话,DC在综合的时候会自动识别foundry提供的ROM库并调用foundry给的ROM吗?
2、FPGA设计的时候可以对调用的ROM库的深度和长度进行自由选择。但是ASIC设计的时候库是foundry已经提供好了的,这种情况下,会不会出现我没法设计一个ROM的深度长度符合自己要求的。比如说我设计一个64*16的ROM,这种foundry如果没有怎么办?
3、因为我的设计中会出现6次同时对同样存储内容的ROM读取操作,所以所设计的ROM中至少应当有六个地址输入、六个数据输出(都是并行输出的)。这样的ROM设计在ASIC中可以实现吗?(FPGA貌似可以以设计四端口的ROM)
1、如果是在做ASIC设计的时候,是不是我就必须首先使用verilog代码书写一个ROM的程序?这样的话DC在做综合的时候会自动识别这是一个ROM吗?我们平时用verilog书写ROM的时候,应当说综合出来的是一个register bank,也就是伪ROM吧。这样的话,DC在综合的时候会自动识别foundry提供的ROM库并调用foundry给的ROM吗?
2、FPGA设计的时候可以对调用的ROM库的深度和长度进行自由选择。但是ASIC设计的时候库是foundry已经提供好了的,这种情况下,会不会出现我没法设计一个ROM的深度长度符合自己要求的。比如说我设计一个64*16的ROM,这种foundry如果没有怎么办?
3、因为我的设计中会出现6次同时对同样存储内容的ROM读取操作,所以所设计的ROM中至少应当有六个地址输入、六个数据输出(都是并行输出的)。这样的ROM设计在ASIC中可以实现吗?(FPGA貌似可以以设计四端口的ROM)
会有foundry对应的memory compiler工具,根据用户的需求产生各种配置的memory.
能说得具体点吗?我没有听说过专门的memory compiler的工具。比如说我用的是SMIC的库。谢谢咯
我刚搜索了一下,感觉memory compiler就是foundry给综合一个出来。现在我手上有SRAM的一些.db库文件,是不是就意味着我就只能使用这几个.db的文件了呢?
找foundry要他们工艺对应的memory compiler,可以产生memory的.v文件,以及.lib,以及后端工具PR所需要的等文件。
那我自己需要写什么呢?只需要提供ROM的内容就可以了吗?还有就是可以设计6个输入地址,6个输出数据的ROM吗?
