inco 1 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба А вот попутно тоже вопрос что делать при верификации проекта например в Квесте. Допустим автомат с 4 состояними и все 4 состояния описаны и задействованы, то есть default ставить не на что, но при этом, при верификации таже квеста этого не понимает и пишет предупреждения что нет ветки default. Понятно что можно игнорировать, но как-то раздражает! Что народ делает в таком случае? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Терминология хромает, поэтому и не можем понять друг друга. Правильно я аргументировал? ну разве что не описали что такое "терминология", "аргументировал" и какие номера ГОСТ их определяют.... Архитектура - это построение проекта, модули, межмодульные связи, структуры входных и выходных данных, и т.д. Интересный момент описал конечный автомат c 9 состояниями и 4 битным State в ISE 14.2 тремя способами case (State) 0: .. .. 8:... default: begin end endcase case (State) 0: .. .. 8:... default: begin State <= 0; end endcase case (State) 0: .. .. 8:... endcase так вот на все описания ISE написал в логе, что обнаружил конечный автомат с 9 состояниями, 17 переходами (я готовый автомат менял там правда столько переходов), столько-то входов, выходов, ресет, начальное состояние и так далее... Более того ISE перекодировал состояния в код грея, я так понимаю по переходам. То есть не зависимо от наличия дефалт в этом описании число переходов и состояний не изменилось, более того даже добавление переходов из всех левых состояний в нулевое, также было проигнорировано. То есть для полностью определенных автоматов наличие дефалт как бы ничего не меняет. Возможно надо копать глубже и уже смотреть как там после синтеза это все имплементировалось в железе и как заполнены LUT переходов, но что-то у меня нет понимания как это сотворить достоверно... Вот такая вот информация... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tdocs.su 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба ну разве что не описали что такое "терминология", "аргументировал" и какие номера ГОСТ их определяют.... Архитектура - это построение проекта, модули, межмодульные связи, структуры входных и выходных данных, и т.д. Флудану. Или флейману :) 1. См. толковый словарь Ожегова и Шведовой; 2. Определение архитектуры дано от балды. "и какие номера ГОСТ их определяют...."? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба без понятия про номера, никогда бытовые понятия не накрывал гостами... как ж вы по улице то ходите... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tdocs.su 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба без понятия про номера, никогда бытовые понятия не накрывал гостами... как ж вы по улице то ходите... По улицам - как все, а по территории предприятия строго по ГОСТам. И не мешаю быт с работой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
olegras 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба То есть для полностью определенных автоматов наличие дефалт как бы ничего не меняет. Возможно надо копать глубже и уже смотреть как там после синтеза это все имплементировалось в железе и как заполнены LUT переходов, но что-то у меня нет понимания как это сотворить достоверно... Вот такая вот информация... А меня еще интересует: есть у меня автомат на 57 состояний. Синтезатор имплементирует его по "one-hot", т.е. кодирует 57 битным словом, в котором каждому состоянию соответствует только одна 1, остальные 0. С одной стороны как бы понятно как будет работать вся логика по выходам такого автомата. С другой стороны - а если на выходе автомата появятся две, три единицы? Есть ли гарантия того что так не произойдет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба iosifk Вы как про могли бы дать более детальный ответ. С примерами и советами. Напишите мне в личку или на почту, а еще лучше прямо в скаййп... Какой "более детальный" Вас интересует? А вот попутно тоже вопрос что делать при верификации проекта например в Квесте. Допустим автомат с 4 состояними и все 4 состояния описаны и задействованы, то Что народ делает в таком случае? В таком случае народ смотрит на реализацию регистра в автомате. Если она "one hot", то для 4-х состояний будут задействованы 4 триггера. А они могут дать 2^4 комбинаций, из которых у Вас описано только 4... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Leka 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба "one-hot"... а если на выходе автомата появятся две, три единицы? Есть ли гарантия того что так не произойдет? Копаем глубже: if(a>b) ...; else if(a<b) ...; Есть ли гарантия того что "из-за сбоя" не выполнятся обе ветви (a>b) и (a<b)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Сейчас риск очень мал. Максимальные потери - денежные, недавно делал системы от которых зависят жизни людей, сейчас могу расслабится. Более того даже денежные потери сейчас малы, очень мала вероятность что либо испортить, только репутацию. Место эксплуатации прибора тоже очень комфортное, фактически это офис-мастерская, чистенькая. Я не это хотел Вам сказать. Риск разработчика - это риск плохо сделать свою работу. Т.е. не в том смысле, что Ваш прибор не будет работать вообще, а в том, как эту разработку оценит "заказчик" и "хозяин"... Если Вы считаете, что "и так сойдет", то и хорошо. Наверное для "дешевых настольных" - основа - это экономия времени и букв в Верилоге. Меня же жизнь приучила к тому, что все и всегда надо делать "по полной форме". Ибо избыток ресурсов стоит копейки, а репутация - бесценна! А потому состояния по умолчанию я всегда пишу. Если есть ФИФО, то делаю регистр статуса и туда завожу ошибки, чтобы можно было контролировать программистов. Ну и так далее. Я никогда не делаю маскирование ошибок без их регистрации. Автоматы умею в железе отлаживать "по-шагам"... Тут писать можно долго, но суть я уже рассказал. Удачи! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
olegras 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Копаем глубже: Мне кажется это не совсем тот случай. if/else это все таки взаимоиключающее условие. Один провод с двумя возможными состояниями (а не с одним). Два провода - четыре состояния (а не два). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexadmin 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Копаем глубже: if(a>b) ...; else if(a<b) ...; Есть ли гарантия того что "из-за сбоя" не выполнятся обе ветви (a>b) и (a<b)? Зуб даю, что они даже без сбоев могут не выполниться! :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
olegras 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Зуб даю, что они даже без сбоев могут не выполниться! :) Он имел ввиду что обе выполнятся Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба ага при а == б :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexadmin 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба ага при а == б :) Примерно так и возникает 90% нездоровых сенсаций: "А! Тут чудеса какие-то, это ячейка в FPGA сбоит и питание плохое" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Если Вы считаете, что "и так сойдет", то и хорошо. Наверное для "дешевых настольных" - основа - это экономия времени и букв в Верилоге. Если бы я так считал, то не затевал бы тему. В статусах у меня кстати есть состояние автомата, потому если он прыгнет в не правильное состояние, то лучше бы он там и остался, тогда это можно по статусу определить. А потом вызвав ресет конкретного модуля восстановить работу. Как написать чтобы автомат во всех левых состояниях ничего не делала? дописать пустой дефалт, то есть default: begin end; ? а не равно ли это его отсуствию? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться