FPGA_ASIC-一种高精度运动控制器IP核设计与实现
基于FPGA的ASIC设计

基于FPGA的ASIC设计基于FPGA(现场可编程门阵列)的ASIC(应用特定集成电路)设计是一种常见的设计流程,用于快速验证和验证系统级功能和性能。
FPGA 允许工程师根据特定应用的需求来编程硬件,从而提高系统设计的灵活性和可重构性。
在本文中,我们将讨论基于FPGA的ASIC设计的过程以及其优点和挑战。
ASIC设计是一种定制化的设计,旨在完全适应特定应用的要求。
与通用处理器相比,ASIC设计可以提供更高的性能,更低的功耗和更小的面积。
然而,ASIC设计的开发成本和时间通常更高,制造过程也更加复杂。
为了降低设计风险和成本,工程师通常会选择在FPGA平台上验证ASIC设计。
基于FPGA的ASIC设计可分为两个主要阶段:验证和实施。
验证阶段旨在验证设计的功能和性能,并最小化设计错误的概率。
在验证阶段,工程师使用HDL(硬件描述语言)编写设计,并使用仿真工具进行功能和时序仿真。
设计经过全面测试后,可以将其加载到FPGA中进行验证。
实施阶段旨在将验证过的设计转化为ASIC所需的物理布局和电路。
在此阶段,设计需要进行综合和布局布线。
综合是将HDL代码转换为逻辑门级电路的过程。
布局则涉及将逻辑电路映射到硬件资源上,以及确定电路元素的位置。
布线是将电路中的逻辑连接物理化的过程。
基于FPGA的ASIC设计有几个显着的优点。
首先,FPGA可从验证开始,快速迭代验证设计,从而缩短设计周期。
其次,FPGA提供了一种更灵活的开发平台,可以在设计期间进行功能和性能调整。
此外,对于小型项目,FPGA还可以免去制造和测试ASIC的成本和风险。
最后,基于FPGA的ASIC设计还可以为设计团队提供更多的实践经验,为制造期间的问题做好准备。
然而,基于FPGA的ASIC设计也面临一些挑战。
首先,FPGA平台通常比ASIC平台更昂贵,因此对于大项目,可能会导致较高的开发成本。
其次,尽管FPGA可以快速验证和协助设计,但ASIC设计的实施过程可能会很复杂。
FPGA开发全攻略——IP核

FPGA开发全攻略——IP核5.7 FPGA设计的IP和算法应用基于IP的设计已成为目前FPGA设计的主流方法之一,本章首先给出IP的定义,然后以FFT IP核为例,介绍赛灵思IP核的应用。
5.7.1 IP核综述IP(Intelligent Property) 核是具有知识产权核的集成电路芯核总称,是经过反复验证过的、具有特定功能的宏模块,与芯片制造工艺无关,可以移植到不同的半导体工艺中。
到了SOC 阶段,IP核设计已成为ASIC电路设计公司和FPGA提供商的重要任务,也是其实力体现。
对于FPGA 开发软件,其提供的IP核越丰富,用户的设计就越方便,其市场占用率就越高。
目前,IP核已经变成系统设计的基本单元,并作为独立设计成果被交换、转让和销售。
从IP核的提供方式上,通常将其分为软核、硬核和固核这3类。
从完成IP核所花费的成本来讲,硬核代价最大;从使用灵活性来讲,软核的可复用使用性最高。
( 这部分内容前面已经阐述,这里再重申一下)软核(Soft IP Core)软核在EDA设计领域指的是综合之前的寄存器传输级(RTL) 模型;具体在FPGA设计中指的是对电路的硬件语言描述,包括逻辑描述、网表和帮助文档等。
软核只经过功能仿真,需要经过综合以及布局布线才能使用。
其优点是灵活性高、可移植性强,允许用户自配置;缺点是对模块的预测性较低,在后续设计中存在发生错误的可能性,有一定的设计风险。
软核是IP 核应用最广泛的形式。
固核(Firm IP Core)固核在EDA设计领域指的是带有平面规划信息的网表;具体在FPGA设计中可以看做带有布局规划的软核,通常以RTL 代码和对应具体工艺网表的混合形式提供。
将RTL描述结合具体标准单元库进行综合优化设计,形成门级网表,再通过布局布线工具即可使用。
和软核相比,固核的设计灵活性稍差,但在可靠性上有较大提高。
目前,固核也是IP核的主流形式之一。
硬核(Hard IP Core)硬核在EDA 设计领域指经过验证的设计版图;具体在FPGA 设计中指布局和工艺固定、经过前端和后端验证的设计,设计人员不能对其修改。
基于FPGAIP核的FIR设计与实现

