Взялся тут за ниос, в связи с чем возник вопрос. Какие компоненты необходимы в системе, что бы произвести отладку проекта?
Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
- Грендайзер
- Мучитель микросхем
- Сообщения: 479
- Зарегистрирован: Вт июн 02, 2009 22:38:40
- Откуда: Город-герой Москва
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Здравствуйте, всех с праздником
Взялся тут за ниос, в связи с чем возник вопрос. Какие компоненты необходимы в системе, что бы произвести отладку проекта?
Взялся тут за ниос, в связи с чем возник вопрос. Какие компоненты необходимы в системе, что бы произвести отладку проекта?
- Реклама
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Есть вопрос. Делаю дешифратор, но мне нужно один сегмент не выводить, т.е. пропустить:
Но проблема в том, что digit_0 определён как
Получаю такое сообщение об ошибке:
ERROR:HDLParsers:807 - "C:/ISE/censored.vhd" Line 354. digit_0 can not be used with range downto.
Переопределять константы не хочется. Очень.
Код: Выделить всё
vlamp1 <= not (digit_0 (6 downto 4) & digit_0 (2 downto 0)) when "0000",Код: Выделить всё
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.
Переопределять константы не хочется. Очень.
- РадиоЛоматель
- Мудрый кот
- Сообщения: 1733
- Зарегистрирован: Чт авг 21, 2008 22:03:30
- Откуда: Одесса(Украина)
- Контактная информация:
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
vlamp1 <= not (digit_0 (4 to 6) & digit_0 (0 to 2)) when "0000"uldemir писал(а):vlamp1 <= not (digit_0 (6 downto 4) & digit_0 (2 downto 0)) when "0000",
(*tmp) &= ~( ( (param1 & (1<<PARAM1_BIT6)) || ((param2==PARAM2_TRUE)&&(--param3)) ) ? (param1 & (~param2)) : (Func1() | FUNC1_FLAGS) );
Люблю Си...
Люблю Си...
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Не получается. при компиляции ругани нет, но на индикаторе каша.
Попробовал vlamp1 (5 downto 0) переопределить как vlamp1 (0 to 5) - всё-равно каша. Но в этом случае, уже сам не понимаю почему. Выводы то vlamp1(0) как был подключен к сегменту A - так и остался.
Попробовал vlamp1 (5 downto 0) переопределить как vlamp1 (0 to 5) - всё-равно каша. Но в этом случае, уже сам не понимаю почему. Выводы то vlamp1(0) как был подключен к сегменту A - так и остался.
- РадиоЛоматель
- Мудрый кот
- Сообщения: 1733
- Зарегистрирован: Чт авг 21, 2008 22:03:30
- Откуда: Одесса(Украина)
- Контактная информация:
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Если получается каша - то проще уже подсоединить все разряды по отдельности руками к промежуточной переменной, а к ней уже применить where. Благо, разрядов у вас всего 7 штук. Кажется, здесь уже обсуждалась похожая проблема, только для верилога.
То есть сделать как-то так:
То есть сделать как-то так:
Код: Выделить всё
tmp <= (digit_0 (0) & digit_0 (1) & ...)
vlamp1 <= not (tmp) when "0000"(*tmp) &= ~( ( (param1 & (1<<PARAM1_BIT6)) || ((param2==PARAM2_TRUE)&&(--param3)) ) ? (param1 & (~param2)) : (Func1() | FUNC1_FLAGS) );
Люблю Си...
Люблю Си...
- Реклама
- Грендайзер
- Мучитель микросхем
- Сообщения: 479
- Зарегистрирован: Вт июн 02, 2009 22:38:40
- Откуда: Город-герой Москва
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
А Вы в железе прям что ль отлаживаете? Может ноги попутали?uldemir писал(а):Не получается. при компиляции ругани нет, но на индикаторе каша.
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Отлаживаюсь, да, в железе. Ноги не попутал. До этого всё работало правильно. Но тут мне понадобился еще один сигнал, и я решил его занять у одной цифры сегмент D. Так как это часы и в том разряде отображаться будут только цифры от 0 до 5, то я могу сегмент A соединить с сегментом D, и один ключ я могу использовать для своих нужд. Вот теперь и думаю, как эту дырку написать.
О, нашел! Действительно описание константы имело значение:
constant digit_0:std_logic_vector(6 downto 0) := "0111111"; -- работает
constant digit_0:std_logic_vector := "0111111"; -- не работает в данном конкретном случае...
Да, мне пришла аналогичная мысль. И даже промежуточная переменная не нужна. Только будет несколько растянуто. Но, еще и хочется понять, почему так. Пока соединял так сигналы - всё получалось правильно. Я же так сдвиговые регистры делаю. Стоило с константой попробовать - фокус уже не проходит. Может описание константы другое нарисовать?РадиоЛоматель писал(а):то проще уже подсоединить все разряды по отдельности
О, нашел! Действительно описание константы имело значение:
constant digit_0:std_logic_vector(6 downto 0) := "0111111"; -- работает
constant digit_0:std_logic_vector := "0111111"; -- не работает в данном конкретном случае...
- Meteor
- Друг Кота
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
- Контактная информация:
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Так может все гораздо банальнее? У Вас вектор размерностью 1(по коду представленному), объявите егоuldemir писал(а):Но проблема в том, что digit_0 определён как
Код:
constant digit_0:std_logic_vector := "0111111";
Получаю такое сообщение об ошибке:
Код: Выделить всё
digit_0:std_logic_vector (6 downto 0):= "0111111"
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Да, именно так проблема и разрешилась. Смотреть предыдущее сообщение.
Но не доходит почему не было проблемы с тем описанием до этого? Другие разряды описанные как Нормально присваивалась эта константа с неправильным размером и всё отображалось правильно. Правильно, пока не начал добавлять (6 downto..). Пока не доходит мне этот нюанс. Если бы оно сразу выругалось или отображало бы не правильно - сразу заметил бы что пропустил в описании. Впредь буду осторожнее с этими вещами.
Но не доходит почему не было проблемы с тем описанием до этого? Другие разряды описанные как
Код: Выделить всё
vlamp0 : out STD_LOGIC_VECTOR (6 downto 0);Код: Выделить всё
vlamp0 <= not digit_0 when "0000",- Meteor
- Друг Кота
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
- Контактная информация:
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Я так понимаю, в том чтоб объявить вектор размерностью 1 единицу, никакой крамолы нет. А вот когда из этого вектора пытаются получить, с добавкой, вектор больше чем добавка+размерность вектора - все и рушится.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
- dimitriy91
- Вымогатель припоя
- Сообщения: 619
- Зарегистрирован: Ср июн 08, 2011 15:37:56
- Откуда: ДВ
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Всем привет. Столкнулся со следующей проблемой. Все условия в проекте выполняются, я не понимаю как так происходит. Но почему то все ифы открыты, из за чего такое может быть?
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
- Meteor
- Друг Кота
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
- Контактная информация:
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Мой телепатор говорит что ошибки идут со строки 13.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
- Грендайзер
- Мучитель микросхем
- Сообщения: 479
- Зарегистрирован: Вт июн 02, 2009 22:38:40
- Откуда: Город-герой Москва
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Здравствуйте коллеги. Такая тут история в общем... Надо на плисине сделать проектик. Вообщем то не сложный, но и времени мало да и зачем самому что то делать когда в ообщем... "Всё украдено до нас" (с). Так вот, по поводу "украдено" если бы я, разумеется чисто теоретически, захотел бы... как это - воспользоваться ниосом который ограничен временем, в полной мере без покупки лицензии
Лазил тут по великому и ужасному rutreker но ничего не вышло, может кто поделится опытом в экспроприации. Да здравствует революция мирового пролитариата

