CN108471303A - Programmable nanosecond timing precision pulse generator based on FPGA - Google Patents

Programmable nanosecond timing precision pulse generator based on FPGA Download PDF

Info

Publication number
CN108471303A
CN108471303A CN201810269029.8A CN201810269029A CN108471303A CN 108471303 A CN108471303 A CN 108471303A CN 201810269029 A CN201810269029 A CN 201810269029A CN 108471303 A CN108471303 A CN 108471303A
Authority
CN
China
Prior art keywords
pulse
fpga
control
module
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810269029.8A
Other languages
Chinese (zh)
Other versions
CN108471303B (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.)
National University of Defense Technology
Original Assignee
National University of Defense 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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201810269029.8A priority Critical patent/CN108471303B/en
Publication of CN108471303A publication Critical patent/CN108471303A/en
Application granted granted Critical
Publication of CN108471303B publication Critical patent/CN108471303B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/64Generators producing trains of pulses, i.e. finite sequences of pulses
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/00019Variable delay
    • H03K2005/00058Variable delay controlled by a digital setting
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/0015Layout of the delay element
    • H03K2005/00234Layout of the delay element using circuits having two logic levels
    • H03K2005/00247Layout of the delay element using circuits having two logic levels using counters
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/0015Layout of the delay element
    • H03K2005/00234Layout of the delay element using circuits having two logic levels
    • H03K2005/00254Layout of the delay element using circuits having two logic levels using microprocessors

Abstract

A programmable nanosecond timing precision pulse generator based on an FPGA comprises the FPGA, an upper computer, a crystal oscillator circuit, a pulse amplitude control circuit and a pulse edge conditioning circuit, wherein the upper computer, the crystal oscillator circuit, the pulse amplitude control circuit and the pulse edge conditioning circuit are connected to the periphery of the FPGA, and the FPGA comprises a serial port control module, an instruction analysis module, a timing and pulse string generation module, a clock control module, an SPI control module and an OSERDES control module. The invention uses a piece of FPGA and a small amount of peripheral circuits to realize multi-channel pulse signals with nanosecond timing precision, and realizes a universal asynchronous receiving and transmitting serial port protocol in the FPGA, so that the pulse generator has a programmable control function, the pulse period, the pulse width and the pulse delay can be controlled by serial port programming, and the pulse amplitude is programmable by matching with a pulse amplitude control circuit. The circuit of the invention has small size and simple structure, can work independently and can be integrated into other systems as a modular circuit.

Description