佳的频率特性和衰耗特性 , 无论通带还是阻带都
较 为平坦 , 过渡 带窄 , 好地接 近理 想滤波 器 的响 更
应。
须确 保 已 经 安 装 了 D P B i e 具 。进 入 I S ul r工 d P
( 方通 用 电子集 团有 限 公司微 电子部 苏州 256 ) 北 113 摘 要 随着数 字 电路技 术 的 高速 发展 和 高性 能 F G 的普及 , PA 为解 决二 频 机械 抖 动偏 频激 光 陀
螺 中的 因机械 抖动 带 来的信 号噪 声提 供 了新 的选择 和方 法 。FR滤 波 器可 以满足 系统对 幅度 和相 位特 I 性 的严 格要 求 , 免 模 拟 滤 波 器 的温 漂 和 随机 噪 声 等 问题 , 避 而且 具 有精 确 的线性 相 位 和稳 定 的 系统。
免费 I oe 同 时结 合 Ma w rs 司 的 MA . P C r, t ok 公 h T
数字低通滤波器是对高速采样 的数据进行滤
波, 滤除掉 机抖 陀螺 输 出信 号 中随机 抖 动 和其 他 因素 造成 的高频 噪声 。 由于二 频机抖 陀螺 的抖动 频 率一 般 在 30 z~ 0 H 左 右 , 速 采 样 频 率 0H 40 z 高 选 为 1H , 以满 足 采 样定 理 要 求 。1H k z可 k z的定 时采样信 号可 以在 F G 内对 时钟使 能 得到 。数 PA 字低通滤 波器 采用 FR中的等波纹 逼近法 进行设 I 计, 设计 指标 : 采样 频率 为 1H , k z通带下 限截止频 率为 10 z阻带 上 限截 止频 率 为 30 z且 通 带 0H, 0H , 内波 纹 小 于 0 00d 阻 带 内 幅 度 衰 减 大 于 . 0 1B,
低硬件成本256点FFT处理器的IP核设计

低硬件成本256点FFT处理器的IP核设计于建;范浩阳【期刊名称】《数据采集与处理》【年(卷),期】2022(37)4【摘要】设计了一种基于现场可编程门阵列(Field programmable gate array,FPGA)的低硬件成本256点快速傅里叶变换(Fast Fourier transform,FFT)处理器的IP核。
采用按频率抽取的基⁃24算法和单路延迟负反馈(Single⁃path delay feedback,SDF)流水线架构用于减少旋转因子的复数乘法运算复杂度。
为了降低硬件成本,提出了一种串接正则有符号数(Canonical signed digit,CSD)常数乘法器取代常用的布斯乘法器用来完成旋转因子W^(i)_(256)与对应序列的复数乘法运算,同时这种乘法器还能够移除存储旋转因子系数的只读存储器(Read only memory,ROM)。
该处理器IP核基于QUARTUS PRIME平台进行综合,在Cyclone 10LP FPGA上实现。
结果显示,该FFT处理器最高工作频率为100 MHz,对于24位符号数FFT运算,逻辑单元(Logic elements,LEs)使用量与记忆体位(Memory bits,MBs)使用量仅为3978 LEs和6456 MBs。
【总页数】9页(P917-925)【作者】于建;范浩阳【作者单位】河北民族师范学院物理与电子工程学院【正文语种】中文【中图分类】TN47【相关文献】1.一种基于DAB正交频分复用系统的变长度高速FFT处理器的硬件设计2.应用于UWB系统的低硬件开销128点FFT处理器设计3.基于CORDIC算法2K点FFT 处理器的硬件设计4.面向OFDM应用的低硬件开销低功耗64点FFT处理器设计5.高吞吐率可配置FFT处理器IP核的设计与VLSI实现因版权原因,仅展示原文概要,查看原文内容请购买。
fpga ip核设计流程

fpga ip核设计流程
FPGA IP核设计流程一般包括以下步骤:
1. 需求分析:明确IP核的设计要求和功能,为后续设计提供指导。
2. 架构设计:根据需求分析,设计IP核的架构,包括数据路径、控制逻辑、接口等。
3. 硬件描述语言编写:根据架构设计,使用硬件描述语言(如Verilog或VHDL)编写IP核的代码。
4. 仿真测试:使用仿真工具对IP核代码进行测试,确保其功能正确。
5. 综合:将硬件描述语言代码转化为FPGA上的逻辑门级网表,以便于布局布线。
6. 布局布线:将综合后的网表在FPGA上布局布线,生成配置文件。
7. 配置加载:将配置文件下载到FPGA中,进行实际测试验证。
8. 文档编写:编写IP核的使用手册和技术文档,便于用户使用和维护。
以上是FPGA IP核设计的基本流程,具体实现过程可能会因不同的设计需
求和工具而有所差异。
IP CORE(IP核)简介

IP CORE(IP核)简介2008-05-31 16:57随着FPGA技术的发展,芯片的性能越来越强、规模越来越大、开发的周期越来越长,使得芯片设计业正面临一系列新的问题:设计质量难以控制,设计成本也越来越高。
IP(Intelligence Property)技术解决了当今芯片设计业所面临的难题。
IP是指可用来生成ASIC和PLD的逻辑功能块,又称IP核(IP Core)或虚拟器件(VC)。
设计者可以重复使用已经设计并经过验证的IP核,从而专注于整个系统的设计,提高设计的效率和正确性,降低成本。
目前数字IP已得到了充分的发展,可以很方便地购买到IP核并整合到SoC的设计中。
IP核是指用于产品应用专用集成电路(ASIC)或者可编辑逻辑器件(FPGA)的逻辑块或数据块。
将一些在数字电路中常用但比较复杂的功能块,如FIR滤波器,SDRAM控制器,PCI接口等等设计成可修改参数的模块,让其他用户可以直接调用这些模块,这样就大大减轻了工程师的负担,避免重复劳动。
随着CPLD/FPGA的规模越来越大,设计越来越复杂,使用IP核是一个发展趋势。
理想地,一个知识产权核应该是完全易操作的--也就是说,易于插入任何一个卖主的技术或者设计方法。
通用异步接发报机(UARTs)、中央处理器(CPUs)、以太网控制器和PCI接口(周边元件扩展接口)等都是知识产权核的具体例子。
知识产权核心分为三大种类:硬核,中核和软核。
硬件中心是知识产权构思的物质表现。
这些利于即插即用应用软件并且比其它两种类型核的轻便性和灵活性要差。
像硬核一样,中核(有时候也称为半硬核)可以携带许多配置数据,而且可以配置许多不同的应用软件。
三者之中最有灵活性的就是软核了,它存在于任何一个网络列表(一列逻辑门位和互相连接而成的集成电路)或者硬件描述语言(HDL)代码中。
目前许多组织像免费的IP项目和开放核一类的都联合起来共同致力于促进IP核的共享。
ip核(ip core)是指专用集成电路芯片知识产权IP核是指用于产品应用专用集成电路(ASIC)或者可编辑逻辑器件(FPGA)的逻辑块或数据块。
FPGA原型验证过程中的ASIC到FPGA的代码转换技术

原型验证过程中的ASIC到FPGA的代码转换技术对ASIC设计进行FPGA原型验证时,由于物理结构不同,ASIC的代码必须进行一定的转换后才能作为FPGA的输入。
现代集成电路设计中,芯片的规模和复杂度正呈指数增加。
尤其在ASIC设计流程中,验证和调试所花的时间约占总工期的70%。
为了缩短验证周期,在传统的仿真验证的基础上,涌现了许多新的验证手段,如断言验证、覆盖率驱动的验证,以及广泛应用的基于现场可编程器件(FPGA)的原型验证技术。
采用FPGA原型技术验证ASIC设计,首先需要把ASIC设计转化为FPGA设计。
但ASIC 是基于标准单元库,FPGA则是基于查找表,ASIC和FPGA物理结构上的不同,决定了ASIC代码需要一定的修改才能移植到FPGA上。
但应该注意到这只是由于物理结构不同而对代码进行的转换,并不改变其功能,因此对代码的这种修改只能限制在一定范围内。
基本原理基于FPGA原型验证的流程由于FPGA的可编程特性,基于FPGA的原型技术已经被广泛采用。
和仿真软件相比,FPGA的硬件特性可以让设计运行在较高的频率上,加速仿真。
另一方面,可以在ASIC芯片设计前期并行设计外围电路及应用软件,缩短了芯片验证周期。
FPGA原型验证和其他验证方法是不同的,任何一种其他验证方法都是ASIC验证中的一个环节,而FPGA验证却是一个过程。
由于FPGA与ASIC在结构、性能上各不相同,ASIC是基于标准单元库,FPGA用的是厂商提供的宏单元模块,因此首先要进行寄存器传输级(RTL)代码的修改。
然后进行FPGA器件映射,映射工具根据设置的约束条件对RTL代码进行逻辑优化,并针对选定的FPGA器件的基本单元映射生成网表。
接着进行布局布线,生成配置文件和时序报告等信息。
当时序能满足约束条件时,就可以利用配置文件进行下载。
如果时序不能满足约束,可通过软件报告时序文件来确认关键路径,进行时序优化。
可以通过修改约束条件,或者修改RTL代码来满足要求。
FPGA和ASIC比较谈

