Other Parts Discussed in Thread: SYSBIOS
如标题所说,我将两个sysbios程序固化到SPI内,但是主核无法让从核启动
目前已知:
1.我的两个程序代码段都会放到DDR中,调试也能看到。
2.程序都放到L2就没问题。
3.DDR table运行正常,即主核是可以正常启动并且输出消息的。
4.用的例程中的启动代码
想问:
1.我当前的代码如何?
2.platform中是否有对应的函数让从核也启动?
以下是我的主核启动从核的代码…
如标题所说,我将两个sysbios程序固化到SPI内,但是主核无法让从核启动
目前已知:
1.我的两个程序代码段都会放到DDR中,调试也能看到。
2.程序都放到L2就没问题。
3.DDR table运行正常,即主核是可以正常启动并且输出消息的。
4.用的例程中的启动代码
想问:
1.我当前的代码如何?
2.platform中是否有对应的函数让从核也启动?
以下是我的主核启动从核的代码…
TI专家您好!
我的单板上有2块C6670,每个DSP有i2c的eeprom,没有SPI的flash,每片DSP的SGMII通过交换芯片连接到外部,现在的问题是我用MAC的bootmode启动时,不同的单板发出的bootp包的MAC地址不一样,并且无法分辨哪个MAC地址是DSP1的?哪个MAC地址是DSP2的?我希望能配置固定的MAC地址,使得不同的单板的DSP1发出的bootp包的MAC地址都是我指定的一样的MAC地址,DSP2也是我指定的MAC地址…
目前创建了两个工程,一个核0,一个核1,核0与核1之间通过ipc模块使用共享内存区域SharedRegion,调用MessageQ接口进行消息传递,若两个代码放在L2SRAM中运行,则能够正常运行;若将代码等段,通过cfg配置到DDR3中,则会出现无法attach状况,如下图所示,两个核一直无法互相attach上。
目前使用的版本信息如下:
核0代码如下:
最近在使用6678开发板,串口、GPIO、Timer等中断都已经完成,但是遇到一个问题,在进行中断初始化的时候,要使用CSL_intcInit()函数初始化,这句代码是中断初始化过程中必须调用的,调用了这句代码之后,再调用stdlib.h文件里面的一些函数比如malloc()和rand()函数,出现卡死,执行到次行之后不再往下执行。如果在中断初始化之前调用malloc()或者rand()是可以运行的不会卡死,一旦调用CSL_intcInit()函数之后再调用这些函数就会卡死…
各位TI专家好:
最近调试通过C6678 的网口和PC进行UDP通信,主要参考了emacExample代码。UDP发送已经通了,PC端可以接收到数据,UDP接收还有问题。首先,PC不会直接发送UDP协议数据,首先发送 ARP包等待回应MAC地址,所以需要先接收ARP数据包。
参考问题e2echina.ti.com/.../pa-arp 答案,我在配置PA时,在Add_MacAddress()函数中,将ethInfo中 eher type改为0x806…
Hi~
环境说明:
DSP型号:TMS320C6678
DDR3:DDR3外接4片 4Gb/16bit的DDR3表贴内存颗粒,设计为单rank
我在使用C6678这款DSP调试DDR时,出现了一个不太理解的现象:向0x8000 0000这个地址写入一个4字节的数据时,发现0xA000 0000, 0xC000 0000等地址内的数据也出现了该数据。
如下是我的DDR测试代码…
Hi
我写了一个简单的例子,调用到BLAS的二级函数,我按照如下方式建立工程:
1、建立一个RTSC工程,加入所需的组件和例子代码
2、定义pre-define
3、链接库linalg和libarch
4、编译链接,然后链接过程会提示如下错误:
请问如何解决该问题,是我所建的RTSC库有问题吗,能否提供一些如何使用TI的BLAS库的方法?
Looking forwrad to your reply!
Best wishes!
硬件:tms320c6678 evm开发板
软件:ccs8.0
问题:下载运行keystone1中srio例程,控制台打印下列信息并且程序异常退出。
STREAM from 0x820a4000 to 0x11802200, 32768 bytes, 72687 cycles, 3606 Mbps, completion code = 0
data mismatch at unit 8001, 0xcfffdf3f (at 0x820a4000…
各位老师好,最近在学习6678的spi boot,整个boot过程已经搞定了,就是生成多核烧写的镜像文件时很麻烦,多核使用同一个工程,也需要不同的cmd文件,因为每个核的L2全局地址都不相同,为了解决这个问题,我自己编写了一个程序,对Hex6x生成的btbl文件找到每个程序段的地址,然后按照核号修改为全局地址,重新生成新的btbl文件。因为btbl文件中程序存放格式是固定的,按道理是字节长度、目的地址、对应字节长度的数据,我可以通过这种固定格式遍历整个文件找到每个程序段的地址…
需求使用FPGA触发C6678的GPIO中断,中断频率为1KHz,使用GPIO pin14。从网上扒了一段代码稍作修改,发现能够触发中断,但总是中断200次后DSP就挂了,代码如下。对机制不了解,不知道是什么原因,还请各路大佬指教,或求一个靠谱的C6678 GPIO中断的例程,十分感谢!
#include "ti/csl/csl_chip.h"
#include "ti/csl/csl_chipAux.h"
#include…
我使用创龙例程中spi.c的c66x_spi_xfer函数测试cs1能够实现自闭环收发,但读取IMU数据却老是读不出来。SPI时钟为1MHz,时钟极性和相位都按IMU手册设置了。我考虑到这个函数是连续读写的,而IMU数据burst模式下写0x6800指令到读出数据可能需要一个延迟,我想或许要分离这里的spi写函数和读函数,试了直接把函数读写部分分开,但执行到读函数时会卡在while判定Rx非空这一步上,对SPI底层逻辑不是很了解,不知道如何修改为好…
OpenMP版本:openmp_dsp_c667x_2_06_02_01
我目前再看openmp中的源代码,发现我下载的openmp版本中,好像没有使用qmss的相关接口,而是使用了软件实现的queues接口;
其中控制的宏如下
TI专家,您好,
已成功使用固件生成工具,可正常生成每个核的固件。现程序修改,将一个CONST的数据块分配到DDR中,此时用原生成工具生成的app,会很大。去掉CONST字符,同样操作就可正常生成,请问有什么道理么?
谢谢
Peijun
1.C6678 ROM Bootloader PG 2.0 source code 在哪里下载?可够给个链接,谢谢!
2.C6678 PG2.0 是否可以通过RBL配置DdrTableConfig,然后直接初始化DDR3.
由于fpgapcie不存在inbound 和outbound,假如bar0-1地址设为0x7000_0000,那么am5728 inbound 和outbound是不是都要设置成0x7000_0000才行?
就是用的板载仿真器,一直连接失败
IcePick_D: Error connecting to the target: (Error -2131 @ 0x0) Unable to access device register. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle…
您好! 我们使用DSPC6678实现一个图像算法,使用CCS5.5编程,但是发现算法在DSPC6678上的运行速度过慢,明显慢于在电脑CPU上的仿真速度。我们不知道有没有利用上C6678的硬件乘法器等资源。想请问一下如果想使用DSPC6678的硬件乘法器,需要自己调用什么代码或者库文件吗,还是说在编译时会自动启用C6678的硬件乘法器?
我在官方给的SRIO例程的基础上C6678 SRIO_SERDES_LOOPBACK测试时,数据从DDR读出,然后写入DDR,测试1X、2X、4X模式速率发现2X模式是1X的两倍速,但是4X模式却没有1X模式的四倍,且差的很多,我降低SRIO的速度,2.5Gbps依然是达不到,请问是什么原因?
你好,
我注意到,pdk_2_0_4(ti-processor-sdk-rtos-c667x-evm-03.02.00.05-Windows-x86-Install.exe,对应ccs6.2)和pdk_2_0_12(ti-processor-sdk-rtos-c667x-evm-05.02.00.10-Windows-x86-Install.exe,对应ccs8.2),源代码中的pa firmware,比如classfy1_0_bin.c中的数组c1_0,两个固件内容是有区别的,不是一样的。我有以下问题…
采用软件仿真进行时间测量。采用cycle approximate simulator进行仿真的话,测的数据是不是属于器件在理想情况下运行代码所需要的时间?那么实测时间数据是不是不可能小于这个理论值?我现在在测试两个核的IPC中断,发现实测总时间小于仿真时间,所以感觉很奇怪
TI专家,您好,
C6678的CORE0,DirectIO模式读写一个FPGA。想在读/写完成后DSP自己产生中断。
个人以为,可以配置SRIO的中断源为SRCID0_Transaction_Complete_OK,即LSU中断。
但我不知道如何将SRIO的general interrupt,即(INTDST0~INTDST15)映射到12个CPU中断源中。
看了之前的帖子和Brighton Feng先生提供的文档
谢谢您的回答!
我之所以问这个问题是因为手册 TMDSEVM6678L TRM上写的有16MB SPI NOR FLASH.