本帖最后由 lichenllin 于 2020-4-2 17:19 编辑
lattice烧录器比较常见的是两种,HW-USBN-2A,也可以叫做ISPDOWN的下载器。速度比较慢。另外一种是HW-USBN-2B,是新推出的烧录器。 lattice官方的下载器说明在 [url=]http://www.latticesemi.com/en/Products/DevelopmentBoardsAndKits/ProgrammingCablesforPCs[/url] 相关下载器对比在 [url=]http://www.latticesemi.com/view_document?document_id=143[/url] Lattice HW-USBN-2B 烧录器是配置和通信所有Lattice 芯片的最新的编程设备。使用Lattice Diamond、iCEcube2或PAC-Designer软件完成设计后,可以生成多种格式的编程文件。然后用Diamond Programmer 直接在板上控制设备的编程。 Lattice HW-USBN-2B 编程电缆编程电缆连接到USB,并使用排线连接器连接到目标板。
线缆为2*7p双排线缆转单端线缆,线缆已经标记了线缆功能类型。
HW-USBN-2B——具有3x-10x速度、I2C支持、改进的iCE编程支持等性能改进。HW-USBN-2B支持核心电压高达5V的栅格器件编程。 这些5V核心家族包括ispLSI 2000E、MACH4和MACH4A5。包含所有的LATTICE的芯片。支持不带JTAG的ICE40 芯片编程。
使用USB2.0,速度最大为480Mb/s.
JTAG速度最大支持30Mb/s. 比上一代的HW-USB-2A,快10倍速。 支持功能如下: 1. 支持最新的windows10 操作系统,能在windows 10 系统无错误运行。 2. 支持JTAG 模式,速度快,调试serdes core,不会像hw-usbn-2a出现错误。 3. 支持spi软件烧录,能操作ice40 芯片烧录。 4. 支持i2c编程,能烧录machxo2,machxo3芯片。i2c通道在usb-1。 5. 支持电压范围是1.8v,2.5,3.3v,5v。 6. 上一代的HW-USB-2A,快10倍速
众所周知,高云 GOWin FPGA 本质就是lattice的成员出来国产FPGA,所以FPGA配置上,都是跟lattice完全类似。所以该下载器完全兼容gowin 高云烧录器。
1. 引脚定义
编程引脚
| 名称
| 编程设备引脚类型
| 描述
| VCC
| 编程电压
| 输入
| 连接VCC到目标设备,典型的ICC=10Ma.板子设计必须考虑VCC的电流供应,但是跟VCCIO是不一样的。
| TDO/SO
| 测试数据输出
| 输入
| IEEE1149.1(JTAG)编程移位数据输出。
| TDI/SI
| 测试数据输入
| 输出
| IEEE1149.1(JTAG)编程移位数据输入
| IspEN/PROG/SN
| 启用
| 输出
| 启用设备进入编程。SN= SSPI 芯片选择
| TRST
| 测试复位
| 输出
| 可选IEEE1149.1 状态机复位
|
| 完成
| 输入
| DONE指示配置的状态
| TMS
| 测试模式选择输入
| 输出
| 用于控制IEEE1149.1状态机
| GND
| 地
| 输入
| 目标的设备的地
| TCK/SCLK
| 测试时钟输入
| 输出
| IEEE1149.1的时钟
| INIT
| 初始化
| 输入
| 指示设备是否准备好配置开始。
| I2C:SCL
| I2C SCL
| 开漏输出
| 提供I2C的SCL
| I2C:SDA
| I2C SDA
| 开漏双向
| 提供I2C的SDA
| 5V OUT
| 5V OUT
| 输出
| 提供IEprogM1050的电源输入
|
注意:第二排,最后一个引脚是没有线缆。
2. JTAG 编程设计
打开diamond programmer。
选择createa new blank project。
选择detect cable
选择通道0.
选择JTAG SCAN按钮,可以扫描到设备。
在operation双击下选择JTAG1532Mode。下面operation选择Fast Program。,选择programmingfile为后缀名bit的文件。
再次选择,设备编程。在output看到编程完成。
3. SPI FLASH 编程
1) 内部nvcm或者内部flash编程。
在operation双击,选择flashprogrammingmode。选择flasherase。Program。verify。选择jed文件,选择ok。
选择,设备编程,完成编程。
2) 外部spiflash编程。
在operation双击选择。SPI FLASH programming。选择operation中spiflasherase,program,verify。,在programmingfile可以选择bit或者msc文件。选择spiflash的型号,看硬件原理图选择厂家,型号。然后确定。
选择,设备编程,完成编程。
4. I2C 编程
Lattice i2c相对比较麻烦的。所以我们要修改lattice的jed的文件。在Programmer 修改jed的feature row参数。
打开文件,并且执行read
就可以看到featurerow参数,首先改I2C Persistence Disable 改成0。
选择save保存到文件上面。选择yes,overwrite。
关闭找个软件。
首先在diamond program中,选择对应的器件。
选择operation双击打开,i2c interface programing,选择i2c program featurerows,设定programming options的files为对应修改的文件。I2cs laveaddress选择默认的 10000地址。
注意选择HW-USBN-2B的FTUSB-1通道,对应I2C的功能。选择编程。弹出成功烧录featurerow性能参数成功窗口。
在operation中双击,在弹出的operation中选择I2C program。选择OK。因为I2C编程很慢,所以需要等很久时间才能完成。
完成后,输出,烧录成功结果。
注意,空白的芯片支持I2C编程,如果flash编程过一次,必须擦除才能用I2C编程。并且必须flash必须编程以后再擦出再有意思,如果多次擦除,I2C会不支持。
|