1. Lattice Diamond 概述

各位同学好,我是老李。在FPGA这行摸爬滚打十几年了,今天咱们来聊聊Lattice Diamond这个工具。说实话,我第一次接触Lattice的芯片,还是十几年前用ispLEVER的时候。那时候界面确实有点...嗯,复古。后来Diamond出来,我第一反应是:终于有个像样的现代IDE了。

1.1 Lattice Semiconductor 公司简介

Lattice Semiconductor(莱迪思半导体)成立于1983年,总部在美国俄勒冈州。这家公司有个特点——专注做低功耗、小封装的FPGA和CPLD。你想想看,在Xilinx和Altera(现Intel)两大巨头夹击下,Lattice能活到现在,而且活得还不错,靠的就是差异化竞争。

我个人习惯把Lattice比作FPGA界的「轻骑兵」。它不跟你拼逻辑资源有多大,也不拼SerDes速率有多高。它拼的是:功耗低、封装小、启动快、价格便宜。我在做便携式设备项目时,经常首选Lattice的方案。

核心定位:低功耗、小尺寸、高性价比的FPGA解决方案提供商。

1.2 Diamond 软件定位与版本历史

Diamond是Lattice官方推出的FPGA开发套件,取代了老旧的ispLEVER。我记得Diamond 1.0刚发布时,界面焕然一新,但bug也不少。经过几个版本的迭代,现在已经相当成熟了。

版本演进大致是这样的:

版本 发布时间 主要变化
Diamond 1.0 2011年 初代版本,全新UI,支持ECP3等
Diamond 2.0 2013年 加入MachXO2支持,优化综合引擎
Diamond 3.0 2015年 支持ECP5,引入Reveal调试器
Diamond 3.10+ 2018年后 持续更新,支持新器件,修复bug

目前最新的稳定版本是3.13或更高。我建议新手直接装最新版,省得折腾。不过要注意,Diamond对操作系统有要求,Windows 10/11 64位是主流选择。

1.3 Diamond vs ispLEVER 对比

很多老工程师还在用ispLEVER,为什么?说白了就是习惯了。但如果你是新入行的,我强烈建议直接上Diamond。为什么?咱们看个对比:

对比项 ispLEVER Diamond
界面风格 老式Windows风格 现代化Ribbon界面
项目管理 较混乱 清晰的项目导航
综合工具 Synplify/LSE LSE(集成)+ Synplify
调试功能 基本逻辑分析 Reveal在线调试
IP核管理 手动添加 IPexpress图形化
时序分析 Timing Analyzer Timing Analysis视图
新器件支持 不支持新器件 支持ECP5、CrossLink等

我曾经在一个维护项目中被迫用ispLEVER,那感觉就像开着老式桑塔纳跑高速——能跑,但浑身不舒服。Diamond的Reveal调试器特别好用,在线抓波形比ispLEVER方便太多了。

避坑指南:如果你还在用ispLEVER做新项目,我建议尽快迁移。Lattice官方已经停止对ispLEVER的更新,新器件都不支持了。别等到项目做一半发现器件不支持,那就尴尬了。

1.4 Diamond 支持的器件家族概览

Diamond支持的器件家族,我按应用场景给你捋一捋:

1.4.1 低功耗系列

  • MachXO3/L:超低功耗CPLD/FPGA,适合胶合逻辑、控制功能。我做过一个电池供电的手持设备,就用MachXO3L,功耗才几十毫瓦。
  • MachXO2:经典款,性价比高。很多工业控制板卡上都能看到它的身影。
  • iCE40 Ultra/UltraPlus:极致低功耗,适合可穿戴设备。这玩意儿小到可以塞进智能戒指里。

1.4.2 主流通用系列

  • ECP5:Lattice的中坚力量。5Gbps SerDes、DDR3接口,做视频处理、通信接口都很合适。我有个项目用ECP5做Camera Link转HDMI,稳得很。
  • ECP3:老将了,性能依然能打。不过新设计建议优先选ECP5。

1.4.3 特殊应用系列

  • CrossLink-NX:针对MIPI接口优化,做摄像头桥接、显示桥接的一把好手。
  • Certus-NX:主打安全性和可靠性,适合汽车电子、工业控制。

注意:不同器件家族使用的Diamond版本可能不同。比如iCE40系列需要安装额外的iCE40插件包。安装Diamond时,记得勾选你需要的器件支持包,别漏了。

下面这张图是我整理的Diamond知识体系,方便你快速建立整体认知:

Lattice Diamond Lattice公司简介 1983年成立,专注低功耗FPGA 差异化竞争:功耗低、封装小 版本历史 1.0(2011)→2.0(2013)→3.0(2015) 当前稳定版:3.13+ vs ispLEVER 现代化UI vs 老式界面 Reveal调试器 vs 基本逻辑分析 支持的器件家族 低功耗系列 MachXO3/L, iCE40 主流通用系列 ECP5, ECP3 特殊应用系列 CrossLink-NX, Certus-NX 其他 MachXO, iCE5等 掌握Diamond = 掌握Lattice全系列FPGA开发

嗯,这张图基本把Diamond的脉络理清了。你想想看,从公司背景到版本历史,再到工具对比和器件支持,其实就一个核心:Diamond是Lattice生态的基石。不管你用哪个系列的芯片,最终都要回到这个工具上来。

我个人觉得,学Diamond最好的方式就是边学边练。下一节咱们就开始动手安装,到时候我会把安装过程中容易踩的坑都告诉你。


公众号:蓝海资料掘金营,微信deep3321