|
Модераторы: Mazzi |
|
SantFather |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 13.5.2014 Репутация: нет Всего: нет |
library IEEE;
use IEEE.STD_LOGIC_1164.ALL; entity float_to_int is port( clk : in std_logic; in_port: in std_logic_vector(31 downto 0); out_port: out std_logic_vector(31 downto 0) ); end entity float_to_int; architecture Behavioral of float_to_int is signal MA:std_logic_vector(22 downto 0); signal PA:std_logic_vector(7 downto 0); signal ZN:std_logic; signal ZeroP:std_logic; begin ZeroP <= PA(0) or PA(1) or PA(2) or PA(3) or PA(4) or PA(5) or PA(6) or PA(7); process (in_port,clk,PA) begin MA(22 downto 0)<= in_port(22 downto 0); PA(7 downto 0)<= in_port(30 downto 23); ZN<= in_port(31); if((clk'event)and (clk='1')) then while (ZeroP='1') loop PA(7 downto 0) <= (others=>'0'); end loop; end if; end process; end Behavioral; Почему не получается обнулить PA в цикле? Возможно я не так понимаю суть процесса, ведь по идее команды в процессе выполняются последовательно. |
|||
|
||||
tzirechnoy |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: нет Всего: 16 |
Так он от PA зависит -- потому сразу и ещё раз выполняется. clk'event у нас ужэ не будет, потому PA опять станет in_port.
|
|||
|
||||
SantFather |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 13.5.2014 Репутация: нет Всего: нет |
Убрал РА из списка чувствительности, ничего не изменилось. Нашел тут в книге одной, что значения регистрам из процесса передаются не сразу, а выставляются по окончании процесса.
|
|||
|
||||
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Разное (электроника) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |