des00 25 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба 3 minutes ago, Maverick_ said: Посмотрите референс дизайн как ни странно, страница устарела. сейчас генерируется IP с другим интерфейсом🤷♂️ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Worldmaster 0 23 августа, 2023 Опубликовано 23 августа, 2023 (изменено) · Жалоба В 23.08.2023 в 09:47, Maverick_ сказал: Посмотрите референс дизайн Это уже обсуждалось. На эту корку актуальный мануал вот тут Изменено 23 августа, 2023 пользователем Worldmaster Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба 3 hours ago, Worldmaster said: На эту корку актуальный мануал вот тут ууу, судя вот по этой строке: Quote 7 I_sdrc_cmd I {O_sdram_ras_n, O_sdram_cas_n,O_sdram_wen_n} это не нормальный контроллер памяти. По управлению это часть ctrl path нормального контроллера памяти. Т.е. она не умеет делать ras/cas из адреса, отслеживать переход на другую строку, другой банк и все такое. Надо самому вручную делать ras, потом cas и т.д. Вангую что вы, без штудирования документа как работает SDRAM память, пробовали делать чтение/запись в закрытые банки) и естественно ничего не работало) Подытожу: моделирование, моделирование и еще раз моделирование. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Worldmaster 0 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба В 23.08.2023 в 13:36, des00 сказал: 7 I_sdrc_cmd I {O_sdram_ras_n, O_sdram_cas_n,O_sdram_wen_n} А где вы это нашли то?? Ткните пальцем?? почему я не нашел этого. В 23.08.2023 в 13:36, des00 сказал: Т.е. она не умеет делать ras/cas из адреса, отслеживать переход на другую строку так ведь по осцилограммам очень даже умеет. На какие то команды же он нормально отвечает. И меняет состояние линий. И на линиях BA ADR выставляется то что ожидается. В 23.08.2023 в 13:36, des00 сказал: делать чтение запись в закрытые банки) Что значит в закрытые. Я же сделал команду ACTIVATE. Единственное что в отличии от даташита подавать надо было sdram_addr_request <= bank_addr & row_addr & col_addr; а не bank/row или bank/col O_sdram_ba содержит ровно тот банк который нужен. А счетчик O_sdram_addr содержит нужный сдвиг col_adr. Также ожидаемый. И он его изменяет. В примере кода также заметил что PLL сделан так что второй сигнал сдвинут по фазе на 22,5. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба 22 minutes ago, Worldmaster said: А где вы это нашли то?? Ткните пальцем?? почему я не нашел этого. страница 7(16) документа по вашей ссылке, раздел 5.2 用户侧信号 22 minutes ago, Worldmaster said: так ведь по осцилограммам очень даже умеет. Вот только она не правильная) Правильная последовательность записи в сдрам должна быть вот такая 22 minutes ago, Worldmaster said: Что значит в закрытые. Я же сделал команду ACTIVATE. На ваших вейвформах, где вы показываете чтение, этой команды нет. Банк нельзя держать открытым вечно, его надо закрыть за время не больше чем tras, для вон той микроновской памяти это 120мкс. В общем, без моделирования с моделью памяти разбираться очень долго. Ваш код + модель + симмулятор и будет ляпота) А про то что сигналы меняются, естественно они меняются, это же болванка должна что-то делать, иначе зачем она нужна Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба Еще момент, присмотрелся к тому что вы выложили. А почему у вас команда {ras_n, cas_n, we_n} LMR это HHH (NOP), тогда как по документам это должно быть LLL (LMR). И ни на одной вейвформе у вас нет команды ACTIVATE LHH Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба Тема создана 16 августа. Сегодня 23. Считай неделя прошла. Вопросы автору: 1. Вы скачали и подключили модель памяти ? 2. Вы прочитали даташит на память ? 3. Вы поняли как работать с динамической памятью ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба 10 minutes ago, Flip-fl0p said: Тема создана 16 августа. Сегодня 23. Считай неделя прошла. Вопросы автору: 1. Вы скачали и подключили модель памяти ? 2. Вы прочитали даташит на память ? 3. Вы поняли как работать с динамической памятью ? возможно и больше судя Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Worldmaster 0 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба В 23.08.2023 в 13:54, des00 сказал: документа по вашей ссылке, раздел 5.2 用户侧信号 так это сказано что команда формируется по этим сигналам. Ниже есть таблица с описанием. Переписал алгоритм как вы сказали. Вначале включаюсь, жду когда зафиксируется тактирование с PLL затем иду на инициализацию и жду пока флаг O_sdrc_init_done будет 1. хз что именно делает в этот момент модуль. Далее последовательно : Команда REFRESH с ACK Команда ACTIVATE c ACK WRITE c ACK read не влез в выборку. но там FF читает. команду NOP я вообще убрал потому что контроллер не подтверждает ее. и не меняет никакие сигналы. В 23.08.2023 в 13:54, des00 сказал: иначе зачем она нужна Вот и у меня вопрос тот же самый. Если как вы говорите можно руками написать свою реализацию. Но видимо с помощью этого модуля происходит связывание внутренних сигналов. В 23.08.2023 в 13:54, des00 сказал: его надо закрыть за время не больше чем tras, Как я понял это надо команду PRECHARGE выполнить но контроллер ее также не подтверждает. В 23.08.2023 в 13:36, des00 сказал: моделирование, моделирование и еще раз моделирование. да оно и понятно но ... ладно попробую прикрутить модель памяти. Хотя мне не очень ясно как я ее прикручивать буду к внутренним сигналам контроллера. Ну ладно. Попробую. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Worldmaster 0 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба В 23.08.2023 в 14:23, Flip-fl0p сказал: 1. Вы скачали и подключили модель памяти ? В процессе. В 23.08.2023 в 14:23, Flip-fl0p сказал: 2. Вы прочитали даташит на память ? да. В 23.08.2023 в 14:23, Flip-fl0p сказал: 3. Вы поняли как работать с динамической памятью ? Да. Вот добавляю диаграмму READ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Worldmaster 0 23 августа, 2023 Опубликовано 23 августа, 2023 · Жалоба а почему когда я пытаюсь добавить в осцилограф линию клока то пишет ошибку? Instance 'MySDRAM/u_sdrc_hs_top/U_ODDR_clk'(ODDR) of module 'top' cannot drive instance 'gw_gao_inst_0/u_la0_top/u_ao_mem_ctrl/data_reg_dly_0_s0'(DFF) by wire 'O_sdram_clk_d' Остальные то линии нормально захватывает.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zversky 19 25 августа, 2023 Опубликовано 25 августа, 2023 (изменено) · Жалоба Remark, placed here before, was intentionally deleted. Изменено 25 августа, 2023 пользователем Zversky моё участие считаю бессмысленным Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Worldmaster 0 25 августа, 2023 Опубликовано 25 августа, 2023 · Жалоба Ну вот . Вынес код сдрам в отдельный модуль. Сделал тестбенч. Но как я предполагалось моделсим не может эмулировать корку. На выходах всегда непонятные значения. Каким образом предполагается работа с моделью памяти если линии O_sdram не выдают никаких сигналов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 25 августа, 2023 Опубликовано 25 августа, 2023 · Жалоба 1 hour ago, Worldmaster said: Каким образом предполагается работа с моделью памяти если линии O_sdram не выдают никаких сигналов. а ничего что время конфигурации памяти как минимум 100мкс? а у вас максимум 2мкс) собирайте пакет: тестбенч, модель памяти, модель контроллера для моделирования + скомпилированная библиотека под квесту. только тогда можно будет что-то обьективное сказать. ЗЫ. компиляция библиотеки должна быть в режиме максимальной отладки (-novopt или в новых +acc=bnpr) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Worldmaster 0 25 августа, 2023 Опубликовано 25 августа, 2023 · Жалоба Цитата о что время конфигурации памяти как минимум 100мкс? Так памяти но не контроллера же который от корки. Ну подождал 2 сек. Состояние линий не изменилось. Цитата модель контроллера для моделирования Это вы имеете в виду тот что зашифрованый ??Так как я его добавлю если он шифрованый. Добавить то я добавлю но моделсим сказал что там ошибки и компилировать отказался. Где то в темах кто то говорил что якобы все эти файлы уже расшифровали и где то в секретном месте их можно взять. Может вы знаете где это? Такую же модель как для памяти у говина я не нашел. Поделитесь пожалуйста если такая имеется. Нашел в папках IDE либу SDRC_HS.dll . Это та самя либа контроллера для моделирования или что? Цитата под квесту. Можно линк на нее с лекарством?? Наверняка тут на внутреннем хранилище есть? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться