您尚未登录。

楼主 # 2022-06-06 20:12:46

jjldc
会员
注册时间: 2022-02-18
已发帖子: 20
积分: 45

T113同时启用RISC-V和A7双核的尝试

目标是希望RISC-V可以在A7双核工作的同时,启动裸机程序,做一些实时控制类的工作。

目前最新T113-I(应该就是R528吧?)手册已官宣同时支持A7双核+RISC-V、同时具有HIFI4 DSP
SNAG-0007.png

HIFI4编译器、开发环境都是闭源,需要找Cadence买,挺复杂
今天尝试了一下在A7核Linux上能否启动RISC-V核,目前还没成功
看看大家有没有什么想法。

在T113已经成功通过ARM核启动系统,进入Linux的前提下,RISC-V核的裸跑工作难度应该不大,不需要初始化内存等底层资源,只需要想办法让RV核复位跳转到启动向量即可
启动向量在哪里?看手册是0x06010004/8两个寄存器


1、编译器
https://occ.t-head.cn/community/download?id=4049193882418745344
平头哥官网,Xuantie-900-gcc-elf-newlib-x86_64-V2.4.0-20220428.tar.gz
通过xboot同学发布的D1裸跑demo,改一下ld文件就可以适配

2、时钟
要把RISC-V_CFG_CLK时钟打开,才可以操作到0x06010000地址

3、PLIT rv核独立中断控制器,目前在T113 Linux内核上好象没有启用,也没有在CCU上找到对应的开关

4、主要相关寄存器
0x02101D00 - 1D0C   CCU RISC-V时钟控制
0x06010000  RISC-V CFG配置寄存器

5、根据uboot中看到的dsp核启动代码,大概推测启动rv核思路是
停止riscv核时钟
设置risc-v核时钟频率
打开riscv核时钟

复位risc-v核
设置risc-v核复位向量
接触risv-v核复位

目前还没成功,主要是没找到RISC-V核复位相关的寄存器

离线

#1 2022-06-06 21:17:54

aozima
会员
所在地: 深圳
注册时间: 2019-05-25
已发帖子: 438
积分: 305.5
个人网站

Re: T113同时启用RISC-V和A7双核的尝试

坐等大佬开核

离线

#2 2022-06-06 22:58:39

Blueskull
会员
注册时间: 2020-02-20
已发帖子: 458
积分: 444.5

Re: T113同时启用RISC-V和A7双核的尝试

HiFi4就是Xtensa加一些扩展,gcc-xtensa都支持,但是具体启用哪一个需要自己配置,魔改ESP32编译器就好。

国外大神已经通过crosstools-ng搞出来了。

https://github.com/thesofproject/sof-docs/blob/master/getting_started/build-guide/build-from-scratch.rst

离线

#4 2022-06-07 03:12:30

david
会员
注册时间: 2018-03-05
已发帖子: 334
积分: 274.5

Re: T113同时启用RISC-V和A7双核的尝试

这个是说rv和arm共享总线么 厉害了

离线

#5 2022-06-07 03:21:38

david
会员
注册时间: 2018-03-05
已发帖子: 334
积分: 274.5

Re: T113同时启用RISC-V和A7双核的尝试

@jjldc

rv核是不是要先置复位 然后各种设置 最后在释放复位

离线

#6 2022-06-07 09:00:18

xboot
会员
注册时间: 2019-10-15
已发帖子: 673
积分: 424

Re: T113同时启用RISC-V和A7双核的尝试

还有一个地方需要研究,就是efuse部分,这个东西有可能搞手脚的。

离线

楼主 #7 2022-06-07 18:32:35

jjldc
会员
注册时间: 2022-02-18
已发帖子: 20
积分: 45

Re: T113同时启用RISC-V和A7双核的尝试

david 说:

@jjldc

rv核是不是要先置复位 然后各种设置 最后在释放复位

比较尴尬的是,就卡在没找到RISC-V_RESET寄存器,DSP_RESET都有,RV核复位没有
一般就是给时钟,复位核-写reset vector - 释放,起码PC可以跳过去跑第一条指令

离线

#8 2022-06-07 20:27:02

mango
会员
所在地: 芒果派
注册时间: 2017-12-02
已发帖子: 768
积分: 719

Re: T113同时启用RISC-V和A7双核的尝试

T113-i 和 D1 pin2pin,和R528封装不同。
过几天我找代理要几个芯片贴到MQ-Pro上玩玩。






歪朵拉开源硬件 https://widora.io
个人网站  https://mangome.org

离线

#9 2022-06-08 04:41:50

musich
会员
注册时间: 2018-04-17
已发帖子: 145
积分: 162

Re: T113同时启用RISC-V和A7双核的尝试

这就厉害了,玩了几天113,裸机卡在如何初始化SDRAM了。

离线

#10 2022-06-09 14:24:17

audiomonster
会员
注册时间: 2018-04-21
已发帖子: 9
积分: 4

Re: T113同时启用RISC-V和A7双核的尝试

你们有HIFI4-DSP User Manual 和 Compiler ? 看来这个DSP好厉害 !

离线

楼主 #11 2022-06-09 15:25:18

jjldc
会员
注册时间: 2022-02-18
已发帖子: 20
积分: 45

Re: T113同时启用RISC-V和A7双核的尝试

audiomonster 说:

你们有HIFI4-DSP User Manual 和 Compiler ? 看来这个DSP好厉害 !

没弄到
今天问原厂是说A7和RISC-V二选一,不能共存
不是很确定

用risc-v的时候不就等于D1了么

离线

#12 2022-10-25 19:31:50

xiongxinjian
会员
注册时间: 2019-01-13
已发帖子: 43
积分: 13

Re: T113同时启用RISC-V和A7双核的尝试

HIFI4 DSP 有人调试过吗?我们打算用这个DSP来做算法,但现在还没有什么头绪。

离线

#13 2022-12-11 19:23:07

Mitko
会员
注册时间: 2018-03-13
已发帖子: 219
积分: 202

Re: T113同时启用RISC-V和A7双核的尝试

RISC 内核是否与 H3 中的 AR100 (https://linux-sunxi.org/AR100) 相同?

离线

#14 2022-12-12 09:37:42

marcus
会员
注册时间: 2021-03-19
已发帖子: 46
积分: 11

Re: T113同时启用RISC-V和A7双核的尝试

坐等大佬开核。

离线

#15 2022-12-17 16:27:07

dukefly
会员
注册时间: 2019-03-26
已发帖子: 7
积分: 7

Re: T113同时启用RISC-V和A7双核的尝试

高级应用.大佬研究挺深啊

离线

楼主 #16 2022-12-23 15:24:41

jjldc
会员
注册时间: 2022-02-18
已发帖子: 20
积分: 45

Re: T113同时启用RISC-V和A7双核的尝试

xiongxinjian 说:

HIFI4 DSP 有人调试过吗?我们打算用这个DSP来做算法,但现在还没有什么头绪。

DSP已经用起来了
这个需要跟全志直接签协议,提供license、开发环境、支持包等资源,个人还不好弄

离线

#17 2022-12-23 23:22:42

audiomonster
会员
注册时间: 2018-04-21
已发帖子: 9
积分: 4

Re: T113同时启用RISC-V和A7双核的尝试

jjldc 说:
xiongxinjian 说:

HIFI4 DSP 有人调试过吗?我们打算用这个DSP来做算法,但现在还没有什么头绪。

DSP已经用起来了
这个需要跟全志直接签协议,提供license、开发环境、支持包等资源,个人还不好弄


看来这是HIFI Xtensa Compiler ?
https://bbs.aw-ol.com/topic/1424/share/4

离线

楼主 #19 2023-02-13 10:47:47

jjldc
会员
注册时间: 2022-02-18
已发帖子: 20
积分: 45

Re: T113同时启用RISC-V和A7双核的尝试

@audiomonster
是的,非开源编译器

离线

#20 2023-02-14 22:21:12

vigour1000
会员
注册时间: 2018-11-19
已发帖子: 93
积分: 3

Re: T113同时启用RISC-V和A7双核的尝试

不开源,能开Dsp核能用就行

离线

#21 2023-05-08 16:22:35

admin_abc
会员
注册时间: 2023-05-08
已发帖子: 2
积分: 12

Re: T113同时启用RISC-V和A7双核的尝试

@jjldc
现在启动risc-v和a7核了吗

离线

#22 2023-05-18 16:17:09

admin_abc
会员
注册时间: 2023-05-08
已发帖子: 2
积分: 12

Re: T113同时启用RISC-V和A7双核的尝试

admin_abc 说:

@jjldc
现在启动risc-v和a7核了吗

已经搞定了,另外重置riscv的为0x0f20

离线

#23 2023-05-26 11:37:43

xboot
会员
注册时间: 2019-10-15
已发帖子: 673
积分: 424

Re: T113同时启用RISC-V和A7双核的尝试

想研究的,看这个代码,不贴代码的都是耍流氓。

	{
		//	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 = 0*0xFA50392Fu;	// Hotplug Flag Register
		* (volatile uint32_t *) 0x070005E0 = (uintptr_t) code;	// Soft Entry Address Register

		dcache_clean_all();

		printhex(0x06000000, (void *) 0x06000000, 0x10000);
		//CCU->RISC_GATING_REG
		CCU->RISC_CFG_BGR_REG |= (1u << 16) | (1u << 0);
		(void) CCU->RISC_CFG_BGR_REG;
		PRINTF("CCU->RISC_CFG_BGR_REG=%08" PRIX32 "\n", CCU->RISC_CFG_BGR_REG);

		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);
		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);
		//PRINTF("CCU->RISC_RST_REG=%08" PRIX32 "\n", CCU->RISC_RST_REG);
		CCU->RISC_RST_REG = 0x16AA0001u;
		(void) CCU->RISC_RST_REG;
		//PRINTF("CCU->RISC_RST_REG=%08" PRIX32 "\n", CCU->RISC_RST_REG);
		//ASSERT(CCU->RISC_RST_REG & 0x01u);
		for (;;)
			;
	}

最近编辑记录 xboot (2023-05-26 11:40:19)

离线

#24 2023-05-26 15:42:01

yongzong
会员
注册时间: 2020-08-11
已发帖子: 7
积分: 7

Re: T113同时启用RISC-V和A7双核的尝试

这个T113-S3里面也是同样吗?

离线

#25 2023-07-06 09:44:15

wj8331585
会员
注册时间: 2023-02-07
已发帖子: 41
积分: 21

Re: T113同时启用RISC-V和A7双核的尝试

当MCU使用吗?

离线

#26 2023-07-15 02:31:12

GenaSPB
会员
注册时间: 2023-07-15
已发帖子: 7
积分: 7

Re: T113同时启用RISC-V和A7双核的尝试

I am an author of this test code.
Unfortunately, risc-v core (may be exising) of t113-s3 still under reset...

I am play with other toys (lvds, mipi-dsi outputs).

最近编辑记录 GenaSPB (2023-07-15 02:31:35)

离线

#27 2023-07-15 02:37:03

GenaSPB
会员
注册时间: 2023-07-15
已发帖子: 7
积分: 7

Re: T113同时启用RISC-V和A7双核的尝试

audiomonster 说:

你们有HIFI4-DSP User Manual 和 Compiler ? 看来这个DSP好厉害 !

Local hobbyists make windows - hosted xtensa gcc. Under tests with t113-s3.


xtensa-hifi4-elf-gcc.exe (crosstool-NG 1.25.0) 10.3.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

离线

#28 2023-07-16 09:28:18

GenaSPB
会员
注册时间: 2023-07-15
已发帖子: 7
积分: 7

Re: T113同时启用RISC-V和A7双核的尝试

RISC_CFG dumps on two boards:
F133-A:

06010000  00010000 4006E910 00000000 00000000 00000013 00000021 00000003 00000002
06010020  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010040  00000000 00000000 00000000 00000000 400010D8 00000000 00000000 00000000
06010060  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010080  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
060100A0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
060100C0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
060100E0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010100  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010120  00000000

T113-s3:

06010000  00010000 400F95E0 00000000 00000000 00000013 00000021 00000003 00000002
06010020  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010040  00000000 00000000 00000000 00000000 BFFBBFF2 000000F7 00000000 00000000
06010060  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010080  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
060100A0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
060100C0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
060100E0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010100  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
06010120  00000000

On T113-s3 RETITE_PC0_REG and RETITE_PC1_REG looks like meaningful

离线

#29 2023-07-16 10:05:17

GenaSPB
会员
注册时间: 2023-07-15
已发帖子: 7
积分: 7

Re: T113同时启用RISC-V和A7双核的尝试

Each power-up of T113-s3 slightly change bits, visible in RETITE_PC0_REG and RETITE_PC1_REG

离线

#30 2023-08-17 10:46:45

musicwei
会员
注册时间: 2020-09-07
已发帖子: 1
积分: 1

Re: T113同时启用RISC-V和A7双核的尝试

jjldc 说:
xiongxinjian 说:

HIFI4 DSP 有人调试过吗?我们打算用这个DSP来做算法,但现在还没有什么头绪。

DSP已经用起来了
这个需要跟全志直接签协议,提供license、开发环境、支持包等资源,个人还不好弄

大佬测试过这个DSP吗 做一般的信号处理 性能怎么样?

离线

#31 2023-08-21 19:32:46

audiomonster
会员
注册时间: 2018-04-21
已发帖子: 9
积分: 4

Re: T113同时启用RISC-V和A7双核的尝试

GenaSPB 说:

Each power-up of T113-s3 slightly change bits, visible in RETITE_PC0_REG and RETITE_PC1_REG

你觉得 T113-S3 也有RISC-V ? big_smile

离线

#32 2023-09-17 13:06:27

vigour1000
会员
注册时间: 2018-11-19
已发帖子: 93
积分: 3

Re: T113同时启用RISC-V和A7双核的尝试

@GenaSPB
xtensa-hifi4-elf-gcc.exe哪里可以下载呀

离线

#34 2023-09-30 23:03:13

vigour1000
会员
注册时间: 2018-11-19
已发帖子: 93
积分: 3

Re: T113同时启用RISC-V和A7双核的尝试

@GenaSPB
谢谢

离线

#35 2023-10-01 01:56:58

GenaSPB
会员
注册时间: 2023-07-15
已发帖子: 7
积分: 7

Re: T113同时启用RISC-V和A7双核的尝试

In mentioned theme, hifi4 gcc with call0 abi (non-wimndowed abi) shown. Significantly less support at runtime need.

最近编辑记录 GenaSPB (2023-10-01 01:57:30)

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn