KR20060114884A - Automatic generator of interface circuit and interface circuit embodied by the same - Google Patents

Automatic generator of interface circuit and interface circuit embodied by the same Download PDF

Info

Publication number
KR20060114884A
KR20060114884A KR1020050037073A KR20050037073A KR20060114884A KR 20060114884 A KR20060114884 A KR 20060114884A KR 1020050037073 A KR1020050037073 A KR 1020050037073A KR 20050037073 A KR20050037073 A KR 20050037073A KR 20060114884 A KR20060114884 A KR 20060114884A
Authority
KR
South Korea
Prior art keywords
bus
dual
interface circuit
data
finite state
Prior art date
Application number
KR1020050037073A
Other languages
Korean (ko)
Inventor
황선영
이서훈
유태현
Original Assignee
서강대학교산학협력단
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 서강대학교산학협력단 filed Critical 서강대학교산학협력단
Priority to KR1020050037073A priority Critical patent/KR20060114884A/en
Publication of KR20060114884A publication Critical patent/KR20060114884A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/24Negotiation of communication capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40032Details regarding a bus interface enhancer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Bus Control (AREA)

Abstract

An automatic generator of an interface circuit and an interface circuit embodied by the same are provided to improve convenience of a designer by inputting a design specification and information related to an IP(Intellectual Property) protocol through an input device implemented by a GUI(Graphic User Interface). In an automatic generator of an interface circuit, a design specification input unit(100) inputs a design specification of an interface circuit. An IP protocol input unit(300) inputs information related to the IP protocol. An interface circuit generator(250) includes an IP dual FSM(Finite State Machine)(430), a BUS dual FSM(410), and a dual port buffer(420). The IP dual FSM(430) communicates with the IP by being generated corresponding to the information related to the IP protocol. The BUS dual FSM(410) communicates with the BUS by being previously stored at a library. And, the dual port buffer(420) stores the data from the BUS dual FSM(410) or the IP and changes a storage capacity thereof.

Description

인터페이스 회로 자동생성기 및 이에 의해 구현된 인터페이스 회로{Automatic generator of interface circuit and interface circuit embodied by the same}Automatic generator of interface circuit and interface circuit embodied by the same

도 1은 본 발명인 인터페이스 회로의 자동생성기를 간략히 보여주는 블록도이다.1 is a block diagram briefly showing an automatic generator of the present inventor's interface circuit.

도 2는 도 1의 설계 사양 입력부를 GUI 형태로 구현한 예를 보여주는 도면이다.FIG. 2 is a diagram illustrating an example of implementing the design specification input unit of FIG. 1 in a GUI form.

도 3은 도 1의 아이피의 프로토콜 입력부를 GUI 형태로 구현한 예를 보여주는 도면이다.FIG. 3 is a diagram illustrating an example of implementing a protocol input unit of an IP of FIG. 1 in a GUI form.

도 4는 도 1의 아이피의 듀얼 유한상태기의 예를 보여주는 도면이다.4 is a view showing an example of a dual finite state machine of the IP of FIG.

도 5는 도 1의 인터페이스 회로의 자동생성기에 의해 구현된 버스와 아이피 간의 인터페이스 회로를 보여주는 도면이다.FIG. 5 is a diagram illustrating an interface circuit between a bus and an IP implemented by the autogenerator of the interface circuit of FIG. 1.

〈도면의 주요 부호에 대한 간단한 설명〉<Brief description of the major symbols in the drawings>

100...설계 사양 입력부 200...라이브러리100 ... Design specification input 200 ... Library

250...인터페이스 회로 생성기 250 ... Interface Circuit Generator

300...아이피의 프로토콜 입력부300 ... IP Protocol Input

410...버스의 듀얼 유한상태기 420...듀얼 포트 버퍼Dual finite-state on 410 bus 420 dual port buffer

430...아이피의 듀얼 유한상태기 400...인터페이스 회로430 dual IP finite state machine 400 interface circuit

본 발명은 인터페이스 회로에 관한 것으로서, 더 상세하게는 버스와 서로 다른 프로토콜을 갖는 아이피(IP) 사이의 인터페이스 회로에 관한 것이다.The present invention relates to an interface circuit, and more particularly, to an interface circuit between a bus and an IP having different protocols.

반도체를 대략 메모리와 비메모리로 구분하였으나, 시스템 온 칩(System on Chip: SoC)라는 신 개념의 반도체가 등장했다. SoC는 시스템 구성에 필요한 핵심적인 기능을 하나의 칩위에 구현하는 것으로, 하나의 칩에 마이크로프로세서, 메모리, 아날로그 블록, 디지털 연산 및 제어블록을 집적화하는 것을 말한다. 한편, SoC 설계시의 복잡도의 증가로 인하여 설계비용 감소 및 제품을 만들어 시장에 내놓는 기간의 단축 추세에 따라 아이피(Intellectual Property: IP)에 기반한 설계 방식이 사용되고 있다.Although semiconductors are roughly divided into memory and non-memory, a new concept of a system on chip (SoC) has emerged. SoCs implement the core functions required for system configuration on a single chip, integrating microprocessors, memory, analog blocks, digital operations and control blocks on a single chip. On the other hand, due to the increased complexity in designing SoCs, design methods based on IP (Intellectual Property (IP)) are being used in accordance with the trend of decreasing design cost and shortening the time to market a product.

통상적으로, 인터페이스 회로는 특정한 모듈과 이와 다른 프로토콜을 갖는 다른 모듈과의 통신을 위해 상기 두 모듈간의 통신이 가능하도록 프로토콜을 맞추어주는 역할을 한다. 이러한 인터페이스 회로는 특히 버스와 IP 간의 통신을 위해 사용된다. Typically, an interface circuit serves to adapt a protocol to enable communication between two modules for communication between a particular module and another module having a different protocol. This interface circuit is especially used for communication between the bus and the IP.

한편, 인터페이스 회로의 설계는 설계자가 프로토콜을 분석하고 IP의 동작 속도와 특성에 따라 제약 조건을 만족하도록 종전에는 매뉴얼로 설계하였으나 이는 긴 설계 시간 및 고비용이 든다는 단점이 있다. On the other hand, the design of the interface circuit was previously designed as a manual so that the designer analyzes the protocol and satisfies the constraints according to the operation speed and characteristics of the IP, but this has a disadvantage of long design time and high cost.

이를 극복하기 위한 방안으로 인터페이스 회로의 자동생성에 대한 연구가 계속 진행되어 왔다. In order to overcome this problem, research on the automatic generation of interface circuits has been ongoing.

인터페이스 회로의 자동생성에 대한 제1방안으로, 모듈 간 전송하는 데이터의 순서와 동기를 정확하게 하도록 이벤트 그래프를 사용하는 방법이 제안되었으나, 설계자가 상이한 프로토콜을 가진 다른 두 모듈 간에 통신을 하기 위해서는 하위레벨에서 전송하고자 하는 데이터 마다 직접 이름을 기술해 주어야 하며 프로토콜이 하위 레벨에서 기술되므로 기술 방법이 복잡하고 어렵다는 단점이 있었다. As a first method for the automatic generation of the interface circuit, a method of using an event graph to accurately synchronize the order and synchronization of data transmitted between modules has been proposed.However, in order for a designer to communicate between two other modules having different protocols, a lower level is required. In order to transmit the data, the name must be described directly and the protocol is described at the lower level.

