Перейти к содержанию

    

proga

Участник
  • Публикаций

    86
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о proga

  • Звание
    Частый гость
  • День рождения 27.01.1984

Контакты

  • Сайт
    http://

Информация

  • Город
    иркутск
  1. Горячая линия по САПР Cadence Allegro

    Здравствуйте. Пытаюсь применить функцию Swap->Functions, но никак не получается это сделать. Я создал в CAPTURE гомогенный символ, состоящий из 8 gate. В каждом вентиле по два контакта. Соответствующим контактам каждого вентиля присвоил одинаковый PinGroup, то есть у меня получились две группы 1 и 2. Однако в PCB Designer при активировании команды Swap->Functions, я выбираю один из swap выводов и получаю сообщение (SPMHA2-23): No functions are swappable with the selected function ... pick again. Когда я пытаюсь произвести замену на уровне отдельных контактов, то есть задействую Swap->Pins, всё работает нормально, при выборе одного из выводов подсвечиваются остальные 7 контактов группы, с которыми я могу произвести замену. Что я делаю не так?
  2. Ошибка при создании net list

    Тоже столкнулся с этой проблемой. Пришлось в схеме переименовывать все контакты, содержащие в имени минус
  3. создание корпусов компонентов

    Ошибка возникает при создании нетлиста, а именно на этапе Updating Allegro PCB Editor Board. Несмотря на то, что путь к созданной мной библиотеке корпусов прописан, программа её не обнаруживает. Собственно, всё написано в первом моём сообщении. В итоге, я перерисовал все корпуса в PCB Editor, так как, к сожалению времени у меня в обрез. Уже с этими корпусами на стадии создания нетлиста абсолютно никаких проблем не возникло. Проблема, возникшая у меня, в высшей степени странная: почему у меня корпуса не воспринимаются программой, а у вас с ними никаких проблем не возникает? Когда будет время, обязательно с этим разберусь. Большое спасибо за то, что пытались мне помочь!!!
  4. создание корпусов компонентов

    к сожалению, применение команды по очищению лишних падов ЦитатаTools -> Padstack -> Modify Design Padstack -> Purge -> All в корпусах не привело к тому, что они стали видимы при создании нетлиста. Причём с корпусами, созданными в PCB Editor, изначально никаких проблем не наблюдается.
  5. создание корпусов компонентов

    Странно у меня тоже ваш dra работает. Padpath я указал. А что значит выкинули лишние педы?
  6. создание корпусов компонентов

    К сожалению процедура Tools - Database check не помогла. Я пока только начинаю использовать PCB Editor в своей работе. Поэтому использовал для создания корпусов Package Designer, не учтя возможные проблемы с лицензией. Похоже это первые грабли, на которые я наступил, причём саданут они меня по лбу довольно сильно, так как корпусов я нарисовал немало. Загружаю один из проблемных DRA.
  7. создание корпусов компонентов

    Здравствуйте. Возникла следующая проблема. В Package Designer я нарисовал несколько корпусов для компонентов моей схемы. Созданные dra и psm складировал в одну папку, путь к которой прописал в PCB Editor: User Preferences Editor -> Paths -> Library -> psmpath. Однако при попытке создать netlist схемы получаю ошибку. В netrev выводятся ошибки следующего вида: WARNING(SPMHNI-192): Device/Symbol check warning detected. [help] WARNING(SPMHNI-194): Symbol 'SKE10' for device 'SKE10B-05_SKE10_SKE10B-05' not found in PSMPATH or must be "dbdoctor"ed. Когда захожу в PCB Editor при выборе команды Place -> Manually ->Package Symbols я вижу в опциях созданные мной корпуса, однако при попытке выбора одного из них получаю ошибку W- (SPMHA1-230): Database has a non-recoverable corruption. Contact Cadence customer support. E- Cannot load symbol 'AG5100' Не могу понять, что не так. Может быть недостаточно просто указать путь к папке с новыми корпусами и процесс создания библиотеки не так тривиален? Или надо выполнить какие-либо действия по обновлению базы данных?
  8. К сожалению, нет. В итоге, я использовал трансивер физического уровня dp83640 с поддержкой протокола IEE 1588 и на его основе успешно реализовал поддержку протокола PTP в своём проекте. Я задавал вопрос в комьюнити STM по данной проблеме и, судя потому, как они резко прекратили обсуждения, после того, как я послал им проект, в котором можно наблюдать проявление данной проблемы, я сделал вывод, что это аппаратный баг, который делает невозможным реализацию протокола PTP только средствами контроллера STMF417. Хотя возможно я и ошибаюсь.
  9. Проблема снятия флага

    Спасибо всем за советы. К сожалению они не помогли. Я просмотрел код через дизасемблер. Копилятор отработал нормально. Дело не в том, что некорректна проверка флага, а в том, что флаг изначально не сбрасывается, либо сбрасывается и тут же устанавливается логикой. Как я уже писал, при пошаговом прохождении этой части кода программа исполняется нормально. А вот при выполнении программы налету она застревает в этом цикле. Возникает ощущение, что логика всё же возвращает флаг на место, просто в пошаговом режиме почему-то не может этого сделать. Скорее всего я, что то делаю не так, хоть и ума не приложу в чём я ошибаюсь. Ну что ж, буду думать.
  10. Проблема снятия флага

    Здравствуйте. Я разрабатываю программу на базе микроконтроллера STM32F417. У меня возникла проблема следующего характера. В одной части своей программы мне необходимо запретить DMA исполнение. Делаю я это стандартным способом Код             DMA_Cmd(DMA1_Stream5, DISABLE);     while(DMA1_Stream5->CR & DMA_SxCR_EN); Однако программа в цикле застревает навечно. Если же я в отладчике пошагово исполняю этот кусок кода, то без проблем прохожу цикл. Если же я изменяю уровень оптимизации с O3 на O1, то программа начивает застревать раньше в подобном же блоке Код    DMA_Cmd(DMA2_Stream0, DISABLE);     while(DMA2_Stream0->CR & DMA_SxCR_EN); , который раннее при оптимизации O3 программа проходила без проблем. Прошу помощи в разрешении данной проблемы.
  11. Я сейчас разрабатываю программу на базе платы TE-STM32F417MCU. В ней я пытаюсь, в том числе, реализовать поддержку PTP протокола. Однако я столкнулся со следующей проблемой.Системный таймер, ответственный за PTP, генерирует прерывание, если его текущее время превышает значение, записанное в регистрах target time. При этом устанавливается флаг TSTS в регистре ETH_MACSR. Данный флаг очищается как только производится чтение из регистра ETH_MACSR, так гласит Reference manual. Однако в режиме отладки я наблюдал , что после прочтения регистра никакого снятия флага TSTS не происходит и программа застревает в обработчике. Вследствие этого пришлось ввести в обработчик цикл, который снова и снова считывает содержимое регистра ETH_MACSR до тех пор пока флаг TSTS не очищается. Однако этого я смог добиться только в режиме отладки. Когда же я прошиваю контроллер и запуская его на исполнение без программатора, то программа застревает в этом цикле навечно, т.е флаг TSTS так и не сбрасывается. Буду благодарен любым соображениям по этому поводу . Спасибо
  12. Цитата(KnightIgor @ Feb 20 2013, 13:25) Такое поведение наблюдается, когда входы BOOTx недостаточно уверенно затянуты на соответствующие уровни: при включении питания процессор может попасть либо во строенный bootloader, либо вообще начать исполнять чушь из RAM, что и выглядит, словно программа не запустилась. Если же дать затем сброс при стабильном питании, а значит - стабильных уровнях на BOOTx, - всё запускается верно. Спасибо за информацию
  13. Цитата(adnega @ Feb 20 2013, 12:48) Какая ревизия процессора? B Поставил уровень 2 BOR проблема решилась. Однако образовалась другая, о которой я напишу в следующем топике
  14. Я сейчас разрабатываю программу на базе платы TE-STM32F417MCU. Обнаружилась странная проблема. После прошивки контроллера, программа не стартует сразу после включения питания. Однако, если я принудительно (кнопкой) сбрасываю его, то программа начитает исполняться. Буду благодарен любым соображениям по этому поводу. Я пока грешу на неэффективность системы POR. Спасибо