A kind of programmable nanosecond timing accuracy impulse generator based on FPGA
Technical field
The invention belongs to electronic technology fields, are related to a kind of impulse generator, refer specifically to a kind of programmable multichannel and receive Second grade high-precision pulse generator, can output multi-channel impulse amplitude, pulse period, pulse width and pulse delay it is programmable Pulse signal, the Adjustment precision in period, pulsewidth and delay reaches 1ns.It can be adopted as pulse signal source applied to signal The fields such as collection and signal measurement.
Background technology
High-precision pulse generation technique has very in application fields such as signal measurement, signal generation, pumping signal generations It is widely applied demand.Such as light pulse signal fields of measurement is measured in some high speed signals, needs to utilize high-precision pulse signal As sampling trigger signal, the sampling instant and sampling length of ADC chips are accurately controlled.Especially in multi-channel sampling Field, it is desirable that the delay controllable precise of multiplex pulse signal.With the raising of signal frequency, pulse generation technology is to signal arteries and veins Wide, period and pulse up and down require increasingly to improve along equally accurate.
Although many apparatus manufactures provide the special instruments such as high-precision pulse generator, fancy price and larger Volumetric constraint its application scenarios.Ensuring that pulse parameter is high-precision simultaneously, the volume of smaller circuit and lower life Producing cost has significant practical significance.High precision timing control is the key that pulse-generating circuit, and existing scheme mostly uses greatly MCU or FPGA realizes the method for counter to control the burst length, and burst length precision is limited to counter clock frequency, difficult To realize the timing accuracy of nanosecond.
Invention content
Of the existing technology in order to solve the problems, such as, present invention aims at provide a kind of programmable nanosecond based on FPGA Grade timing accuracy impulse generator.The present invention is based on output serializer/de-serializers (OSERDES) technologies of FPGA, propose a kind of Multichannel pulse signal generator realizes the high-precision pulse sequential control method of 1ns, and realizes inside FPGA universal asynchronous Transmitting-receiving transmission (Universal Asynchronous Receiver/Transmitter, UART) serial port protocol, makes pulse generation Device has programmable control function, and pulse period, pulse width and pulse delay can be controlled by serial port programming, pulse of arranging in pairs or groups Amplitude control circuit keeps impulse amplitude programmable.The present invention is as a kind of flexible, cheap, convenient pulse generation of Human-machine Control Device scheme can expand the application range of impulse generator, meet the application demand of a variety of occasions.
Purpose to realize the present invention, the present invention is achieved by the following scheme:
A kind of programmable nanosecond timing accuracy impulse generator based on FPGA, including FPGA and be connected to outside FPGA Host computer, crystal oscillating circuit, impulse amplitude control circuit and the porch modulate circuit enclosed, FPGA include serial ports control module, Periodically with train of pulse module, clock control module, SPI control modules and OSERDES control modules occur for command analysis module.
The host computer is connect with the serial ports control module in FPGA, and serial ports control module is for receiving from host computer Pulse Width Control instructs, and Pulse Width Control instruction includes the pulse delay of impulse amplitude, pulse period, pulse width and interchannel.
Command analysis module is connect with serial ports control module, and the Pulse Width Control of host computer is instructed output by serial ports control module To command analysis module, command analysis module is used to parse the Pulse Width Control instruction of host computer, and the Pulse Width Control of host computer is referred to Order is converted to internal control word, including impulse amplitude control word and Pulse Width Control word.
Timing is connect with pulse series generator with command analysis module, and instruction parsing mould is periodically received with pulse series generator The Pulse Width Control word of block output, for the train of pulse for generating corresponding 8bit per pulse all the way.Timing and pulse series generator Output connection OSERDES control modules, OSERDES control modules receive the pulse of timing and the 8bit of pulse series generator output 8bit trains of pulse are converted to serial bit stream and exported and give porch modulate circuit by string under the driving of high-frequency clock.Arteries and veins The serial bit stream that trimming exports FPGA along modulate circuit carries out edge conditioning, adjustment pulse rise time, fall time and Impulse level simultaneously exports away pulse.
SPI control modules are connect with command analysis module, and SPI control modules receive the pulse width of command analysis module output Control word is spent, SPI control modules connect impulse amplitude control circuit, and SPI control modules control impulse amplitude control by SPI protocol The digital potentiometer of circuit processed, and then control the output amplitude of pulse.SPI control module of the impulse amplitude control circuit in FPGA Under control, corresponding impulse amplitude control voltage is generated, porch modulate circuit is acted on.
Crystal oscillating circuit is connect with the clock control module in FPGA, and crystal oscillating circuit generates 125MHz clocks, as FPGA's Working standard clock, the clock control module in FPGA are responsible for generating two-way clock i.e. low-speed clock and height with frequency multiplication relationship Fast clock, 1MHz low-speed clocks act on serial ports control module and command analysis module, and the high-frequency clock of 1GHz acts on OSERDES control modules;125MHz clocks act on timing and module occur with train of pulse.
As the preferred technical solution of the present invention, the FPGA uses the FPGA with OSERDES functions, OSERDES's Highest serial clock rate is not less than 1Gbps, such as 6 Series FPGAs of Spartan of Xilinx companies.
Compared with prior art, this method has the following advantages:
(1) present invention realizes that the multichannel pulse of nanosecond timing accuracy is believed using a piece of FPGA and a small amount of peripheral circuit Number, circuit size is small, simple in structure.It can work independently, and can be integrated into other systems as modularized circuit.
(2) for the FPGA that the present invention uses for the serial low performance FPGA of Spartan 6, a small amount of peripheral circuit chip of arranging in pairs or groups is whole Body is cheap, and system cost is greatly reduced while realizing that function occurs for high-precision pulse.
(3) impulse amplitude, pulse period, pulse width and pulse delay of the invention can be compiled by UART serial ports Journey, pulse output adjustable extent is big, and Universal joint, agreement is simple, is convenient for PC control.
Description of the drawings
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below There is attached drawing needed in technology description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this Some embodiments of invention without having to pay creative labor, may be used also for those of ordinary skill in the art With obtain other attached drawings according to these attached drawings.
Fig. 1 is the structural diagram of the present invention.
Fig. 2 is that the implementing procedure figure of module occurs with train of pulse for the timing of the present invention.
Fig. 3 is the structure chart of impulse amplitude control circuit.
Specific implementation mode
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete Site preparation describes, it is clear that described example is only a part of the embodiment of the present invention, instead of all the embodiments.Based on this Embodiment in invention, the every other reality that those of ordinary skill in the art are obtained without creative efforts Example is applied, shall fall within the protection scope of the present invention.
The present invention proposes a kind of programmable nanosecond timing accuracy impulse generator based on FPGA, the wherein timing of pulse Precision reaches 1ns.Its structure diagram is as shown in Figure 1.
Including FPGA and it is connected to host computer, crystal oscillating circuit, impulse amplitude control circuit and the edge of pulse of the peripheries FPGA Along modulate circuit, FPGA include serial ports control module, command analysis module, periodically with train of pulse occur module, clock control mould Block, SPI control modules and OSERDES (deserializer) control module.
In the present embodiment, 6 series of Spartan that FPGA is used is a series of positioning low sides, low that Xilinx companies release The FPGA of power consumption application scenarios, selected model XC6SLX9, only 1430 Slices and 11440 Flip-Flops resources. If its internal Slices and register resources is directly used to realize timer logic, maximum operation frequency is difficult to be more than 200MHz can not be directly realized by the timing accuracy of 1ns.The present invention utilizes the string of the OSERDES control modules inside Spartan 6 Row transmission-receiving function turns the method for serial bit stream using parallel pulse string, exports high-precision pulse level.Specific implementation is such as Shown in Fig. 1.
The host computer is connect with the serial ports control module in FPGA, and serial ports control module is for receiving from host computer Pulse Width Control instructs, and Pulse Width Control instruction includes the pulse delay of impulse amplitude, pulse period, pulse width and interchannel.
Command analysis module is connect with serial ports control module, and the Pulse Width Control of host computer is instructed output by serial ports control module To command analysis module, command analysis module is used to parse the Pulse Width Control instruction of host computer, and the Pulse Width Control of host computer is referred to Order is converted to internal control word, including impulse amplitude control word and Pulse Width Control word.
Timing is connect with pulse series generator with command analysis module, and instruction parsing mould is periodically received with pulse series generator The Pulse Width Control word of block output, for the train of pulse for generating corresponding 8bit per pulse all the way.Timing and pulse series generator Output connection OSERDES control modules.OSERDES control modules realize that parallel pulse string turns pulse bit stream.OSERDES is controlled Module receives the train of pulse of timing and the 8bit of pulse series generator output, turns 8bit trains of pulse under the driving of high-frequency clock It is changed to serial bit stream and exports and give porch modulate circuit.The serial bit stream that porch modulate circuit exports FPGA Edge conditioning is carried out, adjustment pulse rise time, fall time and impulse level simultaneously export away pulse.
SPI control modules are connect with command analysis module, and SPI control modules receive the pulse width of command analysis module output Control word is spent, SPI control modules connect impulse amplitude control circuit, and SPI control modules control impulse amplitude control by SPI protocol The digital potentiometer of circuit processed, and then control the output amplitude of pulse.SPI control module of the impulse amplitude control circuit in FPGA Under control, corresponding impulse amplitude control voltage is generated, porch modulate circuit is acted on.
Crystal oscillating circuit is connect with the clock control module in FPGA, and crystal oscillating circuit generates 125MHz clocks, as FPGA's Working standard clock, the clock control module in FPGA are responsible for generating two-way clock i.e. low-speed clock and height with frequency multiplication relationship Fast clock, 1MHz low-speed clocks act on serial ports control module and command analysis module, and the high-frequency clock of 1GHz acts on OSERDES control modules;125MHz clocks act on timing and module occur with train of pulse.
About OSERDES control modules
6 Series FPGAs of Spartan are integrated with OSERDES control modules, and OSERDES control modules realize parallel pulse string Turn pulse bit stream.In wherein each I/O block (IOB, input/output block) serioparallel exchange is exported comprising a 4-bit Device OSERDES.It is master-slave mode by the SerDes resource distributions of two neighboring I/O block, cascade constitutes a 8-bit SerDes, Realize 8 high speed serial parallel exchanges.Using 6 Series FPGA internal proprietaries of Spartan in the buffering locking phase of OSERDES input and output Ring (BUFPLL) BUFPLL can provide the serioparallel exchange work clock of 1GHz for OSERDES control modules its I/O blocks.
The present embodiment constitutes 8 using the OSERDES control modules cascade of 6 two adjacent I/O blocks of Spartan:1 parallel-serial conversion 8 parallel-by-bit pulse series datas of the 125MHz clock rates of input are changed into the serial bit stream of octuple rate 1Gbps and defeated by device Go out and gives porch modulate circuit.For example, if the input of OSERDES control modules is the parallel arteries and veins under 125MHz clock frequencies Data 00110000 are rushed, then the bit stream exported after OSERDES is converted forms a pulsewidth 2ns, period 8ns, duty ratio 25% pulse.
About command analysis module
Serial ports control module receives the Pulse Width Control instruction from host computer, and Pulse Width Control instructs the width for including four tunnel pulses Spend A1-A4, pulse period T1-T4, pulse width W1-W4, four road relative time delay D1-D4
Command analysis module is used to parse the Pulse Width Control instruction of host computer, and the Pulse Width Control instruction of host computer is converted to Internal control word, including impulse amplitude control word and Pulse Width Control word.
Specifically, command analysis module is by the impulse amplitude control word A of four tunnel pulses1-A4It is scaled impulse amplitude control electricity The resistance value control word RW of digital potentiometer in road1-RW4, and resistance value control word is sent to SPI control modules.About numerical control current potential The circular of the resistance value control word of device gives in next trifle is about impulse amplitude control circuit and explains in detail.
Command analysis module is also responsible for pulse period T1-T4, pulse width W1-W4, four road relative time delay D1-D4It is converted to Pulse Width Control word inside FPGA, including pulse passage delay time value PND, pulses low time value PNL and the high electricity of pulse Flat time value PNH.PND, PNL and PNH indicate corresponding time span 1GHz clocks clock count values.Such as pulse ginseng It is delay 10ns, pulse period 1ms to count, pulse duty cycle 30%, i.e. pulse width 300ns, then PND=10, PNL=700, PNH=300.
About porch modulate circuit and impulse amplitude control circuit
The high-speed pulse serial bit stream exported from the OSERDES control modules of FPGA, is limited to the driving side of FPGAIO Formula and fan-out capability, the rising edge and failing edge of pulse signal are slower, and impulse waveform is undesirable, need to increase porch Modulate circuit makes pulse along more precipitous.The present embodiment selects the 74LVC2T45 electrical level transferring chips of NXP semiconductor companies production real Existing porch conditioning functions, which is the tri-state two-way level converting transceiver of a dibit, dual power supply.It is two-way It supports 1.2V to 5.5V power supplies, turn between the logical signal of highest 420Mbps data transfer rate varying level standards may be implemented It changes.The edge conditioning functions similar to Schmitt trigger circuit may be implemented in its high speed gate circuit being internally integrated.It will be from The Bitstream signal of the OSERDES control modules output of FPGA is connected to the ports A of 74LVC2T45 electrical level transferring chips, The output pulse signal rising edge and failing edge of the ports B of 74LVC2T45 electrical level transferring chips can reach 1.5ns, to Meet the design requirement of High speed pulse generator.
The output end of the OSERDES control modules of the ports the A connection FPGA of 74LVC2T45 electrical level transferring chips, The driving voltage of 74LVC2T45 electrical level transferring chips is consistent with FPGA IO voltages.By adjusting 74LVC2T45 level conversion cores The supply voltage of its port B of piece changes the level standard of output signal.Consider 74LVC2T45 chip B port output levels and B It holds supply voltage to there is about 0.5V pressure drops, needs onboard power-supply system realization 2.3V-5.5V adjustable voltages conversion.
Impulse amplitude control circuit generates corresponding impulse amplitude control voltage under the SPI control modules control of FPGA, Act on porch modulate circuit.Impulse amplitude control circuit is as shown in figure 3, including LT8335 switching power source chips and its outside Enclose circuit, digital potentiometer AD5160.The peripheral circuit of LT8335 switching power source chips is provided according to its chip data handbook Single-ended primary winding inductance converts (single-ended primary inductance converter, SEPIC) electric source modes Connection.SEPIC electric source modes allow output voltage to be more than, are less than or equal to input voltage, it can be ensured that system input voltage When changing in the input range of 3V-12V, LT8335 switching power source chips export the voltage of setting always.LT8335 switch electricity The ends numerical control tap W of source chip its FBX pin termination digital potentiometer AD5160, A, B two-port of digital potentiometer AD5160 Resistance to numerical control tap W is respectively RAWAnd RBW, the ports the A connecting resistance R1 of digital potentiometer AD5160 is followed by impulse amplitude control The output end V of circuit processedOUT, it is grounded after the ports the A connecting resistance R2 of digital potentiometer AD5160.The SPI control modules of FPGA connect The SPI interface of digital potentiometer AD5160, FPGA control digital potentiometer AD5160 by SPI control modules, electricity may be implemented Resistance adjustment function.
The present embodiment use Linear companies production LT8335 switching power source chips, and be configured as single-ended primary around Group inductive transduction (single-ended primary inductance converter, SEPIC) electric source modes.In the pattern Under, the calculation formula of output voltage is:
Adjust the resistance R of its FBX pin end of LT8335 switching power source chips1And R2Proportionate relationship can change LT8335 Switching power source chip output voltage, in addition chip handbook require R1、R2Resistance value between 25K Ω -1M Ω.The present embodiment is in Fig. 3 Shown in R1、R2Increase digital potentiometer chip in partial circuit.The present embodiment selects 256 digital potentiometers of SPI interface AD5160, end-to-end resistance maximum 100K Ω, FPGA control digital potentiometer AD5160 by SPI control modules, may be implemented Resistance adjusts function.As shown in Figure 3, it is assumed that the resistance of digital potentiometer AD5160 its A, B two-port to numerical control tap W is respectively RAWAnd RBW, then formula be deformed into:
Wherein, RAW+RBW=100K Ω, take Ra=30K Ω, Rb=52K Ω, substituting into formula can obtain, VOUTAdjusting model It encloses for 1.9V-5.6V, meets the adjustable range of 2.3V-5.5V needed for system, and make its FBX of LT8335 switching power source chips The R of pin1、R2Resistance value is between the 25K Ω -1M Ω that chip allows always.
Command analysis module in FPGA is after being resolved to impulse amplitude control word, according to output voltage VOUTCalculating it is public Formula calculates the corresponding resistance values of Vout, and controls calculation according to the resistance value of digital potentiometer AD5160 and be digitally controlled potentiometer Resistance value control word is sent to SPI control modules by corresponding resistance value control word.SPI control modules are converted to resistance value control word Serial SPI data, the digital potentiometer in write pulse amplitude control circuit, and then electric power output voltage is caused to change, Output voltage acts on the impulse level conversion chip 74LVC2T45 of porch modulate circuit.Impulse level conversion chip 74LVC2T45 according to the supply voltage of its port B of 74LVC2T45 electrical level transferring chips, by 74LVC2T45 electrical level transferring chips its The pulse signal level of the ports A input is converted to the corresponding level standard output in its port B of 74LVC2T45 electrical level transferring chips, Realize step-by-step adjustment of the pulse output level from 1.5V to 5V.
Module occurs about timing and train of pulse
Timing occurs module with train of pulse and mainly completes according to three pulse period, pulsewidth and pulse delay input parameters, Generate the parallel 8bit trains of pulse of coincidence pulse timing demands.As shown in Fig. 2, being as follows:
Step 1, initialization FPGA built-in variable delay times count CNDelay, pulses low counts CNLow and arteries and veins Level of leaping high counts CNHigh, and initialization is set as 0, and module periodically occurs with train of pulse and receives what command analysis module passed over Input variable, that is, pulse passage delay time value PND, pulses low time value PNL and pulse high level time value PNH.
Step 2, trigger time counting CNDelay is cumulative, because counter works frequency is 125MHz, and exports Pulse bit stream frequency is 1Gbps, therefore each clock cycle CNDelay adds 8.
Step 3 stops time delay count at the time of delay time is counted equal to or more than communication channel delay time value, enables Output, starts to export complete zero 8 ' b00000000 of low level pulse string.In view of timing accuracy requires 1ns, low level time meter The value CNDelay that several initial values is equal to current delay time counter subtracts pulse passage delay time value PND.
Step 4 starts low level counting CNLow and adds up, and each clock cycle CNLow adds 8.
Step 5 stops low level and counts, start defeated at the time of low level is counted equal to or more than low level time value Go out high level pulse string, it is contemplated that timing accuracy requires 1ns, the initial value that high level time counts to be equal to current low level time The value CNLow of counter subtracts pulses low time value PNL, the train of pulse of current time output should be equal to eight full 0s with CNHigh 1bit are asked or operation obtains later.For example, work as PNL=100, CNLow=104, then current time high level time Count initial value CNHigh=4,8 ' b00001111 of output parallel pulse displacement.
Step 6 starts high level counting CNHigh and adds up, and each clock cycle CNHigh adds 8.
Step 7 stops high level meter at the time of high level counts CNHigh equal to or more than high level time value PNH Number starts to export low level pulse string, it is contemplated that timing accuracy requires 1ns, the initial value that low level time counts to be equal to current The value CNHigh of high level time counter subtracts low level time value PNH, and the train of pulse of current time output should be equal to eight It asks with the positions CNLow 0 and is obtained after operation in position complete 1.For example, work as PNH=200, CNHigh=206, then current time low level Time counting initial value CNLow=6,8 ' b11000000 of output parallel pulse displacement.Step 4 is returned to, low level is restarted It counts cumulative.
Single channel or multichannel pulse generation may be implemented in the pulse generation method of the present invention, and each channel corresponds to one group Command analysis module, periodically with train of pulse module and porch modulate circuit all the way occur for OSERDES control modules, wherein Command analysis module, module exampleization realization inside FPGA periodically occurs with train of pulse for OSERDES control modules, in FPGA In the case that resource meets, realize that more pulse passage quantity need not increase FPGA quantity, often increasing the output of pulse all the way needs Increase set of pulses edge modulate circuit.If multiplex pulse voltage synchronous is adjusted, system only needs a piece of LT8335 electricity Source chip and a piece of AD5160 digital potentiometers often increase two-way pulse output and only need to increase a piece of 74LVC2T45.
The above is only a preferred embodiment of the present invention, protection scope of the present invention is not limited to above-mentioned implementation Example, all technical solutions belonged under thinking of the present invention all belong to the scope of protection of the present invention.It should be pointed out that for the art Those of ordinary skill for, several improvements and modifications without departing from the principles of the present invention, these improvements and modifications It should be regarded as protection scope of the present invention.

Claims (10)

1. a kind of programmable nanosecond timing accuracy impulse generator based on FPGA, which is characterized in that including FPGA and company It is connected on host computer, crystal oscillating circuit, impulse amplitude control circuit and the porch modulate circuit of the peripheries FPGA, FPGA includes serial ports Command analysis module, periodically with train of pulse module, clock control module, SPI control modules and OSERDES occur for control module Control module;
The host computer is connect with the serial ports control module in FPGA, and serial ports control module is for receiving the pulse from host computer Control instruction, Pulse Width Control instruction include the pulse delay of impulse amplitude, pulse period, pulse width and interchannel;
Command analysis module is connect with serial ports control module, and serial ports control module is by the Pulse Width Control instruction output of host computer to finger It enables parsing module, command analysis module be used to parse the Pulse Width Control instruction of host computer, the Pulse Width Control instruction of host computer is turned It is changed to internal control word, including impulse amplitude control word and Pulse Width Control word;
Timing is connect with pulse series generator with command analysis module, and it is defeated periodically to receive command analysis module with pulse series generator The Pulse Width Control word gone out, for the train of pulse for generating corresponding 8bit per pulse all the way;The output of timing and pulse series generator OSERDES control modules are connected, OSERDES control modules receive the train of pulse of timing and the 8bit of pulse series generator output, 8bit trains of pulse are converted to serial bit stream and exported under the driving of high-frequency clock and give porch modulate circuit;The edge of pulse Edge conditioning, adjustment pulse rise time, fall time and pulse are carried out to the serial bit stream that FPGA is exported along modulate circuit Level simultaneously exports away pulse;
SPI control modules are connect with command analysis module, and SPI control modules receive the impulse amplitude control of command analysis module output Word processed, SPI control modules connect impulse amplitude control circuit, and SPI control modules control impulse amplitude control electricity by SPI protocol The digital potentiometer on road, and then control the output amplitude of pulse;SPI control module of the impulse amplitude control circuit in FPGA controls Under, corresponding impulse amplitude control voltage is generated, porch modulate circuit is acted on;
Crystal oscillating circuit is connect with the clock control module in FPGA, and crystal oscillating circuit generates 125MHz clocks, the work as FPGA Reference clock, when the clock control module in FPGA is responsible for generating the two-way clock i.e. low-speed clock and high speed with frequency multiplication relationship Clock, 1MHz low-speed clocks act on serial ports control module and command analysis module, and the high-frequency clock of 1GHz acts on OSERDES controls Molding block;125MHz clocks act on timing and module occur with train of pulse.
2. the programmable nanosecond timing accuracy impulse generator according to claim 1 based on FPGA, which is characterized in that FPGA uses the FPGA with OSERDES functions, the highest serial clock rate of OSERDES to be not less than 1Gbps.
3. the programmable nanosecond timing accuracy impulse generator according to claim 2 based on FPGA, which is characterized in that FPGA uses 6 Series FPGAs of Spartan of Xilinx companies, 6 Series FPGAs of Spartan to be integrated with OSERDES control modules, OSERDES control modules realize that parallel pulse string turns pulse bit stream.
4. the programmable nanosecond timing accuracy impulse generator according to claim 3 based on FPGA, which is characterized in that In 6 Series FPGA each of which I/O blocks of Spartan deserializer OSERDES is exported comprising a 4-bit;By two neighboring IO The SerDes resource distributions of block are master-slave mode, and cascade constitutes a 8-bit SerDes, realizes 8 high speed serial parallel exchanges;Profit With 6 Series FPGA internal proprietaries of Spartan in the buffering phaselocked loop of OSERDES input and output be its IO of OSERDES control modules Block provides the serioparallel exchange work clock of 1GHz.
5. the programmable nanosecond timing accuracy impulse generator according to claim 4 based on FPGA, which is characterized in that Serial ports control module receives the Pulse Width Control instruction from host computer, and Pulse Width Control instructs the amplitude A for including four tunnel pulses1-A4, Pulse period T1-T4, pulse width W1-W4, four road relative time delay D1-D4;Command analysis module is by the impulse amplitude of four tunnel pulses Control word A1-A4It is scaled the resistance value control word RW of digital potentiometer in impulse amplitude control circuit1-RW4, and resistance value is controlled Word is sent to SPI control modules;
Command analysis module is also responsible for pulse period T1-T4, pulse width W1-W4, four road relative time delay D1-D4Be converted to FPGA Internal Pulse Width Control word, including when pulse passage delay time value PND, pulses low time value PNL and pulse high level Between value PNH;Pulse passage delay time value PND, pulses low time value PNL and pulse high level time value PNH are indicated Clock count value of the corresponding time span in 1GHz clocks.
6. the programmable nanosecond timing accuracy impulse generator according to claim 4 based on FPGA, which is characterized in that Porch modulate circuit selects the 74LVC2T45 electrical level transferring chips of NXP semiconductor companies production to realize porch conditioning Function;.The Bitstream signal exported from the OSERDES control modules of FPGA is connected to the A of 74LVC2T45 electrical level transferring chips Port, the output pulse signal rising edge and failing edge of the ports B of 74LVC2T45 electrical level transferring chips can reach 1.5ns.
7. the programmable nanosecond timing accuracy impulse generator according to claim 6 based on FPGA, which is characterized in that Impulse amplitude control circuit includes LT8335 switching power source chips and its peripheral circuit, digital potentiometer AD5160, and LT8335 is opened The single-ended primary winding inductance converting power source pattern connection that the peripheral circuit of powered-down source chip is provided according to its chip data handbook, Single-ended primary winding inductance converting power source pattern allows output voltage to be more than, is less than or equal to input voltage, it can be ensured that is When system input voltage changes in the input range of 3V-12V, LT8335 switching power source chips export the voltage of setting always;
The ends numerical control tap W of LT8335 switching power source chips its FBX pin termination digital potentiometer AD5160, digital potentiometer The resistance of A, B two-port of AD5160 to numerical control tap W are respectively RAWAnd RBW, the ports the A connecting resistance of digital potentiometer AD5160 R1 is followed by the output end V of impulse amplitude control circuitOUT, it is grounded after the ports the A connecting resistance R2 of digital potentiometer AD5160;FPGA SPI control modules connection digital potentiometer AD5160 SPI interface, FPGA passes through SPI control modules and controls digital potentiometer Resistance adjustment function may be implemented in AD5160.
8. the programmable nanosecond timing accuracy impulse generator according to claim 7 based on FPGA, which is characterized in that Assuming that the resistance of digital potentiometer AD5160 its A, B two-port to numerical control tap W are respectively RAWAnd RBW, output voltage VOUTMeter Calculating formula is:
Wherein, RAW+RBW=100K Ω, take Ra=30K Ω, Rb=52K Ω, substituting into formula can obtain, VOUTAdjustable range be 1.9V-5.6V meets the adjustable range of 2.3V-5.5V needed for system, and makes its FBX pin of LT8335 switching power source chips R1、R2Resistance value is between the 25K Ω -1M Ω that LT8335 switching power source chips allow always.
9. the programmable nanosecond timing accuracy impulse generator according to claim 8 based on FPGA, which is characterized in that Command analysis module in FPGA is after being resolved to impulse amplitude control word, according to output voltage VOUTCalculation formula calculate The corresponding resistance values of Vout, and calculation is controlled according to the resistance value of digital potentiometer AD5160 and is digitally controlled the corresponding resistance of potentiometer It is worth control word, resistance value control word is sent to SPI control modules;Resistance value control word is converted to serial SPI numbers by SPI control modules According to, the digital potentiometer in write pulse amplitude control circuit, and then electric power output voltage is caused to change, output voltage is made Impulse level conversion chip 74LVC2T45 for porch modulate circuit;Impulse level conversion chip 74LVC2T45 according to The supply voltage of its port B of 74LVC2T45 electrical level transferring chips, the arteries and veins that its port A of 74LVC2T45 electrical level transferring chips is inputted It rushes signal level and is converted to the corresponding level standard output in its port B of 74LVC2T45 electrical level transferring chips, realize pulse output electricity The flat step-by-step adjustment from 1.5V to 5V.
10. the programmable nanosecond timing accuracy impulse generator according to claim 9 based on FPGA, feature exist In the workflow of module periodically occurs with train of pulse is:
Step 1, initialization FPGA built-in variable delay times count CNDelay, pulses low counts CNLow and pulse is high Level counts CNHigh, and initialization is set as 0, is periodically passed over train of pulse generation module reception command analysis module defeated Enter variable i.e. pulse passage delay time value PND, pulses low time value PNL and pulse high level time value PNH;
Step 2, trigger time counting CNDelay is cumulative, because counter works frequency is 125MHz, and exports pulse Bitstream frequency is 1Gbps, therefore each clock cycle CNDelay adds 8;
Step 3 stops time delay count at the time of delay time is counted equal to or more than communication channel delay time value, enables defeated Go out, starts to export complete zero 8 ' b00000000 of low level pulse string;In view of timing accuracy requires 1ns, low level time to count Initial value be equal to current delay time counter value CNDelay subtract pulse passage delay time value PND;
Step 4 starts low level counting CNLow and adds up, and each clock cycle CNLow adds 8;
Step 5 stops low level and counts, it is high to start output at the time of low level is counted equal to or more than low level time value Level pulse string, it is contemplated that timing accuracy requires 1ns, the initial value that high level time counts to be counted equal to current low level time The value CNLow of device subtracts pulses low time value PNL, the train of pulse of current time output should be equal to eight full 0s with CNHigh 1bit are asked or operation obtains later;
Step 6 starts high level counting CNHigh and adds up, and each clock cycle CNHigh adds 8;
Step 7 stops high level and counts at the time of high level counts CNHigh equal to or more than high level time value PNH, Start to export low level pulse string, it is contemplated that timing accuracy requires 1ns, the initial value that low level time counts to be equal to current high electricity The value CNHigh of flat time counter subtracts low level time value PNH, and the train of pulse of current time output should be equal to eight complete 1 It asks with the positions CNLow 0 and is obtained after operation;Step 4 is returned to, it is cumulative to restart low level counting.
CN201810269029.8A 2018-03-29 2018-03-29 Programmable nanosecond timing precision pulse generator based on FPGA Active CN108471303B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810269029.8A CN108471303B (en) 2018-03-29 2018-03-29 Programmable nanosecond timing precision pulse generator based on FPGA

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810269029.8A CN108471303B (en) 2018-03-29 2018-03-29 Programmable nanosecond timing precision pulse generator based on FPGA

