picman
Участник-
Постов
70 -
Зарегистрирован
-
Посещение
Репутация
0 ОбычныйИнформация о picman
-
Звание
Участник
- День рождения 22.03.1977
Контакты
-
Сайт
Array
-
ICQ
Array
Информация
-
Город
Array
-
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
Спасибо. -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
Подскажите пожалуйста где почитать про конфигурирование внутреннего озу циклонов, как это делать на практике или как это описывается на VHDL (если конфигурация описывается)...Что то по поиску и по гуглу ну ни чего не нашел... ;) -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
аа, понял. не тут как раз цель выяснить чему равен номер бита с 1, когда все последующие равны 0 правее его... -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
гы, почему? if (count(0) = '1') then mux <= "111"; elsif (count(1) = '1') then mux <= "110"; elsif (count(2) = '1') then mux <= "101"; elsif (count(3) = '1') then mux <= "100"; elsif (count(4) = '1') then mux <= "011"; elsif (count(5) = '1') then mux <= "010"; elsif (count(6) = '1') then mux <= "001"; elsif (count(7) = '1') then mux <= "000"; end if; вроде бы все окей работает! может чего не доглядел??? -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
спасибо, я немного по другому решил: if (count(0) = '1') then mux <= "111"; elsif (count(1) = '1') then mux <= "110"; и т.д. -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
:smile3046: спасибо, уже решил проблему. я пока с типами этими путаюсь ё маё... -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
Немного изучил и почитал, экспериментирую дальше... Возник вопрос как на VHDL сделать маневр как в программировании, а именно: "погасить" ненужные биты в переменной чтобы сравнить ее с константой? вот кусочек примера как я думал сделать, но не тут то было... :rolleyes: architecture pwcex_arch of pwcex is signal count: std_logic_vector(7 downto 0); --счетчик импульсов signal mux: std_logic_vector(2 downto 0); --код для выбора бита begin process (count) begin if count = "00000000" then count <= "00000001"; elsif (count and 1) then <--------- вот это! mux <= "111"; elsif (count and 2) then <--------- вот это! mux <= "110"; end if; end process; end pwcex_arch; ошибку выдает ессно что не может быть булевым объектом count. есть ли в синтаксисе нечто вроде "неопределенного" значения например так process (count) begin if count = "00000000" then count <= "00000001"; elsif (count = "xxxxxxx1") then <--------- вот это! mux <= "111"; elsif (count = "xxxxxx10") then <--------- вот это! mux <= "110"; end if; end process; -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
Ладно, спасибо и на этом... -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
скачал и сейчас открыт у меня... может просто еще не нашел такое? :rolleyes: просто с англицким не сильно, поэтому медленно. -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
Вот попробовал так: library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; use ieee.std_logic_unsigned.all; entity pwcex is port( res: in std_logic; clock: in std_logic; del_1: out std_logic_vector(1 downto 0) ); end pwcex; architecture pwcex_arch of pwcex is signal del: std_logic_vector(1 downto 0); begin A: process(clock,res) begin if (res'event and res='1') then del <= "00"; elsif res='0' then del <= "00"; elsif (clock'event and clock='0') then del <= del + 1; end if; end process; del_1 <= del; end pwcex_arch; выдает: Error (10820): Netlist error at pwcex.vhd(22): can't infer register for del[0] because its behavior depends on the edges of multiple distinct clocks Info (10041): Inferred latch for "del[0]" at pwcex.vhd(20) Error (10820): Netlist error at pwcex.vhd(22): can't infer register for del[1] because its behavior depends on the edges of multiple distinct clocks Info (10041): Inferred latch for "del[1]" at pwcex.vhd(20) Error (10822): HDL error at pwcex.vhd(22): couldn't implement registers for assignments on this clock edge Error (10822): HDL error at pwcex.vhd(26): couldn't implement registers for assignments on this clock edge Error: Can't elaborate top-level user hierarchy Error: Quartus II Analysis & Synthesis was unsuccessful. 5 errors, 0 warnings Info: Allocated 154 megabytes of memory during processing Error: Processing ended: Sun Jun 14 21:01:45 2009 Error: Elapsed time: 00:00:03 Error: Quartus II Full Compilation was unsuccessful. 5 errors, 0 warnings как мне можно выйти из процесса досрочно, чтобы не проверялось событие clock'event если выполнилось хоть одно из предыдущих событий? -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
не под всеми моими сообщениями есть эта кнопочка... :laughing: -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
ааа, спасибо и прошу прощения. я то думаю, почему у меня в окне смотрится с отступами, а в форуме уже в 1 колонку. :rolleyes: цель: хочу попробовать сделать сброс асинхронный, не зависящий ни от каких сигналов, чтобы по нему сразу же все обнулялось... так а что у меня не так в последнем примере? (к сожалению не могу изменить его, я бы и его отредактировал с тэгами...) -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
:unsure: да пробую переводить, какой то бред получается. :crying: а что такое тэги? может мне проще не терминами а на примере покажите пжлст...? -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
Вот попробовал еще вариант с сбросом по фронту, что тут не так? library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; use ieee.std_logic_unsigned.all; entity pwcex is port( res: in std_logic; clock: in std_logic; del_1: out std_logic_vector(1 downto 0) ); end pwcex; architecture pwcex_arch of pwcex is signal del: std_logic_vector(1 downto 0); begin A: process(clock,res) begin if (res='1') then if (clock'event and clock='0') then del <= del + 1; end if; end if; end process; B: process(res) begin if (res'event and res='1') then del <= "00"; end if; end process; del_1 <= del; end pwcex_arch; ------------------------------------------------ Error (10028): Can't resolve multiple constant drivers for net "del[1]" at pwcex.vhd(31) Error (10029): Constant driver at pwcex.vhd(23) Error (10028): Can't resolve multiple constant drivers for net "del[0]" at pwcex.vhd(31) Error: Can't elaborate top-level user hierarchy Error: Quartus II Analysis & Synthesis was unsuccessful. 4 errors, 0 warnings Info: Allocated 154 megabytes of memory during processing Error: Processing ended: Sun Jun 14 16:34:40 2009 Error: Elapsed time: 00:00:03 Error: Quartus II Full Compilation was unsuccessful. 4 errors, 0 warnings -
VHDL, что не так?
picman ответил picman тема в Языки проектирования на ПЛИС (FPGA)
спасибо. уже накачал. читаю изучаю. просто на конкретных примерах проще. все что сам нахожу исправляю, в чем торможу, спрашиваю. Еще раз спасибо... Гыыы, я понял откуда у меня нумерик взялся!!! я из сообщения http://electronix.ru/forum/index.php?s=&am...st&p=606583 код просто скопировал и потом не обратил внимания на эти изменения...