Scythian: различия между версиями

Материал из WIKI ELVEES
Нет описания правки
Нет описания правки
Строка 43: Строка 43:
boot</pre></blockquote>
boot</pre></blockquote>


'''Я скачал настроеный Buildroot и хочу внести изменения в исходники. Можно ли так делать?'''<blockquote>Можно, но нежелательно. Изменения, вносимые в build-директорию, могут быть потеряны. Необходимо делать так, как описано в [https://dist.elvees.com/mcom03/docs/linux-sdk/latest/components/buildroot.html#build-localmk инструкции]</blockquote>
'''Я скачал настроенный Buildroot и хочу внести изменения в исходники. Можно ли так делать?'''<blockquote>Можно, но нежелательно. Изменения, вносимые в build-директорию, могут быть потеряны. Необходимо делать так, как описано в [https://dist.elvees.com/mcom03/docs/linux-sdk/latest/components/buildroot.html#build-localmk инструкции]</blockquote>


'''Как измерить время на DSP-ядре ElCore50 в тактах либо в наносекундах?'''<blockquote>Можно читать счетчик тактов:<pre>asm volatile("tcd tic_cntr, %0" : "=r"(value) : :);</pre></blockquote>
'''Как измерить время на DSP-ядре ElCore50 в тактах либо в наносекундах?'''<blockquote>Можно читать счетчик тактов:<pre>asm volatile("tcd tic_cntr, %0" : "=r"(value) : :);</pre></blockquote>
'''Какие ограничения PCIE_A - работа в режиме 1х PCIe v2.1 (2.5GT/s)?'''<blockquote>
В драйвере не поддерживается PCIe legacy interrupts.
</blockquote>
'''Возможен ли перенос существующей системы загрузки(SBL-&gt;DDRInit-&gt;SBL-&gt;TF-A-&gt;U-Boot-&gt;Linux) на вариант без использования QSPI0 памяти, используя загрузку с SDMMC0(eMMC)?'''<blockquote>
Да, загрузка с eMMC возможна. Для этой реализации необходимо выдержать задержку 500мс снятия RESET на 1892ВА018 после включения питания на микросхемах eMMC.
</blockquote>


= Вопросы по проектированию аппаратуры =
= Вопросы по проектированию аппаратуры =
'''В документации указана опорная частота PLL равная 27.456 МГц. Отечественных резонаторов на такое значение нет, ближайшее 27.1919 МГц. Можно ли менять опорную частоту и в каких пределах?'''<blockquote>Согласно [https://elvees.ru/mc/docs-portal/scythian/hw-design-guide/index.html документации], частота 27.456 МГц является основной рабочей, т.к. на ней удобнее реализовывать SDR, но <span style="text-decoration: underline;">'''не является обязательной'''</span>.</blockquote>
'''В документации указана опорная частота PLL равная 27.456 МГц. Отечественных резонаторов на такое значение нет, ближайшее 27.1919 МГц. Можно ли менять опорную частоту и в каких пределах?'''<blockquote>Согласно [https://elvees.ru/mc/docs-portal/scythian/hw-design-guide/index.html документации], частота 27.456 МГц является основной рабочей, т.к. на ней удобнее реализовывать SDR, но <span style="text-decoration: underline;">'''не является обязательной'''</span>.</blockquote>


=== Вопросы по интерфейсам микросхемы ===
=== Вопросы по интерфейсам микросхемы ===<blockquote>Подскажите, поддерживает ли контроллер PCIe процессора 1892ВА018 подключение устройств с конфигурацией лейнов x1 и x2?- Да, поддерживает.</blockquote>
<blockquote>Подскажите, поддерживает ли контроллер PCIe процессора 1892ВА018 подключение устройств с конфигурацией лейнов x1 и x2?- Да, поддерживает.</blockquote>


=== Требования к проектированию ===
=== Требования к проектированию ===

Версия от 14:54, 6 марта 2023

Общая информация

Модуль в формате SMARC. Работа "из коробки"

Вопросы по программному обеспечению

Как указывать частоту DDR и импеданс?

Перейдите в tools/ddrinit, настройте среду pipenv согласно README.rst + doc/index.rst.Выполните

- <span id="HTMLENTITY:1678102710252" style="font-family: courier new", courier;" class="mwt-preserveHtml">pipenv run make menuconfig

Сконфигурируйте под свои нужды и сохранитесь. Появится .config. Выполните

- <span id="HTMLENTITY:1678110281770" style="font-family: courier new", courier;" class="mwt-preserveHtml">pipenv run make savedefconfig

и получите конфиг под Вашу плату. Переименуйте его и добавьте в tools/ddrinit/configs.

Далее перейдите в директорию с системой сборки buildroot и в external-mcom03/fragments/<your_fragment> укажите название конфига из ddrinit, который получился выше.</your_fragment>

Возможно ли записать образ ОС на USB-flash и с него запуститься, чтобы уже в дальнейшем прошить образ в eMMC?

Да.

Умеет ли Uboot прошивать eMMC?

Да, U-Boot умеет загружать Linux и с USB-flash, и с eMMC памяти. Но для этого Вам нужно будет поддержать работу USB и eMMc в U-Boot на Вашем модуле (возможно для этого ничего не потребуется, (но всё-таки мы за это не отвечаем)).

И есть ли возможность каким то другим способом прошить образ ОС в eMMC память?

Можно загрузить Linux по сети (TFTP + NFS) и из-под него прошить eMMC.

Существует ли какой-нибудь документ по запуску "пустой" платы со 1892ВА018, когда в qSPI и eMMC еще ничего нет?

Режимы загрузки описаны здесь: https://elvees.ru/mc/docs-portal/scythian/hw-design-guide/index.html#id7

Спецификация BootROM, отправляется по запросу на почту.

Также есть страница https://dist.elvees.com/mcom03/docs/linux-sdk/2022.09/design/boot-flow.html

Доступно ли описание на открытую часть драйвера графического контроллера 1892ВМ14Я (FrameBuffer)?

Драйверы описаны в http://dist.elvees.com/support/1892VM14YA/linux/Buildroot/v3.1/docs/mcom02-linux-kernel-manual.pdf

При запуске на модулях ELV-MC03-SMARC-R (RockPI) сборки Buildroot 09.2022 возникает проблема:

Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
Reading file would overwrite reserved memory 
Failed to load '/boot/extlinux/extlinux.conf'
Error reading config file
SCRIPT FAILED: continuing...
"Synchronous Abort" handler, esr 0x96000005 <br>

При перепрошивке qspi-flash эта область не перезаписывается.

Поскольку в релизе от сентября изменился объем доступной DDR-памяти, адреса также изменились. Для решения проблемы следует сбросить env.

Для этого во время загрузки U-boot нужно зайти в консоль uboot и ввести следующие команды:

env default -a
saveenv
boot

Я скачал настроенный Buildroot и хочу внести изменения в исходники. Можно ли так делать?

Можно, но нежелательно. Изменения, вносимые в build-директорию, могут быть потеряны. Необходимо делать так, как описано в инструкции

Как измерить время на DSP-ядре ElCore50 в тактах либо в наносекундах?

Можно читать счетчик тактов:

asm volatile("tcd tic_cntr, %0" : "=r"(value) : :);

Какие ограничения PCIE_A - работа в режиме 1х PCIe v2.1 (2.5GT/s)?

В драйвере не поддерживается PCIe legacy interrupts.

Возможен ли перенос существующей системы загрузки(SBL->DDRInit->SBL->TF-A->U-Boot->Linux) на вариант без использования QSPI0 памяти, используя загрузку с SDMMC0(eMMC)?

Да, загрузка с eMMC возможна. Для этой реализации необходимо выдержать задержку 500мс снятия RESET на 1892ВА018 после включения питания на микросхемах eMMC.

Вопросы по проектированию аппаратуры

В документации указана опорная частота PLL равная 27.456 МГц. Отечественных резонаторов на такое значение нет, ближайшее 27.1919 МГц. Можно ли менять опорную частоту и в каких пределах?

Согласно документации, частота 27.456 МГц является основной рабочей, т.к. на ней удобнее реализовывать SDR, но не является обязательной.

=== Вопросы по интерфейсам микросхемы ===

Подскажите, поддерживает ли контроллер PCIe процессора 1892ВА018 подключение устройств с конфигурацией лейнов x1 и x2?- Да, поддерживает.

Требования к проектированию

Рекомендации по Проектированию аппаратуры

Особенности пайки

Есть ли особенности по пайке и реболингу, инструкции и рекомендации?

Температурный профиль пайки подбирается технологом при производстве аппаратуры. Технические требования к выполнению технологических операций пайки и профили указаны в ГОСТ Р 56427-2015. Насколько нам известно, наши потребители используют стандартный профиль пайки для BGA-микросхем. Данный профиль может быть скорректирован с учетом функциональных особенностей платы.