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

    

iosifk

Модераторы
  • Публикаций

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

  • Посещение

Репутация

0 Обычный

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

  • Звание
    Гуру
  • День рождения 23.09.1952

Контакты

  • Сайт
    http://www.iosifk.narod.ru
  • ICQ
    0
  • Skype
    iosifk_mobil

Информация

  • Город
    спб

Старые поля

  • skype
    iosifk_mobil

Посетители профиля

23 181 просмотр профиля
  1. Постараюсь ответить. Если говорить глобально, то люди делятся на две группы, каждая из которых имеет свой взгляд на мир. Для женщин важен "результат": беременная - не беременная; принес муж зарплату или не принес; замужем - не замужем. (Мойше, говорят твоя дочь замуж вышла? Мойшше отвечает, ну так, понемногу...) Для мужчин - главное "процесс". Кататься на лыжах, просто кататься... Просто встречаться и просто заниматься сексом... Поэтому понять другую сторону сложно... И не всегда сразу получается... Теперь к термину "конструировать"... Для профессионала, работа - это результат. потому как деньги платят за результат. А для любителя - ковыряние с железками - это процесс. Ведь в большинстве случаев им результат как таковой и не нужен...
  2. По форме - правильно. Но по технической сути за такое вычисление clk2 в проекте разработчика необходимо приговорить к расстрелу на месте....
  3. Есть такая программка - DemoBuilder от фирмы Танида. Запускаете ее в фоновом режиме и она все действия на экране превратит во флэшь анимацию. Которую уже можно выложить или сохранить себе на память...
  4. Мои предложения не технические, а организационные. Первое такое: Есть ли возможность на первую плату запаять кристалл в том же корпусе, но с более "жирной начинкой"? Это просто выгоднее по деньгам, т.к. уменьшит сроки разработки, позволит применить встроенные анализаторы и пр. Ибо время дороже денег. А вот когда заработает, то все равно пойдут доработки после испытаний. Вот там уже и будет смысл "ужимать" проект.... Ну и еще второе. Возьмите себе еще одну машину, как сервер. И на ней запускайте только компиляцию. Особенно на ночь. А правку текстов можно проводить и на более простой машинке... В любом случае, сегодня даже навороченная машина на пару месяцев даст прирост производительности в работе над проектом...
  5. Ну так посмотрите в проекте иерархию. Уберите из проекта все, кроме самого нижнего файла и проводите компиляцию. Постепенно, добавляйте более верхние файлы и смотрите, с какого места пойдут ошибки.. Может быть не указана версия Верилога? По умолчанию 95 года, а используются выражения для более нового 2001 или SV?
  6. И добавлю. Прочтите хотя бы ID микросхем по jtag. Будет понятно, что там хотя бы что-то живо...
  7. # ** Note: (vsim-3812) Design is being optimized... Попробуйте в Моделсиме поставить галочку, запрещающую оптимизацию...
  8. Поскольку фирма жива, то я бы для начала рекомендовал Вам с ними связаться напрямую или через https://ldm-systems.ru/forum/... Написать, позвонить, приехать, попросить показать... Может быть разработчик платы еще у них работает или они знают, как с ним связаться. Что тут сложного? Питание в порядке? Выводы, определяющие загрузку включены и запитаны правильно? ID микросхем по jtag определяется? Скорость передачи битов по jtag уменьшить пробовали?
  9. Делаем автомат. На вход ему подаем сигнал "Старт", в ответ он отдает сигнал "Выполнено". По этому ответному сигналу, сбрасываем "Старт"... Либо сигнал "Старт" ставится на 1 клок и этого может быть достаточно.... На самом деле, в проекте может быть иерархия автоматов, каждый из которых управляет своим уровнем.
  10. А еще в старину монтаж жгутов делали такой пластиковой пружинкой. Ее просто навивали на жгут... И как помню, пружинка была двух размеров по диаметру...
  11. Попробуйте все же в Ксайлинкс написать в техподдержку. Ведь тут требуется явный ответ от них...
  12. Пока Вы разбираетесь, время идет. Поэтому я бы пошел таким путем. Разработчик ядра известен? Я бы для начала написал ему и спросил, какие примитивы и библиотечные узлы из либгайда там использованы. Вероятно что они работают на 6-й серии, но не работают на 7-й серии...
  13. Так в либгайдах, где начинается описание инстанса, всегда давали табличку, в которой говорилось о том, в каких сериях этот инстанс присутствует и работает... Скачайте либгайды на эти серии и смотрите...
  14. Вот кусок от старого проекта. // ROM starts here RAMB16_S18 ROMA // program space ( .WE (1'b0), .EN (ram_rd_ena), .SSR (1'b0), // signal to command memory, .CLK (clk), // signal to memory, .ADDR (ps_cnt[9:0]), .DI (16'h00), .DIP (2'b00), .DOP (), .DO (ps_data[31:16]) ); RAMB16_S18 ROMB // program space ( .WE (1'b0), .EN (ram_rd_ena), .SSR (1'b0), // signal to command memory, .CLK (clk), // signal to memory, .ADDR (ps_cnt[9:0]), .DI (16'h00), .DIP (2'b00), .DOP (), .DO (ps_data[15:0]) ); // Date, Time - 15.11.2004 18:14:16 // 1K word 2 x 1024 x 18 // A - Hi word // B - Low word // //synthesis attribute INIT_00 of ROMA is "80008000800080008000800080000000A8004304800000008000980000008000" //synthesis attribute INIT_00 of ROMB is "017A00CB00AC0089002F007F029A000000090A00000100000006000B0000002F" //synthesis attribute INIT_01 of ROMA is "0000000000000000000000000000800080008000800080008000800080008000" ... //synthesis attribute INIT_29 of ROMB is "000000000808000000000000029F0000029400000298000A00000000FFFFFFFF" //synthesis attribute INIT_2A of ROMA is "0000000000000000000000000000000000008000000090009800420D80004A10" //synthesis attribute INIT_2A of ROMB is "00000000000000000000000000000000000002A30000000000040A050001080A" //synthesis translate_off defparam ROMA.INIT = 18'h0; defparam ROMA.SRVAL = 18'h0; defparam ROMA.WRITE_MODE = "WRITE_FIRST"; defparam ROMB.INIT = 18'h0; defparam ROMB.SRVAL = 18'h0; defparam ROMB.WRITE_MODE = "WRITE_FIRST"; defparam ROMA.INIT_00 = 256'h80008000800080008000800080000000A8004304800000008000980000008000; defparam ROMB.INIT_00 = 256'h017A00CB00AC0089002F007F029A000000090A00000100000006000B0000002F; ..... defparam ROMA.INIT_29 = 256'h000000004A10000000000000800000008000000080009800521100005129510C; defparam ROMB.INIT_29 = 256'h000000000808000000000000029F0000029400000298000A00000000FFFFFFFF; defparam ROMA.INIT_2A = 256'h0000000000000000000000000000000000008000000090009800420D80004A10; defparam ROMB.INIT_2A = 256'h00000000000000000000000000000000000002A30000000000040A050001080A; //synthesis translate_on // ROM stops here У меня был самодельный ассеблер, который в файле искал строку: // ROM starts here и потом до строки // ROM stops here врезал кусок описания памяти... Собственно собрать данные в строки и к ним добавить куски "defparam ROMA.INIT_29 = 256'h" совсем не сложно... И при таком подходе запускать что с сервера, что с рабочего компьютера - все равно. Здесь один блок инитов - для компиляции, второй для симуляции.
  15. https://www.xilinx.com/support/documentation/sw_manuals/xilinx2012_2/ug953-vivado-7series-libraries.pdf стр12 Verilog Instantiation Template и далее на стр.13 строки .INIT_00(256'h0000000000000000000000000000000000000000000000000000000000000000), вот вместо нулей и пишите коды справо-налево... И никаких файлов инициализации после этого не нужно...