ASIC与FPGA比较谈专用集成电路(ASIC)采用硬接线的固定模式,而现场可编程门阵列(FPGA)则采用可配置芯片的方法,二者差别迥异。
可编程器件是目前的新生力量,混合技术也将在未来发挥作用。
与其他技术一样,有关ASIC技术过时的报道是不成熟的。
新的ASIC产品的数目可能有大幅度下降,但其销售额仍然相当高,尤其是在亚太区。
此外,采用混合式方法,如结构化ASIC,也为该技术注入了新的活力。
同时,FPGA(和其他可编程逻辑器件)也在发挥作用,赢得了重要的大众市场,并从低端应用不断向上发展。
每种技术都有它的支持者。
一般来说,ASIC用于大型项目,而对于需要快速投放市场且支持远程升级的小型项目,FPGA则更为适合。
ASIC和FPGA供应商对这两种技术孰优孰劣不能达成共识,对适合的应用领域也持不同看法。
上述技术及其衍生技术将可能在今后一段时间内长期存在。
Altera Corp的高密度FPGA高级总监David Greenfield指出,FPGA技术的主要优势仍是产品投放市场的时间较短。
他说:“在目前新增的设计方案中,对FPGA的选择倾向超过ASIC。
ASIC技术有其价值所在,它的性能、密度和单位容量都相当出色,不过随着FPGA的发展和ASIC的开发成本不断上升,将会导致ASIC的市场份额不断缩小。
”在上述趋势之后发挥作用的,正是FPGA在性能、密度和制造成本上的发展。
Greenfield指出,高性能曾经是ASIC超出FPGA的优势,当时FPGA在性能和功能上都较逊色。
随着芯片的制造工艺从180nm发展到130nm甚至90nm,上述情况发生了很大变化,现在FPGA的性能已经能够满足大多数应用的需要(要求最高的应用除外),而密度水平则达到逻辑设计的80%。
他解释说:“某些系统设计师也认识到,ASIC的市场领域在于极高性能/密度的产品,这种市场领域风险非常大。
NRE (非重复性工程设计)和开发成本对这种设备而言是最高的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一种高精度运动控制器IP核设计与实现闫永志 王宏 杨志家刘鹏(中国科学院沈阳自动化研究所,辽宁 沈阳 110016)(中国科学院研究生院,北京 100039)摘 要:本文提出了一种运动控制器软IP的设计方案,该控制器可以控制4个轴的步进电机或数字伺服电机,可以进行各轴独立的定位控制、速度控制,也可任选2轴或3轴来进行直线、圆弧和位模式插补。
文中介绍了其系统结构、基本功能和插补算法。
设计最终形成软IP核,并在Xilinx公司的Vertex2系列FPGA 中予以实现和验证。
关键词:运动控制 插补 IP ASIC FPGA中图法分类号: TN4文献标识码:ADesign and Implementation of High Precision Motion Controller IPYongzhi Yan1,2 Hong Wang1 Zhijia Yang1Peng Liu11( Shenyang Institute of Automation , Chinese Academy of Sciences, Liaoning Shenyang, 110016) 2( Graduate School of the Chinese Academy of Sciences, Beijing, 100039)Abstract: This paper designs a motion controller soft IP, it can control 4 axes of either stepper motor or pulse type servo drivers for position, speed, and interpolation. Any 2 or 3 axes can be selected to perform linear, circular, and bit pattern interpolation. We describe structure, function and interpolation arithmetic of the motion controller. Finally, the montion controller soft IP is implemented and verified in Xilinx Vertex2 FPGA.Key words:motion control interpolation IP ASIC FPGA1引言随着计算机、控制理论、微电子等技术的迅速发展,运动控制技术取得了巨大的进步,已成为推动新的产业革命的关键技术。
简单地说,运动控制就是对机械运动部件的位置、速度等进行实时的控制管理,使其按照预期的运动轨迹和规定的运动参数进行运动[1]。
早期的运动控制技术主要是伴随着数控技术、机器人技术和工厂自动化技术发展而来的。
近年来,随着运动控制技术的不断进步和完善,运动控制器作为一个独立的工业自动化控制类产品,已经应用在越来越多的产业领域中。
目前基于PC(Personal Computer)总线的以DSP(Digital Signal Processing)或专用运动控制ASIC(Application Specific Integrated Circuit)作为核心的开放式运动控制技术已经成为主流。
将PC 机的信息处理能力和开放式的特点与运动控制器的运动轨迹控制能力有机地结合在一起,具有信息处理能力强、开放程度高、运动轨迹控制准确、通用性好的特点[2]。
本设计使用verilog硬件描述语言设计了一种带有通用的PC机总线接口的运动控制器软IP(Intellectual Property)核,并通过FPGA(Field Programmable Gate Array)予以实现和验证。
2系统结构和基本功能本设计是一个用于实现4轴运动控制的控制器,通过这个控制器可以控制由步进电机或由数字脉冲型伺服电机驱动的4个轴的位置、速度和插补。
该系统由5个部分组成,分别是(1)命令/数据处理模块(2)插补控制模块(3)4个轴的运动控制模块(4)中断信号发生模块(5)脉冲分配模块。
图1为该运动控制器的系统结构图。
该运动控制器的主要功能如下:(1)独立的四轴驱动:可以分别控制四个电机驱动轴的运动,四个轴的功能完全相同。
(2)驱动速度控制:驱动脉冲的输出速度可以从1PPS(Pulses Per Second)到4MPPS,每个驱动轴可以进行定速驱动、直线加/减速驱动、S曲线加/减速驱动。
(3)2轴/3轴直线插补驱动:可以选择4个轴中的任何2个或3个轴进行直线插补驱动。
(4)圆弧插补驱动:可以选择4个轴中的任何2个轴进行圆弧插补驱动。
(5)位模式插补驱动:可以选择4个轴中的任何2个或3个轴进行位模式插补驱动。
这种插补的数据由上位PC机进行计算,并将结果写入运动控制器,使其在预置的驱动速度下连续输出插补脉冲,这样可以产生任何形状的插补曲线。
(6)16位上位机总线:通过此接口与上位PC机进行数据交换。
Figure 1 Structure of the motion controller图1 系统结构3插补模块的设计该控制器是一个4轴运动控制器,它可以实现任意2轴或3轴的直线插补、任意2轴的圆弧插补和任意2轴或3轴的位模式插补。
插补模块的核心部分是直线和圆弧的插补算法的设计,本设计中采用的是一种改进的最小偏差算法,该算法在已有的最小偏差理论[3][4][5][6]上加以改进使偏差公式计算简单、插补精度更高。
3.1直线插补算法平面上第一象限内的任意直线,已知其起点和终点坐标,直线方程为y = kx的标准形式。
当k < 1时,对于直线上的点,其横坐标大于纵坐标。
按朝着偏差减小方向运动的原则,动点的进给只有两种情况:一种是沿x方向进给一步,另一种是沿x,y方向同时进给一步。
当k > 1时,对于直线上的点,其纵坐标大于横坐标。
因此,动点的进给也有两种情况:一种是沿y方向进给一步;另一种是沿x,y方向同时进给一步。
事实上,对于直线斜率k > 1的情况,可以通过将直线方程的x与y的位置互换,变换成x = 1/k×y的形式,使得直线斜率1/k < 1,所以只分析第一象限直线k < 1的情况。
如图2所示,直线OA在第一象限内,其方程y = kx,斜率k < 1。
设OA直线上与加工动点P i (x i , y i)相对应的点为P’i (x i , y’i),则加工动点P i (x i , y i)与理想直线OA上对应点P’i (x i , y’i)的纵向偏差为△y = y i – y’i = y i – kx i。
Figure 2 Principle of linear interpolation arithmetic图2 直线插补算法原理令偏差判别函数F i =y i – kx i,则:(1)当F i = y i – kx i> 0时,动点P在直线OA的上方,则向x方向进给一步,有:x i+1 = x i + 1,y i+1 = y i,新偏差F i+1 = y i+1 – kx i+1 = y i – k (x i + 1) = F i – k;(2)当F i = y i – kx i≤ 0时,动点P在直线OA的下方,则向x,y方向同时进给一步,有:x i+1 = x i + 1,y i+1 = y i + 1,新偏差F i+1 = y i+1 – kx i+1 = y i + 1 – k (x i + 1) = F i + 1 – k;上面是第一象限直线k < 1时的插补算法。
对于k >1的直线,只需将上述算法中的x,y坐标互换即可。
至于其它象限的直线,通过适当的坐标变换同样可以实现插补运算。
在进行插补运算之前,首先要经过斜率判断,也就是对直线的终点坐标x e,y e的大小进行比较,以判断直线斜率是否小于1。
对于不小于1的情况,则要将直线方程进行坐标变换,然后才开始进行插补运算。
3.2圆弧插补算法考虑典型的第一象限逆圆弧(对于其它象限的情况可以通过相应得坐标变化得到),如图3所示,圆心在原点,半径为R,起点为(x0, y0),终点为(x e, y e)。
设第i步插补点为P i (x i, y i),此时加工偏差公式为:F i = x i2 + y i2 – R2则第i + 1步可能的插补点有A (x i – 1, y i + 1),B i(x i – 1, y i),C (x i , y i + 1)。
它们与理想圆弧间的偏差函数分别为:F(A) = (x i – 1)2 + (y i + 1)2 – R2 = F i – 2x i + 2y i + 2F(B) = (x i – 1)2 + y i2 – R2 = F i – 2x i + 1F(C) = x i + (y i + 1)2 – R2=F i + 2y i + 1为选择三点中与理想圆弧偏差最小的点,取判别函数为:F i’ = F(A) = F i – 2x i + 2y i + 2当F i’ < 0时,点A在圆内,新插补点应为C点,即向y轴正方向进给一步。
新偏差及坐标为:F i+1 = F(C) = F i + 2y i + 1,x i+1 = x i ,y i+1 = y i + 1当F i’≥0时,点A在圆上或圆外,下一插补点应在A和B中选择。
为此,进—步取二次判别函数:F’’ = F(B) = F i – 2x i + 1若F i’’≥ 0,说明点B在圆上或圆外,则选B,为第i+1步插补点,即向x轴负方向进给一步。
新的偏差及坐标为:F i+1 = F i’’ ,x i+1 = x i – 1,y i+1 = y i若F i’’≤ 0,说明点B在圆内,则应选A,为第i + 1步插补点,即向x轴负方向和y轴正方向各进给一步:F i+1 = F i’ ,x i+1 = xi – 1,y i+1 = y i + 1对圆弧起点(x0, y0),应有x02 + y02 = R2,从而偏差初始值为F0 = 0。
Figure 3 Principle of circular interpolation arithmetic图3 圆弧插补算法原理3.3位模式插补模块位模式插补驱动是把上位PC计算的插补数据以数据包的方式并行接收后以指定的驱动速度串行输出插补脉冲[7][8]。
图4表示位模式插补的第1轴正方向寄存器构成,BP1P寄存器是从上位PC接收位模式数据的16位寄存器,用来接收负方向位模式数据的是BP1M寄存器,其寄存器结构与图4相同。