CN104123254A - 一种节省硬件资源的配置寄存器访问方法 - Google Patents
一种节省硬件资源的配置寄存器访问方法 Download PDFInfo
- Publication number
- CN104123254A CN104123254A CN201410368236.0A CN201410368236A CN104123254A CN 104123254 A CN104123254 A CN 104123254A CN 201410368236 A CN201410368236 A CN 201410368236A CN 104123254 A CN104123254 A CN 104123254A
- Authority
- CN
- China
- Prior art keywords
- dma
- configuration register
- bus
- data
- address
- 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
Links
Landscapes
- Bus Control (AREA)
Abstract
本发明提供一种节省硬件资源的配置寄存器访问方法,将配置数据存储在内部双端口RAM中,DMA周期循环读取双端口RAM中的配置寄存器,将配置寄存器对应的地址和数据写到DMA的地址和数据总线上;处理模块需要访问配置寄存器时,只需被动等待与本地址相同的DMA总线地址,选择接收对应的DMA总线数据,这样就实现了配置寄存器的访问,这种配置寄存器访问方式不需要模块间的读取控制,也不需要复杂的总线仲裁,大大节约了硬件资源。
Description
技术领域
本发明涉及数据信号处理领域,特别是一种节省硬件资源的配置寄存器访问方法。
背景技术
在数据处理系统中有大量配置信息,如各通道VLAN(虚拟局域网,Virtual Local Area Network)层数、VLAN标签、包长字节等,配置信息一般存放在寄存器中,处理模块适时读取相关配置寄存器数据,进行相应业务的配置与处理,目前常用的配置寄存器访问方式有如下2种。
方式一:触发器访问方式
如图1,配置寄存器组由一系列触发器构成,CPU通过总线写入、修改、清除配置寄存器REG;配置寄存器REG与处理模块M对应,处理模块M需要配置数据时,只从对应的配置寄存器中读取即可。
这种触发器访问方式,CPU写入配置寄存器REG后,数据锁存到触发器,不需要再对REG进行管理;处理模块M单向从对应的REG中读取数据,模块间不需要逻辑控制。这种方式最大优点是实现简单,但当配置寄存器太多时,需要大量触发器和布线资源,占用大量的硬件资源,所以,触发器访问方式适合配置信息不多的系统。
方式二:双端口RAM访问方式
如图2,配置寄存器组由双端口RAM(随机存取存储器,Random-Access Memory)块构成,CPU通过总线写入、修改、清除双端口RAM配置寄存器,并可通过双端口RAM B端口回读检查双端口RAM内容;处理模块M 通过M仲裁控制器,从端口A读取配置寄存器数据。
双端口RAM块可用较少的逻辑资源构造较大规模的配置寄存器,但当处理模块M较多时,为确保处理模块M正确读取,处理模块M间需要复杂的M仲裁控制器,造成系统处理复杂,成本上升。
文献1(申请号:201410034898.4)提供了一种多处理器的数据交换方法和装置,将主机的物理内存映射到通信总线上,实现了主机物理内存的共享,从机可自由读写该共享的物理内存,从而使得读写速率与通信总线的时钟频率相同。该文献主要解决的是将物理内存映射到通信总线上,主从机共享物理内存,达到减少存储延时,提高存取速度的技术问题,但是这种将内存映射到系统总线上的方法,属于双向读写,需要总线进行仲裁。
发明内容
本发明为了解决上述问题,本发明提出了一种基于一种节省硬件资源的配置寄存器访问方法。为了实现上述发明目的,本发明提供了以下技术方案:
一种节省硬件资源的配置寄存器访问方法,DMA周期循环读取双端口RAM配置寄存器,主动将配置寄存器对应的地址和数据写到DMA的地址和数据总线上,处理模块M监听DMA总线地址,等待与要求地址相同的DMA总线地址,选择接收对应的DMA总线数据,实现对配置寄存器的访问。
进一步的,配置寄存器由双端口RAM块构成,CPU通过总线写入、修改、清除双端口RAM配置寄存器,并可通过双端口RAM B端口回读检查双端口RAM内容。
进一步的,DMA控制实现将配置数据和地址主动发送到总线的数据进行算法选择。
进一步的,DMA周期循环读取双端口RAM配置寄存器的过程具体为:
步骤1:DMA初始化;
步骤2:DMA读取RAM配置寄存器,并将配置寄存器地址和数据写到DMA地址总线和DMA数据总线上;
步骤3:维持一定数据周期;
步骤4:DMA循环读取下一RAM配置寄存器;
步骤5:DMA周期循环读取,完成RAM配置寄存器在DMA总线上周期循环出现;
步骤6:DMA控制用于改变读取周期,控制循环顺序。
进一步的,处理模块M工作过程为:
模块M读取监听DMA总线地址;
DMA总线地址与模块M要求地址比较,不相符说明DMA总线传输的不是M模块数据,M模块等待,直到下一周期要求地址出现;相符说明DMA总线传输的是M模块数据,此时M读取DMA数据总线上数据。
进一步的,处理模块M的最大读取延迟取决于 DMA循环读取周期。
与现有技术相比,本发明的有益效果:
本发明采用DMA周期循环读取配置寄存器,将配置寄存器写到DMA总线上,处理模块等待,选择接收对应的DMA总线数据,是单收处理,不需要总线仲裁;同时这种配置寄存器访问方式不需要模块间的读取控制,也不需要复杂的总线仲裁,大大节约了硬件资源。
附图说明
图1触发器访问方式示意图。
图2双端口RAM访问方式示意图。
图3本发明访问方法示意图。
图4 本发明时序状态示意图。
具体实施方式
下面结合具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
本发明的目的是提供一种节省硬件资源的配置寄存器访问方法,采用DMA(直接内存存取,Direct Memory Access)周期循环读取双端口RAM配置寄存器,主动将配置寄存器对应的地址和数据写到DMA的地址和数据总线上,处理模块监听DMA总线地址,等待与要求地址相同的DMA总线地址,选择接收对应的DMA总线数据,这样就实现了配置寄存器的访问。
结合图3,本发明实现技术方案为:
1)、配置寄存器由双端口RAM块构成,CPU通过总线写入、修改、清除双端口RAM配置寄存器,并可通过双端口RAM的 B端口回读检查双端口RAM内容;其中,RAM块大小由配置信息量确定,如1024*16 RAM块可以存放1024个16位配置寄存器;
2)、DMA周期循环读取双端口RAM 配置寄存器,主动将配置寄存器对应的地址和数据写到DMA地址总线和数据总线上;
3)、处理模块监听等待,出现要求地址相同的DMA总线地址时,处理模块接收对应的DMA总线数据;
4)、DMA控制实现将配置数据和地址主动发送到总线的数据进行算法选择。
其中,DMA 周期循环读取双端口RAM 配置寄存器如下:
步骤1:DMA初始化;
步骤2:DMA读取RAM配置寄存器,并将配置寄存器地址和数据写到DMA地址总线和DMA数据总线上;
步骤3:维持一定数据周期;
步骤4:DMA循环读取下一RAM配置寄存器;
步骤5:DMA周期循环读取,完成RAM配置寄存器在DMA总线上周期循环出现;
步骤6:DMA控制用于改变读取周期,控制循环顺序。
结合图4,处理模块M工作过程如下:
处理模块M1-Mn代表对配置寄存器1-n的数据接收处理。
DMA地址总线A1-An和数据总线D1-Dn上周期循环同时出现配置寄存器1-n的地址和数据。
处理模块M2读取监听DMA地址总线;DMA地址总线与模块M2要求地址比较,不相符说明DMA总线传输的不是模块M2的数据,模块M2等待,直到下一周期要求地址出现;相符说明DMA总线传输的是模块M2数据,此时模块M2读取DMA数据总线上的数据。
其中,模块M1-Mn的最大读取延迟取决于 DMA循环读取周期。
一般配置寄存器很少改变,业务处理实时性要求不高,模块M1-Mn处理延时不会影响业务处理。
本发明采用DMA总线周期循环访问方式,配置寄存器占用硬件资源少,处理模块间不需要仲裁控制,实现简单,成本低,具有典型应用价值。
Claims (6)
1.一种节省硬件资源的配置寄存器访问方法,其特征在于,DMA周期循环读取双端口RAM配置寄存器,主动将配置寄存器对应的地址和数据写到DMA的地址和数据总线上,处理模块M监听DMA总线地址,等待与要求地址相同的DMA总线地址,选择接收对应的DMA总线数据,实现对配置寄存器的访问。
2.根据权利要求1所述节省硬件资源的配置寄存器访问方法,其特征在于,配置寄存器由双端口RAM块构成,CPU通过总线写入、修改、清除双端口RAM配置寄存器,并可通过双端口RAM B端口回读检查双端口RAM内容。
3.根据权利要求1所述节省硬件资源的配置寄存器访问方法,其特征在于,DMA控制实现将配置数据和地址主动发送到总线的数据进行算法选择。
4.根据权利要求1所述节省硬件资源的配置寄存器访问方法,其特征在于,DMA周期循环读取双端口RAM配置寄存器的过程具体为:
步骤1:DMA初始化;
步骤2:DMA读取RAM配置寄存器,并将配置寄存器地址和数据写到DMA地址总线和DMA数据总线上;
步骤3:维持一定数据周期;
步骤4:DMA循环读取下一RAM配置寄存器;
步骤5:DMA周期循环读取,完成RAM配置寄存器在DMA总线上周期循环出现;
步骤6:DMA控制用于改变读取周期,控制循环顺序。
5.根据权利要求1所述节省硬件资源的配置寄存器访问方法,其特征在于,处理模块M工作过程为:
模块M读取监听DMA总线地址;
DMA总线地址与模块M要求地址比较,不相符说明DMA总线传输的不是M模块数据,M模块等待,直到下一周期要求地址出现;相符说明DMA总线传输的是M模块数据,此时M读取DMA数据总线上数据。
6.根据权利要求5所述节省硬件资源的配置寄存器访问方法,其特征在于,处理模块M的最大读取延迟取决于 DMA循环读取周期。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410368236.0A CN104123254B (zh) | 2014-07-30 | 2014-07-30 | 一种节省硬件资源的配置寄存器访问方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410368236.0A CN104123254B (zh) | 2014-07-30 | 2014-07-30 | 一种节省硬件资源的配置寄存器访问方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104123254A true CN104123254A (zh) | 2014-10-29 |
CN104123254B CN104123254B (zh) | 2017-01-25 |
Family
ID=51768670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410368236.0A Active CN104123254B (zh) | 2014-07-30 | 2014-07-30 | 一种节省硬件资源的配置寄存器访问方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104123254B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114490464A (zh) * | 2021-12-27 | 2022-05-13 | 北京自动化控制设备研究所 | 多传感器数据同步及传输方法及脑磁探测仪 |
CN116680088A (zh) * | 2023-08-03 | 2023-09-01 | 青岛本原微电子有限公司 | 一种针对多寄存器存储的多模块同时访问系统及访问方法 |
-
2014
- 2014-07-30 CN CN201410368236.0A patent/CN104123254B/zh active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114490464A (zh) * | 2021-12-27 | 2022-05-13 | 北京自动化控制设备研究所 | 多传感器数据同步及传输方法及脑磁探测仪 |
CN114490464B (zh) * | 2021-12-27 | 2023-10-13 | 北京自动化控制设备研究所 | 多传感器数据同步及传输方法及脑磁探测仪 |
CN116680088A (zh) * | 2023-08-03 | 2023-09-01 | 青岛本原微电子有限公司 | 一种针对多寄存器存储的多模块同时访问系统及访问方法 |
CN116680088B (zh) * | 2023-08-03 | 2023-10-13 | 青岛本原微电子有限公司 | 一种针对多寄存器存储的多模块同时访问系统及访问方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104123254B (zh) | 2017-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102141971B (zh) | 具有大容量存储功能的1553b硬件定时通讯模块 | |
US8880745B2 (en) | Efficient scheduling of transactions from multiple masters | |
CN103714026B (zh) | 一种支持原址数据交换的存储器访问方法及装置 | |
CN103218329A (zh) | 数字信号处理数据传输 | |
CN105389277A (zh) | Gpdsp中面向科学计算的高性能dma部件 | |
US7970960B2 (en) | Direct memory access controller and data transmitting method of direct memory access channel | |
CN106776458B (zh) | 基于fpga和hpi的dsp间的通信装置及通信方法 | |
CN108279927A (zh) | 可调整指令优先级的多通道指令控制方法及系统、控制器 | |
CN103092806A (zh) | 基于spi数据传输时序的数据传输方法和系统 | |
CN102841869A (zh) | 一种基于fpga的多通道i2c控制器 | |
US10503410B2 (en) | Apparatus and method for enforcing timing requirements for a memory device | |
CN107066413B (zh) | 一种用于处理多个总线设备数据的方法及其总线系统 | |
CN103885900B (zh) | 数据访问处理方法、PCIe设备和用户设备 | |
CN104123254A (zh) | 一种节省硬件资源的配置寄存器访问方法 | |
US10095643B2 (en) | Direct memory access control device for at least one computing unit having a working memory | |
CN105988955B (zh) | Sdio设备及其应用的电子装置和数据传输方法 | |
CN103425434A (zh) | 一种多通道读/写ram的电路和方法 | |
US8886844B2 (en) | Efficient scheduling of read and write transactions in dynamic memory controllers | |
EP3599554B1 (en) | Improving read performance on a sata storage device behind a host bus adapter | |
CN116724287A (zh) | 一种内存控制方法及内存控制装置 | |
EP2829988B1 (en) | Storage apparatus, and system and method for executing access operations | |
CN104156331B (zh) | 一种基于fpga双口ram实现的高速数据速率匹配方法 | |
CN104836710A (zh) | 一种基于分布式系统一主多从通信的方法与装置 | |
CN103853692B (zh) | 一种基于中断判断机制的多处理器数据通讯方法 | |
CN206479978U (zh) | 一种用于处理多个总线设备数据的总线系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A method of accessing configuration register to save hardware resources Effective date of registration: 20201222 Granted publication date: 20170125 Pledgee: Bank of Chengdu science and technology branch of Limited by Share Ltd. Pledgor: CHENGDU LONGRAISE TECHNOLOGY DEVELOPMENT Co.,Ltd. Registration number: Y2020980009706 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |