Search
Write a publication
Pull to refresh
4
0
Send message

Репка Пи 4 построена на основе SoС Allwinner H6. Такие SoC используются ещё и в ТВ-приставках.
Интересно было бы сравнить с другими устройствами, доступными на рынке.

В Ноябре 2024 года у меня получилась вот такая скорость на ТВ-приставке RK3528.
Диск SSD (какой-то китайский ноунейм из самых дешёвых) подключен через USB.

Всё понятно (сам тоже cделал ПК из ТВ приставки) кроме одного момента ближе к началу статьи.
Скажите, а вы правда купили три ТВ-приставки на ARM вместо одного мини-ПК на Intel?

Ну например как альтернатива лазерному принтеру при изготовлении печатных плат.

И что, неужели комплект корпус + кастомная материнская плата обошлись дешевле, чем близкий по производительности готовый ноутбук х86?
Кстати, для справки, на Алиэкспресс замечен комплект серийная материнская плата + модуль CM3588
16к за 4 ГБ ОЗУ
21к за 16 ГБ ОЗУ

Недею пытаюсь пользоваться чат гпт. Спрашиваю про виртуальные машины и линукс по немножку. Сегодня столкнулся с тем, что нейросеть придумала несуществующие параметры для busybox.
Ну или может быть эти параметры существуют, но для какого-то особенного китайского, неванильного форка бизибокса.
Я поплевался с этих ответов и полез гуглить стэковерфлоу.

По второму смущению тоже прояснилось. Почему-то qemu-system-mipsel не запускается, когда виртуальной машине даётся менее 256 МБ ОЗУ.

Объяснение здесь: https://docs.u-boot.org/en/stable/board/emulation/qemu-mips.html#limitations-comments
The memory size for Qemu is hard‑coded to 256 MiB.

С 256-ю мегабайтами прекрасно запустилось.

По первой части смущение закончилось. Я нашёл ваш https://github.com/lunixoid/qemu_mips/blob/main/tests/test_firmware.sh

Но вопрос про биос остаётся.

Здравсвуйте, Роман.
Я попробовал воспроизвести ваш метод запуска qemu-system-mipsel.
У меня не получилось сделать как у вас и кое-что смутило.

Первое что смутило - вы указали IDE диск в переменных u-boot:
bootcmd=saveenv; fatload ide и так далее.
Но в команде запуска qemu-system-mipsel
spawn qemu-system-mipsel -cpu 24Kc -M malta -m 1024 -nodefaults -nographic -serial stdio -bios env(IMAGE),format=raw -net nic,model=pcnet -net user
я не вижу параметра, добавляющего диск к этой виртуальной машине.

Второе что смутило - загадочное -bios env(IMAGE)
По аналогии с qemu-system-aarch64 я предположил, что под env(IMAGE) скрывается файл u-boot.bin. Ведь перед этим вы посвятили абзац тому, как конфигурировали этот u-boot. Однако, когда я попытался запустить qemu-system-mipsel с параметром -bios u-boot.bin, то это не сработало. Ну как сказать не сработало - процесс виртуалки запустился и даже показал монитор, но u-boot не запустился никак.
В первую очередь я подумал, что это я ошибся при сборке u-boot. Но я перепроверился вот этим способом https://docs.u-boot.org/en/stable/board/emulation/qemu-mips.html . Мой u-boot в порядке и нормально запускается так:

$ dd if=/dev/zero bs=1M count=4 | tr '\000' '\377' > pflash.img
$ dd if=u-boot.bin of=pflash.img conv=notrunc
$ qemu-system-mipsel -cpu 24KEc -m 256 -drive if=pflash,file=pflash.img,format=raw

U-Boot 2025.01-rc4 (Jan 03 2025 - 18:19:49 +1000)

Board: MIPS Malta CoreLV
DRAM:  256 MiB
Core:  5 devices, 5 uclasses, devicetree: separate
PCI: Failed autoconfig bar 10
PCI: Failed autoconfig bar 14
PCI: Failed autoconfig bar 18
PCI: Failed autoconfig bar 1c
PCI: Failed autoconfig bar 20
PCI: Failed autoconfig bar 24
Bus 0: OK
  Device 0:   Device 1: Flash: 4 MiB
Loading Environment from Flash... *** Warning - bad CRC, using default environment

In:    serial@3f8
Out:   serial@3f8
Err:   serial@3f8
Net:   eth0: pcnet#0
maltael #

В связи с чем у меня вопрос. Не могли бы вы поделиться своим способом, как вы так сделали этот биос, что ваш u-boot и ваш линукс запускаются в qemu-system-mipsel ?

>восхищаюсь разработчиками советского калькулятора Электроника MK 85. Они смогли в далёком 1986 года в микроконтроллер с 16kByte ROM встроить интерпретатор целого языка программирования Basic

Это они конечно очень молодцы. Респект. Почти как интел, сделавшая тоже самое на 8 килобайтах в 1986 году.

Они добавляют современные 32-битные микроконтроллеры, чтобы расширить возможности старого 8-битного микроконтроллера, а не используют современные 32-битные микроконтроллеры вместо старого 8-битного микроконтроллера. Действительно приколисты.

Шиндошс 10. Можно ли любое количество? - Я не проверял.
Однако винда тут ни при чём. Я физически вставил в материнскую плату два шестиядерных процессора.

Тут надо прояснить кое-какие моменты. Там не ядро из 1990-ых, а основной набор команд из 1980-ых. Ну, почему бы и да. Так то и процессоры х86, новенькие и продаваемые в 2024 году тоже имеют основной набор команд из 1980-ых. Это нормально.

Однако, касательно конкретного чипа в этом одноплатнике, то он вероятно разработан и произведён в 2020-ых, то есть совсем не давно и кроме набора команд из 1980-ых в этом чипе должен быть современный функционал, а ядро новое и оптимизированное на скорость и энергоэффективность (по сравнению с теми микроконтроллерами, какие были в 1980-ых). Сейчас такие чипы зачастую используются работы со всякой мелкой периферией, например как контроллер USB 2.0, либо же как недорогой поставщик интерфейсов типа UART, SPI, I2C.

Подскажите, в чём преимущество одноплатника NanoPi Zero2 без видеовыхода на Rockchip RK3528A с ОЗУ 1 ГБ за $18 (или с ОЗУ 2 ГБ за $56) по сравнению с ТВ-приставкой Rockchip RK3528 с видеовыходом HDMI и ОЗУ 4 ГБ, недавно приобретённой мною за 1800 рублей, на которую я установил Линукс Армбиан, основанный на Дебиане ?

Было бы здорово, если бы в в Бэйсике Мискатино реализовали циклы FOR...NEXT, DO...WHILE, DO...UNTIL как в MCS BASIC-52 и чтобы оператор IF привели к традиционному виду IF...THEN.

Давеча игрался с BASIC-52 на китайском микроконтроллере CH552, современном клоне восьмибитного Intel 8051 с 256 байтами ОЗУ. Приятные ощущения, будто вернулся в детство.

Как забавно у них получилось.
Я вот давеча тоже вертел в руках другую платку с чипом CH32V003 и думал, а можно ли к ней приделать монитор и клавиатуру. Пришёл к выводу, что теоретически можно, но смысла в этом никакого нет.
И выбрал для своих развлечений другой микроконтроллер CH559 от того же производителя микросхем Nanjing Qinheng Microelectronics (на Западе известные как WCH). Пусть он и восьмибитный, но к нему можно подключить обычную современную клавиатуру USB, какие продаются в любом ДНС.
Монитор к CH559 тоже нет смысла подключать так же как и к CH32V003. В обоих случаях максимум что хотя бы выглядело бы осмысленным - дисплейчик 400х300 через SPI, как у ардуинок.
А Олимекс взяла и выпустила сначала в производство, а затем в продажу вот эту вот RVPC дня непонятно чего. Впрочем меня удивляет даже не сам факт существования такого устройства. Меня бы больше удивило если бы кто-то это купил с серьёзными намереньями.

>от конкретного приложения все зависит

В этой части я согласен с вами. Действительно, зависит от конкретного приложения. Рассуждаем дальше: невозможно собрать за недорого компьютер, который будет хорошо работать со всеми приложениями. И за дорого не возможно. Может быть возможно за очень дорого, я не проверял такой вариант. Поэтому было решено определиться с конкретным приложением и выбирать компьютер для этого приложения. Этим приложением выступила игра Киберпанк 2077.


>график frame time как забор на даче
А вот здесь наши с вами рассуждения расходятся. Вы теоретизируете, а я проверил на практике.
Опытным путём было выяснено, что конкретное приложение Киберпанк 2077 оптимизировано для 8 процессорных ядер (16 потоков). Когда я попробовал дать Игре 8 ядер (2 х Е5-2637v2 @ 3,5 ГГц буст до 3,9 ГГЦ, цена как сходить в кино с девушкой), Игра таки выдала 60 фпс, но фреймтайм был скачущий.
Но потом случилась магия. Я дал игре 12 ядер ( 2 х E5-2643v2 ) и фреймтайм стал гладеньким как попка косплейщицы.

За 10к можно на выбор:
А) Купить подарок маме на день рожденья.
Б) Купить хороший SSD
Г) Много чего ещё, на что хватит соображалки.

>замедляет работу

Но на сколько замедляет. Я не нашёл конкретных данных. Может быть на много, может быть на чуть-чуть. Кто знает?

Я так и не смог разобраться в столь тонких деталях и поступил проще: сравнил производительность в Игре своей сборки всей целиком с производительностью в той же Игре эквивалентной сборки на одном процессоре. Разница в фпс вышла 8%. А разница в цене заметно больше.
Однако эти попугаи и проценты меня мало волновали. Моя цель была играть в Киберпанк с лучами в 60 фпс как можно дешевле. Чего собственно и достиг.

Дополнено: Прочитал статью по вашей ссылке. Там про Xeon 5500 из 2009 года и X5690 из 2011-го. Совсем не 2014-й. При том из той же статьи цитирую про X5690:
>Как видите, разница составляет всего чуть более 5%! Результат приятно удивительный.

Вы про кеш? Нет, не в курсе.
Расскажите, пожалуйста об узком месте кеша 2 х 30 МБ.

1

Information

Rating
11,649-th
Registered
Activity