CN108228498A - 一种dma控制装置和图像处理器 - Google Patents

一种dma控制装置和图像处理器 Download PDF

Info

Publication number
CN108228498A
CN108228498A CN201711394147.3A CN201711394147A CN108228498A CN 108228498 A CN108228498 A CN 108228498A CN 201711394147 A CN201711394147 A CN 201711394147A CN 108228498 A CN108228498 A CN 108228498A
Authority
CN
China
Prior art keywords
write
read
unit
request
dma
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201711394147.3A
Other languages
English (en)
Other versions
CN108228498B (zh
Inventor
袁扬智
韦毅
胡江鸣
刘俊秀
石岭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Shenyang Electronic Ltd By Share Ltd
Original Assignee
Shenzhen Shenyang Electronic Ltd By Share Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Shenyang Electronic Ltd By Share Ltd filed Critical Shenzhen Shenyang Electronic Ltd By Share Ltd
Priority to CN201711394147.3A priority Critical patent/CN108228498B/zh
Publication of CN108228498A publication Critical patent/CN108228498A/zh
Application granted granted Critical
Publication of CN108228498B publication Critical patent/CN108228498B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/32Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
    • G06F13/34Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer with priority control

Abstract

本发明适用于数字图像处理领域,提供了一种DMA控制装置和图像处理器。所述DMA控制装置包括总线接口单元、DMA读传输仲裁单元、N路读缓存控制单元、DMA写传输仲裁单元、N路写缓存控制单元、N个流水处理模块和一时序产生单元,其中N为大于或等于2的自然数。本发明使得在ISP等实时输入的芯片系统中,DMA控制装置能够结合图像处理模块进行准确合理的判决,针对多路不同的数据访问请求,可以实现DMA传输参数的硬件自动配置。

Description

一种DMA控制装置和图像处理器
技术领域
本发明属于数字图像处理领域,尤其涉及一种DMA控制装置和图像处理器。
背景技术
在计算机数字图像处理技术的领域中,伴随着半导体技术的高速发展,SOC(System-On-a-Chip,片上系统)芯片的规模越来越大、功能日益复杂,需要进行大批量数据的连续搬运和传输的工作。DMA(Direct Memory Access,直接存储器存取)技术广泛用于系统中大批量数据的传输,待DMA工作后,数据的搬运不需要CPU参与,减轻了CPU的负担,使得CPU在启动DMA后可以做其它事,同时极大地提高了数据的传输效率。
现有的DMA技术中,通常根据配置好的一些传输参数,例如源地址、目的地址和传输长度等后,通过CPU配置启动DMA进行数据的传输。在ISP(Image Signal Processing,图像信号处理)等实时图像数据输入的系统中,图像数据都是从外部传感器按照一定的行频和场频连续输入进来,为了图像视频的实时性需要按行对输入数据进行处理。在高性能的ISP处理芯片中,需要进行3D降噪、图像去雾处理、坏点校正以及锐化等强大的功能处理,当这些模块开启后,需要从外部存储器中访问大量的帧缓存数据。一行时间内,可能会有很多路数据访问的请求,而且每一路请求长度可能不一样。此外,这些不同功能模块的数据,都要求在相应功能模块的下一个行同步信号到来之前读取到相应的位置。
针对ISP处理中实时性连续输入的图像数据,现有DMA控制装置不能充分地结合图像处理模块自动地进行DMA传输参数的硬件配置,不能结合图像功能模块进行多路请求的准确合理判决。
发明内容
本发明的目的在于提供一种DMA控制装置和图像处理器,旨在解决现有DMA控制装置针对ISP处理中实时性连续输入的图像数据,不能充分地结合图像处理模块自动地进行DMA传输参数的硬件配置,不能结合图像功能模块进行多路请求的准确合理判决的问题。
第一方面,本发明提供了一种DMA控制装置,包括总线接口单元、DMA读传输仲裁单元、N路读缓存控制单元、DMA写传输仲裁单元、N路写缓存控制单元、N个流水处理模块和一时序产生单元,其中N为大于或等于2的自然数;
总线接口单元,用于接收DMA读传输仲裁单元产生的读请求信号和传输信息,并将读请求信号和传输信息转化成复合系统总线协议的总线请求信号,当从总线上收到有效的数据后,将从外部存储器中读出的读缓存数据写到DMA读传输仲裁单元;还用于接收DMA写传输仲裁单元产生的写请求信号和传输信息,并将写请求信号和传输信息转化成复合系统总线协议的总线请求信号,当从总线上收到有效的应答后,将从DMA写传输仲裁单元读出的写缓存数据写到外部存储器;
DMA读传输仲裁单元,用于负责DMA读请求信号的仲裁并接收经总线接口单元发送的外部存储器的读缓存数据,最终将读缓存数据写到选中的其中一路读缓存控制单元中;还用于对输入的N路源请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的读传输长度;
读缓存控制单元,用于接收时序产生单元输出的时序输入信号,并产生仲裁请求信号,结合仲裁回应信号产生传输状态信号,并根据时序输入信号将DMA读传输仲裁单元的数据写到对应路的乒乓缓存区间中,并取出乒乓缓存区间中的数据发送到对应的流水处理模块;
DMA写传输仲裁单元,用于负责DMA写请求信号的仲裁并接收其中一路选中的写缓存控制单元的数据,最终将接收到的数据经总线接口单元发送到外部存储器中;还用于对输入的N路写请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的写传输长度;
写缓存控制单元,用于接收时序产生单元输出的时序输入信号,并产生仲裁请求信号,结合仲裁回应信号产生传输状态信号,并根据时序输入信号将对应的流水处理模块需要缓存的数据写到对应路的乒乓缓存区间中,并将选中一路乒乓缓存区间中的数据读出发送到DMA写仲裁传输单元;
流水处理模块,用于为图像处理器中的具体算法进行处理的模块;
时序产生单元,用于接收同步时序输入信号,产生每一级流水处理模块的同步信号。
进一步地,所述读缓存控制单元包括读仲裁请求信号产生模块、读数据传输速率自动判断模块和读乒乓缓存控制模块;
其中,读仲裁请求信号产生模块,用于当流水处理模块使能后,根据输入的行场同步信号,产生到DMA读传输仲裁单元的仲裁请求信号,在第一个行有效的信号来临之前,需要预取出存储在帧缓存中的数据,所以在场同步的下降沿之后,需要提前发出仲裁请求信号到DMA读传输仲裁单元,将数据预取到乒乓缓存区间中,待第一行有效信号来临便可直接取用;
读数据传输速率自动判断模块,用于自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整;
读乒乓缓存控制模块,用于根据时序信号产生一行切换一次的乒乓控制机制,将DMA读传输仲裁单元读到的数据写到读乒乓缓存区间,同时根据时序信息从乒乓缓存区间中读出预存的数据发送到相应的流水处理模块;
所述写缓存控制单元包括写仲裁请求信号产生模块、写数据传输速率自动判断模块和写乒乓缓存控制模块;
其中,写仲裁请求信号产生模块,用于当流水处理模块使能后,根据输入的行场同步信号,产生到DMA写传输仲裁单元的仲裁请求信号,在第二个行有效的信号来临之时,需要将第一行的写缓存数据发送到帧缓存中,所以在一行有效信号的下降沿之后,需要发出写请求信号到DMA写传输仲裁单元,将乒乓缓存区间中的缓存数据取出并发送到帧缓存中,待再下一行有效信号来临便可进行乒乓缓存和后续传输;
写数据传输速率自动判断模块,用于自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整,以提高数据的传输效率;
写乒乓缓存控制模块,用于根据时序信号产生一行切换一次的乒乓控制机制,将相应的流水处理模块需要存储的数据写到写乒乓缓存区间,同时根据仲裁信号将选中的一路乒乓缓存数据取出发送到DMA写传输仲裁单元。
第二方面,本发明提供了一种图像处理器,所述图像处理器包括上述的DMA控制装置。
在本发明中,由于DMA控制装置包括DMA读传输仲裁单元、N路读缓存控制单元、DMA写传输仲裁单元和N路写缓存控制单元,DMA读传输仲裁单元,用于负责DMA读请求信号的仲裁并接收经总线接口单元发送的外部存储器的读缓存数据,最终将读缓存数据写到选中的其中一路读缓存控制单元中;还用于对输入的N路源请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的读传输长度。DMA写传输仲裁单元,用于负责DMA写请求信号的仲裁并读取选中的其中一路写缓存控制单元输出的数据,最终经总线接口单元将数据发送到外部存储器中;还用于对输入的N路写请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的写传输长度。使得在ISP等实时输入的芯片系统中,DMA控制装置能够结合图像处理模块进行准确合理的判决,针对多路不同的数据访问请求,可以实现DMA传输参数的硬件自动配置。另外,由于读缓存控制单元包括读仲裁请求信号产生模块和读数据传输速率自动判断模块,读数据传输速率自动判断模块自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整。由于写缓存控制单元包括写仲裁请求信号产生模块和写数据传输速率自动判断模块,写数据传输速率自动判断模块自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整。因此使得图像不会由于带宽不够而出现错乱或扭曲,提高了数据的传输效率,同时通过带宽的判断能自动地控制芯片的功耗,同时又能达到ISP等实时输入系统的数据访问需求。
附图说明
图1是本发明实施例一提供的DMA控制装置的结构图。
图2是本发明实施例一提供的DMA控制装置中,DMA读传输仲裁单元的结构图。
图3是本发明实施例一提供的DMA控制装置中,DMA读传输仲裁单元的仲裁具体实现流程图。
图4是本发明实施例一提供的DMA控制装置中,读缓存控制单元的结构图。
图5是本发明实施例二提供的DMA控制装置的结构图。
图6是本发明实施例二提供的DMA控制装置中,DMA写传输仲裁单元的结构图。
图7是本发明实施例二提供的DMA控制装置中,DMA写传输仲裁单元的仲裁具体实现流程图。
图8是本发明实施例二提供的DMA控制装置中,写缓存控制单元的结构图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
请参阅图1,本发明实施例一提供的DMA控制装置包括总线接口单元11、DMA读传输仲裁单元12、N路读缓存控制单元13、N个流水处理模块14和一时序产生单元15,其中N为大于或等于2的自然数,N的数目取决于图像处理器中流水处理模块的个数以及需要访问外部帧缓存的模块个数。
总线接口单元11,用于接收DMA读传输仲裁单元12产生的读请求信号和传输信息,并将读请求信号和传输信息转化成复合系统总线协议(例如AXI总线等)的总线请求信号,当从总线上收到有效的数据后,将从外部存储器中读出的读缓存数据写到DMA读传输仲裁单元12;
DMA读传输仲裁单元12,用于负责DMA读请求信号的仲裁并接收经总线接口单元11发送的外部存储器的读缓存数据,最终将读缓存数据写到选中的其中一路读缓存控制单元13中;还用于对输入的N路源请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的读传输长度;
N路读缓存控制单元13,用于接收时序产生单元输出的时序输入信号,并产生仲裁请求信号,结合仲裁回应信号产生传输状态信号,并根据时序输入信号将DMA读传输仲裁单元的数据写到对应路的乒乓缓存区间中,并取出乒乓缓存区间中的数据发送到对应的流水处理模块;
N个流水处理模块14,用于为图像处理器中的具体算法进行处理的模块,例如3D降噪、去雾、锐化等;
时序产生单元15,用于接收同步时序输入信号,主要包括行同步信号和场同步信号,产生每一级流水处理模块的同步信号,其中每一级时序信号之间可能有点延迟或行延迟,根据算法处理过程而定。
在本发明实施例一中,DMA读传输仲裁单元的具体结构如图2所示,DMA读传输仲裁单元包括读仲裁控制单元121、源请求空间统一编址单元122、读请求发送单元123和读传输数据写缓存译码单元124。
其中,读仲裁控制单元121,用于接收N路读缓存控制单元的读请求信号并对N路的读请求信号进行仲裁;
为了方便总线接口单元进行快速高效的数据传输,使得总线接口单元只要知道一次读传输的读源起始地址、读目的起始地址以及读传输的长度,就能通过总线自动完成数据的访问。源请求空间统一编址单元122,用于对输入的N路源请求空间进行统一编址,使得每一路映射到统一的目的地址空间中(例如第1路映射到目的地址空间的首段,第N路映射到最末段),还用于根据读仲裁控制单元的状态控制硬件自动产生每一路的读传输长度,而不需要通过软件对每一路的读传输长度进行分别设置,例如,当输入的分辨率确定后,每一行的有效点数即已经确定,针对有些处理模块一个点要求缓存的数据为2个字节,而有一些模块要求缓存的数据为1个字节,还有一些模块是2个点或4个点缓存的数据只有一个字节,依照这种规律,在源请求空间统一编址单元,在为每一个源请求空间进行统一编码的同时,也根据分辨率信息和相应的模块请求直接计算出每一路的读传输长度,具体方法为对输入一行点数左移或右移k比特,其中k可为0、1、2或3。这样,结合不同流水处理模块,硬件就可以自动地产生其相应的读传输长度信息。减少了CPU分别对每一路请求不同传输长度的配置,提高了DMA读传输仲裁单元的效率。
读请求发送单元123,用于根据读仲裁控制单元仲裁的结果以及源请求空间统一编址单元的地址信息,发出读请求信息,读请求信息包括:读请求信号、读源起始地址、读目的起始地址、以及读传输长度等;
读传输数据写缓存译码单元124,用于将总线接口单元发送过来的读传输数据写到译码后选中的1路到N路中的一路乒乓缓存区间中。
在本发明实施例一中,读仲裁控制单元的工作流程如图3所示:
系统上电复位或DMA读传输不使能时,读仲裁控制单元处于DMA读空闲状态;
判断是否读传输使能,如果是,则读仲裁控制单元处于DMA读判断状态;否则读仲裁控制单元处于DMA读空闲状态;
在DMA读判断状态,对输入的N路读请求信号进行仲裁;在对输入的N路读请求信号进行仲裁时,按照预设的优先级进行判断,根据图像处理和显示的重要性对各路读请求信号按照可配置的优先级进行设定,将图像处理中较关键的算法处理模块对应的读请求信号设为较高优先级,依次类推,优先级逐渐降低;将优先级进行编号后,设第1路读请求信号的优先级最高,第2路读请求信号的优先级次之,依此类推,第N路读请求信号的优先级最低。为了对帧缓存的数据进行定位,需要知道每一帧的起始读请求信号,当读请求信号为帧起始读请求信号时,将发送帧缓存首地址到总线接口单元,以便能正确地取到缓存数据;
进入DMA读判断状态后,按照如下步骤进行判断:
S101、判断第1路帧起始读请求信号是否开始,若开始,则跳到第1路每一帧起始行读状态,否则,进入步骤S102;进入第1路每一帧起始行读状态后,第1路读请求被选中,读仲裁控制单元将第1路帧起始读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元将第1路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S102、判断第1路帧连续读请求信号是否开始,若开始,则跳到第1路每一帧连续行读状态,否则,进入步骤S103;进入第1路帧连续行读状态后,第1路读请求被选中,读仲裁控制单元将第1路帧连续读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第1路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S103、判断第2路帧起始读请求信号是否开始,若开始,则跳到第2路每一帧起始行读状态,否则,进入步骤S104;进入第2路每一帧起始行读状态后,第2路读请求被选中,读仲裁控制单元将第2路帧起始读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元将第2路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S104、判断第2路帧连续读请求信号是否开始,若开始,则跳到第2路帧连续行读状态,否则,进入步骤S105;进入第2路帧连续行读状态后,第2路读请求被选中,读仲裁控制单元将第2路帧连续读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第2路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S105、判断第N路帧起始读请求信号是否开始,若开始,则跳到第N路每一帧起始行读状态,否则,进入步骤S106;进入第N路每一帧起始行读状态后,第N路读请求被选中,读仲裁控制单元将第N路帧起始读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元将第N路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S106、判断第N路帧连续读请求信号是否开始,若开始,则跳到第N路帧连续行读状态,否则,停留DMA读判断状态,重复上述步骤进行下一次判断过程;进入第N路帧连续行读状态后,第N路读请求被选中,读仲裁控制单元将第N路帧连续读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第N路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成。
在本发明实施例一中,DMA读传输仲裁单元能接收最多N路的读请求申请,按照如图3所示的方式进行仲裁,关键模块对应的优先级相应可设为更高,能够合理地利用一行缓存的时间,优先将更关键模块的数据取到,实现流水处理的顺畅进行。
请参阅图4,在本发明实施例一中,读缓存控制单元包括读仲裁请求信号产生模块131、读数据传输速率自动判断模块132和读乒乓缓存控制模块133。
其中,读仲裁请求信号产生模块131,用于当流水处理模块使能后(即表明需要启动DMA读取相应的读传输数据),根据输入的行场同步信号,产生到DMA读传输仲裁单元的仲裁请求信号,为了达到图像实时处理的功能,在第一个行有效的信号来临之前,需要预取出存储在帧缓存中的数据,所以在场同步的下降沿之后,需要提前发出仲裁请求信号到DMA读传输仲裁单元,将数据预取到乒乓缓存区间中,待第一行有效信号来临便可直接取用。
读数据传输速率自动判断模块132,用于自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整,以提高数据的传输效率。ISP等图像处理中,随着流水处理模块级数的增多,部分或全部的流水处理功能都使能后,可能会导致总线带宽或存储带宽不够,这一过程中,如果不加以调整就会导致图像出现错乱或扭曲等现象,严重影响系统性能和视觉效果。针对这种情况,本发明实施例一提供了数据传输速率的自动判断机制,其实现主要基于输入的行场同步时序信息以及DMA读传输仲裁单元的回应信号进行。针对ISP等按行处理的系统,在乒乓缓存的机制下,为了达到处理的实时性,必须在下一行同步信号到来之前,预先将下一行需要的帧缓存数据取到乒乓缓存其中的一条行缓存中,否则表明DMA数据传输过慢,达不到系统需求。这里,具体地,一行时间内,从发送仲裁请求信号开始,到下一行重新发送的仲裁请求开始前,必须收到指示上一次传输完成的仲裁回应信号,如果没有收到回应信号,则输出传输状态信号指示传输速率过慢,收到则表明传输正常。系统通过判断传输状态信号,可以自动地进行带宽的调整,当当前带宽不够时,下一帧的图像进行冻结,可将总线时钟或主存储器时钟提高,将带宽提高,带宽指示满足需求后,即可释放图像,正常地进行显示,由于带宽是按行计算,所以在下一帧来临之前,即可将带宽提高,达到数据传输速率的要求,而这完全不会影响图像的整体显示效果。通过数据传输速率的自动判断,在ISP等处理过程中,流水处理模块的开关使能导致数据传输的不同需求,都能通过该机制自动判断,从而可知系统总线带宽的使用情况,达到自动调整带宽,使得图像不会由于带宽不够而出现错乱或扭曲,提高了数据的传输效率,同时通过带宽的判断能自动地控制芯片的功耗(例如,只要带宽够用,就不需要把总线时钟或主存储器时钟调得过高,以免功耗较大),同时又能达到ISP等实时输入系统的数据访问需求。
读乒乓缓存控制模块133,用于根据时序信号产生一行切换一次的乒乓控制机制,将DMA读传输仲裁单元读到的数据写到读乒乓缓存区间,同时根据时序信息从乒乓缓存区间中读出预存的数据发送到相应的流水处理模块。
实施例二:
请参阅图5,本发明实施例二提供的DMA控制装置与本发明实施例一提供的DMA控制装置的区别在于,本发明实施例二提供的DMA控制装置还包括DMA写传输仲裁单元22和N路写缓存控制单元23。
总线接口单元,还用于接收DMA写传输仲裁单元22产生的写请求信号和传输信息,并将写请求信号和传输信息转化成复合系统总线协议(例如AXI总线等)的总线请求信号,当从总线上收到有效的应答后,将从DMA写传输仲裁单元22读出的写缓存数据写到外部存储器;
DMA写传输仲裁单元22,用于负责DMA写请求信号的仲裁并接收其中一路选中的写缓存控制单元23的数据,最终将接收到的数据经总线接口单元发送到外部存储器中;还用于对输入的N路写请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的写传输长度;
N路写缓存控制单元23,用于接收时序产生单元输出的时序输入信号,并产生仲裁请求信号,结合仲裁回应信号产生传输状态信号,并根据时序输入信号将对应的流水处理模块需要缓存的数据写到对应路的乒乓缓存区间中,并将选中一路乒乓缓存区间中的数据读出发送到DMA写仲裁传输单元。
在本发明实施例二中,DMA写传输仲裁单元的具体结构如图6所示,DMA写传输仲裁单元包括写仲裁控制单元221、写请求空间统一编址单元222、写请求发送单元223和写传输数据读缓存译码单元224。
其中,写仲裁控制单元221,用于接收N路写缓存控制单元的写请求信号并对N路的写请求信号进行仲裁;
为了方便总线接口单元进行快速高效的数据传输,使得总线接口单元只要知道一次写传输的写源起始地址、写目的起始地址以及写传输的长度,就能通过总线自动完成数据的访问。写请求空间统一编址单元222,用于对输入的N路写请求空间进行统一编址,使得每一路映射到统一的目的地址空间中(例如第1路映射到目的地址空间的首段,第N路映射到最末段),还用于根据写仲裁控制单元的状态控制硬件自动产生每一路的写传输长度,而不需要通过软件对每一路的写传输长度进行分别设置,例如,当输入的分辨率确定后,每一行的有效点数即已经确定,针对有些处理模块一个点要求缓存的数据为2个字节,而有一些模块要求缓存的数据为1个字节,还有一些模块是2个点或4个点缓存的数据只有一个字节,依照这种规律,在写请求空间统一编址单元,在为每一个写请求空间进行统一编码的同时,也根据分辨率信息和相应的模块请求直接计算出每一路的写传输长度,具体方法为对输入一行点数左移或右移k比特,其中k可为0、1、2或3。这样,结合不同流水处理模块,硬件就可以自动地产生其相应的写传输长度信息。减少了CPU分别对每一路请求不同传输长度的配置,提高了DMA写传输仲裁单元的效率。
写请求发送单元223,用于根据写仲裁控制单元仲裁的结果以及写请求空间统一编址单元的地址信息,发出写请求信息,写请求信息包括:写请求信号、写源起始地址、写目的起始地址、以及写传输长度等;
写传输数据读缓存译码单元224,用于读取选中的1路到N路中的一路乒乓缓存区间中的数据并发送到总线接口单元中。
在本发明实施例二中,写仲裁控制单元的工作流程如图7所示:
系统上电复位或DMA写传输不使能时,写仲裁控制单元处于DMA写空闲状态;
判断是否写传输使能,如果是,则仲裁控制单元处于DMA写判断状态;否则仲裁控制单元处于DMA写空闲状态;
在DMA写判断状态,对输入的N路写请求信号进行仲裁;在对输入的N路写请求信号进行仲裁时,按照预设的优先级进行判断,根据图像处理和显示的重要性对各路写请求信号按照可配置的优先级进行设定,将图像处理中较关键的算法处理模块对应的写请求信号设为较高优先级,依次类推,优先级逐渐降低;将优先级进行编号后,设第1路写请求信号的优先级最高,第2路写请求信号的优先级次之,依此类推,第N路写请求信号的优先级最低。为了对帧缓存的数据进行定位,需要知道每一帧的起始写请求信号,当写请求信号为帧起始写请求信号时,将发送帧缓存首地址到总线接口单元,以便能正确地取到缓存数据;
进入DMA写判断状态后,按照如下步骤进行判断:
S201、判断第1路帧起始写请求信号是否开始,若开始,则跳到第1路每一帧起始行写状态,否则,进入步骤S202;进入第1路每一帧起始行写状态后,第1路写请求被选中,仲裁控制单元将第1路帧起始写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元将第1路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S202、判断第1路帧连续写请求信号是否开始,若开始,则跳到第1路每一帧连续行写状态,否则,进入步骤S203;进入第1路帧连续行写状态后,第1路写请求被选中,仲裁控制单元将第1路帧连续写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第1路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S203、判断第2路帧起始写请求信号是否开始,若开始,则跳到第2路每一帧起始行写状态,否则,进入步骤S204;进入第2路每一帧起始行写状态后,第2路写请求被选中,仲裁控制单元将第2路帧起始写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元将第2路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S204、判断第2路帧连续写请求信号是否开始,若开始,则跳到第2路帧连续行写状态,否则,进入步骤S205;进入第2路帧连续行写状态后,第2路写请求被选中,仲裁控制单元将第2路帧连续写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第2路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S205、判断第N路帧起始写请求信号是否开始,若开始,则跳到第N路每一帧起始行写状态,否则,进入步骤S206;进入第N路每一帧起始行写状态后,第N路写请求被选中,仲裁控制单元将第N路帧起始写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元将第N路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S206、判断第N路帧连续写请求信号是否开始,若开始,则跳到第N路帧连续行写状态,否则,停留DMA写判断状态,重复上述步骤进行下一次判断过程;进入第N路帧连续行写状态后,第N路写请求被选中,仲裁控制单元将第N路帧连续写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第N路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成。
在本发明实施例二中,DMA写传输仲裁单元能接收最多N路的写请求申请,按照如图7所示的方式进行仲裁,关键模块对应的优先级相应可设为更高,能够合理地利用一行缓存的时间,优先将更关键模块的数据取到,实现流水处理的顺畅进行。
请参阅图8,在本发明实施例二中,写缓存控制单元包括写仲裁请求信号产生模块231、写数据传输速率自动判断模块232和写乒乓缓存控制模块233。
其中,写仲裁请求信号产生模块231,用于当流水处理模块使能后(即表明需要启动DMA写相应的写传输数据),根据输入的行场同步信号,产生到DMA写传输仲裁单元的仲裁请求信号,为了达到图像实时处理的功能,在第二个行有效的信号来临之时,需要将第一行的写缓存数据发送到帧缓存中,所以在一行有效信号的下降沿之后,需要发出写请求信号到DMA写传输仲裁单元,将乒乓缓存区间中的缓存数据取出并发送到帧缓存中,待再下一行有效信号来临便可进行乒乓缓存和后续传输以达到实时传输的效果。
写数据传输速率自动判断模块232,用于自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整,以提高数据的传输效率。ISP等图像处理中,随着流水处理模块级数的增多,部分或全部的流水处理功能都使能后,可能会导致总线带宽或存储带宽不够,这一过程中,如果不加以调整就会导致图像出现错乱或扭曲等现象,严重影响系统性能和视觉效果。针对这种情况,本发明实施例二提供了数据传输速率的自动判断机制,其实现主要基于输入的行场同步时序信息以及DMA写传输仲裁单元的回应信号进行。针对ISP等按行处理的系统,在乒乓缓存的机制下,为了达到处理的实时性,必须在下一行同步信号到来之前,将上一行需要写到帧缓存的数据从乒乓缓存中取出并发送到帧缓存中,否则表明DMA数据传输过慢,达不到系统需求。这里,具体地,一行时间内,从发送仲裁请求信号开始,到下一行重新发送的仲裁请求开始前,必须收到指示上一次传输完成的仲裁回应信号,如果没有收到回应信号,则输出传输状态信号指示传输速率过慢,收到则表明传输正常。系统通过判断传输状态信号,可以自动地进行带宽的调整,当当前带宽不够时,下一帧的图像进行冻结,可将总线时钟或主存储器时钟提高,将带宽提高,带宽指示满足需求后,即可释放图像,正常地进行显示,由于带宽是按行计算,所以在下一帧来临之前,即可将带宽提高,达到数据传输速率的要求,而这完全不会影响图像的整体显示效果。通过数据传输速率的自动判断,在ISP等处理过程中,流水处理模块的开关使能导致数据传输的不同需求,都能通过该机制自动判断,从而可知系统总线带宽的使用情况,达到自动调整带宽,使得图像不会由于带宽不够而出现错乱或扭曲,提高了数据的传输效率,同时通过带宽的判断能自动地控制芯片的功耗(例如,只要带宽够用,就不需要把总线时钟或主存储器时钟调得过高,以免功耗较大),同时又能达到ISP等实时输入系统的数据访问需求。
写乒乓缓存控制模块233,用于根据时序信号产生一行切换一次的乒乓控制机制,将相应的流水处理模块需要存储的数据写到写乒乓缓存区间,同时根据仲裁信号将选中的一路乒乓缓存数据取出发送到DMA写传输仲裁单元。
本发明实施例三还提供了一种包括本发明实施例一或二提供的DMA控制装置的图像处理器。
在本发明实施例一中,由于DMA控制装置包括DMA读传输仲裁单元和N路读缓存控制单元,DMA读传输仲裁单元,用于负责DMA读请求信号的仲裁并接收经总线接口单元发送的外部存储器的读缓存数据,最终将读缓存数据写到选中的其中一路读缓存控制单元中;还用于对输入的N路源请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的读传输长度。使得在ISP等实时输入的芯片系统中,DMA控制装置能够结合图像处理模块进行准确合理的判决,针对多路不同的数据访问请求,可以实现DMA传输参数的硬件自动配置。另外,由于读缓存控制单元包括读仲裁请求信号产生模块和读数据传输速率自动判断模块,读数据传输速率自动判断模块自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整。因此使得图像不会由于带宽不够而出现错乱或扭曲,提高了数据的传输效率,同时通过带宽的判断能自动地控制芯片的功耗,同时又能达到ISP等实时输入系统的数据访问需求。
在本发明实施例二中,由于DMA控制装置包括DMA写传输仲裁单元和N路写缓存控制单元,DMA写传输仲裁单元,用于负责DMA写请求信号的仲裁并读取选中的其中一路写缓存控制单元输出的数据,最终经总线接口单元将数据发送到外部存储器中;还用于对输入的N路写请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的写传输长度。使得在ISP等实时输入的芯片系统中,DMA控制装置能够结合图像处理模块进行准确合理的判决,针对多路不同的数据访问请求,可以实现DMA传输参数的硬件自动配置。另外,由于写缓存控制单元包括写仲裁请求信号产生模块和写数据传输速率自动判断模块,写数据传输速率自动判断模块自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整。因此使得图像不会由于带宽不够而出现错乱或扭曲,提高了数据的传输效率,同时通过带宽的判断能自动地控制芯片的功耗,同时又能达到ISP等实时输入系统的数据访问需求。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种DMA控制装置,其特征在于,包括总线接口单元、DMA读传输仲裁单元、N路读缓存控制单元、DMA写传输仲裁单元、N路写缓存控制单元、N个流水处理模块和一时序产生单元,其中N为大于或等于2的自然数;
总线接口单元,用于接收DMA读传输仲裁单元产生的读请求信号和传输信息,并将读请求信号和传输信息转化成复合系统总线协议的总线请求信号,当从总线上收到有效的数据后,将从外部存储器中读出的读缓存数据写到DMA读传输仲裁单元;还用于接收DMA写传输仲裁单元产生的写请求信号和传输信息,并将写请求信号和传输信息转化成复合系统总线协议的总线请求信号,当从总线上收到有效的应答后,将从DMA写传输仲裁单元读出的写缓存数据写到外部存储器;
DMA读传输仲裁单元,用于负责DMA读请求信号的仲裁并接收经总线接口单元发送的外部存储器的读缓存数据,最终将读缓存数据写到选中的其中一路读缓存控制单元中;还用于对输入的N路源请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的读传输长度;
读缓存控制单元,用于接收时序产生单元输出的时序输入信号,并产生仲裁请求信号,结合仲裁回应信号产生传输状态信号,并根据时序输入信号将DMA读传输仲裁单元的数据写到对应路的乒乓缓存区间中,并取出乒乓缓存区间中的数据发送到对应的流水处理模块;
DMA写传输仲裁单元,用于负责DMA写请求信号的仲裁并接收其中一路选中的写缓存控制单元的数据,最终将接收到的数据经总线接口单元发送到外部存储器中;还用于对输入的N路写请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于自动产生每一路的写传输长度;
写缓存控制单元,用于接收时序产生单元输出的时序输入信号,并产生仲裁请求信号,结合仲裁回应信号产生传输状态信号,并根据时序输入信号将对应的流水处理模块需要缓存的数据写到对应路的乒乓缓存区间中,并将选中一路乒乓缓存区间中的数据读出发送到DMA写仲裁传输单元;
流水处理模块,用于为图像处理器中的具体算法进行处理的模块;
时序产生单元,用于接收同步时序输入信号,产生每一级流水处理模块的同步信号。
2.如权利要求1所述的装置,其特征在于,所述DMA读传输仲裁单元包括读仲裁控制单元、源请求空间统一编址单元、读请求发送单元和读传输数据写缓存译码单元;
其中,读仲裁控制单元,用于接收N路读缓存控制单元的读请求信号并对N路的读请求信号进行仲裁;
源请求空间统一编址单元,用于对输入的N路源请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于根据读仲裁控制单元的状态控制硬件自动产生每一路的读传输长度;
读请求发送单元,用于根据读仲裁控制单元仲裁的结果以及源请求空间统一编址单元的地址信息,发出读请求信息;
读传输数据写缓存译码单元,用于将总线接口单元发送过来的读传输数据写到译码后选中的1路到N路中的一路乒乓缓存区间中;
所述DMA写传输仲裁单元包括写仲裁控制单元、写请求空间统一编址单元、写请求发送单元和写传输数据读缓存译码单元;
其中,写仲裁控制单元,用于接收N路写缓存控制单元的写请求信号并对N路的写请求信号进行仲裁;
写请求空间统一编址单元,用于对输入的N路写请求空间进行统一编址,使得每一路映射到统一的目的地址空间中,还用于根据写仲裁控制单元的状态控制硬件自动产生每一路的写传输长度;
写请求发送单元,用于根据写仲裁控制单元仲裁的结果以及写请求空间统一编址单元的地址信息,发出写请求信息;
写传输数据读缓存译码单元,用于读取选中的1路到N路中的一路乒乓缓存区间中的数据并发送到总线接口单元中。
3.如权利要求2所述的装置,其特征在于,所述根据读仲裁控制单元的状态控制硬件自动产生每一路的读传输长度具体为:
根据分辨率信息和相应的模块请求计算出每一路的读传输长度,结合不同流水处理模块,硬件自动地产生其相应的读传输长度信息;
所述根据写仲裁控制单元的状态控制硬件自动产生每一路的写传输长度具体为:
根据分辨率信息和相应的模块请求直接计算出每一路的写传输长度,结合不同流水处理模块,硬件自动地产生其相应的写传输长度信息。
4.如权利要求2所述的装置,其特征在于,所述读请求信息包括读请求信号、读源起始地址、读目的起始地址和读传输长度;所述写请求信息包括写请求信号、写源起始地址、写目的起始地址和写传输长度。
5.如权利要求2所述的装置,其特征在于,所述读仲裁控制单元的工作步骤如下:
系统上电复位或DMA读传输不使能时,读仲裁控制单元处于DMA读空闲状态;
判断是否读传输使能,如果是,则读仲裁控制单元处于DMA读判断状态;否则读仲裁控制单元处于DMA读空闲状态;
在DMA读判断状态,对输入的N路读请求信号进行仲裁;
进入DMA读判断状态后,按照如下步骤进行判断:
S101、判断第1路帧起始读请求信号是否开始,若开始,则跳到第1路每一帧起始行读状态,否则,进入步骤S102;进入第1路每一帧起始行读状态后,第1路读请求被选中,读仲裁控制单元将第1路帧起始读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元将第1路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S102、判断第1路帧连续读请求信号是否开始,若开始,则跳到第1路每一帧连续行读状态,否则,进入步骤S103;进入第1路帧连续行读状态后,第1路读请求被选中,读仲裁控制单元将第1路帧连续读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第1路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S103、判断第2路帧起始读请求信号是否开始,若开始,则跳到第2路每一帧起始行读状态,否则,进入步骤S104;进入第2路每一帧起始行读状态后,第2路读请求被选中,读仲裁控制单元将第2路帧起始读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元将第2路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S104、判断第2路帧连续读请求信号是否开始,若开始,则跳到第2路帧连续行读状态,否则,进入步骤S105;进入第2路帧连续行读状态后,第2路读请求被选中,读仲裁控制单元将第2路帧连续读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第2路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S105、判断第N路帧起始读请求信号是否开始,若开始,则跳到第N路每一帧起始行读状态,否则,进入步骤S106;进入第N路每一帧起始行读状态后,第N路读请求被选中,读仲裁控制单元将第N路帧起始读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元将第N路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S106、判断第N路帧连续读请求信号是否开始,若开始,则跳到第N路帧连续行读状态,否则,停留DMA读判断状态,重复上述步骤进行下一次判断过程;进入第N路帧连续行读状态后,第N路读请求被选中,读仲裁控制单元将第N路帧连续读请求信号发送到读请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第N路读行缓存的RAM空间地址进行统一编址,并发送到读请求发送单元,当总线接口单元的回应信号表明帧起始行读传输完成后,跳到DMA读判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
所述写仲裁控制单元的工作步骤如下:
系统上电复位或DMA写传输不使能时,写仲裁控制单元处于DMA写空闲状态;
判断是否写传输使能,如果是,则仲裁控制单元处于DMA写判断状态;否则仲裁控制单元处于DMA写空闲状态;
在DMA写判断状态,对输入的N路写请求信号进行仲裁;
进入DMA写判断状态后,按照如下步骤进行判断:
S201、判断第1路帧起始写请求信号是否开始,若开始,则跳到第1路每一帧起始行写状态,否则,进入步骤S202;进入第1路每一帧起始行写状态后,第1路写请求被选中,仲裁控制单元将第1路帧起始写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元将第1路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S202、判断第1路帧连续写请求信号是否开始,若开始,则跳到第1路每一帧连续行写状态,否则,进入步骤S203;进入第1路帧连续行写状态后,第1路写请求被选中,仲裁控制单元将第1路帧连续写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第1路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S203、判断第2路帧起始写请求信号是否开始,若开始,则跳到第2路每一帧起始行写状态,否则,进入步骤S204;进入第2路每一帧起始行写状态后,第2路写请求被选中,仲裁控制单元将第2路帧起始写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元将第2路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S204、判断第2路帧连续写请求信号是否开始,若开始,则跳到第2路帧连续行写状态,否则,进入步骤S205;进入第2路帧连续行写状态后,第2路写请求被选中,仲裁控制单元将第2路帧连续写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第2路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S205、判断第N路帧起始写请求信号是否开始,若开始,则跳到第N路每一帧起始行写状态,否则,进入步骤S206;进入第N路每一帧起始行写状态后,第N路写请求被选中,仲裁控制单元将第N路帧起始写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元将第N路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成;
S206、判断第N路帧连续写请求信号是否开始,若开始,则跳到第N路帧连续行写状态,否则,停留DMA写判断状态,重复上述步骤进行下一次判断过程;进入第N路帧连续行写状态后,第N路写请求被选中,仲裁控制单元将第N路帧连续写请求信号发送到请求发送单元,同时该状态下,控制源请求空间统一编址单元,将第N路写行缓存的RAM空间地址进行统一编址,并发送到请求发送单元,当总线接口单元的回应信号表明帧起始行写传输完成后,跳到DMA写判断状态,否则一直停留在当前状态,直到所请求的数据传输完成。
6.如权利要求5所述的装置,其特征在于,所述对输入的N路读请求信号进行仲裁时,按照预设的优先级进行判断,根据图像处理和显示的重要性对各路读请求信号按照可配置的优先级进行设定,将图像处理中较关键的算法处理模块对应的读请求信号设为较高优先级,依次类推,优先级逐渐降低;
所述对输入的N路写请求信号进行仲裁时,按照预设的优先级进行判断,根据图像处理和显示的重要性对各路写请求信号按照可配置的优先级进行设定,将图像处理中较关键的算法处理模块对应的写请求信号设为较高优先级,依次类推,优先级逐渐降低。
7.如权利要求1所述的装置,其特征在于,所述读缓存控制单元包括读仲裁请求信号产生模块、读数据传输速率自动判断模块和读乒乓缓存控制模块;
其中,读仲裁请求信号产生模块,用于当流水处理模块使能后,根据输入的行场同步信号,产生到DMA读传输仲裁单元的仲裁请求信号,在第一个行有效的信号来临之前,需要预取出存储在帧缓存中的数据,所以在场同步的下降沿之后,需要提前发出仲裁请求信号到DMA读传输仲裁单元,将数据预取到乒乓缓存区间中,待第一行有效信号来临便可直接取用;
读数据传输速率自动判断模块,用于自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整,以提高数据的传输效率;
读乒乓缓存控制模块,用于根据时序信号产生一行切换一次的乒乓控制机制,将DMA读传输仲裁单元读到的数据写到读乒乓缓存区间,同时根据时序信息从乒乓缓存区间中读出预存的数据发送到相应的流水处理模块;
所述写缓存控制单元包括写仲裁请求信号产生模块、写数据传输速率自动判断模块和写乒乓缓存控制模块;
其中,写仲裁请求信号产生模块,用于当流水处理模块使能后,根据输入的行场同步信号,产生到DMA写传输仲裁单元的仲裁请求信号,在第二个行有效的信号来临之时,需要将第一行的写缓存数据发送到帧缓存中,所以在一行有效信号的下降沿之后,需要发出写请求信号到DMA写传输仲裁单元,将乒乓缓存区间中的缓存数据取出并发送到帧缓存中,待再下一行有效信号来临便可进行乒乓缓存和后续传输;
写数据传输速率自动判断模块,用于自动判断DMA数据传输的速率,判断系统总线带宽的使用情况,自动地进行带宽的调整,以提高数据的传输效率;
写乒乓缓存控制模块,用于根据时序信号产生一行切换一次的乒乓控制机制,将相应的流水处理模块需要存储的数据写到写乒乓缓存区间,同时根据仲裁信号将选中的一路乒乓缓存数据取出发送到DMA写传输仲裁单元。
8.如权利要求7所述的装置,其特征在于,所述读数据传输速率自动判断模块主要基于输入的行场同步时序信息以及DMA读传输仲裁单元的回应信号进行,一行时间内,从发送仲裁请求信号开始,到下一行重新发送的仲裁请求开始前,如果没有收到指示上一次传输完成的仲裁回应信号,则输出传输状态信号指示传输速率过慢,收到则表明传输正常,通过判断传输状态信号,自动地进行带宽的调整,以提高数据的传输效率;
所述写数据传输速率自动判断模块主要基于输入的行场同步时序信息以及DMA写传输仲裁单元的回应信号进行,一行时间内,从发送仲裁请求信号开始,到下一行重新发送的仲裁请求开始前,必须收到指示上一次传输完成的仲裁回应信号,如果没有收到回应信号,则输出传输状态信号指示传输速率过慢,收到则表明传输正常,系统通过判断传输状态信号,自动地进行带宽的调整,以提高数据的传输效率。
9.如权利要求8所述的装置,其特征在于,所述自动地进行带宽的调整具体为:
当当前带宽不够时,下一帧的图像进行冻结,将总线时钟或主存储器时钟提高,将带宽提高,带宽指示满足需求后,释放图像,正常地进行显示。
10.一种图像处理器,其特征在于,所述图像处理器包括如权利要求1至9任一项所述的DMA控制装置。
CN201711394147.3A 2017-12-21 2017-12-21 一种dma控制装置和图像处理器 Active CN108228498B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711394147.3A CN108228498B (zh) 2017-12-21 2017-12-21 一种dma控制装置和图像处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711394147.3A CN108228498B (zh) 2017-12-21 2017-12-21 一种dma控制装置和图像处理器

Publications (2)

Publication Number Publication Date
CN108228498A true CN108228498A (zh) 2018-06-29
CN108228498B CN108228498B (zh) 2020-12-15

Family

ID=62647652

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711394147.3A Active CN108228498B (zh) 2017-12-21 2017-12-21 一种dma控制装置和图像处理器

Country Status (1)

Country Link
CN (1) CN108228498B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109412914A (zh) * 2018-08-31 2019-03-01 南京理工大学 流数据与axi接口通信装置
CN110012346A (zh) * 2019-03-26 2019-07-12 合肥杰发科技有限公司 用户应用快速获取帧缓存中的帧数据的方法和装置、设备
CN110399322A (zh) * 2019-06-28 2019-11-01 苏州浪潮智能科技有限公司 一种数据传输方法及乒乓dma架构
WO2020192242A1 (zh) * 2019-03-27 2020-10-01 无锡海斯凯尔医学技术有限公司 数据传输的装置、方法及可读存储介质
CN112559397A (zh) * 2019-09-26 2021-03-26 阿里巴巴集团控股有限公司 一种装置和方法
CN112699059A (zh) * 2020-12-17 2021-04-23 中国电子科技集团公司第四十一研究所 一种数据缓存和上传装置及数据缓存和上传方法
CN112749112A (zh) * 2020-12-31 2021-05-04 无锡众星微系统技术有限公司 一种硬件流水结构

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060290791A1 (en) * 2000-09-11 2006-12-28 Fuji Photo Film Co., Ltd. Image control device with information-based image correcting capability, image control method and digital camera
US7623134B1 (en) * 2006-06-15 2009-11-24 Nvidia Corporation System and method for hardware-based GPU paging to system memory
CN102789438A (zh) * 2011-05-16 2012-11-21 夏普株式会社 直接存储器存取控制装置以及图像形成装置
CN105988953A (zh) * 2015-02-12 2016-10-05 深圳市中兴微电子技术有限公司 一种直接内存存取dma控制器及数据传输的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060290791A1 (en) * 2000-09-11 2006-12-28 Fuji Photo Film Co., Ltd. Image control device with information-based image correcting capability, image control method and digital camera
US7623134B1 (en) * 2006-06-15 2009-11-24 Nvidia Corporation System and method for hardware-based GPU paging to system memory
CN102789438A (zh) * 2011-05-16 2012-11-21 夏普株式会社 直接存储器存取控制装置以及图像形成装置
CN105988953A (zh) * 2015-02-12 2016-10-05 深圳市中兴微电子技术有限公司 一种直接内存存取dma控制器及数据传输的方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109412914A (zh) * 2018-08-31 2019-03-01 南京理工大学 流数据与axi接口通信装置
CN109412914B (zh) * 2018-08-31 2021-07-13 南京理工大学 流数据与axi接口通信装置
CN110012346A (zh) * 2019-03-26 2019-07-12 合肥杰发科技有限公司 用户应用快速获取帧缓存中的帧数据的方法和装置、设备
CN110012346B (zh) * 2019-03-26 2022-07-15 合肥杰发科技有限公司 用户应用快速获取帧缓存中的帧数据的方法和装置、设备
WO2020192242A1 (zh) * 2019-03-27 2020-10-01 无锡海斯凯尔医学技术有限公司 数据传输的装置、方法及可读存储介质
US11803490B2 (en) 2019-03-27 2023-10-31 Wuxi Hisky Medical Technologies Co., Ltd. Apparatus and method for data transmission and readable storage medium
CN110399322A (zh) * 2019-06-28 2019-11-01 苏州浪潮智能科技有限公司 一种数据传输方法及乒乓dma架构
CN112559397A (zh) * 2019-09-26 2021-03-26 阿里巴巴集团控股有限公司 一种装置和方法
CN112699059A (zh) * 2020-12-17 2021-04-23 中国电子科技集团公司第四十一研究所 一种数据缓存和上传装置及数据缓存和上传方法
CN112749112A (zh) * 2020-12-31 2021-05-04 无锡众星微系统技术有限公司 一种硬件流水结构

Also Published As

Publication number Publication date
CN108228498B (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
CN108228498A (zh) 一种dma控制装置和图像处理器
KR102407106B1 (ko) 프로그래밍 가능한 원자적 동작을 하는 메모리 컨트롤러
TWI498918B (zh) 存取緩衝器
US7640374B2 (en) Data transfer apparatus by direct memory access controller
TWI512464B (zh) 存取排程器
US8639859B2 (en) Method of transferring and processing data for efficient parallel computation
CN103543954B (zh) 一种数据存储管理方法和装置
US8819310B2 (en) System-on-chip and data arbitration method thereof
US10225168B2 (en) Interface apparatus and memory bus system
CN106951379B (zh) 一种基于axi协议的高性能ddr控制器及数据传输方法
US9471524B2 (en) System bus transaction queue reallocation
CN110928811B (zh) 用于处理突发读取事务的装置和方法
TWI469048B (zh) 緩衝器、運算系統、電腦可讀取的媒體以及媒體及管線式處理元件中的緩衝方法
CN109446125A (zh) Ddr读写仲裁器及方法
KR20140084155A (ko) 네트워크 프로세서에서의 멀티-코어 상호접속
WO2014169876A1 (zh) 一种总线仲裁方法及装置、存储介质
US7490201B2 (en) Method and bus prefetching mechanism for implementing enhanced buffer control
CN112074822A (zh) 具有针对流式数据传输的流压缩的数据处理网络
WO2017000684A1 (zh) 一种数据读取方法、对端设备、控制器及存储介质
JP2004318340A (ja) データ転送制御装置
CN1514973A (zh) 用于多个读取请求的存储器控制
CN111352869B (zh) 一种数据传输方法及装置、存储介质
CN109145397A (zh) 一种支持并行流水访问的外存仲裁结构
US8510493B2 (en) Circuit to efficiently handle data movement within a cache controller or on-chip memory peripheral
US7673091B2 (en) Method to hide or reduce access latency of a slow peripheral in a pipelined direct memory access system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: DMA control device and image processor

Effective date of registration: 20210906

Granted publication date: 20201215

Pledgee: Shenzhen hi tech investment small loan Co.,Ltd.

Pledgor: ARKMICRO TECHNOLOGIES (SHENZHEN) Co.,Ltd.

Registration number: Y2021980008915

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20221130

Granted publication date: 20201215

Pledgee: Shenzhen hi tech investment small loan Co.,Ltd.

Pledgor: ARKMICRO TECHNOLOGIES (SHENZHEN) Co.,Ltd.

Registration number: Y2021980008915