Программируемая логика - это не так уж и сложно. Разберемся вместе.
Ответить

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пт янв 03, 2014 18:01:45

Здравствуйте, всех с праздником :beer:
Взялся тут за ниос, в связи с чем возник вопрос. Какие компоненты необходимы в системе, что бы произвести отладку проекта?

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Сб янв 18, 2014 20:37:42

Есть вопрос. Делаю дешифратор, но мне нужно один сегмент не выводить, т.е. пропустить:
Код:
vlamp1 <= not (digit_0 (6 downto 4) & digit_0 (2 downto 0)) when "0000",

Но проблема в том, что digit_0 определён как
Код:
constant digit_0:std_logic_vector := "0111111";

Получаю такое сообщение об ошибке:
ERROR:HDLParsers:807 - "C:/ISE/censored.vhd" Line 354. digit_0 can not be used with range downto.
Переопределять константы не хочется. Очень.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Сб янв 18, 2014 22:18:15

uldemir писал(а):vlamp1 <= not (digit_0 (6 downto 4) & digit_0 (2 downto 0)) when "0000",

vlamp1 <= not (digit_0 (4 to 6) & digit_0 (0 to 2)) when "0000"

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Вс янв 19, 2014 15:23:02

Не получается. при компиляции ругани нет, но на индикаторе каша.

Попробовал vlamp1 (5 downto 0) переопределить как vlamp1 (0 to 5) - всё-равно каша. Но в этом случае, уже сам не понимаю почему. Выводы то vlamp1(0) как был подключен к сегменту A - так и остался.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Вс янв 19, 2014 16:33:15

Если получается каша - то проще уже подсоединить все разряды по отдельности руками к промежуточной переменной, а к ней уже применить where. Благо, разрядов у вас всего 7 штук. Кажется, здесь уже обсуждалась похожая проблема, только для верилога.
То есть сделать как-то так:
Код:
tmp <=  (digit_0 (0) & digit_0 (1) & ...)
vlamp1 <= not (tmp) when "0000"

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Вс янв 19, 2014 17:27:39

uldemir писал(а):Не получается. при компиляции ругани нет, но на индикаторе каша.

А Вы в железе прям что ль отлаживаете? Может ноги попутали?

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Вс янв 19, 2014 19:15:04

Отлаживаюсь, да, в железе. Ноги не попутал. До этого всё работало правильно. Но тут мне понадобился еще один сигнал, и я решил его занять у одной цифры сегмент D. Так как это часы и в том разряде отображаться будут только цифры от 0 до 5, то я могу сегмент A соединить с сегментом D, и один ключ я могу использовать для своих нужд. Вот теперь и думаю, как эту дырку написать.
РадиоЛоматель писал(а):то проще уже подсоединить все разряды по отдельности
Да, мне пришла аналогичная мысль. И даже промежуточная переменная не нужна. Только будет несколько растянуто. Но, еще и хочется понять, почему так. Пока соединял так сигналы - всё получалось правильно. Я же так сдвиговые регистры делаю. Стоило с константой попробовать - фокус уже не проходит. Может описание константы другое нарисовать?

О, нашел! Действительно описание константы имело значение:
constant digit_0:std_logic_vector(6 downto 0) := "0111111"; -- работает
constant digit_0:std_logic_vector := "0111111"; -- не работает в данном конкретном случае...

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пн янв 20, 2014 21:22:46

uldemir писал(а):Но проблема в том, что digit_0 определён как
Код:
constant digit_0:std_logic_vector := "0111111";

Получаю такое сообщение об ошибке:

Так может все гораздо банальнее? У Вас вектор размерностью 1(по коду представленному), объявите его
Код:
digit_0:std_logic_vector (6 downto 0):= "0111111"

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пн янв 20, 2014 21:47:05

Да, именно так проблема и разрешилась. Смотреть предыдущее сообщение.
Но не доходит почему не было проблемы с тем описанием до этого? Другие разряды описанные как
Код:
           vlamp0   : out   STD_LOGIC_VECTOR (6 downto 0);
