KR19980016797A - 동기회로 - Google Patents
동기회로 Download PDFInfo
- Publication number
- KR19980016797A KR19980016797A KR1019960036491A KR19960036491A KR19980016797A KR 19980016797 A KR19980016797 A KR 19980016797A KR 1019960036491 A KR1019960036491 A KR 1019960036491A KR 19960036491 A KR19960036491 A KR 19960036491A KR 19980016797 A KR19980016797 A KR 19980016797A
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- clock signal
- data
- synchronization
- synchronous
- Prior art date
Links
Abstract
본 발명은 동기회로에 관한 것으로서, 특히 제 1 클럭신호에 동기하여 인에이블 신호가 인가되면 데이터를 입력받아서 제 1 클럭신호에 동기된 데이터신호를 전송시키는 신호처리부와, 상기 제 1 클럭신호와 비동기 제 2 클럭신호에 응답하여 두 클럭신호를 논리 조합하여 상기 제 2 클럭신호에 동기하여 동기 클럭신호를 발생하는 동기부와, 상기 동기부에서 발생된 동기 클럭신호의 하강에지에 응답하여 상기 신호처리부에서 전송된 데이터신호를 저장한 후 상기 동기부에서 발생된 동기 클럭신호에 동기하여 동기 데이터신호를 전송하는 제 1 래치와, 상기 제 2 클럭신호의 하강에지에 응답하여 상기 제 1 래치를 통해 전송된 동기 데이터신호를 저장한 후 상기 제 2 클럭신호에 동기하여 출력 데이터신호를 전송하는 제 2 래치로 구비되는 것을 특징으로 한다.
따라서, 본 발명에서는 임의의 클럭신호에 동기된 데이터를 목적지까지 전송시키는데 다른 비동기 클럭신호로 재동기시켜 안정화된 데이터를 전송시키므로, 데이터 손실을 줄일 수 있는 효과가 있다.
Description
본 발명은 동기회로에 관한 것으로서, 특히 두 장치에서 소스부터 목적지까지 데이터를 소스 클럭신호에 동기하여 목적지까지 전송시키지 않고, 비동기 클럭신호를 인가하여 비동기 클럭신호에 재동기된 데이터를 목적지로 전송시키는 동기회로에 관한 것이다.
종래는 두 장치간의 데이터를 전송시키고자 할 경우에 소스에서 임의의 제 1 클럭신호에 동기된 데이터를 제 1 클럭신호와는 전혀 다른 비동기의 제 2 클럭신호로 재동기하여 목적지에서 받으면 제 2 클럭신호의 클럭에지가 데이터신호의 천이되는 위치에 놓이게 될 경우 잘못된 데이터신호가 출력된다. 그러므로 종래 기술에서는 두 장치간의 데이터 전송시 FIFO(First-in First-out: 이하 FIFO라 한다.)버퍼를 사용한다.
이러한 FIFO 버퍼는 두 장치 사이에 있게 될 때 소스로부터 하나의 전송율로 데이터를 받아서 또 다른 전송율로 목적지에 데이터를 보낸다. 만약 소스가 목적지의 장치보다 속도가 느리면, 상기 FIFO 버퍼는 느린 속도로 데이터를 채운 다음, 보다 빠른 속도로 비울 수 있도록 한다. 한편 소스가 목적지보다 빠를 경우, 소스는 상기 FIFO 버퍼를 빠르게 채워 버리게 되나, 짧은 시간 사이에 상기 FIFO 버퍼로부터 목적지가 정보를 비울 수 있을 만큼의 시간을 줄 수 있게 할 때도 쓰인다. 그러므로, 상기 FIFO 버퍼는 데이터를 비동기식으로 전송할 때 유용하므로 송신되는 데이터에 따라 저장하였다가 필요할 때 같은 정도로 데이터를 공급한다.
그러나, 송신되는 데이터가 때때로 중단될 경우에는 상기 FIFO 버퍼를 통해 목적지까지 데이터를 전송시키는데 데이터가 손실되는 문제점이 있었다.
본 발명의 목적은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 두 장치 사이에서 데이터를 전송하고자 할 경우 비동기 클럭신호로 제어하여 목적지로 데이터를 재동기시켜 데이터를 전송시키므로 데이터 손실을 방지할 수 있는 동기회로에 관한 것이다.
상기 목적을 달성하기 위하여 본 발명의 장치는 제 1 클럭신호에 동기하여 인에이블 신호가 인가되면 데이터를 입력받아서 제 1 클럭신호에 동기된 데이터신호를 전송시키는 신호처리부와, 상기 제 1 클럭신호와 비동기 제 2 클럭신호에 응답하여 두 클럭신호를 논리 조합하여 상기 제 2 클럭신호에 동기하여 동기 클럭신호를 발생하는 동기부와, 상기 동기부에서 발생된 동기 클럭신호의 하강에지에 응답하여 상기 신호처리부에서 전송된 데이터신호를 저장한 후 상기 동기부에서 발생된 동기 클럭신호에 동기하여 동기 데이터신호를 전송하는 제 1 래치와, 상기 제 2 클럭신호의 하강에지에 응답하여 상기 제 1 래치를 통해 전송된 동기 데이터신호를 저장한 후 상기 제 2 클럭신호에 동기하여 출력 데이터신호를 전송하는 제 2 래치로 구성되는 것을 특징으로 한다.
상기 동기부는 출력신호인 동기 클럭신호를 반전시킨 신호와 제 2 클럭신호에 응답하여 두 신호가 하이레벨일 경우 하이레벨 신호가 출력되는 제 1 논리게이트와, 상기 제 1 논리게이트를 통해 출력되는 신호와 상기 제 1 클럭신호에 응답하여 두 신호가 로우레벨일 경우 로우레벨 신호가 출력되는 제 2 논리게이트와, 상기 제 2 클럭신호의 하강에지에 동기하여 상기 제 2 논리게이트를 통해 출력되는 신호를 소정시간 저장하였다가 출력하는 D형 플립플롭으로 구성되는 것을 특징으로 한다.
도 1 은 본 발명에 따른 동기회로를 나타낸 블록도이다.
도 2 는 본 발명에 따른 동기회로의 동기부를 상세하게 나타낸 회로도이다.
도 3 은 동기회로의 동기부를 설명하기 위한 상태도이다.
* 도면의 주요 부분에 대한 부호의 설명 *
10: 신호처리부. 12: 제 1 논리게이트.
14: 제 2 논리게이트. 16: D형 플립플롭.
20: 동기부. 30: 제 1 래치.
40: 제 2 래치.
이하, 첨부한 도면을 참조하여 본 발명을 상세하게 설명하고자 한다.
도 1 은 본 발명에 따른 동기회로의 블록도를 나타낸 일 실시예로서, 동기회로는 제 1 클럭신호(Clk1)에 동기하여 인에이블 신호인 Valid신호가 인가되면 데이터를 입력받아서 제 1 클럭신호(Clk1)에 동기된 데이터신호(Data_A)를 전송하는 신호처리부(10)와, 상기 제 1 클럭신호(Clk1)와 비동기 제 2 클럭신호(Clk2)를 논리 조합하여 상기 제 2 클럭신호(Clk2)에 동기하여 동기 클럭신호(Clk_S)를 발생하는 동기부(20)와, 상기 동기부(20)에서 발생된 동기 클럭신호(Clk_S)의 하강에지에 동기하여 상기 신호처리부(10)에서 전송된 데이터신호(Data_A)를 저장한 후 상기 동기부(20)에서 발생된 동기 클럭신호(Clk_S)에 동기하여 동기 데이터신호(Data_S)를 전송하는 제 1 래치(30)와, 상기 제 2 클럭신호(Clk2)의 하강에지에 동기하여 상기 제 1 래치(30)를 통해 전송된 동기 데이터신호(Data_S)를 저장한 후 상기 제 2 클럭신호(Clk2)에 동기된 출력 데이터신호를 전송하는 제 2 래치(40)로 구성된다.
도 2 는 본 발명에 따른 동기회로의 동기부를 상세하게 나타낸 회로도로서, 동기부(20)는 출력신호인 동기 클럭신호(Clk_S)가 인버터를 거쳐 반전된 신호와 제 2 클럭신호(Clk2)를 입력받아서 두 신호를 논리곱하여 두 신호가 하이레벨일 경우만 하이레벨 신호를 출력하는 1 논리게이트(12)와, 상기 제 1 논리게이트(12)를 통해 출력되는 신호와 제 1 클럭신호(Clk1)를 입력받아서 두 신호를 논리합하여 두 신호가 로우레벨일 경우만 출력신호가 로우레벨이 되는 제 2 논리게이트(14)와, 상기 제 2 클럭신호(14)의 하강에지에 동기하여 상기 제 2 논리게이트(14)를 통해 출력되는 신호를 소정시간 저장하였다가 출력하는 D형 플립플롭(16)으로 구성된다.
도 1 을 참조하여 본 발명에 따른 동기회로의 동작 설명을 하면 다음과 같다.
제 1 클럭신호(Clk1)에 동기하여 인에이블 신호인 Valid 신호가 인가되면 상기 신호처리부(10)로 데이터를 입력받아서 신호처리된 다음, 제 1 클럭신호(Clk1)의 상승에지에 동기된 데이터신호(Data_A)를 전송시킨다.
그리고, 상기 동기부(20)로 제 1 클럭신호(Clk1)와 상기 제 1 클럭신호(Clk1)와는 전혀 다른 비동기 클럭신호인 제 2 클럭신호(Clk2)가 입력되면 상기 제 1 클럭신호(Clk1)가 로우레벨일때만 제 2 클럭신호(Clk2)에 동기되어 동기 클럭신호(Clk_S)가 발생된다.
또한, 상기 동기부(20)를 통해 전송된 동기 클럭신호(Clk_S)의 하강에지에 동기하여 상기 신호처리부(10)를 통해 전송된 데이터신호(Data_A)를 소정시간 저장한 후 상기 동기 클럭신호(Clk_S)에 동기하여 동기 데이터신호(Data_S)를 전송한다.
그리고, 상기 제 2 클럭신호(Clk2)의 하강에지에 동기하여 상기 제 2 래치(40)로 상기 제 1 래치(30)의 동기 데이터신호(Data_S)를 입력받아서 소정시간 저장한 후 상기 제 2 클럭신호(Clk2)에 동기되어 데이타신호를 목적지로 전송한다.
도 2 를 참조하여 상기 동기부의 동작을 설명하면 다음과 같다.
출력신호인 동기 클럭신호(Clk_S)가 인버터를 통해 반전된 클럭신호와 제 2 클럭신호(Clk2)가 상기 제 1 논리게이트(12)로 입력되면 두 신호가 하이레벨일 경우만 출력신호가 하이레벨이되고, 상기 제 1 논리게이트(12)를 통해 출력되는 클럭신호와 제 1 클럭신호(Clk1)를 상기 제 2 논리게이트(14)로 입력받아서 두 신호가 로우레벨일 경우만 출력신호가 로우레벨이 된다.
그리고, 제 1 클럭신호(Clk1)의 하강에지에 동기하여 상기 제 2 논리게이트(14)를 통해 출력되는 클럭신호를 상기 D형 플립플롭(16)으로 입력받아서 소정시간 저장하였다가 제 2 클럭신호에 동기된 클럭신호(Clk_S)를 출력한다.
도 3 은 동기회로의 동기부를 설명하기 위한 상태도이므로, 현재 상태의 동기 클럭신호(Clk_S)가 “1”일 때 입력 제 1 클럭신호(Clk1)가 “0”이면 다음 상태의 동기 클럭신호(Clk_S)는 “0”이 된다. 그리고, 현재 상태의 동기 클럭신호(Clk_S)가“0”일 경우 입력에 상관없이 다음 상태의 동기 클럭신호(Clk_S)는 “1”이 된다.
그러므로, 제 1 클럭신호(Clk1)의 하이레벨 지속 기간에서 상기 신호처리부를 통해 전송된 데이터신호(Data_A)가 안정화해지는데 필요한 시간보다 길다면 상기 동기부(20)의 동기 클럭신호(Clk_S)는 항상 안정한 데이터(Data_A)를 래치 할 수 있다.
본 발명은 임의의 클럭신호에 동기된 데이터를 또 다른 비동기 클럭신호로 재동기시켜 안정한 데이터를 전송시키므로서, 데이터 손실을 줄일 수 있는 효과가 있다.
Claims (2)
- 제 1 클럭신호에 동기하여 인에이블 신호가 인가되면 데이터를 입력받아서 제 1 클럭신호에 동기된 데이터신호를 전송시키는 신호처리부와, 상기 제 1 클럭신호와 비동기 제 2 클럭신호에 응답하여 두 클럭신호를 논리 조합하여 상기 제 2 클럭신호에 동기하여 동기 클럭신호를 발생하는 동기부와, 상기 동기부에서 발생된 동기 클럭신호의 하강에지에 응답하여 상기 신호처리부에서 전송된 데이터신호를 저장한 후 상기 동기부에서 발생된 동기 클럭신호에 동기하여 동기 데이터신호를 전송하는 제 1 래치와, 상기 제 2 클럭신호의 하강에지에 응답하여 상기 제 1 래치를 통해 전송된 동기 데이터신호를 저장한 후 상기 제 2 클럭신호에 동기하여 출력 데이터신호를 전송하는 제 2 래치로 구비되는 것을 특징으로 하는 동기회로.
- 제 1 항에 있어서, 상기 동기부는 출력신호인 동기 클럭신호를 반전시킨 신호와 제 2 클럭신호에 응답하여 두 신호가 하이레벨일 경우 출력신호가 하이레벨이 되는 제 1 논리게이트와, 상기 제 1 논리게이트를 통해 출력되는 신호와 상기 제 1 클럭신호에 응답하여 두 신호가 로우레벨일 경우 출력신호가 로우레벨이 되는 제 2 논리게이트와, 상기 제 2 클럭신호의 하강에지에 동기하여 상기 제 2 논리게이트를 통해 출력되는 신호를 소정시간 저장하였다가 출력하는 D형 플립플롭으로 구비되는 것을 특징으로 하는 동기회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960036491A KR19980016797A (ko) | 1996-08-29 | 1996-08-29 | 동기회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960036491A KR19980016797A (ko) | 1996-08-29 | 1996-08-29 | 동기회로 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR19980016797A true KR19980016797A (ko) | 1998-06-05 |
Family
ID=66322572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960036491A KR19980016797A (ko) | 1996-08-29 | 1996-08-29 | 동기회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR19980016797A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100759074B1 (ko) * | 2006-08-22 | 2007-09-14 | 구예진 | 자전거 안장 충격흡수장치 |
-
1996
- 1996-08-29 KR KR1019960036491A patent/KR19980016797A/ko not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100759074B1 (ko) * | 2006-08-22 | 2007-09-14 | 구예진 | 자전거 안장 충격흡수장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6055285A (en) | Synchronization circuit for transferring pointer between two asynchronous circuits | |
US5708801A (en) | Apparatus and method for operating chips synchronously at speeds exceeding the bus speed | |
US5003558A (en) | Data synchronizing buffers for data processing channels | |
US5884099A (en) | Control circuit for a buffer memory to transfer data between systems operating at different speeds | |
KR100289443B1 (ko) | 소스 동기화 준안정성 프리버스 | |
US5070443A (en) | Apparatus for write handshake in high-speed asynchronous bus interface | |
US5602878A (en) | Method of delivering stable data across an asynchronous interface | |
US5644604A (en) | Digital phase selector system and method | |
US6687255B1 (en) | Data communication circuit having FIFO buffer with frame-in-FIFO generator | |
EP0525221B1 (en) | Quasi-synchronous information transfer and phase alignment means for enabling same | |
US20090086874A1 (en) | Apparatus and method of elastic buffer control | |
JP2000099193A (ja) | 同期装置および同期方法ならびにインタフェ―ス回路 | |
JP3645584B2 (ja) | データ転送同期装置 | |
US20060259669A1 (en) | Latency insensitive FIFO signaling protocol | |
KR20030064376A (ko) | 클럭이 전송되는 i/o 시스템을 위한 효율적인 클럭 시작및 정지 장치 | |
US6163545A (en) | System and method for data transfer across multiple clock domains | |
US5758131A (en) | Bus adapter for synchronizing communications between two circuits running at different clock rates | |
KR100817270B1 (ko) | 인터페이스 장치 및 데이터 동기화 방법 | |
US6137851A (en) | System and method for synchronizing a signal with respect to another signal | |
EP1317085B1 (en) | A method and circuit for initializing a de-skewing buffer in a clock forwarded system | |
KR19980016797A (ko) | 동기회로 | |
KR100337059B1 (ko) | 탄성 버스 인터페이스 데이터 버퍼 | |
US7107474B2 (en) | Data transfer unit and method | |
JP2000347993A (ja) | ソースシンクロナス転送方式 | |
USRE40317E1 (en) | System for receiving a control signal from a device for selecting its associated clock signal for controlling the transferring of information via a buffer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |