我正在 Xilinx Platform Studio 中制作一个自定义 IP,我正在尝试将该 IP 导出到 SDK,以便我可以制作 ac 函数,该函数允许我使用基于确定 std_logic_vector 大小的常量值的 for 循环将值输入到寄存器中。我想知道是否可以在 VHDL 中使用一个循环,让我可以选择以我试图在此代码片段中呈现的方式保存从寄存器中的值。我知道这段代码不是一个工作代码,但我试图展示我正在尝试做什么的想法,因为寄存器的信号不是用户生成的。
for i in 0 to nPWM-1 generate
Tduty(i) <= slv_reg(i)(0 to nRes-1);
end generate set_Tduty_values;
通用值 nPWM 指示输出的数量(连接到 Nexys 3 板上的 12 针 Pmod 端口),nRes 是一个变量,指示占空比和延迟的精度作为 std_logic_vector 中的范围。基于通用变量的值,信号 Tduty 和 Tdelay 具有不同的结构,我发布的问题的想法是能够在 C 中输入 Tduty 和 Tdelay 的新值,而不是在 vhdl 中更改代码。