DSP
文章平均质量分 72
lcydhr
虽有智慧,不如借势。
展开
-
位运算求两个整数的平均值
int mean(int x,int y){ return (x&y)+((x^y)>>1);}解释:x&y是取相同的位与,这个的结果是x和y相同位的和的一半,x^y是取x和y的不同位,右移相当于除以2,所以这个函数的功能是取两个数x和y的平均值。比如:mean(729.271) = __500_;转载 2015-03-12 14:39:26 · 617 阅读 · 0 评论 -
DSP中由C转成C++出现编译 badly formed pragma错误的解决.
这是由于C++的#pragma DATA_SECTION用法同C不一致造成,以下是实例。省去了NAME。 Using the DATA_SECTION Pragma a) C source file #pragma DATA_SECTION(bufferB, "my_sect")char bufferA[512];char bufferB[512]: b转载 2015-01-12 21:15:57 · 1029 阅读 · 0 评论 -
永不停息的红舞步一个电子工程师的心路历程(转载)
转载自新浪微博传说中有一对美丽的红舞鞋,穿上它,你将舞出最美丽的舞步…… 正式从事电子硬件设计工作四年多了,回忆起接触电子的这几年,感触很多……虽然经历了很多酸甜苦辣,但也给我的生活增添了很多色彩…… 第一次真正意义上的接触电子应当算是高中的时候。当时很喜欢学校图书馆里的一份杂志,杂志名字不记得了,只记得杂志里有两页是关于电子制作的,当时那两页一直是我的最爱……慢慢转载 2015-01-12 21:16:41 · 5427 阅读 · 0 评论 -
CCS5编译器手动设置dsp支持可变参数宏等问题
IDE:CSS5.4,compiler不支持可变参数宏。需要手动设置编译器相关选项:Language Option-》Language Mode —》no strict ANSI。 1.#pragma DATA_ALIGN( rxdata_stream, 128) 就是让rxdata_stream地址的末尾7位是0(二进制地址),就是128字节对齐。 对齐的目的,转载 2015-01-13 13:57:46 · 3045 阅读 · 0 评论 -
让DSP从FLASH启动——step bystep
TI的资料上的说明如下:位于CE1空间的ROM中的代码首先通过DMA/EDMA被搬入地址0处。加载过程在复位信号撤消之后开始,此时CPU内部保持复位状态,由DMA/EDMA执行1个单帧的数据块传输。传输完成后,CPU退出复位状态,开始执行地址0处的指令。对于C6416,片上的Bootloader工具只能将1 KB的代码搬入内部RAM。通常情况下,用户应用程序的大小都会超过这个限制。所以,需转载 2015-01-29 16:02:32 · 4289 阅读 · 1 评论 -
转:图像算法在DSP嵌入式移植中常用的优化方法
以下内容来源于大嘴说图像微博:”大嘴说图像微博入口地址“今天大嘴主要介绍一下这些年来本人在做图像算法的嵌入式移植时常采用的优化方法,由于篇幅和时间有限,这里主要列出一个大框,具体的如果大家有兴趣可以慢慢与大嘴交流。一. 前序1. 图像算法在嵌入式移植时(主要针对DSP芯片)优化的原则和步骤?原则:算法效果达到预期之前最好不要做过多的优化步骤:转载 2014-12-15 16:51:49 · 830 阅读 · 0 评论 -
cache基础知识
为了填补 CPU 和主存在速度上的巨大差距,现代计算机都在 CPU 和主存之间设置一个高速、小容量的缓冲存储器 Cache 。 Cache 对于提高整个计算机系统的性能有重要的意义,几乎是一个不可缺少的部件。Cache 是按块进行管理的。 Cache 和主存均被分割成大小相同的块。信息以块为单位调入 Cache 。相应地, CPU 的访存地址被分割成两部分:块地址和块内位移,如下所示:转载 2014-11-18 20:59:09 · 1163 阅读 · 0 评论 -
dsp cache优化(转载)
dsp cache优化(转载)2010年07月27日 星期二 12:22转载自 8kone8最终编辑 zcug_071以前我自己编写过乒乓结构的程序,后来查资料的时候发现乒乓结构还是很普遍的用法,但是我是初学者,其实编程优化方面,只是做过手工的软件流水,对于硬件的深入了解还远远不够,对CACHE的程序级优化还有待提高下面是今天学习的一些摘录,我相信对我今后一转载 2014-11-17 08:23:28 · 748 阅读 · 0 评论 -
详解FlashBurn的hex文件烧写
实现在FLASH存储器烧写程序一般有以下三种方法:一是通过编程器下载烧写;二是通过开发商提供的专门软件工具+在线仿真器烧写;三是自己编程通过DSP烧写。个人使用的是合众达电子SEED-VPM642开发板,在最新版本例程中提供了专用的烧写软件SeedConvertTool.exe;但为了实现通用的FLASHBURN烧写,我进行了一些尝试以便了解程序烧录过程及运行情况。 实现Bootloade转载 2015-01-14 20:43:21 · 2138 阅读 · 0 评论 -
DSP编程中使用的预编译指令 #pragma
转载自http://blog.sina.com.cn/s/blog_48b82df90100brke.html**** TypeWritter: Li Hui *** Start Time: Nov.19.2008 *** Version 1.3** ** use word to instead 2 * 16bit short data's access转载 2015-01-16 16:58:57 · 1629 阅读 · 0 评论 -
flashburn如何工作
要点说明:1)FlashBurn通过CCS与目标硬件通信。这需要一个JTAG仿真器或者是DSK上的板上通信组件。2)FlashBurn从下载一小段被称作FlashBurn目标组件(FBTC,FlashBurn Target Component)的应用程序到硬件电路板的RAM开始。FBTC实现擦除、烧写和校验Flash等所有功能。3)FlashBurn启动运行在硬件目标上的FBTC程序,转载 2015-01-16 16:54:39 · 703 阅读 · 0 评论 -
C/C++与汇编语言的交互之-(2)从C/C++代码调用汇编代码中的函数与变量
在C/C++与汇编语言混合编程的情况下,一般我们都会选择C/C++来实现所期待的大部分功能,对于少数和硬件关联度高(例如操作某些CPU寄存器)以及对运算的实时性要求高(例如高速、多点的FFT)的功能才使用汇编来实现,这就使得大多数情况下,C/C++与汇编的交互都是从C/C++代码调用汇编代码中的函数与变量,所以在此我们就来看一下这种调用的规则。本文引用地址:http://www.eepw.co转载 2015-03-12 13:33:11 · 1814 阅读 · 0 评论 -
C6000 EDMA 使用心得总结
转载自左超的CSDN博客http://blog.csdn.net/henhen2002/article/details/4464166几天调下来,总感觉TI的文档语焉不详。不过想想也对,250页的文档是谁都要写到郁闷的。而且一个懂了的人给初学者讲东西总会自然的略过一些看似当然的关键。 这几天遇到的问题就是EDMA可以工作,却不能连续不断的转起来。而问题的所在就在于文档没读清楚。转载 2015-03-17 13:46:25 · 1459 阅读 · 0 评论 -
C64x EDMA Architecture
本文转自http://volvet.blogbus.com/logs/8270502.html(1) Transfer Request1) Transfer Request每次数据传输都是由Transfer Request(TR)发起的,TR包含了所有数据传输所需要的信息:源地址,目标地址,优先级,传输的元素个数等等。TR根据不同的优先级被塞入相应的队列中,每次转载 2015-03-17 13:57:44 · 479 阅读 · 0 评论 -
DM642 EDMA使用总结
最近在项目研发过程中使用到了DM642 的EDMA的连续传输方式,在网上查找一些相关资料,但是发现都没有系统的对EDMA的配置进行深入的说明,以至于将相关方法用在实验当中,证明是失败的,于是乎,求人不如求已,拿着datasheet慢慢的啃和不断反复的实验了(过程是痛苦,确又充实的),功夫不负有心人,至此,已将项目中的EDMA模块顺利调通!现将使用方法进行详细总结,以为后面同仁抛砖引玉,这里以EDM转载 2015-03-17 10:52:23 · 824 阅读 · 0 评论 -
DSP错误总结!
转载自http://blog.csdn.net/syc0616/article/details/39504051.warning: entry point symbol _c_int00 undefined使用C写DSP时,在rts.lib库中定义了入口地址:_c_int00而使用汇编语言编程,就不用包括rts.lib库,所以入口地址及其标号可以由人工指定。而使用C时,就不同了,必须从转载 2015-01-21 15:22:02 · 2655 阅读 · 0 评论 -
图像算法移植到DSP及其优化步骤
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://junzhuivs.blog.51cto.com/7446454/1249404图像算法移植到DSP及其优化步骤当你需要把已经写好的算法,移植到你的DSP开发板上并很好的跑起来,需要做哪些工作呢?下面我分两部分来讲,第一分部是移植,第转载 2014-12-15 16:43:15 · 1186 阅读 · 0 评论 -
C语言的inline关键字
先收藏了一直以来我就认为inline关键字是C++中的。今天我看到一篇讲关于C语言的inline关键字的。呵呵。。。原来是我弄错了。看来以后定义一些宏命令完全可以用这样的一些inline函数来代替了。以下是我从网上搜集来的知识点(来源:http://superding.spaces.live.com/Blog/cns!89E842A8485366C7!1137.entr转载 2014-12-12 10:17:58 · 504 阅读 · 0 评论 -
DSP程序优化
一、c6x的编译的常用选项(一)c6x的编译程序为“cl6x.exe”使用的方法Cl6x [options] [filenames]Cl6x: 编译程序Options: 编译选项Filenames: C或汇编源文件说明:编译选项是一个字母或者两个字母,对大小写不敏感。编译选项的前面需要有一个“-”符号。一个字母的选项可以合并在一起。比转载 2014-12-12 09:11:22 · 794 阅读 · 0 评论 -
C6000系列的C64x+ Cache优化--配置,Cache miss和Cache一致性
本文主要介绍TI C6000系列的C64x+的DSP Cache配置,常见的Cache miss模式以及如何在多核或者多外设DMA系统下维护Cache一致性,当然还有Cache优化的专题,针对指令L1P和数据L1D cache的优化。C64x+与C64x CACHE的区别Write Buffer(WB):1. C64x+的 write buffe(WB)宽度为128-bit转载 2014-11-17 08:29:38 · 1810 阅读 · 0 评论 -
TMS320C64x+ DSP------Using Cache
一、配置cache>配置L1 Cache: CACHE_L1pSetSize(); CACHE_L1dSetSize();>配置L2 cache: 启动时默认状态下L2 cache被disabled, 全部L2为SRAM。如果启用了DSP/BIOS,则L2 cache被自动使能;否则,可以通过调用CSL命转载 2014-11-17 08:27:40 · 761 阅读 · 0 评论 -
TMS320C64x+ DSP-----Cache 优化(转)
TMS320C64x+ DSP-----Cache 优化(转)2010年07月27日 星期二 12:22转载自 8kone8最终编辑 zcug_071一、cache性能特点 优异的cache性能很大程度上依赖于cache lines的重复使用,优化的最主要目标也在于此,一般通过恰当的数据和代码内存布置,以及调整CPU的内存访问顺序来达到此目的。由此,应转载 2014-11-17 08:25:21 · 735 阅读 · 0 评论 -
Mean Shift详细介绍(上)
Mean Shift,我们 翻译为“均值飘移”。其在聚类,图像平滑。图像分割和跟踪方面得到了比较广泛的应用。由于本人目前研究跟踪方面的东西,故此主要介绍利用Mean Shift方法进行目标跟踪,从而对MeanShift有一个比较全面的介绍。 (以下某些部分转载常峰学长的“Mean Shift概述”) Mean Shift这个概念最早是由Fukunaga等人于1975年在一篇关于转载 2014-09-15 08:57:35 · 617 阅读 · 0 评论 -
DDK中VPORT Mini-Driver的使用说明
要使用TI DDK中实现的VPORT驱动程序,首先需要在程序中提供VPORT_PortParams类型的参数变量、VPORTCAP_Params类型的参数变量以及VPORTDIS_Params类型的参数变量。其次,在DSP/BIOS应用程序中使用DDK所提供的Mini-Driver前需要使用DSP/BIOS配置工具(DSP/BIOS Configuration Tool)对DSP/BIOS转载 2014-08-28 15:07:39 · 442 阅读 · 0 评论 -
opencv 图片最大连通区域识别
这里用的opencv 的python api可能跟c的api 有少许区别1. 图片初期处理 gray = cv.cvCreateImage (cv.cvSize (image.width, image.height), 8, 1) edge = cv.cvCreateImage (cv.cvSize (image.width, image.height), 8, 1转载 2014-09-11 17:00:00 · 3502 阅读 · 0 评论 -
VPORTCAP_Params参数含义详解
VPORTCAP_Params参数含义详解 以下是关于DSP中RF5结构中视频捕获VPORTCAP_Params结构体数据成员的说明,希望能提供给刚入门的朋友一些帮助:typedef struct { Int cmode; //捕获模式设置 Int fldOp; //帧和场的操作模式 Int scale;转载 2014-08-28 15:09:22 · 959 阅读 · 0 评论 -
OpenCV计算连通区域数目与最大连通区域并标示出
#include #include #include #pragma comment(lib, "cv.lib") #pragma comment(lib, "cxcore.lib") #pragma comment(lib, "highgui.lib") int main( int argc, char** argv ) { IplI转载 2014-09-09 15:54:56 · 935 阅读 · 0 评论 -
Cache
为什么要引入Cache①大容量主存一般采用 DRAM,相对SRAM速度慢,而SRAM速度快,但价格高。②程序和数据具有局限性,即在一个较短的时间内,程序或数据往往集中在很小的存储器地址范围内。因此, 在主存和CPU之间可设置一个速度很快而容量相对较小的存储器,如下图所示。在其中存放CPU 当前正在使用以及一个较短的时间内将要使用的程序和数据,这样,可大大加快 CPU 访问存转载 2014-08-23 09:06:46 · 540 阅读 · 0 评论 -
基于DSP/BIoS设备驱动模型的视频驱动程序开发
作者:天津科技大学 电子信息与自动化学院 严新忠,刘 喆转载 2014-08-21 09:55:12 · 1028 阅读 · 0 评论 -
DSP/BIOS 设备驱动的结构和使用
1 设备驱动双层模型 随着DSP实时系统复杂性的提高及新技术的出现,外围设备的种类和数量也在增长。这些外围设备的设备驱动的编写和使用已经成为一种依赖于具体硬件和操作系统的必须的任务。有时为了满足一些系统的约束条件,如存储器空间、响应时间和功率管理等,这些设备驱动的开发又将成为一项艰巨的任务。 一种将设备驱动从机能上分为硬件无关层和硬件相关层的双层模型,为驱动开发者提供转载 2014-08-21 09:16:31 · 899 阅读 · 0 评论 -
mean shift详细介绍(下)
首先还是把mean shift的原理用数学公式说一下吧。1、目标模型,算法采用的是特征值的加权概率分布来描述目标模型。这应该是模式识别中主要描述目标的模型,不同于自动控制理论中采用的状态方程。目标模型共m个特征值(可以理解为像素灰度值)其中X0是窗口中心点向量值(可能为RBG 向量或者灰度值), Xi 是窗口内第i 点向量值。C 为归一化常数,保障q1+q2+q3+转载 2014-09-15 08:59:19 · 804 阅读 · 0 评论 -
一种二值图像连通区域标记的新方法
连通区标记是最基本的图像处理算法之一,最近的项目中需要一个纯C语言实现的连通区标记算法,本以为如此基础的算法在网上能搜到现成代码,结果大失所望,讲解标记算法思想的文章很多,给出代码实例的却很少,能找到的几段程序,都有各种各样的问题。于是,自己动手丰衣足食,并拿出来与大家分享。两阶段法是传统的连通区标记算法,在维基百科上有详细的介绍:Connected Component Labelin转载 2014-09-15 11:26:16 · 1355 阅读 · 0 评论 -
图像-不变矩
不变矩的主要思想是使用对变换不敏感的基于区域的几个矩作为形状特征,Hu提出了7个这样的矩,在他工作的基础上出现了很多改进的版本。 图像的几何不变矩 矩特征主要表征了图像区域的几何特征,又称为几何矩, 由于其具有旋转、平移、尺度等特性的不变特征,所以又称其为不变矩。在图像处理中,几何不变矩可以作为一个重要的特征来表示物体,可以据此特征来对图像进行分类等操转载 2014-09-16 11:08:09 · 1024 阅读 · 0 评论 -
GEL文件详解
CCS的GEL语言是一种交互式的命令,它是解释执行的,即不能被编译成可执行文件。它的作用在于扩展了CCS Studio的功能,可以用gel来调用一些菜单命令,对DSP的存储器进行初始化配置等。 对于不同型号的DSP,我们应选择相对应的GEL文件。 当CCS Studio启动时,GEL文件加载到PC机的内存中,如果定义了StartUp()函数则执行该函数在CCS Studio(V转载 2014-10-29 15:05:04 · 2201 阅读 · 0 评论 -
如何优化使用C6000系列C64x的Cache--原理,Cache种类和优化策略
本主题的第一部分主要以TI C64x DSP为例介绍cache缓存的基本概念, 解释了为什么需要cache,cache如何和主内存进行通信以及如何优化cache的性能。第二部分主要介绍了怎么配置cache以及怎样正确的使用cache,即如何保证cache的一致性。其中有关于DMA的传输怎么影响cache以及怎么管理DMA传输的双缓存。关键字:C64x DSP Cache DMA L1P L1D转载 2014-11-15 09:28:05 · 1114 阅读 · 0 评论 -
DM642的优化
工作阶段:工作流程一般分为三个阶段。 阶段一:直接按照需要用C语言实现功能。在实际的DSP应用中,许多算法都是非常复杂,直接用汇编代码编写,虽然优化效率很高,可是实现的难度却很大,所以一般都采用先用C语言来实现,然后编译运行,利用C64X开发环境的profile clock工具测试程序运行时间,若不能满足要求,则进行第二阶段。 阶段二:C语言级的优化。选择C64X开转载 2014-09-17 15:19:46 · 377 阅读 · 0 评论 -
C6000软件优化经验总结
DSP 优化心得 1推荐C6XX优化经验总结一、c6x的编译的常用选项(一)c6x的编译程序为“cl6x.exe”使用的方法Cl6x [options] [filenames]Cl6x: 编译程序Options: 编译选项Filenames: C或汇编源文件说明:编译选项是一个字母或者两个字母,对大小写不敏感。转载 2014-09-17 15:54:46 · 926 阅读 · 0 评论 -
协方差的概念与意义
在做数字图像处理的时候,特别是PCA降维的时候,很多情况下要遇到协方差矩阵,其实一直糊里糊涂的不知道到底是个什么东西,以下是我收集的网上资料做的整理和自己的一些理解。统计学的基本概念 学过概率统计的孩子都知道,统计里最基本的概念就是样本的均值,方差,或者再加个标准差。首先我们给你一个含有n个样本的集合,依次给出这些概念的公式描述,这些高中学过数学的孩子都应该知道吧,一转载 2014-09-16 13:14:19 · 1430 阅读 · 0 评论 -
七个hu不变矩的C
double* Getsquare(int **Array1,int Width,int Height//Array1图像灰度矩阵{ int x,y; double pSum,dx,dy; int xmax,xmin,ymax,ymin,xSum,ySum,PointSum; double dd,n1,n2,xAve,yAve; pSum=Height*Width转载 2014-09-16 11:10:02 · 673 阅读 · 0 评论 -
图像特征特点及其常用的特征提取与匹配方法
导读: 常用的图像特征有颜色特征、纹理特征、形状特征、空间关系特征。 一、颜色特征 (一)特点:颜色特征是一种全局特征,描述了图像或图像区域所对应的景物的表面性质。一般颜色特征是基于像素点的特征,此时所有属于图像或图像区域的像素都有各自的贡献。由于颜色对图像或图像区域的方向、大小等变化不敏感,所以颜色特征不能很好地捕捉图像中对象的局部特征。另外,仅转载 2014-09-16 13:03:38 · 608 阅读 · 0 评论