제2방안으로, 이벤트 그래프와 유사한 형태의 STG(Signal Transition Graph)를 제안하여 비동기 로직으로 구성된 인터페이스 회로를 생성하였으나, 동작이 빠를 뿐 생성과정이 어렵고 동기된 신호들의 표현이 힘들다는 단점이 있었다. As a second method, an STG (Signal Transition Graph) similar to the event graph is proposed to generate an interface circuit composed of asynchronous logic, but has a disadvantage in that the operation is fast and the generation process is difficult and the synchronous signals are difficult to express.

제3방안으로, 두개의 프로토콜을 유한상태기(Finite State Machine: FSM)를 통해 일반적 프로토콜로 모델링한 후 FSM을 합성하는 과정을 통해 인터페이스 회로를 생성하였으나, 하나의 FSM으로 구성되어 면적이 작고 전송 딜레이가 적은 장점을 제외하고 각 모듈이 동일 클럭으로 동작하는 경우에 모듈 간 동일 형태의 데이터를 전송하는 경우에만 지원된다는 단점이 있었다. In the third method, two protocols are modeled as general protocols through a finite state machine (FSM), and then an interface circuit is generated by synthesizing the FSMs. Aside from the advantage of low delay, each module operates with the same clock, and only supports transmitting data of the same type between modules.

본 발명은 상기의 문제점 및 그 밖의 다른 문제점을 해결하기 위한 것으로서, 버스와 아이피 간의 인터페이스 회로 설계시에 설계 비용 및 시간을 저감하고, 설계시에 설계자의 편의를 향상시킨 인터페이스 회로 자동생성기를 제공하며, 이에 의해 구현되어 버스와 아이피 간에 서로 다른 클럭을 갖더라도 동작을 하며, 전송 지연이 저감되는 인터페이스 회로를 제공하는 데 그 목적이 있다. The present invention is to solve the above problems and other problems, and provides an interface circuit automatic generator that reduces the design cost and time when designing the interface circuit between the bus and IP, and improves the convenience of the designer at the time of design. It is an object of the present invention to provide an interface circuit that can be implemented even by having a different clock between the bus and the IP, and to reduce the transmission delay.

상기의 목적 및 그 밖의 여러 목적을 달성하기 위하여, 본 발명은, In order to achieve the above object and other various objects, the present invention,

표준화된 버스와 서로 다른 프로토콜을 가진 아이피(Intellectual Property: IP) 간의 데이터 통신을 위한 인터페이스 회로에 대하여, 인터페이스 회로의 설계 사양이 입력되는 설계 사양 입력부; A design specification input unit for inputting a design specification of an interface circuit for an interface circuit for data communication between a standardized bus and an IP having different protocols;

아이피 프로토콜에 관한 정보가 입력되는 아이피의 프로토콜 입력부; 및An IP protocol input unit to which IP information is input; And

아이피의 프로토콜에 관한 정보에 대응하여 생성되어 아이피와 통신하는 아이피의 듀얼(dual) 유한상태기(Finite State Machine: FSM)와, 라이브러리(Library)에 미리 저장되어 버스와 통신하는 버스의 듀얼 유한상태기와, 라이브러리에 미리 저장되어 버스의 듀얼 유한상태기 또는 아이피로부터의 데이터를 저장하거나 출력하며 그 저장 용량이 가변되는 듀얼 포트 버퍼의 상호 연결 관계가 설계 사양 및 아이피의 프로토콜에 관한 정보에 의해서 설정되어 HDL 코드를 출력하는 인터페이스 회로 생성기;를 구비하여 버스와 아이피 간의 인터페이스 회로를 자동으로 생성하는 것을 특징으로 하는 인터페이스 회로 자동생성기를 제공한다.Dual finite state machine (FSM) of IP which is generated in correspondence with IP protocol and communicates with IP, and dual finite state of bus which is stored in library and communicates with bus in advance The interconnection relationship between the dual port buffer which stores and outputs data from the dual finite state machine or IP of the bus, which is pre-stored in the tile and the library, and whose storage capacity is variable is set by the information about the design specification and the IP protocol. Interface circuit generator for outputting the HDL code; provides an interface circuit automatic generator, characterized in that for automatically generating the interface circuit between the bus and IP.

이러한 본 발명의 다른 특징에 의하면, 설계 사양 입력부 및 프로토콜 입력부는 그래피컬 유저 인터페이스(Graphical User Interface: GUI)로 구현되는 것이 바람직하다.According to another aspect of the present invention, it is preferable that the design specification input unit and the protocol input unit be implemented with a graphical user interface (GUI).

본 발명은 또한 전술한 목적을 달성하기 위하여, 표준화된 버스와 서로 다른 프로토콜을 가진 아이피(Intellectual Property: IP) 간의 데이터 통신을 위한 인 터페이스 회로에 대하여,The present invention also relates to an interface circuit for data communication between a standardized bus and IP (Intellectual Property (IP)) having different protocols, in order to achieve the above object,

라이브러리에 미리 저장되어 버스와 통신하는 버스의 듀얼 유한상태기; Dual finite state machines of the bus that are prestored in the library and in communication with the bus;

라이브러리에 미리 저장되어 버스의 듀얼 유한상태기로부터의 데이터를 일시 저장하거나 저장된 데이터를 출력하며, 그 저장용량이 가변되는 듀얼 포트 버퍼; 및 A dual port buffer previously stored in a library to temporarily store data from a dual finite state machine of a bus or output stored data, the storage capacity of which is variable; And

외부로부터 입력되는 아이피의 프로토콜에 관한 정보에 의해 생성되어 아이피, 버스의 듀얼 유한상태기 및 듀얼 포트 버퍼와 통신하는 아이피의 듀얼 유한상태기를 구비하고,It is provided by the information about the IP protocol input from the outside, and has the IP, the dual finite state machine of the bus and the dual finite state machine of the IP to communicate with the dual port buffer,

듀얼 포트 버퍼와 아이피 사이에 데이터 버스가 직접 연결되는 것을 특징으로 하는 인터페이스 회로를 제공한다. An interface circuit is provided that connects a data bus directly between a dual port buffer and an IP.

이러한 본 발명의 다른 특징에 의하면, 듀얼 포트 버퍼는 저장과 동시에 데이터를 읽을 수 있는 것이 바람직하다.According to another aspect of the present invention, it is preferable that the dual port buffer can read data simultaneously with storage.

이러한 본 발명의 또 다른 특징에 의하면, 듀얼 포트 버퍼는 버스로부터의 데이터를 읽고 저장하는 경우에 버스의 동작속도로 동작을 하며, 아이피로부터의 데이터를 읽고 저장하는 경우에 아이피의 동작속도로 동작을 하는 것이 바람직하다.According to another aspect of the present invention, the dual port buffer operates at the operating speed of the bus when reading and storing data from the bus, and operates at the operating speed of the IP when reading and storing data from the IP. It is desirable to.

이하 첨부된 도면을 참조하여, 바람직한 실시예에 따른 본 발명을 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명인 인터페이스 회로의 자동생성기를 간략히 보여주는 블록도이다.1 is a block diagram briefly showing an automatic generator of the present inventor's interface circuit.

도면을 참조하여 설명하면, 인터페이스 회로의 자동생성기(1)는 설계 사양 입력부(100), 아이피의 프로토콜 입력부(300) 및 인터페이스 회로 생성기(250)를 구비한다. Referring to the drawings, the automatic generator 1 of the interface circuit includes a design specification input unit 100, an IP protocol input unit 300, and an interface circuit generator 250.

인터페이스 회로 설계자는 먼저 인터페이스 회로의 설계 사양을 설계 사양 입력부(100)를 통하여 입력한다. 다음에 아이피의 프로토콜 입력부(300)를 통해 아이피의 프로토콜에 관한 정보를 입력한다.The interface circuit designer first inputs the design specification of the interface circuit through the design specification input unit 100. Next, information about the IP protocol is input through the IP protocol input unit 300 of the IP.

상기 설계 사양 및 아이피의 프로토콜에 관한 정보는 중간 포맷(Intermediate Format: IF)형태로 생성된 문자열(S)로서 인터페이스 회로 생성기(250)에 입력된다. Information about the design specification and IP protocol is input to the interface circuit generator 250 as a string S generated in an intermediate format (IF).

인터페이스 회로 생성기(250)에는 버스의 듀얼 유한상태기(410), 듀얼 포트 버퍼(420)가 저장된 라이브러리(200)가 있으며, 상기 문자열(S) 중 아이피의 프로토콜에 관한 정보에 의해 생성되는 아이피의 듀얼 유한상태기(430)가 설정된다. The interface circuit generator 250 includes a library 200 in which the dual finite state machine 410 and the dual port buffer 420 of the bus are stored, and the IP of the string S is generated by information about the protocol of the IP. Dual finite state machine 430 is set.

버스는 표준화된 버스로 AMBA 버스일 수 있다. The bus may be an AMBA bus as a standardized bus.

버스의 듀얼 유한상태기(410)는 버스와의 통신을 위한 것으로, 인터페이스 회로의 생성시의 복잡도를 줄이기 위하여, 라이브러리(200)에 미리 저장된다.The dual finite state machine 410 of the bus is for communication with the bus and is pre-stored in the library 200 in order to reduce the complexity in generating the interface circuit.

듀얼 포트 버퍼(420)는 버스의 듀얼 유한상태기(410)와 같이 인터페이스 회로의 복잡도를 줄이기 위하여, 라이브러리(200)에 미리 저장된다. 듀얼 포트 버퍼(420)는 버스의 듀얼 유한상태기(410) 또는 아이피로부터의 데이터를 저장하거나 출력하며 그 저장 용량이 가변된다.The dual port buffer 420 is pre-stored in the library 200 to reduce the complexity of the interface circuit, such as the dual finite state machine 410 of the bus. The dual port buffer 420 stores or outputs data from the dual finite state machine 410 or IP of the bus and its storage capacity is variable.

아이피의 듀얼 유한상태기(430)는 상기 아이피의 프로토콜에 관한 정보에 대 응하여 생성된다. 데이터 입출력을 위한 상태가 아이피의 프로토콜 입력부(300)를 통해 입력되는 아이피의 프로토콜에 관한 정보에 의해 설정되어, 결국 아이피의 듀얼 유한상태기(430)가 생성된다. The dual finite state machine 430 of the IP is generated in response to the information about the protocol of the IP. The state for data input and output is set by the information on the IP protocol input through the IP protocol input unit 300 of the IP, and eventually the dual finite state machine 430 of the IP is generated.

상기 설계 사양 입력부(100)와, 아이피의 프로토콜 입력부(300)를 통해 입력되는 인터페이스 회로의 설계 사양 및 아이피 프로토콜에 관한 정보에 의해, 상기 인터페이스 회로 생성기(250)내에서 상기 버스의 듀얼 유한상태기(410), 듀얼 포트 버퍼(420) 및 아이피의 듀얼 유한상태기(430)의 각 기능 및 상호 연결 관계가 설정되어 설계자가 원하는 형태의 인터페이스 회로가 생성되도록 HDL코드가 출력된다. 따라서 이를 실제 구현하여 설계자는 설계자가 원하는 버스와 아이피 간의 인터페이스 회로를 자동으로 생성할 수 있게 된다.The dual finite state machine of the bus in the interface circuit generator 250 is based on the design specification of the interface circuit inputted through the design specification input unit 100 and the IP protocol input unit 300 and the IP protocol information. 410, the dual port buffer 420 and the dual finite state machine 430 of each function and interconnection is set, the HDL code is output so that the interface circuit of the type desired by the designer is generated. Thus, by realizing this, the designer can automatically generate the interface circuit between the bus and the IP of the designer.

도 2는 도 1의 설계 사양 입력부를 GUI 형태로 구현한 예를 보여주는 도면이다.FIG. 2 is a diagram illustrating an example of implementing the design specification input unit of FIG. 1 in a GUI form.

도 1 내지 도 2를 참조하여 설명하면, 인터페이스 회로의 설계자는 인터페이스 회로의 설계 사양을 설계 사양 입력부(100)를 통하여 입력한다. 설계 사양 입력부는 설계자의 편의를 위해 도면과 같이 GUI 형태로 구현될 수 있다.1 to 2, the designer of the interface circuit inputs the design specification of the interface circuit through the design specification input unit 100. The design specification input unit may be implemented in a GUI form as shown in the figure for the convenience of the designer.

도면에서, "아이피 타입(IP type)"입력란에서, 라이브러리에 미리 저장된 버스의 듀얼 유한상태기(410)의 종류를 선택하는 것으로 "AMBA AHB MASTER", "AMBA AHB SLAVE", "기타(ETC)" 중 어느 하나를 설정할 수 있다.In the figure, in the " IP type " field, " AMBA AHB MASTER ", " AMBA AHB SLAVE " and " ETC " "Can be set to either.

또한, "타겟 아이피 프로토콜 특성(Target IP Protocol Property)" 입력란에서, 데이터를 "싱글 모드로 전송(Single transfer)"할 것인지 "버스트 모드로 전송(Burst transfer)"할 것인지 설정할 수 있다. 도면에서는 싱글 모드가 기본으로 설정되는 것으로 도시되어 있으나 이에 한정되지 않으며, 본 발명에서 듀얼 포트 버퍼를 사용하는 관계로 버스트 모드로 설정하는 것이 바람직 할 것이다. Also, in the "Target IP Protocol Property" input box, it is possible to set whether to transfer data in "Single transfer" or "Burst transfer". In the figure, the single mode is set as a default, but is not limited thereto. In the present invention, it is preferable to set the burst mode to the dual port buffer.

또한, "아이피의 데이터 패쓰 사이즈(IP's Datapath Size)" 입력란에서, 듀얼 포트 버퍼에 저장되는 데이터 사이즈의 크기를 설정하는 것으로 "32bit(Word)", "16bit(Half word)", "8 bit(Byte)" 중 어느 하나를 설정할 수 있다. 기본적으로 "32bit(Word)"가 설정되게 된다.Also, in the "IP's Datapath Size" field, set the size of the data size stored in the dual port buffer to "32bit (Word)", "16bit (Half word)", "8 bit ( Byte) "can be set. By default, "32 bit (Word)" is set.

또한, "어드레스 패쓰 사이즈(Address Path Size)" 입력란에서 "합치(Matched)", "불합치(Mismatched)"로 도시되어 있으나 기본적으로 "합치(Matched)"가 설정되게 된다. In addition, although "Matched" and "Mismatched" are shown in the "Address Path Size" input box, "Matched" is basically set.

또한, "타겟 아이피 프로토콜(Target IP protocol)" 입력란에서 아이피 프로토콜을 입력할 수 있으며, 그 방법으로 "불러오기(Browse)", "툴 사용(Use tool)" 중 어느 하나를 선택할 수 있다. "툴 사용(Use tool)"과 관련하여서는 도 3을 참조하여 하기에서 상술하기로 한다.In addition, the IP protocol may be input in the “Target IP protocol” input box, and one of “Browse” and “Use tool” may be selected as the method. With regard to "Use tool" will be described in detail below with reference to FIG.

상기와 같은 설계 사양이 입력된 후, "인터페이스 생성(Generate interface)" 버튼을 누르면, 인터페이스 회로를 생성할 수 있는 HDL 코드가 출력되게 된다. 즉, 설계 사양 입력부(100) 및 아이피의 프로토콜 입력부(300)로부터의 입력을 통해, 인터페이스 회로 생성기(250)는 버스의 듀얼 유한상태기(410), 듀얼 포트 버퍼(420) 및 아이피의 듀얼 유한상태기(430)의 상호 연결 관계 및 그 기능들이 정의되어 설계자가 원하는 형태의 인터페이스 회로가 생성되도록 HDL 코드가 출 력된다. 따라서 이를 실제 구현하여 설계자는 설계자가 원하는 버스와 아이피 간의 인터페이스 회로를 자동으로 생성할 수 있게 된다.After inputting the design specification as described above, pressing the "Generate interface" button will output the HDL code for generating the interface circuit. That is, through the input from the design specification input unit 100 and the IP protocol input unit 300, the interface circuit generator 250 uses the dual finite state machine 410 of the bus, the dual port buffer 420 and the dual finite of the IP. The HDL code is output so that the interconnections of the state machine 430 and their functions are defined to create the interface circuit of the type desired by the designer. Thus, by realizing this, the designer can automatically generate the interface circuit between the bus and the IP of the designer.

도 3은 도 1의 아이피의 프로토콜 입력부를 GUI 형태로 구현한 예를 보여주는 도면이다.FIG. 3 is a diagram illustrating an example of implementing a protocol input unit of an IP of FIG. 1 in a GUI form.

도 1 내지 도 3을 참조하여 설명하면, 아이피의 프로토콜 입력부(300)에서는 아이피의 프로토콜에 관한 정보를 입력할 수 있다. 도 2에서의 "타겟 아이피 프로토콜(Target IP protocol)" 입력란에 입력하기 위하여 도 3에 GUI 형태로 도시된 아이피의 프로토콜 입력부(300)를 통해 입력한다. 도 2에서의 "툴 사용(Use tool)" 버튼에 의해 도 3에 도시된 아이피의 프로토콜 입력부(300)를 사용할 수 있으며, 도 3에 도시된 아이피의 프로토콜 입력부(300)에서 아이피의 프로토콜에 관한 정보를 입력할 수 있다. 1 to 3, the IP input unit 300 may input information about an IP protocol. In order to input in the "Target IP protocol" input box in Figure 2 it is input through the protocol input unit 300 of the IP shown in GUI form in FIG. The protocol input unit 300 of the IP illustrated in FIG. 3 may be used by the “Use tool” button in FIG. 2, and the protocol input unit 300 of the IP illustrated in FIG. 3 relates to the IP protocol. You can enter information.

"신호 기술(Signal Description)"란에서, 신호 리스트(signal list)에 따라 각 신호들의 "신호 이름(signal name)", "신호 타입(signal type)", "신호 폭(signal width)" 및 "리마크(remark)"를 설정할 수 있다. 여기서 "리마크"는 신호 특성에 따라 인터페이스 회로 생성기(250)내의 버스의 듀얼 유한상태기(410), 듀얼 포트 버퍼(420) 및 아이피의 듀얼 유한상태기(430)의 연결 관계를 설정하게 된다.In the "Signal Description" column, the "signal name", "signal type", "signal width" and "signal name" of each signal according to a signal list Remark "can be set. Here, the "Liemark" sets the connection relationship between the dual finite state machine 410, the dual port buffer 420, and the dual finite state machine 430 of the IP in the interface circuit generator 250 according to the signal characteristics. .

도 4는 도 1의 아이피의 듀얼 유한상태기의 예를 보여주는 도면이다.4 is a view showing an example of a dual finite state machine of the IP of FIG.

아이피의 듀얼 유한상태기(430)는 아이피의 프로토콜 입력부(300)를 통해 입력된 아이피의 프로토콜에 관한 정보에 대응하여 생성된다.The dual finite state machine 430 of the IP is generated corresponding to the information about the IP protocol input through the IP protocol input unit 300 of the IP.

즉, 아이피의 프로토콜에 관한 정보에 의해, 아이피의 듀얼 유한상태기(430) 는 아이피의 초기 상태에서 동작 상태로 전이하게 하는 신호를 발생하며, 아이피의 출력신호를 입력신호로 받아 상태를 전이한 후 다음 상태에서 아이피의 상태 전이 신호를 발생하는 구조를 갖는다. 아이피의 듀얼 유한상태기(430)의 상태들은 입력된 아이피의 상태들과 동일하게 구성되며 아이피의 입력신호가 아이피의 듀얼 유한상태기(430)의 출력신호로, 아이피의 출력신호가 아이피의 듀얼 유한상태기(430)의 입력신호로 된다. 도 4는 아이피의 프로토콜과 서로 대응하는 신호를 주고받는 듀얼 유한상태기를 도시한다.That is, based on the IP protocol information, the dual dual state machine 430 of the IP generates a signal for transitioning from the initial state of the IP to the operating state, and receives the output signal of the IP as an input signal and transitions the state. It then has a structure that generates the IP transition signal in the next state. The states of the dual finite state machine 430 of the IP are configured identically to the states of the input IP, and the input signal of the IP is the output signal of the dual finite state machine 430 of the IP, and the output signal of the IP is dual of the IP. It becomes an input signal of the finite state machine 430. 4 illustrates a dual finite state device that exchanges signals corresponding to IP protocols.

즉, 시작 신호(START)가 아이피의 듀얼 유한상태기(430)에 입력되면, 아이피의 초기 상태에서 동작 상태(Wait 또는 Write)를 전이하게 하는 신호(WR=1)를 발생하며, 아이피의 출력신호를 입력신호(Ack=0 또는 Ack=1)로 받아 상태(D_Wait 또는 D_Write)를 전이한 후 다음 상태에서 아이피의 상태 전이 신호(Wr=1)를 발생한다.That is, when the start signal START is input to the dual finite state machine 430 of the IP, a signal (WR = 1) for transitioning the operating state (Wait or Write) from the initial state of the IP is generated, and the output of the IP is output. The signal is received as an input signal (Ack = 0 or Ack = 1) to transition the state (D_Wait or D_Write), and then the IP state transition signal (Wr = 1) is generated in the next state.

상기 도 1 내지 도 4에 의해 생성된 인터페이스 회로의 일예는 이하 도 5에서 상술하기로 한다.An example of the interface circuit generated by FIGS. 1 to 4 will be described in detail later with reference to FIG. 5.

도 5는 도 1의 인터페이스 회로의 자동생성기에 의해 구현된 버스와 아이피 간의 인터페이스 회로를 보여주는 도면이다.FIG. 5 is a diagram illustrating an interface circuit between a bus and an IP implemented by the autogenerator of the interface circuit of FIG. 1.

도 1 내지 도 5를 참조하여 설명하면, 도 1의 인터페이스 회로 자동생성기에 의해 자동으로 생성된 인터페이스 회로의 일예가 도 5에 도시되어 있다. 여기서 아이피는 슬레이브(slave)로 동작하는 것으로 한다.Referring to FIGS. 1 to 5, an example of an interface circuit automatically generated by the interface circuit autogenerator of FIG. 1 is illustrated in FIG. 5. The IP is assumed to operate as a slave.

도 1에 도시된 인터페이스 회로의 자동 생성기에 의해 버스(BUS)와 아이피(510) 간의 데이터 통신을 위해 생성된 인터페이스 회로(400)는 버스의 듀얼 유한 상태기(410), 듀얼 포트 버퍼(420) 및 아이피의 듀얼 유한상태기(430)를 구비하며, 그 기능 및 상호 연결 관계가 도 5와 같이 설정된다.The interface circuit 400 generated for data communication between the bus BUS and the IP 510 by the automatic generator of the interface circuit shown in FIG. 1 includes a dual finite state machine 410 and a dual port buffer 420 of the bus. And a dual finite state machine 430 of the IP, and its function and interconnection relationship are set as shown in FIG. 5.

버스의 듀얼 유한상태기(410)는 라이브러리(200)에 미리 저장되어 버스, 듀얼 포트 버퍼(420) 및 아이피의 듀얼 유한상태기(430)와 통신을 한다. The dual finite state machine 410 of the bus is previously stored in the library 200 to communicate with the bus, the dual port buffer 420, and the dual finite state machine 430 of the IP.

듀얼 포트 버퍼(420)는 라이브러리(200)에 미리 저장되어 버스의 듀얼 유한상태기(410)로부터의 데이터를 일시 저장하거나 저장된 데이터를 출력하며, 그 저장용량이 가변되며, 저장과 동시에 데이터를 읽으며, 버스(BUS)로부터의 데이터를 읽고 저장하는 경우에 버스(BUS)의 동작속도로 동작을 하며 아이피(510)로부터의 데이터를 읽고 저장하는 경우에 아이피(510)의 동작속도로 동작을 한다.The dual port buffer 420 is pre-stored in the library 200 to temporarily store data from the dual finite state machine 410 of the bus or output the stored data, and its storage capacity is variable, and the data is simultaneously read and stored. In the case of reading and storing data from the bus BUS, the data is operated at the operating speed of the bus BUS, and in the case of reading and storing data from the IP 510, the data is operated at the operating speed of the IP 510.

아이피의 듀얼 유한상태기(430)는 외부로부터 입력되는 아이피의 프로토콜에 관한 정보에 의해 생성되어, 버스의 듀얼 유한상태기(410), 듀얼 포트 버퍼(420) 및 아이피(510)와 통신한다.The dual finite state machine 430 of the IP is generated by information about the IP protocol input from the outside, and communicates with the dual finite state machine 410, the dual port buffer 420, and the IP 510 of the bus.

버스를 통해 들어오는 신호들은 버스의 듀얼 유한상태기(410)와 통신을 하게 되고, 버스의 듀얼 유한상태기(410)는 전송받은 데이터를 듀얼 포트 버퍼(420)에 저장함과 동시에 아이피(510)와 통신을 하게 될 아이피의 듀얼 유한상태기(430)에 전송할 데이터가 있음을 알린다. 듀얼 포트 버퍼(420)에 전송할 데이터가 있다는 신호를 받은 아이피의 듀얼 유한상태기(430)는 듀얼 포트 버퍼(420)의 데이터가 아이피에 전송될 수 있도록 버퍼 제어 신호(control signals) 및 아이피(510)가 데이터를 받아들이기 위해 필요한 신호를 발생한다.The signals coming through the bus communicate with the dual finite state machine 410 of the bus, and the dual finite state machine 410 of the bus stores the received data in the dual port buffer 420 and simultaneously with the IP 510. Inform the dual finite state machine 430 of the IP to be communicated that there is data to be transmitted. The dual finite state machine 430 of the IP having received the data to be transmitted to the dual port buffer 420 transmits the buffer control signals and the IP 510 so that the data of the dual port buffer 420 can be transmitted to the IP. ) Generates the signals needed to accept the data.

만약 하나의 클럭으로 동작하는 유한상태기로 인터페이스 회로를 구성한다 면, 인터페이스 회로내의 유한상태기와 아이피의 구동 클럭이 동기화 되지 않아 클럭 에지가 맞지 않아(mismatch) 인터페이스 회로의 출력신호를 아이피에서 인식할 수 없게 되는 문제점이 발생한다. 이 문제점을 해결하기 위해서는 인터페이스 회로에서 출력된 신호가 느린 클럭으로 동작하는 아이피에서의 수신을 확인한 후에 다음상태로 전이되는 루프를 모든 상태에 대해서 고려해 주어야만 하는데 이러한 구현 방식은 자동생성 과정이 복잡하며, 모든 상태마다 상태가 전이되었다는 신호들을 발생시켜 주어야 하기 때문에 이를 위한 신호들의 합성 및 제어를 위한 오버헤드가 발생한다. 뿐만 아니라 느린 아이피를 사용할 시에 인터페이스 회로 내의 유한상태기에서는 아이피의 모든 상태 전이를 체크해야 하기 때문에 전체적인 동작 속도는 아이피의 속도를 따라가게 되어 전체적인 동작 속도의 저하를 가져온다.If the interface circuit is composed of a finite state operating with one clock, the output signal of the interface circuit can be recognized by the IP because the clock edges are mismatched because the finite state of the interface circuit and the driving clock of the IP are not synchronized. The problem arises that there is no. In order to solve this problem, the signal output from the interface circuit must check the reception of the IP which operates with a slow clock, and then consider the loop for all states, which is complicated in the automatic generation process. Since every state must generate signals that the state has transitioned, overhead for synthesizing and controlling the signals for this state occurs. In addition, when using a slow IP, the finite state machine in the interface circuit must check all the transitions of the IP, so that the overall operating speed follows the IP speed, resulting in a decrease in the overall operating speed.

상기와 같은 문제점을 해결하기 위하여, 본 발명은 버스의 듀얼 유한상태기와 아이피의 듀얼 유한상태기를 따로 구성하여 버스와 통신하는 버스의 듀얼 유한상태기(410)가 데이터를 듀얼 포트 버퍼(420)에 전송함과 동시에 아이피의 듀얼 유한상태기(430)에 데이터를 아이피(510)에 송신해도 된다는 신호를 발생한다. 아이피의 듀얼 유한상태기(430)에 데이터를 아이피(510)에 전송해도 된다는 신호를 받으면 듀얼 포트 버퍼(420)에 있는 데이터를 아이피(510)에 전송하는 동작을 시작함과 동시에 버스의 듀얼 유한상태기(410)에 Ack 신호를 전송한다. 버스의 듀얼 유한상태기(410)는 전송할 데이터를 듀얼 포트 버퍼(420)에 모두 저장한 다음 Ack 신호를 체크한 후 Ack 신호가 발생되어 있으면 데이터 전송을 완료한다.In order to solve the above problems, the present invention is to configure the dual finite state of the bus and the dual finite state of the IP separately, the dual finite state of the bus communicating with the bus 410 the data to the dual port buffer 420 Simultaneously with the transmission, a signal is generated that the data may be transmitted to the IP 510 to the dual finite state machine 430 of the IP. When the dual finite state machine 430 of the IP receives a signal that the data may be transmitted to the IP 510, the operation of transmitting the data in the dual port buffer 420 to the IP 510 is simultaneously performed. The Ack signal is transmitted to the state machine 410. The dual finite state machine 410 of the bus stores all data to be transmitted in the dual port buffer 420 and then checks the Ack signal, and then completes data transmission if an Ack signal is generated.

다른 속도의 클럭으로 동작하는 버스의 듀얼 유한상태기(410)와 아이피의 듀 얼 유한상태기(430)로 구성되는 본 발명의 인터페이스 회로 구조는 버스의 듀얼 유한상태기(410)에 아이피의 듀얼 유한상태기(430)의 Ack 신호를 체크하는 상태만을 추가함으로써 버스(BUS)와 아이피(510) 간의 동작 속도 차이가 상당한 경우에 대해서도 완벽하게 동작하게 된다. The interface circuit structure of the present invention consisting of dual finite state machine 410 of the bus and dual finite state machine 430 of IP operating at clocks of different speeds is based on dual dual finite state machine 410 of the bus. By adding only the state of checking the Ack signal of the finite state machine 430, even when the difference in the operating speed between the bus BUS and the IP 510 is significant, the operation is perfectly performed.

듀얼 포트 버퍼(420)의 사용은 데이터의 버스트 모드(도2 참조) 전송일 때 효율적인 동작을 하기 위한 것이다. 아이피(510)에 싱글 전송 모드(도 2 참조)로 데이터를 전송하는 경우에는 데이터를 전송하고 올바른 수신에 대한 응답 신호를 받았을 경우에만 다음 상태로 전이되기 때문에 버퍼가 필요 없으나 버스(BUS)와 동작 클럭이 다른 타겟 모듈(예를 들어 아이피(510))에 연속된 데이터를 전송하는 버스트 모드로 동작할 경우에 아이피(510)에서 하나의 데이터의 수신하였다는 신호를 받고 다음 데이터를 전송하게 된다면 버스트 모드시 전체 데이터 전송 지연이 증가하게 된다. 따라서 연속된 데이터의 전송 지연을 감소시키기 위하여 듀얼 포트 버퍼(420)를 사용한다. 듀얼 포트 버퍼(420)는 데이터를 쓰기(write)와 읽기(read)하는 동작속도가 아이피(510)와 버스(BUS)의 동작 클럭과 동기되어 동작된다. 버스(BUS)에서 듀얼 포트 버퍼(420)에 데이터를 쓰기(write)할 경우에는 버스(BUS)의 동작속도로 동작하며, 아이피(510)에서 듀얼 포트 버퍼(420)의 데이터를 읽기(read)할 경우에는 아이피(510)의 동작속도로 동작할 뿐만 아니라 버스(BUS)에서 데이터를 쓰기(write)함과 동시에 아이피(510)에서 데이터를 읽기(read)할 경우에도 각 타겟 모듈의 속도와 동기되어 동작한다. 한편, 버스트 모드시 전송 데이터가 일시에 일정 개수로 한정되어 있을 경우 듀얼 포트 버퍼(420)는 아이피(510)에서 사용할 용량만큼만 필요하게 되므로, 본 발명에서 사용하는 듀얼 포트 버퍼(420)는 저장 용량이 가변하는 것으로 한다. The use of the dual port buffer 420 is for efficient operation when in burst mode (see FIG. 2) transmission of data. When data is transmitted to IP 510 in the single transmission mode (see FIG. 2), the buffer is not required because the data is transferred to the next state only when the data is transmitted and the response signal for the correct reception is received. When the clock is operated in a burst mode in which continuous data is transmitted to another target module (for example, the IP 510), the IP 510 receives a signal indicating that one data has been received and then transmits the next data. In mode, the overall data transmission delay is increased. Therefore, the dual port buffer 420 is used to reduce the transmission delay of consecutive data. The dual port buffer 420 is operated in synchronization with an operation clock of the IP 510 and the bus BUS to write and read data. When writing data to the dual port buffer 420 on the bus, the data is operated at the operating speed of the bus BUS, and the data of the dual port buffer 420 is read from the IP 510. If you do not only operate at the operating speed of the IP 510, but also to write data on the bus (BUS) and at the same time to read data from the IP (510) speed and synchronization of each target module It works. On the other hand, in the burst mode, when the transmission data is limited to a certain number at a time, since the dual port buffer 420 is needed only as much as the capacity to be used in the IP 510, the dual port buffer 420 used in the present invention has a storage capacity. It is assumed that this variable.

한편, 듀얼 포트 버퍼(420)는 서큘러 큐(Circular Queue)로 구현되어 하나의 데이터의 쓰기(write)가 완료되는 시점에서 탑 포인트(top-point)를 증가시키게 되며 데이터의 읽기(read)가 완료되는 시점에서 버텀 포인트(bottom-point)를 증가시키게 하여 데이터의 쓰기(write)와 읽기(read) 속도가 다른 경우에도 오류 없이 데이터를 관리할 수 있다.On the other hand, the dual port buffer 420 is implemented as a circular queue to increase the top-point at the time when writing of one data is completed, and the read of data is completed. At the point of time, the bottom point is increased so that data can be managed without errors even when the data write and read speeds are different.