Publications (2)

Publication Number Publication Date
CN108471303A true CN108471303A (en) 2018-08-31
CN108471303B CN108471303B (en) 2021-06-25

Family

ID=63262273

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810269029.8A Active CN108471303B (en) 2018-03-29 2018-03-29 Programmable nanosecond timing precision pulse generator based on FPGA

Country Status (1)

Country Link
CN (1) CN108471303B (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109828632A (en) * 2018-12-29 2019-05-31 武汉光谷互连科技有限公司 A kind of adjustable ultra-narrow Multi-path synchronous pulse generating unit and method based on FPGA
CN111277248A (en) * 2020-04-03 2020-06-12 中国科学院近代物理研究所 Multi-working-mode synchronous pulse generating device and working method thereof
CN111600813A (en) * 2020-05-13 2020-08-28 中国人民解放军国防科技大学 Multi-mode interconnection interface controller for converged network
CN112532210A (en) * 2020-12-07 2021-03-19 合肥埃科光电科技有限公司 Adjustable pulse signal generator
CN115963388A (en) * 2022-12-22 2023-04-14 广东高云半导体科技股份有限公司 System for realizing circuit debugging, field programmable logic gate array and upper computer
CN116338410A (en) * 2023-05-26 2023-06-27 中诚华隆计算机技术有限公司 Needle card control device, control system and control method for testing core particles
CN117631750A (en) * 2024-01-26 2024-03-01 华中师范大学 Digital pulse generator based on FPGA high-speed transceiver

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101316104A (en) * 2007-05-31 2008-12-03 阿尔特拉公司 Apparatus for all-digital serializer-de-serializer and associated methods
CN101777891A (en) * 2009-12-18 2010-07-14 广东正业科技股份有限公司 Ultrafast edge step pulse generating method and generator thereof
CN102307046A (en) * 2011-06-09 2012-01-04 中国科学院西安光学精密机械研究所 Time-resolved photon counting imaging system and method
CN104539286A (en) * 2014-12-10 2015-04-22 深圳市国微电子有限公司 Fundamental frequency clock generation circuit
CN104617923A (en) * 2015-02-06 2015-05-13 中国人民解放军国防科学技术大学 High-speed low-power-consumption multi-threshold-value D-type trigger
CN104980130A (en) * 2015-07-15 2015-10-14 福建利利普光电科技有限公司 FPGA-based OSERDES2 square wave rise time changing method
CN105373497A (en) * 2015-10-29 2016-03-02 中国人民解放军国防科学技术大学 Digital signal processor (DSP) chip based matrix transposition device
US20160080138A1 (en) * 2014-09-17 2016-03-17 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for timing synchronization in a distributed timing system
CN205142160U (en) * 2015-11-27 2016-04-06 云南电网有限责任公司电力科学研究院 Synchronous degree of depth storage ns level pulse many reference amounts generator of power frequency
CN105718404A (en) * 2016-01-18 2016-06-29 中国科学技术大学 Square-wave generator and generating method based on FPGA
US20160359508A1 (en) * 2015-06-08 2016-12-08 Maxlinear, Inc. Jitter improvement in serializer-deserializer (serdes) transmitters
CN107835000A (en) * 2017-12-08 2018-03-23 成都前锋电子仪器有限责任公司 A kind of output circuit for pulse pattern generator

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101316104A (en) * 2007-05-31 2008-12-03 阿尔特拉公司 Apparatus for all-digital serializer-de-serializer and associated methods
CN101777891A (en) * 2009-12-18 2010-07-14 广东正业科技股份有限公司 Ultrafast edge step pulse generating method and generator thereof
CN102307046A (en) * 2011-06-09 2012-01-04 中国科学院西安光学精密机械研究所 Time-resolved photon counting imaging system and method
US20160080138A1 (en) * 2014-09-17 2016-03-17 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for timing synchronization in a distributed timing system
CN104539286A (en) * 2014-12-10 2015-04-22 深圳市国微电子有限公司 Fundamental frequency clock generation circuit
CN104617923A (en) * 2015-02-06 2015-05-13 中国人民解放军国防科学技术大学 High-speed low-power-consumption multi-threshold-value D-type trigger
US20160359508A1 (en) * 2015-06-08 2016-12-08 Maxlinear, Inc. Jitter improvement in serializer-deserializer (serdes) transmitters
CN104980130A (en) * 2015-07-15 2015-10-14 福建利利普光电科技有限公司 FPGA-based OSERDES2 square wave rise time changing method
CN105373497A (en) * 2015-10-29 2016-03-02 中国人民解放军国防科学技术大学 Digital signal processor (DSP) chip based matrix transposition device
CN205142160U (en) * 2015-11-27 2016-04-06 云南电网有限责任公司电力科学研究院 Synchronous degree of depth storage ns level pulse many reference amounts generator of power frequency
CN105718404A (en) * 2016-01-18 2016-06-29 中国科学技术大学 Square-wave generator and generating method based on FPGA
CN107835000A (en) * 2017-12-08 2018-03-23 成都前锋电子仪器有限责任公司 A kind of output circuit for pulse pattern generator

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
LIQY2088: "新手的第一块基于FPGA的设计——脉冲信号发生器", 《HTTPS://BLOG.CSDN.NET/BOTDR/ARTICLE/DETAILS/21525883》 *
惠飞: "《FPGA嵌入式系统开发与实例》", 31 October 2017, 西安电子科技大学出版社 *
戚刚 等: "用于微弱信号放大的高性能窄线宽纳秒脉冲光纤放大器", 《红外与激光工程》 *
石云中: "基于DDS技术的Loran-C信号发生器的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
石梅林 等: "Spartan-6系列FPGA的配置方法研究", 《电子科学技术》 *
胡孔阳 等: "一种SerDes集成与复用方法", 《电脑知识与技术》 *
郭利文 等: "《CPLD/FPGA设计与应用高级教程》", 31 January 2011, 北京航空航天大学出版社 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109828632A (en) * 2018-12-29 2019-05-31 武汉光谷互连科技有限公司 A kind of adjustable ultra-narrow Multi-path synchronous pulse generating unit and method based on FPGA
CN111277248A (en) * 2020-04-03 2020-06-12 中国科学院近代物理研究所 Multi-working-mode synchronous pulse generating device and working method thereof
CN111277248B (en) * 2020-04-03 2023-09-19 中国科学院近代物理研究所 Synchronous pulse generating device with multiple working modes and working method thereof
CN111600813A (en) * 2020-05-13 2020-08-28 中国人民解放军国防科技大学 Multi-mode interconnection interface controller for converged network
CN111600813B (en) * 2020-05-13 2021-10-29 中国人民解放军国防科技大学 Multi-mode interconnection interface controller for converged network
CN112532210A (en) * 2020-12-07 2021-03-19 合肥埃科光电科技有限公司 Adjustable pulse signal generator
CN115963388A (en) * 2022-12-22 2023-04-14 广东高云半导体科技股份有限公司 System for realizing circuit debugging, field programmable logic gate array and upper computer
CN116338410A (en) * 2023-05-26 2023-06-27 中诚华隆计算机技术有限公司 Needle card control device, control system and control method for testing core particles
CN117631750A (en) * 2024-01-26 2024-03-01 华中师范大学 Digital pulse generator based on FPGA high-speed transceiver
CN117631750B (en) * 2024-01-26 2024-04-12 华中师范大学 Digital pulse generator based on FPGA high-speed transceiver

Also Published As

Publication number Publication date
CN108471303B (en) 2021-06-25

Similar Documents

Publication Publication Date Title
CN108471303A (en) Programmable nanosecond timing precision pulse generator based on FPGA
CN102158208B (en) Whole-course adjustable digital pulse width modulator based on oscillation ring circuit
CN103117732B (en) Multi-channel video pulse signal generation device and method
CN102035472B (en) Programmable digital frequency multiplier
CN102723931B (en) The pulse wave generation method that a kind of wide dynamic high precision edge time is adjustable
CN105404495B (en) For modulating the high speed PRBS generator and method for generation of wide-band transducer
CN105162437B (en) A kind of waveshape generating device and method
CN106126473A (en) A kind of data based on standard AMC platform process plate system
CN107994896A (en) A kind of multi-channel high-speed pulse counting system and method for counting
CN110350892A (en) A kind of time-delay mechanism and method based on DDS clock phase shift technology
CN108490251B (en) Satisfy digital electric energy metering device of 3/2 wiring
CN207625572U (en) One kind being used for Ethernet pattern configurations time-sharing multiplex interface circuit
CN111953320A (en) High-precision synchronous analog-digital mixed signal generator for image sensor
CN202043085U (en) Full process adjustable digital pulse width modulator based on oscillation ring circuit
CN102014310B (en) Airborne selective calling signal generator and implementation method thereof
CN209072515U (en) Clockwork detection system
CN104836763B (en) It is a kind of to improve the multi channel signals output system for passing letter rate
CN105116802A (en) An apparatus and method for generating deterministic clock jittering
CN201422114Y (en) Error code rate test module based on PXI bus
CN103425043A (en) High-precision time-to-digital converter based on USB
CN109104171A (en) A kind of PWM waveform generator
CN201557123U (en) Device for converting network time signal into direct current time code
CN203630535U (en) USB-based high precision time-to-digital converter
CN102693200A (en) SPI (serial peripheral interface) communication port based on CPLD (complex programmable logic device)
CN202453878U (en) SPI (Serial Peripheral Interface) communication port based on CPLD (Complex Programmable Logic Device)

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