Jump to content

    

Pavel_I

Свой
  • Content Count

    173
  • Joined

  • Last visited

Everything posted by Pavel_I


  1. Добрый день! По акции была приобретена данная плата что-бы поиграться с PCI-Express. Начал с демонстрационных проектов, которые не заработали. Засомневался в работоспособности SERDES и электрических соединений на пути к PCI-е разъему. В моем варианте ПЛИС четыре SERDES устройства. Тогда с помощью SERDESEyeDemo проекта решил проверить их работоспособность. В оригинале SERDESEyeDemo использует DCU0 CH1. И в такой конфигурации все работает, как и должно быть. Т.е. передатчик передает, приемник принимает, как с Internal Loopback так и c External Loopback. Дальше в проекте стал менял SERDES. Во-первых, выяснилась такая особенность. У каждого SERDES имеется Receive CDR Loss of Lock, который, насколько понимаю, показывает есть ли синхронизация с примаемым потоком. Так вот в оригинальном SERDESEyeDemo (DCU0 CH1) все работает объяснимо – есть поток на входе – есть синронизация, нет потока – нет синхроницации. Для остальных трех SERDES, что есть поток, что нету, показывает, что есть синронизация. Смотрю это в Reveal Analyzer SERDES Debug, а также на отладочном светодиоде. Для двух SERDES из DCU1 могу использовать только Internal Loopback. И они в принципе работают. SERDES CH0 из DCU0, который ответственен за PCI-Express с Internal Loopback тоже принимает, но когда делаешь External Loopback принимать совсем не хочет. Хотя передатчик передает (смотрю осциллографом), и детектор сигнала на входе показывает, что он есть. Вообщем, происходят странные вещи, с которыми непонятно, что делать. Остается два предположения. Либо делаю что-то не так. Либо ПЛИС имеет дефект в SERDES юнитах, во что верится с трудом. Может кто сталкивался с подобным? Или может что-то еще посоветовать. В принципе, могу предоставить прошивки для ПЛИС. Возможно кто-то еще располагает аналогичной платой и сможет посмотреть, как она себя ведет. Также, если у кого-то заработали-не заработали демо проекты для PCI-e, то было бы также интересным узнать про это.
  2. Цитата(AVR @ Nov 7 2017, 10:28) Хорошо, какая операционная система проверялась? Где искалась карточка? Я бы запустил Linux и смотрел там в dmesg и lspci. Какой версии порты? Можно сюда модели материнских плат? Нужно понять насколько они стары или новы. Могу ошибаться, но spread spectrum в биосе включен или выключен для клоков? Эта отладочная плата тактирует порт от встроенного генератора или от клоков с материнской платы? Что, если загрузить битстрим в ПЛИС через JTAG без флэша и перезагрузить компьютер (именно ребут, а не выключить и включить)? Вдруг оно не взлетает при подаче питания при включения компьютера? А если зашить на лету, и перезагрузиться, то всё будет как надо? Система Win 7/64 Согласно документации система должна сообщить о новом устройстве. Этого не происходит. И в девайс менеджере новых устройств не появляется. Linux пробовал. Там тоже никакой реакции. Обе материнки на Intel H81 Express. У одной слот PCI-E x1, у другой mini-PCI-E (использовал переходник). Spread spectrum опции в биосе нет. К сожалению, под рукой пока нет других компьютеров. Нынче ноутбуки у всех в округе. Плата тактирутся с материнки. Судя по LOCK светодиоду генератора клоков, клок с материнки приходит. Пробовал шить по-разному и перегружать. Работать упорно не хочет. Еще такой момент. Слот PCI-E x1, а плата может x2. Вот не знаю, может ли она автоматом переключится на нужную скорость? Цитата(Inanity @ Nov 7 2017, 12:27) ...Таймаут при инициализации на PCIe 100ms. ПЛИС банально может не успевать подтянуть конфигурацию из флешки после подачи питания. Это уже в прошивку надо править. Пока не дошел до этого. Пока склоняюсь, что проблема все-таки на железном уровне.
  3. Цитата(AVR @ Nov 6 2017, 16:32) Не вижу в тексте результата проверки PCI-E Demo прошивки. Вижу что пробовалось. Но какой конкретно результат? Компьютер никак не реагирует на вставленную плату. Пробовал на двух разных. Сами слоты PCI-E компьютеров проверял сетевой карточкой. С ними все в порядке. Светодиоды на плате, например Data Link up, не демонстрируют какую-либо активность. Битстрим для FPGA заливал в загрузочную флеш.
  4. К этой плате еще бы Connectivity IP Suite раздобыть, вообще бы замечательно было.
  5. Qt ругается на "<"

    Цитата(muravei @ Mar 14 2016, 15:53) Компилятор ругается на функцию timercmp(&walltime, &endtime, <) и на CLOCK_MONOTONIC Х- файлы sys/time.h и time.h упоминаются. А платформа/компилятор какие? Смотрю у MinGW вот нет таких макросов в sys/time.h time.h
  6. Пытаюсь осмыслить работу MLSE приемника. В зарубежных статьях для расчета метрики алгоритма Витерби приводятся соотношения вида (15) из приаттаченой статьи. Физический смысл соотношения не очень понятен (или, скорее, не очень нагляден) и возникает вопрос - почему бы в качестве метрики не использовать евклидово расстояние между принятым символом (с выхода согласованного фильтра) и символом, полученным на основе импульсной характеристики канала?
  7. MLSE приемник

    Цитата(andyp @ Feb 5 2016, 13:38) Чтобы лишнего не считать. В (2)-(15) как раз и показано, как от квадратов евклидовых расстояний оставить только кросс-корреляции. Опишу, как я понимаю процесс. Имеется передатчик с фильтром и канал. В сумме они дают некий фильтр, который характеризуется импульсной характеристикой. Еще есть согласованный фильтр. Символ на выходе всего этого в отсчетный момент для каждого состояния в алгоритме Витерби может быть расчитан с использованием кросс-коррелиций. Дальше может быть посчитана метрика, как квадрат евклидова расстояния между этим "восстановленным" отсчетом и принятым символом с выхода согласованного фильтра. Как я вижу, по объему вычислений это тоже самое, как соотношение (15) из статьи.
  8. Цитата(san822 @ Dec 16 2013, 22:07) Есть на форуме счастливые обладатели платки ? Думаю таковых нет потому, как платы еще не начали рассылать. Интересная статейка
  9. Цитата(Corner @ Dec 13 2013, 20:34) Ну чо? А было столько восторгов. Альтернативы по сравнимой цене для "пощупать" все равно нету. Пришлют когда-нибудь :-)
  10. Цитата(elzaro @ Dec 11 2013, 21:54) плату с цинком себе доставляю вотэту Xilinx Zynq-7000 AP SoC ZC702 Evaluation Kit ($895), сейчас на самом интересном месте всё это дело, собираю документы на растоможку, чем закончится пока непонятно, но велики шансы на положительный исход. Если кому интересно будет могу по результатам отчет составить что и как..)) Было бы интересно узнать, чем дело кончится. Чем послали? Обычная почта, EMS, UPS? По моим наблюдениям обычную почту "трясут" гораздо меньше. Как-то послали мне здоровый RF генератор весом 25 кг через EMS. Но все думаю - попал. Нашел даже заранее в интернете "своего" брокера при EMS, который за фиксированную сумму брался это дело протолкнуть. Но в итоге все и так обошлось. До сих пор удивляюсь. PS: Собственно вот, может кому пригодится: http://customsprocedure.ru/ems
  11. Цитата(Konst_777 @ Dec 10 2013, 20:27) А разве их таможня пропускает такие посылки? Конечно, теоретически, посредник может неверно декларировать, что пересылает. Но, реально, он ведь не самоубийца. Ну, а если посылку завернет таможня, то ситуация вообще безвыходная. Деньги уже не вернут и посылку не доставят. Или я неправильно понимаю? Проще заказать SoCKit у Terasic. После Китайского Нового года Действительно есть шанс, что таможня может завернуть. Еще посылку могут потерять, украсть, повредить. Плата может сломаться или оказаться дефектной. Поэтому, если страшно, то единственная возможность свести риск к нулю - купить у местных барыг за дорого. В случае посредника декларируешь сам. За последнее время покупал разные вещи, которые потенциально могли завернуть. Включая осциллограф RIGOL за 800$. Все доехало. Вот еще одна поучительная история http://habrahabr.ru/post/205038/
  12. Цитата(Konst_777 @ Dec 10 2013, 12:22) В прошедшую субботу случайно увидел, что у Arrow Electronics (USA) появился в продаже SoCKit. Заказал с оплатой по электронной карте. Arrow сняла деньги с карты и прислала e-mail с сообщением, что заказ будет оформлен в понедельник. А в понедельник вечером ко мне пришло "письмо счастья" от Verical Customer Service (что-то типа 1-го отдела при Arrow Electronics): Отказался от покупки Подобные вещи можно пытаться заказывать через посредника. Типа shipito.com Если они видят американский адрес доставки, то вопросов не задают.
  13. Попался на глаза такой ролик: http://youtu.be/E3yxl9JxrqM Подскажите, пожалуйста, что может быть за инструмент для пайки горячим воздухом и что за флюс/пасту наносят?
  14. Имеется китайский клон USB загрузочного кабеля, который был приобретен года два назад. На корпусе имеется надпись DLC9. Данный кабель без замечаний работает со Spartan-3. Со свежекупленным китом на Spartan-6 работать отказывается. При это iMPACT корректно определяет тип чипа. Но при попытке что-нибудь сделать (считать ID, например) выдает ERROR:iMPACT:583 - '1': The idcode read from the device does not match the idcode in the bsdl File. INFO:iMPACT:1578 - '1': Device IDCODE : 00001111111111111111111111111000 Не знаю, на что грешить. То ли загрузочный кабель уже устарел/несовместим, то ли с китом проблемы. Смотрел осциллографом сигналы JTAG – на всех четырех линиях имеется активность. Глубже не разбирался. А китайцы в настоящее время продают кабели с названием DLC9G
  15. Цитата(Raven @ Jul 2 2013, 18:36) Проверил работу iMPACT'а у себя с моделированием неисправностей типа "нет соединения". Для отладки продуктивнее оказалось использовать функционал <iMPACT Menu> :: Debug -> Chain Integrity Test (что неудивительно, в общем-то, :-) для такой ситуации). Разобрался, что iMPACT тут делает (ничего хитрого, могу изложить подробнее, если надо). В общем, итог такой. Если все JTAG сигналы от кабеля к разъему на плате, кроме TDI, имеют хороший контакт (TDI - no connect), то наблюдается поведение, аналогичное вашему случаю: Браво! В точку. Виноватым оказался переходник, который раньше никогда не использовался. Не был должным образом пропаен контакт TDI (третий контакт слева на фото). Теперь все работает. Осциллографом смотрел до этого переходника. [attachment=78001:adapter.jpg]
  16. Цитата(Raven @ Jun 28 2013, 15:39) Это уже какой-то материал. Правда, без waveform'ы TMS разбираться будет плохо, и останется приличный процент гадания на кофейной гуще, но можно попробовать. Однако, если есть возможность снять то же самое, но с TMS,- было бы очень здорово (можно за счет замены TDI линии наTMS - что выдает на TDI iMPACT, мы уже видим). Было бы здорово еще поподробнее рассмотреть во времени (растянуть по времени) зависимости между TCK, TDI, TDO, TMS (по фронтам или спадам драйвится - сейчас непонятно). TMS досниму. На второй картинке можно разглядеть, что по спадам драйвится. Насколько я вижу. На 2-ой и 4-ой картинке 2мкс/дел. Клок был 3 МГц. Так и получается.
  17. Цитата(Raven @ Jun 26 2013, 15:25) Есть ли какие-то новости? Или это конструкция выходного дня, и спрашиваю рановато? Действительно, конструкция выходного дня. Снял осциллограммы. Но интерпретировать их пока не могу. На картинках цикл считывания ID в разных временных масштабах. Желтая линий - клоки TCK, голубая - TDI, красная - TDO На последней картинке самое начало цикла обмена. Видно, что TDO до некоторого времени в третьем состоянии, потом там появляются данные, потом снова уходит в третье состояние. [attachment=77885:jtag__pic1.png] [attachment=77886:jtag__pic2.png] [attachment=77887:jtag__pic3.png] [attachment=77888:jtag__pic4.png] Цитата(givcha @ Jun 27 2013, 19:58) А в BSDL-файле нет случайно раздела compliance pattern? C текстом, аналогичным нижеприведенному? (взял из первого попавшегося файла) -- Compliance-Enable Description attribute COMPLIANCE_PATTERNS of XC6VLX365T_FF1759 : entity is "(PROGRAM_B, HSWAPEN) (10)"; Если "да", то для корректной работы JTAG-автомата необходимо эти условия соблюсти, т.е. произвести соответствующие переключения цепей, подходящих к данным пинам. Честно говоря, не очень понимаю, что все это значит. Тем не менее - спасибо - буду разбираться.
  18. Цитата(Raven @ Jun 21 2013, 14:47) Не сразу обратил внимание: у вас проблемы начинаются при переключении JTAG clock на 25 МГц, а первоначальная энумерация происходит на 6 MHz. Это хорошо все объясняет. Проверьте сами : Эта фраза указывает только на то, что максимальная частота для JTAG 25 МГц. Я конечно не знаю, но не факт, что он её переключает. В настройках JTAG максимальная частота, которая может быть выбрана, 12 МГц. Пробовал понижать. Эффекта не было. IDCODE Looping - хорошая идея. Надо будет попробовать.
  19. Цитата(XVR @ Jun 21 2013, 13:16) Он у вас не прочел ID, ни в первый раз ни во второй. Проверяйте подключение JTAG. Возможно уровни напряжений на JTAG не соответствуют FPGA На основании чего он тогда определяет тип чипа?
  20. Цитата(Raven @ Jun 20 2013, 15:10) Да, действительно, странное поведение. Процедура энумерации JTAG цепочки проходит нормально (раз уж, как вы говорите, чип определяется корректно и рисуется цепочка), и на этом этапе IDCODE iMPACT'у нравится. А при попытке сделать почти то же самое, но слегка по-другому - уже нет. Я правильно понял ситуацию? А другие действия (LOAD, например) -он тоже завершает с такими сообщениями? Если да, и этот кабель 100% работает с другими платами, то придется все-таки проблему немного в iMPACT'овском JTAG Debugger'е поисследовать. Вручную тот самый IDCODE вычитать (это несложно, могу подсказать действия, если надо). Кстати, а нет возможности на других платах перепроверится перед началом углубления в детали? Вот полный лог из iMPACT. В конце пытаюсь получить Device ID. На все другие действия отвечает также. Connecting to cable (Usb Port - USB21). Checking cable driver. Driver file xusbdfwu.sys found. Driver version: src=1027, dest=1027. Driver windrvr6.sys version = 10.2.1.0. WinDriver v10.21 Jungo © 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021. Cable PID = 0008. Max current requested during enumeration is 280 mA. Type = 0x0605. Cable Type = 3, Revision = 0. Setting cable speed to 6 MHz. Cable connection established. Firmware version = 1027. File version of D:/Xilinx/13.4/ISE_DS/ISE/data/xusbdfwu.hex = 1100. Firmware hex file version = 1100. Downloading D:/Xilinx/13.4/ISE_DS/ISE/data/xusbdfwu.hex. Downloaded firmware version = 1100. PLD file version = 0012h. PLD version = 0012h. PROGRESS_END - End Operation. Elapsed time = 0 sec. Type = 0x0605. ESN not available for this cable. Attempting to identify devices in the boundary-scan chain configuration... INFO:iMPACT - Current time: 6/21/2013 00:36:45 // *** BATCH CMD : Identify -inferir PROGRESS_START - Starting Operation. Identifying chain contents...'0': : Manufacturer's ID = Xilinx xc6slx16, Version : 4 INFO:iMPACT:1777 - Reading D:/Xilinx/13.4/ISE_DS/ISE/spartan6/data/xc6slx16.bsd... INFO:iMPACT:501 - '1': Added Device xc6slx16 successfully. ---------------------------------------------------------------------- ---------------------------------------------------------------------- done. PROGRESS_END - End Operation. Elapsed time = 0 sec. // *** BATCH CMD : identifyMPM INFO:iMPACT - Current time: 6/21/2013 00:37:25 // *** BATCH CMD : ReadIdcode -p 1 INFO:iMPACT:583 - '1': The idcode read from the device does not match the idcode in the bsdl File. INFO:iMPACT:1578 - '1': Device IDCODE : 00001111111111111111111111111110 INFO:iMPACT:1579 - '1': Expected IDCODE: 00000100000000000010000010010011 Вот лог при попытке сделать Chain Integrity Test Maximum TCK operating frequency for this device chain: 25000000. Validating chain... INFO:iMPACT:1206 - Instruction Capture = '111111110101' INFO:iMPACT:1207 - Expected Capture = '101010XXXX01' INFO:iMPACT:2130 - Boundary-scan chain test failed . Please check tdi->tdo connection between the cable and device:'1' ( 'xc6slx16'). A problem may exist in the hardware configuration. Check that the cable, scan chain, and power connections are intact, that the specified scan chain configuration matches the actual hardware, and that the power supply is adequate and delivering the correct voltage. На других имеющихся платах пока, к сожалению, пока нет возможности проверить. У меня это хобби и со временем туго на данный момент. Буду признателен, если подскажите, как читать IDCODE вручную.
  21. Цитата(dm.pogrebnoy @ Jun 20 2013, 11:04) Китайские кабеля работают и с шестым виртексом и с шестым спартаном. И родные кабеля тоже с ними работают. Спасибо! Похоже в чем-то другом дело.
  22. Цитата(Flood @ Jun 19 2013, 20:24) Попробуйте прочитать ID оригинальным кабелем. Раз и то, и то китайское, по крайней мере, станет ясно, проблема в кабеле или в ките. Эх, если бы он еще был...
  23. Цитата(Bad0512 @ Jun 19 2013, 19:50) Какая частота TCK? Понижать пробовали? Другие устройства кроме 6 спартана в цепочке есть? Vccaux в порядке? Что на TDO твороится? Как насчёт дребезга и борьбы с ним? Вопросы, вопросы... Частоту пробовал менять. Эффекта нет. Других устройств нет в цепочке. Vccaux по моим представлениям в порядке = 3.3V. На TDO пачки импульсов. Имеются резисторы на линиях со стороны платы программатора. Дребезга в первом приближение не наблюдал. Прежде чем погрузится в анализ на уровне протоколов обмена, хотелось бы отбросить версию несовместимости Spartan-6 с этим загрузочным кабелем. Поизучав сайт Xilinx, так и не нашел информации поддерживают ли их старые, "родные", кабели новые семейства. Сам кит тоже китайский. Насколько google смог перевести с китайского, производитель настоятельно не рекомендует использовать неоригинальный JTAG кабель.
  24. В стандарте цифровой радиосвязи APCO-25 используется расширенный код Галея (24, 12) со следующей генераторной матрицей: КодOct                  Bin 4000     6165     100000000000  110001110101 2000     3073     010000000000  011000111011 1000     7550     001000000000  111101101000 400     3664     000100000000  011110110100 200     1732     000010000000  001111011010 100     6631     000001000000  110110011001 40          3315     000000100000  011011001101 20          1547     000000010000  001101100111 10          6706     000000001000  110111000110 4            5227     000000000100  101010010111 2            4476     000000000010  100100111110 1            4353     000000000001  100011101011 С помощью этой же матрицы можно получить стандартный код Голея (23, 12) (порождающий полином x^11 + x^10 + x^6 + x^5 + x^4 + x^2 + 1 или 0xC75) путем отбрасывания наименее значимого бита контроля четности. Это проверено и работает. В литературе по помехоустойчивому кодированию приводятся генераторные матрицы для кода Голея (24, 12), которые выглядят иначе (после отбрасывания единичной матрицы) – они симметричны относительно главной диагонали, строки матрицы циклически сдвинуты друг относительно друга. На основе симметричности строится алгоритм арифметического декодирования. Приведенная выше матрица не обладает описанными свойствами. Непонятно: - каким образом она могла быть получена. - как из нее получается циклический код (23, 12), хотя строки не цикличны. - как декодировать расширенный код (24, 12) (таблица из синдромов не устраивает)
  25. Матлабовкие исходники к книжке A Software-Defined GPS and Galileo Receiver