Maverick_ 15 18 июля, 2022 Опубликовано 18 июля, 2022 · Жалоба Добрый день! Подскажите пожалуйста как подключить покупную планку памяти (sodimm, udimm) к FPGA? как узнать тайминги? Ответ нашел здесь https://www.ixbt.com/mainboard/spd.shtml Может ли FPGA (intel arria10) автоматически применить настройки(тайминги) из eeprom? или надо делать отдельно вычитку настроек памяти и самому их записывать в emif IP core? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ivanii 3 18 июля, 2022 Опубликовано 18 июля, 2022 · Жалоба Может это сигналы не DDR4, а xDIMM для SPD? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 18 июля, 2022 Опубликовано 18 июля, 2022 · Жалоба On 7/18/2022 at 3:35 PM, Ivanii said: Может это сигналы не DDR4, а xDIMM для SPD? может и скорее всего так оно и есть. Может ли FPGA (intel arria10) автоматически применить настройки(тайминги) из eeprom? или надо делать отдельно вычитку настроек памяти и самому их записывать в emif IP core? UPdate Разобрался... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flood 13 18 июля, 2022 Опубликовано 18 июля, 2022 · Жалоба On 7/18/2022 at 5:18 PM, Maverick_ said: Разобрался... И как, можно на Arria 10? Ранее сталкивался с тем, что нельзя - тайминги вбиваются в коре на этапе генерации. Но это был Xilinx. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 18 июля, 2022 Опубликовано 18 июля, 2022 · Жалоба On 7/18/2022 at 10:24 PM, Flood said: И как, можно на Arria 10? Ранее сталкивался с тем, что нельзя - тайминги вбиваются в коре на этапе генерации. Но это был Xilinx. в арии10 тоже пока это делается вручную (как я понял) Вначале тайминги с планки считываем по I2C подобному интерфейсу из eeprom (есть исключение) Затем считанные данные вручную ввести в корку emif PS но Zynq MPSoC вроде уже позволяет... Иначе не знаю как работать если планка памяти ddr4 (sodimm, udimm) будет покупная, а плата собственного "приготовления"... Может есть другие варианты? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 34 18 июля, 2022 Опубликовано 18 июля, 2022 · Жалоба 4 minutes ago, Flood said: Ранее сталкивался с тем, что нельзя - тайминги вбиваются в коре на этапе генерации. Но это был Xilinx. 3 hours ago, Maverick_ said: Иначе не знаю как работать если планка памяти ddr4 (sodimm, udimm) будет покупная, а плата собственного "приготовления"... Чтобы это было можно нужно всего-то написать свой контроллер DDR4 который имел бы возможность динамической смены таймингов памяти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 19 июля, 2022 Опубликовано 19 июля, 2022 · Жалоба был не внимателен, можно и наверное с использованием внешней логики которая будет читать и потом по авалон ММ писать в контроллер DDR4 (желтое на скрине) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 19 июля, 2022 Опубликовано 19 июля, 2022 · Жалоба Можно сделать чтение процессором епром памяти The SPD EEPROM is accessed over a System Management Bus (SMB), which is a derivative of I2C. I'll use Intel's I2C master core in Platform Designer to connect to the SMB. This has two input signals for serial data and clock suffixed _sda_in and _scl_in, and two output signals also for serial data and clock suffixed _sda_oe and _scl_oe. These need to be connected to the SMB bidirectional DDR4 pins using tristate buffers. For example: wire i2c_sda_oe, i2c_scl_oe; assign DDR4B_SCL = i2c_scl_oe ? 1'b0 : 1'bz; assign DDR4B_SDA = i2c_sda_oe ? 1'b0 : 1'bz; niostest qsys0 ( .clk_clk (clk_100), .i2c_serial_sda_in (DDR4B_SDA), .i2c_serial_scl_in (DDR4B_SCL), .i2c_serial_sda_oe (i2c_sda_oe), .i2c_serial_scl_oe (i2c_scl_oe), .reset_reset (!reset_n_100) ); Варианты: 1. распарсить и вручную ввести данные в emif ddr4 контроллер 2. Попробовать использовать порт который выделен желтой подписью сообщением выше - записав по нему прчитанные данные PS таблица и описание регистров Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 20 июля, 2022 Опубликовано 20 июля, 2022 · Жалоба Подскажите пожалуйста - имеются ли у кого то парсер/декодер для вычитанных данных eeprom (serial presence detect (SPD)) ??? Serial Presence Detect (SPD) for DDR4 SDRAM Modules - документ(стандарт) во вложении Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 26 июля, 2022 Опубликовано 26 июля, 2022 · Жалоба Спрашу еще раз (я не могу разобраться) Добрый день! Подскажи пожалуйста как подключить покупную планку памяти DDR4 (sodimm, udimm) к FPGA? как узнать тайминги? Распарсивание содержимого из eeprom (SPD (Serial Presence Detect)) не дает всех таймингов которые необходимо внести в External Memory Interfaces Intel Arria10. (возможно я парсер spd не правильный использовал) Может есть какое то другое решение? Прошу хотя бы намекнуть на путь ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 183 26 июля, 2022 Опубликовано 26 июля, 2022 · Жалоба Да воткните ее в компуктер, да посмотрите Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться