Извините, это может быть очень простой вопрос.Но я не мог найти никакого решения на линии и вне ее.Я использую версию vivado 2013.4 для своих задач.Вот мой код.
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.math_real.all;
use IEEE.NUMERIC_STD.ALL;
package my_package is
type my_datatype is
record
n1 : real ;
n2 : unsigned(31 downto 0);
n3 : unsigned(31 downto 0);
n4 : unsigned(31 downto 0);
nE : integer;
end record;
end my_package;
use work.my_package.all;
entity read_mydata is
Port (a_in : inout my_datatype ; b_out : out my_datatype );
end read_mydata;
architecture Behavioral of read_mydata is
begin
b_out <= (abs(a_in.n1), a_in.n2, a_in.n3, a_in.n4, abs(a_in.nE));
end Behavioral;
Код не имеет видимой ошибки.У меня вопрос, как заставить вход в симуляторе?Я попытался заставить a_in, используя разделитель запятой и точки с запятой.Там была ошибка.Например, в консоли Tcl,
add_force {/read_file/a_in} -radix bin {2.5, 5, 4, 3, -2 0ns}
ERROR: [#UNDEF] Time value 5, is not a valid number
Может ли эта программа быть синтезируемой?