vhdl相关内容
在此question中,建议我使用现有的库来测试iCE40 Ultra Plus 5k的PLL。 我买了破冰者V1.0e板,看起来是这样的: 外部12 MHz振荡器连接到晶格iCE40UP5k(封装SG48)的35针(标记为绿色)。 引脚35具有功能:IOT_46b_G0,类型:DPIO/GBIN0,并且位于 在银行:0)。 当我搜索我在上面发布的库时,我在第98页上发现了
..
这是我们为类提供的图表: 为什么不在此图中直接使用C4?如果C4是1,那么最后一次添加会导致溢出,这就是我们想知道的。为什么我们需要查看C3? 推荐答案 Overflow flag表示签名操作的溢出情况。 签名操作中需要记住的几点: MSB始终保留表示数字符号 负数表示为2的补码 溢出导致无效操作 Two's complement overflow rule
..
我一直在努力学习如何在VHDL中使用条件信号赋值(我相信哪些是When Else语句?)然后想出了一个应该很简单的代码。但是ModelSim不让它编译,一直告诉我我有一个非法的并发语句。哪里?为什么?我曾尝试在进程内执行If ELSIF Else语句,但仍收到完全相同的错误,因此现在比开始时更困惑. Library ieee; Use ieee.std_logic_1164.all; En
..
..
是否有一个很好的 IDE 可以处理 VHDL 项目?还是大多数专业人士都在使用 emacs/vim/notepad++ ? 解决方案 如果你不介意(或已经爬上)Emacs 的学习曲线,我使用 Emacs+VHDL 模式. 或者,您可以尝试 Sigasi-HDT,它基于 Eclipse 并具有更多 GUI.还有一些看起来更强大的重构工具.
..
我是 Eclipse 的新手,我已经将它用于软件开发和 Nios 处理器的 Altra 环境中.但现在,我有一个相当大的项目需要管理,我想使用 Eclipse 来拥有系统中的所有文件,以便更轻松地管理和更新. 该项目具有用于各种 IP 的多个目录,并具有用于 ASCI、Xilinx 和 Altera FPGA 的多个目标.在不久的将来,该项目将同时支持 NIOS、Microblaze 和 A
..
该算法众所周知,您执行 8 次左移并在每次移位后检查单位,数十位或数百位(每个 4).如果它们高于 4,则将 3 添加到组中,依此类推... 这是一个不工作的基于流程的解决方案.它会编译,但输出不是我想要的.有什么想法可能是什么问题? 图书馆 ieee ;使用 ieee.std_logic_1164.all ;使用 ieee.std_logic_unsigned.all ;实体 hex2b
..
VHDL 中的进程是否可能有两个或多个顺序运行? 如果另一个事件发生(在敏感信号列表上)而进程的顺序执行尚未完成,会发生什么? 是否有可能或者我的VHDL模型是完全错误的? 解决方案 进程运行时不会发生任何事件! 当一个进程被一个事件唤醒时,它运行到完成(“结束进程")或一个明确的“等待"语句,然后进入睡眠状态.从理论上讲,这需要零时间.这意味着如果您的流程中有循环,它们
..
是否有任何可能的方法以以下形式创建 for 循环: for i in 0 to some_var 循环//废话,废话结束循环; 如果没有,有没有其他方法可以创建相同的循环?由于 While 循环允许使用变量作为限制,但它们在我的项目中无法合成. 提前致谢, 博扬·马托夫斯基 解决方案 该变量适用于测试平台应用程序. 对于综合,您可以通过使用静态范围和退出条件来获得相同
..
请注意,这个问题不是关于如何更改下面的代码以使其工作;相反,我正在寻找有关为什么编译器会发现此分配不明确的一些见解: entity assignment_to_aggregates 是结尾;assignment_to_aggregates 的架构示例是类型元音类型是 (a, e, i, o, u);类型辅音类型是 (b, c, d, f, g);类型元音辅音对是记录元音:元音类型;辅音:cons
..
我收到此错误: # Error: COMP96_0100: data_reg.vhd : (156, 35): 端口映射中的实际参数类型与端口形式类型“Allin"不匹配.# Error: COMP96_0100: data_reg.vhd : (158, 1): 端口映射中的实际参数类型与端口形式类型“Fout"不匹配.# Error: COMP96_0100: data_reg.vhd :
..
我的代码在编译时产生以下错误: ERROR:HDLCompiler:439 - “E:/ELECTRONIC ENGINEERING 2/DIGITAL/Resit_Year/Assignment_7_seg/4_Bit_Counter/Bit_Counter/counter_tb.vhd"第 47 行:模式缓冲区的正式端口 count_out 不能与模式输出的实际端口 count_out
..
我解决了之前的错误,但系统不允许我创建一个新问题,这就是我编辑当前问题的原因.现在我在地图中遇到这样的错误: ERROR:MapLib:979 - LUT6 符号“Mmux_ac97_sdata_out22"(输出信号=Mmux_ac97_sdata_out21) 有输入信号“Madd_frame_count_lut"这将被修剪.有关详细信息,请参阅地图报告文件的第 5 部分为什么输入信号将
..
我正在学习 Nexys 4 DDR 的教程,我正在实现一个简单的 MUX 图书馆IEEE;使用 IEEE.STD_LOGIC_1164.ALL;图书馆 UNISIM;使用 UNISIM.VComponents.all;-- 如果使用,取消注释以下库声明-- 带符号或无符号值的算术函数-- 使用 IEEE.NUMERIC_STD.ALL;-- 如果实例化,则取消注释以下库声明-- 此代码中的任何
..
如何从 rom_type 读取数据? 实体 my_rom 是港口(地址:在 std_logic_vector(3 downto 0) 中;数据:输出 std_logic_vector(0 到 7));结束 my_rom;my_rom 的架构 a 是类型 rom_type 是 std_logic_vector(0 到 7) 的数组 (0 到 7);常数 R1_ROM: rom_type :=(-
..
我正在尝试使用结构描述在 VHDL 中设计一个 32 位二进制串行加法器.加法器应使用全加器和 d 锁存器.我的看法是: 全加器: FullAdder 的架构行为是开始s D-Latch: dLatch 的架构行为是开始状态:进程(时钟)开始if(clk'event and clk = '1') thenq 串行加法器: add: process ( clk )变量计数:整数范
..
库 ieee;使用 ieee.std_logic_1164.all;使用 ieee.std_logic_signed.all;实体计数器是端口(CLK,CLR :在 std_logic 中;输出:inout std_logic_vector(3 downto 0));结束计数器;柜台的建筑archi是信号 tmp: std_logic_vector(3 downto 0);开始进程 (CLK,
..
我是 VHDL 的新手,我正在尝试将以下状态机实现到 VHDL(下面提供的状态图)中.当我按下 Basys3 FPGA 板上的按钮(P 输入)时,输出是随机状态.我怀疑这是因为时钟在单次按下期间经历了许多周期,因此从单次按下时接收了 1 个以上的输入,但我不确定.有什么我可以做的来解决这个问题.我希望能够按下按钮 P 并且状态一次改变一个. 图书馆 IEEE;使用 ieee.std_logi
..
我是 VHDL 的新手,正在尝试为可编程 FPGA 制作延迟/门应用程序,延迟和门输出的长度可调.一旦接收到输入信号,事物就应该忽略任何其他输入,直到门信号的生成完成. 我想稍后将此组件用于 8 个不同的输入和 8 个不同的输出,并通过写入寄存器的方式分别为每个设置所需的延迟/门参数. 尝试在 Quartus II v 11.0 中编译时出现此错误: 错误 (10821):clk
..
我确实有以下 vhdl 代码,该代码为 “signal FiltReg" 行提供了错误“表达式不是常量": --文件 A--港口(FindParam : OUT STD_LOGIC_VECTOR(48 DOWNTO 0);...);架构 a 的 b 是信号 MAtaps : STD_LOGIC_VECTOR(4 DOWNTO 0);开始FindParam
..