匠人手札

 

随笔分类 -  DSP

在DSP开发中遇到的BUG
EMIF接口的寻址问题
摘要:2014年8月26日,一个网友提出了一个关于EMIF访问地址很典型的问题,在此我阐述一下我的个人理解。 一、提出问题 他问的问题没有这么简单,但是差不多就是这种意思,我在晚上找个典型事例,如下: DSP通过EMIF(16bit)操作外部的SDRAM,有如下对应关系: 0x9000000是EMIF的基 阅读全文

posted @ 2014-08-26 14:33 当往事已成往事 阅读(1331) 评论(0) 推荐(0)

C6000系类的内联函数
摘要:1.求绝对值函数 (1) _abs() C代码 : int _abs(int src) 汇编: ABS 功能: 求32位数据的绝对值 (2) _labs() C代码: int _labs(long src) 汇编: ABS 功能: 求40位数据的绝对值 (3) _abs2() C代码: int _a 阅读全文

posted @ 2014-08-22 10:53 当往事已成往事 阅读(2105) 评论(0) 推荐(0)

C6000代码层面优化(一)
摘要:2014年8月7日,看了一片很长见识的博文,关于DSP如何优化的,有一个问题没有搞通,“百度”一下关键字,居然搜查了一模一样的博文N片,现在也搞不懂这篇博文的原创作者是谁了。反正我感觉直接转摘过去,要是消化不掉,也没啥意思,所以我把我可以理解消化的就先记录下来吧。 一、双重循环或多重循环在保证功能的 阅读全文

posted @ 2014-08-22 10:47 当往事已成往事 阅读(593) 评论(0) 推荐(0)

使用Graph工具观察FFT波形
摘要:2014年8月1日,经过很长时间的上网查阅资料,走了很多弯路,终于可以成功使用Graph工具仿真波形了,虽然这个的确很简单,但是经过自己摸索出来的,兴奋之情难于言表。 明天就是七夕了,刚和女朋友分手的我,有点小郁闷。不发牢骚了,最后一句,祝天下所有有缘人都是失散多年的兄妹。 /*********** 阅读全文

posted @ 2014-08-05 14:44 当往事已成往事 阅读(3540) 评论(0) 推荐(0)

C6713的Boot mode
摘要:2014年7月23日,终于把困扰我两个月的问题解决了,甚是嗨皮,所以做下记录,以供后人参考之用。 问题描述:我用的片子是TMS320C6713,通过EMIF总线连接的FLASH,此FLASH分为两部分,一部分是Bootlooder和应用代码,另一部分是实时采集的数据。由于需求,我需要将数据扩大四倍, 阅读全文

posted @ 2014-07-24 11:11 当往事已成往事 阅读(1065) 评论(0) 推荐(0)

DSP中的段
摘要:虽然,C语言是一种相对高效的高级语言,并且TI提供的C编译器还结合硬件特点支持三级优化功能,但生成的汇编代码效率仍可能会不尽人意。如作者预使用环型缓冲区管理功能,这就要求该缓冲区应被定位到相对特定的位置。因此,用户对C编译器究竟是如何进行存储分配的,应有一定的了解。目标码是以段为单位组织的。至于TM 阅读全文

posted @ 2014-07-22 16:51 当往事已成往事 阅读(1098) 评论(0) 推荐(0)

DSP下的#program
摘要:2014年7月22日 最近调试使用TMS320C6713的片子调试SDRAM,中间经过很多波折,这里就不吐槽了。 想将数据或者代码放到SDRAM上一定要用到#pragma 。查阅资料后,感觉百度文库的资料还可以,所以将度娘的资料摘抄过来,以作记录。 1.在CCS编程中,如果我们不指定变量的存放位置, 阅读全文

posted @ 2014-07-22 15:51 当往事已成往事 阅读(714) 评论(0) 推荐(0)

使用hex6x 进行十六进制转换
摘要:接触DSP两年多,虽然烧写Flash的操作都没问题,但是要是问起来为什么这么做的,就有点自惭形秽了。所以花些时间,查阅一下资料,整理一下。 1.先看看BurnFlash都需要什么东西。 XXX.out(这是源文件,由CCS生成的) hex6x.exe(TI提供的转化软件) XXX.bat(批处理文件 阅读全文

posted @ 2014-06-06 14:25 当往事已成往事 阅读(907) 评论(0) 推荐(0)

Debug模式下编译溢出问题
摘要:问题: 代码在Debug模式下编译报出内存溢出的错误,而Release模式下则没有。 由于Debug模式下包含调试信息,并且不作任何优化。而Release模式进行了各种优化,内存检测等操作均省去,使得程序在代码大小和运行速度上都是最优的。 方法1: 猜测Release对代码进行了优化或者根本就没有进 阅读全文

posted @ 2014-06-06 14:18 当往事已成往事 阅读(603) 评论(0) 推荐(0)

CCS3.3下执行优化
摘要:最近想研究一下CCS下的程序优化,之前也了解一些,现在查阅一下资料,整理一下。 当然优化有很多种,我本次先说的是执行优化方式。 2.右击文件选择File Specific Options选项,在弹出的对话框中选择Compiler,继续选择Basic,点开Opt Level的下拉菜单,这里我们就可以看 阅读全文

posted @ 2014-05-29 18:04 当往事已成往事 阅读(2730) 评论(0) 推荐(0)

调试CS5343总结报告
摘要:一周前接到新任务,调试CS5343,百度一下,CS5343是一款音频采集的AD芯片,CS5343驱动代码是现成的,我的工作是提高芯片的采样速率,看了一边芯片的Datesheet,辛好东西不是很多。 概述:CS5343是一款音频采集的AD芯片,使用I2S接口,即LR两路间隔输出。 1.文档总结 概述为 阅读全文

posted @ 2014-05-29 10:08 当往事已成往事 阅读(2210) 评论(0) 推荐(0)

[转]Debug 和 Release 编译方式的区别
摘要:本文主要包含如下内容: 1. Debug 和 Release 编译方式的本质区别 2. 哪些情况下 Release 版会出错 3. 怎样“调试” Release 版的程序 Debug 和 Release 编译方式的本质区别 Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调 阅读全文

posted @ 2014-05-20 17:32 当往事已成往事 阅读(312) 评论(0) 推荐(0)

基于CCS3.3平台搭建DSP/BIOS系统
摘要:本人由于换工作的原因,由ccs3.1平台下转化为ccs3.3平台。先说说本人感觉的区别,ccs3.1下的CSL库集成到DSP/BIOS内,而3.3的CSL库在DSP/BIOS下就没有体现。 1.二话不说,先搭建CCS3.3的工程,添加main函数。这个比较简单就不细说了。 2.创建DSP/BIOS文 阅读全文

posted @ 2014-05-16 09:57 当往事已成往事 阅读(3323) 评论(0) 推荐(0)

导航