This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

c6678初始化



C6678初始化包含哪些内容,一般的初始化步骤是什么,如果用CORE0对DSP进行初始化,其他核还用单独初始化自己的核吗

  • Hi Zhao,

                   一般DSP的初始化包括如下内容:

                    core PLL, DDR, 需要使用的外设.

                     论坛上STK软件开发包的每个测试程序基本都有这个初始化过程。

                     core0 对 PLL, DDR等做初始化后,其他核不再需要对这些模块进行初始化。

                     每个核需要对自身的cache大小,中断路由等私有资源进行配置。

  • 那麻烦您好,我再问一下。6678的外设模块资源,有哪些是核私有的,有哪些是核能共有访问的?

  • Shuxin,

                      外设资源是每个核都可以访问的。

                      需要注意的是,某个资源在同一个时间点,只能允许一个核访问。 您可以用硬件锁(hardware semaphore)来协调多核冲突。 有一些外设如GPIO, SRIO等,有多个端口的,可以人为给多核划分一下,例如,core0 访问 SRIO PORT0, core1 访问 SRIO PORT1。

  • 你好,

    在OSEck的C6678的BSP中一个核负责初始化公共部分的驱动(SRIO、以太网、PA、Multicore Navigator),然后其它其它7个核各自初始化自己的部分。

    驱动采用硬件信号量来进行互斥,用户应用程序不用关心底层驱动的实现。

    另外,因为有PA以及Multicore Navigator存在,从硬件上可以保证多个核可以同时向同一个外设发送数据,并控制外设发送,SRIO等还有影子寄存器可以让多个核同时访问。

    Best Regards

    William

    William.dong@enea.com