![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DM642 学习
文章平均质量分 71
henhen2002
Chao Zuo received B. Sc.degree from the School of Elec. Eng. & Opto.Tech., Nanjing Univ. of Sci. and Tech. in 2009. And he is currently pursuing his Ph.D. degree in the School of Elec. Eng. & Opto. Tech., NUST, Nanjing, P.R. China. He is interested
展开
-
DM642 FVID驱动
DM642 FVID驱动 TI公司为开发DSP的外设驱动程序,推出了DSP/BIOS Device Driver Kit(DDK),定义了标准的设备驱动模型,并提供了一系列的API接口。外设驱动程序分为两层:① 类驱动(class driver)。类驱动程序用来为应用程序提供接口。这部分程序与设备无关,主要功能包括维护设备数据缓冲区,向上提供API接口供应用层程序调用,并协调应用程转载 2009-07-27 21:30:00 · 1263 阅读 · 0 评论 -
TMS320 C64x Cache Architecture
本文转自http://volvet.blogbus.com/logs/8227255.htmlC64x Cache Architecture C64x CPU使用2级的Cache架构+外部内存(external memory),Level 1 Cache 按照功能分为L1 Program Cache和L1 Data Cache。每个L1 Cache的大小为16k Byte,也就是说C64转载 2009-08-19 21:04:00 · 1543 阅读 · 0 评论 -
C64x EDMA Architecture
本文转自http://volvet.blogbus.com/logs/8270502.html(1) Transfer Request1) Transfer Request每次数据传输都是由Transfer Request(TR)发起的,TR包含了所有数据传输所需要的信息:源地址,目标地址,优先级,传输的元素个数等等。TR根据不同的优先级被塞入相应的队列中,每次排于队列首位转载 2009-08-19 21:05:00 · 1340 阅读 · 0 评论 -
C64x L1 L2 cache
L1P(direct mapped Cache) C64x的L1P是直接映射cache(direct mapped),其为Read Allocate,即只在读操作时才进行cache处理(对于L1P,很好理解,因为不可能产生改变程序的代码)。 从上表可以看出,C64xDSP的一些基本参数。其line size为32字节,而L1P大小为16k字节,故L1P中包含512条32字节的line fr转载 2009-08-19 21:14:00 · 2078 阅读 · 1 评论 -
Cache 优化
对于一般的CPU信号处理加上外围设备的DMA数据读写情况,处理方法是在内存中开辟pingpong缓冲区。inbufa,outbufa,inbufb,outbufb四块内存区,当CPU处理inbufa的数据并将产生的结果放到outbufa,这是外围器件DMA搬移数据到inbufb,另一外围设备将数据从outbufb搬出;同理当CPU处理inbufb并将产生的结果放到outbufb时,外围设备利用转载 2009-08-19 21:43:00 · 3424 阅读 · 0 评论 -
C6000中断
中断类型和中断信号如下:三种中断类型:RESET#,NMI,INT4-INT15,优先顺序如下:复位中断:最高级别,用来停止CPU工作,并返回到一个已知的状态.它是低电平有效,其他的中断是转向高电平的上升沿有效.为了正确初始化CPU,在RESET#再次变成高电平之前必须保持10个时钟.复位操作使得所有的指令执行都被打断,所有的寄存器返回到他们的默认状转载 2009-08-21 13:40:00 · 2709 阅读 · 0 评论 -
MCBSP 回环配置实例
/* * Copyright (C) 2003 Texas Instruments Incorporated * All Rights Reserved *//* *---------main_mcbsp1.c--------- * * mcbsp1 Example configures the serial port for digital loopback mode原创 2009-08-24 08:39:00 · 2810 阅读 · 0 评论 -
DSP 调用 C 输入输出函数 scanf() printf() gets() puts()
1.1 标准输入输出函数 1.1.1 格式化输入输出函数 Turbo C2.0 标准库提供了两个控制台格式化输入、 输出函数printf( ) 和 scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。 printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入 设备(键盘)上读数据。下面详细介绍这两个函数的用法。 一、printf()函数原创 2009-09-06 22:45:00 · 3750 阅读 · 0 评论 -
gel文件的应用
GEL--通用扩展语言,无类型语言,只有int类型,当CCS运行时首先执行这个GEL函数当我们自己需要设定某功能上电后立即开启,那么可以在这个函数里面实现。www.hellodsp.com5 H) I# g8 ~+ b2 n* G/ g4 |* Z( U5 U以2407的看门狗为例子,因为上电后2407的看门狗是自动开启的,但我们在调试程序的时候都是把看门狗关闭的,所以想在调试程序的时候可以把关看原创 2009-09-20 19:09:00 · 4486 阅读 · 1 评论 -
SCOM详解-举例
例子:定义:SCOM_Handle objSCOMINToDIS[NUM_SCOM_OBJS_IN][2];Ptr msgSCOMInToProc[NUM_SCOM_OBJS_IN];在main()函数中/*-------------------------------------------------------*//* create all SCOM and message objec转载 2009-09-30 11:42:00 · 1321 阅读 · 0 评论 -
Motion Detection详解
Motion Detection程序是指图像处理中用到的运动补偿方法,它先用当前视频帧和指定参考帧进行像素点之间的比较,然后把不同的像素点着色,最后将这些不同的像素点替换成当前帧相应的像素点即可。因此,这种方法有效的减小了图像处理过程中的时间冗余度。通过对Motion Detection程序的介绍,我们希望您对DM642平台系统有更加细致的认识和应用经验。本文就对此程序进行详细的介绍。我们把Mot转载 2009-10-08 11:39:00 · 9688 阅读 · 2 评论 -
参考框架RF5
RF5是德州仪器TI公司新近推出的DSP软件开发的起步代码参考框架,它以DSP/BIOS为基础,利用其中的数据处理元素和数据通信元素方便快捷地完成DSP软件的设计与开发RF5是RF的最新版本,其区别于RF1和RF3的显著特点是其支持动态对象创建和支持线程(任务)挂起功能,因此适合系统较复杂的应用场合。 RF5 主要实现三个功能,存储管理,线程模型和通道封装,对于不同的应用,我们只需在这三个原创 2009-10-07 22:40:00 · 1647 阅读 · 0 评论 -
DSP中的Mailbox的学习
在DSP项目开发中,我用mailbox实现了进程间的通信,通过接收网络控制进程发来的mailbox,实现了云台的控制,其中需要学习的地方有两点:一是mailbox通信机制的学习,二是DSP时间管理机制,这里先学习一下mailbox的相关知识。 MBX模型为mailbox提供了一系列函数支持,比如MBX_pend 和 MBX_post。而mailbox可以用来在同一块处理器上运行的进程转载 2009-10-12 21:40:00 · 4922 阅读 · 1 评论 -
QDMA应用实例
1. 把数据从视频通道通过一维方式传送到片内RAM中并作Sobel边缘提取算法。我们只对摄像头采集的一块数据进行Sobel边缘提取。采用一维EDMA传送方式,每一次传送采集的一行中的部分数据(DAT_copy()函数)。在PAL制式下,先把一行数据放到nMemTemp数组中,比如我们要把从144行到432行,从180列到435列的图像进行Sobel边缘提取,最后把变换后的数据输出到显示缓冲区。原创 2009-10-29 08:32:00 · 3137 阅读 · 1 评论 -
如何采集原始图象数据存储格式的数据
问题的提出:如何采集原始图象数据存储格式的数据问题解决:出处:spru629. video port_VCX0 Interpolated Control (VIC) Port;方法:设置VCxSTOP1来指定要采集图像的大小(VCXSTOP设置采集图像大小的低12位,VCYSTOP设置高12位 写入VCxTHRLD来设置采集的阈值.每一次接受到的象素达到了VCTHR原创 2010-03-03 13:34:00 · 2121 阅读 · 0 评论 -
DAT_copy 产生的问题
#include #include #include #include #pragma DATA_SECTION(external, "quickdata")char external[352*416]; // 片外#pragma DATA_SECTION(internal, "quickdata")char internal[16转载 2010-04-13 07:27:00 · 3102 阅读 · 1 评论 -
DM642 QDMA 数据传输应注意的一个问题
在DM642中,用QDMA进行大数据量的传输无疑是一个很好的选择,比如,我们将一幅YUV422的图像数据拷贝到另外的地方去: idY=DAT_copy2d(Y......); idU=DAT_copy2d(U......); idV=DAT_copy2d(V......); DAT_wait(idV); ...... ......转载 2010-04-13 07:31:00 · 1744 阅读 · 0 评论 -
TI C64X DSP中断向量表的配置(硬件中断)
1. 编写中断服务例程在.c源文件中编写ISR函数c_intXX,用于中断处理,如:interrupt void c_intXX (void){ …;}注:对于硬件中断而言,XX = 00~15。 2.初始化中断向量表,并在内存段中的中断向量表中配置好对应的中断向量 首先是把中断向量表定位到某一内存段中,我们可以在cmd文原创 2009-08-19 20:59:00 · 4012 阅读 · 1 评论 -
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转载 2009-08-19 21:38:00 · 2191 阅读 · 0 评论 -
C6000 EDMA 使用心得总结
几天调下来,总感觉TI的文档语焉不详。不过想想也对,250页的文档是谁都要写到郁闷的。而且一个懂了的人给初学者讲东西总会自然的略过一些看似当然的关键。 这几天遇到的问题就是EDMA可以工作,却不能连续不断的转起来。而问题的所在就在于文档没读清楚。 文档(SPRU234,下同)在第一章的第一节的图1-2就给出了EDMA的控制块图。现在看到控制块图当然联想到实际的工作流程,但是似原创 2009-08-19 20:43:00 · 8003 阅读 · 5 评论 -
DSP/BIOS与main()函数关系
§DSP/BIOS与main()函数关系 随着多线程技术的发展,原来委以重任的main()函数也逐渐的退化和冷落,现在变成了名不副实的“主函数”。在DSP/BIOS中也同样存在这样的问题,然而main()函数的作用依然不可忽略,其与DSP/BIOS的API函数的调用上存在一定的先后关系。 在DSP/BIOS应用程序中,main()函数用于实现用户的初始化操作,片内/片外外设的配转载 2009-07-30 17:19:00 · 1121 阅读 · 1 评论 -
cann't open file的错误解决
找不到文件的原因是设置的问题,解决办法如下:头文件:在CCS菜单的Debug/Build option/Compiler/preprocessor/Include Search Path/加上包含文件的路径,最好是绝对路径,相互之间用分号隔开.库文件:在CCS菜单的Debug/Build option/linker/Basic/Library Search Path/加上包含文件的原创 2009-07-31 16:18:00 · 7544 阅读 · 0 评论 -
关于解码芯片SAA7115及7105的配置 ,FVID与微驱动
最近因为在做视频处理,所以和解码芯片打交道很多,但因为解码芯片的datasheet很多内容(又是英文的,汗),所以根据DM642的例程总了一些应该配置的东西.注:以下的配置均是指AV信号输入,PAL制式输出的条件 (一)关于SAA7115(基于TI的驱动) 结构体定义如下:typedef struct {Int cmode; /* capture mode settings *原创 2009-07-31 16:25:00 · 3545 阅读 · 0 评论 -
视频中的基本概念
1.什么是"帧",在最早的电影里面,一幅静止的图像被称做一"帧(Frame)",影片里的画面是 每一秒钟有24帧,为什么是24帧,这个数字是怎么来的,因为人类眼睛的视觉暂留现象正好符合每秒24帧的标准,所以用多也没有意义还会浪费电影胶片,增加成本. 2.什么是"行",在我们用的传统CRT模似电视里面,一个电子束在水平方向的扫描被称之为行,或行扫描. 3.什么是"场",在我们转载 2009-07-31 16:26:00 · 1591 阅读 · 0 评论 -
DSP 基础问答
TI公司的仿真器同SEED仿真器的区别? 1)SEED-XDS同TI的XDS-510完全兼容,可以完全替代XDS-510。 2)SEED-XDSPP同TI的XDS-510PP完全兼容,可以完全替代XDS-510PP。 3)SEED-XDSUSB和SEED-XDSPCI是合众达独创的产品,它们具有SEED-XDS的全部功能,更加便于使用。 4)SEED仿真器的JTAG/MP原创 2009-07-31 22:59:00 · 2138 阅读 · 0 评论 -
CSL库函数命名规则
1、 CSL命名规则 类型命名规则函数PER_funcName()变量PER_varName宏PER_MACRO_NAMETypedef类型PER_Typename函数传递参数funcArg原创 2009-07-31 16:14:00 · 3213 阅读 · 0 评论 -
CMD文件的编写
CMD文件的编写 TI的代码产生工具产生的目标文件是一种模块化的文件格式—COFF格式,代码和数据在COFF文件中以段的形式组织,一个COFF段是在memory map中占连续空间的一块code或data。COFF文件中包含了段的完备信息,如段的绝对地址,名字,属性以及数据等。这些段可分为两种,已初始化段和未初始化段;或者另一种分法,namely code,初始原创 2009-08-05 12:14:00 · 8718 阅读 · 0 评论 -
DSP 学习指南
研究生期间断断续续做过TI DSP研究,从一个对嵌入式一点也没有了解的新手到快毕业时完成一个自认为满意的项目,其中走过很多弯路,现在把我对DSP学习的心得和一些参考文献列出来,可能对初学者具有帮助。 实验室用的是一款闻亭的DM642开发板,当时这款开发板还比较新,国内中文资料很少,而且闻亭但是的例子程序均是采用TI的原程序,不像合众达的例子程序容易上手,所以可能合众达的板子比较适合初学者转载 2009-08-05 12:48:00 · 5170 阅读 · 3 评论 -
色度抽样
在数位图像处理领域中,色度抽样是指在表示图像时使用较亮度信息为低的分辨率来表示色彩(色度)信息。当对模拟分量视频或者YUV信号进行数字抽样时,一般会用到色度抽样。目录[隐藏]1 原理 2 抽樣作用的解釋 3 各種抽樣分式 3.1 4:4:4 YCbCr 3.2 4:4:4 RGB(沒有抽樣) 3.3 4:2:2 3.4 4:2原创 2009-08-07 19:19:00 · 3009 阅读 · 0 评论 -
dm642的flash烧写flashburn心得
DM642有多种启动方式:PCIboot, HPI boot, EMIF boot, NO boot;可以设置BOOT开关来设置而较为复杂的就是EMIF boot, 因此该文将描述如何实现从EMIF的8-bit flash启动。该话题包含两方面的内容:1 如何设计应用程序,使其能够从flash启动2 如何把应用程序烧写到flash里面 配置应用程序DM642如果是配置为从EMIF原创 2009-08-10 08:54:00 · 3967 阅读 · 1 评论 -
DM642视频采集与回放 程序基本框架
void tskVideoLoopback(){ //设置显示的行数 numLinesDis = EVMDM642_vDisParamsChan.imgVSizeFld1; //设置采集的行数numLinesCap = EVMDM642_vCapParamsChan.fldYStop1 – EVMDM642_vCapParamsChan.fldY原创 2009-08-14 16:26:00 · 3626 阅读 · 0 评论 -
DM642 的 VIDEO PORT - SPRU629F C64X VP/VIC简要笔记
TI公司的TMS320C6000DSP系列对于视频有很好的处理能力,以DM642为例,它拥有三个视频接口,可以方便的进行视频的采集处理输出等工作,下面将做详细的介绍。 一 概述 1.1 视频接口 视频接口可以工作在视频捕捉接口;视频显示接口;TSI(transport stream interface)捕捉接口三种模式。 视频接口包括两个通道A和B,可以将其缓存共5120字节分成两部分给两个原创 2009-08-15 08:02:00 · 3881 阅读 · 0 评论 -
DM642 图像存储 问答
请帮忙指点小弟一下,有如下某段程序:1 EVMDM642_vDisParamsChan.segId = EXTERNALHEAP; gio类驱动中fvid模块中指定将用来分配视频帧缓冲区的存储段ID设置为EXTERNALHEAP由dsp/bios中mem模块分配可知EXTERNALHEAP是外部存储器中的堆,地址为0x80000000,但是具体的y,cr,cb缓冲器地址怎么确定?转载 2009-08-16 20:44:00 · 3206 阅读 · 1 评论 -
DM642 图像存储格式
(一):我们实验室的板卡用到的解码芯片是TVP5150,大家都知道这款芯片本身不支持缩放,通过配置其寄存器,得到一个8-BIT的BT.656格式的数字视频流—其Y:Cb:Cr为4:2:2.(这个视频流的分辨率应该是D1格式的吧?大家给说说)。(二):这个内嵌同步信号的8-BIT的数字视频流进入DM642的Video-Port,在Video-Port中自带了Filter(滤波器)原创 2009-08-16 23:00:00 · 2964 阅读 · 3 评论 -
GEL文件与CMD文件
GEL 文件的功能同emuinit.cmd 的功能基本相同,用于初始化DSP。但它的功能比emuinit的功能有所增强,GEL 在CCS 下有一个菜单,可以根据DSP 的对象不同,设置不同的初始化程序。以TMS320LF2407 为例:#define SCSR1 0x7018 ;定义scsr1 寄存器#define SCSR2 0X7019 ;定义scsr2 寄存器 #defineWDKEY 0转载 2009-08-20 13:34:00 · 3130 阅读 · 0 评论 -
C6000 EDMA简要笔记
写在前面的话:EDMA是C621x/C671x/C64x特有的增强的直接存储器访问方式。它可以在没有CPU参与的情况下,由EDMA控制器完成DSP存储空间的数据搬移。C64x的EDMA具有64个相互独立的传输通道,允许进行64个不同任务的DMA传输。C64x的EDMA允许从/到任何的存储器地址空间对数据的搬移操作,包括内部存储器(L2 SRAM),外设和扩展存储器。C64x的EDMA控原创 2009-08-17 15:37:00 · 3569 阅读 · 3 评论 -
SAA7121视频图像D/A转换芯片
<br /> Philips公司的SAA7121视频D/A转换芯片,是一款比较简单的视频转换芯片,完成视频编码的功能,将数字视频信息转换成场频为50Hz的全电视模拟信号。工作在3.3v,支持PAL和NTSC视频制式,其像素频率为13.5MHz,MP0~MP7的视频数据引脚输入数据为ITU-RBT.656格式的数字视频信号,经过SAA7121芯片内的数据管理模块分离出Y、Cb、Cr信号,然后再送到片内相应的数模转换模块将数字视频信号转换为复合视频信号,最后由CVBS或者Y、C输出。<br /> 片转载 2010-08-12 15:04:00 · 4531 阅读 · 1 评论