文章目录
- Diamond的使用教程
- 界面
- 器件查看与更改
- 管脚分配
- RTL分析图查看
- 第三方工具
- 关联Notepad++
- 问题与解决
- 管脚被分类到unconnected,导致无法分配管脚
Diamond的使用教程
【Lattice FPGA 开发】Diamond的工程建立、文件输入、ip核配置、管脚配置、综合及布线以及下载程序
【Lattice FPGA 开发】Modelsim与Diamond联合仿真
【Lattice FPGA 开发】IP核的调用
【Lattice FPGA 开发】在线调试助手Reveal使用
界面
器件查看与更改
器件处双击或右键编辑进行器件选择。
管脚分配
Spreadsheet View中的Port Assignments。
RTL分析图查看
点击Netlist Analyzer图标(1)后得到RTL分析电路图(2),在电路图中双击模块可以跳转到TOP模块的对应例化模块(3)。
在RTL分析电路图中左键点击模块后右键会出现一系列选项,可以有助于我们更好的观察模块结构和数据流向。如选择Dissolve Instances可以打开看到该模块中例化的子模块。
第三方工具
关联Notepad++
点击Tools->Options->File Associations->v文件设置<Add Program…>,填写Notepad++的地址。
问题与解决
管脚被分类到unconnected,导致无法分配管脚
在 Diamond 软件中经过综合后在Spreadsheet View中进行管脚分配时定义的引脚被分配到unconnected,导致无法配置管脚。其原因在于在代码中该信号未使用导致被仿真综合优化。如下图效果:
解决办法:在端口定义后加上以下代码防止被优化。
/* synthesis syn_force_pads = 1 */
例如加上后代码为:
input spi_flash_miso /* synthesis syn_force_pads = 1 */,
重新综合后可以看到信号被分类到input中,此时便可以正常进行管脚分配: