VHDL:正式端口“portName”没有实际值或默认值

2023-12-01

我在实例化 VHDL 模块 PWM 的 VHDL 测试平台上收到编译错误:“正式端口‘Duty_Cycle’没有实际或默认值”。当站在“dev_to_test:PWM”代码行时会看到该错误。在实例化的 PWM 模块中,Duty_Cycle stg_logic_vector 被转换为无符号,然后分配给整数,但不认为这可能会影响端口实例化。 我尝试在端口映射中传递“00001111”向量值,这会导致相同的错误。 请帮忙确定是什么错误。

architecture test of test_pwm is
component PWM
    Generic (
        BIT_DEPTH   : integer;
        INPUT_CLK   : integer; -- 50MHz
        FREQ        : integer); -- 50Hz
    Port (
        Pwm_Out     : out std_logic;
        Duty_Cycle  : in std_logic_vector(BIT_DEPTH - 1 downto 0);
        Clk         : in std_logic;
        Enable      : in std_logic);
end component;

constant BIT_DEPTH  : integer := 8;
constant INPUT_CLK  : integer := 125000000; -- 50MHz
constant FREQ       : integer := 50; -- 50Hz

signal Enable      : std_logic := '0';
signal Duty_Cycle  : std_logic_vector(BIT_DEPTH - 1 downto 0) := "00001111";
signal Clk         : std_logic := '1';
signal Pwm_Out     : std_logic;   


begin
    dev_to_test: PWM
        generic map(BIT_DEPTH,INPUT_CLK,FREQ);
        port map(Pwm_Out,Duty_Cycle,Clk,Enable);

IEEE 标准 1076-2008

11.7 组件实例化语句

component_instantiation_statement ::=
    instantiation_label :
        instantiated_unit
            [ generic_map_aspect ]
            [ port_map_aspect ] ; 

and

generic_map_aspect ::=     
   generic map (generic_association_list ) 

末尾的分号太多了generic map(BIT_DEPTH,INPUT_CLK,FREQ);,因此,它没有看到端口的映射并给您错误。 要解决该错误,只需删除该分号:

dev_to_test: PWM
        generic map(BIT_DEPTH,INPUT_CLK,FREQ)
        port map(Pwm_Out,Duty_Cycle,Clk,Enable);

PS:为了减少设计错误的风险,最好在端口和通用映射中使用命名关联而不是位置关联。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VHDL:正式端口“portName”没有实际值或默认值 的相关文章

  • 整数到字符串在综合中出错(宽度不匹配)

    我正在尝试将整数转换为字符串 使用integer image val 并将其填充或限制为特定长度 我已经制作了这个函数 当我使用时它可以很好地完成工作report陈述并模拟 function integer2string pad val i
  • VHDL:对固定信号值进行零扩展

    如何对固定信号值进行零扩展 我有以下信号 signal shamt std logic vector 4 downto 0 在将其分配给另一个大小为 31 到 0 的变量之前 我必须将 shamt 归零 我有以下代码 但我不确定它是否正确
  • Verilog 奇怪的仿真结果综合后

    我面临一个奇怪的问题 该代码适用于简单的 ALU 仅将感兴趣的代码粘贴到此处 always posedge clk or posedge rst begin if rst 1 begin mul valid shr 3 b000 end e
  • 在VHDL中初始化记录数组

    我有一条记录定义如下 type ifx t is record data std logic vector 127 downto 0 address std logic vector 19 downto 0 WrReq std logic
  • 状态机;为什么只有最后一个状态有效?

    我有一个有 6 个状态 3 个主要状态 的状态机 只有最后一个状态有效 但前 2 个状态无效 共 3 个 只有最后一个状态有效 我发现了问题 当我移除去抖电路时它可以工作 但我需要去抖电路 我从网上得到了去抖电路 如果有人可以提供帮助 我会
  • 在非时钟信号上使用上升沿是不好的做法吗?还有其他选择吗?

    我正在研究 VHDL 设计并且它可以工作 但是代码非常丑陋 而且我似乎正在尝试围绕语言的设计来实现我的目标 这一事实让我觉得有些事情是错误的 我对 VHDL 还很陌生 但我已经研究该项目的较小部分近一个月了 所以我有了总体想法 然而 这部分
  • 将整数转换为 std_logic

    假设你有一个循环 for i in 1 downto 0 loop for j in 1 downto 0 loop tS0 lt i 但我需要将整数 这是自然的 转换为 std logic tS0被声明为 std logic 我只做了一位
  • 有没有办法使用 std textio 在 vhdl 中多次读取文件?

    我试图了解如何在 vhdl 中读取文件 如果我打开一个文件 通读它 测试文件结尾 关闭文件 然后重新打开该文件 然后再次开始读取 它会从开头开始吗 文件 非常感谢 向 VHDL 语言的权威寻求答案 IEEE 标准 1076 2008 5 5
  • Quartus初始化RAM

    我制作了一个实体 其中 quartus 成功识别 RAM 并为其实例化 RAM 宏功能 如果我可以从文件初始化 RAM 那就太好了 我找到了制作此类文件 mif 文件 的教程 现在我已经创建了该文件 我不知道如何让 quartus 初始化该
  • VHDL 中的 BRAM_INIT

    我正在模拟基于处理器的设计 其中程序存储器内容保存在 BRAM 中 我正在使用 VHDL 推断 BRAM 实现程序存储器 我试图避免使用 CoreGen 因为我想保持设计的可移植性 最终该设计将进入 FPGA 我想看看是否有一种方法可以使用
  • ACTIV HDL - VHDL -“信号无法合成,同步描述错误”

    我在 Xilinx 中综合此代码时遇到错误 这个错误是 信号 Z 1 无法合成 同步描述错误 entity uk3 is port rst in BIT C in INTEGER clk in BIT S out INTEGER end u
  • vhdl代码(for循环)

    描述 我想编写 vhdl 代码来查找数组 A 中的最大整数 该数组是一个由 20 个整数组成的数组 问题 我的算法应该是什么样子 以输入顺序语句的位置 我的VHDL代码 highnum for i in 0 to 19 loop i 0 i
  • 如何从 Spartan 6 写入 Nexys 3 FPGA 板上的 Micron 外部蜂窝 RAM?

    我到处都查过了 数据表 Xilinx 网站 digilent 等等 但什么也没找到 我能够使用 Adept 工具来验证我的蜂窝 RAM 是否正常运行 但我找不到任何库存 VHDL 代码作为控制器来写入数据和从中读取数据 帮助 找到了此链接
  • VHDL 计数器错误 (vcom-1576)

    伙计们 我试图用 VHDL 编写一个简单的计数器 但我总是收到此错误 Error C Users usrname dir1 dir2 dir3 counter vhd 22 near rising edge vcom 1576 expect
  • Simulink/HDL Coder 中的反馈循环

    我有一个 Simulink HDL 编码器系统 请参见下图 我有 3 个输出和 3 个输入 我希望我的系统运行 10 次 每次迭代后 它应该选择输出并将它们用作输入 我怎样才能做到这一点 使用存储器和每个信号的初始值块构建一个循环 内存块允
  • FPGA 系统中的同步与异步复位

    我刚开始使用各种不同的模块创建 FPGA 系统来驱动 I2C 总线 尽管我认为这个问题适用于任何 FPGA 系统 并且所有模块都使用同步复位 这些模块使用时钟分频器模块进行计时 该模块获取系统时钟并向系统的其余部分输出较低的频率 我遇到的问
  • VHDL 中的 if 语句

    我有一个关于 VHDL 中 if 语句的问题 请参见下面的示例 signal SEQ bit vector 5 downto 0 signal output bit if SEQ 000001 and CNT RESULT 111111 t
  • 为什么我们在FGPA / VHDL / VIVADO中使用REG?

    我正在使用 Xilinx 的 vivado 在 verilog 中进行编程 我想知道为什么我们使用某些输出reg 例如reg 3 0 encoder output我们使用它是因为我们的 16 到 4 编码器有 4 个输出 对吧 我假设我们使
  • 使用 if 语句更改进程内的信号 - VHDL

    我有这个 VHDL 代码 我想要的是在 sw event 时首先上升 然后 首先自行下降 但当我模拟这个时 首先永远不会跌倒 process rst clk sw begin if clk EVENT and clk 1 then if r
  • 带计数器的无符号加法不起作用

    我正在构建一个计数器 用于计算输入通道的上升沿 我简化了我的设计以包含两种状态 one and two 其中进行计数 由于某种原因 每当我尝试将 1 添加到counter reg 或者尝试为其分配任何数字 信号在 ModelSim 中变为红

随机推荐

  • Passport.js Passport.initialize() 中间件未使用

    我正在使用带有express mongoose的节点 并尝试将passport js与restful api一起使用 身份验证成功后 我不断收到此异常 我在浏览器上看到回调网址 Users naorye dev naorye myproj
  • 永久禁用和隐藏 Android 导航栏/通知菜单

    我正在为一所学校开发一个android应用程序 我希望这个应用程序在打开时能够阻止用户在设备上执行任何操作 除了我在我的应用程序中提供的内容之外 我的意思是做NOTHING别的 所以首先应该禁用并隐藏导航栏 我看到了这个 但它适用于 4 4
  • .NET Framework 术语中的“替换版本”是什么意思?

    维基百科表示 NET Framework 4 7 取代了版本 4 0 4 6 2 这是否意味着我可以在仅安装 NET Framework 4 7 的情况下运行需要 例如 NET Framework 4 0 的程序 这意味着 4 7 是 4
  • 在 Windows 中更改 my.ini 中 MySQL 5.0 的 tmp 文件夹

    我有一个在 Windows 7 上运行的 MySQL 服务器 版本 5 0 67 当我在 Eclipse 中使用 hibernate 时 出现以下错误 引起原因 java sql SQLException 无法创建 写入文件 C Windo
  • 如何在 opencv 中的实时摄像头输入上绘制透明图像

    我需要在实时摄像头画面上绘制透明图像 下面是要显示为覆盖在相机源上的 png 文件 下面是从相机获取帧并将其显示在屏幕上的代码 我也尝试将圆圈绘制为叠加层 但圆圈不透明 我认为下面的代码是错误的或遗漏了一些东西 include opencv
  • Docker-compose scale 命令为新容器创建随机端口

    目前 docker compose scale 命令为新容器创建随机端口 有没有办法为新容器指定端口 In your docker compose yml postgres image postgres 9 5 environment PO
  • 离子存储以异步方式获取值

    我正在尝试在离子存储中获取 2 个值存储 但该值是以异步方式检索的 并且请求是在检索值之前发生的 这里Auth url都在ionic存储中 import Injectable from angular core import Http Re
  • Node.js,厄运金字塔(即使有异步),你能写得更好吗?

    我认为自己是一位非常有经验的 Node js 开发人员 但我仍然想知道是否有更好的方法来编写以下代码 这样我就不会得到厄运金字塔 现在我对你很宽容 我有一些代码可以让我的金字塔高达 20 层 不开玩笑 这就是使用 async js 问题实际
  • Docker-compose - 设置非文字的环境变量

    我已经在 Docker 容器中设置了 Jenkins 并且正在尝试使用该服务器访问我的私有 Bitbucket 存储库 我需要将我的 SSH 密钥复制到该容器中 以便 Bitbucket 识别它 然后我可以让我的 Jenkins 服务器访问
  • 如何在 Mithril 中将字符串转换为 HTML 元素?

    假设我有一个字符串 span class msg Text goes here span 我需要在我的网页中使用这个字符串作为 HTML 元素 关于如何做到这一点有什么想法吗 秘银提供了m trust方法用于此 在视图中需要 HTML 输出
  • 在服务器端对 CellTable 进行排序

    我目前正在使用 Gwt CellTable 通过 RPC 调用绑定到我的 GAE Objectify 后端 现在好了 然后我想对列进行排序 所以我读了http code google com intl it IT webtoolkit do
  • phpinfo(); 和有什么区别?和 php -i?

    在 DDG 上搜索并在这里没有得到任何有趣的结果 我听说它们是不同的 但我想知道是什么让它们不同以及拥有两种不同的配置有什么优势 EDIT 是的 我从 CLI 运行它们 phpinfo 是一个语言函数 无论执行的脚本是通过 Web SAPI
  • driver = webdriver.Chrome() :: 硒方法的问题 - 如何解决

    嗯 我正在尝试找出从clutch io收集数据的最简单方法 我尝试了各种方法从网站 clutch io 收集数据 但似乎都失败了 see here from bs4 import BeautifulSoup from selenium im
  • Offval属性自定义复选框格式化程序jqGrid

    我正在编写一个自定义复选框格式化程序 但我无法理解offval属性的用途以及它的值应该是什么 特别是当设置了 editoptions 的值时 例如editoptions value Yes No 我可以看到默认的复选框格式化程序总是设置of
  • 将需要 IO 的函数映射到列表的更好方法

    所以最近我有一个字符串列表 需要独立地检查每个字符串并执行一些操作IO功能 所以基本上我所拥有的是这样的 goOverList String gt IO goOverList x do putStrLn x goOverList x xs
  • 打印节标题的精灵名称

    我有一个 C 程序 我想在其中打印输入文件的节标题的名称 我所做的一切都是基于研究 ELF 表示法 并帮助解决了互联网上现有的程序 但它仍然不起作用 它只打印 for 循环中的索引 其中也应该是节名称 有人看到我错过的东西吗 更新 我更新了
  • 在 C++11 中实现自定义迭代器

    我正在看书 我开始了模板章节 我已经阅读了有关迭代器的章节 为了练习 我尝试使用模板实现一个双向链接类 下面是我的类的头文件 template
  • 在 ImageView Blackberry 10 中动态设置 imageSource

    请帮助我 我已经坚持了一个多星期了 我正在从我的 cpp 文件中发出带有图像的信号 我需要使用此发出的图像替换我放置在 QMl 的 imageView 中的默认图像 这是我的完整代码 PostHttp hpp Copyright c 201
  • 如何将图标放置在输入字段旁边或内部

    How I can put my icon next to or within the input field The problem is the icon changes the form Usually it s like this
  • VHDL:正式端口“portName”没有实际值或默认值

    我在实例化 VHDL 模块 PWM 的 VHDL 测试平台上收到编译错误 正式端口 Duty Cycle 没有实际或默认值 当站在 dev to test PWM 代码行时会看到该错误 在实例化的 PWM 模块中 Duty Cycle st