CN110888601B - 一种基于ram ip核的移位寄存器实现方法 - Google Patents
一种基于ram ip核的移位寄存器实现方法 Download PDFInfo
- Publication number
- CN110888601B CN110888601B CN201911111757.7A CN201911111757A CN110888601B CN 110888601 B CN110888601 B CN 110888601B CN 201911111757 A CN201911111757 A CN 201911111757A CN 110888601 B CN110888601 B CN 110888601B
- Authority
- CN
- China
- Prior art keywords
- register
- data
- bit
- space
- ram
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Shift Register Type Memory (AREA)
- Logic Circuits (AREA)
Abstract
本发明公开了一种基于RAM IP核的移位寄存器及其实现方法,它涉及到移位寄存器实现方法,尤其涉及基于RAM IP核实现的移位寄存器方法;所述N*M bit数据长度的移位寄存器包含1个N*(M‑1)的RAM存储器,1个(N+1)*1的寄存器和2个1*(M‑1)的寄存器。通过N+2个时钟实现N*M bit寄存器空间的1bit数据移位寄存操作。本发明基于资源转移和时间换空间的设计理念,有效解决了FPGA设计中大规模移位寄存器占用逻辑资源和寄存器资源过多的问题。本发明的实现方法具有新颖性、创造性和简单实用的特点。
Description
技术领域
本发明涉及到移位寄存器实现方法,尤其涉及基于RAM IP核实现的移位寄存器方法。
背景技术
一个N*M bit的移位寄存器简单的直观设计为采用1个N*M bit的寄存器,每个时钟周期将1bit新数据移入寄存器第N*M bit空间,原移位寄存器第1bit空间数据移出,第2至N*M bit空间数据移至第1至N*M-1bit空间。在N*M较大时,该方法实现的移位寄存器消耗太多的逻辑资源和寄存器资源。FPGA设计中逻辑资源和寄存器资源通常比较紧张,而存储资源相对充足。
发明内容
有鉴于此,本发明的目的在于避免上述背景技术中的不足而提供一种基于RAM IP核的移位寄存器实现方法。本发明基于资源转移和时间换空间的设计理念,利用FPGA设计中资源相对充裕的存储资源实现移位寄存器功能,利用多个时钟周期实现1bit数据移位寄存操作。
一种基于RAM IP核的移位寄存器实现方法,用于实现N*M bit数据移位寄存,包含1个RAM存储器和3个寄存器,RAM存储器大小为N*(M-1),寄存器1大小为(N+1)*1,寄存器2和寄存器3的大小分别为1*(M-1);具体包括以下步骤:
(1)第1个时钟周期将RAM存储器中第1行数据读入寄存器2,将新的1bit数据存入寄存器1第N+1bit空间;
(2)第2个时钟周期将RAM存储器中第2行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第2行第1bit数据存入寄存器1第1bit空间;
(3)从第3个时钟周期开始依次到第N个时钟周期,每个时钟周期分别执行以下操作:第n个时钟周期将寄存器3中的数据存入RAM存储器第n-2行,将RAM存储器中第n行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第n-1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第n行第1bit数据存入寄存器1第n-1bit空间;其中,3≤n≤N;
(4)第N+1个时钟周期将寄存器3中的数据存入RAM存储器第N-1行,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N bit数据存入寄存器3第M-1bit空间,将寄存器1第N+1bit数据存入寄存器1第N bit空间;
(5)第N+2个时钟周期将寄存器3中的数据存入RAM存储器第N行;
至此完成N*M bit长度的移位寄存器一次移位。
本发明相比背景技术有如下优点:
(i)本发明提出的基于RAM IP核的移位寄存器实现方法,基于资源转移和时间换空间的设计理念,有效解决了FPGA设计中大规模移位寄存器占用逻辑资源和寄存器资源过多的问题,具有新颖性和创造性的特点。
(ii)本发明提出的基于RAM IP核的移位寄存器实现方法,实现架构简单,逻辑原理通俗易懂,具有简单、实用性强的特点。
附图说明
图1是本发明实现的移位寄存器基本结构;
图2是本发明实现步骤中第1个时钟周期后的数据状态;
图3是本发明实现步骤中第2个时钟周期后的数据状态;
图4是本发明实现步骤中第3个时钟周期后的数据状态;
图5是本发明实现步骤中第N个时钟周期后的数据状态;
图6是本发明实现步骤中第N+1个时钟周期后的数据状态;
图7是本发明实现步骤中第N+2个时钟周期后的数据状态。
具体实施方式
本发明设计的移位寄存器用于实现N*M bit数据移位寄存,利用N+2个时钟周期实现1bit数据的移位寄存。该移位寄存器包含1个N*(M-1)的RAM存储器,1个(N+1)*1的寄存器和2个1*(M-1)的寄存器,如图1所示。原移位寄存器中N*M bit数据为n,n+1,…,n+N*M-1,共N*M个,新的数据为n+N*M,经过N+2个时钟周期实现将数据n+N*M移入移位寄存器,将数据n移出移位寄存器,具体实现步骤如下:
1)第1个时钟周期将RAM中第1行数据读入寄存器2,将新的1bit数据存入寄存器1第N+1bit空间,如图2所示;
2)第2个时钟周期将RAM中第2行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第1bit数据存入寄存器3第M-1bit空间,将RAM中第2行第1bit数据存入寄存器1第1bit空间,如图3所示;
3)第3个时钟周期将寄存器3中的数据存入RAM第1行,将RAM中第3行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第2bit数据存入寄存器3第M-1bit空间,将RAM中第3行第1bit数据存入寄存器1第2bit空间,如图4所示;
4)依次类推,第N个时钟周期将寄存器3中的数据存入RAM第N-2行,将RAM中第N行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N-1bit数据存入寄存器3第M-1bit空间,将RAM中第N行第1bit数据存入寄存器1第N-1bit空间,如图5所示;
5)第N+1个时钟周期将寄存器3中的数据存入RAM第N-1行,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N bit数据存入寄存器3第M-1bit空间,将寄存器1第N+1bit数据存入寄存器1第N bit空间,如图6所示;
6)第N+2个时钟周期将寄存器3中的数据存入RAM第N行,至此完成N*M bit长度的移位寄存器一次移位,如图7所示。
本发明实现原理:本发明利用N+2个时钟实现N*M bit寄存器空间的1bit数据移位操作。新移入的1bit数据首先占用寄存器1第N+1bit空间,存储器RAM中第1行最左侧1bit数据为移出数据。存储器RAM和寄存器1共同实现N*M bit数据寄存,利用寄存器2和寄存器3实现N*M bit空间的1bit移位操作。
除上述实施步骤外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形式的技术方案,均落在本发明要求的保护范围。
Claims (1)
1.一种基于RAM IP核的移位寄存器实现方法,用于实现N*M bit数据移位寄存,其特征在于,包含1个RAM存储器和3个寄存器,RAM存储器大小为N*(M-1),寄存器1大小为(N+1)*1,寄存器2和寄存器3的大小分别为1*(M-1);具体包括以下步骤:
(1)第1个时钟周期将RAM存储器中第1行数据读入寄存器2,将新的1bit数据存入寄存器1第N+1bit空间;
(2)第2个时钟周期将RAM存储器中第2行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第2行第1bit数据存入寄存器1第1bit空间;
(3)从第3个时钟周期开始依次到第N个时钟周期,每个时钟周期分别执行以下操作:第n个时钟周期将寄存器3中的数据存入RAM存储器第n-2行,将RAM存储器中第n行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第n-1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第n行第1bit数据存入寄存器1第n-1bit空间;其中,3≤n≤N;
(4)第N+1个时钟周期将寄存器3中的数据存入RAM存储器第N-1行,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N bit数据存入寄存器3第M-1bit空间,将寄存器1第N+1bit数据存入寄存器1第N bit空间;
(5)第N+2个时钟周期将寄存器3中的数据存入RAM存储器第N行;
至此完成N*M bit长度的移位寄存器一次移位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911111757.7A CN110888601B (zh) | 2019-11-14 | 2019-11-14 | 一种基于ram ip核的移位寄存器实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911111757.7A CN110888601B (zh) | 2019-11-14 | 2019-11-14 | 一种基于ram ip核的移位寄存器实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110888601A CN110888601A (zh) | 2020-03-17 |
CN110888601B true CN110888601B (zh) | 2023-05-19 |
Family
ID=69747482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911111757.7A Active CN110888601B (zh) | 2019-11-14 | 2019-11-14 | 一种基于ram ip核的移位寄存器实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110888601B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0006804A1 (fr) * | 1978-06-26 | 1980-01-09 | Lmt Radio Professionnelle | Décodeur de précision sur la première impulsion d'une paire |
SU1619254A1 (ru) * | 1988-06-22 | 1991-01-07 | Институт кибернетики им.В.М.Глушкова | Скал рный умножитель векторов |
CN1281559A (zh) * | 1997-10-09 | 2001-01-24 | 英芬能技术公司 | 利用ram仿真移位寄存器的方法 |
CN1499758A (zh) * | 2002-11-11 | 2004-05-26 | 华为技术有限公司 | 数据流锁存装置及其方法 |
CN1945489A (zh) * | 2005-10-06 | 2007-04-11 | 三洋电机株式会社 | 串行数据输入系统 |
CN102117193A (zh) * | 2010-01-04 | 2011-07-06 | 杭州华三通信技术有限公司 | 一种实现预读式fifo的方法和预读式fifo |
CN102510329A (zh) * | 2011-09-29 | 2012-06-20 | 中国人民解放军信息工程大学 | 一种乘法器及其控制方法 |
CN102867181A (zh) * | 2012-07-27 | 2013-01-09 | 华南理工大学 | 一种用于数字图像处理的特征提取模块及遍历方法 |
CN104716954A (zh) * | 2015-03-17 | 2015-06-17 | 广东高云半导体科技股份有限公司 | 带有片上用户非易失性存储器的可编程逻辑器件 |
CN104733049A (zh) * | 2015-03-27 | 2015-06-24 | 中国电子科技集团公司第二十研究所 | 使用ram单元实现的移位寄存器 |
CN108681513A (zh) * | 2018-07-19 | 2018-10-19 | 上海艾为电子技术股份有限公司 | I2c从地址生成装置及芯片 |
CN110221807A (zh) * | 2019-06-06 | 2019-09-10 | 龙芯中科(合肥)技术有限公司 | 数据移位方法、装置、设备及计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766031B (zh) * | 2017-11-14 | 2020-06-19 | 京东方科技集团股份有限公司 | 分段式除法器、分段式除法运算方法、以及电子设备 |
-
2019
- 2019-11-14 CN CN201911111757.7A patent/CN110888601B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0006804A1 (fr) * | 1978-06-26 | 1980-01-09 | Lmt Radio Professionnelle | Décodeur de précision sur la première impulsion d'une paire |
SU1619254A1 (ru) * | 1988-06-22 | 1991-01-07 | Институт кибернетики им.В.М.Глушкова | Скал рный умножитель векторов |
CN1281559A (zh) * | 1997-10-09 | 2001-01-24 | 英芬能技术公司 | 利用ram仿真移位寄存器的方法 |
CN1499758A (zh) * | 2002-11-11 | 2004-05-26 | 华为技术有限公司 | 数据流锁存装置及其方法 |
CN1945489A (zh) * | 2005-10-06 | 2007-04-11 | 三洋电机株式会社 | 串行数据输入系统 |
CN102117193A (zh) * | 2010-01-04 | 2011-07-06 | 杭州华三通信技术有限公司 | 一种实现预读式fifo的方法和预读式fifo |
CN102510329A (zh) * | 2011-09-29 | 2012-06-20 | 中国人民解放军信息工程大学 | 一种乘法器及其控制方法 |
CN102867181A (zh) * | 2012-07-27 | 2013-01-09 | 华南理工大学 | 一种用于数字图像处理的特征提取模块及遍历方法 |
CN104716954A (zh) * | 2015-03-17 | 2015-06-17 | 广东高云半导体科技股份有限公司 | 带有片上用户非易失性存储器的可编程逻辑器件 |
CN104733049A (zh) * | 2015-03-27 | 2015-06-24 | 中国电子科技集团公司第二十研究所 | 使用ram单元实现的移位寄存器 |
CN108681513A (zh) * | 2018-07-19 | 2018-10-19 | 上海艾为电子技术股份有限公司 | I2c从地址生成装置及芯片 |
CN110221807A (zh) * | 2019-06-06 | 2019-09-10 | 龙芯中科(合肥)技术有限公司 | 数据移位方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110888601A (zh) | 2020-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104407809A (zh) | 多通道fifo缓冲器及其控制方法 | |
CN103279309A (zh) | 基于fpga的ddr控制装置及方法 | |
CN102592665A (zh) | 一种相变存储器的高速数据写入结构及写入方法 | |
CN103309626A (zh) | 实现网络芯片多读写端口存储器的方法及相应存储器 | |
US5619514A (en) | In-place present state/next state registers | |
CN102520902B (zh) | 基于单片块ram的并行写入多fifo实现方法 | |
CN110888601B (zh) | 一种基于ram ip核的移位寄存器实现方法 | |
CN101825997A (zh) | 一种异步先入先出存储器 | |
US7840885B2 (en) | Distributed ring control circuits for Viterbi traceback | |
KR100840030B1 (ko) | 프로그래머블 논리 회로 | |
CN112949229A (zh) | 超导高速存储器 | |
CN103701450B (zh) | 一种支持多值逻辑的三稳态rs触发器 | |
CN103746940B (zh) | 一种网络设备以及解包输出报文的方法 | |
CN110837354B (zh) | 基于三值逻辑运算器的msd并行加法器及其构造方法 | |
CN102789424A (zh) | 基于fpga的外扩ddr2的读写方法及基于fpga的外扩ddr2颗粒存储器 | |
CN102510286B (zh) | 变频采样方法 | |
CN110097902B (zh) | 针对同一端口的读写控制模块及方法、双端口存储器 | |
CN103607207A (zh) | 一种即插即用的多接口数据压缩设备 | |
JP5499131B2 (ja) | デュアルポートメモリおよびその方法 | |
CN218100209U (zh) | 多比特异步接口电路 | |
RU2474871C1 (ru) | Высокопараллельный спецпроцессор для решения задачи о выполнимости булевых формул | |
CN100571092C (zh) | 扰码相位偏移中伪掩码寄存器生成方法 | |
CN102684651A (zh) | 用于数字电路的信号延迟方法、装置及数字电路系统 | |
US5978295A (en) | Sequential access memories | |
CN104733049A (zh) | 使用ram单元实现的移位寄存器 |
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 |