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

Allwinner T113-s3 уделал HiFi4 DSP. Смеяться или плакать?

1 час назад, repstosw сказал:

Как минимум

И как максимум тоже, т.к. больше я ничего не нашел)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15 minutes ago, mantech said:

И как максимум тоже, т.к. больше я ничего не нашел)))

А вам оно зачем?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зачем тратить 200 баксов, если можно самому сделать:

https://www.dropbox.com/scl/fi/gpa0wyj4s3km1d1dxzw12/ATREB215-XPRO-ADesignDocumentation.zip?rlkey=l65dyiy24w8l6fx0x50posntx&dl=0

Изменено пользователем alag57

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, repstosw сказал:

А вам оно зачем?

Посмотрел ради интереса))

2 часа назад, alag57 сказал:

Зачем тратить 200 баксов, если можно самому сделать:

Делать надо, а мне просто удивительно, что чип с лучшими характеристиками, а простых и дешевых модулей нет, а на худший чип полно...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 hours ago, alag57 said:

Зачем тратить 200 баксов, если можно самому сделать

А зечем тратить время, когда были $400 на покупку двух плат?

Время-деньги, деньги-время.

 

8 hours ago, mantech said:

а мне просто удивительно, что чип с лучшими характеристиками, а простых и дешевых модулей нет, а на худший чип полно...

Может быть, эти лучшие характеристики нужны не всем.

Основное назначение дешевых радиомодулей - это радио-модем TTY, передача текста на низких скороcтях. Линк в 99% статичный и фиксированный: устройства неподвижны, установлены на выгодной высоте, антенны направленные, и они видят друг друга. 

Второе значение: сбор и передача данных с приборов учёта ЖКХ, телеметрия типа температура-влажность-давление-долгота-широта-... - с коротким сеансом передачи: 1 раз в месяц.

Для потоковой передачи видео и подвижной связи - будут другие модули.  Использовать DVB-* для передачи Low-Res video - ИМХО слишком громоздко.  Нужно что-то среднее: между простыми модуляциями и DVB-*.  

Как одно из решений - WI-SUN (конкретно его реализации MR-OFDM, MR-O-QPSK).   AT86RF215 - одна из реализаций WI-SUN.

Глянул, у Силабса тоже есть Wi-SUN RFIC, типа Gecko EFR32***, но у них у всех Cortex-M33 на 96 МГц на борту.  И SDK для работы с ним.  Ну тоесть - снова спрятали регистры и навязали свой проприетарный стек...  Нафига они так делают? Точнее, почему не делают те же варианты, но без CPU, с выведенным SPI-портом для подключения к кастомному CPU?  Мне их встроенный M33 нафиг не сдался (а обойти его не получится), так как использую трансиверы в связке с V3s/T113-s3.

У AT86RF215 - полностью регистровая модель, что для меня очень удобно.

 

1.thumb.jpg.a960b6798daf82eb9dab749c4229624c.jpg

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, repstosw сказал:

А зечем тратить время, когда были $400 на покупку двух плат?

Да все просто, посчитайте стоимость вашей поделки с учетом этих плат и всего остального плюс ваш интерес, за эту сумму вам их не продать, только оставить себе напоиграть)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, mantech said:

Да все просто, посчитайте стоимость вашей поделки с учетом этих плат и всего остального плюс ваш интерес, за эту сумму вам их не продать, только оставить себе напоиграть)))

А я разве говорил, что собираюсь продавать что-то на базе этих отладочных плат?  Не надо приписывать мне свои мысли.

Тем более, что конструктив плат на этом трансивере не позволяет всё сделать компактно, так как предполагает соединение модулей на проводах. А для макета они идеальны.

И дороговизна плат никак не вяжется со стоимостью чипа трансивера.

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не попадалась инструкция/примеры как использовать C906 и HiFi4 из под линукса на A7 на T113-S4 ?
Нашел примеры, но там без линукса, напрямую из fel.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, x893 сказал:

Нашел примеры, но там без линукса, напрямую из fel.

А в чем разница? Там же тоже нужно загрузить образ для этого проца и выставить нужные биты в регистрах.

ХиФи4 вроде тут писал sasamy как работать с ним под линью...

Кстати еще тема, на с906 вроде можно тоже линух поставить, прикольно, 2 разных линуха на одном камне)))))))

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

14 minutes ago, mantech said:

А в чем разница? Там же тоже нужно загрузить образ для этого проца и выставить нужные биты в регистрах.

ХиФи4 вроде тут писал sasamy как работать с ним под линью...

Кстати еще тема, на с906 вроде можно тоже линух поставить, прикольно, 2 разных линуха на одном камне)))))))

 

Есть пример/инструкция ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что за C906 ?

Это третье расшаренное ядро, и только для T113-s4 ?  На T113-s3 оно не доступно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да. То что основным в f133, D1x... неудачные попытки его запустить на t11s-s3 я предпринимал.  Остатки bare metal в моём проекте, файл tests.c
 

Quote

single RV64GCV core XuanTie C906 from T-Head Semiconductor (subsidiary of Alibaba).

Флаги при компиляции под это ядро - -march=rv64imafd_zicsr -mabi=lp64d


Кусок теста:

Spoiler
	{
		//	The Hotplug Flag Register is 0x070005DC.
		//	The Soft Entry Address Register is 0x070005E0.

		//	la	a0, 0x02500000
		//	la	a1, 0x23
		//	sb	a1, 0 (a0)
		//	xxx:	j	xxx
		// Test: write byte to 0x02500000 = UART0 data tegister
		static const uint32_t code [] = {
				0x02500537, // 37 05 50 02
				0x0230059B,	// 9B 05 30 02
				0x00B50023, // 23 00 B5 00
				0x0000006F, // 6F 00 00 00,
		};

		* (volatile uint32_t *) 0x070005DC = 1*UINT32_C(0xFA50392F);	// Hotplug Flag Register
		* (volatile uint32_t *) 0x070005E0 = (uintptr_t) code;	// Soft Entry Address Register

		dcache_clean_all();

		//printhex32(0x070005DC, (void *) 0x070005DC, 4);
		//printhex32(0x070005E0, (void *) 0x070005E0, 4);

		//printhex(0x06000000, (void *) 0x06000000, 0x10000);
		CCU->RISC_CLK_REG = (CCU->RISC_CLK_REG & ~ (UINT32_C(0x07) << 24)) |
				//0x05 * (UINT32_C(1) << 24) |	// PLL_CPU
				0x04 * (UINT32_C(1) << 24) |	// PLL_PERI(1X)
				0;
		CCU->RISC_CLK_REG |= (UINT32_C(1) << 31);	// not need

		CCU->RISC_GATING_REG = 1*(UINT32_C(1) << 31) | 0x16AA;	/* key required for modifications (d1-h_user_manual_v1.0.pdf, page 152). */
		CCU->RISC_CFG_BGR_REG |= (UINT32_C(1) << 16) | (UINT32_C(1) << 0);

		PRINTF("RISC_CFG->WORK_MODE_REG=%08" PRIX32 "\n", RISC_CFG->WORK_MODE_REG);
		PRINTF("allwnrf133_get_riscv_freq()=%" PRIuFAST32 "\n", allwnrf133_get_riscv_freq());
		PRINTF("allwnrf133_get_riscv_axi_freq()=%" PRIuFAST32 "\n", allwnrf133_get_riscv_axi_freq());

		RISC_CFG->RISC_STA_ADD0_REG = (uintptr_t) code;
		RISC_CFG->RISC_STA_ADD1_REG = 0;//(uint32_t) (uintptr_t) code >> 32;
		//memset(RISC_CFG, ~ 0u, sizeof * RISC_CFG);
        * (volatile uint32_t *) R_CPUCFG_BASE |= UINT32_C(1) << 0;    // 0x07000400 - seems has no effect
		CCU->RISC_RST_REG = (UINT32_C(0x16AA) << 16) | 0x01;	/* tested on Allwinner F133 */


		PRINTF("CCU->RISC_GATING_REG=%08" PRIX32 ", CCU->RISC_CFG_BGR_REG=%08" PRIX32 "\n", CCU->RISC_GATING_REG, CCU->RISC_CFG_BGR_REG);
		PRINTF("RISC_CFG->RISC_STA_ADD0_REG=%08" PRIX32 ", RISC_CFG->RISC_STA_ADD1_REG=%08" PRIX32 "\n", RISC_CFG->RISC_STA_ADD0_REG, RISC_CFG->RISC_STA_ADD1_REG);
		//printhex32(RISC_CFG_BASE, RISC_CFG, sizeof * RISC_CFG);
		local_delay_ms(3000);
		//((void (*) (void)) code)();		/* test code invocation for risc-v here */
		TP();
		printhex32(RISC_CFG_BASE, RISC_CFG, sizeof * RISC_CFG);
		for (;;)
			;
	}

 

 

Изменено пользователем GenaSPB

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

43 минуты назад, GenaSPB сказал:

Да. То что основным в f133, D1x...

Не в курсе, на нем что-то подобное НЕОНу от АРМа есть?

2 часа назад, x893 сказал:

Есть пример/инструкция ?

На счет каки-то конкретных инструкций не подскажу, тут в ветках про Т113 было подобное, страниц много, нужно искать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Имеется в виду SIMD из NEON? Точно гн скажу, ноткажктся нет. Буува M ы обозначении архитекуры это про matrix сопроцессор 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Примеры для C906/HiFi4 я нашел типа hello world, но они из fel запускаются. А из-под линукс не нашёл. Ходят слухи, что allwinner не даёт просто так. Но это только слухи.

1 hour ago, repstosw said:

Что за C906 ?

Это третье расшаренное ядро, и только для T113-s4 ?  На T113-s3 оно не доступно?

Это для T113-i и T113-S4/S4p
image.png.c9b65c5d4a3b15ff12fe44e9eb7ec279.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...