MCAPI in Bfin Linux

MCAPI in Bfin Linux

By AlenXuJune 14, 2013

1.Mcapi是什么?

       Mcapi是一种基于共享内存的多核通信接口,里面定义了一些多个核公用的一些变量和数据结构。多核间数据处理是通过共享内存来实现的,事件通知是通过中断来实现的。Mcapi lib是基于ICC driver顶层的库,因此内核必须要有ICC driver支持。

2.Mcapiin linux是怎样工作的?

       Core A系统正常启动

       Core B ICC通用工具被core B loader加载到RAM,但是这个core B loader是运行在core A

       Core Acore B发中断,coreB开始运行ICC server

       Core B用户应用程序在ICC server上运行

       Core A ICC用户程序在linux下运行并且与core B上运行的程序通信

3.Mcapiin Bfin Linux上的代码架构?

       libmcapi/libmcapi-2.0/tests: test code example, customerapplication will also be here

       icc-10837/libmcapi_coreb: MCAPI libs forcore B

       icc-10837/icc_core: ICC protocol on coreB

       icc-10837/example/task: example user appcode on core B

       icc-10837/icc_loader: core B loaderprogram, but running on core A

4.Systemconfig

       6.1 build kernel with ICC support

       Select CoreB loader driver

       BlackfinProcessor Options  --->

               -*-Enable Core B loader

       Select ICC driver.Debug mode is optional

Device Drivers --->  

      [*] Stagingdrivers  --->

            [*]icc driver --->

                   --- icc driver

                 [*]icc protocol

                 [ ]iccdebug

       Disable L2 cache, L2will be used to deliver messages and synchronize by ICC

Blackfin Processor Options  --->

           ***Cache Support ***

            [ ] EnableICACHE for L2 SRAM

            [ ] EnableDCACHE for L2 SRAM

       select external meorydcache policy write through

External memory DCACHE policy (Write through)  --->

       Build icc utils and test suites

Package Selection for the target  --->

      Miscellaneous --->

           [*] bfin inter-core communicationsupport

           ICC cpu type (BF609)  --->

Note: Check following setting before build kernel:

L2 cache is disabled.

External memory dcache policy set to write through.

Reserve last 4M external memory for slave coreapplications.

Reserve first 128k bytes L2 SRAM for ICCmessage queues and slave core code

5. Load and run the ICC server and user app on core B

       $cd  /bin

       $./icc_loader-l ./icc

       $./icc_loader-e mcapi_msg1

6. Run user app on core A

       $msg1

 

 

       

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值