DMA控制器(40)具备:读出开始地址寄存器(402),储存开始读出的读出开始地址;读出数据尺寸寄存器(403),储存一个读出处理中读出的数据的尺寸;偏移值寄存器(404),储存用于在一个读出处理结束之后更新读出开始地址的偏移值;重复上限值寄存器(405),储存一个读出处理的重复次数的上限值;以及重复计数寄存器(406),储存一个读出处理的重复次数。另外,DMA控制器(40)的控制部(401)在重复计数寄存器(406)的储存值达到了重复上限值寄存器(405)的储存值的情况下,输出表示DMA控制器(40)的处理结束了的意思的中断信号。
【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及利用了 DMA (Direct Memory Access,直接存储器存取)控制器的从可读写的存储介质读出数据的技术。
技术介绍
例如,在将闪存作为存储介质而利用的设备的CPU中,需要适宜地进行确定该闪存的存储器区域中的期望的数据的储存场所(物理地址)的处理。但是,在存储器区域大的情况等,检索数据时的CPU的负担增大。因此,已知还有如在专利文献I等中公开那样的使DMA控制器执行数据的读出而减轻CPU的负荷的方法。在该情况下,CPU对DMA控制器所具备的读出开始地址寄存器和读出数据尺寸寄存器,分别设置开始读出的地址(读出开始地址)和所读出的数据尺寸(例如,字节单位)。DMA控制器如果从所指定的读出开始地址读出所指定的字节数的数据,则输出中断信号,结束数据的读出动作。如果输出了上述中断信号,则CPU检查所读出的数据是否为期望的数据。然后,在并非期望的数据的情况下,CPU更新读出开始地址寄存器的值,再次起动DMA控制器,进行数据的读出动作。之后,直至发现期望的数据为止,CPU重复进行上述控制。专利文献1:日本特开2005 - 100247号公报
技术实现思路
在上述情况下,如果直至发现期望的数据为止频繁地发生CPU和DMA控制器的互换,则CPU的负荷增大,该设备整体的性能有可能降低。相对于此,如果对读出数据尺寸寄存器预先设置大的值,则能够降低CPU针对DMA控制器的指令频度、即干预次数,但会大量地读出期望的数据以外的数据,效率不佳。本专利技术的目的在于提供一种不会增大CPU的负荷而能够高效地从可读写的存储介质读出数据的DMA控制器等。为了达到上述目的,本专利技术的第一观点的DMA控制器是从能读写的存储介质读出数据的DMA控制器,具备:读出开始地址寄存器,储存开始读出的读出开始地址;读出数据尺寸寄存器,储存一个读出处理中读出的数据的尺寸;偏移值寄存器,储存用于在所述一个读出处理结束之后更新所述读出开始地址的偏移值;重复上限值寄存器,储存所述一个读出处理的重复次数的上限值;重复计数寄存器,储存所述一个读出处理的重复次数;以及结束通知单元,在该重复计数寄存器的储存值达到了所述重复上限值寄存器的储存值的情况下,输出表示该DMA控制器的处理结束了的意思的规定的中断信号。本专利技术的第二观点的数据读出装置包括CPU、第一 DMA控制器、第二 DMA控制器、夕卜部存储器、外部存储器接口、第一内部存储器以及第二内部存储器,其中,所述CPU在所述第一内部存储器中储存规定数量的由开始读出的读出开始地址和在一个读出处理中读出的数据的尺寸构成的命令参数的组,所述第一 DMA控制器从所述第一内部存储器依次取得所述命令参数的组,使所述外部存储器接口执行基于该命令参数的组的一个读出处理,所述外部存储器接口将通过所述一个读出处理从所述外部存储器读出的数据传送到所述第二 DMA控制器,所述第二 DMA控制器将从所述外部存储器接口传送的数据依次写入到所述第二内部存储器,并且判断所述传送的数据是否与预先由CPU指定的数据一致,在一致的情况下输出表示所述第一 DMA控制器以及该第二 DMA控制器的处理结束了的意思的规定的中断信号,当输出了所述中断信号时,所述CPU访问所述第二内部存储器,检索所述指定的数据。根据本专利技术,每当一个读出处理结束时,自动地更新读出开始地址,所以实现数据读出的高效化。附图说明图1是示出具备本专利技术的实施方式I的DMA控制器的数据读出装置的结构的框图。图2是示出实施方式I的DMA控制器的结构的框图。图3是示出实施方式I的数据读出处理的过程的流程图。图4是用于说明实施方式I中的读出开始地址的更新的图。图5是示出本专利技术的实施方式2的DMA控制器的结构的框图。图6是示出实施方式2的数据读出处理的过程的流程图。图7是示出本专利技术的实施方式3的数据读出装置的结构的框图。图8是用于说明实施方式3中的第一内部存储器中储存的命令参数的组的图。图9是用于说明实施方式3中的利用外部存储器接口的数据的读出方式的图。图10是用于说明实施方式3中的第二内部存储器的图。图11是示出实施方式3的数据读出处理的过程的流程图。(符号说明)10:CPU ;20:R0M ;30 =RAM ;31:第一内部存储器;32:第二内部存储器;40:DMA 控制器;401:控制部;402:读出开始地址寄存器;403:读出数据尺寸寄存器;404:偏移值寄存器;405:重复上限值寄存器;406:重复计数寄存器;407:检索数据寄存器;41:第一 DMA控制器;42:第二 DMA控制器;50:存储介质;51:外部存储器;60:总线;61:内部总线;62:外部总线。具体实施例方式以下,参照附图,详细说明本专利技术的实施方式。(实施方式I)图1是示出具备本专利技术的实施方式I的DMA控制器的数据读出装置的结构的框图。该数据读出装置例如搭载于与太阳能发电系统中的多个功率调节器连接并收集与各功率调节器的运转状态相关的数据的设备(所谓的数据记录仪)等中。如图1所示,该数据读出装置包括CPU (Central Processing Unit,中央处理单兀)10、ROM (Read Only Memory,只读存储器)20、RAM (Random Access Memory,随机存取存储器)30、DMA (Direct Memory Access)控制器40、以及存储介质50,各构成部件经由总线60而相互连接。CPU10根据R0M20中存储的各种程序、数据等,对包含该数据读出装置的该设备整体的动作进行控制。RAM30被用作临时地保存用于向存储介质50传送的数据、所读出的数据等的作业用存储器等。DMA控制器40依照CPU10的指令,访问存储介质50,进行数据的读出,将所读出的数据保存到RAM30。存储介质50例如是可读写的非易失性的存储介质,在本实施方式中是闪存。在本实施方式的数据读出装置中,CPU10为了在针对存储介质50中储存的期望的数据的处理(读出、删除等)之前确定上述数据的储存场所(换言之,物理地址),而使DMA控制器40执行数据读出处理,在后面详细进行叙述。图2是示出DMA控制器40的结构的框图。DMA控制器40具备:执行数据读出处理的控制部401 (结束通知单元)、和存储该数据读出处理中使用的信息的多个寄存器(读出开始地址寄存器402、读出数据尺寸寄存器403、偏移值寄存器404、重复上限值寄存器405、重复计数寄存器406)。CPU10在需要确定期望的数据(例如,扇区编号)的储存场所时,在读出开始地址寄存器402中储存开始读出的地址(读出开始地址)。另外,CPU10将表示在一个读出处理中读出的数据的尺寸的读出数据尺寸(例如,字节单位)储存到读出数据尺寸寄存器403,并将用于每当一个读出处理结束时更新读出开始地址的偏移值储存到偏移值寄存器404,将使一个读出处理重复的次数的上限值储存到重复上限值寄存器405。另外,CPU10对重复计数寄存器406进行清零。在重复计数寄存器406中,储存每当一个读出处理重复时进行递增的计数值。并且,CPU10将规定的控制信号输出到DMA控制器40,并以此为契机,DMA控制器40开始数据读出处理。之后,直至一个读出处理的重复次数达到上述上限值为止,DMA本文档来自技高网...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】...
【专利技术属性】
技术研发人员:中田成宪,久代纪之,伊藤善朗,小泉吉秋,
申请(专利权)人:三菱电机株式会社,
类型:
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。