《DMA控制器以及数据读出装置.pdf》由会员分享,可在线阅读,更多相关《DMA控制器以及数据读出装置.pdf(20页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103119573 A(43)申请公布日 2013.05.22CN103119573A*CN103119573A*(21)申请号 201180045340.0(22)申请日 2011.01.262010-210798 2010.09.21 JPG06F 13/28(2006.01)(71)申请人三菱电机株式会社地址日本东京(72)发明人中田成宪 久代纪之 伊藤善朗小泉吉秋(74)专利代理机构中国国际贸易促进委员会专利商标事务所 11038代理人金光华(54) 发明名称DMA控制器以及数据读出装置(57) 摘要DMA控制器(40)具备:读出开始地址寄存器(402),储存。
2、开始读出的读出开始地址;读出数据尺寸寄存器(403),储存一个读出处理中读出的数据的尺寸;偏移值寄存器(404),储存用于在一个读出处理结束之后更新读出开始地址的偏移值;重复上限值寄存器(405),储存一个读出处理的重复次数的上限值;以及重复计数寄存器(406),储存一个读出处理的重复次数。另外,DMA控制器(40)的控制部(401)在重复计数寄存器(406)的储存值达到了重复上限值寄存器(405)的储存值的情况下,输出表示DMA控制器(40)的处理结束了的意思的中断信号。(30)优先权数据(85)PCT申请进入国家阶段日2013.03.21(86)PCT申请的申请数据PCT/JP2011/0。
3、51508 2011.01.26(87)PCT申请的公布数据WO2012/039143 JA 2012.03.29(51)Int.Cl.权利要求书1页 说明书7页 附图11页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书1页 说明书7页 附图11页(10)申请公布号 CN 103119573 ACN 103119573 A1/1页21.一种DMA控制器,从能读写的存储介质读出数据,所述DMA控制器具备:读出开始地址寄存器,储存开始读出的读出开始地址;读出数据尺寸寄存器,储存一个读出处理中读出的数据的尺寸;偏移值寄存器,储存用于在所述一个读出处理结束之后更新所述读出开始地址的。
4、偏移值;重复上限值寄存器,储存所述一个读出处理的重复次数的上限值;重复计数寄存器,储存所述一个读出处理的重复次数;以及结束通知单元,在该重复计数寄存器的储存值达到了所述重复上限值寄存器的储存值的情况下,输出表示该DMA控制器的处理结束了的意思的规定的中断信号。2.根据权利要求1所述的DMA控制器,其特征在于,所述结束通知单元还判断在所述一个读出处理中读出的数据是否与预先指定的数据一致,在一致的情况下输出所述中断信号。3.根据权利要求1或者2所述的DMA控制器,其特征在于,所述存储介质是闪存。4.一种数据读出装置,包括CPU、第一DMA控制器、第二DMA控制器、外部存储器、外部存储器接口、第一内。
5、部存储器以及第二内部存储器,其中,所述CPU在所述第一内部存储器中储存规定数量的由开始读出的读出开始地址和在一个读出处理中读出的数据的尺寸构成的命令参数的组,所述第一DMA控制器从所述第一内部存储器依次取得所述命令参数的组,使所述外部存储器接口执行基于该命令参数的组的一个读出处理,所述外部存储器接口将通过所述一个读出处理从所述外部存储器读出的数据传送到所述第二DMA控制器,所述第二DMA控制器将从所述外部存储器接口传送的数据依次写入到所述第二内部存储器,并且判断所述传送的数据是否与预先由CPU指定的数据一致,在一致的情况下输出表示所述第一DMA控制器以及该第二DMA控制器的处理结束了的意思的规。
6、定的中断信号,当输出了所述中断信号时,所述CPU访问所述第二内部存储器,检索所述指定的数据。5.根据权利要求4所述的数据读出装置,其特征在于,所述第一DMA控制器在所述第一内部存储器中不存在应取得的所述命令参数的组的情况下,输出所述中断信号。6.根据权利要求4或者5所述的数据读出装置,其特征在于,所述外部存储器是串行闪存。权 利 要 求 书CN 103119573 A1/7页3DMA 控制器以及数据读出装置技术领域0001 本发明涉及利用了DMA(Direct Memory Access,直接存储器存取)控制器的从可读写的存储介质读出数据的技术。背景技术0002 例如,在将闪存作为存储介质而利。
7、用的设备的CPU中,需要适宜地进行确定该闪存的存储器区域中的期望的数据的储存场所(物理地址)的处理。但是,在存储器区域大的情况等,检索数据时的CPU的负担增大。因此,已知还有如在专利文献1等中公开那样的使DMA控制器执行数据的读出而减轻CPU的负荷的方法。0003 在该情况下,CPU对DMA控制器所具备的读出开始地址寄存器和读出数据尺寸寄存器,分别设置开始读出的地址(读出开始地址)和所读出的数据尺寸(例如,字节单位)。DMA控制器如果从所指定的读出开始地址读出所指定的字节数的数据,则输出中断信号,结束数据的读出动作。0004 如果输出了上述中断信号,则CPU检查所读出的数据是否为期望的数据。然。
8、后,在并非期望的数据的情况下,CPU更新读出开始地址寄存器的值,再次起动DMA控制器,进行数据的读出动作。之后,直至发现期望的数据为止,CPU重复进行上述控制。0005 专利文献1:日本特开2005100247号公报发明内容0006 在上述情况下,如果直至发现期望的数据为止频繁地发生CPU和DMA控制器的互换,则CPU的负荷增大,该设备整体的性能有可能降低。相对于此,如果对读出数据尺寸寄存器预先设置大的值,则能够降低CPU针对DMA控制器的指令频度、即干预次数,但会大量地读出期望的数据以外的数据,效率不佳。0007 本发明的目的在于提供一种不会增大CPU的负荷而能够高效地从可读写的存储介质读出。
9、数据的DMA控制器等。0008 为了达到上述目的,本发明的第一观点的DMA控制器是从能读写的存储介质读出数据的DMA控制器,具备:0009 读出开始地址寄存器,储存开始读出的读出开始地址;0010 读出数据尺寸寄存器,储存一个读出处理中读出的数据的尺寸;0011 偏移值寄存器,储存用于在所述一个读出处理结束之后更新所述读出开始地址的偏移值;0012 重复上限值寄存器,储存所述一个读出处理的重复次数的上限值;0013 重复计数寄存器,储存所述一个读出处理的重复次数;以及0014 结束通知单元,在该重复计数寄存器的储存值达到了所述重复上限值寄存器的储存值的情况下,输出表示该DMA控制器的处理结束了。
10、的意思的规定的中断信号。0015 本发明的第二观点的数据读出装置包括CPU、第一DMA控制器、第二DMA控制器、外说 明 书CN 103119573 A2/7页4部存储器、外部存储器接口、第一内部存储器以及第二内部存储器,其中,0016 所述CPU在所述第一内部存储器中储存规定数量的由开始读出的读出开始地址和在一个读出处理中读出的数据的尺寸构成的命令参数的组,0017 所述第一DMA控制器从所述第一内部存储器依次取得所述命令参数的组,使所述外部存储器接口执行基于该命令参数的组的一个读出处理,0018 所述外部存储器接口将通过所述一个读出处理从所述外部存储器读出的数据传送到所述第二DMA控制器,。
11、0019 所述第二DMA控制器将从所述外部存储器接口传送的数据依次写入到所述第二内部存储器,并且判断所述传送的数据是否与预先由CPU指定的数据一致,在一致的情况下输出表示所述第一DMA控制器以及该第二DMA控制器的处理结束了的意思的规定的中断信号,0020 当输出了所述中断信号时,所述CPU访问所述第二内部存储器,检索所述指定的数据。0021 根据本发明,每当一个读出处理结束时,自动地更新读出开始地址,所以实现数据读出的高效化。附图说明0022 图1是示出具备本发明的实施方式1的DMA控制器的数据读出装置的结构的框图。0023 图2是示出实施方式1的DMA控制器的结构的框图。0024 图3是示。
12、出实施方式1的数据读出处理的过程的流程图。0025 图4是用于说明实施方式1中的读出开始地址的更新的图。0026 图5是示出本发明的实施方式2的DMA控制器的结构的框图。0027 图6是示出实施方式2的数据读出处理的过程的流程图。0028 图7是示出本发明的实施方式3的数据读出装置的结构的框图。0029 图8是用于说明实施方式3中的第一内部存储器中储存的命令参数的组的图。0030 图9是用于说明实施方式3中的利用外部存储器接口的数据的读出方式的图。0031 图10是用于说明实施方式3中的第二内部存储器的图。0032 图11是示出实施方式3的数据读出处理的过程的流程图。0033 (符号说明)00。
13、34 10:CPU;20:ROM;30:RAM;31:第一内部存储器;32:第二内部存储器;40:DMA控制器;401:控制部;402:读出开始地址寄存器;403:读出数据尺寸寄存器;404:偏移值寄存器;405:重复上限值寄存器;406:重复计数寄存器;407:检索数据寄存器;41:第一DMA控制器;42:第二DMA控制器;50:存储介质;51:外部存储器;60:总线;61:内部总线;62:外部总线。具体实施方式0035 以下,参照附图,详细说明本发明的实施方式。0036 (实施方式1)说 明 书CN 103119573 A3/7页50037 图1是示出具备本发明的实施方式1的DMA控制器的。
14、数据读出装置的结构的框图。该数据读出装置例如搭载于与太阳能发电系统中的多个功率调节器连接并收集与各功率调节器的运转状态相关的数据的设备(所谓的数据记录仪)等中。0038 如图1所示,该数据读出装置包括CPU(Central Processing Unit,中央处理单元)10、ROM(Read Only Memory,只读存储器)20、RAM(Random Access Memory,随机存取存储器)30、DMA(Direct Memory Access)控制器40、以及存储介质50,各构成部件经由总线60而相互连接。0039 CPU10根据ROM20中存储的各种程序、数据等,对包含该数据读出装。
15、置的该设备整体的动作进行控制。RAM30被用作临时地保存用于向存储介质50传送的数据、所读出的数据等的作业用存储器等。0040 DMA控制器40依照CPU10的指令,访问存储介质50,进行数据的读出,将所读出的数据保存到RAM30。存储介质50例如是可读写的非易失性的存储介质,在本实施方式中是闪存。0041 在本实施方式的数据读出装置中,CPU10为了在针对存储介质50中储存的期望的数据的处理(读出、删除等)之前确定上述数据的储存场所(换言之,物理地址),而使DMA控制器40执行数据读出处理,在后面详细进行叙述。0042 图2是示出DMA控制器40的结构的框图。DMA控制器40具备:执行数据读。
16、出处理的控制部401(结束通知单元)、和存储该数据读出处理中使用的信息的多个寄存器(读出开始地址寄存器402、读出数据尺寸寄存器403、偏移值寄存器404、重复上限值寄存器405、重复计数寄存器406)。0043 CPU10在需要确定期望的数据(例如,扇区编号)的储存场所时,在读出开始地址寄存器402中储存开始读出的地址(读出开始地址)。另外,CPU10将表示在一个读出处理中读出的数据的尺寸的读出数据尺寸(例如,字节单位)储存到读出数据尺寸寄存器403,并将用于每当一个读出处理结束时更新读出开始地址的偏移值储存到偏移值寄存器404,将使一个读出处理重复的次数的上限值储存到重复上限值寄存器405。
17、。另外,CPU10对重复计数寄存器406进行清零。在重复计数寄存器406中,储存每当一个读出处理重复时进行递增的计数值。0044 并且,CPU10将规定的控制信号输出到DMA控制器40,并以此为契机,DMA控制器40开始数据读出处理。之后,直至一个读出处理的重复次数达到上述上限值为止,DMA控制器40不通过来自CPU10的控制,而继续执行数据读出处理。0045 图3是示出DMA控制器40执行的上述数据读出处理的过程的流程图。如上所述,以由CPU10进行的规定的控制信号的输出为契机而开始该数据读出处理。0046 首先,DMA控制器40的控制部401从读出开始地址寄存器402取得读出开始地址(步骤。
18、S101),从读出开始数据尺寸寄存器403取得读出数据尺寸(步骤S102)。0047 然后,控制部401从该读出开始地址所表示的存储介质50的存储器区域中读出与读出数据尺寸相应大小的数据(步骤S103),并将所读出的数据保存到RAM30。如果这一个读出处理结束,则控制部401使重复计数寄存器406的计数值递增(步骤S104)。0048 然后,控制部401判断重复计数寄存器406的计数值(即,重复次数)是否达到重复上限值寄存器405的值(即,重复次数的上限值)(步骤S105)。其结果,在未达到上限值的说 明 书CN 103119573 A4/7页6情况下(步骤S105:“否”),控制部401从偏。
19、移值寄存器404取得偏移值(步骤S106),并相加所取得的偏移值,从而更新读出开始地址寄存器402的读出开始地址(步骤S107)。然后,控制部401再次执行步骤S101的处理。0049 另一方面,在一个读出处理的重复次数达到了预定的上限值的情况下(步骤S105:“是”),控制部401输出规定的中断信号(步骤S108),并结束数据读出处理。0050 如果输出了上述中断信号,则CPU10访问RAM30,检索有无期望的数据,并在存在期望的数据的情况下,利用该时刻的DMA控制器40的读出开始地址寄存器402的读出开始地址、重复计数寄存器406的计数值等,确定该数据的储存场所(物理地址)。0051 另一。
20、方面,在RAM30中不存在期望的数据的情况下,CPU10在读出开始地址寄存器402等中储存新的读出开始地址,并再次使DMA控制器40执行数据读出处理。0052 例如,如图4所示,在每个扇区(例如,260个字节)的规定位置(例如,从开头起4个字节)存在CPU10期望的数据(例如,扇区编号)的情况下,在读出扇区的所有数据的方式中效率不佳。但是,在本实施方式的DMA控制器40中,在上述情况下,通过对读出数据尺寸寄存器403设置4(字节),并对偏移值寄存器404设置260(字节),从而每当与4个字节相应大小的一个读出处理结束时,能够使读出开始地址跳跃与260个字节相应的大小。因此,能够更高效地读出CP。
21、U10期望的数据。0053 另外,也可以在每当从存储介质50读出1个字节时,使读出开始地址寄存器402的读出开始地址1个字节1个字节地前进。在该情况下,在偏移值寄存器404中储存从扇区的尺寸(例如,260个字节)减去读出数据尺寸(例如,4个字节)而得到的值(例如,256个字节)即可。0054 (实施方式2)0055 接下来,说明本发明的实施方式2的DMA控制器。关于实施方式2的DMA控制器,也包含于与实施方式1同样的数据读出装置中。另外,对于与实施方式1的数据读出装置共同的部分附加同一符号而进行说明。图5是示出本实施方式的DMA控制器40的结构的框图。如图5所示,在本实施方式的DMA控制器40。
22、中,追加了检索数据寄存器407。在该检索数据寄存器407中储存CPU10期望的数据(例如,扇区编号)。0056 参照图6的流程图,说明本实施方式的DMA控制器40执行的数据读出处理的过程。该数据读出处理也与实施方式1同样地,以由CPU10进行的规定的控制信号的输出为契机而开始。0057 首先,DMA控制器40的控制部401从读出开始地址寄存器402取得读出开始地址(步骤S201),从读出开始数据尺寸寄存器403取得读出数据尺寸(步骤S202)。0058 然后,控制部401从该读出开始地址所表示的存储介质50的存储器区域中读出与读出数据尺寸相应大小的数据(步骤S203),并将所读出的数据保存到R。
23、AM30。接下来,控制部401判断该读出的数据是否与检索数据寄存器407中储存的数据一致(步骤S204)。0059 其结果,在两者一致的情况下(步骤S204:“是”),控制部401输出规定的中断信号(步骤S205),并结束数据读出处理。0060 另一方面,在两者不一致的情况下(步骤S204:“否”),控制部401使重复计数寄存器406的计数值进行递增(步骤S206)。然后,控制部401判断重复计数寄存器406的计数值(即,重复次数)是否达到重复上限值寄存器405的值(即,重复次数的上限值)(步骤S207)。说 明 书CN 103119573 A5/7页70061 其结果,在未达到上限值的情况下。
24、(步骤S207:“否”),控制部401从偏移值寄存器404取得偏移值(步骤S208),并相加所取得的偏移值,从而更新读出开始地址寄存器402的读出开始地址(步骤S209)。然后,控制部401再次执行步骤S201的处理。0062 另一方面,在一个读出处理的重复次数达到预定的上限值的情况下(步骤S207:“是”),控制部401输出规定的中断信号(步骤S205),并结束数据读出处理。0063 如以上那样,在本实施方式的DMA控制器40中,如果读出了CPU10期望的数据(例如,扇区编号),则输出中断信号而立即结束数据读出处理。因此,可进一步实现处理的高效化、高速化。0064 (实施方式3)0065 接。
25、下来,说明本发明的数据读出装置的实施方式。图7是示出本实施方式的数据读出装置的结构的框图。如图7所示,该数据读出装置包括CPU10、ROM20、第一内部存储器31、第二内部存储器32、第一DMA控制器41、第二DMA控制器42、外部存储器接口70、以及外部存储器51。0066 CPU10、ROM20、第一内部存储器31、第二内部存储器32、第一DMA控制器41、第二DMA控制器42、以及外部存储器接口70经由内部总线61而相互连接。另外,外部存储器接口70和外部存储器51经由作为串行总线的外部总线62而连接。在本实施方式中,采用串行闪存作为外部存储器51。0067 CPU10根据ROM20中存。
26、储的各种程序、数据等,对包含该数据读出装置的该设备整体的动作进行控制。第一内部存储器31是例如SRAM(Static Random Access Memory,静态随机存取存储器)等可读写的易失性的存储器。在第一内部存储器31中,如图8所示,由CPU10储存多个由读出地址和读出数据尺寸构成的命令参数的组,在后面详细进行叙述。0068 第二内部存储器32是例如SRAM等可读写的易失性的存储器,被用作从外部存储器51读出并供给到第二DMA控制器42的数据的保存用的存储器,在后面详细进行叙述。0069 第一DMA控制器41以及第二DMA控制器42为了与实施方式1的DMA控制器40同样地能够确定CPU。
27、10期望的数据(例如,扇区编号)的储存场所,具有不经CPU10而从外部存储器51读出数据的功能。0070 第一DMA控制器41根据来自CPU10的规定的控制信号而起动,从第一内部存储器31依次取得上述命令参数的组,根据上述命令参数的组,使外部存储器接口70执行数据的读出。例如,如图8所示,在第一内部存储器31中储存的开头的命令参数的组由读出开始地址“0x000000”、读出数据尺寸“2(字节)”构成的情况下,外部存储器接口70如图9所示读出数据“0052h”。外部存储器接口70将所读出的数据供给到第二DMA控制器42。0071 第二DMA控制器42根据来自CPU10的规定的控制信号,与第一DM。
28、A控制器41同步地起动。第二DMA控制器42将从外部存储器接口70供给的数据(读出数据)依次保存到第二内部存储器32(参照图10)。在第二DMA控制器42中具备未图示的检索数据寄存器,在该检索数据寄存器中,在第二DMA控制器42的起动前由CPU10预先储存CPU10想要确定储存场所的数据(例如,扇区编号)。0072 第二DMA控制器42判断从外部存储器接口70接收到的读出数据是否与上述检索数据寄存器中储存的数据一致。其结果,在两者一致的情况下,第二DMA控制器42输出规定的中断信号。与该中断信号的输出同步地,第一DMA控制器41以及第二DMA控制器42说 明 书CN 103119573 A6/。
29、7页8的动作停止。0073 另外,如果未发现与检索数据寄存器中储存的数据一致的读出数据而从外部存储器51读出数据,则马上通过第一DMA控制器41,从第一内部存储器31取得所有的命令参数的组。在该情况下,第一DMA控制器41输出上述中断信号。0074 如果从第二DMA控制器42或者第一DMA控制器41输出了上述中断信号,则CPU10访问第二内部存储器32,从所保存的读出数据中检索有无期望的数据,在存在期望的数据的情况下,根据与第一内部存储器31的对应关系等来确定该数据的储存场所(物理地址)。0075 另一方面,在第二内部存储器32中不存在期望的数据的情况下,CPU10在对第一内部存储器31进行了。
30、清零之后,储存多个新的命令参数的组,另外对第二内部存储器32进行清零。然后,CPU10再次根据规定的控制信号,使第一DMA控制器41以及第二DMA控制器42起动,而执行数据的读出处理。0076 图11是示出第一DMA控制器41、第二DMA控制器42以及外部存储器接口70协调而执行的本实施方式的数据读出处理的过程的流程图。如上所述,以由CPU10进行的规定的控制信号的输出为契机而开始该数据读出处理。0077 第一DMA控制器41从第一内部存储器31取得1组命令参数的组(步骤S301)。然后,第一DMA控制器41根据上述命令参数的组,使外部存储器接口70执行数据的读出。外部存储器接口70访问外部存。
31、储器51,从所指定的读出开始地址读出与所指定的读出数据尺寸相应大小的数据(步骤S302)。外部存储器接口70将所读出的数据(读出数据)供给到第二DMA控制器42。0078 第二DMA控制器42将从外部存储器接口70供给的读出数据保存到第二内部存储器32(步骤S303)。另外,第二DMA控制器42判断该读出数据与预先由CPU10指定的数据是否一致(步骤S304)。0079 其结果,在两者一致的情况下(步骤S304:“是”),第二DMA控制器42输出规定的中断信号(步骤S305)。与该中断信号的输出同步地,第一DMA控制器41以及第二DMA控制器42的动作停止,本数据读出处理结束。0080 另一方。
32、面,在两者不一致的情况下(步骤S304:“否”),第一DMA控制器41从第一内部存储器31取得1组其次的命令参数的组(步骤S301)。之后,直至读出与由CPU10指定的数据一致的数据为止(步骤S304:“是”),重复执行上述处理。另外,如上所述,如果由第一DMA控制器41从第一内部存储器31取得了所有的命令参数的组,则输出上述中断信号,本数据读出处理结束。0081 一般,串行闪存具有实现低成本化、省电化且可靠性也良好、嵌入的设计容易这样的优点,但相反存在访问处理速度慢这样的缺点。但是,如本实施方式那样,通过设为具备2个DMA控制器的结构,并使各自如上所述那样发挥功能,从而实现访问处理的高速化。。
33、0082 另外,与实施方式2的DMA控制器40同样地,第二DMA控制器42在读出了CPU10期望的数据时,输出中断信号,立即对CPU10通知数据的读出动作的结束。因此,进一步实现处理的高效化、高速化。0083 另外,本发明能够不脱离本发明的广义的精神和范围而实现各种实施方式以及变形。另外,上述实施方式用于说明本发明,而并非限定本发明的范围。即,本发明的范围并非由实施方式示出而是由权利要求书示出。并且,在权利要求书中以及与其等同的发明的说 明 书CN 103119573 A7/7页9意义的范围内实施的各种变形可视为在本发明的范围内。0084 本申请基于在2010年9月21日申请的日本专利申请特愿2010210798号。在本说明书中,作为参照引用了其说明书、权利要求书、附图整体。0085 产业上的可利用性0086 本发明适用于利用闪存等可读写的存储介质的各种电子设备。说 明 书CN 103119573 A1/11页10图1说 明 书 附 图CN 103119573 A10。