- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有通用参数列表的 VHDL 实体。该实体的架构计算了几个常量,这些常量是创建预期功能所必需的。
是否可以从外部访问这些常量之一?
示例 1:
假设有一个 FIFO,它根据 DEPTH 和 OUTREG 决定最佳实现是什么(基于寄存器、基于 SRL 或基于 BlockRAM)。根据这一点,通过 FIFO 的最小延迟可以在 1 到 2 个周期之间变化。
示例 2:
将相同的 FIFO 视为跨时钟兼容。现在最小延迟还取决于选择的同步电路和频率差。
示例 3:
一个划分实体需要N个周期来计算一个div b。 N 取决于 BITS、RADIX、OUTREG、IS_SIGNED、...
进一步假设每个实体都有一个 NATURAL 类型的 MIN_DELAY 常量,它对其他实例很感兴趣。
例如。实例化实体需要知道它至少必须等待结果多长时间。
我可以想到 2 种解决方案,但我认为这两种解决方案都不是很好的解决方案。
解决方案1:
我可以将计算的算法存储在一个包中,以便全局访问。但这违背了封装原则:)。外界只需要知道延迟值而不是算法。
解决方案2:
我可以使用有效位。这在动态、自适应或流水线系统中始终是一个很好的解决方案,但在综合时不能使用该位进行进一步选择或优化。
可能的解决方案 3:
VHDL 具有定义新属性的能力,但可以访问它们吗?
示例实体:alu_div:
constant MIN_DELAY : NATURAL := BITS / log2(RADIX) + 2;
attribute DELAY : NATURAL;
attribute DELAY of alu_div : entity is MIN_DELAY;
mydiv : entity work.alu_div
generic map (....)
port map (....);
blk : block
constant my : NATURAL := mydiv'delay;
begin
....
end block;
alias MY_DELAY is <<constant mydiv.DELAY : NATURAL >>;
Get internal signals of vhdl design in ncvhdl (alternative to modelsim's signal spy)
最佳答案
好问题。我有时也觉得需要“OUT 模式泛型”,其实际值是在体系结构内计算的,再次允许层次结构中的更高级别了解(并调整到)处理单元的管道深度。
可能值得写一份提案以允许 VHDL-201x 中的某些内容并将其提交给 standards group但与此同时,我们必须忍受我们所拥有的。
我通常的解决方案是使用与单位关联的包,同时保存初始常量(而不是通用)和相关数量。这将“封装破坏”限制为那些 use
的编译单元。包装,使它们至少易于识别。
在包中,常量在可能的情况下被延迟,或者无参数(不纯)函数,它们等同于相同的东西。
我还没有探索过的一种可能的方法是实体声明,在 PORT list
之后。 , 也允许零个或多个 entity_delarative_item
s。如果这些可能包含函数声明,那么我们可能会以这种方式返回此类信息。
编辑:大卫指出了一个 LRM 规则 (8.3),它阻止了当前 VHDL 版本的这种方法:该规则的有限放宽可能是“输出模式泛型”的替代方法。
实体声明还可以包括 begin
和一些被动构造 - 例如断言一组泛型和端口宽度是一致的。这样你就必须输入所有必需的值,但至少构建会失败报告错误,例如width
和 depth
不一致。
关于vhdl - 我可以从外部访问实例化实体内部的常量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30564426/
有没有一种方法可以使用标准类型构造函数(例如 int、set、dict、list、tuple 等)以用户定义的方式将用户定义类的实例强制转换为其中一种类型?例如 class Example:
我知道这个问题在Stackoverflow中有很多问题,但是即使有很多答案,这些答案也帮不了我什么,也没有找到答案。 在我的WebAPP中,它可以正常工作,但是当我将其转换为API时,它失败了(主题标
这个问题已经有答案了: Why does the ternary operator unexpectedly cast integers? (3 个回答) 已关闭 9 年前。 最近遇到一个Java的陷
我尝试使用 FirebaseApp.configure() 配置 Firebase,但遇到以下崩溃: *** Terminating app due to uncaught exception 'c
我有一个自连接员工实体类,其中包含与其自身相关的 id、name 和 ref 列。我想创建它的新实例并将其保存到数据库。 首先我创建了一个 Employee 类的实例并将其命名为 manager。然后
我有一个用于添加新公寓的表单,在该表单中我有一个下拉列表,用户可以在其中选择负责的人员。 显然,当您从下拉列表中选择并尝试保存公寓时,我的应用程序认为该人已被修改。它给了我下面的错误,指示我应该首先保
从 Visualforce 页面,我需要检索我们组织的 salesforce 实例的 URL,而不是 Visual Force URL。 例如我需要https://cs1.salesforce.com
我遇到了一些可能的问题答案,但这是关于从 Hibernate 3.4.0GA 升级到 Hibernate 4.1.8 的问题。所以这曾经在以前的版本下工作,我已经四处搜索了为什么它在这个新版本中出现了
似乎一遍又一遍地问这个问题,我仍然找不到解决我问题的答案。我在下面有一个域模型。每个新创建或更新的“安全用户”都需要我确保其具有配置文件,如果没有,则创建一个新的配置文件并分配给它。 配置文件的要求相
我很难调试为什么 JPA 不级联我的 @ManyToMany 关系。我发现的所有答案都与缺少级联语句有关。但我确实拥有它们并且仍然得到: Caused by: org.hibernate.Transi
Play 服务 API 表明有一个叫做 Instance ID 的东西 但是,在 Android Studio 中包含以下内容后,我无法导入 InstanceID 类 compile "com.goo
我正在使用 Seam 框架。我有 2 个实体: 请求.java @Entity @Table(name = "SRV_REQUEST") public class Request { private
This question处理构建一个适当的Monad来自单子(monad)的实例,但仅在某些约束下 - 例如Set .诀窍是将其包装成 ContT ,它将约束推迟到包装/展开其值。 现在我想对 Ap
我正在尝试执行此查询: StringBuffer sb = new StringBuffer(); sb.append("select p from PointsEntity p " + "where
我试图了解是否可以更改我的 hibernate 配置并使用单个 MySQL 实例(而不是我当前拥有的多个 MySQL 实例): 我有一个使用 hibernate 的 Java 应用程序,与 2 个模式
我有一个选项卡滑动布局,其中包括四个选项卡,每个选项卡都有自己的布局和 fragment ,在我的主要 Activity 布局中,viewpager 参与更改选项卡。特定 View (选项卡)在应用程
我看到很多帖子声称他们正在运行 MySql 的 RDS 实例,但无法连接到该实例,但我没有运行 RDS。 我使用 EC2 实例来托管我的 WordPress 博客,该博客是使用 Web 平台安装程序安
因为我在我的 ec-2 实例上的 python 虚拟环境中运行应用程序( Airflow ),并且我想在同一个 ec2 实例上的默认 python 环境中运行命令,所以我认为 ssh 到我自己的实例更
这个问题已经有答案了: How to fix the Hibernate "object references an unsaved transient instance - save the tra
例子: run APP1 .. ... run APP1 ... run APP2 如何在 APP2 中对 Vue 说我需要调用 APP1?
我是一名优秀的程序员,十分优秀!