des00 25 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба опа, точно. спасибо. странно, но у меня эта библиотека была прописана сразу, а теперь смотрю прописана другая, при этом я ее не прописывал руками!!! а unsigned пропала сама почему то, точнее "заменилась" сама на нумерик... :unsure: прописана как раз нужная(numeric_std рекомендован для всех новых проектов), но в ней операция сложения с integer определена для типов unsigned/signed, которые хоть и являются производными от std_logic_vector, но параноидальный VHDL хочет ручного приведения типов %) Читайте книги и стандарт. там всего 200 страниц, в них все написано. ЗЫ. Прошу не считать мое сообщение предлогом к холивару %) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
picman 0 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба yagger: Скачайте книги по VHDL или Verilog(больше советую) и разбирайтесь - будет проще. Вы опять не используете теги для оформления кода. спасибо. уже накачал. читаю изучаю. просто на конкретных примерах проще. все что сам нахожу исправляю, в чем торможу, спрашиваю. Еще раз спасибо... Гыыы, я понял откуда у меня нумерик взялся!!! я из сообщения http://electronix.ru/forum/index.php?s=&am...st&p=606583 код просто скопировал и потом не обратил внимания на эти изменения... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
picman 0 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба Вот попробовал еще вариант с сбросом по фронту, что тут не так? 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 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба Вот попробовал еще вариант с сбросом по фронту, что тут не так? всё не так, читайте книги и учитесь переводить ошибки квартуса на русский язык, он ясно пишет вам что ему не нравиться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Des333 0 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба yagger: Не так, как минимум, то, что я уже дважды Вам писал: Вы опять не используете теги для офромления кода. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
picman 0 14 июня, 2009 Опубликовано 14 июня, 2009 (изменено) · Жалоба всё не так, читайте книги и учитесь переводить ошибки квартуса на русский язык, он ясно пишет вам что ему не нравиться. :unsure: да пробую переводить, какой то бред получается. :crying: yagger: Не так, как минимум, то, что я уже дважды Вам писал: Вы опять не используете теги для офромления кода. а что такое тэги? может мне проще не терминами а на примере покажите пжлст...? Изменено 14 июня, 2009 пользователем yagger Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Des333 0 14 июня, 2009 Опубликовано 14 июня, 2009 (изменено) · Жалоба а что такое тэги? может мне проще не терминами а на примере покажите пжлст...? Ну, показать не сложно. Вы бы сразу написали, что не в курсе, что это - Вам бы сразу ответили. :) Пример: 1) Без тегов и отступов: 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; 2) С тегами и отступами: 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; Чтобы использовать тег нажмите кнопку со свитком, расположенную над полем для ответа. Изменено 14 июня, 2009 пользователем des333 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
picman 0 14 июня, 2009 Опубликовано 14 июня, 2009 (изменено) · Жалоба Чтобы использовать тег нажмите кнопку со свитком, расположенную над полем для ответа. ааа, спасибо и прошу прощения. я то думаю, почему у меня в окне смотрится с отступами, а в форуме уже в 1 колонку. :rolleyes: цель: хочу попробовать сделать сброс асинхронный, не зависящий ни от каких сигналов, чтобы по нему сразу же все обнулялось... так а что у меня не так в последнем примере? (к сожалению не могу изменить его, я бы и его отредактировал с тэгами...) Изменено 14 июня, 2009 пользователем yagger Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Des333 0 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба ааа, спасибо и прошу прощения. я то думаю, почему у меня в окне смотрится с отступами, а в форуме уже в 1 колонку. :rolleyes: цель: хочу попробовать сделать сброс асинхронный, не зависящий ни от каких сигналов, чтобы по нему сразу же все обнулялось... так а что у меня не так в последнем примере? (к сожалению не могу изменить его, я бы и его отредактировал с тэгами...) Почему не можете? :) Можете. Нажмите на кнопку "edit" под полем с сообщением, которое хотите изменить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
picman 0 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба Почему не можете? :) Можете. Нажмите на кнопку "edit" под полем с сообщением, которое хотите изменить. не под всеми моими сообщениями есть эта кнопочка... :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Des333 0 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба не под всеми моими сообщениями есть эта кнопочка... :laughing: А, наверное, прошло слишком много времени. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
picman 0 14 июня, 2009 Опубликовано 14 июня, 2009 (изменено) · Жалоба Вот попробовал так: 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 если выполнилось хоть одно из предыдущих событий? Изменено 14 июня, 2009 пользователем yagger Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sazh 3 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба Вот попробовал так: как мне можно выйти из процесса досрочно, чтобы не проверялось событие clock'event если выполнилось хоть одно из предыдущих событий? Надо полагать, xst.pdf Вы так и не скачали. Иначе бы просто скопировали, то что Вам нужно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
picman 0 14 июня, 2009 Опубликовано 14 июня, 2009 (изменено) · Жалоба Надо полагать, xst.pdf Вы так и не скачали. Иначе бы просто скопировали, то что Вам нужно. скачал и сейчас открыт у меня... может просто еще не нашел такое? :rolleyes: просто с англицким не сильно, поэтому медленно. Изменено 14 июня, 2009 пользователем yagger Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Des333 0 14 июня, 2009 Опубликовано 14 июня, 2009 · Жалоба скачал и сейчас открыт у меня... может просто еще не нашел такое? :rolleyes: просто с англицким не сильно, поэтому медленно. Вы можете начать с книг на русском языке. Просто это, действительно, будет быстрее, чем если Вы будете спрашивать все мелочи на форуме. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться