【问题标题】:EBR block in Lattice DiamondLattice Diamond 中的 EBR 块
【发布时间】:2019-04-18 17:35:27
【问题描述】:

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

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

另外,我有以下代码:

reg [7:0] lineB0[1:0][127:0];
reg [7:0] lineB1[1:0][127:0];

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

【问题讨论】:

    标签: lattice lattice-diamond


    【解决方案1】:

    自动推理算法似乎并不总是超级高效。如果资源使用存在问题,我通常会建议使用 IPexpress 创建 RAM 或 ROM。该工具报告 512*8 双流水线内存 (RAM_DP) 的资源使用量为 1 EBR。根据您的 RAM 的组织/应用,在您希望读取 lineB0 和 lineB1 的相同索引的假设下,128*(8+8) 布局可能是一个不错的选择。

    友情提示:过早优化是所有(或至少许多)罪恶的根源。因此,如果 EBR 的内存使用量现在实际上没有限制,那么将您的时间投入到其他主题上可能更值得。

    【讨论】:

    • 我接受您的回答,因为它是唯一提供的。你是莱迪思的一员吗? Diamond 发生的事情真的很奇怪(又名“不合逻辑”和“意外”)。例如, reg [7:0] lineData[5:0][127:0] 合成速度很快,而 reg [7:0] lineData[1279:0] 需要很长时间才能合成 - 它的大小相同。
    • 我与 LatticeSemiconductor 无关,我强烈反对他们的“支持”政策。首先他们将论坛下线并说可以使用票务系统,然后他们关闭了票务系统。如果我有选择(阅读一些具有类似功能的替代组件),我早就换了。他们的软件有很多怪癖。例如。如果 I2C 配置模块不需要 Wishbone,但未选择“启用 Wishbone”,IPExpress 将创建一个非功能性 I2C 模块。一年后,他们设法修复了它(即在模块创建中更改了一行)。
    • 说他们的(硬件)产品非常棒,恕我直言。你放在那里的行数据数组相当大。那是你的用例吗?很抱歉,我无法为您的问题提供比“解决它”建议更方便的答案。
    • 论坛会非常有用,因为它们是专门针对该平台的问题/答案/提示。我知道机票。尽管如此,它仍然是一个有趣的硬件。具有相似成本/封装/性能的替代硬件有哪些? (我没有找到任何低成本和小包装)
    • 您可以查看 IGLOO 系列,看起来英特尔发布了一个名为 MAX 10 的系列。老实说,以前从未听说过它们,但通过 digikey 搜索找到了它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-02
    • 1970-01-01
    相关资源
    最近更新 更多