0 / 0 / 0
Регистрация: 29.04.2021
Сообщений: 2
1

Красные строки

17.05.2023, 13:15. Показов 113. Ответов 0
Метки vhdl (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую. При написании кода возникли проблемы (в некоторых моментах пользовался нейросетью). VHDL подписывает красным следующие строки.

Общий код:
library ieee;

entity distribution_estimator is
generic (
N : integer := 1024; -- размер буфера
K : integer := 256; -- число ядерных функций
M : integer := 16; -- разрядность порта F
L : integer := 8 -- разрядность порта addr
);
port (
clk : in std_logic; -- тактирующий сигнал
reset : in std_logic; -- сигнал сброса
start : in std_logic; -- сигнал запуска расчета
F : in std_logic_vector(15 downto 0); -- порт для входных данных
F_rdy : out std_logic; -- сигнал готовности данных на порте F
addr : out std_logic_vector(L-1 downto 0) -- порт для отслеживания текущего номера отсчета функции распределения на выходе модуля
);
end entity distribution_estimator;

architecture rtl of distribution_estimator is
type buffer_t is array(0 to N-1) of signed(15 downto 0);
signal buf : buffer_t:= (others => (others => '0'));
signal kernel : std_logic_vector(K-1 downto 0);
signal pdf : std_logic_vector(K-1 downto 0);
signal cdf : std_logic_vector(K-1 downto 0);
signal sum : signed(31 downto 0);
signal count : unsigned(L-1 downto 0) := (others => '0');
begin

-- Генерация ядерных функций
process (reset)
begin
if reset = '1' then
kernel <= (others => (others => '0'));
else
for i in 0 to K-1 loop
kernel(i) <= std_logic_vector(to_signed(i-K/2, 8));
end loop;
end if;
end process;

-- Расчет оценки плотности распределения и функции распределения
process (clk)
variable pdf_i, cdf_i : signed(31 downto 0);
begin
if rising_edge(clk) then
if start = '1' then
-- Чтение новых отсчетов сигнала в буфер
buf <= buf(N-1 downto 1) & signed(resize(unsigned(F), 16));
count <= count + 1;
addr <= std_logic_vector(count);

-- Расчет функции распределения
sum <= (others => '0');
for i in 0 to K-1 loop
sum <= sum + signed(kernel(i));
cdf_i := sum / to_signed(N, 32);
cdf(i) <= std_logic_vector(cdf_i(31 downto 0));
end loop;
F_rdy <= '1';
else
F_rdy <= '0';
end if;
end if;
end process;

end architecture rtl;

Строки kernel <= (others => (others => '0')); kernel(i) <= std_logic_vector(to_signed(i-K/2, 8)); sum <= sum + signed(kernel(i)); и cdf(i) <= std_logic_vector(cdf_i(31 downto 0)); выделяет красным.
Сам в VHDL новичек. Буду благодарен за помощь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.05.2023, 13:15
Ответы с готовыми решениями:

Синие и красные. Символьные строки
Привет,не могу решить) Или хотя бы просто понять) Дана цепочка, состоящая из синих (B) и...

Синие и красные
Синие и красные Дана цепочка, состоящая из синих (B) и красных (R) точек. Нужно удалить наименьшее...

Красные полосы
Помогите подалуйста, раньше все хорошо было и провода меняла, и тут просто после последнего...

красные выделения
Помогите убрать красные выделения во всех увидамлениях виндовс 7

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.05.2023, 13:15
Помогаю со студенческими работами здесь

Синие и красные
Вот условие задачи: Дана цепочка, состоящая из синих (B) и красных (R) точек. Нужно удалить...

Синие и Красные
Дана цепочка, состоящая из синих (B) и красных (R) точек. Нужно удалить наименьшее одинаковое...

Красные глаза
не в тему ну плакал Белый снег сияет светом, Красные глаза, Осень повернётся летом, Красные...

Красные точки
Добрый день. Такая проблема. На серых тонах появляются красные мерцающие точки. Так же в играх...

Синие и красные
Условие: Дана цепочка, состоящая из синих (B) и красных (R) точек. Нужно удалить наименьшее...

Красные глаза
Что делать, красные глаза когда сижу за компом. Может есть капли, мазь или чточ либо. Посоветуйте...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru