CN108170616B - System for realizing clock domain crossing signal transmission by using latch - Google Patents

System for realizing clock domain crossing signal transmission by using latch Download PDF

Info

Publication number
CN108170616B
CN108170616B CN201611116237.1A CN201611116237A CN108170616B CN 108170616 B CN108170616 B CN 108170616B CN 201611116237 A CN201611116237 A CN 201611116237A CN 108170616 B CN108170616 B CN 108170616B
Authority
CN
China
Prior art keywords
signal
latch
input
gate
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611116237.1A
Other languages
Chinese (zh)
Other versions
CN108170616A (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.)
Shanghai Fudan Microelectronics Group Co Ltd
Original Assignee
Shanghai Fudan Microelectronics Group Co Ltd
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 Shanghai Fudan Microelectronics Group Co Ltd filed Critical Shanghai Fudan Microelectronics Group Co Ltd
Priority to CN201611116237.1A priority Critical patent/CN108170616B/en
Publication of CN108170616A publication Critical patent/CN108170616A/en
Application granted granted Critical
Publication of CN108170616B publication Critical patent/CN108170616B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

The invention relates to a system for realizing cross-clock domain signal transmission by utilizing a latch, which is provided with a latch using a first clock domain clock aclk, a signal den to be transmitted is input into the latch to set the latch, a signal den _ latch output by the latch is connected to a three-bit register den _ pipe [2:0], and a signal output by a 1 st bit den _ pipe [1] of the register is used as a zero clearing signal of the latch and is input into the latch to reset the latch. And a signal dre _ aclk output at the 1 st bit den _ pipe [1] of the register is connected with one input port of the AND gate through a NOT gate, a signal output at the 0 th bit den _ pipe [0] of the register is connected with the other input port of the AND gate, and a signal drdy _ aclk corresponding to the second clock domain clock is obtained at an output port of the AND gate. The invention has simple structure and is suitable for clock domain crossing pulse signal transmission when high-frequency signals enter a low-frequency clock domain.

Description

System for realizing clock domain crossing signal transmission by using latch
Technical Field
The invention relates to a clock domain crossing signal transmission technology, in particular to a system for realizing clock domain crossing signal transmission by using a latch.
Background
The existing processing of clock domain crossing signals can be divided into the following methods:
1) two beats are made with a register: this method is only suitable for signals crossing from a low frequency clock to a high frequency clock.
2) A counter is used to properly stretch the high frequency signal to a width greater than one period of the low frequency clock: the essence of this method is to reduce the clock frequency, and the signal generated by the high frequency clock is reduced to a lower frequency than the original low frequency clock. This method is only suitable for the premise that the frequency relationships of each other are known.
3) Using handshake signals, RAM and fifo: the handshake protocol mode is used for processing data transmission across clock domains, and only the handshake signals (req and ack) of the two parties need to be synchronized by using a pulse detection method respectively. In a specific implementation, assuming that the req, ack, and data buses are all in an invalid state during initialization, the sending domain first puts data into the buses, and then sends valid req signals to the receiving domain. The receiving domain latches the data bus upon detecting a valid req signal and then sends back a valid ack signal indicating a read completion acknowledge. The sending domain withdraws the current req signal after detecting the valid ack signal, and the receiving domain also withdraws the ack signal correspondingly after detecting the req withdrawal, and at the moment, one normal handshake communication is completed. Thereafter, the sending domain may continue to begin the next handshake communication, looping. This approach requires the addition of some extra control signals and circuitry for crossing from the high frequency clock to the low frequency clock, regardless of the frequency relationship.
The essence of the existing methods is that a synchronous mode is adopted to transmit clock signals, and a clock domain crossing signal transmission technology which adopts an asynchronous mode to widen pulse width is lacked.
Disclosure of Invention
The invention aims to provide a system for realizing cross-clock-domain signal transmission by using a latch, which realizes cross-clock-domain pulse signal transmission and is suitable for high-frequency signals entering a low-frequency clock domain.
In order to achieve the purpose, the technical scheme of the invention is to provide a system for realizing cross-clock domain signal transmission by using a latch, the system is provided with the latch using a first clock domain clock aclk, a signal den to be transmitted is input into the latch to set the latch, a signal den _ latch output by the latch is connected to a three-bit register den _ pipe [2:0], and a signal output by a 1 st bit den _ pipe [1] of the register is used as a clear signal of the latch and is input into the latch to reset the latch.
The latch comprises a set reset latch module, wherein the set reset latch module is provided with a set end lat _ set _ b, a reset end lat _ rst _ b, an output end q and a clock signal input end CK; wherein, the first clock domain clock aclk is input to the clock signal input terminal CK; the output end q serves as the output end of the latch to output a signal den _ latch;
the latch, comprising: a first input end rst1_ b which is actively reset at low level and is input with a signal cfg _ reset _ b triggered by a falling edge; a second input terminal set2, which is set active high and inputs the signal den; a third input end rst3 for high level effective reset, which inputs a zero clearing signal;
the result of negation of the signals of the first input end rst1_ b and the second input end set2 after bit-wise addition is input into the set end lat _ set _ b, and when the signal at the set end lat _ set _ b is at low level, 1 is obtained at the output end q;
and the signal at the third input end rst3 and the inverted signal at the second input end set2 are subjected to bitwise AND calculation to obtain a numerical value, then the numerical value is subjected to bitwise OR calculation to obtain an inverted numerical value of the signal at the first input end rst1_ b, the inverted result of the OR calculation is input to the reset end lat _ rst _ b, and when the signal at the reset end lat _ rst _ b is at a low level, the output end q is 0.
The first input end rst1_ b and the second input end set2 are connected to an input port of a first AND gate respectively, and an output port of the first AND gate is connected to a set end lat _ set _ b of the set-reset latch module through a first NOT gate.
The first input end rst1_ b is connected to one input port of a first OR gate through a second NOT gate, the other input port of the first OR gate is connected with the output port of a second AND gate, a second input end set2 is connected to one input port of the second AND gate through a third NOT gate, and a third input end rst3 is connected with the other input port of the second AND gate; the output port of the first or gate is connected to the reset terminal lat _ rst _ b of the set-reset latch module through a fourth not gate.
And a signal dre _ aclk output at the 1 st bit den _ pipe [1] of the register is connected with one input port of the third AND gate through a fifth NOT gate, a signal output at the 0 th bit den _ pipe [0] of the register is connected with the other input port of the third AND gate, and a signal drdy _ aclk corresponding to the second clock domain clock is obtained at the output port of the third AND gate.
When the signal cfg _ reset _ b input from the first input terminal rst1_ b is at a low level, the register is assigned with a three-bit binary number 000, otherwise, the output signal den _ latch of the latch is spliced with the values den _ pipe [2:1] of the 2 nd bit and the 1 st bit of the register and then registered.
The system for realizing cross-clock domain signal transmission by using the latch has the advantages that the latch with setting and resetting is used for transmitting data, the structure is simple, and the data transmission is independent of clock frequency. In the prior art, latches, particularly latches with setting and resetting functions at the same time, are avoided as much as possible in the cross-clock domain signal transmission design, but the invention utilizes the characteristic that the latches can be reset and set, and utilizes the ports for setting and resetting to transmit signals instead of the traditional method of transmitting data through a clock/data terminal (clock).
Drawings
FIG. 1 is a schematic diagram of a system for implementing cross-clock domain signaling using latches in accordance with the present invention;
fig. 2 is a timing diagram of exemplary signals in the system of the present invention.
Detailed Description
The system of the invention adopts a latch (latch) with asynchronous set (set) and reset (reset) simultaneously to realize the clock domain crossing transmission of signals.
Referring to fig. 1 and fig. 2 and table 1, the system of the present invention is provided with a latch, which includes a set-reset latch module (set-reset latch), the set-reset latch module has a set terminal lat _ set _ b, a reset terminal lat _ rst _ b, an output terminal q, and a clock signal input terminal CK; wherein, the clock signal input terminal CK inputs the clock signal aclk of the slow clock domain; the output q also serves as the output of the overall latch, which outputs a signal den _ latch to a three-bit register den _ pipe [2:0] formed by D flip-flops.
The latch also has a first input end rst1_ b which is reset effectively at low level, and the input end of the first input end rst is a signal cfg _ reset _ b triggered by falling edges; a second input terminal set2, which is set active high and inputs the signal den; and a third input end rst3 which is high-level active reset and is input with a clear signal (clear signal) clr _ den _ latch, and the output signal dre _ aclk at the 1 st bit den _ pipe [1] of the register is used as the clear signal.
When the signal cfg _ reset _ b input to the first input terminal rst1_ b is low, the register is asserted with a three-bit binary number of 000, otherwise the output signal den _ latch of the latch is registered with the value obtained by splicing the 2 nd bit and the 1 st bit den _ pipe [2:1] of the register.
The first input end rst1_ b and the second input end set2 are respectively connected to the input of a first and gate, the output of the first and gate is connected to the set end lat _ set _ b of the set-reset latch module through a first not gate, so that the result of negation of the signals at the input ends set2 and rst1_ b after bit-wise and calculation is input to the set end lat _ set _ b, and when the signal at the set end lat _ set _ b is low, the output end q obtains 1 (high level).
The first input rst1_ b is connected to one input of a first or gate through a second not gate, the other input of the first or gate is connected to the output of a second and gate, the second input set2 is connected to one input of the second and gate through a third not gate, and the third input rst3 is connected to the other input of the second and gate. The output of the first or gate is connected to the reset terminal lat _ rst _ b of the set-reset latch module through a fourth not gate, so that the inverted value of the bit-by-bit or the calculated result of the "inverted value of the signal at the input terminal rst1_ b" and the "bit-by-bit and calculated value of the signal at the input terminal rst3 and inverted set 2" is input to the reset terminal lat _ rst _ b, and when the signal at the reset terminal lat _ rst _ b is low, the output terminal q obtains 0 (low level).
The output signal dre _ aclk at the 1 st bit den _ pipe [1] of the register is connected with one input of a third AND gate through a fifth NOT gate, the output signal at the 0 th bit den _ pipe [0] of the register is connected with the other input of the third AND gate, and the third AND gate outputs a signal drdy _ aclk, so that the result of bit-wise and calculation is carried out on the value inverted by the 1 st bit den _ pipe [1] of the register and the value of the 0 th bit den _ pipe [0] of the register to serve as the output signal drdy _ aclk.
In the system, a signal den needing to be transmitted is input, the latch is set through the second input end set2 of the latch, the output of the latch is 1, so that a pulse signal of the signal den is successfully adopted, then the output signal den _ latch of the latch is adopted by using the clock aclk of a slow clock domain, a clear signal clr _ den _ latch of the latch is generated at the same time, the clear signal is transmitted to the reset end of the latch through the third input end rst3, and the latch is reset to be clear from 0. If a clock cycle of aclk signal is needed, the system of the invention can provide an output signal drdy _ aclk adapted to the clock cycle, so as to realize the clock domain crossing transmission of the signal.
TABLE 1 code examples of system hardware description languages
Figure BDA0001173494440000041
Figure BDA0001173494440000051
While the present invention has been described in detail with reference to the preferred embodiments, it should be understood that the above description should not be taken as limiting the invention. Various modifications and alterations to this invention will become apparent to those skilled in the art upon reading the foregoing description. Accordingly, the scope of the invention should be determined from the following claims.

Claims (5)

1. A system for implementing clock domain crossing signal transmission using latches,
the system is provided with a latch using a first clock domain clock aclk, a signal den to be transmitted is input into the latch to set the latch, a signal den _ latch output by the latch is connected to a three-position register den _ pipe [2:0], a signal output by a 1 st bit den _ pipe [1] of the register is used as a zero clearing signal of the latch and is input into the latch to reset the latch;
the latch comprises a set reset latch module, wherein the set reset latch module is provided with a set end lat _ set _ b, a reset end lat _ rst _ b, an output end q and a clock signal input end CK; wherein, the first clock domain clock aclk is input to the clock signal input terminal CK; the output end q serves as the output end of the latch to output a signal den _ latch;
the latch, comprising: a first input end rst1_ b which is actively reset at low level and is input with a signal cfg _ reset _ b triggered by a falling edge; a second input terminal set2, which is set active high and inputs the signal den; a third input end rst3 for high level effective reset, which inputs a zero clearing signal;
the result of negation of the signals of the first input end rst1_ b and the second input end set2 after bit-wise addition is input into the set end lat _ set _ b, and when the signal at the set end lat _ set _ b is at low level, 1 is obtained at the output end q;
and the signal at the third input end rst3 and the inverted signal at the second input end set2 are subjected to bitwise AND calculation to obtain a numerical value, then the numerical value is subjected to bitwise OR calculation to obtain an inverted numerical value of the signal at the first input end rst1_ b, the inverted result of the OR calculation is input to the reset end lat _ rst _ b, and when the signal at the reset end lat _ rst _ b is at a low level, the output end q is 0.
2. The system of claim 1,
the first input end rst1_ b and the second input end set2 are connected to an input port of a first AND gate respectively, and an output port of the first AND gate is connected to a set end lat _ set _ b of the set-reset latch module through a first NOT gate.
3. The system of claim 1,
the first input end rst1_ b is connected to one input port of a first OR gate through a second NOT gate, the other input port of the first OR gate is connected with the output port of a second AND gate, a second input end set2 is connected to one input port of the second AND gate through a third NOT gate, and a third input end rst3 is connected with the other input port of the second AND gate; the output port of the first or gate is connected to the reset terminal lat _ rst _ b of the set-reset latch module through a fourth not gate.
4. The system of claim 1,
and a signal dre _ aclk output at the 1 st bit den _ pipe [1] of the register is connected with one input port of the third AND gate through a fifth NOT gate, a signal output at the 0 th bit den _ pipe [0] of the register is connected with the other input port of the third AND gate, and a signal drdy _ aclk corresponding to the second clock domain clock is obtained at the output port of the third AND gate.
5. The system of claim 1,
when the signal cfg _ reset _ b input from the first input terminal rst1_ b is at a low level, the register is assigned with a three-bit binary number 000, otherwise, the output signal den _ latch of the latch is spliced with the values den _ pipe [2:1] of the 2 nd bit and the 1 st bit of the register and then registered.
CN201611116237.1A 2016-12-07 2016-12-07 System for realizing clock domain crossing signal transmission by using latch Active CN108170616B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611116237.1A CN108170616B (en) 2016-12-07 2016-12-07 System for realizing clock domain crossing signal transmission by using latch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611116237.1A CN108170616B (en) 2016-12-07 2016-12-07 System for realizing clock domain crossing signal transmission by using latch