듀얼 포트 버퍼(420)의 데이터 버스는 버스의 듀얼 유한상태기(410)를 통해 연결되며, 아이피(510)의 데이터 버스는 듀얼 포트 버퍼(420)와 직접 연결된다. 버스의 듀얼 유한상태기(410)는 전송할 데이터를 듀얼 포트 버퍼(420)에 모두 저장하게 되면 데이터의 전송을 완료한 것으로 마스터 모듈에 알려주게 되며 마스터 모듈은 시스템 버스의 락(lock)을 풀어 다른 마스터 모듈이 버스를 사용할 수 있게 된다. 다른 마스터 모듈이 시스템 버스를 쓰는 경우 버스(BUS)와 듀얼 포트 버퍼(420)의 데이터 라인에서 충돌이 일어날 수 있기 때문에 버스의 듀얼 유한상태기(410)는 데이터 버스에 대한 제어를 해야 한다. 반면 아이피의 듀얼 유한상태기(510)는 데이터의 쓰기(Write)와 읽기(read) 동작을 듀얼 포트 버퍼(420)와 타겟 아이피(510)에 대해서만 제어하게 되므로 아이피(510)와 듀얼 포트 버퍼(420)의 데이터 버스의 데이터 충돌은 발생하지 않는다. 오히려 아이피의 듀얼 유한상태기(430)에서 듀얼 포트 버퍼(420)로 출력되는 데이터를 제어한다면, 데이터는 아이피의 듀얼 유한상태기(430)를 거쳐 아이피(510)에 전달되므로 데이터의 전송 지연이 증가하게 된다. 따라서 데이터의 전송 지연을 낮추기 위하여, 듀얼 포트 버퍼(420)의 데이터 버스는 아이피(510)와 직접 연결되며, 또한 듀얼 포트 버퍼(420)는 데이터의 읽기, 쓰기를 동시에 할 수 있도록 입출력이 독립적인 두개의 포트를 갖는다. The data bus of the dual port buffer 420 is connected through the dual finite state machine 410 of the bus, and the data bus of the IP 510 is directly connected to the dual port buffer 420. When the dual finite state machine 410 of the bus stores all the data to be transmitted in the dual port buffer 420, the master module notifies the master module that the data has been transmitted and the master module unlocks the system bus to unlock the other. The master module can use the bus. If another master module uses the system bus, the bus may collide with the data line of the dual port buffer 420, so the dual finite state machine 410 of the bus must control the data bus. On the other hand, the dual finite state machine 510 of the IP controls the write and read operations of the data only for the dual port buffer 420 and the target IP 510, so the IP 510 and the dual port buffer ( No data collision of the data bus of 420 occurs. Rather, if the dual finite state controller 430 of the IP to control the data output to the dual port buffer 420, the data is transferred to the IP 510 through the dual finite state machine 430 of the IP transmission delay of the data Will increase. Therefore, in order to reduce the data transmission delay, the data bus of the dual port buffer 420 is directly connected to the IP 510, and the dual port buffer 420 is independent of input and output to simultaneously read and write data. It has two ports.

마스터 모듈이 버스트 모드로 데이터 전송을 완료하면 버스 락을 풀고 다른 마스터 모듈이 시스템 버스(BUS)를 사용하게 된다. 다른 마스터(master) 모듈이 현재 듀얼 포트 버퍼(420)의 데이터를 아이피(510)로 전송하고 있는 슬레이브(slave) 모듈을 다시 사용하려 할 때 듀얼 포트 버퍼(420)가 풀(Full)일 경우에는 쓰기(write) 동작을 블록킹(blocking)하며 풀(full)이 아니면 이전과 동일한 쓰기(write) 동작을 수행한다. 종래에는 슬레이브 모듈에 데이터가 모두 전송되기 전까지 다른 마스터 모듈이 시스템 버스(BUS)를 사용하지 못하는데 반해 본 발명의 인터페이스 회로 구조는 마스터 모듈이 전송하고자 하는 데이터를 듀얼 포트 버퍼(420)에 저장 완료하며 다른 마스터 모듈이 시스템 버스(BUS)를 사용할 수 있기 때문에 시스템 버스(BUS)의 사용 효율이 증가하게 된다.When the master module completes data transfer in burst mode, the bus lock is unlocked and other master modules use the system bus. If the dual port buffer 420 is full when another master module tries to use a slave module that is currently transmitting data of the dual port buffer 420 to the IP 510, Blocks the write operation and performs the same write operation as before unless it is full. Conventionally, while the other master module does not use the system bus (BUS) until all the data is transmitted to the slave module, the interface circuit structure of the present invention completes storing the data to be transmitted by the master module in the dual port buffer 420. Since other master modules can use the system bus, the use efficiency of the system bus is increased.

상술한 바와 같이, 본 발명에 따른 버스와 아이피 간의 인터페이스 회로 자동 생성기 및 이에 의해 구현된 인터페이스 회로에 의하면, 먼저 버스와 아이피 간의 인터페이스 회로 설계시에 설계 비용 및 시간을 저감할 수 있게 된다. As described above, according to the automatic generator of the interface circuit between the bus and the IP according to the present invention and the interface circuit implemented thereby, the design cost and time can be reduced at the time of designing the interface circuit between the bus and the IP.

또한, 설계 사양 입력 및 아이피 프로토콜에 관한 정보 입력시 GUI로 구현된 입력기를 통해 입력하게 되므로 설계시 설계자의 편의를 향상시키게 된다. In addition, the input of the design specification and the IP protocol information input through the input device implemented as a GUI to improve the convenience of the designer during design.

또한, 인터페이스 회로는 듀얼 유한상태기를 사용함으로써, 버스와 아이피 간에 서로 다른 클럭을 갖더라도 동작을 하며, 아이피와 듀얼 포트 버퍼의 데이터 버스를 직접 연결하여 전송 지연이 저감된다. In addition, by using a dual finite state interface, the interface circuit operates even though the clock and the IP have different clocks, and the transmission delay is reduced by directly connecting the data bus of the IP and the dual port buffer.

또한 본 발명의 인터페이스 회로 구조는 마스터 모듈이 전송하고자 하는 데이터를 듀얼 포트 버퍼에 저장 완료하면 다른 마스터 모듈이 시스템 버스(BUS)를 사용할 수 있기 때문에 시스템 버스(BUS)의 사용 효율이 증가하게 된다.In addition, the interface circuit structure of the present invention increases the use efficiency of the system bus because other master modules can use the system bus BUS when the master module completes storing data to be transmitted in the dual port buffer.

본 발명은 첨부된 도면에 도시된 일실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 수 있을 것이다. 따라서, 본 발명의 진정한 보호 범위는 첨부된 청구 범위에 의해서만 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the accompanying drawings, this is merely exemplary, and it will be understood by those skilled in the art that various modifications and equivalent other embodiments are possible. Could be. Accordingly, the true scope of protection of the invention should be defined only by the appended claims.

Claims (5)

표준화된 버스와 서로 다른 프로토콜을 가진 아이피(Intellectual Property: IP) 간의 데이터 통신을 위한 인터페이스 회로에 대하여,For interface circuits for data communication between standardized buses and IPs with different protocols, 상기 인터페이스 회로의 설계 사양이 입력되는 설계 사양 입력부; A design specification input unit to which a design specification of the interface circuit is input; 아이피 프로토콜에 관한 정보가 입력되는 아이피의 프로토콜 입력부; 및 An IP protocol input unit to which IP information is input; And 상기 아이피의 프로토콜에 관한 정보에 대응하여 생성되어 상기 아이피와 통신하는 아이피의 듀얼(dual) 유한상태기(Finite State Machine: FSM)와, 라이브러리(Library)에 미리 저장되어 상기 버스와 통신하는 버스의 듀얼 유한상태기와, 상기 라이브러리에 미리 저장되어 상기 버스의 듀얼 유한상태기 또는 상기 아이피로부터의 데이터를 저장하거나 출력하며 그 저장 용량이 가변되는 듀얼 포트 버퍼의 상호 연결 관계 및 그 기능이 상기 설계 사양 및 아이피의 프로토콜에 관한 정보에 의해서 설정되어 HDL 코드를 출력하는 인터페이스 회로 생성기;를 구비하여 상기 버스와 상기 아이피 간의 인터페이스 회로를 자동으로 생성하는 것을 특징으로 하는 인터페이스 회로 자동생성기.The dual finite state machine (FSM) of the IP, which is generated in correspondence with the IP protocol information and communicates with the IP, is stored in a library and communicates with the bus. The interconnection relationship between the dual finite state device and the dual port buffer previously stored in the library to store or output data from the dual finite state device of the bus or the IP and its storage capacity is variable, and the function thereof are determined by the design specification and And an interface circuit generator configured to output an HDL code based on information about an IP protocol, and automatically generate an interface circuit between the bus and the IP. 제1항에 있어서,The method of claim 1, 상기 설계 사양 입력부 및 상기 프로토콜 입력부는 그래피컬 유저 인터페이스(Graphical User Interface: GUI)로 구현되는 것을 특징으로 하는 인터페이스 회로 자동생성기.And the design specification input unit and the protocol input unit are implemented in a graphical user interface (GUI). 표준화된 버스와 서로 다른 프로토콜을 가진 아이피(Intellectual Property: IP) 간의 데이터 통신을 위한 인터페이스 회로에 대하여,For interface circuits for data communication between standardized buses and IPs with different protocols, 라이브러리에 미리 저장되어 상기 버스와 통신하는 버스의 듀얼 유한상태기; Dual finite state machines of the bus which are previously stored in a library and communicate with the bus; 상기 라이브러리에 미리 저장되어 상기 버스의 듀얼 유한상태기로부터의 데이터를 일시 저장하거나 저장된 데이터를 출력하며, 그 저장용량이 가변되는 듀얼 포트 버퍼; 및 A dual port buffer previously stored in the library to temporarily store data from the dual finite state machine of the bus or output stored data, the storage port of which is variable; And 외부로부터 입력되는 아이피의 프로토콜에 관한 정보에 의해 생성되어 상기 아이피, 버스의 듀얼 유한상태기 및 듀얼 포트 버퍼와 통신하는 아이피의 듀얼 유한상태기를 구비하고,And a dual finite state group of the IP, which is generated by information on the IP protocol input from the outside and communicates with the IP, the dual finite state group of the bus and the dual port buffer, 상기 듀얼 포트 버퍼와 상기 아이피 사이에 데이터 버스가 직접 연결되는 것을 특징으로 하는 인터페이스 회로. And a data bus is directly connected between the dual port buffer and the IP. 제3항에 있어서,The method of claim 3, 상기 듀얼 포트 버퍼는 저장과 동시에 데이터를 읽는 것을 특징으로 하는 인터페이스 회로.And the dual port buffer reads data simultaneously with storage. 제3항에 있어서, 상기 듀얼 포트 버퍼는,The method of claim 3, wherein the dual port buffer, 상기 버스로부터의 데이터를 읽고 저장하는 경우에 상기 버스의 동작속도로 동작을 하며,In the case of reading and storing data from the bus, operating at the operating speed of the bus, 상기 아이피로부터의 데이터를 읽고 저장하는 경우에 상기 아이피의 동작속도로 동작을 하는 것을 특징으로 하는 것을 특징으로 하는 인터페이스 회로.And operating at the operating speed of the IP when reading and storing data from the IP.
KR1020050037073A 2005-05-03 2005-05-03 Automatic generator of interface circuit and interface circuit embodied by the same KR20060114884A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050037073A KR20060114884A (en) 2005-05-03 2005-05-03 Automatic generator of interface circuit and interface circuit embodied by the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050037073A KR20060114884A (en) 2005-05-03 2005-05-03 Automatic generator of interface circuit and interface circuit embodied by the same

Publications (1)

Publication Number Publication Date
KR20060114884A true KR20060114884A (en) 2006-11-08

Family

ID=37652443

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050037073A KR20060114884A (en) 2005-05-03 2005-05-03 Automatic generator of interface circuit and interface circuit embodied by the same

Country Status (1)

Country Link
KR (1) KR20060114884A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100764588B1 (en) * 2006-01-31 2007-10-09 가부시끼가이샤 도시바 Automatic design apparatus, automatic design method, and automatic design program of digital circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100764588B1 (en) * 2006-01-31 2007-10-09 가부시끼가이샤 도시바 Automatic design apparatus, automatic design method, and automatic design program of digital circuit

Similar Documents

Publication Publication Date Title
CN103198043B (en) A kind of improved AHB to APB bus bridge and control method thereof
JP3730898B2 (en) Main storage using data strobe protocol
JP2002007201A (en) Memory system, memory interface, and memory chip
US10936531B2 (en) Distributed multi-die protocol application interface
CN101753388A (en) Routing and interface device suitable for on-chip and inter-chip extension of multi-core processor
CN102981776A (en) DDR PSRAM, controller and access method for DDR PSRAM and operating method thereof, and data writing and reading methods thereof
US20090150706A1 (en) Wrapper circuit for globally asynchronous locally synchronous system and method for operating the same
CN108683536B (en) Configurable dual-mode converged communication method of asynchronous network on chip and interface thereof
CN101477504A (en) System and method for transmission of data
CN114356419B (en) Universal interface register system and rapid generation method
CN112905520A (en) Data transfer events for interconnected dies
CN112965926B (en) SPI interface safety chip and SPI interface electronic device
JP2008234222A (en) Usb controller and method of testing usb controller
US6208703B1 (en) First-in-first-out synchronizer
US7420869B2 (en) Memory device, use thereof and method for synchronizing a data word
AU8215898A (en) An interface apparatus for connecting devices operating at different clock rates, and a method of operating the interface
JPH11161599A (en) Data transfer method
KR20060114884A (en) Automatic generator of interface circuit and interface circuit embodied by the same
CN218068843U (en) Bridging circuit structure for converting AXI master port into APB slave port and SOC system
CN218181513U (en) I2S master-slave mode control circuit
US7173877B2 (en) Memory system with two clock lines and a memory device
CN102723943B (en) A kind of CPLD and realize signal level conversion method
CN100440880C (en) Physical address conversion device and conversion method
ITTO20010333A1 (en) DEVICE AND METHOD OF MANAGEMENT OF WAITING CYCLES DURING THE READING OF A NON-VOLATILE MEMORY.
US6671220B2 (en) Semiconductor device having simplified internal data transfer

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application