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

jenya7

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

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

  • Посещение

Репутация

0 Обычный

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

  • Звание
    Профессионал

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

4 754 просмотра профиля
  1. как чувствовал. :) у меня эти выходы с entity мапируются на выходы в топ entity.
  2. спасибо. я читал что стоит избегать использование inout.
  3. я и сделал через промежуточный сигнал. все равно ошибка. этого я и хочу избежать.
  4. У меня в entity есть выходы REG_OUT_SEL1 : out std_logic_vector(5 downto 0); REG_OUT_SEL2 : out std_logic_vector(5 downto 0); мне нужно через интерфейс (SPI) писать туда значения и считывать текущее состояние выходов signal out_sel1 : std_logic_vector(5 downto 0); signal out_sel2 : std_logic_vector(5 downto 0); out_sel1 <= REG_OUT_SEL1; out_sel2 <= REG_OUT_SEL2; when ST_WORD_READ => when X"0022" => sspi_data_out <= "0000000000" & out_sel1; when X"0023" => sspi_data_out <= "0000000000" & out_sel2; when ST_WORD_WRITE => when X"0022" => REG_OUT_SEL1 <= sspi_data_in(5 downto 0); when X"0023" => REG_OUT_SEL2 <= sspi_data_in(5 downto 0); получаю ошибку но мне не хочется делать REG_OUT_SEL1 : inout std_logic_vector(5 downto 0); есть другое решение?
  5. я учитываю это. я приложил документ более подробно описывающий весь процесс. в любом случае CFM1 size = 188415 - 16384 = 172031 bytes. а размер файла output_file_cfm1_auto.rpd в несколько раз больше. Rpd File Programming Process.doc
  6. Есть вопрос. Кто нибудь прожигал rpd файл в FPGA сериально? Я наладил прошивку через бутлодер. В CFM0 сидит бутлоадер. Создаю rpd файл в тестовом проекте. редактирую rpd файл - сдвигаю CFM1 секцию. Все указывает на то что файл прожегся на CFM1. Но когда я выставляю ножку BOOT_SELECT подыматься с CFM1 ничего не подымается и подымается CFM0. Очевидно что я что то не так делаю. Не так создаю rpd файл или не так его прожигаю. Есть кто нибудь кто знает как создать-прожечь rpd файл? в Авалон коре запись 32-х битная. я беру по 4 байта из файла и переворачиваю их и передаю в FPGA bytes[0] = reversed_byte[raw_data[i]]; bytes[1] = reversed_byte[raw_data[i + 1]]; bytes[2] = reversed_byte[raw_data[i + 2]]; bytes[3] = reversed_byte[raw_data[i + 3]]; SendWrite(bytes); но может быть надо так? bytes[0] = reversed_byte[raw_data[i + 3]]; bytes[1] = reversed_byte[raw_data[i + 2]]; bytes[2] = reversed_byte[raw_data[i + 1]]; bytes[3] = reversed_byte[raw_data[i]]; весь путь загрузки rpd файла я представил на картинке
  7. Странная проблема при оптимизации

    мда... ребята проблемы не нашли как говориться - с нашей стороны все патроны вышли. а вы их у себя ловите.
  8. так MAX10 - это CPLD на стероидах, так они рекламируют :) по крайней мере наши железячники встречались с представителем Интел так тот сказал - взяли CPLD добавили PLL, ADC, FLASH - кушайте на здоровье :)
  9. ну это все redesign. борды уже изготовлены. я посмотрел Post-Fit. там добавляются входные-выходные буфера. никуда не денешся.
  10. у меня есть подозрение одно... у меня сигнал селект и второй вход приходят из другого модуля. из модуля интерфейса с микроконтролером. а я там их пока не подключил. да. в этом была проблема. результат вышел неутешительный - 9.378. нигде не указано в каких единицах но я полагаю наносекунды. попробовал их LPM_MUX - 11.997 нано. катастрофа. что можно придумать? как можно скомутировать входы на выход быстрее?
  11. да. конечно. все ножки проинициализированы в Pin Planner. у меня есть только Resource Utilization by Entity а там он мой мукс не показывает мне тут подсказали что директиву report_path -from [get_ports {F_LPTG_IN[0]}] -to [get_ports {F_OTB_OUT[0]}] -npaths 1 -panel_name {Report Path} -multi_corner надо прописать в констрэйн файле (.sdc). прописал но репорт все равно не генериться.
  12. да. пробовал и так и этак. все время пишет No paths were found. Но в RTL я вижу F_LPTG_IN[0] скомутирован на F_LPTG_OUT[0] через мукс. интересно а если использовать LPU_MUX может он пошустрее будет?
  13. report_path -from [get_ports {F_LPTG_IN[0]}] -to [get_ports {F_LPTG_OUT[0]}] -npaths 1 -panel_name {Report Path} -multi_corner в консоли пишет
  14. да. точно. у него в Castom Report есть Report Path. Выбираю в поле From входной пин, в To выходной пин. генерирую -получаю Nothing to report. Подозреваю что в Quartus Lite это не работает, только в Quartus Pro.
  15. не нашел там такого. может надо настроить TimeQuest? определить у него в настройках?