- dimitriy91
- Вымогатель припоя
- Сообщения: 619
- Зарегистрирован: Ср июн 08, 2011 15:37:56
- Откуда: ДВ
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Я на Xilinxсовой игле сижу, тут ничем не помогу.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
- Грендайзер
- Мучитель микросхем
- Сообщения: 479
- Зарегистрирован: Вт июн 02, 2009 22:38:40
- Откуда: Город-герой Москва
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
пфффф... печалька
Ну альтеровцев вроде на сайте полно, может у кого получилось
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
ПОДСКАЖИТЕ! Как записать байт в ПЗУ из программы?
Или другой способ, чтобы выкл-вкл устройства можно было обратиться к этому байту и он был сохранен? 
- dimitriy91
- Вымогатель припоя
- Сообщения: 619
- Зарегистрирован: Ср июн 08, 2011 15:37:56
- Откуда: ДВ
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
CORE IP в помощь.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Возможно и не актуально, но вопрос частый
самый простой путь - в файле sys_cpt.dll заменяются 3 байта. Для каждой версии - свои. Далее берется лицензионный файл и в нем после hostid= записывается МАС-адрес сетевой карты. Шаблон лицензионного файла или генератор можно найти на рутрекере, адреса по которым нужно менять байты - на электрониксе. Если нужно подробнее - в личку.как это - воспользоваться ниосом который ограничен временем, в полной мере без покупки лицензии
misterdi<@>i.ua
- dimitriy91
- Вымогатель припоя
- Сообщения: 619
- Зарегистрирован: Ср июн 08, 2011 15:37:56
- Откуда: ДВ
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Народ, если кому то нужны небрендовые и брендовые стенды с плис, мк и тд , недорого - пишите в личку, договоримся.
Помимо этого есть еще масса других товаров, так же почти за даром!!!
Помимо этого есть еще масса других товаров, так же почти за даром!!!
Последний раз редактировалось dimitriy91 Вт авг 12, 2014 16:28:31, всего редактировалось 1 раз.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
- Грендайзер
- Мучитель микросхем
- Сообщения: 479
- Зарегистрирован: Вт июн 02, 2009 22:38:40
- Откуда: Город-герой Москва
Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Спасибо, разобрлся уже несколько месяцев назад сам. Впрочем всё было на поверхности, стоило просто потратить час времени.MisterDi писал(а):Возможно и не актуально, но вопрос частыйсамый простой путь - в файле sys_cpt.dll заменяются 3 байта. Для каждой версии - свои. Далее берется лицензионный файл и в нем после hostid= записывается МАС-адрес сетевой карты. Шаблон лицензионного файла или генератор можно найти на рутрекере, адреса по которым нужно менять байты - на электрониксе. Если нужно подробнее - в личку.как это - воспользоваться ниосом который ограничен временем, в полной мере без покупки лицензии
PS
Надо признать что даже не самый навороченый ниос, куда проворнее басяцкого! Впрочем чего ещё от капиталистов ожидать


