You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Lattice Radiant中使用PLL时布局布线报错的问题求助

ICE40UP5K Place&Route ERROR <60001149>排查方案

1. 引脚分配合法性检查

ICE40UP5K的PLL模块要求输入时钟必须连接到专用时钟输入引脚(CLK0/CLK1),否则工具无法完成PLL的布线绑定:

  • 确认Upduino v3.1引脚20是否为ICE40UP5K的CLK1专用时钟引脚:查阅官方引脚定义,该引脚确实对应CLK1,但需确保硬件上未被复用为普通GPIO。
  • 检查outclock引脚10:PLL输出可分配到普通引脚,但需确认该引脚无资源冲突,且电平标准匹配Upduino的3.3V规格。
  • clockreset引脚6:复位引脚无特殊限制,但需确保硬件上有稳定的电平(如上拉到高电平),避免复位信号波动。

2. PLL IP配置与代码例化检查

  • 验证IP向导生成的PLL参数是否符合ICE40UP5K规格:输入时钟频率需在10-50MHz范围内,输出时钟频率不得超出PLL的输出上限,参数越界会导致布线失败。
  • 检查VHDL代码中PLL例化的完整性:确保所有必要端口(如lock信号)正确连接,未使用的端口可设为open,禁止悬空:
pll_inst : pll_ip
port map (
    inclock     => inclock,
    clockreset  => clockreset,
    outclock    => outclock,
    lock        => open  -- 未使用时设为open避免工具报错
);

3. 时钟约束文件补充

必须在.sdc约束文件中添加输入时钟约束,否则工具无法正确分析PLL时钟树:

-- 假设输入时钟为50MHz,周期20ns
create_clock -name inclock -period 20 [get_ports inclock]

若PLL输出时钟有特定分频/倍频要求,需添加生成时钟约束:

create_generated_clock -name outclock -source [get_ports inclock] -divide_by 2 [get_ports outclock]

4. 工具流程与日志排查

  • 清理工程目录下的synth_1、map_1、par_1等中间文件夹,重新执行综合、映射、布线流程,避免缓存文件引发异常。
  • 开启Radiant的详细日志输出(设置中勾选Enable Detailed Logs),重新运行布线,从.par日志中定位具体冲突点(如引脚绑定失败、资源不足等)。

内容的提问来源于stack exchange,提问作者gus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 07:53:05