Нормально присваивалась эта константа с неправильным размером и всё отображалось правильно.
Код:
   vlamp0              <= not digit_0 when "0000",
Правильно, пока не начал добавлять (6 downto..). Пока не доходит мне этот нюанс. Если бы оно сразу выругалось или отображало бы не правильно - сразу заметил бы что пропустил в описании. Впредь буду осторожнее с этими вещами.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пн янв 20, 2014 22:18:52

Я так понимаю, в том чтоб объявить вектор размерностью 1 единицу, никакой крамолы нет. А вот когда из этого вектора пытаются получить, с добавкой, вектор больше чем добавка+размерность вектора - все и рушится.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пт апр 04, 2014 08:09:43

Всем привет. Столкнулся со следующей проблемой. Все условия в проекте выполняются, я не понимаю как так происходит. Но почему то все ифы открыты, из за чего такое может быть?

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пт апр 04, 2014 17:38:26

Мой телепатор говорит что ошибки идут со строки 13.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пн апр 28, 2014 11:36:52

Здравствуйте коллеги. Такая тут история в общем... Надо на плисине сделать проектик. Вообщем то не сложный, но и времени мало да и зачем самому что то делать когда в ообщем... "Всё украдено до нас" (с). Так вот, по поводу "украдено" если бы я, разумеется чисто теоретически, захотел бы... как это - воспользоваться ниосом который ограничен временем, в полной мере без покупки лицензии :oops: Лазил тут по великому и ужасному rutreker но ничего не вышло, может кто поделится опытом в экспроприации. Да здравствует революция мирового пролитариата :beer: :kill:

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пн апр 28, 2014 12:07:33

Я на Xilinxсовой игле сижу, тут ничем не помогу.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пн апр 28, 2014 12:09:39

пфффф... печалька :? Ну альтеровцев вроде на сайте полно, может у кого получилось

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Чт май 01, 2014 15:34:01

ПОДСКАЖИТЕ! Как записать байт в ПЗУ из программы? :dont_know: Или другой способ, чтобы выкл-вкл устройства можно было обратиться к этому байту и он был сохранен? :beer:

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Чт май 01, 2014 19:36:37

CORE IP в помощь.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Пн авг 11, 2014 17:57:45

Возможно и не актуально, но вопрос частый
как это - воспользоваться ниосом который ограничен временем, в полной мере без покупки лицензии

самый простой путь - в файле sys_cpt.dll заменяются 3 байта. Для каждой версии - свои. Далее берется лицензионный файл и в нем после hostid= записывается МАС-адрес сетевой карты. Шаблон лицензионного файла или генератор можно найти на рутрекере, адреса по которым нужно менять байты - на электрониксе. Если нужно подробнее - в личку.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Вт авг 12, 2014 03:17:06

Народ, если кому то нужны небрендовые и брендовые стенды с плис, мк и тд , недорого - пишите в личку, договоримся.
Помимо этого есть еще масса других товаров, так же почти за даром!!!
Последний раз редактировалось dimitriy91 Вт авг 12, 2014 16:28:31, всего редактировалось 1 раз.

Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них

Вт авг 12, 2014 11:32:51

MisterDi писал(а):Возможно и не актуально, но вопрос частый
как это - воспользоваться ниосом который ограничен временем, в полной мере без покупки лицензии

самый простой путь - в файле sys_cpt.dll заменяются 3 байта. Для каждой версии - свои. Далее берется лицензионный файл и в нем после hostid= записывается МАС-адрес сетевой карты. Шаблон лицензионного файла или генератор можно найти на рутрекере, адреса по которым нужно менять байты - на электрониксе. Если нужно подробнее - в личку.

Спасибо, разобрлся уже несколько месяцев назад сам. Впрочем всё было на поверхности, стоило просто потратить час времени. :))
PS
Надо признать что даже не самый навороченый ниос, куда проворнее басяцкого! Впрочем чего ещё от капиталистов ожидать :kill:
Ответить