Publications (2)

Publication Number Publication Date
CN108170616A CN108170616A (en) 2018-06-15
CN108170616B true CN108170616B (en) 2020-03-31

Family

ID=62526251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611116237.1A Active CN108170616B (en) 2016-12-07 2016-12-07 System for realizing clock domain crossing signal transmission by using latch

Country Status (1)

Country Link
CN (1) CN108170616B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111985174B (en) * 2020-09-03 2023-07-18 中科南京智能技术研究院 RT latch and latching method
CN113054996B (en) * 2021-03-18 2022-05-10 明峰医疗系统股份有限公司 Circuit and method for low-delay continuous clock domain crossing inside CT control board
CN114928413B (en) * 2021-12-30 2024-07-02 厦门优迅芯片股份有限公司 Signal monitoring method and circuit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101009487A (en) * 2007-01-24 2007-08-01 华为技术有限公司 Cross-clock domain asynchronous data processing, cross-clock domain method of the asynchronous data, and its device
CN101694991A (en) * 2009-10-22 2010-04-14 浙江大学 Circuit for realizing synchronization of asynchronous pulse signals with random pulse width
CN102684814A (en) * 2011-03-09 2012-09-19 安凯(广州)微电子技术有限公司 Method, device and system for transmitting signals crossing clock domains

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101009487A (en) * 2007-01-24 2007-08-01 华为技术有限公司 Cross-clock domain asynchronous data processing, cross-clock domain method of the asynchronous data, and its device
CN101694991A (en) * 2009-10-22 2010-04-14 浙江大学 Circuit for realizing synchronization of asynchronous pulse signals with random pulse width
CN102684814A (en) * 2011-03-09 2012-09-19 安凯(广州)微电子技术有限公司 Method, device and system for transmitting signals crossing clock domains

Also Published As

Publication number Publication date
CN108170616A (en) 2018-06-15

Similar Documents

Publication Publication Date Title
CN108170616B (en) System for realizing clock domain crossing signal transmission by using latch
CN109918332B (en) SPI slave unit and SPI device
KR20150059728A (en) Optical memory extension architecture
CN108052473B (en) Serial communication device
EP3191969B1 (en) Serial sideband signaling link
US20160301519A1 (en) Clock and data recovery for pulse based multi-wire link
US7500033B2 (en) Universal serial bus transmitter
US20240027525A1 (en) Performing scan data transfer inside multi-die package with serdes functionality
JP3683892B2 (en) Method and system for improved differential form transition coding
CN113009961A (en) Cross-clock synchronous circuit and SoC system
US8595536B2 (en) Rate verification of an incoming serial alignment sequence
CN110045782B (en) Data read-write synchronous circuit and data read-write method
US6232796B1 (en) Apparatus and method for detecting two data bits per clock edge
US7679404B2 (en) Missing clock pulse detector
CN103605626B (en) A kind of Single wire Serial Bus agreement and change-over circuit
WO2016074402A1 (en) Signal transmission processing method and apparatus, and device
CN115004587B (en) Bit inversion for data transmission
CN114490488A (en) Low-power-consumption UART serial port system
US6931075B2 (en) Event detection with a digital processor
CN107391406A (en) A kind of method of microprocessor and processing protocol for protocol processes
US11265043B2 (en) Communication circuit, communication system, and communication method
CN105070311A (en) Processing method of multi-signal board level clock domain crossing
JPH0668745B2 (en) Data transfer method
CN203659004U (en) Device for accurate communication between high-speed microprocessors
Xiangyang Implementation and Transmission Error Handling of Multi-channel LVDS

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