FPGA 设计篇(06-04)量产项目中 ASIC 转 FPGA 的工作内容

本文介绍了在芯片原厂的量产项目中,FPGA工程师如何处理ASIC转FPGA的工作,包括模拟部分转换、电源时钟管理、特殊设计、时序约束调整以及FPGA特有的调试手段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

芯片原厂必学课程 - 第六篇章 - FPGA 设计篇

06-04 量产项目中 ASIC 转 FPGA 的工作内容

新芯设计:专注,积累,探索,挑战

🌏 一、引言

  对于量产项目中,FPGA 开发是单独划分成了一条支线的,由专门的 FPGA 工程师来维护,部分芯片原厂的 FPGA 工程师和数字 IC 设计工程师可能是同一个人,因此,熟悉量产项目中 ASIC 转 FPGA 的工作内容,对于成为一名高级数字 IC 设计工程师是必不可少的一个技能树分支

  NOTES:本文来自《芯片原厂必学课程 - 第六篇章 - FPGA 设计篇》技术专栏


🌏 二、正文

  ✅ ASIC 的模拟部分、PLL 晶振部分、存储部分、DFT 部分、GPIO 部分、外围 PAD 部分等等都是无法直接在 FPGA 上实现的,需要进行同等功能的 ASIC 到 FPGA 的转换,才能够达到原型验证的目的,如下所示,这是 FPGA SRAM 的标准写法,直接替代了 ASIC 上的 MEMORY 单元

module aiip_sram #(
    parameter ADDR_WIDTH =       32         ,
              DATA_WIDTH =       1
)(
    input  wire                  sram_clk   ,
    input  wire                  sram_cs    ,
    input  wire                  sram_wen   ,
    input  wire [ADDR_WIDTH-1:0] sram_addr  ,
    input  wire [DATA_WIDTH-1:0] sram_wdata ,
`ifndef SRAM_READ_SYNC
    output wire [DATA_WIDTH-1:0] sram_rdata
`else
    output reg  [DATA_WIDTH-1:0] sram_rdata
`endif
);

parameter UDLY       = 1            ;
parameter DATA_DEPTH = 2**ADDR_WIDTH;

reg [DATA_WIDTH-1:0] mem [8192-1:0] /* synthesis ramstyle = "no_rw_check" */ ;

always @(posedge sram_clk) begin
    if(sram_wen && sram_cs)
        mem[sram_addr] <= #UDLY sram_wdata;
`ifdef SRAM_READ_SYNC
    else if(!sram_wen && sram_cs)
        sram_rdata     <= #UDLY mem[sram_addr];
`endif
end

`ifndef SRAM_READ_SYNC
assign sram_rdata = mem[sram_addr];
`endif

endmodule

  ✅ ASIC 的电源域、时钟开关、时钟切换、复位顺序等流程都是较为复杂的,到了 FPGA 直接就是简单的全部上电、时钟直连、单一复位等等,重点不在于验证电源时钟复位,当然,可能想要验也验不了

  ✅ ASIC 在 FPGA 上实在无法实现的部分需要特殊处理,可以是绕过验证或者是基于 FPGA 的额外设计,例如 FPGA 的 MIG DDR 控制器可以暂时替代 ASIC 来直接满足 FPGA 验证需求

06-04-01 FPGA SoC 架构设计中的 MIG DDR 控制器

  ✅ 存在一些 FPGA 专用寄存器或者总线转换桥,可以提供给验证者较大的灵活性测试,而不需要考虑 PPA 相关的

  ✅ 由于时钟通路和部分电路逻辑发现了变化,FPGA 需要基于 ASIC 重新输出一版详细的时序约束,保证上板之后电路能够正常稳定地工作

  ✅ FPGA 需要基于特定的 FPGA 开发板来手动约束引脚,这取决于板子的引脚位置和数量,具有较大的灵活性,对于 ASIC 是直接通过版图和封装的方式,无法更改

  ✅ FPGA 可以添加相关的内部信号来直接 DEBUG,例如 ILA 或者 STP,具备良好的可观测性,对于 ASIC 只能通过物理 IO PAD 引脚和示波器,非常有限

06-04-02 XILINX VIVADO ILA

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新芯设计

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值