DSP
文章平均质量分 90
刘师傅的泡面
快乐生活,苦逼工作。
偶尔几个月可能上线一次,有消息不一定回。
展开
-
DSP 6678的NETCP
1.介绍DSP6678的网络功能通过The network coprocessor (NETCP) 实现。NETCP包含2个gigabit Ethernet (GbE) 模块用来从IEEE 802.3标准的网络发送和接收数据包。1个 packet accelerator (PA) 来执行数据包分类操作(如包头匹配),数据包修改操作(如生成校验码)。1个 security accelerator (SA)来加密解密数据包。下面是NETCP主要的模块。...原创 2021-04-09 15:34:57 · 1403 阅读 · 0 评论 -
DSP 6678 多核CACHE一致性操作
1.CACHE一致性问题的产生cache一致性问题一般发生在多核处理器上,单核处理器基本不用考虑这个问题。现在的处理器一般都有两级甚至三级缓存。例如 TMS320C6678有L1cache,L2cache,还可以将4MB大小的MSM也设置为cache使用。当核0读写外部存储器如DDR内的数据时,会将数据保存在L2cache和L1Dcache中。后续如果该数据一直在cache中,那么对该数据的读写都会直接操作cache内的数据,而不会去修改DDR中的数据。以此提高CPU的读写速度。但是这可能导致其他主机原创 2021-04-01 16:19:22 · 7061 阅读 · 0 评论 -
DSP C6713 EMIF FLASH 启动
DSP C6713 EMIF FLASH 启动1. 启动流程1. 启动流程参考《tms320c6713b》page 98。6713默认从EMIF片选为CE1的存储器中读取1K-Byte的代码运行。代码必须是大端模式。原创 2021-03-15 16:56:50 · 3867 阅读 · 6 评论 -
DSP6678的多核启动
1. RBL在DSP中,芯片厂家都会固化一段初始代码,就是这一段代码可以根据我们bootmode配置的不同来执行不同的启动方式。根据 Bootloader for KeyStone Architecture User’s Guide (Rev. C)文档14页可知,RBL默认只启动核0,核1到核7默认停止一直等待核0给它们发送IPC(核间中断)之后,才会从Boot Address Register 里读取自己的跳转地址,继续执行任务。因此想要实现多核启动,首先需要实现核间中断,确认没问题之后再来实现多原创 2021-03-12 16:40:18 · 5656 阅读 · 1 评论 -
DSP芯片TMS320C6678的spi挂载flash启动
本文主要对工作中调试C6678的spi flash启动做一个归纳1.启动原理2.程序设计3.BOOTMODE[12:0]细节方面可能不多,只关系到spi启动部分,启动的原理啥的参照我的另一篇文章。DSP芯片TMS320C6678的emif挂载norflash启动1.启动原理spi启动是根据bootmode的配置方式和生成的镜像内包含的配置数据,把用户的代码拷贝到相应位置并运行的。而emif启动是直接在flash中运行,默认不进行代码拷贝。2.程序设计为了代码设计方便,和另一篇文章相同,依然把代原创 2021-03-12 15:21:57 · 5251 阅读 · 6 评论 -
DSP芯片TMS320C6678的emif挂载norflash启动
本文主要对工作中调试C6678的emif flash启动做一个归纳1.启动原理2.程序设计3.BOOTMODE[12:0]4.程序编码4.1 BootLoader工程4.2 APP工程4.3 FLASH烧写工程5. 生成image文件5.1 BootLoader工程5.2 APP工程6. boot table 格式7. 仿真器调试7.1 BootLoader调试7.2 APP调试1.启动原理在...原创 2020-04-28 17:40:51 · 6994 阅读 · 26 评论