Jump to content

    

Faton_11

Участник
  • Content Count

    108
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Faton_11

  • Rank
    Частый гость

Recent Profile Visitors

1427 profile views
  1. да, теперь понятно. получилось, спасибо!
  2. Теперь IP-адрес модуля 192.168.1.2 ,Порт 5000. IP-адрес ПК 192.168.1.100 После нажатия кнопки "Connect" в Hercules: После нажатия кнопки "Connect" в Matlab:
  3. спасибо за ответы!) для наглядности прикрепляю картинки. Модуль пингуется через командную строку , но команда Ping не проходит через другой терминал Ну и в матлабе соединение не устанавливается тоже
  4. спасибо за ответ! тогда немного предыстории: подключаю модуль wiznet 5500 на этапе "сервер слушает клиента", т.е. регистр Sn_SR (Socket n Status Register) находится в состоянии "SOCK_LISTEN". Теперь сокет ждет SYN-пакет от TCP-клиента. Если пакет будет успешно принят, регистр Sn_SR сменит состояние на "SOCK_ESTALBLISHED". Так вот, получается, модуль ждет SYN-пакет, а я не знаю каким образом его отправить, посредством чего, и можно ли будет проследить это в снифере?
  5. Добрый день!Пытаюсь передавать данные через matlab между ПК (клиентом) и Ethernet -модулем(сервером), соответственно по Ethernet кабелю. Клиент должен отправлять arp-запрос модулю, но в сниффере видно, что никакие запросы со стороны Matlab не отправляются.Клиент в матлабе выглядит так: t = tcpip( 'localhost',50502, 'NetworkRole', 'client'); set(t, 'TimeOut',600); fopen(t); data = fread(t, 10); Видимо, этого кода не достаточно и должно быть что-то ещё. Подскажите, пожалуйста, что я делаю не так, и как сделать чтобы matlab все же отправлял arp-запросы?
  6. Wiznet 5500 не отвечает

    Вам ведь ответ был самому первому) а знание того, что фирменный драйвер делает, для меня ясности не очень добавило( в общем, Вы были правы. Это все кривой сброс, теперь, кажется, отвечает. Спасибо! =) и спасибо всем за ответы!=)
  7. Wiznet 5500 не отвечает

    в 1м бите косяк, теперь вижу. но теперь-то что неправильно, все равно не понимаю
  8. Wiznet 5500 не отвечает

    с задним фронтом же меняется. извиняюсь за качество фото: камера не очень. но если и по спаду защелкивать, то снова ничего(
  9. Wiznet 5500 не отвечает

    Прикрепляю фото с нулевыми данными. Передаю значение 00000000_00011010_00000001_00000000, где биты [31:16] - это адрес считываемого регистра, [15:8] - контрольный байт: - нули в [15:11] означают, что обращаемся к общему регистру (есть ещё регистры для настройки каждого сокета) - "0" в бите [10] означает, что режим "чтение" - "01" в [9:8] означает что в кадре только 1 байт данных ("Fixed Data Length Mode , 1 Byte Data Length (N = 1)") [7:0] - байт данных в режиме записи.
  10. Добрый день! Имеется модуль Ethernet W5500, управляю им с ПЛИС. Хочу считать состояния регистров по SPI, но модуль молчит( Например, пытаюсь считать RTR-регистр по адресу 0x001A, где по умолчанию должно быть значение D0. Перед тем как отправлять, делаю сброс через ногу, выведенную на разъем. Ниже прикрепляю диаграмму (синий - МOSI, желтый - SCLK, розовый - SCS, зеленый - MISO). Подскажите, что я делаю не так?
  11. хорошо, спасибо за советы и простите за долгий ответ. А бег с криками про мистику разве что помогает окончательно не впасть в отчаяние=)
  12. Понимаю, что там асинхронщина, но не понимаю как в данном случае она влияет? Смотрю на анализаторе: данные ADC_Out, поступающие в ПЛИС, защелкиваются по фронту сигнала Mlndr_CLK. В состоянии SUM_step0, предположим, первый дребезг фронта клока отлавливается и происходит переход в следующее состояние. Автомат успевает проходить все состояния до нового фронта Mlndr_CLK. Что в моих рассуждениях неверно?)
  13. я не против грамотного заполнения SDC, только вот с этим совсем все плохо, и вот тому пример: В проекте есть следующие клоки : - Mlndr_CLK - клок, идущий с внешнего генератора на порт общего назначения ПЛИС и равный 12.5 МHz; - clk_dbg - клок с генератора, установленного на отладочной плате (Сyclone II FPGA Starter Board) и равный 50 МHz; - PLLclk – клок с выхода мегафункции PLL равный 100 MHZ (на входе PLL - clk_dbg) Данные поступают на вход модуля цифрового фильтра по клоку Mlndr_CLK, арифметика вычисляется на более "быстром" клоке - PLLclk always@(posedge PLLclk) case(st) SUM_step0: begin begin if (Mlndr_CLK) st=SUM_step1; else st=SUM_step0; end begin //арифметика.. end end ....... //арифметика.... SUM_step3: begin gnrt2[4].add_dataa=gnrt2[1].add_res; gnrt2[4].add_datab=gnrt_mult[8].mult_res; st=SAVE_add_res; end SAVE_add_res: st=SAVE_div_res; SAVE_div_res: st=SUM_step0; default: st=SUM_step0; endcase //_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ always @ (posedge PLLclk) if (st==SAVE_add_res) buff_reg1=gnrt2[4].add_res; //_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ always @ (posedge PLLclk) if (st==SAVE_div_res) buff_reg2=quotient_bx[ADC_WIDTH-1:0]; //_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ always @ (posedge Mlndr_CLK) dataout=buff_reg2; // выходные данные, идущие наружу модуля , где gnrt2[4].add_res - результат вычислений с выхода мегафункции сумматора (находится в блоке generate): Adder_bx addr_bx (add_dataa,add_datab,add_res); этот результат сохраняется в регистре buff_reg1 и затем поступает на мегафункцию делителя: Div div_rounding_bx(denom, buff_reg1,quotient_bx,remain_bx); результат сохраняется в регистре buff_reg2, затем по фронту "медленного" клока Mlndr_CLK, подается на выход модуля TimeQuest выдает сплошные "слэки" (см. прикрепленный файл). Констрейны, собственно, такие: create_clock -name Mlndr_CLK -period 12.5MHz [get_ports {Mlndr_CLK}] create_clock -name clk_dbg -period 50MHz [get_ports {clk_dbg}] create_generated_clock -name PLLclk -source [get_ports {clk_dbg}] -multiply_by 2 -duty_cycle 50 (видимо, для PLL ещё нужно указать параметр "[get_pins{.....]}]", но в выпадающем списке пинов ничего подходящего не было( Чем можно эти слэки исправить и почему в отчете Timequest-a в качестве launch и latch клоков стоит clk_dbg, а не PLLclk?
  14. andrew_b, вот как раз с констрейнтами вожусь, спасибо! iosifk, а как научились?) Тоже в основном удавалось решать проблему констрейнтами?