[go: up one dir, main page]

CN103645879B - Execution controller for floating-point number division operation - Google Patents

Execution controller for floating-point number division operation Download PDF

Info

Publication number
CN103645879B
CN103645879B CN201310681170.6A CN201310681170A CN103645879B CN 103645879 B CN103645879 B CN 103645879B CN 201310681170 A CN201310681170 A CN 201310681170A CN 103645879 B CN103645879 B CN 103645879B
Authority
CN
China
Prior art keywords
operand
gate
output
floating
pulse
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.)
Expired - Fee Related
Application number
CN201310681170.6A
Other languages
Chinese (zh)
Other versions
CN103645879A (en
Inventor
蔡启仲
柯宝中
李克俭
李刚
王鸣桃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangxi University of Science and Technology
Original Assignee
Guangxi University of Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangxi University of Science and Technology filed Critical Guangxi University of Science and Technology
Priority to CN201310681170.6A priority Critical patent/CN103645879B/en
Publication of CN103645879A publication Critical patent/CN103645879A/en
Application granted granted Critical
Publication of CN103645879B publication Critical patent/CN103645879B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Feedback Control In General (AREA)
  • Bus Control (AREA)

Abstract

一种浮点数除运算执行控制器,包括浮点操作数配置控制模块、浮点数除运算器、脉冲发生分配控制器、结果输出控制模块;该执行控制器应用FPGA设计硬连接控制电路,在脉冲发生分配控制器产生的时序脉冲控制下自主完成参与运算的2个操作数的选择配置,运算结果的锁存,不需要系统对执行控制器的运算处理过程施加时序控制脉冲。该执行控制器能够实现除运算的四种处理方式,执行2个操作数都来自系统数据总线的运算,也能够执行1个操作数是上次运算的结果,避免每条指令运算结束都需要将运算结果写回的过程,并且在浮点数除法运算的过程中,系统能够并行从执行控制器读出上次运算的结果,提高了系统执行浮点数除法运算指令序列的速度。

A floating-point number division execution controller includes a floating-point operand configuration control module, a floating-point number division operator, a pulse generation distribution controller, and a result output control module; Under the control of timing pulses generated by the distribution controller, the selection and configuration of the two operands involved in the calculation and the latching of the calculation results are completed independently, without the need for the system to apply timing control pulses to the operation process of the execution controller. The execution controller can realize four processing methods of division operation, execute two operands from the system data bus, and can also execute one operand is the result of the last operation, avoiding the need to transfer the instruction to the end of each instruction operation. The process of writing back the operation result, and in the process of floating-point number division operation, the system can read the result of the last operation from the execution controller in parallel, which improves the speed of the system to execute the sequence of floating-point number division operation instructions.

Description

浮点数除运算执行控制器 Floating-point division execution controller

技术领域 technical field

本发明涉及一种浮点数除运算执行控制器,尤其涉及一种基于采用FPGA并行操作电路硬连接的浮点数除运算控制电路及其时序控制方法。 The invention relates to a floating-point number division operation execution controller, in particular to a floating-point number division operation control circuit and a timing control method based on the hard connection of an FPGA parallel operation circuit.

背景技术 Background technique

随着现代科学技术对数据运算精度要求的不断提高和数值运算范围的不断扩大,使得浮点运算的应用越来越多,越来越重要。在微处理器的指令系统中,浮点数除法指令用于实现2个32位符合IEEE754标准的浮点数除法运算,其浮点数除运算器的设计通常采用流水线执行的方式,将运算过程分为若干模块,在微处理器控制部件发出的时序脉冲的控制下,多条浮点数除法运算指令按照模块顺序执行,流水线中的每条指令运算结束都需要将运算结果写回。但对于所执行的浮点数除法指令需要应用上一条运算指令的运算结果作为操作数的指令,则浮点数除法运算的流水线操作失去作用,影响了浮点数除法运算指令执行的速度,而通常很多运算都需要应用上次的运算结果作为本次运算的操作数;除法需要实现上次运算结果/操作数,或操作数/上次运算结果。例如有多个连续的除法运算,比如7个操作数,每次运算需要应用上次除法运算的运算结果作为操作数,需要6条浮点数除法运算指令予以实现,执行这6条指令需要将运算结果写回6次,向浮点数除运算器传输操作数12次,需要按照数据传输的时序要求变换传输操作数的地址和写回运算结果的地址,运算结果作为操作数传送给浮点数除法运算的一个输入端和运算结果写回的过程是分时处理的,不利于进一步提高算术运算类指令执行的速度。 With the continuous improvement of modern science and technology on the accuracy of data operations and the continuous expansion of the range of numerical operations, the application of floating-point operations has become more and more important. In the instruction system of the microprocessor, the floating-point number division instruction is used to realize the division operation of two 32-bit floating-point numbers conforming to the IEEE754 standard. Module, under the control of timing pulses issued by the microprocessor control unit, multiple floating-point number division instructions are executed in the order of the modules, and the operation result needs to be written back after the operation of each instruction in the pipeline. However, for the executed floating-point number division instruction that needs to use the operation result of the previous operation instruction as an instruction, the pipeline operation of the floating-point number division operation loses its effect, which affects the execution speed of the floating-point number division operation instruction, and usually many operations Both need to apply the last operation result as the operand of this operation; division needs to realize the last operation result/operand, or operand/last operation result. For example, if there are multiple continuous division operations, such as 7 operands, each operation needs to use the operation result of the last division operation as the operand, and 6 floating-point number division operation instructions are required to implement it. To execute these 6 instructions, the operation needs to be The result is written back 6 times, and the operand is transmitted to the floating-point number division operator 12 times. It is necessary to change the address of the transmission operand and the address of the write-back operation result according to the timing requirements of data transmission, and the operation result is sent to the floating-point number division operation as an operand. The process of writing back an input terminal and the operation result is processed in a time-sharing manner, which is not conducive to further improving the execution speed of arithmetic operation instructions.

发明内容 Contents of the invention

本发明的目的在于提供一种能够自主完成浮点数除法运算功能的浮点数除运算执行控制器;该浮点数除运算执行控制器应用FPGA设计硬连接控制电路,操作数是32位符合IEEE754标准的浮点数,除运算的2个操作数或者都来自系统数据总线,或者其中的1个操作数是上次运算结果的运算,能够执行上次运算结果/操作数、操作数/上次运算结果、第1个操作数/第2个操作数、第2个操作数/第1个操作数的除法运算,其操作数的选择配置在执行控制器内部时序的控制下自主完成,运算处理过程不需要系统施加时序控制脉冲,并且在浮点数除法运算的过程中,系统能够从浮点除运算执行控制器读出上次运算的结果,以克服已有技术的不足之处。 The object of the present invention is to provide a kind of floating-point number division execution controller that can independently complete the floating-point number division operation function; the floating-point number division operation execution controller uses FPGA to design hard-wired control circuits, and the operand is 32 bits that meet the IEEE754 standard. For floating-point numbers, the two operands of the division operation either come from the system data bus, or one of the operands is the operation of the last operation result, and can execute the last operation result/operand, operand/last operation result, The division operation of the first operand/second operand, the second operand/the first operand, the selection and configuration of the operands are completed independently under the control of the internal sequence of the execution controller, and the operation process does not need The system applies timing control pulses, and in the process of floating-point number division, the system can read the result of the last operation from the floating-point division execution controller, so as to overcome the shortcomings of the prior art.

解决上述技术问题的技术方案是:一种浮点数除运算执行控制器,用于实现2个32位符合IEEE754标准的浮点数除法运算,包括浮点操作数配置控制模块、浮点数除运算器、脉冲发生分配控制器和结果输出控制模块; The technical solution for solving the above-mentioned technical problems is: a floating-point number division operation execution controller, which is used to realize two 32-bit floating-point number division operations conforming to the IEEE754 standard, including a floating-point operand configuration control module, a floating-point number division operator, Pulse generation distribution controller and result output control module;

所述浮点操作数配置控制模块与浮点数除运算器、脉冲发生分配控制器、结果输出控制模块连接; The floating-point operand configuration control module is connected with the floating-point number division operator, the pulse generation distribution controller, and the result output control module;

所述浮点数除运算器还与结果输出控制模块连接; The floating-point number division operator is also connected with the result output control module;

所述脉冲发生分配控制器还与结果输出控制模块连接; The pulse generation distribution controller is also connected with the result output control module;

所述浮点操作数配置控制模块按照操作数类型和运算方式配置浮点数除运算器的操作数1是来自于上次的运算结果,还来自于系统数据总线DB的浮点操作数,在脉冲发生分配控制器输出的时序脉冲控制下,完成浮点数除运算器输入的操作数1的选择,及操作数1和操作数2的配置和锁存; The floating-point operand configuration control module configures the floating-point number division operator according to the operand type and the operation mode. The operand 1 is from the last operation result, and also from the floating-point operand of the system data bus DB. Under the control of the timing pulse output by the distribution controller, the selection of operand 1 input by the floating-point number division operator, and the configuration and latching of operand 1 and operand 2 are completed;

所述浮点数除运算器对浮点操作数配置控制模块输出的操作数1和操作数2进行运算,输出除法运算结果; The floating-point number division operator performs operations on the operand 1 and the operand 2 output by the floating-point operand configuration control module, and outputs the result of the division operation;

所述脉冲发生分配控制器在满足启动工作的条件下,按照操作数的类型,发出操作数1和操作数2配置的时序脉冲,浮点数除运算器运算结果的锁存信号,以及除法运算结束信号;所述脉冲发生分配控制器在满足循环启动的条件下,自动启动脉冲发生分配控制器的工作; The pulse generation distribution controller, under the condition of satisfying the start-up work, sends out the timing pulse configured by operand 1 and operand 2 according to the type of operand, the latch signal of the operation result of the floating-point number division operator, and the end of the division operation signal; the pulse generation distribution controller automatically starts the work of the pulse generation distribution controller under the condition of satisfying the cycle start;

所述结果输出控制模块在脉冲发生分配控制器输出的结果锁存信号的作用下,将除法运算结果予以锁存,判断除法运算结果是否异常,系统能够读出除法运算结果。 The result output control module latches the result of the division operation under the action of the result latch signal output by the pulse generation distribution controller, and judges whether the result of the division operation is abnormal, and the system can read the result of the division operation.

其进一步技术方案是:所述浮点操作数配置控制模块包括选通器、运算结果寄存器、操作数寄存器、操作数交换器、非门Ⅰ、或门Ⅰ、或门Ⅱ和与门Ⅰ; Its further technical solution is: the floating-point operand configuration control module includes a strobe, an operation result register, an operand register, an operand switch, a NOT gate I, an OR gate I, an OR gate II, and an AND gate I;

所述选通器的一个输入端与系统数据总线DB连接,另一个输入端与结果输出控制模块连接,输出端与运算结果寄存器的输入端连接,选通控制输入端与系统的操作数类型输入线连接; One input end of the strobe is connected to the system data bus DB, the other input end is connected to the result output control module, the output end is connected to the input end of the operation result register, and the strobe control input end is connected to the operand type input of the system line connection;

所述运算结果寄存器的锁存脉冲输入端与脉冲发生分配控制器连接,输出端与操作数交换器的交换数1输入端连接; The latch pulse input end of the operation result register is connected to the pulse generation distribution controller, and the output end is connected to the exchange number 1 input end of the operand switcher;

所述操作数寄存器的输入端和系统数据总线DB连接,锁存脉冲输入端和与门Ⅰ的输出端连接,输出端与操作数交换器的交换数2输入端连接; The input end of the operand register is connected to the system data bus DB, the latch pulse input end is connected to the output end of the AND gate 1, and the output end is connected to the exchange number 2 input end of the operand switcher;

所述操作数交换器的交换控制输入端与系统的运算方式输入线连接;操作数1输出端与浮点数除运算器的操作数1输入端连接,操作数2输出端与浮点数除运算器的操作数2输入端连接; The exchange control input end of the operand switcher is connected with the operation mode input line of the system; the operand 1 output end is connected with the operand 1 input end of the floating-point number division operator, and the operand 2 output end is connected with the floating-point number division operator The operand 2 input terminal connection;

所述非门Ⅰ的输入端与系统的操作数类型输入线连接,输出端和或门Ⅰ的一个输入端连接; The input end of the NOT gate I is connected to the operand type input line of the system, and the output end is connected to an input end of the OR gate I;

所述或门Ⅰ的另一个输入端和脉冲发生分配控制器连接,输出端和与门Ⅰ的一个输入端连接; The other input end of the OR gate I is connected to the pulse generation distribution controller, and the output end is connected to an input end of the AND gate I;

所述或门Ⅱ的一个输入端与脉冲发生分配控制器连接,另一个输入端与系统的操作数类型输入线连接,输出端和与门Ⅰ的一个输入端连接。 One input end of the OR gate II is connected to the pulse generation distribution controller, the other input end is connected to the operand type input line of the system, and the output end is connected to an input end of the AND gate I.

其进一步技术方案是:所述脉冲发生分配控制器包括脉冲发生器、类型寄存器、或门Ⅲ、或门Ⅳ、非门Ⅱ、或门Ⅴ 和与门Ⅱ; Its further technical solution is: the pulse generation distribution controller includes a pulse generator, a type register, an OR gate III, an OR gate IV, a NOT gate II, an OR gate V and an AND gate II;

所述脉冲发生器的复位输入端与系统的复位Rst线连接,启动输入端和或门Ⅲ的输出端连接,循环启动输入端和与门Ⅱ的输出端连接,脉冲同步输入端和系统时钟Clock线连接,类型输入端与类型寄存器的输出端连接,脉冲①输出端与运算结果寄存器的锁存脉冲输入端、或门Ⅱ的一个输入端连接;脉冲②输出端和或门Ⅰ的另一个输入端、类型寄存器的锁存输入端连接;脉冲③输出端和或门Ⅳ的一个输入端连接;脉冲④输出端和或门Ⅴ的一个输入端连接;结果锁存输出端与结果输出控制模块连接,运算结束输出端向系统输出运算结束信号; The reset input terminal of the pulse generator is connected with the reset Rst line of the system, the start input terminal is connected with the output terminal of OR gate III, the cycle start input terminal is connected with the output terminal of AND gate II, and the pulse synchronization input terminal is connected with the system clock Clock The type input terminal is connected to the output terminal of the type register, the pulse ① output terminal is connected to the latch pulse input terminal of the operation result register, or an input terminal of the OR gate II; the pulse ② output terminal is connected to the other input terminal of the OR gate I connected to the latch input terminal of the type register; the pulse ③ output terminal is connected to an input terminal of the OR gate IV; the pulse ④ output terminal is connected to an input terminal of the OR gate V; the result latch output terminal is connected to the result output control module , the operation end output terminal outputs an operation end signal to the system;

所述类型寄存器的输入端和系统操作数类型输入线连接,操作数类型输出端还和或门Ⅳ的另一个输入端、非门Ⅱ的输入端连接; The input end of the type register is connected to the system operand type input line, and the operand type output end is also connected to another input end of the OR gate IV and an input end of the NOT gate II;

所述或门Ⅲ的二个输入端分别和系统的使能信号CS线、写信号WR线连接; The two input terminals of the OR gate III are respectively connected to the enable signal CS line and the write signal WR line of the system;

所述或门Ⅳ的输出端和与门Ⅱ的一个输入端连接; The output end of the OR gate IV is connected to an input end of the AND gate II;

所述非门Ⅱ的输出端和或门Ⅴ的另一个输入端连接; The output end of the NOT gate II is connected to the other input end of the OR gate V;

所述或门Ⅴ的输出端和与门Ⅱ的另一个输入端连接; The output end of the OR gate V is connected to the other input end of the AND gate II;

所述与门Ⅱ的输出端还与结果输出控制模块连接; The output end of the AND gate II is also connected to the result output control module;

所述脉冲发生器输出的脉冲①、脉冲②,脉冲③和脉冲④与系统时钟Clock同步,即系统时钟Clock是脉冲发生分配控制器的同步脉冲; The pulse 1., pulse 2., pulse 3. and pulse 4. of the pulse generator output are synchronized with the system clock Clock, that is, the system clock Clock is the synchronous pulse of the pulse generation and distribution controller;

当操作数类型为“0”时,所述脉冲发生分配控制器在脉冲②下降沿的作用下,类型寄存器输出状态为“0”,或门Ⅴ输出为“1”状态,在脉冲③下降沿的作用下,或门Ⅳ的输出由“1”→“0”,则与门Ⅱ的输出也由“1”→“0”,作为脉冲发生器循环启动信号和结果输出控制模块的结果锁存信号; When the operand type is "0", the pulse generation distribution controller is under the action of the falling edge of pulse ②, the output state of the type register is "0", and the output state of OR gate V is "1". Under the action of the OR gate IV, the output of the OR gate IV changes from "1" to "0", and the output of the AND gate II also changes from "1" to "0", which is used as the cycle start signal of the pulse generator and the result latch of the result output control module Signal;

当操作数类型为“1”时,所述脉冲发生分配控制器在脉冲②下降沿的作用下,类型寄存器输出状态为“1”,或门Ⅳ输出为“1”状态,在脉冲④下降沿的作用下,或门Ⅴ的输出由“1”→“0”,则与门Ⅱ的输出也由“1”→“0”,作为脉冲发生器循环启动信号和结果输出控制模块的结果锁存信号; When the operand type is "1", the pulse generation distribution controller is under the action of the falling edge of pulse ②, the output state of the type register is "1", and the output state of OR gate IV is "1". Under the effect of , the output of OR gate V changes from "1" to "0", then the output of AND gate II also changes from "1" to "0", which is used as the cycle start signal of the pulse generator and the result latch of the result output control module Signal;

当所述脉冲发生器的运算结束输出端为“0”,CS为“0”时,在WR信号的下降沿作用下,启动输入端信号由“1”→“0”,启动脉冲发生器工作,脉冲发生器被启动工作之后,置运算结束信号输出端为“1”;如果启动输入端为“0”,循环启动输入端由“1”→“0”,启动脉冲发生器工作;如果启动输入端信号为“1”,循环启动输入端信号由“1”→“0”,向系统发出运算结束信号,脉冲发生器停止工作,脉冲①、脉冲②、脉冲③和脉冲④的输出端都处于为“1”状态,运算结束输出端为“0”状态;当复位输入端为“0”时,复位脉冲发生器,脉冲①、脉冲②、脉冲③和脉冲④的输出端都处于为“1”状态,运算结束输出端为“0”状态。 When the operation of the pulse generator ends and the output terminal is "0" and CS is "0", under the action of the falling edge of the WR signal, the signal at the start input terminal changes from "1" to "0", and the start pulse generator works , after the pulse generator is started to work, set the operation end signal output terminal to "1"; if the start input terminal is "0", the cycle start input terminal is changed from "1" to "0", and the pulse generator is started to work; if it is started The signal at the input terminal is "1", the signal at the input terminal of the cycle start changes from "1" to "0", and the operation end signal is sent to the system, the pulse generator stops working, and the output terminals of pulse ①, pulse ②, pulse ③ and pulse ④ are all When it is in the state of "1", the output terminal of the operation end is in the state of "0"; when the reset input terminal is "0", the pulse generator is reset, and the output terminals of pulse ①, pulse ②, pulse ③ and pulse ④ are all in the state of " 1” state, the output end of the operation is in the “0” state.

其进一步技术方案是:所述结果输出控制模块包括结果输出寄存器、运算异常标志控制、32位三态门组和或门Ⅵ; Its further technical solution is: the result output control module includes a result output register, operation exception flag control, 32-bit tri-state gate group and OR gate VI;

所述结果输出寄存器的运算结果输入端和浮点数除运算器的运算结果输出端连接,运算结果输出端与32位三态门组的输入端、运算异常标志控制的运算结果输入端、选通器的一个输入端连接,结果锁存输入端和与门Ⅱ的输出端连接; The operation result input end of the described result output register is connected with the operation result output end of the floating-point number division operator, and the operation result output end is connected with the input end of the 32-bit tri-state gate group, the operation result input end controlled by the abnormal operation flag, and the gate One input terminal of the device is connected, and the result latch input terminal is connected with the output terminal of AND gate II;

所述运算异常标志控制的运算结果输入端与结果输出寄存器的运算结果输出端连接,结果锁存输入端和与门Ⅱ的输出端连接;输出端输出中断请求信号IRQ,当运算结果出现异常时,输出端向系统发出中断请求信号IRQ; The operation result input terminal controlled by the operation exception flag is connected to the operation result output terminal of the result output register, and the result latch input terminal is connected to the output terminal of AND gate II; the output terminal outputs an interrupt request signal IRQ, and when the operation result is abnormal , the output terminal sends an interrupt request signal IRQ to the system;

所述32位三态门组的控制输入端和或门Ⅵ的输出端连接,输出端与系统数据总线DB连接; The control input terminal of the 32-bit tri-state gate group is connected to the output terminal of the OR gate VI, and the output terminal is connected to the system data bus DB;

所述或门Ⅵ的二个输入端分别与系统使能信号CS、读信号RD线连接; The two input terminals of the OR gate VI are respectively connected to the system enable signal CS and the read signal RD line;

所述32位三态门组输出结果输出寄存器输出的运算结果,当使能信号CS为“0”,读信号RD为“0”时,或门Ⅵ输出为“0”,控制32位三态门组输出上次运算结果。 The 32-bit tri-state gate output result output register outputs the operation result. When the enable signal CS is "0" and the read signal RD is "0", the output of the OR gate VI is "0", controlling the 32-bit tri-state The gate group outputs the result of the last operation.

其进一步技术方案是:所述浮点操作数配置控制模块和脉冲发生分配控制器受系统操作数类型和运算方式的控制: Its further technical solution is: the floating-point operand configuration control module and the pulse generation distribution controller are controlled by the system operand type and operation mode:

当操作数类型为“0”时:选通器输出结果输出寄存器输出的运算结果,在脉冲发生器输出的脉冲①下降沿的作用下,运算结果寄存器锁存结果输出寄存器输出的运算结果,或门Ⅱ的输出端由“1”→“0”,与门Ⅰ的输出端由“1”→“0”, 操作数寄存器锁存来自系统总线DB的操作数,则除法运算的处理为如下两种方式: When the operand type is "0": the selector outputs the operation result output by the output register, and under the action of the falling edge of pulse ① output by the pulse generator, the operation result register latches the operation result output by the result output register, or The output terminal of gate II changes from "1" to "0", the output terminal of AND gate I changes from "1" to "0", and the operand register latches the operand from the system bus DB, then the processing of the division operation is as follows: ways:

运算方式为“0”:操作数交换器的交换数1输入端的运算结果传输到浮点数除运算器的操作数1的输入端,操作数交换器的交换数2输入端的操作数传输到浮点数除运算器的操作数2的输入端,浮点数除运算器实施运算结果/操作数的运算; The operation mode is "0": the operation result of the exchange number 1 input terminal of the operand switcher is transmitted to the operand 1 input terminal of the floating-point number division operator, and the operand of the exchange number 2 input terminal of the operand switcher is transmitted to the floating point number The input terminal of the operand 2 of the division operator, the floating-point number division operator implements the calculation of the operation result/operand;

运算方式为“1”:操作数交换器的交换数1输入端的运算结果传输到浮点数除运算器的操作数2的输入端,操作数交换器的交换数2输入端的操作数传输到浮点数除运算器的操作数1的输入端,实现两数的交换,浮点数除运算器实施操作数/运算结果的运算; The operation mode is "1": the operation result of the input terminal of the exchange number 1 of the operand switcher is transmitted to the input terminal of the operand 2 of the floating-point number division operator, and the operand of the input terminal of the exchange number 2 of the operand switcher is transmitted to the floating-point number The input terminal of the operand 1 of the division operator realizes the exchange of two numbers, and the floating-point number division operator implements the operation of the operand/operation result;

当操作数类型为“1”时:选通器输出来自系统总线DB的第1个操作数,在脉冲发生器输出的脉冲①下降沿的作用下,运算结果寄存器锁存系统总线DB的第1个操作数,或门Ⅱ的输出端为“1”,非门Ⅰ输出为“0”, 在输出的脉冲②下降沿的作用下,与门Ⅰ的输出端由“1”→“0”, 操作数寄存器锁存来自系统总线DB的第2个操作数,则除法运算的处理为如下两种方式: When the operand type is "1": the selector outputs the first operand from the system bus DB, and under the action of the falling edge of pulse ① output by the pulse generator, the operation result register latches the first operand of the system bus DB operand, the output terminal of OR gate II is "1", and the output terminal of NOT gate I is "0". The operand register latches the second operand from the system bus DB, and the division operation is processed in the following two ways:

运算方式为“0”:操作数交换器的交换数1输入端的系统总线DB的第1个操作数传输到浮点数除运算器的操作数1的输入端,操作数交换器的交换数2输入端的系统总线DB的第2个操作数传输到浮点数除运算器的操作数2的输入端,浮点数除运算器实施第1个操作数/第2个操作数的运算; The operation mode is "0": the first operand of the system bus DB at the input end of the operand switch 1 is transmitted to the input end of the operand 1 of the floating-point number division operator, and the exchange number 2 of the operand switch is input The second operand of the system bus DB at the end is transmitted to the input end of the operand 2 of the floating-point number division operator, and the floating-point number division operator implements the operation of the first operand/the second operand;

运算方式为“1”:操作数交换器的交换数1输入端的第1个操作数传输到浮点数除运算器的操作数2的输入端,操作数交换器的交换数2输入端的系统总线DB的第2个操作数传输到浮点数除运算器的操作数1的输入端,实现两数的交换,浮点数除运算器实施第2个操作数/第1个操作数的运算。 The operation mode is "1": the first operand at the input terminal of the exchange number 1 of the operand switcher is transmitted to the input end of the operand 2 of the floating-point number division operator, and the system bus DB at the input end of the exchange number 2 of the operand switcher The second operand of the floating-point number division operator is transmitted to the input terminal of operand 1 of the floating-point number division operator to realize the exchange of two numbers, and the floating-point number division operator implements the operation of the second operand/the first operand.

由于采用以上结构,本发明之浮点数除运算执行控制器具有以下有益效果: Due to the adoption of the above structure, the floating-point number division execution controller of the present invention has the following beneficial effects:

一、除法运算的执行由执行控制器自主控制完成 1. The execution of the division operation is completed by the autonomous control of the executive controller

本发明之浮点数除运算执行控制器充分利用FPGA并行处理功能,执行控制器被系统选中,启动脉冲发生分配控制器,浮点数除运算执行控制器在内部脉冲发生分配控制器的时序脉冲作用下自主完成操作数的选择配置,运算结果的锁存,不需要系统对浮点数除运算执行控制器的运算处理过程施加时序控制脉冲。 The floating-point number division execution controller of the present invention fully utilizes the FPGA parallel processing function, the execution controller is selected by the system, and the pulse generation and distribution controller is started, and the floating-point number division operation execution controller is under the action of the timing pulse of the internal pulse generation distribution controller. The selection and configuration of the operands and the latching of the operation results are completed independently, and the system does not need to apply timing control pulses to the operation processing process of the execution controller of the floating-point number division operation.

二、控制实现四种除运算处理方式 2. Control and implement four division operation processing methods

本发明之浮点数除运算执行控制器的操作数是32位符合IEEE754标准的浮点数,能够根据操作数运算方式,执行运算结果/操作数、操作数/运算结果、第1个操作数/第2个操作数、第2个操作数/第1个操作数的运算。 The operand of the floating-point number division execution controller of the present invention is a 32-bit floating-point number conforming to the IEEE754 standard, and can perform operation results/operands, operands/operation results, and the first operand/the first operand according to the operation mode of the operands. Operation with 2 operands, 2nd operand/1st operand.

三、运算过程并行读出上次运算结果 3. The operation process reads out the last operation result in parallel

本发明之浮点数除运算执行控制器在浮点数除法运算的过程中,系统能够从浮点除运算执行控制器中并行读出上次运算结果。 In the floating-point number division execution controller of the present invention, during the floating-point number division operation process, the system can read out the last operation result in parallel from the floating-point number division execution controller.

四、执行控制器性价比高 Fourth, the executive controller is cost-effective

本发明之浮点数除运算执行控制器以FPGA的硬连接控制电路为核心,根据操作数的类型,在内部脉冲发生分配控制器的时序脉冲作用下自主完成操作数的选择配置,运算结果的锁存,不需要系统对浮点数除运算执行控制器的运算处理过程施加时序控制脉冲,系统能够从浮点除运算执行控制器中并行读出上次运算结果,提高了系统执行命令序列的速度,当浮点数除法运算发生异常时,能够向系统发出中断申请,具有较高的性价比。 The floating-point number division operation executive controller of the present invention takes the hard-wired control circuit of FPGA as the core, and according to the type of operands, under the action of the timing pulse of the internal pulse generation and distribution controller, the selection and configuration of the operands and the lock of the operation results are completed autonomously. It does not require the system to apply timing control pulses to the operation processing process of the floating-point division execution controller. The system can read the last operation result in parallel from the floating-point division execution controller, which improves the speed of the system's execution of command sequences. When an exception occurs in the floating-point number division operation, an interrupt request can be sent to the system, which has a high cost performance.

下面结合附图和实施例对本发明之浮点数除运算执行控制器的技术特征作进一步的说明。 The technical features of the floating-point number division execution controller of the present invention will be further described below in conjunction with the drawings and embodiments.

附图说明 Description of drawings

图1:本发明之浮点数除运算执行控制器的系统结构框图; Fig. 1: the system structural block diagram of floating-point number division execution controller of the present invention;

图2:本发明之浮点数除运算执行控制器的浮点操作数配置控制模块的电路连接图; Fig. 2: the circuit connection diagram of the floating-point operand configuration control module of the floating-point number division execution controller of the present invention;

图3:本发明之浮点数除运算执行控制器的脉冲发生分配控制器的电路连接图; Fig. 3: the circuit connection diagram of the pulse generation and distribution controller of the floating-point number division execution controller of the present invention;

图4:本发明之浮点数除运算执行控制器的结果输出控制模块图; Fig. 4: the result output control block diagram of the floating-point number division execution controller of the present invention;

图5:本发明之浮点数除运算执行控制器的操作数类型0的时序图; Fig. 5: the timing diagram of the operand type 0 of the floating-point number division execution controller of the present invention;

图6:本发明之浮点数除运算执行控制器的操作数类型1的时序图; Fig. 6: the timing diagram of the operand type 1 of the floating-point number division execution controller of the present invention;

图7:本发明之浮点数除运算执行控制器的两种操作数类型时序图; Fig. 7: two operand type timing diagrams of the floating-point number division execution controller of the present invention;

图中: In the picture:

I—浮点操作数配置控制模块, II—浮点数除运算器, III—脉冲发生分配控制器, IV—结果输出控制模块; I—floating point operand configuration control module, II—floating point number division operator, III—pulse generation distribution controller, IV—result output control module;

1—选通器,2—运算结果寄存器,3—操作数寄存器,4—操作数交换器,5—非门Ⅰ,6—或门Ⅰ,7—或门Ⅱ,8—与门Ⅰ,9—脉冲发生器,10—类型寄存器,11—或门Ⅲ,12—或门Ⅳ,13—非门Ⅱ,14—或门Ⅴ,15—与门Ⅱ,16—结果输出寄存器,17—运算异常标志控制,18—32位三态门组,19—或门Ⅵ。 1—selector, 2—operation result register, 3—operand register, 4—operand switch, 5—not gate I, 6—or gate I, 7—or gate II, 8—and gate I, 9 —pulse generator, 10—type register, 11—OR gate III, 12—OR gate IV, 13—invert gate II, 14—OR gate V, 15—AND gate II, 16—result output register, 17—operation exception Flag control, 18-32-bit tri-state gate group, 19-or gate Ⅵ.

文中缩略语说明: Explanation of abbreviations in the text:

FPGA-Field Programmable Gate Array,现场可编程门阵列; FPGA-Field Programmable Gate Array, Field Programmable Gate Array;

DB-Data Bus,数据总线; DB-Data Bus, data bus;

CS-Chip Select,片选或使能,图中CS代表“使能信号”; CS-Chip Select, chip select or enable, CS in the figure represents "enable signal";

Clock-时钟; Clock - clock;

RD-Read,读,图中代表“读信号”; RD-Read, read, the figure represents "read signal";

WR-Write,写,图中代表“写信号”; WR-Write, write, the figure represents "write signal";

IRQ-Interrupt Request,中断申请,图中代表“中断请求信号”; IRQ-Interrupt Request, interrupt application, the figure represents "interrupt request signal";

Rst-Reset,复位。 Rst-Reset, reset.

具体实施方式 detailed description

实施例: Example:

一种浮点数除运算执行控制器,如图1所示,用于实现2个32位符合IEEE754标准的浮点数除法运算,其特征在于:该执行控制器包括浮点操作数配置控制模块Ⅰ、浮点数除运算器Ⅱ、脉冲发生分配控制器Ⅲ和结果输出控制模块Ⅳ; A floating-point number division execution controller, as shown in Figure 1, is used to realize two 32-bit floating-point number division operations that conform to the IEEE754 standard, and is characterized in that: the execution controller includes a floating-point operand configuration control module I, Floating-point division operator II, pulse generation distribution controller III and result output control module IV;

所述浮点操作数配置控制模块Ⅰ与浮点数除运算器Ⅱ、脉冲发生分配控制器Ⅲ、结果输出控制模块Ⅳ连接; The floating-point operand configuration control module I is connected with the floating-point number division operator II, the pulse generation distribution controller III, and the result output control module IV;

所述浮点数除运算器Ⅱ还与结果输出控制模块Ⅳ连接; The floating-point number division operator II is also connected to the result output control module IV;

所述脉冲发生分配控制器Ⅲ还与结果输出控制模块Ⅳ连接; The pulse generation distribution controller III is also connected to the result output control module IV;

所述浮点操作数配置控制模块Ⅰ按照操作数类型和运算方式配置浮点数除运算器Ⅱ的操作数1是来自于上次的运算结果,还来自于系统数据总线DB的浮点操作数,在脉冲发生分配控制器Ⅲ输出的时序脉冲控制下,完成浮点数除运算器Ⅱ输入的操作数1的选择,及操作数1和操作数2的配置和锁存; The floating-point operand configuration control module I configures the floating-point number division operator II according to the operand type and operation mode. The operand 1 is from the last operation result, and also from the floating-point operand of the system data bus DB. Under the control of the timing pulse output by the pulse generation distribution controller III, the selection of operand 1 input by the floating-point number division operator II, and the configuration and latching of operand 1 and operand 2 are completed;

所述浮点数除运算器Ⅱ对浮点操作数配置控制模块Ⅰ输出的操作数1和操作数2进行运算,输出除法运算结果; The floating-point number division operator II performs operations on the operand 1 and operand 2 output by the floating-point operand configuration control module I, and outputs the result of the division operation;

所述脉冲发生分配控制器Ⅲ在满足启动工作的条件下,按照操作数的类型,发出操作数1和操作数2配置的时序脉冲,浮点数除运算器Ⅱ运算结果的锁存信号,以及除法运算结束信号;所述脉冲发生分配控制器Ⅲ在满足循环启动的条件下,自动启动脉冲发生分配控制器Ⅲ的工作; The pulse generation distribution controller III, under the condition of satisfying the start-up work, sends out the timing pulse configured by operand 1 and operand 2 according to the type of the operand, the latch signal of the operation result of the floating-point number division operator II, and the division Operation end signal; the pulse generation and distribution controller III automatically starts the work of the pulse generation and distribution controller III under the condition of satisfying the cycle start;

所述结果输出控制模块Ⅳ在脉冲发生分配控制器Ⅲ输出的结果锁存信号的作用下,将除法运算结果予以锁存,判断除法运算结果是否异常,系统能够读出除法运算结果。 The result output control module IV latches the result of the division operation under the action of the result latch signal output by the pulse generation distribution controller III, and judges whether the result of the division operation is abnormal, and the system can read the result of the division operation.

如图2所示,所述浮点操作数配置控制模块Ⅰ包括选通器1、运算结果寄存器2、操作数寄存器3、操作数交换器4、非门Ⅰ5、或门Ⅰ6、或门Ⅱ7和与门Ⅰ8; As shown in Figure 2, the floating-point operand configuration control module I includes a gate 1, an operation result register 2, an operand register 3, an operand switch 4, a NOT gate I5, an OR gate I6, an OR gate II7 and AND gate Ⅰ 8;

所述选通器1的一个输入端与系统数据总线DB连接,另一个输入端与结果输出控制模块Ⅳ连接,输出端与运算结果寄存器2的输入端连接,选通控制输入端与系统的操作数类型输入线连接; One input end of the gate 1 is connected to the system data bus DB, the other input end is connected to the result output control module IV, the output end is connected to the input end of the operation result register 2, and the gate control input end is connected to the operation of the system Number type input line connection;

所述运算结果寄存器2的锁存脉冲输入端与脉冲发生分配控制器Ⅲ连接,输出端与操作数交换器4的交换数1输入端连接; The latch pulse input end of the operation result register 2 is connected to the pulse generation distribution controller III, and the output end is connected to the exchange number 1 input end of the operand switcher 4;

所述操作数寄存器3的输入端和系统数据总线DB连接,锁存脉冲输入端和与门Ⅰ8的输出端连接,输出端与操作数交换器4的交换数2输入端连接; The input end of the operand register 3 is connected to the system data bus DB, the latch pulse input end is connected to the output end of the AND gate 18, and the output end is connected to the exchange number 2 input end of the operand switcher 4;

所述操作数交换器4的交换控制输入端与系统的运算方式输入线连接;操作数1输出端与浮点数除运算器Ⅱ的操作数1输入端连接,操作数2输出端与浮点数除运算器Ⅱ的操作数2输入端连接; The exchange control input end of the operand switcher 4 is connected with the operation mode input line of the system; the operand 1 output end is connected with the operand 1 input end of the floating-point number division operator II, and the operand 2 output end is connected with the floating-point number division The operand 2 input terminal of the arithmetic unit II is connected;

所述非门Ⅰ5的输入端与系统的操作数类型输入线连接,输出端和或门Ⅰ6的一个输入端连接; The input end of the NOT gate I5 is connected to the operand type input line of the system, and the output end is connected to an input end of the OR gate I6;

所述或门Ⅰ6的另一个输入端和脉冲发生分配控制器Ⅲ连接,输出端和与门Ⅰ8的一个输入端连接; The other input end of the OR gate I6 is connected to the pulse generation distribution controller III, and the output end is connected to an input end of the AND gate I8;

所述或门Ⅱ7的一个输入端与脉冲发生分配控制器Ⅲ连接,另一个输入端与系统的操作数类型输入线连接,输出端和与门Ⅰ8的一个输入端连接。 One input end of the OR gate II7 is connected to the pulse generation distribution controller III, the other input end is connected to the operand type input line of the system, and the output end is connected to an input end of the AND gate I8.

如图3所示,所述脉冲发生分配控制器Ⅲ包括脉冲发生器9、类型寄存器10、或门Ⅲ11、或门Ⅳ12、非门Ⅱ13、或门Ⅴ14 和与门Ⅱ15; As shown in Figure 3, the pulse generation distribution controller III includes a pulse generator 9, a type register 10, an OR gate III11, an OR gate IV12, a NOT gate II13, an OR gate V14 and an AND gate II15;

所述脉冲发生器9的复位输入端与系统的复位Rst线连接,启动输入端和或门Ⅲ11的输出端连接,循环启动输入端和与门Ⅱ15的输出端连接,脉冲同步输入端和系统时钟Clock线连接,类型输入端与类型寄存器10的输出端连接,脉冲①输出端与运算结果寄存器2的锁存脉冲输入端、或门Ⅱ7的一个输入端连接;脉冲②输出端和或门Ⅰ6的另一个输入端、类型寄存器10的锁存输入端连接;脉冲③输出端和或门Ⅳ12的一个输入端连接;脉冲④输出端和或门Ⅴ14的一个输入端连接,运算结束输出端向系统输出运算结束信号; The reset input terminal of the pulse generator 9 is connected to the reset Rst line of the system, the start input terminal is connected to the output terminal of the OR gate III11, the cycle start input terminal is connected to the output terminal of the AND gate II15, and the pulse synchronization input terminal is connected to the system clock Clock line connection, the type input terminal is connected with the output terminal of the type register 10, the pulse ① output terminal is connected with the latch pulse input terminal of the operation result register 2, or an input terminal of the OR gate II7; the pulse ② output terminal is connected with the OR gate I6 The other input terminal is connected to the latch input terminal of the type register 10; the output terminal of the pulse ③ is connected to an input terminal of the OR gate IV12; the output terminal of the pulse ④ is connected to an input terminal of the OR gate V14, and the output terminal of the operation is output to the system operation end signal;

所述类型寄存器10的输入端和系统操作数类型输入线连接,操作数类型输出端还和或门Ⅳ12的另一个输入端、非门Ⅱ13的输入端连接; The input end of the type register 10 is connected with the system operand type input line, and the operand type output end is also connected with another input end of the OR gate IV 12 and an input end of the NOT gate II 13;

所述或门Ⅲ11的二个输入端分别和系统的使能信号CS线、写信号WR线连接; The two input terminals of the OR gate III11 are respectively connected to the enable signal CS line and the write signal WR line of the system;

所述或门Ⅳ12的输出端和与门Ⅱ15的一个输入端连接; The output end of the OR gate IV12 is connected to an input end of the AND gate II15;

所述非门Ⅱ13的输出端和或门Ⅴ14的另一个输入端连接; The output end of the NOT gate II13 is connected to the other input end of the OR gate V14;

所述或门Ⅴ14的输出端和与门Ⅱ15的另一个输入端连接; The output end of the OR gate V14 is connected to the other input end of the AND gate II15;

所述与门Ⅱ15的输出端还与结果输出控制模块Ⅳ连接; The output terminal of the AND gate II15 is also connected with the result output control module IV;

所述脉冲发生器9输出的脉冲①、脉冲②,脉冲③和脉冲④与系统时钟Clock同步,即系统时钟Clock是脉冲发生分配控制器Ⅲ的同步脉冲; The pulse 1., pulse 2., pulse 3. and pulse 4. of the pulse generator 9 output are synchronous with the system clock Clock, that is, the system clock Clock is the synchronous pulse of the pulse generation and distribution controller III;

当操作数类型为“0”时,所述脉冲发生分配控制器Ⅲ在脉冲②下降沿的作用下,类型寄存器10输出状态为“0”,或门Ⅴ14输出为“1”状态,在脉冲③下降沿的作用下,或门Ⅳ12的输出由“1”→“0”,则与门Ⅱ15的输出也由“1”→“0”,作为脉冲发生器9循环启动信号和结果输出控制模块Ⅳ的结果锁存信号; When the operand type is "0", the pulse generation distribution controller III is under the action of the falling edge of pulse ②, the output state of the type register 10 is "0", and the output state of the OR gate V14 is "1". Under the action of the falling edge, the output of OR gate IV12 changes from "1" to "0", then the output of AND gate II15 also changes from "1" to "0", which is used as the cycle start signal of pulse generator 9 and the result output control module IV The result latch signal;

当操作数类型为“1”时,所述脉冲发生分配控制器Ⅲ在脉冲②下降沿的作用下,类型寄存器10输出状态为“1”,或门Ⅳ12输出为“1”状态,在脉冲④下降沿的作用下,或门Ⅴ14的输出由“1”→“0”,则与门Ⅱ15的输出也由“1”→“0”,作为脉冲发生器9循环启动信号和结果输出控制模块Ⅳ的结果锁存信号; When the operand type is "1", the pulse generation distribution controller III is under the action of the falling edge of the pulse ②, the output state of the type register 10 is "1", and the output state of the OR gate IV 12 is "1". Under the action of the falling edge, the output of the OR gate V14 changes from "1" to "0", and the output of the AND gate II15 also changes from "1" to "0", which is used as the cycle start signal of the pulse generator 9 and the result output control module IV The result latch signal;

当所述脉冲发生器9的运算结束输出端为“0”,CS为“0”时,在WR信号的下降沿作用下,启动输入端信号由“1”→“0”,启动脉冲发生器9工作,脉冲发生器9被启动工作之后,置运算结束信号输出端为“1”;如果启动输入端为“0”,循环启动输入端由“1”→“0”,启动脉冲发生器9工作;如果启动输入端信号为“1”,循环启动输入端信号由“1”→“0”,向系统发出运算结束信号,脉冲发生器9停止工作,脉冲①、脉冲②、脉冲③和脉冲④的输出端都处于为“1”状态,运算结束输出端为“0”状态;当复位输入端为“0”时,复位脉冲发生器9,脉冲①、脉冲②、脉冲③和脉冲④的输出端都处于为“1”状态,运算结束输出端为“0”状态。 When the operation end output of the pulse generator 9 is "0" and CS is "0", under the action of the falling edge of the WR signal, the start input signal changes from "1" to "0" to start the pulse generator 9 works, after the pulse generator 9 is started to work, set the operation end signal output terminal to "1"; if the start input terminal is "0", the cycle start input terminal changes from "1" to "0", and the pulse generator 9 is started work; if the signal at the start input terminal is "1", the signal at the cycle start input terminal changes from "1" to "0", and sends an operation end signal to the system, the pulse generator 9 stops working, pulse ①, pulse ②, pulse ③ and pulse The output terminals of ④ are all in the state of "1", and the output terminal of the operation is in the state of "0"; when the reset input terminal is "0", the reset pulse generator 9, pulse ①, pulse ②, pulse ③ and pulse ④ The output ends are all in the "1" state, and the output end is in the "0" state after the operation is completed.

如图4所示,所述结果输出控制模块Ⅳ包括结果输出寄存器16、运算异常标志控制17、32位三态门组18和或门Ⅵ19; As shown in Figure 4, the result output control module IV includes a result output register 16, an abnormal operation flag control 17, a 32-bit tri-state gate group 18 and an OR gate VI 19;

所述结果输出寄存器16的运算结果输入端和浮点数除运算器Ⅱ的运算结果输出端连接,运算结果输出端与32位三态门组18的输入端、运算异常标志控制17的运算结果输入端、选通器1的一个输入端连接,结果锁存输入端和与门Ⅱ15的输出端连接; The calculation result input terminal of the result output register 16 is connected with the calculation result output terminal of the floating-point number division operator II, and the calculation result output terminal is connected with the input terminal of the 32-bit tri-state gate group 18 and the calculation result input terminal of the operation exception flag control 17 terminal, an input terminal of the selector 1 is connected, and the result latch input terminal is connected with the output terminal of the AND gate II 15;

所述运算异常标志控制17的运算结果输入端与结果输出寄存器16的运算结果输出端连接,结果锁存输入端和与门Ⅱ15的输出端连接;输出端输出中断请求信号IRQ,当运算结果出现异常时,输出端向系统发出中断请求信号IRQ; The operation result input end of the operation exception flag control 17 is connected with the operation result output end of the result output register 16, and the result latch input end is connected with the output end of the AND gate II 15; the output end outputs an interrupt request signal IRQ, when the operation result occurs When abnormal, the output terminal sends an interrupt request signal IRQ to the system;

所述32位三态门组18的控制输入端和或门Ⅵ19的输出端连接,输出端与系统数据总线DB连接; The control input end of the 32-bit tri-state gate group 18 is connected to the output end of the OR gate VI 19, and the output end is connected to the system data bus DB;

所述或门Ⅵ19的二个输入端分别与系统使能信号CS、读信号RD线连接; The two input terminals of the OR gate VI19 are respectively connected to the system enable signal CS and the read signal RD line;

所述32位三态门组18输出结果输出寄存器16输出的运算结果,当使能信号CS为“0”时,读信号RD为“0”时,或门Ⅵ19输出为“0”,控制32位三态门组19输出上次运算结果。 The 32-bit tri-state gate group 18 outputs the operation result output by the output register 16. When the enable signal CS is "0" and the read signal RD is "0", the output of the OR gate VI19 is "0", and the control 32 Bit tri-state gate group 19 outputs the last operation result.

如图2和图3所示,所述浮点操作数配置控制模块Ⅰ和脉冲发生分配控制器Ⅲ受系统操作数类型和运算方式的控制: As shown in Figure 2 and Figure 3, the floating-point operand configuration control module I and the pulse generation distribution controller III are controlled by the system operand type and operation mode:

当操作数类型为“0”时:选通器1输出结果输出寄存器16输出的运算结果,在脉冲发生器9输出的脉冲①下降沿的作用下,运算结果寄存器2锁存结果输出寄存器16输出的运算结果,或门Ⅱ7的输出端由“1”→“0”,与门Ⅰ8的输出端由“1”→“0”, 操作数寄存器3锁存来自系统总线DB的操作数,则除法运算的处理为如下两种方式: When the operand type is "0": the gate 1 outputs the operation result output by the result output register 16, and under the action of the falling edge of the pulse ① output by the pulse generator 9, the operation result register 2 latches the result output register 16 to output The result of the operation, the output terminal of the OR gate II7 changes from "1" to "0", the output terminal of the AND gate I8 changes from "1" to "0", and the operand register 3 latches the operand from the system bus DB, then the division Operations are processed in the following two ways:

运算方式为“0”:操作数交换器4的交换数1输入端的运算结果传输到浮点数除运算器Ⅱ的操作数1的输入端,操作数交换器4的交换数2输入端的操作数传输到浮点数除运算器Ⅱ的操作数2的输入端,浮点数除运算器Ⅱ实施运算结果/操作数的运算; The operation mode is "0": the operation result of the input terminal of the exchange number 1 of the operand switcher 4 is transmitted to the input terminal of the operand 1 of the floating-point number division operator II, and the operand of the input terminal of the exchange number 2 of the operand switcher 4 is transmitted To the input terminal of the operand 2 of the floating-point number division operator II, the floating-point number division operator II implements the calculation of the operation result/operand;

当操作数类型为“1”时:操作数交换器4的交换数1输入端的运算结果传输到浮点数除运算器Ⅱ的操作数2的输入端,操作数交换器4的交换数2输入端的操作数传输到浮点数除运算器Ⅱ的操作数1的输入端,实现两数的交换,浮点数除运算器Ⅱ实施操作数/运算结果的运算; When the operand type is "1": the operation result of the input terminal of the exchange number 1 of the operand switcher 4 is transmitted to the input terminal of the operand 2 of the floating-point number division operator II, and the operation result of the input terminal of the exchange number 2 of the operand switcher 4 The operand is transmitted to the input terminal of operand 1 of the floating-point number division operator II to realize the exchange of two numbers, and the floating-point number division operator II implements the operation of the operand/operation result;

在操作数类型为“1”时:选通器1输出来自系统总线DB的第1个操作数,在脉冲发生器9输出的脉冲①下降沿的作用下,运算结果寄存器2锁存系统总线DB的第1个操作数,或门Ⅱ7的输出端为“1”,非门Ⅰ5输出为“0”, 在输出的脉冲②下降沿的作用下,与门Ⅰ8的输出端由“1”→“0”, 操作数寄存器3锁存来自系统总线DB的第2个操作数,则除法运算的处理为如下两种方式: When the operand type is "1": the strobe 1 outputs the first operand from the system bus DB, and under the action of the falling edge of the pulse ① output by the pulse generator 9, the operation result register 2 latches the system bus DB The first operand of the OR gate II7 is "1", and the output of the NOT gate I5 is "0". Under the action of the falling edge of the output pulse ②, the output end of the AND gate I8 changes from "1" to "" 0", the operand register 3 latches the second operand from the system bus DB, then the division operation is processed in the following two ways:

运算方式为“0”:操作数交换器4的交换数1输入端的系统总线DB的第1个操作数传输到浮点数除运算器Ⅱ的操作数1的输入端,操作数交换器4的交换数2输入端的系统总线DB的第2个操作数传输到浮点数除运算器Ⅱ的操作数2的输入端,浮点数除运算器Ⅱ实施第1个操作数/第2个操作数的运算; The operation mode is "0": the first operand of the system bus DB at the input end of the exchange number 1 of the operand switcher 4 is transmitted to the input end of the operand 1 of the floating-point number division operator II, and the exchange of the operand switcher 4 The second operand of the system bus DB at the number 2 input terminal is transmitted to the input terminal of the operand 2 of the floating-point number division operator II, and the floating-point number division operator II implements the operation of the first operand/the second operand;

运算方式为“1”:操作数交换器4的交换数1输入端的第1个操作数传输到浮点数除运算器Ⅱ的操作数2的输入端,操作数交换器4的交换数2输入端的系统总线DB的第2个操作数传输到浮点数除运算器Ⅱ的操作数1的输入端,实现两数的交换,浮点数除运算器Ⅱ实施第2个操作数/第1个操作数的运算。 The operation mode is "1": the first operand of the input terminal of the exchange number 1 of the operand switcher 4 is transmitted to the input end of the operand 2 of the floating-point number division operator II, and the operand of the input terminal of the exchange number 2 of the operand switcher 4 The second operand of the system bus DB is transmitted to the input terminal of operand 1 of the floating-point number division operator II to realize the exchange of two numbers, and the floating-point number division operator II implements the second operand/first operand operation.

Claims (5)

1.一种浮点数除运算执行控制器,用于实现2个32位符合IEEE754标准的浮点数除法运算,其特征在于:该执行控制器包括浮点操作数配置控制模块(Ⅰ)、浮点数除运算器(Ⅱ)、脉冲发生分配控制器(Ⅲ)和结果输出控制模块(Ⅳ); 1. A floating-point number division execution controller is used to realize two 32-bit floating-point number division operations that meet the IEEE754 standard, and is characterized in that: the execution controller includes a floating-point operand configuration control module (I), a floating-point number Division calculator (Ⅱ), pulse generation distribution controller (Ⅲ) and result output control module (Ⅳ); 所述浮点操作数配置控制模块(Ⅰ)与浮点数除运算器(Ⅱ)、脉冲发生分配控制器(Ⅲ)、结果输出控制模块(Ⅳ)连接; The floating-point operand configuration control module (I) is connected with the floating-point number division operator (II), the pulse generation distribution controller (III), and the result output control module (IV); 所述浮点数除运算器(Ⅱ)还与结果输出控制模块(Ⅳ)连接; The floating-point number division operator (II) is also connected to the result output control module (IV); 所述脉冲发生分配控制器(Ⅲ)还与结果输出控制模块(Ⅳ)连接; The pulse generation distribution controller (Ⅲ) is also connected to the result output control module (Ⅳ); 所述浮点操作数配置控制模块(Ⅰ)按照操作数类型和运算方式配置浮点数除运算器(Ⅱ)的操作数1是来自于上次的运算结果,还是来自于系统数据总线DB的浮点操作数,在脉冲发生分配控制器(Ⅲ)输出的时序脉冲控制下,完成浮点数除运算器(Ⅱ)输入的操作数1的选择,及操作数1和操作数2的配置和锁存; The floating-point operand configuration control module (I) configures the floating-point number division operator (II) according to the type of operand and the operation mode, whether the operand 1 of the floating-point number division operator (II) comes from the last operation result, or comes from the floating point of the system data bus DB. Point operands, under the control of the timing pulse output by the pulse generation distribution controller (Ⅲ), complete the selection of operand 1 input by the floating-point number division operator (Ⅱ), as well as the configuration and latching of operand 1 and operand 2 ; 所述浮点数除运算器(Ⅱ)对浮点操作数配置控制模块(Ⅰ)输出的操作数1和操作数2进行运算,输出除法运算结果; The floating-point number division operator (II) operates on the operand 1 and operand 2 output by the floating-point operand configuration control module (I), and outputs the result of the division operation; 所述脉冲发生分配控制器(Ⅲ)在满足启动工作的条件下,按照操作数的类型,发出操作数1和操作数2配置的时序脉冲,浮点数除运算器(Ⅱ)运算结果的锁存信号,以及除法运算结束信号;所述脉冲发生分配控制器(Ⅲ)在满足循环启动的条件下,自动启动脉冲发生分配控制器(Ⅲ)的工作; The pulse generation distribution controller (Ⅲ) sends out the timing pulses configured by operand 1 and operand 2 according to the type of operands according to the condition of starting work, and the operation result of the floating-point division operator (Ⅱ) is latched signal, and the end signal of the division operation; the pulse generation and distribution controller (Ⅲ) automatically starts the work of the pulse generation and distribution controller (Ⅲ) under the condition of satisfying the cycle start; 所述结果输出控制模块(Ⅳ)在脉冲发生分配控制器(Ⅲ)输出的结果锁存信号的作用下,将除法运算结果予以锁存,判断除法运算结果是否异常,系统能够读出除法运算结果。 The result output control module (Ⅳ) latches the result of the division operation under the action of the result latch signal output by the pulse generation distribution controller (Ⅲ), judges whether the result of the division operation is abnormal, and the system can read the result of the division operation . 2.如权利要求1所述的浮点数除运算执行控制器,其特征在于:所述浮点操作数配置控制模块(Ⅰ)包括选通器(1)、运算结果寄存器(2)、操作数寄存器(3)、操作数交换器(4)、非门Ⅰ(5)、或门Ⅰ(6)、或门Ⅱ(7)和与门Ⅰ(8); 2. The floating-point number division execution controller according to claim 1, characterized in that: the floating-point operand configuration control module (I) includes a gate (1), an operation result register (2), an operand Register (3), operand switcher (4), NOT gate I (5), OR gate I (6), OR gate II (7) and AND gate I (8); 所述选通器(1)的一个输入端与系统数据总线DB连接,另一个输入端与结果输出控制模块(Ⅳ)连接,输出端与运算结果寄存器(2)的输入端连接,选通控制输入端与系统的操作数类型输入线连接; One input end of the strobe (1) is connected to the system data bus DB, the other input end is connected to the result output control module (Ⅳ), the output end is connected to the input end of the operation result register (2), and the strobe control The input end is connected with the operand type input line of the system; 所述运算结果寄存器(2)的锁存脉冲输入端与脉冲发生分配控制器(Ⅲ)连接,输出端与操作数交换器(4)的交换数1输入端连接; The latch pulse input terminal of the operation result register (2) is connected to the pulse generation distribution controller (Ⅲ), and the output terminal is connected to the exchange number 1 input terminal of the operand switcher (4); 所述操作数寄存器(3)的输入端和系统数据总线DB连接,锁存脉冲输入端和与门Ⅰ(8)的输出端连接,操作数寄存器(3)的输出端与操作数交换器(4)的交换数2输入端连接; The input end of the operand register (3) is connected to the system data bus DB, the latch pulse input end is connected to the output end of the AND gate I (8), and the output end of the operand register (3) is connected to the operand switch ( 4) The exchange number 2 input terminals are connected; 所述操作数交换器(4)的交换控制输入端与系统的运算方式输入线连接;操作数1输出端与浮点数除运算器(Ⅱ)的操作数1输入端连接,操作数2输出端与浮点数除运算器(Ⅱ)的操作数2输入端连接; The exchange control input of the operand switch (4) is connected to the input line of the system's operation mode; the output of operand 1 is connected to the input of operand 1 of the floating-point number division operator (II), and the output of operand 2 Connect with the operand 2 input terminal of the floating-point number division operator (II); 所述非门Ⅰ(5)的输入端与系统的操作数类型输入线连接,输出端和或门Ⅰ(6)的一个输入端连接; The input end of the NOT gate I (5) is connected to the operand type input line of the system, and the output end is connected to an input end of the OR gate I (6); 所述或门Ⅰ(6)的另一个输入端和脉冲发生分配控制器(Ⅲ)连接,输出端和与门Ⅰ(8)的一个输入端连接; The other input end of the OR gate I (6) is connected to the pulse generation distribution controller (III), and the output end is connected to an input end of the AND gate I (8); 所述或门Ⅱ(7)的一个输入端与脉冲发生分配控制器(Ⅲ)连接,另一个输入端与系统的操作数类型输入线连接,输出端和与门Ⅰ(8)的一个输入端连接。 One input end of the OR gate II (7) is connected to the pulse generation distribution controller (III), the other input end is connected to the operand type input line of the system, and the output end is connected to an input end of the AND gate I (8) connect. 3.如权利要求1所述的浮点数除运算执行控制器,其特征在于:所述脉冲发生分配控制器(Ⅲ)包括脉冲发生器(9)、类型寄存器(10)、或门Ⅲ(11)、或门Ⅳ(12)、非门Ⅱ(13)、或门Ⅴ(14) 和与门Ⅱ(15); 3. The floating-point number division execution controller according to claim 1, characterized in that: the pulse generation distribution controller (III) includes a pulse generator (9), a type register (10), or gate III (11 ), OR gate IV (12), NOT gate II (13), OR gate V (14) and AND gate II (15); 所述脉冲发生器(9)的复位输入端与系统的复位Rst线连接,启动输入端和或门Ⅲ(11)的输出端连接,循环启动输入端和与门Ⅱ(15)的输出端连接,脉冲同步输入端和系统时钟Clock线连接,类型输入端与类型寄存器(10)的输出端连接,脉冲①输出端与运算结果寄存器(2)的锁存脉冲输入端、或门Ⅱ(7)的一个输入端连接;脉冲②输出端和或门Ⅰ(6)的另一个输入端、类型寄存器(10)的锁存输入端连接;脉冲③输出端和或门Ⅳ(12)的一个输入端连接;脉冲④输出端和或门Ⅴ(14)的一个输入端连接,运算结束输出端向系统输出运算结束信号; The reset input terminal of the pulse generator (9) is connected to the reset Rst line of the system, the start input terminal is connected to the output terminal of OR gate III (11), and the cycle start input terminal is connected to the output terminal of AND gate II (15). , the pulse synchronization input terminal is connected to the system clock Clock line, the type input terminal is connected to the output terminal of the type register (10), the pulse ① output terminal is connected to the latch pulse input terminal of the operation result register (2), or gate II (7) One input terminal of pulse ② is connected with the other input terminal of OR gate I (6) and the latch input terminal of type register (10); the output terminal of pulse ③ is connected with one input terminal of OR gate IV (12) connection; the pulse ④ output terminal is connected to an input terminal of the OR gate V (14), and the operation end output terminal outputs an operation end signal to the system; 所述类型寄存器(10)的输入端和系统操作数类型输入线连接,操作数类型输出端还和或门Ⅳ(12)的另一个输入端、非门Ⅱ(13)的输入端连接; The input terminal of the type register (10) is connected to the system operand type input line, and the operand type output terminal is also connected to another input terminal of the OR gate IV (12) and an input terminal of the NOT gate II (13); 所述或门Ⅲ(11)的二个输入端分别和系统的使能信号CS线、写信号WR线连接; The two input terminals of the OR gate III (11) are respectively connected to the enable signal CS line and the write signal WR line of the system; 所述或门Ⅳ(12)的输出端和与门Ⅱ(15)的一个输入端连接; The output end of the OR gate IV (12) is connected to an input end of the AND gate II (15); 所述非门Ⅱ(13)的输出端和或门Ⅴ(14)的另一个输入端连接; The output terminal of the NOT gate II (13) is connected to the other input terminal of the OR gate V (14); 所述或门Ⅴ(14)的输出端和与门Ⅱ(15)的另一个输入端连接; The output end of the OR gate V (14) is connected to the other input end of the AND gate II (15); 所述与门Ⅱ(15)的输出端还与结果输出控制模块(Ⅳ)连接; The output end of the AND gate II (15) is also connected to the result output control module (IV); 所述脉冲发生器(9)输出的脉冲①、脉冲②,脉冲③和脉冲④与系统时钟Clock同步,即系统时钟Clock是脉冲发生分配控制器(Ⅲ)的同步脉冲; The pulse ①, pulse ②, pulse ③ and pulse ④ output by the pulse generator (9) are synchronized with the system clock Clock, that is, the system clock Clock is the synchronous pulse of the pulse generation and distribution controller (Ⅲ); 当操作数类型为“0”时,所述脉冲发生分配控制器(Ⅲ)在脉冲②下降沿的作用下,类型寄存器(10)输出状态为“0”,或门Ⅴ(14)输出为“1”状态,在脉冲③下降沿的作用下,或门Ⅳ(12)的输出由“1”→“0”,则与门Ⅱ(15)的输出也由“1”→“0”,作为脉冲发生器(9)循环启动信号和结果输出控制模块(Ⅳ)的结果锁存信号; When the operand type is "0", the pulse generation distribution controller (Ⅲ) under the action of the falling edge of pulse ②, the output state of the type register (10) is "0", and the output state of the OR gate V (14) is " 1” state, under the action of the falling edge of pulse ③, the output of OR gate IV (12) changes from “1” to “0”, then the output of AND gate II (15) also changes from “1” to “0”, as The pulse generator (9) cycle start signal and the result latch signal of the result output control module (IV); 当操作数类型为“1”时,所述脉冲发生分配控制器(Ⅲ)在脉冲②下降沿的作用下,类型寄存器(10)输出状态为“1”,或门Ⅳ(12)输出为“1”状态,在脉冲④下降沿的作用下,或门Ⅴ(14)的输出由“1”→“0”,则与门Ⅱ(15)的输出也由“1”→“0”,作为脉冲发生器(9)循环启动信号和结果输出控制模块(Ⅳ)的结果锁存信号; When the operand type is "1", the pulse generation distribution controller (Ⅲ) under the action of the falling edge of pulse ②, the output state of the type register (10) is "1", and the output state of the OR gate IV (12) is " 1” state, under the action of the falling edge of pulse ④, the output of the OR gate V (14) changes from “1” to “0”, then the output of the AND gate II (15) also changes from “1” to “0”, as The pulse generator (9) cycle start signal and the result latch signal of the result output control module (IV); 当所述脉冲发生器(9)的运算结束输出端为“0”,CS为“0”时,在WR信号的下降沿作用下,启动输入端信号由“1”→“0”,启动脉冲发生器(9)工作,脉冲发生器(9)被启动工作之后,置运算结束信号输出端为“1”;如果启动输入端为“0”,循环启动输入端由“1”→“0”,启动脉冲发生器(9)工作;如果启动输入端信号为“1”,循环启动输入端信号由“1”→“0”,向系统发出运算结束信号,脉冲发生器(9)停止工作,脉冲①、脉冲②、脉冲③和脉冲④的输出端都处于为“1”状态,运算结束输出端为“0”状态;当复位输入端为“0”时,复位脉冲发生器(9),脉冲①、脉冲②、脉冲③和脉冲④的输出端都处于为“1”状态,运算结束输出端为“0”状态。 When the operation end output terminal of the pulse generator (9) is "0" and CS is "0", under the action of the falling edge of the WR signal, the signal at the start input terminal changes from "1" to "0", and the start pulse The generator (9) works, and after the pulse generator (9) is started to work, set the output end of the operation end signal to "1"; if the start input end is "0", the cycle start input end changes from "1" to "0" , start the pulse generator (9) to work; if the signal at the start input terminal is "1", the signal at the cycle start input terminal changes from "1" to "0", and sends an operation end signal to the system, and the pulse generator (9) stops working, The output terminals of pulse ①, pulse ②, pulse ③ and pulse ④ are all in the "1" state, and the output end of the operation is in the "0" state; when the reset input is "0", reset the pulse generator (9), The output terminals of pulse ①, pulse ②, pulse ③ and pulse ④ are all in the "1" state, and the output end of the operation is in the "0" state. 4.如权利要求1所述的浮点数除运算执行控制器,其特征在于:所述结果输出控制模块(Ⅳ)包括结果输出寄存器(16)、运算异常标志控制(17)、32位三态门组(18)和或门Ⅵ(19); 4. The floating-point number division execution controller according to claim 1, characterized in that: the result output control module (IV) includes a result output register (16), operation exception flag control (17), 32-bit tri-state Gate group (18) and OR gate VI (19); 所述结果输出寄存器(16)的运算结果输入端和浮点数除运算器(Ⅱ)的输出端连接,运算结果输出端与32位三态门组(18)的输入端、运算异常标志控制(17)的运算结果输入端、选通器(1)的一个输入端连接,结果锁存输入端和与门Ⅱ(15)的输出端连接; The operation result input terminal of the result output register (16) is connected to the output terminal of the floating-point number division operator (II), and the operation result output terminal is connected to the input terminal of the 32-bit tri-state gate group (18) and the abnormal operation flag control ( 17) The operation result input terminal is connected to an input terminal of the selector (1), and the result latch input terminal is connected to the output terminal of AND gate II (15); 所述运算异常标志控制(17)的结果锁存输入端和与门Ⅱ(15)的输出端连接;输出端输出中断请求信号IRQ,当运算结果出现异常时,输出端向系统发出中断请求信号IRQ; The operation abnormal flag control (17) result latch input terminal is connected to the output terminal of AND gate II (15); the output terminal outputs an interrupt request signal IRQ, and when the operation result is abnormal, the output terminal sends an interrupt request signal to the system IRQ; 所述32位三态门组(18)的控制输入端和或门Ⅵ(19)的输出端连接,输出端与系统数据总线DB连接; The control input terminal of the 32-bit tri-state gate group (18) is connected to the output terminal of the OR gate VI (19), and the output terminal is connected to the system data bus DB; 所述或门Ⅵ(19)的二个输入端分别与系统使能信号CS、读信号RD线连接; The two input terminals of the OR gate VI (19) are respectively connected to the system enable signal CS and the read signal RD line; 所述32位三态门组(18)输出结果输出寄存器(16)输出的运算结果,当使能信号CS为“0”,读信号RD为“0”时,或门Ⅵ(19)输出为“0”,控制32位三态门组(18)输出上次运算结果。 The 32-bit tri-state gate group (18) outputs the operation result output by the output register (16). When the enable signal CS is "0" and the read signal RD is "0", the output of the OR gate VI (19) is "0", controls the 32-bit tri-state gate group (18) to output the result of the last operation. 5.如权利要求1所述的浮点数除运算执行控制器,其特征在于:所述浮点操作数配置控制模块(Ⅰ)和脉冲发生分配控制器(Ⅲ)受系统操作数类型和运算方式的控制: 5. The floating-point number division execution controller according to claim 1, characterized in that: the floating-point operand configuration control module (I) and the pulse generation distribution controller (III) are subject to the system operand type and operation mode control: 当操作数类型为“0”时:选通器(1)输出结果输出寄存器(16)输出的运算结果,在脉冲发生器(9)输出的脉冲①下降沿的作用下,运算结果寄存器(2)锁存结果输出寄存器(16)输出的运算结果,或门Ⅱ(7)的输出端由“1”→“0”,与门Ⅰ(8)的输出端由“1”→“0”, 操作数寄存器(3)锁存来自系统总线DB的操作数,则除法运算的处理为如下两种方式: When the operand type is "0": the strobe (1) outputs the operation result output by the output register (16), and under the action of the falling edge of the pulse ① output by the pulse generator (9), the operation result register (2 ) the operation result output by the latch result output register (16), the output terminal of the OR gate II (7) changes from "1" to "0", the output terminal of the AND gate I (8) changes from "1" to "0", The operand register (3) latches the operand from the system bus DB, and the division operation is processed in the following two ways: 运算方式为“0”:操作数交换器(4)的交换数1输入端的运算结果传输到浮点数除运算器(Ⅱ)的操作数1的输入端,操作数交换器(4)的交换数2输入端的操作数传输到浮点数除运算器(Ⅱ)的操作数2的输入端,浮点数除运算器(Ⅱ)实施运算结果/操作数的运算; The operation mode is "0": the operation result of the input terminal of the exchange number 1 of the operand switcher (4) is transmitted to the input terminal of the operand 1 of the floating-point number division operator (II), and the exchange number of the operand switcher (4) 2 The operand at the input terminal is transferred to the input terminal of operand 2 of the floating-point number division operator (II), and the floating-point number division operator (II) implements the calculation of the operation result/operand; 运算方式为“1”:操作数交换器(4)的交换数1输入端的运算结果传输到浮点数除运算器(Ⅱ)的操作数2的输入端,操作数交换器(4)的交换数2输入端的操作数传输到浮点数除运算器(Ⅱ)的操作数1的输入端,实现两数的交换,浮点数除运算器(Ⅱ)实施操作数/运算结果的运算; The operation mode is "1": the operation result of the input terminal of the exchange number 1 of the operand switch (4) is transmitted to the input terminal of the operand 2 of the floating-point number division operator (II), and the exchange number of the operand switch (4) 2. The operand at the input end is transmitted to the input end of operand 1 of the floating-point number division operator (II) to realize the exchange of two numbers, and the floating-point number division operator (II) performs the operation of the operand/operation result; 当操作数类型为“1”时:选通器(1)输出来自系统总线DB的第1个操作数,在脉冲发生器(9)输出的脉冲①下降沿的作用下,运算结果寄存器(2)锁存系统总线DB的第1个操作数,或门Ⅱ(7)的输出端为“1”,非门Ⅰ(5)输出为“0”, 在输出的脉冲②下降沿的作用下,与门Ⅰ(8)的输出端由“1”→“0”, 操作数寄存器(3)锁存来自系统总线DB的第2个操作数,则除法运算的处理为如下两种方式: When the operand type is "1": the strobe (1) outputs the first operand from the system bus DB, and under the action of the falling edge of the pulse ① output by the pulse generator (9), the operation result register (2 ) to latch the first operand of the system bus DB, the output of the OR gate II (7) is "1", and the output of the NOT gate I (5) is "0", under the action of the falling edge of the output pulse ②, The output terminal of AND gate I (8) changes from "1" to "0", and the operand register (3) latches the second operand from the system bus DB, then the division operation is processed in the following two ways: 运算方式为“0”:操作数交换器(4)的交换数1输入端的系统总线DB的第1个操作数传输到浮点数除运算器(Ⅱ)的操作数1的输入端,操作数交换器(4)的交换数2输入端的系统总线DB的第2个操作数传输到浮点数除运算器(Ⅱ)的操作数2的输入端,浮点数除运算器(Ⅱ)实施第1个操作数/第2个操作数的运算; The operation mode is "0": the first operand of the system bus DB at the input end of the exchange number 1 of the operand switcher (4) is transmitted to the input end of the operand 1 of the floating-point number division operator (II), and the operand is exchanged The second operand of the system bus DB at the exchange number 2 input terminal of the device (4) is transferred to the input terminal of the operand 2 of the floating-point number division operator (II), and the floating-point number division operator (II) performs the first operation Operation of number/second operand; 运算方式为“1”:操作数交换器(4)的交换数1输入端的第1个操作数传输到浮点数除运算器(Ⅱ)的操作数2的输入端,操作数交换器(4)的交换数2输入端的系统总线DB的第2个操作数传输到浮点数除运算器(Ⅱ)的操作数1的输入端,实现两数的交换,浮点数除运算器(Ⅱ)实施第2个操作数/第1个操作数的运算。 The operation mode is "1": the first operand at the input end of the exchange number 1 of the operand switcher (4) is transmitted to the input end of the operand 2 of the floating-point number division operator (II), and the operand switcher (4) The second operand of the system bus DB at the input end of the exchange number 2 is transmitted to the input end of the operand 1 of the floating-point number division operator (II) to realize the exchange of two numbers, and the floating-point number division operator (II) implements the second operand operand/first operand operation.
CN201310681170.6A 2013-12-13 2013-12-13 Execution controller for floating-point number division operation Expired - Fee Related CN103645879B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310681170.6A CN103645879B (en) 2013-12-13 2013-12-13 Execution controller for floating-point number division operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310681170.6A CN103645879B (en) 2013-12-13 2013-12-13 Execution controller for floating-point number division operation

Publications (2)

Publication Number Publication Date
CN103645879A CN103645879A (en) 2014-03-19
CN103645879B true CN103645879B (en) 2016-09-14

Family

ID=50251104

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310681170.6A Expired - Fee Related CN103645879B (en) 2013-12-13 2013-12-13 Execution controller for floating-point number division operation

Country Status (1)

Country Link
CN (1) CN103645879B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5153848A (en) * 1988-06-17 1992-10-06 Bipolar Integrated Technology, Inc. Floating point processor with internal free-running clock
CN102929591A (en) * 2012-11-08 2013-02-13 广西工学院 Parallel operation logic operation and controller thereof
CN103135960A (en) * 2013-02-28 2013-06-05 浪潮集团有限公司 Design method of integrated floating point unit based on FPGA (field programmable gate array)

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5153848A (en) * 1988-06-17 1992-10-06 Bipolar Integrated Technology, Inc. Floating point processor with internal free-running clock
CN102929591A (en) * 2012-11-08 2013-02-13 广西工学院 Parallel operation logic operation and controller thereof
CN103135960A (en) * 2013-02-28 2013-06-05 浪潮集团有限公司 Design method of integrated floating point unit based on FPGA (field programmable gate array)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《A Low Power Approach to Floating Point Adder Design for DSP Applications》;R.V.K.Pillai;《Journal of VLSI signal processing systems for signal,image and video technology》;20010301;第27卷(第3期);第195-213页 *
《高速浮点运算单元的FPGA实现》;张小妍 等;《信息化研究》;20091130;第35卷(第11期);第24-27页 *

Also Published As

Publication number Publication date
CN103645879A (en) 2014-03-19

Similar Documents

Publication Publication Date Title
CN103336750B (en) Addressing dual-port memory controller integrated with storage unit
CN108153686B (en) Multi-interface CPU module
CN104679681B (en) Ahb bus accesses the high speed Biodge device and its method of work of SRAM on piece
CN102306141B (en) Method for describing configuration information of dynamic reconfigurable array
CN104950768A (en) VME (Versa module Eurocard) bus based multi-board-card communication method of dual-stage lithography control system
CN103793263A (en) DMA transaction-level modeling method based on Power PC processor
CN103677742B (en) Many floating-point operations number plus/minus arithmetic and control unit
CN103645879B (en) Execution controller for floating-point number division operation
CN203689501U (en) Multi-floating-point operand addition/subtraction operation controller
CN103645886B (en) Many floating-point operations number plus/minus, multiplication and division arithmetic and control unit
CN102708079B (en) Be applied to the method and system of the control data transmission of microcontroller
CN103677740B (en) Floating number plus/minus, multiplication and division computing perform controller
CN203746056U (en) Multi-operand four-arithmetic mixed fixed-point arithmetic operation controller
CN203812228U (en) Floating-point division execution controller
CN103645881B (en) Execution controller for floating-point number addition/subtractionoperation operation
CN203746055U (en) Floating-point addition/subtraction, multiplication, and division execution controller
CN203746058U (en) Floating-point addition/subtraction execution controller
CN102110066B (en) Tax-control encryption card control method
CN204406391U (en) A kind of data of optical fiber gyroscope R-T unit based on SPI
CN203812229U (en) Multi-floating-point operand addition/subtraction, multiplication, and division operation controller
CN103336751A (en) Storage controller integrating addressing function and storage unit
CN103645880B (en) Double instruction many floating-point operations number plus/minus arithmetic and control units
CN103631559B (en) Double-instruction multi-floating-point operand division operation controller
CN102929591B (en) Parallel operation logic operation and controller thereof
CN103645877B (en) Division operation control unit for multiple floating-point operands

Legal Events

Date Code Title Description
PB01 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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160914

Termination date: 20201213