ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Lattice Diamond 3.14 安装避坑指南:License申请与环境变量配置详解

Lattice Diamond 3.14 安装避坑指南:License申请与环境变量配置详解 前两天帮一个做硬件的老同学远程装 Lattice Diamond 3.14本来以为半小时就能搞定的事结果从 License 申请到环境变量配置硬生生折腾了两个晚上。中间踩的坑好多都是网上教程根本不会提的。想想这软件虽然不如 Vivado、Quartus 那么大众但用 Lattice 家 FPGA 做项目的工程师其实不少尤其是那些低功耗、小封装的应用场景。今天干脆把整个安装过程里最容易出问题的地方整理成一篇完整的避坑指南从免费 License 申请到环境变量配置每一步都讲清楚为什么这么做以及踩了坑之后怎么排查。先交代一下背景。Lattice Diamond 是莱迪思官方推出的 FPGA 设计套件用来替代早期的 ispLEVER支持他们家主流器件比如 ECP5、CrossLink-NX、MachXO3 这些。3.14 这个版本属于比较经典的稳定版虽然现在官网已经出到更新的版本了但很多项目在用 3.14尤其是老项目维护或者某些国产开发板配套的教程还在用这个版本。这篇文章适合刚接触 Lattice 平台的新手也适合那些装到一半卡住、正在纠结要不要重装系统的朋友。1. 安装前的准备工作1.1 版本选择3.14 还是其他版本先聊一下版本问题。Lattice Diamond 从 3.x 开始界面和底层流程基本定型了3.13、3.14、3.15 这几个版本在核心功能上差异不大。但我个人建议如果你是跟着某块开发板的学习资料走尽量装资料里指定的版本别一上来就装最新版。为什么因为 Lattice 的 IP 核、约束文件、示例工程都有版本兼容性问题资料里用 3.14 建的工程你用 3.15 打开有时候会提示迁移迁移完综合结果可能有细微差别对新手来说这种不确定性很致命。3.14 这个版本我用了两年多稳定性相当不错资源占用也合理Win10 和 Win11 都能跑Win7 也能装但需要额外装一些运行库。如果只是学习或者做中小规模项目3.14 完全够用。还有一点要注意Lattice 官网现在主推的是 Radiant 软件面向 CrossLink-NX、Certus-NX 这些新器件。Diamond 3.14 虽然还在维护期内但新器件支持就别指望了。选版本之前先确认一下自己手头的芯片型号如果是老器件比如 ECP3、MachXO2老老实实用 Diamond如果是新器件直接上 Radiant别在 Diamond 上浪费时间。1.2 操作系统与运行环境检查Diamond 3.14 官方支持 Windows 10 64 位、Windows 7 64 位以及 RedHat Linux 和 CentOS。我实测过 Win10 21H2、Win11 23H2 都能正常装但 Win11 上有个小概率问题安装驱动时会被系统的内存完整性功能拦截导致 USB 下载器驱动装不上这个问题后面专门讲。安装之前先检查几个基础环境.NET Framework 4.6.2 以上一般 Win10 自带Win7 需要手动装。Visual C 2015-2019 Redistributable这个通常装完会自动带上但如果你系统精简过建议提前装一遍。磁盘空间至少留 20GB实际安装完大概 10GB 左右但解压临时文件需要额外空间。关闭杀毒软件和 Windows Defender 的实时防护这个非常重要。Diamond 的安装包里有个 Sentinel 加密狗驱动属于底层驱动类型杀毒软件经常误报安装过程中被拦截会导致 License 工具无法启动。我把安装前要确认的事项整理成了一份清单检查项要求备注操作系统Win10/11 64位Win7 64位Win7 需提前装 .NET磁盘空间20GB 以上临时文件 安装文件内存8GB 以上综合布局布线比较吃内存杀毒软件安装期间关闭Sentinel 驱动误报高发USB 驱动需要安装 FTDI 驱动下载器通信依赖管理员权限必需不推荐用普通用户安装2. 免费 License 申请全流程2.1 Lattice License 的类型与选择逻辑这是整个安装过程中最容易把人逼疯的一步很多人软件装好了结果 License 搞不定软件只能跑半个小时就退出。先搞清楚 Lattice 的 License 机制。Diamond 用的是 Sentinel RMS 许可证系统License 文件分两种节点锁定 License和浮动 License。对于个人学习和大多数公司项目节点锁定就够了它把 License 和电脑硬件绑定一次申请永久使用不需要联网验证。浮动 License 需要服务器支持适合团队协同个人用户基本不用考虑。去官网免费申请的话拿到的就是节点锁定 License有效期通常是一年到期后重新申请就行流程一样不需要付费。网上有些人说 Lattice 不给免费 License 了那是没找对入口。Lattice 官网虽然改版了好几次但免费 License 申请入口一直保留着。顺便说一句网上流传着各种破解版 License和本地 License 生成器这个东西我不太建议用。一是 Lattice 的工具链会校验 License 的签名和授权时间很容易装完跑两天就报错二是作为工程师用盗版 License 做商业项目本身就是给自己埋雷。官方免费 License 申请流程不复杂几分钟的事没必要冒这个风险。2.2 申请步骤详解申请免费 License 的具体步骤如下每一步我都标注了容易出错的地方第一步注册 Lattice 官网账号。访问 Lattice Semiconductor 官网点右上角的登录然后创建账号。注册时要填公司、国家、职位这些信息随意填一般也能过但邮箱必须是真实有效的因为 License 文件是发到邮箱的。第二步进入 License 申请入口。登录后在支持页面里找 Software Licensing 相关入口。官网改版后路径变了可以直接在搜索框输入 License 或者 Free License 搜索。进去后会看到一个表单需要填软件类型、版本号这些。第三步获取主机 ID。这是最关键的一步。节点锁定 License 需要绑定电脑的主机 IDLattice 用的不是网卡 MAC 地址而是通过一个专门的工具来获取。这个工具在安装目录下路径是C:\lscc\diamond\3.14\bin\nt64\getlicenseid.exe运行后会显示一个 8 位或者 16 位的字符串那个就是你的 Host ID。如果你还没装软件可以先装软件再申请 License顺序没关系但一定要用最终安装软件的那台电脑来申请。这里有个细节容易踩坑如果你电脑上有多个网卡尤其是有虚拟机虚拟网卡getlicenseid 工具可能会报错或者显示的 ID 不稳定。遇到这种情况在设备管理器里暂时禁用虚拟网卡重新运行工具拿 ID拿到后可以再启用网卡。License 绑定的是网卡参数所以换了网卡或者主板之后原来的 License 就失效了这是正常的。第四步填表提交。在申请表单里选择产品为 Diamond版本填 3.14然后把你获取到的 Host ID 填进去。注意有些浏览器有兼容性问题表单可能显示不完整建议用 Chrome 的兼容模式或者 Edge 试试。第五步查收邮件。提交后一般几分钟内会收到邮件附件里就是 License.dat 文件。有时候会进垃圾邮件记得翻一下垃圾箱。如果超过半小时没收到重新登录官网看看能不能直接在网页上下载。2.3 License 文件的放置与验证拿到 License.dat 之后不是随便放哪都行的。Diamond 默认会去几个固定路径找 License 文件C:\lscc\diamond\3.14\license\环境变量LM_LICENSE_FILE指定的路径我推荐的做法是直接在 Diamond 安装目录下建一个license文件夹把 License.dat 放进去然后设置环境变量指向这个路径。这样即使以后重装软件只要环境变量保留License 不会丢。验证 License 是否生效可以启动 Diamond打开 Tools - License 菜单看显示的 License 信息是否正确。还有一个更直接的验证方式随便建一个新工程添加器件后跑一遍综合如果不弹 License 错误提示说明一切正常。千万别等整个工程做完了才发现 License 有问题那时候哭都来不及。3. 安装过程避坑3.1 安装包下载与目录选择Diamond 3.14 安装包有大概 2GB 多官网下载通常需要注册登录。下载的时候注意选完整版安装包别选那个只有基本功能的迷你版。有些第三方网站提供的下载链接速度很快但安装包里可能被塞了额外的插件还是建议从官网下载。安装目录的选择上很多人习惯把软件装在 C 盘默认路径这里强烈建议改成别的盘比如 D:\Diamond\3.14。为什么因为这个软件会生成大量临时文件和工程缓存放 C 盘的话系统盘空间会比较吃紧。而且默认路径 C:\lscc\diamond 有时候会和权限设置冲突导致 License 工具无法正常读写文件。安装路径还有一个讲究路径中不要出现空格和中文。不要装在 C:\Program Files 下面虽然现代软件通常能处理带空格的路径但 Lattice 有一些底层脚本是老的 Tcl/Python 写的对路径空格支持不好尤其在做 IP 核生成和仿真时各种莫名其妙的问题都可能跟路径有关。装在D:\lscc\diamond\3.14这种纯英文路径是最稳的。Windows 下安装时还需要注意用户权限问题。如果你用的是 Microsoft 账号登录系统用户名有时候是中文或者用户目录带特殊字符这可能导致安装程序在写某些配置文件时权限不足。建议用本地管理员账户安装或者右键安装包选择以管理员身份运行。安装完成后第一次启动 Diamond 前建议重启一下系统确保驱动加载完整。3.2 安装过程中的关键选项安装向导默认会装很多组件包括 Diamond Programmer、独立综合工具 Synplify Pro 试用版Lattice 定制版、各种 IP 核库、器件支持包等。如果不缺硬盘空间建议全选装上省得以后要用某个功能时发现没装。比较特殊的一个组件是 Sentinel RMS License Server 工具这个一定要装。虽然我们用节点锁定的 License 不需要跑 License Server但 Diamond 的 License 验证机制依赖 Sentinel 驱动不装这个组件会导致软件启动时提示 License 错误。安装过程中还会弹出来一个选项问你要不要安装 USB 下载器驱动也就是 FTDI 的驱动。这个必须勾选否则后面烧录程序时连不上 FPGA。3.14 自带的驱动版本比较老如果你用比较新的开发板建议装完后再从 FTDI 官网下载最新的驱动覆盖一遍。不覆盖也行但偶尔会遇到下载器识别不了的情况。安装过程中还有一个不太起眼的选项是否安装 NDK 和 Tcl 解释器。这个也需要装因为 Diamond 的脚本功能依赖 Tcl很多第三方工具和官方例程会自动调用 Tcl 脚本。如果不装后面跑命令行批处理或者做 Tcl 自动化流程就会报找不到命令的错误。最后提醒一下安装完千万别急着打开软件先做两件事第一重启电脑第二确认 Sentinel 服务已经启动了。Sentinel 服务的启动状态可以通过任务管理器或者服务管理窗口查看服务名通常叫 Sentinel RMS License Manager 或者 Sentinel64。如果服务没启动License 验证就会失败。3.3 驱动的安装与常见冲突Diamond 3.14 安装过程中最容易出问题的就是驱动部分。USB 下载器驱动用的是 FTDI 芯片方案对应 FT245/FT2232 系列芯片驱动加载失败现象就是插入下载器后设备管理器里看到一个黄色感叹号的未知设备。Win10/Win11 系统一般会自动匹配驱动但 Win11 上面有个特殊问题系统默认开启的内存完整性隔离功能会阻止 FTDI 驱动的加载。解决方法是Windows 安全中心 - 设备安全性 - 内核隔离 - 内存完整性把它关掉然后重启。关掉之后可能会收到系统安全提示不用管装完驱动之后可以再开回来。实测关掉内存完整性后FTDI 驱动正常加载Diamond Programmer 能正常识别下载器。还有一类冲突来自其他 FPGA 工具的驱动比如 Xilinx 的 Platform Cable USB 驱动或者 AlteraIntel的 USB Blaster 驱动。这些驱动本身不冲突但它们会修改一些系统级的 DLL 或者环境变量间接影响 Diamond 的驱动加载。如果你电脑上同时装了 Vivado 和 Quartus装完 Diamond 之后最好挨个试一下各自的下载器确保都是正常的。我之前遇到过装完 Vivado 后Lattice 下载器识别不了的情况重装 FTDI 驱动解决了。4. 环境变量配置详解4.1 为什么要手动配置环境变量很多教程里会告诉你装完软件后要配置环境变量但没解释为什么。这里我来说清楚。Diamond 安装程序本身会自动添加一些环境变量比如DIAMOND、LSC_PYTHON_CONVERT_ARGS这些。但LM_LICENSE_FILE这个最关键的环境变量安装程序有时候不会自动加或者指向了一个不存在的路径。环境变量LM_LICENSE_FILE的作用是告诉 Sentinel 驱动去哪找 License 文件。如果没有设置这个变量Diamond 会按照默认路径去找也就是C:\lscc\diamond\3.14\license\这样的路径。如果你把 License 文件放在了非默认位置就必须通过环境变量指定路径否则软件找不到 License。另外如果你同时装了多个 EDA 工具比如 Vivado、Quartus、ModelSim这些软件各自也有 License 系统它们可能会抢占LM_LICENSE_FILE这个变量。有些安装程序会直接把LM_LICENSE_FILE覆盖成自己的路径导致 Diamond 读不到 License。手动配置时最好把多个路径用分号拼接在一起比如LM_LICENSE_FILEC:\lscc\diamond\3.14\license\license.dat;C:\Xilinx\Vivado\2024.1\license\Xilinx.lic这样多个工具的 License 就能共存了。4.2 Windows 环境变量配置步骤Windows 下配置环境变量的步骤很简单但很多人容易在编辑窗口里操作失误。具体步骤第一步打开环境变量编辑器。右键此电脑 - 属性 - 高级系统设置 - 环境变量。也可以按 Win 键直接搜索环境变量。第二步新建或编辑 LM_LICENSE_FILE。在系统变量区域不要选用户变量因为软件服务是以系统权限运行的点新建或者编辑。变量名输入LM_LICENSE_FILE变量值填 License 文件的完整路径。如果你的系统里已经有这个变量了就把路径追加进去中间用英文分号隔开。第三步检查 PATH 变量。在系统变量里找到Path双击编辑确认里面包含了C:\lscc\diamond\3.14\bin\nt64这个路径。如果安装向导已经自动加了就不用动如果没加需要手动添加。这里要特别提醒一个细节修改完环境变量必须重启所有命令行窗口和当前打开的程序。如果你正开着 Diamond 或者 CMD 窗口改了环境变量后它们依然读的是旧值直接报错。最稳妥的做法是改完环境变量后注销或者重启系统彻底让环境变量生效。4.3 多个 License 共存时的注意事项如果你不止用 Lattice 一家 FPGA环境变量的配置就要讲究一点了。我之前遇到过一个经典故障装了 Vivado 后再装 Diamond两个软件的 License 都验证不过去。排查了半天发现是 Vivado 安装程序把LM_LICENSE_FILE指向了 Xilinx 的 License 路径而 Diamond 的 License 验证工具读了 Xilinx 的路径自然找不到有效的 Lattice 授权。解决思路就是我前面说的把多个路径用分号拼起来。但还有一层坑如果某个路径指向的 License 文件不存在或者文件内容损坏可能会拖累整个变量解析过程。建议只把真实存在的 License 文件路径加进去不要留着那些失效的历史路径。还有更复杂的情况有些公司内部用浮动 License服务器上跑的是 Lattice License Server客户端配置LM_LICENSE_FILE时填的是一串portserver格式比如50000192.168.1.100。这种情况下如果公司网络策略限制了对这个端口的访问或者 DNS 解析不了服务器名就会报 License 连接超时。排查的时候可以先 ping 一下服务器地址再用 telnet 测一下端口通不通这点和 Vivado 的浮动 License 排查思路完全一样。接下来补一个场景Linux 环境。CentOS 或 Ubuntu 上装 Diamond 3.14 的朋友配置环境变量需要用 export 命令写进~/.bashrc或者/etc/profile例如export LM_LICENSE_FILE/opt/lscc/diamond/3.14/license/license.dat export PATH$PATH:/opt/lscc/diamond/3.14/bin/lin64Linux 下最容易踩坑的是 License 文件的换行符格式。Windows 下编辑过的文件在 Linux 下面可能因为 CRLF 换行导致 License 验证失败可以用 dos2unix 转换一下。5. 常见问题与排查技巧实录5.1 License 验证失败的完整排查流程这是最高频的问题故障现象五花八门比如启动时弹出 License 错误、综合跑了一半时提示 License expired、Programmer 烧录时报 License 不可用等。处理这类问题我总结了五个检查步骤第一步检查环境变量是否生效。在命令行窗口里输入set LM_LICENSE_FILE看输出路径是否正确。如果输出为空说明环境变量没设置成功。然后手动运行 License 验证工具Diamond 安装目录下有个licenseverify或类似的工具也可以启动 Diamond 后在 Help 菜单里看 License 状态。第二步确认 License 文件内容是否完整。用文本编辑器打开 License.dat检查开头是不是SERVER、VENDOR、FEATURE这些关键字。正常的 Lattice License 文件里面包含 FEATURE 行每行一个功能模块授权。如果文件被临时下载损坏最常见的问题是 WinRAR 解压时警告文件头损坏或者浏览器下载后文件名变成了 .dat.txt 导致路径不对。第三步检查 Sentinel 服务状态。按下 Win R输入services.msc找到 Sentinel RMS License Manager看是否处于正在运行状态。如果服务没启动尝试右键启动如果启动失败通常是 Sentinel 驱动没装好重新安装 Sentinel RMS 组件或者重启系统。第四步确认系统时间。这个坑说出来有点好笑但遇到的人真不少。License 文件和系统时间之间的偏差会被授权系统识别为无效。如果你的电脑时间被改过比如为了某些软件测试改了 BIOS 时间License 就很容易报错。把时间改成自动同步再试试看。第五步看防火墙有没有拦截。节点锁定 License 不需要网络通信一般不受防火墙影响但极少数情况下 Sentinel 驱动会在启动时尝试访问网络做校验。如果防火墙规则比较苛刻临时关掉防火墙试试。如果关掉防火墙问题解决在防火墙里给 Diamond 的安装目录和 Sentinel 相关服务加白名单即可。以上五步走完90% 以上的 License 问题都能定位。剩下的 10% 就是比较奇葩的场景比如主板换网卡导致 Host ID 变了这个只能重新申请 License。5.2 环境变量的常见问题与高频错误环境变量配置这个环节错误类型非常集中。我把常见问题整理成一个速查表方便大家直接对照排查。错误现象可能原因解决办法set 命令看不到变量修改的是用户变量而不是系统变量在系统变量里重新添加License 路径带引号导致解析失败路径中有空格手动加了引号去掉引号用短路径或者 8.3 格式改完变量后软件依然报错修改前已启动的软件进程没有重启重启软件或注销系统LM_LICENSE_FILE被覆盖其他 EDA 工具安装时覆盖了变量编辑变量把多个路径用分号拼接LICENSE 文件找不到路径中夹了版本号目录拼写错误用资源管理器确认完整路径并复制环境变量无法生效编辑窗口没点确定直接关闭点完确定后再重开一次面板确认License 提示端口被占用浮动 License 的端口冲突换一个空闲端口但这种情况较少5.3 安装其他 EDA 工具的冲突问题这里专门说一下 Diamond 和 Vivado 同时使用的场景因为这是很多做 FPGA 开发的人都会碰到的局面。两者同时装在同一台电脑上没有原则性冲突但有几个小细节要注意。第一个是版本问题。Diamond 3.14 自带的 ModelSim 是 Lattice 定制版Vivado 自带的是 Xilinx 定制版 XSim。两个工具可以共存但如果你想把 ModelSim 作为外部仿真器关联到 Vivado 里那就不建议了定制版之间互相不兼容。这个不算什么坑但经常有人问。第二个是下载器驱动问题。Vivado 的安装程序会比较霸道地安装自己的 cable 驱动偶尔会覆盖掉 FTDI 的通用驱动。如果你发现 Diamond Programmer 连不上 Lattice 下载器先别急着怀疑硬件坏了重装一遍 FTDI 驱动大概率就恢复。反过来如果你重装了 FTDI 驱动之后Vivado 又识别不了 Xilinx 下载器了那就再重装一遍 Xilinx Cable 驱动。两个驱动互相覆盖的情况在 Win11 上尤其容易出现。第三个是环境变量污染问题。Vivado 安装程序会在系统里加很多环境变量其中比较重要的有XILINX_VIVADO、XILINXXD等。这些变量本身和 Diamond 无关但有些批处理脚本可能会因为变量冲突而执行失败。比如我遇到过有人的系统里PATH变量包含了一堆重复路径导致 Diamond 启动时找不到某些 DLL报diamond.exe - 系统错误。这时候把PATH清理一遍去掉重复路径问题就好了。5.4 命令行工具与 Tcl 脚本环境Diamond 的很多操作可以在命令行里完成比如逻辑综合、布局布线、比特流生成。对于老手来说命令行模式比图形界面方便得多尤其是要做批处理、日常自动构建的时候。命令行工具位于bin\nt64目录下常用的是pnmainc布局布线命令行程序prj2make工程转 Makefile 工具还有diamondc命令行版完整流程入口。用命令行前同样要保证环境变量配置正确因为命令行工具和图形界面共用同一套 License 验证机制。用 Tcl 脚本控制工具链也是常用玩法。Diamond 支持 Tcl 脚本批处理可以把综合、布局布线、时序分析全部串起来。前提是安装的时候装了 Tcl 解释器组件然后在命令行里先设置好环境变量再启动diamondc在脚本里用project open、pnmainc这些命令驱动整个流程。很多人遇到的问题是明明装好了软件在 CMD 窗口里输入diamondc却提示不是内部或外部命令。这就是环境变量PATH没配好。确认一下PATH里有没有C:\lscc\diamond\3.14\bin\nt64这个路径是命令行工具的所在目录。如果没有手动添加上去就能解决。5.5 安装失败的常见报错与处理安装过程中弹出一堆报错是家常便饭。我把自己安装和帮别人处理遇到的报错信息整理成一份速查表报错信息原因处理办法Installation directory must be on NTFS file system安装在 FAT32 分区上了换到 NTFS 分区安装Error 1925. Insufficient privileges权限不足管理员身份运行安装程序Sentinel Protection Server install failed系统有残留的 Sentinel 服务卸载旧版 Sentinel 后清理注册表再装Cannot find license file lmgr.dll环境变量指向了不存在的路径检查 LM_LICENSE_FILE 路径Feature is not found in licenseLicense 文件里没有对应功能授权重新申请 License确认选择了正确的器件家族License expiredLicense 时间过期重新申请免费 License无法启动此程序因为计算机丢失 FTDI_UR.dllFTDI 驱动未安装或者损坏重新安装 FTDI 驱动或安装包修复Could not start the program because Sentinel64.dll was not foundSentinel 保护驱动未装全重新安装 Sentinel RMS 组件还有一个小概率问题安装程序在解压临时文件时杀毒软件把批量解压出的临时 EXE 给隔离了安装程序瞬间报安装失败。解决方法是安装前完全退出杀毒软件包括 360、腾讯电脑管家这类防护软件以及它们可能常驻的后台进程。关掉之后重新运行安装程序即可。6. 安装之后的初始化设置与实用建议6.1 首次启动的配置项安装完成后首次启动 Diamond有几个配置建议提前做好。第一个是默认工作目录建议不要用默认的C:\Users\用户名\Documents\diamond\3.14这个路径如果用户名是中文一些老的 IP 核生成工具可能会出问题。在 Options 里把默认工程目录改到一个纯英文路径比如D:\FPGA_Projects\Diamond顺便把临时文件目录也指过去。第二个是颜色主题和字体。Diamond 默认的编辑器字体偏小高 DPI 缩放下显示略有模糊。可以在 Tools - Options 里调大字号把界面缩放打开。虽然这不是什么技术问题但天天对着编辑器设置舒服一点能明显提升效率。第三个是 Tcl 控制台的默认路径。打开 Window - Preferences在 Tcl 的相关设置里指定一个固定路径方便后续写脚本时引用工程。这一步算是个小技巧但如果你打算用 Tcl 自动化这个配置能省掉很多麻烦。6.2 工程建立与器件选型新建工程的时候第一次接触 Diamond 的人会对界面比较陌生。File - New - Project然后向导会要求输入工程名字和保存路径。工程名尽量不要用中文有些 IP 核生成工具对非 ASCII 字符支持不好编译的时候报错会让人一头雾水。路径也要纯英文和安装目录同理。器件选型这一步很多人容易选错。3.14 的器件清单里同一个系列可能有十几个型号后缀引脚数量、封装形式、速度等级不同。建议在拿到开发板后先看清楚板上主芯片的完整型号再在向导里选择对应的那一个。选错型号会导致管脚约束时报错甚至布局布线失败。Lattice 的器件命名规则其实挺直观的比如 LCMXO2-1200HC-4TG144C拆开看LCMXO2 是系列1200 是逻辑单元数HC 是低功耗版本4 是速度等级TG144 是封装C 是商业级温度范围。搞清楚这个规则以后选器件会轻松很多。工程建好后在 Project 侧边栏里双击目标器件可以重新选择或者确认。6.3 把旧工程迁移到 3.14 的注意事项如果你手头有旧版本建好的工程文件比如 3.10、3.11 建的导入 3.14 的时候要格外留意。Diamond 在打开旧版本工程时会自动弹出迁移提示你确认后它会改写工程文件结构。这种迁移大部分情况下不会有问题但偶尔会遇到约束文件.ldc里的某些语法与新版本不兼容。我遇到过最多的情况是引脚约束文件里定义了LOCATE COMP物理位置约束语句新版本里要求加BEL或者重新指定引脚名称导致第一个 I/O 分配就报告错误。另一个常见问题是在约束文件里用的FREQUENCY关键字老版本接受一种单位写法新版本要求另一种。遇到这种情况不用慌把报错的那几行单独拿出来对照官方 PDF 手册里 DC 约束章节改一下就好。还有一个更隐蔽的问题旧工程里集成的 IP 核是旧版本生成的。3.14 打开时会弹出一个提示框要求重新生成 IP。如果你直接点跳过后续综合时序分析时可能数据对不上。正确做法是把用到 IP 的模块重新生成一遍确认 IP 版本号和核内的参数没有变化再继续后面的流程。7. 总结一下安装全过程写到这里Lattice Diamond 3.14 安装过程中的主要环节基本都过了一遍。从免费 License 申请到环境变量配置再到各种疑难杂症的排查思路可以说林林总总都覆盖了。整个过程里最让工程师头疼的不是软件本身而是那些零碎的臭虫——License 文件的放置位置、环境变量的覆盖冲突、驱动的互相干扰这些坑后面再踩的时候就知道怎么处理了。最后分享一个我个人的习惯每次装完 EDA 工具都会把 License 文件备份一份到网盘或者内部服务器同时在工程目录里写一篇 README 记录安装版本、License 路径、环境变量设置、首次遇到问题的解决方式。如果开发机哪天真出了事需要重建环境照着这份记录操作一遍就能把环境恢复个八九不离十能省下不少重装排查的工夫。从我这个折腾了一圈的过来人角度看Diamond 3.14 虽然界面朴实、生态相对小众但用起来非常稳定资源占用可控配合 Lattice 的高性价比器件做中小规模的项目完全够格。希望这篇避坑指南能让大家少走点弯路顺利地把环境搭起来把精力花在真正有创造性的逻辑设计上。
返回列表