Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将VHDL标准逻辑向量初始化为;0001“;_Vhdl_Fpga - Fatal编程技术网

如何将VHDL标准逻辑向量初始化为;0001“;

如何将VHDL标准逻辑向量初始化为;0001“;,vhdl,fpga,Vhdl,Fpga,我想从“0001”而不是“0000”默认值初始化向量,因为我正在执行“自动”4位乘法器,并且(x*0)没有用处,所以 我想跳过“0000”值。 这是我的实体: ENTITY multiplier IS PORT ( clk, rst : IN std_logic; q, r : INOUT std_logic_vector (3 DOWNTO 0) := "0001"; -- this not work f : OUT std_logic_vector(7 DOWNTO

我想从“0001”而不是“0000”默认值初始化向量,因为我正在执行“自动”4位乘法器,并且(x*0)没有用处,所以 我想跳过“0000”值。 这是我的实体:

ENTITY multiplier IS
PORT (
    clk, rst : IN std_logic;
    q, r : INOUT std_logic_vector (3 DOWNTO 0)  := "0001"; -- this not work
    f : OUT std_logic_vector(7 DOWNTO 0)
); 
END multiplier;

使用中间信号

library ieee;
use ieee.std_logic_1164.all;

entity multiplier IS
    port (
        clk : in std_logic;
        rst : in std_logic;
        q : out std_logic_vector(3 downto 0);
        r : out std_logic_vector(3 downto 0);
        f : out std_logic_vector(7 downto 0)
    ); 
end entity;

architecture rtl of multiplier is
    use ieee.numeric_std.all;
    signal q_temp: unsigned(3 downto 0) := "0001"; -- or signed
    signal r_temp: unsigned(3 downto 0) := "0001"; -- or signed
begin
    [...your code...]
    q <= std_logic_vector(q_temp);
    r <= std_logic_vector(r_temp);
end architecture;
ieee库;
使用ieee.std_logic_1164.all;
实体乘数是
港口(
clk:标准逻辑中;
rst:标准逻辑中;
q:输出标准逻辑向量(3到0);
r:输出标准逻辑向量(3到0);
f:输出标准逻辑向量(7到0)
); 
终端实体;
乘法器的rtl体系结构是
使用ieee.numeric_std.all;
信号q_温度:无符号(3到0):=“0001”——或签署
信号r_温度:无符号(3到0):=“0001”——或签署
开始
[…您的代码…]

q使用中间信号

library ieee;
use ieee.std_logic_1164.all;

entity multiplier IS
    port (
        clk : in std_logic;
        rst : in std_logic;
        q : out std_logic_vector(3 downto 0);
        r : out std_logic_vector(3 downto 0);
        f : out std_logic_vector(7 downto 0)
    ); 
end entity;

architecture rtl of multiplier is
    use ieee.numeric_std.all;
    signal q_temp: unsigned(3 downto 0) := "0001"; -- or signed
    signal r_temp: unsigned(3 downto 0) := "0001"; -- or signed
begin
    [...your code...]
    q <= std_logic_vector(q_temp);
    r <= std_logic_vector(r_temp);
end architecture;
ieee库;
使用ieee.std_logic_1164.all;
实体乘数是
港口(
clk:标准逻辑中;
rst:标准逻辑中;
q:输出标准逻辑向量(3到0);
r:输出标准逻辑向量(3到0);
f:输出标准逻辑向量(7到0)
); 
终端实体;
乘法器的rtl体系结构是
使用ieee.numeric_std.all;
信号q_温度:无符号(3到0):=“0001”——或签署
信号r_温度:无符号(3到0):=“0001”——或签署
开始
[…您的代码…]

q“这不起作用”不是特别描述性的(具体的)。不要在此处使用模式
inout
端口。提供一个。如何创建一个从“0001”开始而不是从“0000”开始的计数器?“这不起作用”不是特别描述性的(特定的)。不要在此处使用模式
inout
端口。提供一个。如何创建从“0001”开始而不是从“0000”开始的计数器?