




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于DSP的自动对焦系统摘要:介绍了一种基于DSP芯片TMS320F206进行数值计算和实施控制的自动对焦系统。给出了系统的硬件构成和软件设计。该系统不仅充分发挥了DSP芯片的数值计算优势,而且拓展了其在人机对话和电机控制等输入输出方面的应用。 关键词:自动对焦DSP爬山搜索算法现代社会是一个高度信息化的社会,多媒体技术的发展使图像信息的获取及其传输手段倍受瞩目。自动对焦技术是计算机视觉和各类成像系统的关键技术之一,在照相机、摄像机、显微镜、内窥镜等成像系统中有着广泛的用途。传统的自动对焦技术较多采用测距法,即通过测出物距,由镜头方程求出系统的像距或焦距,来调整系统使之处于准确对焦的状态。随着现代计算技术的发展和数字图像处理理论的日益成熟,自动对焦技术进入一个新的数字时代,越来越多的自动对焦方法基于图像处理理论对图像有关信息进行分析计算,然后根据控制策略驱动电机,调节系统使之准确对焦。本文利用数字式CMOS图像传感器作为感像器件,运用DSP芯片采集图像信息并计算系统的对焦评价函数,根据优化的爬山搜索算法控制驱动步进电机,调节系统光学镜头组的位置,使系统成像清晰,从而实现自动对焦。这是一种数字式的自动对焦方法,其准确性和实时性使其在视频展示台和显微镜等设备中的应用具有广泛的前景。1 系统的硬件构成一个典型的自动对焦系统应具备以下几个单元:成像光学镜头组、成像器件、自动对焦单元、镜头驱动单元。在本系统中,成像光学镜头组包括光学滤波器、变焦透镜组和对焦透镜组;成像器件是CMOS数字式图像传感器,输出图像信息的数字量;自动对焦单元由DSP芯片作为核心器件,图像信息的采集、计算、控制策略的选择和控制信号的产生都在这个单元中进行;镜头驱动单元包括步进电机及其驱动电路,该单元接受自动对焦单元的控制,驱动成像光学镜头组中的变焦透镜组和对焦透镜组进行位置调节,最终使图像传感器输出准确对焦的图像。系统的硬件结构如图1所示。11 数字式CMOS图像传感器图像传感器是把光信号转换成电信号的装置。本系统采用13英寸数字式CMOS图像传感器OV7620,总有效像素单元为664(水平方向)x492(垂直方向)像素;内置10位双通道AD转换器,输出8位图像数据;具有自动增益和自动白平衡控制,能进行亮度、对比度、饱和度、校正等多种调节功能;其视频时序产生电路可产生行同步、场同步、混合视频同步等多种同步信号和像素时钟等多种时序信号;5V电源供电,工作时功耗120mW,待机时功耗10W。OV7620工作时序图如图2所示。其中,PCLK是图像传感器的像素时钟,HREF是行同步信号,Y和UV是图像数据信号,VSYNC是帧同步信号,FODD是奇偶场信号。12 DSP控制系统DSP芯片也称数字信号处理器,是一种特别适合于进行数字信号处理的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。本系统采用TI公司的DSP芯片TMS320F206进行数值计算和实施控制,采用40MHz有源晶振,经过分频后获得50ns的系统时钟周期。该芯片支持硬件等待状态,当BEADY引脚电平为低时,TMS320F206等待一个CLOCK1周期并再次检查READY,在READY被驱动至高电子以前,TMS320F206将不再继续执行。TMS320F206的工作时序图如图3所示。13 系统的硬件电路系统的硬件电路如图4所示。图像数据Y0Y7通过74LS245输入到DSP的数据端口D0D7;行同步信号HREF、帧同步信号VSYNC、时钟信号CLOCK、像素时钟PCLK分别接至相应引脚配合数据采集;键盘输入用来手动控制变焦倍率;DSP通过数据端口送出步进电机运转所需的三相六拍脉冲时序,经过74S245缓冲和MC1413功率放大后,驱动步进电机工作。图3和图42 系统的软件设计系统软件包括数据采集及处理、优化搜索算法、步进电机驱动和变焦跟踪等功能模块。系统软件流程图见图5。21 数据采集和计算系统上电复位后,先对系统初始化,包括对DSP芯片TMS320F206内的RAM区进行功能划分、定义程序中的变量、驱动聚焦镜头的电机复位、设置DSP芯片TMS320F206的输入输出端口、设置TMS320F206的等待状态等。初始化工作完成后,系统进入数据采集和计算阶段,根据数字图像传感器提供的场同步、行同步和像素时钟等时序信号,可以方便地选取不同的对焦窗口采集数据。采集完成后,马上计算相邻像素的亮度差值的平方和,并保存到TMS320F206的RAM中。由于TMS320F206提供的重复执行指令极大地节约了运算时间,因此一行数据的差值运算根据采集窗口的不同可在一至两行的时间内完成。一帧图像的数据采集都完成后,将每一行像素的亮度差值平方和累加,就得到这一桢图像的调焦评价函数。将调焦评价函数的最大值及此时的步进电机行程记录下来。一帧图像的数据采集和计算处理结束后,步进电机以一个较大的步长定向前进,重复数据采集和计算的过程,直到步进电机走完规定的行程。22 优化的搜索算法本系统采用了一种优化的爬山搜索算法。控制策略为:先根据整个行程的调焦评价函数值,获得调焦评价函数与步进电机行程的关系曲线,从曲线上可以判断选择最大的步进电机步长。在判断选择时,既要保证不会错过调焦评价函数的最大值区域,同时又要满足以最少的步数走完全程。在获得全程最大调焦评价函数区域后,将步进电机步长减小,在最大值区域内进一步搜索更精确的对焦位置。采用这一策略,既不会发生误判或找不到对焦点的情况,又能以较快的速度进行对焦。软件设计为:电机驱动镜头从起始位置出发,先以等步长走一遍全程,记录下调焦评价函数最大值时的镜头位置,然后镜头回到调焦评价函数最大值位置的前一站,换用小步长,从调焦评价函数最大值位置的前一站走到最大值位置的后一站,记录下这一全程的调焦评价函数最大值时的镜头位置,如此反复搜索,最后镜头停止在调焦评价函数最大值处,使系统实现正确对焦。采用这一方法,既可以避免电机盲目反转,又能确保系统找到正确的对焦点,而且搜索历程短,有利于快速对焦。3 自动对焦实验结果在优化的爬山搜索算法中,选取最大步长要以调焦评价函数的变化趋势为依据。在本系统中选择最大步长为30H,这样总能测到一个最大值或两个次大值中的一个数据,在第二次搜索时就一定能找到调焦评价函数的最大值。 基于DSP的网络通信程序设计摘要:通过分析网卡基本通信过程控制和数字信号处理器(DSP)对网卡直接编程方法,成功设计基于DSP的网络通信程序,从而最终实现DSP系统数字化和网络化的融合。关键词:DSP 网络通信程序 通信协议 网卡DSP芯片是专门为实现各种数字信号处理算法而设计的、具有特殊结构的微处理器,其卓越的性能、不断上升的性价比、日渐完善的开发方式使它的应用越来越广泛。将计算机网络技术引入以DSP为核心的嵌入式系统,使其成为数字化、网络化相结合,集通信、计算机和视听功能于一体的电子产品,必须大大提升DSP系统的应用价值和市场前景。将DSP技术与网络技术相结合,必须解决两个关键问题:一是实现DSP与网卡的硬件接口技术,二是基于DSP的网络通信程序设计。DSP与网卡的硬件接口技术参考文献1有比较详尽的论述,以下主要讨论基于DSP的网络通信程序设计。1 通信协议的制定协议是用来管理通信的法规,是网络系统功能实现的基础。由于DSP可以实现对网卡的直接操作,对应于OSI网络模型,网卡包含了物理层和数据链路层的全部内容,因此,规定了数据链路层上数据帧封装格式,就可以为基于DSP的局域网络中任意站点之间的通信提供具体规范。因为以太网是当今最受欢迎的局域网之一,在以太网中,网卡用于实现802.3规程,其典型代表是Novell公司的NE2000和3COM公司的3C503等网卡,所以研究工作中的具体试验平台是以DSP为核心构成的以太局域网,主要用于语音的实时通信,所使用的网卡为Novell公司的NE2000网卡。NE2000网卡的基本组成请见参考文献2,其核心器件是网络接口控制器(NIC)DP8390。该器件有三部分功能:第一是IEEE802.3MAC(媒体访问控制)子层协议逻辑,实现数据帧的封装和解封,CSMA/CA(带碰撞检测功能的载波侦听多址接入)协议以及CRC校验等功能;第二是寄存器堆,用户对NE2000网卡通信过程的控制主要通过对这些寄存器堆中各种命令寄存器编程实现;第三是对网卡上缓冲RAM的读写控制逻辑。DP8390发送和接收采用标准的IEEE802.3帧格式。IEEE802.3参考了以太网的协议和技术规范,但对数据包的基本结构进行了修改,主要是类型字段变成了长度字段。所以,以DSP为核心的局域网内通信数据包基本格式如图1所示。DSP读出数据包和打包从目的地址开始。目的地址用来指明一个数据帧在网络中被传送的目的节点地址。NE2000支持3种目的地址:单地址、组地址及广播地址。单地址表示只有1个节点可以接收该帧信息;组地址表示最多可以有64个字节接收同一帧信息;而广播地址则表示它可以被同一网络中的所有节接收。源地址是发送帧节点的物理地址,它只能是单地址。目的地址和源地址指网卡的硬件地址,又称物理地址。在源地址之后的2个字节表示该帧的数据长度,只表示数据部分的长度,由用户自己填入。数据字段由461500字节组成。大于1500字节的数据应分为多个帧来发送;小于46字节时,必须填充至46字节。原因有两个:一是保证从目的地址字段到帧校验字段长度为64字节的最短帧长,以便区分信道中的有效帧和无用信息;二是为了防止一个站发送短帧时,在第一个比特尚未到达总线的最远端时就完成帧发送,因而在可能发生碰撞时检测不到冲突信号。NE2000对接收到的从目的地址字段后小于64字节的帧均认为是“碎片”,并予以删除。在数据字段,根据系统的具体功能要求,用户可以预留出若干个字节以规定相应的协议,以便通信双方依据这些字节中包含的信息实现不同的功能。2 基于DSP的网络通信程序设计如果基于网络操作系统,用户可以利用一些软件对网络操作系统的支持,很容易地编写出优秀的网络通信程序,但这些程序必须依附于网络操作系统。而在DSP环境下,必须深入了解网络接口控制器(NIC)的工作原理2,通过对网络直接编程,实现局域网内任意站点之间的通信而完全抛开网络操作系统。DSP对网卡的通信过程控制就是DSP对DP8390中各种寄存器进行编程控制,完成数据分组的正确发送和接收。DP8390的所有内部寄存器都是8位,映像到4个页面。每个页面有16个可供读写的寄存器地址(RA=00H0fH)。页面的选择由命令寄存器CA控制。第0页寄存器用于收发过程,第1页寄存器主要用于DP8390的初始化,第2页寄存器则用于环路诊断。DSP对寄存器的操作是将寄存器作为DSP的端口设备,其实际物理端口地址(PPA)为网卡基本I/O端口地址(BIOA)与寄存器地址(RA)之和(即PPA=BIOA+RA)。应注意的是,PPA与寄存器间并不存在一一对应关系,对PPA的读操作与写操作并不一定是对同一寄存器进行的,这种情况在第0页尤其明显。用户数据分组在DSP和网卡交互是通过网卡的数据端口实现的,既可以用DMA方式也可以用PIO方式读入数据分组或将数据分组送至网卡RAM缓冲区。在本系统中,DSP采用DMA方式对网卡进行数据读写。网卡的数据端口地址(NDPA)为网卡基本I/O地址(BIOA)加偏移地址10H(即NDPA=BIOA+10H)。网卡通信过程控制可分为网卡初始化、接收控制和发送控制。下面分别予以讨论。2.1 网卡初始化网卡初始化的主要任务是设置所需的寄存器状态,确定发送和接收条件,并对网卡缓冲区RAM进行划分,建立接收和发送缓冲环。具体过程请参阅参考文献2。需要说明的是,每一块网卡被赋予一个物理地址,以便通信站点的标识。这个物理地址存在网卡的PROM(存储地址为00000005H)六个单元中,在网卡初始化时,通过远程DMA读入DSP内存中,并送入网卡物理地址寄存器。在一步的意义在于:一方面,如果能正确读出网卡的物理地址,则说明网卡硬件基本没有问题,网卡的上电复位和DSP对网卡的初始化顺利通过;另一方面,这个物理地址可以用于DSP网络系统中的点名、包的过滤丢弃等服务,也就是说,在链路层根据数据帧携带的源地址和目的地址确定数据报从哪里来,是否接收或丢弃。网卡初始化时另一个重要的工作就是接收缓冲环的设置,为了有效利用缓冲区,NIC将接收缓冲区RAM构成环形缓冲结构,如图2所示。接收缓冲区RAM分成多个256字节的缓冲区,N个(N最大为256)这样的缓冲区通过指针控制链接成一条逻辑上的缓冲环。缓冲环的开始页面地址存入PSTART寄存器,环页面结束地址存入PSTOP寄存器。PSTART和PSTOP确定了接收缓冲环的大小和边界。为便于缓冲环读写操作,还需要2个指针:当前页面指针CURR和边界指针BNRY。CURR确定下一包放在何处,起着缓冲环写页面指针作用;BNRY指向未经DSP取走处理最早到达的数据包起始页面,新接收的数据包不可将其覆盖,起着缓冲环读页面指针的作用。也就是说,CURR可以告诉用户网卡接收的数据分组当前放到了什么位置,而BNRY则用于确定DSP读缓冲环到了什么地方。由于接收缓冲区为环形结构,BNRY和CURR相等时,环缓冲区可能满也可能空。为了使NIC能辨别这两种状态,规定当BNRY等于CURR时,才认为环缓冲区满;当缓冲区空时,CURR比BNRY指针值大1。因此,初始化时设置:BNRY=PSTART,CURR=PSTART+1。这时读写指针不一致,为了保证正确的读写操作,引入一软件指针NEXTPK指示下一包起始页面。显然,初始化时NEXTPK=CURR。这时,缓冲环的读指针对NEXTPK,而BNRY只是存储分组缓冲区的起始页面边界指示,其值为NEXTPK-1。2.2 接收控制过程DSP完成对DP8390的初始化后,网卡就处于接收状态,一旦收到分组,就自动执行本地DMA,将NIC中FIFO数据送入接收缓冲环,然后向主机申请“数据分组接收到”中断请求。DSP如果响应中断,则启动网卡远程DMA读,将网卡缓冲区中的数据分组读入学生机存储区,然后对接收缓冲环CURR、NEXTPK、BNRY指针内容进行修改,以便网卡能从网上正确接收后续分组。DSP响应网卡接收中断后,接收控制过程如下:设置远程DMA的起始地址;RSAR0=00H,RSAR1=Nextpk。设置远程DMA操作的字节数,这个长度在461500字节范围内根据具体要求自己确定。0AH送命令寄存器CR,启动远程DMA读。从网卡数据端口依序读入数据分组,注意,最先读入的4字节非数据分组内容,第1字节为接收状态,第2字节为下一包页地址指针,3与4字节为接收字节数。第2字节内容应该送入Nextpk,其它字节根据用户要求处理。修改边界指针BNRY=Nextpk-1。清除远程DMA字节数寄存器RBCR0和RBCR1。2.3 发送控制过程DSP先执行远程DMA写操作,将内存中的数据分组传至网卡发送缓冲区,然后启动发送命令进行数据分组发送。发送控制过程如下:设置远程DMA的起始地址为网卡发送缓冲区起始地址;设置远程DMA操作的字节数;12H送命令寄存器CR,启动远程DMA写;依序送出数据分组至网卡发送缓冲区;清除远程DMA字节数寄存器;设置发送字节数寄存器TBCR0和TBCR1;12H送命令寄存器CR,启动数据分组发送。3 发送方发送频率的控制发送方发送频率的正确控制主要保护两点:一是有一个最小发送时间间隔,否则会因为接收方不能及时接收而导致系统瘫痪;二是发送频率能够足具体的功能实现要求。譬如在语音的实时通信中,发送频率就取决于声卡的采样频率。在8kHz采样频率时,声卡每秒钟采样8000字节,采用1024字节需用时128ms,如果通信协议规定发送1次传送1024字节有效数据,则必须每128ms发送一次才能保证缓冲区有新数据待发送,也才能保证接收方有新数据播放。128ms是一个理论计算数值,在实际的操作中采样速度和发送频率之间总是不能完全匹配,而存放数据的缓冲区大小是有限的,如果没有良好的控制技巧来实现正确发送,就会造成声音抖动和延时。解决的办法是双缓冲技术和双指针控制,并且根据采样速度和发送频率之间的匹配情况送入不同的发送通信进行处理后发送。正确发送的含义有两方面,一是每次发送的都是新数据,二是能满足接收方总在播放新数据的需求。4 接收方防止数据包的丢失由于DSP通过中断请求判断是否有数据分组到来,如果中断繁忙而两个数据包到来时间相差非常短,DSP有可能只响应一次中断,从而导致丢包的发生。分析网卡接收数据过程,当网卡收到数据分组时,首先执行本地DMA,将NIC中FIFO数据送入接收缓冲环,并将本地DMA操作的起始地址存放在当前页寄存器(CURR)和当前本地DMA寄存器(CLDA0、CLDA1)中,DSP从网卡接收缓冲环读出数据到存储器则称远程DMA操作,用软件指针Nextpk来指示远程DMA的起始页面。因此通过比较网卡本地DMA和远程DMA的当前地址,即在中断服务子程序中比较CURR和Nextpk指针,或比较CLDA0、CLDA1和Nextpk指针,就可以保证当前数据分组放到了哪里就读出到哪里,从而防止丢包的发生。5 结论DSP对网卡通信过程控制的实现解决了DSP网络中任意站点之间,DSP网络与PC机之间准确、高速的实时通信问题,是将网络技术应用到DSP数字化系统中的关键,从而最终实现了以DSP为核心的处理系统数字化和网络化的融合。DMA在实时图像处理中的应用摘要:以TMS320C6701为例,说明在实时图像处理系统中使用DMA的必要性,同时给出DMA在实时图像处理中几种典型的应用例子。 关键词:DMA 实时图像处理 DSP引言实时图像处理系统要求系统必须在有限的时间内完成大量数据的运算。DSP以其独特的哈佛总线结构和并行的存储块结构,将乘法操作与加法操作统一考虑,可以在一个指令周期完成般处理器的多次运算;并且指令系统采用多级流水线操作方式,保证了系统对实时性的要求,因此得以在实时图像处理系统广泛应用。图像处理系统的最大特点就是运算数据量大。大多数情况下,数据量远远大于片内存储器容量,计算过程中必须进行数据的交换。合理使用DMA可以提高数据传输效率,取得事半功倍的效果。本文以TMS320C6701(简称C6701)为例,介绍DMA在图像处理中的几种典型应用。1 图像处理系统特点与使用DMA的必要性前面已经提到,图像处理系统的最大特点是就是运算数据量大,数据量往往大于片内存储器容量。不仅如此,图像处理系统之中,运算过程产生的中间数据往往与源数据大小相当,这也限制了片内高速存储区的使用。然而为了提高处理的速度,计算源数据、中间数据必须尽可能多地在片内高速存储区进行,因此,必须使用DMA在片内高速存储区与片外低速存储区之间进行数据交换,以提高数据处理速度。另外,数据的排列往往不符合程序的要求;必须对数据进行重排达到程序要求;使用DMA对数据重排,可以满足程序要求。与数据重排如出一辙,图像处理中许多操作的基础都是对多重数组的操作,也就是矩阵运算。诸如求逆、取子图等图像处理中经常用到的运算,也可以通过DMA完成。这些运算当然可用C语言编程实现,但是,如果程序实现是一个多重循环,不利于软件流水,而且随着数据量的增加,消耗的时钟周期也会成比例增加;即使使用并行汇编在时钟消耗上可以有所减少,这都是不符合系统实时性要求的。如果通过DMA数据重排,可以轻而易举地实现,而且这个过程CPU只占有一个时钟周期,通过巧妙程序安排,安全可以使数据的传输过程在CPU的后台进行,根本感觉不到DMA的存在。2 C6x系列DMA简介TMS320C6701S是TMS320C6000系列的高速浮点数字信号处理信号,是TI公司20世纪90年代后期的最新一代DSP产品。C6701有4个通道自加载的DMA通道,用于数据的DMA传输;另外,1个辅助DMA通道,负责与主机通信。DMA通道可以在没有CPU参与下完成映射空间的数据传输。数据的传输可以是片内存存储器、片内外围部件或外部器件之间的传输。2.1 DMA控制寄存器对于C6x系列的DMA,在使用任何一个DMA通道进行数据传输前,都必须设置以下几组寄存器。各寄存器及其功能如下:*主控寄存器(primary control register)用于控制DMA状态及传输类型;*副控寄存器(secondary control register)用于使能CPU中断,监视DMA通道状态;*传输计数寄存器(transfer control register)用于记录传输的单位数目;*源地址寄存器(source control register)传输的起始地址*目标地址寄存器(destination control register)传输的目的地址;此外,DMA通道可以使用以下全局DMA寄存器,以完成比较复杂的传输过程:*全局地址寄存器组(global address register A、B、C和D);*全局索引寄存器组(global index register A和register A和B)。全局地址寄存器组共有4个32位寄存器,其作为分裂地址或地址重载值。全局索引寄存器2个32位寄存器。每个寄存器含2个控制域,其中高16位为帧索引域(FRAME INDEX),其值为帧间的地址偏移量,也就是传输完1帧后,地址的调整量;低16位为数据单元索引域(ELEMENT INDEX),其值为帧内地址偏移量,也就是每传输完1个数据单元的地址调整量。全局计数重载计数器与全局索引寄存器结构一样,用于重载DMA通道的传输计数寄存器。全局DMA寄存器可以为任意DMA通道使用,而且同一寄存器可以同时被一个以上的DMA通道使用。2.2 DMA工作过程简介DMA是十分复杂的系统,限于篇幅,这里只简要介绍DMA的工作过程。在C6000系列DMA中,把所传输的一定数量的数据单元(ELEMENT)称为帧(FRAME),帧的大小由传输计数寄存器的低16位数据即单元计数域(ELEMENT COUNT)指定,该寄存器的值通过传输计数寄存器的高16位即帧计数域(FRAME COUNT)指定。当完成1次DMA读操作,ELEMENT COUNT值自动域1;当最后1个数据单元读操作完成时,FRAME COUNT自动减1,此时ELEMENT COUNT的值将被全局计数重载寄存器的ELEMENT COUNT更新;当最后1帧的读操作完成后,传输计数寄存器将被全局计数重载寄存器的值更新。DMA控制器负责对每个通道的读写传输进行地址计算。在计算机传输地址时,有基本调整和使用全局索引寄存器进行调整2种方式:基本调整是指通过控制域SRC DIR和DST DIR来设置传输地址,按数据字长大小(由ESIZE控制)递增、递减或保持不变;而使用全局索引寄存器调整与基本调整不同,这种模式下,根据传输的数据元素是否当前帧的最后一个来进行地址调整。在全局索引寄存器调整模式下,地址调整值由全局索引寄存器控制。全局索引寄存器含2个控制域,其中高16位为帧索引域(FRAME INDEX),其值为帧间的地址偏移量,也就是传输完1帧后的地址调整量;低16位为数据单元索引域(ELEMENT INDEX),其值的帧内地址偏移量,也就是每传输完1个数据单元的地址调整量。3 几种典型的DMA操作及其应用3.1 块移动块移动能够将1块连续数据块从一个地址传输到另一个地址,通常用于将数据或程序从外部存储器移到内部存储器。这种块移动是最简单、最常见的DMA工作方式。例如,将1块1K连续的32位数据块从外存(0x02000000)移动至内存(0x80000000),如图1所示。相关寄存器的值设置:Primary control register =0x00000050Transfer control register =0x00000400Source control register =0x02000000Destination control register =0x80000000其中主控寄存器各控制域设置与意义如下:DST RELOAD =00 无目标地址重载SRC RELOAD =00 无源地址重载EMOD =0FS =0 无帧同步TCINT =1 允许中断PRI =1 DMA优先WSYNC =00000 无读同步RSYNC =000 无写同步RSYNC =00 无写同步FRAME COUNT =0X000ELEMENT COUNT =0X0400INDEX =0 全局计数重载寄存器ACNT RELOAD =0 全局计数重载寄存器ASPLIT =00 无分裂地址ESIZE =00 数据单元4BYTESDSTDIR =11 索引寄存器方式SRCDIR =01 地址递增STATUS =00此位只读START =00 DMA停止在主控寄存器的START读中写入01b就可以开始DMA的传输。3.2 数据重排往往数据的格式并不符合运算的要求。在这种情况下,可以通过DMA进行数据重新排列,以满足运算的要求。数据重排主要是利用DMA的帧传输方式。数据重排所必需的、最关键的一步是设置全局寄存器,所以,以下讨论的重点就是全局寄存器的设置。3.2.1 求矩阵转置图2显示了将一个位于外存16bit的连续数据区,开始地址(0x02000000),数据重排并移至片内存储区,首地址为(0x80000000)前后的排列情况。在数据重排中,主要是正确设置全局索引寄存器。在这里,可以将1帧看作1个数组,那么数据单元就是数组的元素。因此,如果假设共有FE的矩阵,即有F帧数据,每帧E个数据单元,每个元素为S(Byte),重排为EF的矩阵。在这种情况下,源地址递增,目标地址根据全局索引寄存器的值进行调整。在帧内相邻的数据单元传输时,目标地址偏移应为FS,所以传输完1帧后的地址总偏称为(E-1)F,因
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民用航空气象人员执照(气象信息系统)考试题库-上(单选、判断题)
- 蒙古北京八中乌兰察布分校2026届高二化学第一学期期末监测模拟试题含答案
- 河北省兴隆县2025年上半年公开招聘城市协管员试题含答案分析
- 河北省肃宁县2025年上半年事业单位公开遴选试题含答案分析
- 河北省乐亭县2025年上半年公开招聘村务工作者试题含答案分析
- 2025年度物流仓储设备采购合同模板集合2
- 2025版通信行业人才培训与咨询服务合同
- 2025年度写字楼公共区域清洁作业合同范本
- 2025店长聘用协议:超市连锁店店长招聘与聘用标准
- 2025年度国际项目外籍工作人员劳动合同书
- 2025-2030商业航天市场发展分析及前景趋势与投融资发展机会研究报告
- 电缆生产工艺全解析
- 新生儿暖箱使用操作指南
- 供应商退出管理规定
- 2025年湖南省中考历史试卷真题(含答案)
- 2025至2030中国乙二醇(EG)行业供需状况与需求潜力分析报告
- 电网技术改造及检修工程定额和费用计算规定2020 年版答疑汇编2022
- 高中英语必背3500单词表完整版
- 超声出科考试试题及答案
- 工勤考试技师考试题库及答案
- 货架安装合同协议书模板
评论
0/150
提交评论