问题标签 [lattice-diamond]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
269 浏览

lattice - Lattice Diamond 中的 EBR 块

我有一个 MachXO3 芯片。系列数据表可在此处获得:http ://www.latticesemi.com/~/media/LatticeSemi/Documents/DataSheets/MachXO23/DS1047-MachXO3-Family-Data-Sheet.pdf?document_id=50121

数据表在第 2-10 页上说 EBR 由 9-kbit 组成。但是第 1-2 页上的表 1-1 列出了根本不能被 9 整除的数字……

另外,我有以下代码:

报告说需要 4 EBR。这听起来完全没有优化。这是为什么?如何制作我的 2*(2*128) 字节 = 512 字节 = 4096 位 = 4kbit 的表,它应该保存在 1 个 EBR 中?

0 投票
1 回答
696 浏览

io - FPGA IO configuration: Effect of weak pull up/down on an output

What is the effect of configuring a pull mode on a pin designated as output in the synthesis?

Does the pull mode still take effect?

Is its use only apparent if we set the output to tristate?

See the example below with a Lattice Diamond tool, I am able to configure the pull mode for an output. enter image description here

0 投票
1 回答
305 浏览

ghdl - GHDL、预编译供应商原语和 Cocotb

我有一个使用 Lattice Diamond 生成的 IP 模块的设计。这使用了作为供应商库的 diamond 附带的 Macxo3l 库。

使用 GHDL,我可以使用https://ghdl.readthedocs.io/en/latest/building/PrecompileVendorPrimitives.html中的说明然后是命令来编译包括这个库的设计。

但是我一直无法使用 cocotb 进行编译。下面是我的make文件。我在哪里使用命令 VHDL_SOURCES_Lib,我在https://cocotb.readthedocs.io/en/latest/building.html找到了参考

然而,编译这个给了我错误:

我能够使用 GHDL 运行 cocotb 示例。我应该如何指示 cocotb 包含供应商原始文件。

感谢您提供任何帮助。

0 投票
0 回答
191 浏览

lattice-diamond - Linux 上的 Lattice Diamond v 3.11:ftdio_sio 的问题

在 Linux 上,从 v3.11 开始,如果内核驱动程序 ftdio_sio 已被删除,Lattice Diamond 似乎只能检测到 FTDI 电缆。

在 v3.10 及之前版本,可以使用 udev 规则解除 ftdi tty (ttyUSB*) 的绑定(许多解释如何在 Ubuntu 上安装 Diamond 的博客都提到了这样的过程 -示例),而不必删除 ftdio_sio 驱动程序.

有谁知道自 v3.11 以来无需删除 ftdio_sio 驱动程序即可运行 Lattice 程序员的方法?

0 投票
0 回答
53 浏览

lattice-diamond - Lattice Diamond 中的安全程序功能

我想使用 Lattice FPGA (Machxo3) 中的安全功能,目前卡在安全程序密码功能上。有两种选择:

  1. 安全程序密码密钥
  2. 带锁的安全程序密码钥匙

与莱迪思技术支持的对话让我一无所获。如果任何使用过这些功能的人可以帮助解释这两者之间的区别,我们将不胜感激。

这是他们网站上提供的常见问题解答:http ://www.latticesemi.com/en/Support/AnswerDatabase/5/6/2/5628

我的疑问是,由于密钥存储在功能行中,假设我只使用允许我擦除功能行的安全程序密码密钥,然后我可以擦除使设备再次不受保护的密钥。在与技术支持人员发送了几封电子邮件后,现在他告诉我选项 1 不能保护 UFM,但选项 2 可以;这与常见问题解答所说的完全不同。

如果有人可以提供一些启示,请欣赏它。

0 投票
1 回答
1192 浏览

vhdl - 如何在 FPGA (Lattice MachXO3) 中使用内部振荡器?

我正在尝试为 Lattice MachXO3L 分线板制作 Blink-LED 程序。我相信我已经设置了内部振荡器,我只是不知道如何连接到它的输出并使用它,当我尝试时会出错。这是在具有 LED 和开关的分线板上。当开关单向翻转时,它应该以 1Hz 的频率振荡,而当开关翻转到另一向时,它会关闭。

我已阅读 PLL 使用指南并在互联网上搜索答案。我相信我已经很接近了,并且由于对 VHDL 和 FPGA 不熟悉而陷入了一些语法问题。基本上,我的主要代码是'进程和它下面的所有代码。上面的任何内容基本上都是来自 PLL 使用指南的内容。

如果我尝试分配osc_int给进程的敏感度列表p_1Hz,我会收到一条错误消息,指出我无法从输出中读取。

只是一个旁注,以防其他观众像我一样感到困惑,开车i_clock似乎osc_int不合逻辑,因为它使用的分配似乎暗示发生相反的情况osc_int <= i_clock。如果我错了,请纠正我,但它是将输入分配给输出,这对非 hdl 程序员来说似乎很困惑,因为方向是由输入/输出类型决定的,而不是由赋值运算符本身决定的。

当我这样做(将 i_clk 链接到 osc_int)时,它会保存而不给我错误,直到我尝试合成它说有多个非三态驱动程序的代码i_clock。我可以想象这是真的唯一方法是,如果名为 的“组件”部分中的“端口”OSC被映射到osc_int,会创建两个驱动信号,这两个驱动信号都链接到i_clock该单个osc_int <= i_clock;语句中。但如果这是真的,你将如何访问时钟的输出呢?

如果我只是删除该osc_int <= i_clock语句,它就可以工作,只是 LED 常亮/常灭,而不是振荡/常灭。

0 投票
0 回答
71 浏览

c - 如何使用指针正确访问点阵 MachX02 SRAM 地址

我使用 Lattice Mico8 处理器作为我的 SoC 处理器,以及一个 UART 和一个 SRAM。我正在尝试创建一个软件来与我的 Verilog 代码对话。为此,我使用指针从 UART 获取值,存储在 SRAM 中,然后在硬件中检索。我用地址初始化指针,并根据需要递增。但是,我从 UART 获取的值似乎从未存储在 SRAM 地址中。我什至无法在拿到它后立即将其打印回来,即使我应用了一些延迟。我试图让指针指向另一个变量的地址,这样,我可以在得到它后打印回 UART。我在这里做错了什么吗?或者说SRAM有问题。我在需要帮助的地方发布了一小段代码。

至少我希望将值放在 UART 屏幕上,只是为了知道它在 SRAM 中。我尝试使用 Lattice Reveal System 通过将触发器设置为 SRAM 的 CS 来调试我的代码。那永远不会触发。

0 投票
1 回答
64 浏览

verilog - 如何在 Lattice Diamond Verilog 编译器中使用未绑定的 I/O 单元

只是想在 Lattice Mach XO2 芯片的一些 IO 单元中使用一些延迟功能(延迟、反序列化) - 任何线索如何配置它们?谢谢!!

0 投票
1 回答
100 浏览

vhdl - UART 发送器仅在嵌入式逻辑分析仪运行时起作用

我一直在尝试实现一个 UART,以便在我的 Lattice MachXO3D 板和我的计算机之间进行通信。目前我正在尝试实现来自 FPGA 的传输。

在硬件上进行测试时,我遇到了一个非常奇怪的问题。如果运行正常,它会运行几秒钟,然后突然停止运行(连接到我的电脑的CH340会报告它正在接收包含0x0的消息)。但是,如果我通过 Lattice Diamond 软件将逻辑分析仪嵌入到 FPGA 中,并运行该分析仪,它将在很长一段时间内完美运行。

遗憾的是,我没有逻辑分析仪,因此嵌入式逻辑分析仪是我了解实际传输内容的唯一机会。

这些是与我的实现相关的文件:

波特根

rs232_tx

试验台

编辑 我已经测试了我在网上找到的另一个 UART 设计@ 9600 bps,它以同样的方式失败。它可以向我计算机上的终端发送一个常量字符,在本例中为“a”,然后它突然停止发送任何内容。但是,如果我开始听我在 Lattice Diamond 中生成的软逻辑分析仪,它就可以正常工作并且不会失败。

0 投票
0 回答
72 浏览

vhdl - 在 VHDL [ lattice-diamond] 中添加 USER 库

我在 LSE 的基于 VHDL 的项目中使用 lattice diamond [3.11.2.446]。

问:是否可以包含一个用户库,如果可以,我可以在哪里设置用于搜索它的路径?

使用 my_lib.all

我意识到我可以将我的文件添加到项目中,但这看起来很“粗鲁”,我试图在应用程序代码可重用组件之间保持一点分离

有一个文件 "location.map" ["....\lscc\diamond\3.11_x64\synpbase\lib\vhd2008\location.map" ] 似乎设置库位置,并在开始时声明:

不幸的是,似乎缺少文档[或者更可能我没有在正确的地方寻找]而且我没有运气。

任何建议,将不胜感激..!