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

Epikur

Свой
  • Публикаций

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

  • Посещение

Репутация

0 Обычный

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

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

Контакты

  • Сайт
    http://
  • ICQ
    9209299

Информация

  • Город
    Минск
  1. Цитата(Poluektovich @ Feb 7 2012, 15:52) Epikur, чтобы снизить потребление при неактивном enable нужно использовать clock gating cell, а эти описания синтезируются одинаково. Спасибо! Да, действительно убедился, что синтезатор всё равно не пихает инвертированную копию сигнала Reset на ClockEnable. К тому же в процессе чтения разных материалов по теме обнаружил, что на нужном мне кристалле (спартаны) D-триггер может быть сконфигурирован как для асинхронных сброса-предустановки, так и для синхронных. Раньше я думал почему-то, что триггеры все асинхронные, а цепи синхронного сброса/предустановки синтезируются дополнительной логикой перед D-входом триггера. И в синхронном режиме сброс имеет приоритет над предустановкой, и оба - над ClockEnable. Это "открытие" практически снимает проблему, так как реально сброс у меня всё равно синхронен тактовой частоте.
  2. Функционально они ничем не отличаются, и сигнал Reset, который попадает во втором варианте на вход ClockEnable триггера избыточен. Однако его наличие может сказываться на потребление энергии триггером. В случае, когда Reset большую часть времени активен, к примеру.
  3. Добрый день. Прошу прощения, если этот вопрос где-то рассматривался, но у меня просто не получается сформулировать правильный поисковой запрос на эту тему Есть два описания триггера с асинхронным сбросом на VHDL. CODETRIGGER_ONE: process (Reset, Clock) begin if Reset = '1' then Q_out <= '0'; elsif rising_edge(Clock) then Q_out <= D_in; end if; end process; TRIGGER_TWO: process (Reset, Clock) begin if Reset = '1' then Q_out <= '0'; elsif rising_edge(Clock) and Reset = '0' then Q_out <= D_in; end if; end process; Вопрос такой: отличаются ли эти два описания по потреблению энергии на кристалле, пусть даже незначительно? Если таких триггеров тысячи, то может набежать немаленькая разница. По моим представлениям, если на входе CE триггера есть запрещающий низкий уровень, то сигнал тактовой частоты отключается от остальной схемы триггера, и триггер потребляет немножко меньше энергии, даже если сигнал на входе данных D_in не меняется. Но я не уверен, что прав на этот счёт. Насколько влияет на схему активный сигнал асинхронного сброса с точки зрения энергопотребления?
  4. Есть устройство, которое подключается к компу через USB и требует сравнительно высокой пропускной способности. Для него был выбран класс Mass Storage Device - не требует драйверов или специальной установки, к тому же обслуживающую программу можно положить прямо в устройство и не носить с собой отдельно. Соответственно, используется SCSI Transparent логический интерфейс. Однако нам необходимо подавать в устройство свои собственные команды, выходящие за предел стандартного набора команд для MSD. Есть ли какой-нибудь способ сделать это в винде не обладая правами администратора? Тот же SСSI Pass Through Interface требует прав админа как минимум для того, чтобы открыть устройство по его пути. К сожалению, предустановка на комп собственной службы - не годится.
  5. USB библиотека Microchip

    Чуть больше информации. К компу подключено другое HID-устройство, не майкрочиповское. Когда запускаешь dxdiag, то где-то посредине процесса своей инициализации, dxdiag отправляет на все девайсы и хабы репорты, типо, "кто таков". Устройства на них отвечают. Вот пример запросов и ответов одного из таких устройств: [attachment=32398:pCardInfo.zip] Однако, если к компу подключён тот же PicKit2, то ник нему, ни к его хабу, ни к хосту не приходит ни один запрос, а dxdiag падает. Кто-нибудь знает, что это за запросы и чем они отличаются от тех, которые проходят при подключении устройства? ЗЫ. Старая библиотека (1.3) тоже с такой же проблемой.
  6. USB библиотека Microchip

    Обнаружена ошибка в последней версии библиотеки USB (MCHPFSUSB Framework v2.4) от Microchip. Смысл ошибки заключается в том, что сделанное на базе него устройство класса HID не совместимо с Direct 3D приложениями (считай - всеми играми). При попытке запустить какую-нибудь игру с подключённым Microchip HID устройством вылетает ошибка. При попытке запустить dxdiag, тот тоже вылетает с ошибкой и предлагает отослать мелкомягким репорт. Скрины с ошибками - в прицепе. [attachment=32358:HidError.zip] Если сначала запустить игрушку, а потом в процессе подключить HID устройство, то всё будет работать нормально. (Видимо, системе не удаётся открыть какой-то хендл). Скорее всего драйвер микрочипа дёргает какую-то сбойную функцию в самой винде... Вы можете поставить эксперемент самостоятельно, если у вас есть PicKit2, например. ОС: Windows XP, SP3 Athlon 64 x2 4850+ 2 Гб RAM Sapphire Radeon 3850 Ultimate Creative X-Fi Sound Blaster. Может быть кто-то нашёл решение к этой проблеме? Пока что не пробовал использовать старую версию библиотеки (1.3)
  7. Цитата(_3m @ Feb 24 2009, 22:44) Впрочем после прочтения информации о баге в драйверее hid win xp sp2-3 вопрос о работе через interrupt out отпал сам собой. В xp sp2-3 там баг, починен только в висте. А можно ли подробнее про баг хрюшки? У меня тоже PC <---> PIC18F2550, работает в режиме HID. И никак не удаётся достичь предельной скорости 64000 байт/с. Максимум получается только 42 кб/с. Ладно было бы 32 кб/с - хоть какая-то логика. а 42...
  8. В принципе, устраивает, если полученные там результаты - гарантированные. Чтобы не получилось, что я поставлю максимальную частоту, проверю на нескольких устройствах, а где-то на серии потом будут обнаружены проблемы. Скажем так. Предельную частоту модуля выдаёт ещё синтезатор (93 Мгц). Но реально на такой частоте модуль почему-то работать не хочет.
  9. Наверняка такие вопросы возникали у многих, но сходу ничего найти не удалось. Так что звиняйте, если боян. Есть кристалл (Spartan 3), на котором работает тактируемый модуль с математикой. Необходимо подобрать максимальную стабильную тактовую частоту и тайминги для этого модуля. С учётом возможных температурных отклонений, отклонений в серии и.т.д. Знает ли кто-нибудь, как это правильно делать? Может быть, где-то статьи толковые на эту тему есть?
  10. Aprox >> Вы же не взялись обьяснить, почему реальный предел 25Mbit/sec для визнета, когда они пишут Ethernet 100Mbit/s Поправочка: они пишут "10/100 Base-T Ethernet (Auto detection)". То бишь, совместим с электрическим интерфейсом стобитной сетки. К реальной скорости работы это имеет третье отношение. zltigo Это должно быть не сложно, если у управляющего процессора есть DMA (а он практически всегда есть) и интерфейс связи с процессором достаточно скоростной. Сам видел, как Blackfin с микролинуском в связке с SMSC маком выжимал почти 11 мбайт/сек на TCP.
  11. >> Отсюда, скорей всего, и максимальная производительность визнета = 100/4 = 25 Mbit/sec. Нет, дело где-то в другом. Даже когда используешь только один канал, и буфер выделяешь только для него, а остальные каналы отключены, производительность не превышает 25 мбит.
  12. Aprox Не знаю. Как это ни удивительно, но я использую визнет в режиме MAC.
  13. Нет. Визнеты работают более-менее стабильно только тогда, когда для отправки дожидаешься полного освобождения буфера, прежде чем запихнуть туда пакет. Если бы можно было дать команду на отправку пакета и тут же начать заливать в него новый, то максимальная производительность бы и достигалась. А вместо этого он начинает сбоить. А так получается: время опроса/обновления всех регистров +время загрузки пакета +время отправки пакета на MAC-уровне +внутричиповое обновление регистров - всё это делить производительность раза в три..четыре. Зы. Сталкивался ли кто-нибудь с недокументированными глюками W3100A, такими, что в W3150 или W5100 они были устранены или обойдены?
  14. тормоза при отладке с ICD2

    >> для PIC18/PIC24/dsPIC - от 2-х до 4-х бряков. Совсем недавно отлаживал PIC18F458. Ведёт он себя так, будто поддерживает только 1 точку - условную или безусловную. Причём, при условной точке не ловил доступы к регистрам при косвенном обращении. Наверное, больше точек поддерживают контроллеры поновее, те что с нулём. Про 24-е вообще забыл, когда писал