KR20010006983A - Rapid Prototyping Apparatus and Its Input/Output Probing Method, and Mixed Verification Method Using the Same - Google Patents
Rapid Prototyping Apparatus and Its Input/Output Probing Method, and Mixed Verification Method Using the Same Download PDFInfo
- Publication number
- KR20010006983A KR20010006983A KR1020000019740A KR20000019740A KR20010006983A KR 20010006983 A KR20010006983 A KR 20010006983A KR 1020000019740 A KR1020000019740 A KR 1020000019740A KR 20000019740 A KR20000019740 A KR 20000019740A KR 20010006983 A KR20010006983 A KR 20010006983A
- Authority
- KR
- South Korea
- Prior art keywords
- probe
- input
- circuit
- verification
- output
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 238000012795 verification Methods 0.000 title claims description 156
- 239000000523 sample Substances 0.000 claims abstract description 438
- 238000012942 design verification Methods 0.000 claims abstract description 166
- 238000004088 simulation Methods 0.000 claims description 47
- 230000006399 behavior Effects 0.000 claims description 24
- 230000008569 process Effects 0.000 claims description 24
- 238000013461 design Methods 0.000 claims description 15
- 230000009977 dual effect Effects 0.000 claims description 15
- 230000001360 synchronised effect Effects 0.000 claims description 15
- 230000007704 transition Effects 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 3
- 230000002457 bidirectional effect Effects 0.000 claims description 2
- 230000015572 biosynthetic process Effects 0.000 claims description 2
- 238000003786 synthesis reaction Methods 0.000 claims description 2
- 238000012941 design validation Methods 0.000 claims 2
- 230000004913 activation Effects 0.000 claims 1
- 239000000203 mixture Substances 0.000 claims 1
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 101100083007 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) PFF1 gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008672 reprogramming Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31712—Input or output aspects
- G01R31/31715—Testing of input or output circuits; test of circuitry between the I/C pins and the functional core, e.g. testing of input or output driver, receiver, buffer
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318342—Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
- G01R31/318357—Simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
- G06F30/331—Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
본 발명은 설계된 디지탈 회로의 설계검증을 신속하고 정확하게 수행할 수 있는 입출력 탐침이 가능한 신속 프로토타이핑 시스템과 그것의 탐침방법에 관한 것이다.The present invention relates to a rapid prototyping system capable of performing input and output probes capable of performing design verification of a designed digital circuit quickly and accurately, and a probe method thereof.
본 발명에서는 서버용 컴퓨터로 하여금 검증대상 디지탈 회로의 구현과 입출력 탐침을 가능하게 하는 탐침 부가회로를 위한 프로그래밍 패턴을 생성하게 함과 아울러 이 프로그래밍 패턴을 프로토타이핑 엔진의 각 RFPD에 다운로드되게 하여 설계검증 대상회로가 프로토타이핑 상에 구현되게 하고 부가된 입출력 탐침 부가회로를 통하여 입출력 탐침을 수행할 수 있게 한다.According to the present invention, a server computer generates a programming pattern for a probe additional circuit that enables the implementation of the digital circuit to be verified and the input / output probe, and the programming pattern is downloaded to each RFPD of the prototyping engine. Allows the circuit to be implemented on prototyping and to perform input and output probes through the added input and output probe additional circuitry.
Description
본 발명은 설계된 디지탈 회로를 고속으로 검증하는 에뮬레이션 기반의 설계 검증 기술에 관한 것으로, 특히 설계된 디지탈 회로를 프로그램 가능한 소자 (또는 칩)들로 구성된 신속 프로토타이핑 장치를 사용하여 실제의 하드웨어와 동일한 형태로 신속 구현하고 원하는 디지털 회로 내부의 신호선, 또는 특정 디지털 회로의 행위를 구술한 하드웨어구술언어(Hardware Description Language; 이하 HDL이라 함) 코드에 존재하는 시그널(signal)들에 대하여 빠르게 입출력 탐침하는 방법에 관한 것이다.The present invention relates to an emulation-based design verification technique that verifies a designed digital circuit at high speed, in particular using a rapid prototyping device consisting of programmable elements (or chips) in the same form as real hardware. To quickly implement input and output probes for signal lines in a desired digital circuit or signals present in a hardware description language (HDL) code describing the behavior of a particular digital circuit. will be.
최근에 집적회로의 설계 및 반도체 공정기술이 급격하게 발달함에 따라 디지탈 회로 설계의 규모가 커짐은 물론 그 구성이 복잡해지고 있는 추세이다. 이와 더불어, 시장에서의 경쟁도 더욱 더 치열해지므로 빠른 시간 내에 우수한 제품을 개발하여야만 한다. 따라서 빠른 시간 내에 설계된 회로를 효율적으로 신속히 구현·검증하기 위한 신속 프로토타이핑의 필요성이 커지고 있다.Recently, with the rapid development of integrated circuit design and semiconductor process technology, the scale of digital circuit design is increasing and its configuration is becoming complicated. In addition, competition in the market is getting fiercer, so it is necessary to develop excellent products in a short time. Therefore, there is a growing need for rapid prototyping to efficiently and quickly implement and verify circuits designed in a short time.
지금까지는 설계된 디지탈 회로를 검증하기 위하여 소프트웨어적인 시뮬레이터가 주로 사용되었으나, 시뮬레이터는 실제 회로 구현이 아닌 소프트웨어를 이용한 가상적인 모델링에 의존하므로 하드웨어인 디지털 회로의 실제 수행과는 차이가 있으며 다른 주변 하드웨어 환경에 통합되어 시스템 전체를 검증(이를 ICE, In-Circuit Emulation이라 함)할 수 없는 한계가 있다. 더욱이 시뮬레이션 소프트웨어와 단일 프로세서에 의존하는 컴퓨터의 성능이 급속토록 증가하는 수백만, 혹은 수천만 게이트급 디지탈 회로의 복잡도를 따라가지 못함으로 인하여 설계검증을 위하여 상상을 초월하는 긴 시뮬레이션 시간을 필요로 하고 있다. 이러한 소프트웨어 시뮬레이터의 단점을 극복하고 설계된 회로를 보다 빠른 시간에 완벽하게 검증하기 위한 방안으로서 실제 회로에 가깝고 빠른 검증을 수행할 수 있는 일명 "신속 프로토타이핑"이라 하는 하드웨어적인 에뮬레이션 기반의 설계 검증 기술이 등장하게 되었다. 이와 같은 신속 프로토타이핑을 이용하여 설계된 디지탈 회로를 검증하면 실제 구현된 하드웨어 상에서 디지털 회로를 검증하는 것이기 때문에 고속의 설계 검증이 가능하고 소프트웨어적인 가상 환경보다 실제적인 하드웨어적인 상황하에서의 검증이 가능하며 다른 주변 하드웨어 환경과도 통합적으로 검증할 수 있다. 이와 같은 신속 프로토타이핑을 이용한 디지탈 회로 설계 검증 과정은 기본적으로 대상 회로의 입력들에 검사용 신호값들을 인가하고 회로내에 존재하는 수많은 신호선들을 (필요한 경우에는 회로내의 모든 신호선들을) 출력탐침하여 이 신호선들 상에 나타나는 논리값들 각각이 설계자가 의도한 논리값과 일치하는 지를 조사하는 것이다. 이 뿐만 아니라 설계 검증 대상이 되는 디지털 회로 내부에 존재하는 메모리 소자(플립플롭, 혹은 레치)들에 설계검증시의 초기, 혹은 중간 중간에 원하는 상태 값들을 입력탐침하여 이 회로 상태에서부터 설계검증을 수행함으로서 설계검증 시간을 대폭적으로 단축할 수도 있다. 본 기술은 신속 프로토타이핑 시스템을 위한 새로운 입출력 탐침방법에 관한 것이다.Until now, software simulators have been mainly used to verify the designed digital circuits. However, since simulators rely on virtual modeling using software rather than actual circuit implementations, they are different from the actual performance of digital circuits, which are hardware. There is a limitation that it is impossible to integrate and verify the whole system (called ICE, In-Circuit Emulation). In addition, simulation software and computers that rely on a single processor can't keep up with the rapidly increasing complexity of millions or millions of gate-class digital circuits, requiring unimaginable long simulation times for design verification. In order to overcome the shortcomings of this software simulator and to fully verify the designed circuit in a faster time, a hardware emulation-based design verification technique called "fast prototyping" that can perform near-real-time and quick verification is provided. It appeared. Validating digital circuits designed using this rapid prototyping is to verify digital circuits on real-world hardware, enabling fast design verification and verification under more practical hardware conditions than software virtual environments. It can also be integrated with the hardware environment. This digital circuit design verification process using rapid prototyping basically applies the test signal values to the inputs of the target circuit and outputs a number of signal lines in the circuit (all signal lines in the circuit, if necessary). This is to check whether each of the logic values appearing in the field matches the logic value intended by the designer. In addition, the design verification is performed from the state of the circuit by inputting desired state values at the beginning or the middle of the design verification to the memory elements (flip-flops or latches) present in the digital circuit to be subjected to design verification. By doing so, design verification time can be significantly shortened. The technique relates to a new input / output probe method for rapid prototyping systems.
우선 일반적인 신속 프로토타이핑 장치의 구조를 설명하면, 신속 프로토타이핑 장치를 구성하는 핵심 소자로는 재사용 가능 프로그래밍 소자(Reusable Field Programmable Devices ; 이하 "RFPD"라 함)가 사용되고 있다. RFPD는 일반적으로 도2와 같이 프로그래밍 할 수 있는 기본셀(Basic Cell ; 이하 "BC"라 함)(13)과 BC(13)들을 프로그래밍으로 연결시키는 연결자원(Interconnection Resource ; 이하 "IR"라 함)으로 구성되어 있다. BC(13)는 제한적인 간단한 디지탈 회로만을 구성할 수 있기 때문에 일반적인 복잡한 디지탈 회로는 여러 개의 BC(13)들을 IR를 통하여 연결함으로서 구현된다. 이러한 RFPD는 현장프로그래밍가능게이트어레이(FPGA: Field Programmable Gate Array)와 복합프로그래밍가능논리소자(CPLD: Complex Programmable Logic Device)들이 있는데, 최근 들어 반도체 기술의 발달로 RFPD의 집적도가 매우 높아져 상당히 복잡한 디지탈 회로들로 하나의 RFPD나 매우 적은 수의 RFPD만을 사용하여 프로토타이핑하여 보는 것이 가능해졌다. 이로 인하여 프로토타이핑을 경제적으로 할 수 있게는 되었으나, 프로토타이핑을 하였을 때에 설계 검증의 대상이 되는 디지탈 회로 상에 존재하는 수많은 신호선들의 대부분이 RFPD 내부에 존재하게 됨으로서 신호선들의 탐침을 더욱 어렵게 만들어버리는 매우 심각한 문제점을 초래하게 되었다. 이는 집적도가 더욱 커진 RFPD가 사용되는 미래에도 더욱 큰 문제점으로 대두하게 될 것이다. 이와 같은 문제점을 완전히 해결하는 신속 프로토타이핑 장치의 구성은 다음과 같다. 이 신속 프로토타이핑 장치는 도1 에서와 같이 1이상의 RFPD(12)을 가지는 프로토타이핑 엔진(44)과, 서버용 컴퓨터(20)와 서버용 컴퓨터에 내장된 신속 프로토타이핑 시스템 운영 소프트웨어와 프로토타이핑 엔진(44) 간의 신호를 중계하는 중계모듈(30)로 구성된다. 이와 같은 RFPD를 이용한 디지탈 회로 구현 과정은 매핑, 배치및연결, 프로그래밍패턴생성, 프로그램패턴다운로드의 과정들을 순서적으로 필요로 한다. RFPD는 프로그래밍을 통한 회로 구현이 가능함으로 프로그램가능 소자인 동시에, 이와 같은 프로그래밍을 수 없이 반복할 수 있고 다른 프로그래밍 패턴을 사용한 프로그래밍에 의하여 다른 회로 구현이 가능함으로 무제한의 재사용이 가능한 재사용가능 소자이다. 본 신속 프로토타이핑 장치에서도 RFPD(12)들은 서버용 컴퓨터(20)로부터의 프로그래밍 패턴에 따라 매핑, 배치및배선, 프로그래밍패턴생성, 프로그래밍패턴다운로드 됨으로써 서버용 컴퓨터(20)가 지정한 회로를 구성하고 그 구성된 회로의 동작을 수행하게 된다. 서버용 컴퓨터(20)는 설계자가 설계한 회로에 대한 프로그래밍 패턴을 생성하고 그 생성된 프로그래밍 패턴을 중계모듈(30)을 경유하여 프로토타이핑 엔진(44)에 다운로드함으로써 프로토타이핑 엔진(44)내의 RFPD(12)상에 회로를 구현한다. 서버용 컴퓨터(20)은 중계모듈(30)을 통하여 회로검증용 입력신호들을 프로토타이핑 엔진(44)에 인가한 다음, 중계모듈(30)을 경유한 프로토타이핑 엔진(44)로부터의 신호응답들을 분석하여 설계자가 설계한 회로의 올바름을 검증하게 된다. 중계모듈(30)은 서버용 컴퓨터(20)로부터의 프로그래밍 패턴을 프로토타이핑 엔진(44)쪽으로 전송함과 회로검증용 입력신호들을 프로토타이핑 엔진(44)에 인가함과 아울러 프로토타이핑 엔진(44)로부터 귀환되는 신호응답들과 탐침신호 값들을 서버용 컴퓨터(20)쪽으로 전송한다. 이 탐침신호 값들을 중계하기 위하여 중계모듈(30)은 프로토타이핑 엔진(44)내의 RFPD(12)들에 각각 접속된 1이상의 탐침선들(도 1에 보이는 예에서는 PL1 부터 PL6 까지)를 구비한다.First, the structure of a general rapid prototyping device will be described. Reusable Field Programmable Devices (hereinafter referred to as "RFPDs") are used as a core device of the rapid prototyping device. The RFPD is generally referred to as an interconnection resource (hereinafter referred to as "IR") that connects a basic cell ("BC") 13 and a BC 13 that can be programmed as shown in FIG. 2. ) Since the BC 13 can constitute only a limited simple digital circuit, a general complex digital circuit is implemented by connecting several BCs 13 through an IR. These RFPDs include Field Programmable Gate Arrays (FPGAs) and Complex Programmable Logic Devices (CPLDs). Due to recent advances in semiconductor technology, RFPD has become highly integrated, resulting in highly complex digital circuits. As a result, it is possible to prototype using only one RFPD or very few RFPDs. This makes prototyping economical, but when prototyping, many of the many signal lines on the digital circuit that are subject to design verification are present inside the RFPD, making the probes more difficult to probe. It caused serious problems. This will become a bigger problem in the future when more integrated RFPD is used. The configuration of a rapid prototyping device that completely solves this problem is as follows. This rapid prototyping device comprises a prototyping engine 44 having one or more RFPDs 12 as shown in FIG. 1, a rapid prototyping system operating software and prototyping engine 44 embedded in the server computer 20 and the server computer. It consists of a relay module 30 for relaying a signal between the (). The digital circuit implementation process using RFPD requires the following steps: mapping, placement and connection, programming pattern generation, and program pattern download. RFPD is a programmable device that can be implemented through programming, and at the same time, such a programming can be repeated many times and other circuits can be implemented by programming using different programming patterns. In the rapid prototyping device, the RFPDs 12 are mapped, arranged and wired, programming patterns are generated, and programming patterns are downloaded according to programming patterns from the server computer 20 to configure circuits designated by the server computer 20 and to configure the circuits. Will perform the operation of. The server computer 20 generates a programming pattern for the circuit designed by the designer and downloads the generated programming pattern to the prototyping engine 44 via the relay module 30 to generate the RFPD ( Implement the circuit on 12). The server computer 20 applies the circuit verification input signals to the prototyping engine 44 through the relay module 30 and then analyzes the signal responses from the prototyping engine 44 via the relay module 30. The validity of the circuit designed by the designer is verified. The relay module 30 transmits the programming pattern from the server computer 20 to the prototyping engine 44 and applies the circuit verification input signals to the prototyping engine 44 and from the prototyping engine 44. The returned signal responses and probe signal values are sent to the server computer 20. In order to relay these probe signal values, the relay module 30 has one or more probes (PL1 to PL6 in the example shown in FIG. 1) connected to the RFPDs 12 in the prototyping engine 44, respectively.
이렇게 구성되어진 신속 프로토타이핑 장치에서 탐침선은 프로토타이핑 엔진 상에 구현된 검증 대상 디지탈 회로에 존재하는 모든 신호선들중 원하는 신호선들을 필요시에 입출력 탐침하는 목적에 사용한다.In the rapid prototyping device configured as described above, the probe line is used for the purpose of probing an input / output probe of desired signal lines among all signal lines existing in the digital circuit to be verified on the prototyping engine.
기존의 탐침 방법들에서는 출력 탐침을 위한 방법들만이 있는데, 이 경우에 RFPD의 내부에 은닉된 신호선상의 신호를 검출·검증하기 위하여 서버용 컴퓨터는 프로토타이핑 엔진(44)내의 모든 RFPD(12)에 구현된 회로를 전체적으로 다시 구현하여야 했었다. 기존의 방법들은 이때에 RFPD의 내부에 은닉된 신호선상의 신호를 검출·검증하기 위하여 다음과 같은 과정이 필요하였다. 즉 사용자는 출력 탐침을 원하는 해당 신호선을 가지고 있는 해당 RFPD에 출력 탐침을 원하는 신호선 수 만큼의 출력핀을 반드시 확보하여 각각의 출력단으로 해당 신호선을 하나씩 새로이 연결시킬 수 있는가를 조사하여 이것이 가능하면 이와 같은 출력 탐침 대상 신호선 각각에 별도의 출력핀 연결을 수동(manual) 방식에 의하여 수행하고 사용자는 이를 반영하는 매핑, 배치및배선, 프로그래밍의 과정을 처음부터 반복하여 해당 RFPD 전체를 위한 새로운 프로그래밍 패턴을 마련하고, 그 새로운 프로그래밍 패턴으로 해당 RFPD 전체를 다시 프로그래밍하여야 하였다.In the existing probe methods, there are only methods for output probes. In this case, a server computer is implemented in all RFPDs 12 in the prototyping engine 44 to detect and verify a signal on a signal line hidden inside the RFPD. The circuit had to be reimplemented entirely. The existing methods required the following process to detect and verify the signal on the signal line hidden inside the RFPD. In other words, the user should secure as many output pins as the number of signal lines for the output probe to the corresponding RFPD which has the corresponding signal line for the output probe, and investigate whether it is possible to connect the corresponding signal lines one by one to each output stage. A separate output pin is connected to each of the probe signal lines by a manual method, and the user repeats the mapping, layout, wiring, and programming processes from the beginning to prepare a new programming pattern for the entire RFPD. In addition, the new programming pattern required reprogramming of the entire RFPD.
즉, 검증대상 회로내의 존재하는 어떠한 신호선들도 탐침이 필요한 신호선 수 만큼의 RFPD 입출력핀을 확보하지 않고도 이를 구현한 프로토타이핑 엔진상에서 자동화된 방법을 통하여 입출력 탐침할 수 있는 본 방법과는 달리, 기존의 모든 방법들은 입력 탐침은 가능하지 않고 출력 탐침만이 가능하고, 특정 신호선에 대한 출력 탐침이 전혀 불가능하게 되는 경우가 생길 수 있을 뿐만 아니라, 출력 탐침이 가능한 경우에도 이 출력 탐침이 필요한 신호선 수 만큼의 출력핀을 반드시 확보하여야만 출력 탐침을 할 수 있었다.In other words, unlike the present method, any signal lines existing in the circuit to be verified can be probed through an automated method on a prototyping engine that implements the same without having to secure as many RFPD input / output pins as the number of signal lines required for the probe. Not all of the methods of input are possible, only the output probe is possible, and the output probe for a specific signal line may not be possible at all. The output probe of must be secured before the output probe could be performed.
따라서, 본 발명의 목적은 신속한 디지탈 회로의 검증을 위하여 회로상의 모든 신호선들, 또는 HDL 코드에 존재하는 모든 시그널들을 대상으로 빠르게 입출력 탐침할 수 있는 신속 프로토타이핑 장치와 그것의 입출력 탐침방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a rapid prototyping device and a method for inputting / outputting a probe of all signal lines on a circuit or all signals present in an HDL code for rapid verification of a digital circuit. have.
도1 은 본 발명의 신속 프로토타이핑 장치를 개략적으로 도시하는 도면.1 is a schematic illustration of a rapid prototyping device of the present invention;
도2 는 비동기 회로 예를 도시하는 도면으로서, 4-비트 비동기 이진카운터의 도면이다.2 is a diagram illustrating an asynchronous circuit example, and is a diagram of a 4-bit asynchronous binary counter.
도3 (a) 및 (b) 는 1개의 데이터입력(D)을 갖는 단일입력 D형 플립플롭의 심벌과 함수적 기능을 개략적으로 도시하는 도면.3 (a) and (b) schematically show symbols and functional functions of a single input D flip-flop having one data input D;
도3 (c) 및 (d) 는 1개의 데이터입력(D)과 비동기 셋/리셋(AR/AS) 입력을 갖는 단일입력 D형 플립플롭의 심벌과 함수적 기능을 개략적으로 도시하는 도면.3 (c) and (d) schematically show the symbols and functional functions of a single input D flip-flop having one data input (D) and an asynchronous set / reset (AR / AS) input;
도3 (e) 및 (f) 는 2개의 데이터입력(D1, D2)을 갖는 이중입력 D형 플립플롭의 심벌과 함수적 기능을 개략적으로 도시하는 도면.3 (e) and (f) schematically show the symbol and functional functions of a dual input D flip-flop having two data inputs D1 and D2;
도4 는 본 발명에 관한 IOP-탐침용 부가회로를 나타내는 병렬적 로드와 시리얼 로드가 입출력 모드에 따라 가능한 쉬프트레지스터 어레이 구조의 일 예를 개략적으로 도시하는 도면.4 is a diagram schematically showing an example of a shift register array structure in which a parallel load and a serial load showing an IOP probe additional circuit according to the present invention are possible according to an input / output mode.
도5 는 도4 의 병렬적 로드와 시리얼 로드가 입출력 모드에 따라 가능한 쉬프트레지스터 어레이 구조의 또 다른 예를 개략적으로 도시하는 도면.FIG. 5 is a schematic illustration of another example of a shift register array structure in which the parallel and serial loads of FIG. 4 are enabled in accordance with an input / output mode. FIG.
도6 은 도 3 (a) 의 이중입력 D형 플립플롭의 구현 예를 개략적으로 도시하는 도면.FIG. 6 is a schematic illustration of an implementation example of the dual input D-type flip-flop of FIG. 3 (a); FIG.
도7(a) 는 도2 의 설계검증 대상회로에 IOP-탐침용 부가회로를 부가한 상황을 개략적으로 도시하는 도면.Fig. 7 (a) is a diagram schematically showing a situation in which an additional circuit for IOP-probe is added to the design verification target circuit in Fig. 2;
도7(b) 는 도2 의 설계검증 대상회로에 IOP-탐침용 부가회로를 부가한 상황에서 사용된 제어회로를 개략적으로 도시하고 진리표로 정의한 도면.Fig. 7 (b) schematically shows the control circuit used in the situation where the IOP-probe additional circuit is added to the design verification subject circuit of Fig. 2 and is defined by a truth table.
도8(a) 는 설계검증 대상회로의 임의의 플립플롭이 비동기적 셋과 비동기적 리셋을 가지고 있는 상황을 나타내는 개략적인 도면.Fig. 8 (a) is a schematic diagram showing a situation in which any flip-flop of the design verification target circuit has an asynchronous set and an asynchronous reset.
도8(b) 는 도8(a) 의 플립플롭이 확장된 설계검증 대상회로에서 변환된 상황을 나타내는 개략적인 도면.Fig. 8B is a schematic diagram showing a situation in which the flip-flop of Fig. 8A is converted in the extended design verification target circuit.
도8(c) 는 도8(b)에서 사용된 제어회로의 진리표를 정의한 도면.Fig. 8 (c) defines the truth table of the control circuit used in Fig. 8 (b).
도9 는 도1 을 이용한 설계검증의 일 실시 예에 따른 설계검증 방법을 설명하는 흐름도.9 is a flowchart illustrating a design verification method according to an embodiment of design verification using FIG.
도10 은 도1 을 이용한 설계검증의 또다른 일 실시 예에 따른 설계검증 방법을 설명하는 흐름도.FIG. 10 is a flow chart illustrating a design verification method according to another embodiment of design verification using FIG. 1. FIG.
도11 은 본 발명의 타이밍 및 함수적 혼합 검증 장치를 개략적으로 도시하는 도면.Figure 11 is a schematic illustration of a timing and functional mixing verification apparatus of the present invention.
도12 는 도11 을 이용한 설계검증의 일 실시 예에 따른 설계검증 방법을 설명하는 흐름도.12 is a flowchart illustrating a design verification method according to an embodiment of design verification using FIG.
도13 은 도11 을 이용한 설계검증의 또다른 일 실시 예에 따른 설계검증 방법을 설명하는 흐름도.FIG. 13 is a flowchart illustrating a design verification method according to another embodiment of design verification using FIG. 11. FIG.
<도면의 주요부분에 대한 부호의 설명><Description of the code | symbol about the principal part of drawing>
12 : RFPD 13 : BC12: RFPD 13: BC
20 : 서버용 컴퓨터 24 : 탐침선20: server computer 24: probe
26 : 시스템 인터페이스 포트 30 : 중계모듈26: system interface port 30: relay module
32 : 프로토타이핑 시스템소프트웨어 34 : 시뮬레이터32: Prototyping System Software 34: Simulator
44 : 프로토타이핑 엔진 74 : 멀티플렉서44: Prototyping Engine 74: Multiplexer
75 : 이중입력 D형 플립플롭 76 : 단일입력 D형 플립플롭75: dual input D flip flop 76: single input D flip flop
77 : 비동기 셋과 비동기 리셋이 있는 이중입력 플립플롭77: dual input flip-flop with asynchronous set and asynchronous reset
78 : 비동기 셋과 비동기 리셋이 있는 단일입력 플립플롭78: Single Input Flip-Flop with Asynchronous Set and Asynchronous Reset
79 : 트라이스테이트 버퍼(Tri-state buffer)79: Tri-state buffer
상기 목적을 달성하기 위하여, 본 발명에 따른 신속 프로토타이핑 장치는, 프로토타이핑 엔진과, 서버용 컴퓨터와, 중계모듈을 구비하는 프로토타이핑 장치로서, 프로토타이핑 엔진은 1이상의 RFPD를 포함하며, 서버용 컴퓨터는 프로토타이핑 엔진이 2이상의 RFPD를 포함하고 있으면 프로토타이핑 시스템소프트웨어를 수행시켜 설계검증 대상회로를 분할하고 설계검증 대상회로의 분할된 부분회로들을 상기 엔진 내의 각 RFPD들에 할당하고, 설계검증 대상회로를 위한 프로그래밍패턴을 생성하도록 하며, 중계모듈은 상기 서버용 컴퓨터와 상기 프로토타이핑 엔진 사이의 인터페이스를 담당하는 프로토타이핑 장치를 제공한다.In order to achieve the above object, the rapid prototyping apparatus according to the present invention is a prototyping apparatus having a prototyping engine, a server computer, and a relay module, wherein the prototyping engine includes at least one RFPD, and the server computer If the prototyping engine contains two or more RFPDs, the prototyping system software is executed to divide the design verification circuit, assign the divided partial circuits of the design verification circuit to each RFPD in the engine, and designate the design verification circuit. To generate a programming pattern for the relay module, the relay module provides a prototyping device that is responsible for the interface between the server computer and the prototyping engine.
이때, 1이상의 RFPD들을 갖는 프로토타이핑 엔진 모듈은, RFPD 의 입출력 단자에 접속된 출력탐침선과 입력탐침선을 가지며, IOP-탐침용 부가회로 (아래에서 설명함) 를 더 포함한다. 더욱이, 프로토타이핑 시스템소프트웨어가 IOP-탐침용 부가회로 생성을 위한 탐침용 부가회로 합성기를 포함한다.At this time, the prototyping engine module having one or more RFPDs has an output probe line and an input probe line connected to an input / output terminal of the RFPD, and further includes an IOP probe additional circuit (described below). Moreover, the prototyping system software includes a probe additive circuit synthesizer for generating an IOP probe additional circuit.
주로, 상기 신속 프로토타이핑 장치가 ASIC 벤더 라이브러리를 더 포함하며, 상기 IOP-탐침용 부가회로는 상기 서버용 컴퓨터에 의하여 프로토타이핑 시스템소프트웨어를 수행시킴으로서 상기 각 RFPD들 내에 설계검증 대상회로와 함께 구현되도록 한다. IOP-탐침용 부가회로는 다음과 같은 정의에 맞는 모든 회로를 칭한다. 즉, IOP-탐침용 부가회로를 설계검증 대상회로에 부가함으로서 완성되는 회로(이를 확장된 설계검증 대상회로라 칭함)가 출력탐침모드에서는 부가회로를 부가함으로서 형성되는 회로부분이 쉬프트레지스터 구조로 되어 탐침클럭에 동기화된 쉬프팅 동작을 이 쉬프팅 동작 직전에 쉬프트레지스터가 가지는 논리값이 출력탐침 대상이 되는 신호선들의 논리값을 가지고서 하며 동시에 쉬프팅 동작이 완료한 후에 설계검증 대상회로내의 모든 플립플롭들의 논리값들이 쉬프팅 동작 직전의 논리값들과 동일하도록 유지되며, 입력탐침모드에서는 부가회로를 부가함으로서 형성되는 회로 부분은 쉬프트레지스터 구조로 되어 쉬프팅 동작을 하며 이와 같은 쉬프팅 동작을 이용하여 입력탐침 대상이 되는 플립플롭들에 대한 동기적(synchronous) 혹은 비동기적(asynchronous) 셋(set)과 리셋(reset) 동작으로 입력탐침 대상이 되는 플립플롭들의 논리값을 입력탐침값으로 되게하며 동시에 쉬프팅 동작이 완료한 후에 입력탐침 대상에 포함되지 않은 설계검증 대상회로내의 나머지 플립플롭들의 논리값들이 쉬프팅 동작 직전의 논리값들과 동일하도록 유지되며, 정상모드에서는 IOP-탐침용 부가회로가 부가되더라도 설계검증 대상회로의 함수적 논리 성질(functional logical behavior)이 변형되지 않는 회로를 IOP-탐침용 부가회로라 한다. 또는 설계검증 대상이 HDL 코드로 구술된 경우에는 IOP-탐침용 부가회로의 행위(behavior)를 표현하는 HDL 부가코드가 설계검증 대상 HDL 코드에 부가됨으로서 완성되는 HDL 코드가 출력탐침모드에서는 부가 HDL 코드를 부가함으로서 형성되는 HDL 부분이 쉬프트레지스터 행위를 표현하고 있어 탐침클럭에 동기화된 쉬프팅 동작을 이 쉬프팅 동작 직전에 쉬프트레지스터의 행위를 표현하는 HDL 코드에서 레지스터 HDL 코드의 신호선이 가지는 신호값들이 출력탐침 대상이 되는 신호값들을 가지고서 하며 동시에 쉬프팅 동작이 완료한 후에 설계검증 대상 HDL 코드내의 플립플롭들 행위를 표현하는 HDL 코드의 시그널들의 신호값들을 쉬프팅 동작 직전의 신호값들과 동일하도록 유지되며, 입력탐침모드에서는 부가 HDL 코드를 부가함으로서 형성되는 HDL 코드 부분은 쉬프트레지스터 구조로 되어 탐침클럭에 동기화된 쉬프팅 동작을 하며 이와 같은 쉬프팅 동작을 이용하여 입력탐침 대상이 되는 HDL 코드의 플립플롭들 행위를 표현하는 HDL 코드의 시그널들에 대한 동기적 혹은 비동기적 셋(set)과 리셋(reset) 동작으로 입력탐침 대상이 되는 시그널들의 논리값을 입력탐침값으로 되게하며 동시에 쉬프팅 동작이 완료된 후에 입력탐침 대상에 포함되지 않은 설계검증 대상 HDL 코드의 플립플롭들 행위를 표현하는 나머지 HDL 시그널들의 신호값들이 쉬프팅 동작 직전의 신호값들과 동일하도록 유지하면서 수행하고, 정상모드에서는 IOP-탐침용 부가회로가 부가되더라도 설계검증 HDL 코드의 행위를 변형하지 않는 HDL 코드도 IOP-탐침용 부가회로라 한다.Primarily, the rapid prototyping device further comprises an ASIC vendor library, wherein the IOP-probe supplementary circuitry is implemented with the design verification circuitry in each of the RFPDs by executing prototyping system software by the server computer. . Additional circuits for IOP probes refer to any circuit that meets the following definition: That is, the circuit part formed by adding an additional circuit in the output probe mode is a circuit completed by adding the IOP-probe supplementary circuit to the design verification target circuit. In the shifting operation synchronized with the probe clock, the logic value of the shift register immediately before the shifting operation has the logic value of the signal lines to be output probe, and at the same time, the logic value of all flip-flops in the circuit under design verification after the shifting operation is completed. Are maintained to be the same as the logic values immediately before the shifting operation, and in the input probe mode, the circuit portion formed by adding an additional circuit has a shift register structure to perform the shifting operation. Synchronous or asynchronous to flops nchronous) The set and reset operations cause the logic values of the flip-flops to be input probes to be input probe values, and at the same time, the rest of the design verification target circuits not included in the input probe targets after the shifting operation is completed. The logic values of the flip-flops remain the same as the logic values immediately before the shifting operation, and in the normal mode, the functional logical behavior of the circuit to be verified is not modified even if the additional circuit for the IOP probe is added. Is called an additional circuit for IOP probe. Alternatively, when the design verification target is dictated by the HDL code, the HDL additional code representing the behavior of the IOP probe additional circuit is added to the design verification target HDL code so that the completed HDL code is the additional HDL code in the output probe mode. The HDL part formed by adding the represents the shift register behavior, so that the shifting operation synchronized with the probe clock is performed. The signal values of the register HDL code signal lines in the HDL code expressing the shift register behavior immediately before the shifting operation are output probes. The signal values of the signals of the HDL code expressing the flip-flops behavior in the design-verification target HDL code having the target signal values and at the same time after the shifting operation is completed are maintained to be the same as the signal values immediately before the shifting operation. In probe mode, the part of the HDL code formed by adding the additional HDL code It has a presistor structure and performs a shifting operation synchronized with the probe clock. By using this shifting operation, a synchronous or asynchronous set of signals of the HDL code representing the flip-flops of the HDL code that is the input probe target is used. The set and reset operations make the logic values of the signals that are input probe targets the input probe values, and at the same time express the flip-flops of the HDL code that is not included in the input probe targets after the shifting operation is completed. While the signal values of the remaining HDL signals are kept the same as the signal values immediately before the shifting operation, in the normal mode, even if the IOP probe additional circuit is added, the HDL code that does not modify the behavior of the design verification HDL code is also IOP-. Also called probe additional circuit.
이와 같은 IOP-탐침용 부가회로의 기능을 구현하는 한가지 방법의 예로는 이와 같은 IOP-탐침용 부가회로가 설계검증 대상회로가 구현된 탐침대상 RFPD 내에서 탐침대상 신호선들과 이중입력 플립플롭들에 의하여 논리적으로 1 이상의 길이 (길이란 쉬프트레지스터 어레이 구조 상의 플립플롭의 개수) 가 같은 병렬적 로드(parallel-load)와 시리얼 로드(serial-load)가 모드 변환에 따라 모두 가능한 쉬프트레지스터 어레이 구조가 되게 하거나 혹은 길이가 제일 긴 병렬적 로드와 시리얼 로드가 모드 변환에 따라 모두 가능한 쉬프트레지스터 어레이 구조의 길이가 다른 나머지 병렬적 로드와 시리얼 로드가 모드 변환에 따라 모두 가능한 쉬프트레지스터 어레이 구조들의 양의 정수배가 되게 하여서, 출력탐침모드에서는 상기 이중입력 플립플롭들 각각의 한 입력을 출력탐침대상 신호선들에 연결하여 출력탐침대상 신호선들 상의 논리값 각각을 상기 이중입력 플립플롭 각각으로 병렬적 로딩이 가능하게 한 다음에 1 이상의 쉬프트레지스터 어레이 구조 각각에 존재하는 한 플립플롭의 출력이 이 RFPD의 1 이상의 출력탐침선의 역할을 하는 입출력핀(I/O pin) 하나에 논리적으로 연결되게 하고 쉬프트레지스터의 탐침클럭과 동기화된 쉬프팅 동작에 따라서 쉬프트레지스터의 모든 플립플롭들의 논리값들이 상기 출력탐침선의 역할을 하는 입출력핀 상에 순차적으로 나타나게 하며, 입력탐침모드에서는 1 이상의 병렬적 로드와 시리얼 로드가 모드 변환에 따라 모두 가능한 쉬프트레지스터 어레이 구조 각각에 존재하는 한 플립플롭의 입력이 이 RFPD의 1 이상의 입력탐침선의 역할을 하는 입출력핀 하나에 논리적으로 연결되게 하여 탐침클럭과 동기화된 쉬프팅 동작에 의하여 상기 입력탐침선의 역할을 하는 입출력핀 상을 통하여 외부로부터 순차적으로 공급되는 입력탐침값을 쉬프트레지스터에 시리얼 방식으로 로딩가능하게 하며 상기 1 이상의 병렬적 로드가 가능한 쉬프트레지스터 어레이를 구성하는 플립플롭들 각각의 출력이 입력탐침 대상이 되는 해당 플립플롭의 클럭입력에 시스템클럭(시스템클럭이란 설계검증 대상회로에 전역적으로 사용되는 단일 사용자클럭이거나, 설계검증 대상회로에 사용되는 1 이상의 모든 사용자클럭들을 생성하는데 사용되는 마스터 클럭을 말함)이 직접 연결되어 있는 경우에는 해당 입력탐침 대상 신호선들 각각을 구동(drive)하는 각각의 해당 플립플롭을 대체한 각각의 이중입력 플립플롭의 한 입력에 연결되게 하거나, 또는 탐침대상이 되는 플립플롭의 클럭입력에 시스템클럭이 직접 연결되어 있지 않는 경우에는 입력탐침 대상 신호선들 각각을 구동하는 각각의 플립플롭을 비동기 셋(asynchronous set)과 비동기 리셋(asynchronous reset)이 있는 플립플롭으로 대체하고 이 플립플롭의 비동기 셋 입력과 비동기 리셋 입력을 쉬프트레지스터 어레이의 플립플롭들에서 이 탐침대상이 되는 플립플롭을 위한 입력탐침값을 가지는 플립플롭의 출력선과 동작모드제어선과 유한상태기(Finite State Machine)의 출력선으로써 제어하여 상기 입력탐침 대상이 되는 플립플롭의 출력을 0 또는 1로 설정할 수 있게 함으로 구현할 수 있다. 이를 위해서는 상기 언급된 유한상태기(Finite State Machine)가 추가적으로 필요한데, 여기서 사용되는 유한상태기의 역할은 입력탐침 대상이 되는 플립플롭의 비동기 셋과 비동기 리셋이 필요한 시점에만 쉬프트레지스터 어레이로부터 공급되는 신호값에 의하여 비동기적 셋과 비동기적 리셋이 일어나도록 셋/리셋 활성화(set/reset enable) 신호를 생성하여 공급하는 것이다. 이를 위해서는 쉬프트레지스터 어레이의 플립플롭들에서 이 탐침대상이 되는 플립플롭을 위한 입력탐침값을 가지는 플립플롭의 출력선, 유한상태기로부터의 셋/리셋 활성화 신호선, 그리고 동작모드제어(/탐침모드) 신호선들을 이용하여 입력탐침 대상이 되는 플립플롭의 비동기 셋과 비동기 리셋을 의도대로 제어할 수 있어야 하는데, 이는 간단한 조합적 함수를 정의하고 구현할 수 있다. 이 유한상태기의 함수적 행위(functional behavior) 및 역할은 추후 예제를 가지고서 구체적으로 설명하기로 한다. 또한 설계검증 대상회로에서 사용한 플립플롭들의 일부 혹은 전부가 비동기적 셋과 비동기적 리셋을 이미 가지고 있으며 이들 플립플롭들의 클럭 입력에 시스템 클럭이 직접 연결되어 있지 않는 경우에는 입력탐침 대상이 되는 해당 플립플롭들을 그대로 사용하면서 비동기 셋과 비동기 리셋 입력들을 구동(drive)하는 제어회로부를 포함하여 추가되는 IOP-탐침용 부가회로로써 상기 이미 언급한대로 회로 변환을 시도하면서 원래의 설계검증 대상회로의 함수적 논리성질을 정상모드에서 변형하지 않도록만 될 수 있도록 고려하면 되는데 이는 어려운 일이 아니며, 이 또한 추후 예제를 가지고서 구체적으로 설명하기로 한다.An example of one way of implementing the function of such an IOP-probe add-on circuit is that the IOP-probe add-on circuit can be applied to signal-beds and double-input flip-flops in the probe bed in the RFPD on which the design verification target circuit is implemented. By doing so, parallel-load and serial-loads of the same length or more (the length of the number of flip-flops on the shift register array structure) can be a shift register array structure in which both modes can be changed according to the mode conversion. Or the length of the shift register array structure where the longest parallel load and the serial load can both be changed by mode conversion, and the remaining integer multiples of the shift register array structures where the other parallel load and the serial load can be both mode changed are In the output probe mode, one input of each of the dual input flip-flops Is connected to signal lines on the output probe to enable parallel loading of each of the logic values on the signal on the output probe into each of the dual input flip-flops, and then output one flip-flop present in each of the one or more shift register array structures. The logic values of all the flip-flops of the shift register are logically connected to one of the input / output pins (I / O pins) serving as one or more output probe lines of the RFPD, and shifted in synchronization with the probe clock of the shift register. The input of the flip-flop is provided on the input / output pins, which act as output probes, in order.In the input probe mode, as long as one or more parallel loads and serial loads are present in each of the shift register array structures that can be changed according to the mode conversion. Logically on one of the input and output pins The input probe value sequentially supplied from the outside through the input / output pin serving as the input probe line by the shifting operation synchronized with the probe clock to be loaded into the shift register in a serial manner, and the one or more parallel loads. The output of each flip-flop constituting a shift register array that can be used is a system clock (the system clock is a single-user clock that is used globally in the circuit to be verified for design, or the design verification is applied to the clock input of the corresponding flip-flop that is the input probe target. Where the master clock used to generate one or more user clocks used in the target circuit is directly connected, each of which replaces each corresponding flip-flop that drives each of the corresponding input probe target signal lines. To one input of a dual input flip-flop, or If the system clock is not directly connected to the clock input of the flip-flop on the probe, each flip-flop that drives each of the input probe target signal lines is flipped with an asynchronous set and an asynchronous reset. Replace the flop and replace the asynchronous set input and the asynchronous reset input of this flip-flop with the output line of the flip-flop having the input probe value for the flip-flop on this probe in the flip-flops of the shift register array, the operation mode control line and the finite state machine. It can be implemented by controlling the output line of the (Finite State Machine) to set the output of the flip-flop to be the input probe object to 0 or 1. For this purpose, the above-mentioned finite state machine is additionally required. The role of the finite state machine used here is that the signal supplied from the shift register array is required only when the asynchronous set and the asynchronous reset of the flip-flop to be input probe are required. It generates and supplies a set / reset enable signal so that an asynchronous set and an asynchronous reset occur by value. For this purpose, the output line of the flip-flop having the input probe value for the flip-flop which is on the probe in the flip-flops of the shift register array, the set / reset enable signal line from the finite state machine, and the operation mode control ( The probe lines should be used to control the asynchronous set and asynchronous reset of the flip-flops that are the input probe targets, which can define and implement a simple combinatorial function. The functional behavior and role of this finite state machine will be explained in detail later with examples. In addition, if some or all of the flip-flops used in the design verification target circuit already have an asynchronous set and an asynchronous reset and the system clock is not directly connected to the clock inputs of these flip-flops, the corresponding flip-flop as an input probe target. Functional logic of the original design verification circuit while attempting to convert the circuit as mentioned above as an additional IOP probe additional circuit including a control circuit for driving asynchronous set and asynchronous reset inputs while using the It can be considered that it can only be modified in normal mode, which is not difficult, and this will be described later with an example.
본 발명에서 출력탐침선과 입력탐침선은, 별개의 독립된 단방향 탐침선으로 존재할 수도, 출력탐침선과 입력탐침선이 합쳐진 양방향 탐침선으로 존재할 수도 있으며, 프로토타이핑 엔진내의 RFPD는, 현장프로그래밍가능게이트어레이(FPGA)이거나 복합프로그래밍가능로직소자(CPLD)일 수 있다.In the present invention, the output probe line and the input probe line may exist as separate independent unidirectional probe lines, or the output probe line and the input probe line may exist as a bidirectional probe line in which the output probe line and the input probe line are combined, and the RFPD in the prototyping engine may include a field programmable gate array ( FPGA) or a composite programmable logic device (CPLD).
상기 1 이상의 RFPD들을 갖는 프로토타이핑 엔진 모듈은, 1 이상의 RFPD 의 입출력단자에 접속된 1 이상의 출력탐침선과 1 이상의 입력탐침선, 및 IOP-탐침용 부가회로를 더 포함하며, RFPD 내부로 탐침대상 신호선들이 할당되어졌으면 탐침대상 신호선들 각각이 입력탐침신호선인가 출력탐침신호선인가를 판단하는 단계를 포함하며, 상기 입력 단계는 설계검증 대상회로에 존재하는 탐침대상 신호선들, 또는 설계검증 HDL 코드에 존재하는 탐침대상 시그널들을 서버용 컴퓨터로 입력하는 단계를 포함하며, 상기 프로그래밍패턴 단계는, 출력탐침대상 신호선들에서의 특정 시간대에서의 신호값이 출력탐침선에 일정 시간 동안에만 나타나도록 하며 입력탐침대상 신호선들이 입력탐침선에 특정 시간대에 가해지는 신호값을 가질 수 있도록 이 RFPD에 할당된 검증대상 회로에 탐침부가회로를 부가하여 확장된 설계검증 대상회로를 생성하는 단계를 더 포함하며, 상기 확장된 설계검증 대상회로를 해당 RFPD에 구현시키도록 구성한다.The prototyping engine module having one or more RFPDs further includes one or more output probes and one or more input probes and an IOP probe additional circuit connected to the input and output terminals of the one or more RFPDs. Is determined if each of the signal line on the probe is an input probe signal line or an output probe signal line, wherein the input step is present on the probe signal lines present in the design verification target circuit, or the design verification HDL code And inputting the signals on the coveter to the server computer, wherein the programming pattern step is such that the signal value at a specific time in the signal lines on the output coveter appears only on the output probe for a certain period of time. Tests assigned to this RFPD to have input probes with signal values applied at specific times Further comprising the step of adding the probe to the adding circuit the circuit to generate an extended target circuit design verification, and constitutes the extended design verification to the circuit implemented on the RFPD.
또한, 출력탐침대상 신호선에 대해서는 출력탐침대상 신호선들 상에서의 특정 시간대에서의 신호값들을 IOP-탐침용 부가회로를 이용하여 탐침대상 신호선을 내부에 가지고 있는 RFPD의 출력탐침선에 나타나게 하고 출력탐침선에 나타난 값을 시스템인터페이스 포트와 중계모듈을 통하여 서버용 컴퓨터로 전송하여 전송된 값을 분석하며, 입력탐침대상 신호선에 대해서는 서버용 컴퓨터에서 입력탐침용 데이터를 생성한 후, 이를 중계모듈과 시스템인터페이스 포트를 통하여 해당 RFPD의 입력탐침선에 탐침클럭과만 동기화하면서 인가하거나, 혹은 탐침클럭과 동기화하는 것과 더불어 탐침모드제어신호선을 통하여 탐침모드를 입력탐침모드와 출력탐침모드간으로 적절히 변화시켜가면서 인가하여 입력탐침대상 신호선의 신호값이 입력탐침선을 통하여 전송되어진 입력탐침값을 가지게 하는 단계를 포함한다.In addition, for signal lines on the output probe, signal values at specific time points on the signal lines on the output probe are displayed on the output probe of the RFPD having the inside of the probe on the probe using the IOP probe additional circuit. The value shown in the figure is transmitted to the server computer through the system interface port and the relay module, and the transmitted value is analyzed.For the signal line on the input probe, the data for the input probe is generated from the server computer, and then the relay module and the system interface port are Apply to the input probe line of the corresponding RFPD by synchronizing with the probe clock only or by synchronizing with the probe clock and changing the probe mode between the input probe mode and the output probe mode through the probe mode control signal line. The signal value of the signal line on the probe passes through the input probe And having the input probe value transmitted.
본 발명에 따른 신속 프로토타이핑 방법은, 서버용 컴퓨터로 설계검증 대상회로와 ASIC 벤더 라이브러리 명칭을 입력하는 단계와, 설계검증 대상회로에 존재하는 탐침대상 신호선들을 서버용 컴퓨터로 입력하는 단계와, 입력된 회로를 프로토타이핑 엔진 상의 RFPD가 2 이상의 경우에는 2 이상의 RFPD에 분할·할당하고 프로토타이핑 엔진이 1개의 RFPD로 구성된 경우에는 설계검증 대상회로 전체를 RFPD에 할당하고, 프로토타이핑 엔진 상의 특정 RFPD에 할당된 회로에 대해서 이 RFPD 내부로 탐침대상 신호선들이 할당되어졌으면 이 탐침대상 신호선들 각각이 입력탐침신호선인가 출력탐침신호선인가를 판단하는 단계와, 출력탐침대상 신호선들에서의 특정 시간대에서의 신호값이 출력탐침선에 일정 시간 동안에만 나타나도록 하며 입력탐침대상 신호선들이 입력탐침선에 특정 시간대에 가해지는 신호값을 가지도록 이 RFPD에 할당된 검증대상 회로에 IOP-탐침용 부가회로를 추가적으로 첨가하여 확장된 설계검증 대상회로를 생성하는 단계와, 이 확장된 설계검증 대상회로를 해당 RFPD에 구현시키기 위한 기술매핑, 배치 및 배선, 그리고 프로그래밍패턴 생성 단계와, 생성되어진 프로그래밍패턴들을 서버용 컴퓨터로부터 중계모듈과 시스템인터페이스 포트를 통하여 프로토타이핑 엔진내의 각 RFPD에 다운로딩하여 설계검증 대상회로와 함수적으로 등가인 회로가 프로토타이핑 엔진 상에서 구현되게 하는 단계와, 프로토타이핑 엔진 상에 구현된 설계검증 대상회로와 등가인 회로의 입력부에 입력파형을 인가하고 출력부에서 출력파형을 관찰하며, 필요시 출력탐침신호선에 대해서는 출력탐침대상 신호선들 상에서의 특정 시간대에서의 신호값들을 출력탐침대상 신호선이 RFPD내에 존재하는 경우에 IOP-탐침용 부가회로를 이용하여 출력탐침대상 신호선의 신호값이 해당 RFPD의 출력탐침선에 나타나게 하는 단계와, 이렇게 나타난 출력탐침선의 값을 시스템인터페이스 포트와 중계모듈을 통하여 서버용 컴퓨터로 전송하여 전송된 값을 분석하는 단계를 포함하며 입력탐침신호선에 대해서는 IOP-탐침용 부가회로를 이용하여 입력탐침대상 신호선의 신호값이 서버용 컴퓨터로부터 중계모듈과 시스템인터페이스 포트를 통하여 입력탐침선으로 전송된 입력탐침값을 가지게 하는 단계를 포함한다.The rapid prototyping method according to the present invention comprises the steps of: inputting a design verification target circuit and an ASIC vendor library name into a server computer, inputting the signal-phase signal lines existing in the design verification target circuit into a server computer, and inputting the circuit. If two or more RFPDs on the prototyping engine are allocated and allocated to two or more RFPDs, and if the prototyping engine is composed of one RFPD, the entire design verification circuit is allocated to the RFPD, and assigned to a specific RFPD on the prototyping engine. Determining if each of the probe signal lines is an input probe signal line or an output probe signal line if the probe signal lines are allocated to the RFPD for the circuit, and the signal value at a specific time in the signal lines on the output probe is output. The probe should only appear for a certain period of time and the signal lines on the input probe Adding an additional circuit for IOP probe to the circuit to be assigned to this RFPD so as to have a signal value applied to the output probe at a specific time period, thereby creating an extended design verification circuit; Technology mapping, layout and wiring, and programming pattern generation steps to implement the target circuit in the corresponding RFPD, and the generated programming patterns are downloaded from the server computer to each RFPD in the prototyping engine through the relay module and the system interface port. A circuit that is functionally equivalent to the verification target circuit is implemented on the prototyping engine, and an input waveform is applied to the input of the circuit equivalent to the design verification circuit implemented on the prototyping engine and the output waveform is output from the output. Observe and, if necessary, for the output probe signal line, In this case, when the signal line on the output probe is present in the RFPD, the signal value of the signal line on the output probe is displayed on the output probe of the corresponding RFPD by using the IOP probe additional circuit. Analyzing the transmitted value by transmitting the displayed output probe value to the server computer through the system interface port and the relay module. For the input probe signal line, the signal value of the signal line on the input probe using the IOP probe additional circuit. And having the input probe value transmitted from the server computer to the input probe line through the relay module and the system interface port.
본 발명에 따른 신속 프로토타이핑 방법은, 서버용 컴퓨터로 설계검증용 HDL 코드와 ASIC 벤더 라이브러리 명칭을 입력하는 단계와, 설계검증용 HDL 코드에 존재하는 탐침대상 시그널들을 서버용 컴퓨터로 입력하는 단계와, 입력된 HDL 코드를 프로토타이핑 엔진 상의 RFPD가 2 이상의 경우에는 2 이상의 RFPD에 분할·할당하고 프로토타이핑 엔진이 1개의 RFPD로 구성된 경우에는 설계검증 대상 HDL 코드 전체를 RFPD에 할당하고, 프로토타이핑 엔진 상의 특정 RFPD에 할당된 HDL 코드에 대해서 이 RFPD 내부로 탐침대상 시그널들이 할당되어졌으면 이 탐침대상 시그널들 각각이 입력탐침시그널인가 출력탐침시그널인가를 판단하는 단계와, 출력탐침대상 시그널들에서의 특정 시간대에서의 신호값이 출력탐침선에 일정 시간 동안에만 나타나도록 하며 입력탐침대상 시그널들이 입력탐침선에 특정 시간대에 가해지는 신호값을 가지도록 이 RFPD에 할당된 검증대상 HDL 코드에 IOP-탐침용 부가회로의 행위를 표현하는 탐침부가 HDL 코드를 추가적으로 첨가하여 확장된 설계검증 대상 HDL 코드를 생성하는 단계와, 이 확장된 설계검증 대상 HDL 코드를 해당 RFPD에 구현시키기 위한 신속합성, 기술매핑, 배치 및 배선, 그리고 프로그래밍패턴생성 단계와, 생성되어진 프로그래밍패턴들을 서버용 컴퓨터로부터 중계모듈과 시스템인터페이스 포트를 통하여 프로토타이핑 엔진내의 각 RFPD에 다운로딩하여 설계검증 대상 HDL 코드와 함수적으로 등가인 회로가 프로토타이핑 엔진 상에서 구현되게 하는 단계와, 프로토타이핑 엔진 상에 구현된 설계검증 대상 HDL 코드와 등가인 회로의 입력부에 입력파형을 인가하고 출력부에서 출력파형을 관찰하며, 필요시 출력탐침신호선에 대해서는 출력탐침대상 신호선들 상에서의 특정 시간대에서의 신호값들을 출력탐침대상 신호선이 RFPD내에 존재하는 경우에 IOP-탐침용 부가회로를 이용하여 출력탐침대상 신호선의 신호값이 해당 RFPD의 출력탐침선에 나타나게 하는 단계와, 이렇게 나타난 출력탐침선의 값을 시스템인터페이스 포트와 중계모듈을 통하여 서버용 컴퓨터로 전송하여 전송된 값을 분석하는 단계를 포함하며 입력탐침신호선에 대해서는 IOP-탐침용 부가회로를 이용하여 입력탐침대상 신호선의 신호값이 서버용 컴퓨터로부터 중계모듈과 시스템인터페이스 포트를 통하여 입력탐침선으로 전송된 입력탐침값을 가지게 하는 단계를 포함한다.The rapid prototyping method according to the present invention comprises the steps of: inputting a design verification HDL code and ASIC vendor library name into a server computer, inputting a coveted signal present in the design verification HDL code into a server computer; The assigned HDL code is divided and assigned to two or more RFPDs if the RFPD on the prototyping engine is two or more, and if the prototyping engine consists of one RFPD, the entire design-proven HDL code is allocated to the RFPD. If onboard signals are assigned to the HDL code assigned to the RFPD, determining whether each of the onboard signals is an input probe signal or an output probe signal, and at a specific time in the signals on the output probe. So that the signal value of appears on the output probe only for a certain time. The probe part expressing the behavior of the IOP probe additional circuit is added to the HDL code to be assigned to this RFPD so that they have a signal value applied to the input probe at a specific time. Generating HDL code, rapid synthesis, technology mapping, layout and wiring, and programming pattern generation steps for implementing the extended design verification target HDL code in the corresponding RFPD, and generating the programming patterns from the server computer. And downloading each RFPD in the prototyping engine through the system interface port so that a circuit functionally equivalent to the design verification HDL code is implemented on the prototyping engine, and the design verification target HDL implemented on the prototyping engine. Apply the input waveform to the input of the circuit equivalent to the code and the output waveform at the output If necessary, for the output probe signal line, the signal values at a specific time period on the signal probe on the output probe are used.If the signal line on the output probe is present in the RFPD, use the IOP probe additional circuit. Including the signal value appears on the output probe line of the corresponding RFPD, and transmitting the value of the output probe line to the server computer through the system interface port and the relay module and analyzing the transmitted value. Using an additional circuit for the IOP probe to cause the signal value of the signal line on the input probe to have an input probe value transmitted from the server computer to the input probe line through the relay module and the system interface port.
상기 목적 외에 본 발명의 다른 목적 및 이점들은 첨부한 도면을 참조한 실시예에 대한 상세한 설명을 통하여 명백하게 드러나게 될 것이다.Other objects and advantages of the present invention in addition to the above object will become apparent from the detailed description of the embodiments with reference to the accompanying drawings.
이하, 본 발명의 실시예를 첨부한 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1 은, 본 발명에 관한 신속 프로토타이핑 장치를 개략적으로 도시한 도면이다. 본 발명에 관한 신속 프로토타이핑 장치에서 프로토타이핑 엔진 (44) 은 중계모듈 (30) 을 통하여 서버용 컴퓨터 (20) 에 연결되어 있다. 또한, 프로토타이핑엔진 (44) 내에는 소자에 대한 다양한 형태의 디지털 하드웨어를 구현하는 1 이상의 RFPD (12) 들이 칩 외부단자(external pin)를 통하여 상호 접속됨과 동시에 탐침선(24) 역할을 하는 다른 특정 칩 외부단자를 통하여 시스템인터페이스 포트 (26) 에 접속되며, 다시 시스템인터페이스 포트 (26) 는 중계모듈에 접속되어 있다.1 is a view schematically showing a rapid prototyping apparatus according to the present invention. In the rapid prototyping apparatus according to the present invention, the prototyping engine 44 is connected to the server computer 20 via the relay module 30. In addition, within the prototyping engine 44, one or more RFPDs 12, which implement various types of digital hardware for the device, are interconnected through an external chip and act as probes 24. It is connected to the system interface port 26 through a specific chip external terminal, and again the system interface port 26 is connected to the relay module.
본 발명에 따른 신속 프로토타이핑 방법은, 특정 RFPD 내부로 할당되어 구현된 설계검증 대상회로의 신호선들에 대한 입출력 탐침을 위하여 IOP-탐침용 부가회로를 프로토타이핑 시스템소프트웨어가 생성하여 설계검증 대상회로에 부가시켜서 확장된 설계검증 대상회로를 만드는 단계를 포함한다. 우선, 설계검증 대상회로가 플립플롭을 사용한 경우에 이 플립플롭이 모두 D형 플립플롭이라 가정하고, 이외의 경우는 곧 이어 설명하기로 한다.In the rapid prototyping method according to the present invention, the prototyping system software generates an additional circuit for the IOP probe for the input / output probe of the signal lines of the design verification target circuit which is allocated and implemented inside a specific RFPD and generated the design verification target circuit. In addition to creating an extended circuit for design verification. First, it is assumed that all of the flip-flops are D-type flip-flops when the design verification target circuit uses the flip-flops, and other cases will be described later.
이 단계에서는 IOP-탐침용 부가회로를 설계검증 대상회로에 부가하여 만들어지는 회로인 확장된 설계검증 대상회로가 출력탐침모드에서는 부가회로를 부가함으로서 형성되는 회로부분이 쉬프트레지스터 구조로 되어 탐침클럭에 동기화된 쉬프팅 동작을 이 쉬프팅 동작 직전에 쉬프트레지스터가 가지는 논리값이 출력탐침대상이 되는 신호선들의 논리값을 가지고서 하며 동시에 쉬프팅 동작이 완료한 후에 설계검증 대상회로내의 모든 플립플롭들의 논리값들이 쉬프팅 동작 직전의 논리값들과 동일하도록 유지되며, 입력탐침모드에서는 부가회로를 부가함으로서 형성되는 회로부분은 쉬프트레지스터 구조로 되어 쉬프팅 동작을 하며 이와 같은 쉬프팅동작을 이용하여 입력탐침 대상이 되는 플립플롭들에 대한 동기 혹은 비동기적 셋/리셋(set/reset) 동작으로 입력탐침 대상이 되는 플립플롭들의 논리값을 입력탐침값으로 되게하며 동시에 쉬프팅 동작이 완료한 후에 입력탐침 대상에 포함되지 않은 설계검증 대상회로내의 나머지 플립플롭들의 논리값들이 쉬프팅 동작 직전의 논리값들과 동일하도록 유지되며, 정상모드에서는 IOP-탐침용 부가회로가 부가되더라도 설계검증 대상회로의 함수적 논리 성질(functional logical behavior)이 변형되지 않는 행위를 가지도록 하는 것이다. 이를 구체적으로 설명하기 위하여 사용되는 비동기 회로에 대한 예가 도2 에 설명되어 있다. 도2 의 회로에 있는 모든 플립플롭의 클럭입력으로 회로의 시스템클럭이 물리적으로 연결(physically connected의 의미로 논리적으로 연결된 것과 대비됨)되어 있지 않는데, 이와 같은 것을 게이트되어진 클럭(gated clock)이라 한다. 도2 의 회로는 4-비트 비동기 이진카운터(asynchronous binary counter)인데, 최하위 비트의 플립플롭을 제외한 나머지 세 플립플롭들의 클럭입력으로 회로의 시스템클럭이 물리적으로 연결되어 있지 않다.In this step, the circuit designed by adding an additional circuit in the output probe mode is an extended design verification target circuit, which is a circuit made by adding an IOP-probe supplementary circuit to the design verification target circuit. In the synchronized shifting operation, the logic value of the shift register immediately before the shifting operation has the logic value of the signal lines on the output probe, and at the same time, after the shifting operation is completed, the logic values of all flip-flops in the circuit to be verified are shifted. In the input probe mode, the circuit part formed by adding the additional circuit is shifted to the shift register structure, and the flip-flops that are the input probe targets are shifted. Synchronous or asynchronous set / reset By doing this, the logic values of the flip-flops that are the input probe target are set to the input probe values, and at the same time, after the shifting operation is completed, the logic values of the remaining flip-flops in the design verification target circuit not included in the input probe target are the logic immediately before the shifting operation. The values remain the same, and in normal mode, the functional logical behavior of the circuit for design verification does not change even if the additional circuit for IOP probe is added. An example of an asynchronous circuit used to specifically illustrate this is illustrated in FIG. The clock inputs of all the flip-flops in the circuit of FIG. 2 do not physically connect the system clocks of the circuits (as opposed to logically connected in the sense of physically connected), and this is called a gated clock. . The circuit of Figure 2 is a 4-bit asynchronous binary counter, with the clock inputs of the three flip-flops except the flip-flop of the least significant bit, and the system clock of the circuit is not physically connected.
도3은 다양한 D형 플립플롭의 심벌과 함수적 기능을 개략적으로 도시하는 도면이며, 도4 는 본 발명에 관한 IOP-탐침용 부가회로를 나타내는 병렬적 로드가 가능한 쉬프트레지스터 어레이 구조의 일 예를 개략적으로 도시하는 도면이며, 도5는 도4 의 병렬적 로드가 가능한 쉬프트레지스터 어레이 구조의 또 다른 예를 개략적으로 도시하는 도면이며, 도6 은 도 3 의 이중입력 D형 플립플롭의 구현 예를 개략적으로 도시하는 도면이다. 도 2와 같은 4-비트 비동기식 이진카운터의 4-비트 출력선들 모두에 대한 입출력 탐침이 가능하도록 IOP-탐침용 부가회로가 부가된 확장된 설계검증 대상회로가 도7 (a) 에 있다.FIG. 3 is a diagram schematically showing symbols and functional functions of various D-type flip-flops, and FIG. 4 is an example of a parallel loadable shift register array structure showing an IOP probe additional circuit according to the present invention. FIG. 5 is a view schematically showing another example of the structure of a shift register array capable of parallel loading in FIG. 4, and FIG. 6 is an example of implementing the dual input D-type flip-flop of FIG. It is a figure which shows schematically. FIG. 7 (a) shows an extended design verification subject circuit in which an IOP probe additional circuit is added to enable input / output probes to all 4-bit output lines of the 4-bit asynchronous binary counter as shown in FIG.
도7 (a) 의 회로는 출력탐침모드에서는 설계검증 대상회로와 함께 탐침대상 신호선들과 이중입력 플립플롭들(도7 (a) 에서 PFF0, PFF1, PFF2, PFF3)에 의하여 논리적으로 4의 길이를 갖는 병렬적 로드가 가능한 쉬프트레지스터 어레이 구조가 되게 구성되어 있으며 동시에 상기 이중입력 플립플롭들 각각의 한 입력을 탐침대상 신호선들 각각에 연결하여 탐침대상 신호선들의 논리값을 상기 이중입력 플립플롭에 병렬적으로 로딩이 가능하게 하며 출력탐침 시에 쉬프트레지스터 어레이 구조에 존재하는 한 플립플롭의 출력(여기서는 제일 오른쪽의 것 PFF3)이 입출력탐침선에 논리적으로 연결될 수 있고, 입력탐침모드에서는 논리적으로 4의 길이를 갖는 병렬적 로드가 가능한 쉬프트레지스터 어레이 구조 각각에 존재하는 한 플립플롭의 한 입력(여기서는 제일 왼쪽의 것 PFF0)이 입력탐침선에 논리적으로 연결되어 지고 상기 병렬적 로드가 가능한 쉬프트레지스터 어레이를 구성하는 플립플롭들 각각의 출력(도7 (a) 의 p0, p1, p2, p3)이 입력탐침 대상 신호선(여기서는 y0, y1, y2, y3)들 각각을 구동하는 각각의 플립플롭(도2 의 FF0, FF1, FF2, FF3) 중에서 대체한 이중입력 플립플롭(도7 (a) 의 FF0)의 한 입력에 연결되게 하거나(해당 플립플롭의 클럭입력에 시스템클럭이 연결되어 있는 경우에 해당되며, 따라서 여기서는 FF0만 대상) 또는 각각의 플립플롭을 비동지 셋과 비동기 리셋이 동시에 있는 플립플롭으로 대체하여 이 플립플롭의 비동기 셋 입력과 비동기 리셋 입력을 제어하여 이 플립플롭의 출력을 0 또는 1로 설정할 수 있게 함으로(해당 플립플롭의 클럭입력에 시스템클럭이 연결되어 있지 않는 경우에 해당되며, 따라서 여기서는 FF1, FF2, FF3가 대상) 구현할 수 있는데 이를 위해서는 유한상태기(Finite State Machine)가 추가적으로 필요하다. 여기서 사용되는 유한상태기의 역할은 입력탐침 대상이 되는 플립플롭의 비동기 셋과 비동기 리셋이 필요한 시점에만 쉬프트레지스터 어레이로부터 공급되는 신호값에 의하여 비동기적 셋과 비동기적 리셋이 일어나도록 제어하는 것이다. 이를 위해서는 쉬프트레지스터 어레이로부터의 신호선, 유한상태기로부터의 신호선, 그리고 동작모드제어(/탐침모드) 신호선들을 이용하여 입력탐침 대상이 되는 플립플롭의 비동기 셋과 비동기 리셋을 제어할 수 있도록 도7 (b) 와 같은 조합회로기능이 필요하다. 도7 (b)에서의 조합회로의 입력들과 출력들에 대한 의미를 다르게 코딩하는 경우에는(예로 FSMOut의 0과 1의 의미를 바꾸어서 해석 등) 물론 도7 (b)의 진리표(truth table)가 달라지게 된다.In the output probe mode, the circuit of Fig. 7 (a) is logically 4 in length by the signal line and the double input flip-flops (PFF0, PFF1, PFF2, and PFF3 in Fig. 7 (a)) together with the circuit for design verification. And a parallel-loadable shift register array structure in which a single input of each of the dual input flip-flops is connected to each of the signal lines on the coveter so that the logic values of the signal on the coveter are parallel to the dual input flip-flop. As long as the output is probed, the output of the flip-flop (in this case, the rightmost PFF3) can be logically connected to the input / output probe as long as it exists in the shift register array structure. One input of one flip-flop present in each of the lengthwise parallel-loadable shift register array structures The output of each of the flip-flops (p0, p1, p2, and p3 in Fig. 7 (a)) is connected to the input probe line, and the output of each of the flip-flops constituting the parallel loadable shift register array is input. Dual-input flip-flop (FF0 in Fig. 7 (a)) which is replaced among respective flip-flops (FF0, FF1, FF2, and FF3 in Fig. 2) for driving each of the probe signal lines (here, y0, y1, y2, and y3). Either one is connected to one of the inputs (if the system clock is connected to the clock input of the corresponding flip-flop, so only FF0 is used here) or each flip-flop is a flip-flop with non-synchronous set and asynchronous reset. Alternatively, the flip-flop's asynchronous set input and asynchronous reset input can be controlled to set the output of this flip-flop to 0 or 1 (if no system clock is connected to the clock input of the flip-flop, follow In this case, FF1, FF2, and FF3 can be implemented. To do this, a finite state machine is additionally required. The role of the finite state machine used here is to control the asynchronous set and the asynchronous reset to occur by the signal value supplied from the shift register array only when the asynchronous set and the asynchronous reset of the flip-flop which are the input probe targets are required. For this purpose, signal lines from the shift register array, signal lines from the finite state machine, and operation mode control ( / Probe mode) A combination circuit function as shown in FIG. 7 (b) is required to control the asynchronous set and asynchronous reset of the flip-flop that is the input probe object using the signal lines. In the case of differently coding the meanings of the inputs and outputs of the combination circuit in Fig. 7 (b) (for example, by changing the meaning of 0 and 1 in FSMOut), the truth table in Fig. 7 (b) is of course. Will be different.
도8 (a)는 설계검증 대상회로에 있는 임의의 1 이상의 플립플롭이 이미 비동기 셋과 비동기 리셋을 가지고 있으며 이들의 클럭 입력에 시스템 클럭이 직접 연결되어 있지 않고 국부적으로 생성된 국지적 클럭(local clock)이나 게이트되어진 클럭(gated clock)이 연결되어진 상황을 도시한 것이다. 이와 같은 경우에는 이미 설명한 대로 입력탐침 대상이 되는 해당 플립플롭들을 그대로 사용하면서 비동기 셋과 비동기 리셋 입력들을 구동하는 조합적 제어회로를 포함하여 추가되는 IOP-탐침용 부가회로로써 이미 설명한대로 회로 변환을 하면서 원래의 설계검증 대상회로의 함수적 논리성질을 정상모드에서 변형하지 않도록 하면 되는데 도8 (b)가 이와 같은 상황을 도시한 것이며 이때 사용되는 조합적 제어회로의 진리표는 도8 (c)에 나타나 있다. 탐침클럭에 동기화되어서 구동되는 유한상태기의 역할은 입력탐침모드에서는 입력탐침 대상이 되는 플립플롭의 비동기 셋 입력과 비동기 리셋 입력을 탐침클럭의 특정 번째의 사이클에서 IOP-탐침용 부가회로를 구성하는 쉬프트레지스터 어레이의 특정 플립플롭에 저장되어 있는 입력탐침값으로 제어하여 입력탐침이 바로 상기 탐침클럭의 특정 번째의 사이클에서만 일어나도록 하는 비동기 셋/리셋 활성화 신호를 생성하고(이 경우에는 활성화가 됨), 입력탐침모드에서 상기 탐침클럭의 상기 특정 번째 사이클 이외의 사이클들에서는 입력탐침 대상이 되는 특정 플립플롭의 비동기 셋과 비동기 리셋을 무효화(disable)시키는 비동기 셋/리셋 활성화 신호를 생성하고(이 경우에는 불활성화가 됨), 정상동작모드에서는 확장된 설계검증 대상회로가 함수적으로 원래의 설계검증 대상회로와 등가일 수 있도록 하는 비동기 셋/리셋 활성화 신호를 생성하여(이 경우에는 불활성화가 됨) 입력탐침대상 플립플롭의 비동기 셋 입력과 비동기 리셋 입력에 연결된 제어회로부를 구동한다.Figure 8 (a) shows that any one or more flip-flops in the design verification target circuit already have an asynchronous set and an asynchronous reset and a locally generated local clock without a system clock directly connected to their clock inputs. Or the gated clock is connected. In such a case, the circuit conversion as described above is performed as an additional IOP probe additional circuit including a combination control circuit driving the asynchronous set and asynchronous reset inputs while using the corresponding flip-flops that are the input probe targets as described above. In the normal mode, the functional logic property of the original design verification target circuit is not changed. FIG. 8 (b) shows such a situation, and the truth table of the combined control circuit used at this time is shown in FIG. 8 (c). Is shown. The role of the finite state machine that is driven in synchronization with the probe clock is that in the input probe mode, the asynchronous set input and the asynchronous reset input of the flip-flop that are the input probe target are configured to configure the additional circuit for the IOP probe in the specific cycle of the probe clock. Generates an asynchronous set / reset enable signal, which in this case is activated, controlled by the input probe value stored in a particular flip-flop of the shift register array, causing the input probe to occur only at the specific cycle of the probe clock. In an input probe mode, in cycles other than the specific cycle of the probe clock, an asynchronous set / reset enable signal is generated that disables an asynchronous set and an asynchronous reset of a specific flip-flop to be input probe targets (in this case, Inactive), and the extended design verification circuit is functional in normal operation mode. By generating an asynchronous set / reset enable signal that is equivalent to the original design verification target circuit (in this case, it is disabled), it drives the control circuit connected to the asynchronous set input and asynchronous reset input of the flip-flop on the input probe. do.
이와 같이 설계검증 대상회로에 IOP-탐침용 부가회로가 부가되어져서 생성된 확장된 설계검증 대상회로는 프로그래밍 패턴 형태로 변환되어 서버용 컴퓨터로부터 중계모듈과 시스템인터페이스 포트를 통하여 해당 RFPD에 다운로드되어져 구현되고, 탐침대상 신호선에 대한 출력탐침이 필요한 시점에 프로토타이핑 시스템소프트웨어의 제어 하에 해당 RFPD가 정상 모드에서 출력탐침 모드로 전환되어진 후 탐침클럭이 RFPD에 가해지면 1 이상의 쉬프트레지스터 어레이 구조 각각에 존재하는 한 플립플롭의 출력에 연결된 1 이상의 출력탐침선을 통하여 탐침대상이 되는 신호선들에서의 신호값이 시스템인터페이스 포트와 중계모듈을 통하여 서버용 컴퓨터로 전송되고, 탐침클럭의 인가가 종료된 후에는 RFPD에 존재하는 모든 팬인 플립플롭들과 팬아웃 플립플롭들의 신호값들이 탐침 모드 직전의 정상 모드 마지막 시점에서의 신호값들과 동일한 값을 가지게 되어 연속하여 이어지는 정상 모드에서의 바른 동작을 보장하게 한다. 또한, 입력탐침이 필요한 시점에 프로토타이핑 시스템소프트웨어의 제어 하에 입력탐침용 데이터를 생성한 다음, 입력탐침 모드로 전환하고 난 후, 탐침클럭이 RFPD에 가해지면서 1 이상의 쉬프트레지스터 어레이 구조 각각에 존재하는 한 플립플롭의 입력에 논리적으로 연결된 1 이상의 입력탐침선을 통하여 서버용 컴퓨터로부터 중계모듈과 시스템인터페이스 포트를 통하여 전송된 입력탐침용 데이터가 1 이상의 쉬프트레지스터 어레이 구조 각각에 존재하는 플립플롭들에 저장되고 이렇게 저장된 입력탐침용 데이터로써 최종적으로 입력탐침대상 플립플롭들을 동기적 혹은 비동기적 싯과 리셋을 하여 입력탐침대상 신호선들이 입력탐침용 데이터의 입력탐침신호값들을 가지게 된다.The expanded design verification target circuit generated by adding the IOP probe additional circuit to the design verification target circuit is converted into a programming pattern, downloaded from the server computer through the relay module and the system interface port, and then implemented in the corresponding RFPD. If a probe clock is applied to the RFPD after the RFPD is switched from normal mode to the output probe mode under the control of the prototyping system software when the output probe for the signal line on the probe is required, as long as it exists in each of the one or more shift register array structures. Signal values from the signal lines that are probe-shaped through one or more output probes connected to the output of the flip-flop are transmitted to the server computer through the system interface port and the relay module, and present in the RFPD after the application of the probe clock is terminated. Flip-Flops and Fan-Out Flip The signal values of the flops will have the same values as the signal values at the end of the normal mode immediately before the probe mode to ensure correct operation in successive normal modes. In addition, when the input probe is required, the data for the input probe is generated under the control of the prototyping system software, and then switched to the input probe mode, and then the probe clock is applied to the RFPD to exist in each of the one or more shift register array structures. Input probe data transmitted from the server computer through the relay module and the system interface port through one or more input probes logically connected to the input of one flip-flop is stored in the flip-flops present in each of the one or more shift register array structures. As the stored input probe data, the flip-flops on the input probe are synchronously or asynchronously reset and the signal lines on the input probe have the input probe signal values of the input probe data.
현재 제품으로 출시되어 사용되고 있는 모든 RFPD는 소자 내부에 많은 수의 플립플롭을 가지고 있는데, 이 플립플롭은 모두 D형 플립플롭이다. 회로 설계시에 사용된 플립플롭이 D형이 아닌 RS형, JK형, T형 등을 사용한 경우에는, D형 플립플롭과 간단한 조합적 회로를 써서 이들과 함수적으로 등가인 회로를 구성한 후 이 등가회로를 구현하게 된다. 따라서 본 발명에서의 상기 탐침 방법에서 탐침용 부가회로를 생성하는 방법은 회로에 어떠한 종류의 플립플롭을 사용한 경우에도 적용되어질 수 있는 방법이다.All RFPD products currently on the market have a large number of flip-flops inside the device, all of which are D-type flip-flops. If the flip-flops used in the circuit design use RS type, JK type, T type, etc. instead of D type, use a simple combination circuit with D type flip flop to form a functionally equivalent circuit. The equivalent circuit is implemented. Therefore, the method of generating the probe additional circuit in the probe method according to the present invention is a method that can be applied to any type of flip-flop used in the circuit.
도 9 는 본 발명의 일 실시예에 따른 신속 프로토타이핑 방법을 단계별로 설명하는 흐름도로서, 도 1 에 도시된 서버용 컴퓨터 (20) 에 의해 수행된다.9 is a flowchart for explaining a rapid prototyping method step by step according to an embodiment of the present invention, which is performed by the server computer 20 shown in FIG.
제 50 단계에서 서버용 컴퓨터 (20) 를 이용하여 ASIC 벤더 라이브러리명과와 이 ASIC 벤더 라이브러리를 이용하여 설계자가 설계한 회로, 즉 설계검증 대상회로를 입력한다 (S50). 제52 단계에서 탐침을 필요로 하는 신호선들이 있는 경우 서버용 컴퓨터 (20) 를 이용하여 이를 입력한다 (S52). 그후, 서버용 컴퓨터 (20)는 프로토타이핑 시스템소프트웨어를 수행시켜 프로토타이핑 엔진이 2이상의 RFPD로 구성된 경우에는 설계검증 대상회로를 RFPD로 분할·할당하고 프로토타이핑 엔진이 1개의 RFPD로 구성된 경우에는 설계검증 대상회로 전체를 RFPD에 할당한다(S54). 이어서, 서버용 컴퓨터 (20) 는 탐침대상 신호선이 존재하는가를 조사한다(S58). 그후, 만약 제 58 단계에서 탐침대상 신호선이 존재하는 것으로 판단된 경우, 제 60 단계에서 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 프로토타이핑 엔진내의 RFPD 별로 IOP-탐침용 부가회로 생성 후에 이들 IOP-탐침용 부가회로를 프로토타이핑 엔진내의 해당 RFPD에 할당하며 (S60), 제 62 단계에서 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 RFPD 별로 이 RFPD에 할당된 검증대상 회로와 IOP-탐침용 부가회로를 함께 합하여 확장된 설계검증 대상회로를 생성한다 (S62). 그러나, 상기 제 58 단계에서 탐침대상 신호선이 존재하지 않는 것으로 판단된 경우, 제 64 단계로 진행하며, 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 RFPD 별로 이 RFPD에 할당된 검증대상 회로를 생성한다 (S64). 이후, 제 66 단계에서 서버용 컴퓨터(20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 프로토타이핑 엔진내의 RFPD 별로 해당 확장된 설계검증 대상회로를 구현하기 위한 프로그래밍 패턴을 생성하며(S66), 제 68 단계에서 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 중계모듈 (30) 과 시스템인터페이스 포트 (26) 를 통하여 각 RFPD에 프로그래밍 패턴을 다운로드하여 프로토타이핑 엔진 상에 설계검증 대상회로와 함수적으로 등가인 회로를 구현한다 (S68). 이후, 제 70 단계에서 신속 프로토타이핑 장치는 정상 모드에서 프로토타이핑 엔진 상에 구현된 회로를 대상으로 회로 검증 과정을 수행한다 (S70). 이후, 제 72 단계에서 탐침 수행이 필요한가 여부를 판단하게 되며 (S72), 만약 탐침 수행이 필요한 것으로 판단된 경우에는 제 74 단계로 진행하고, 필요치 않는 경우에는 제 82 단계로 진행한다. 상기 제 74 단계에서는, 필요한 탐침이 입력탐침인가 출력탐침인가를 조사하여 (S74), 만약 입력탐침인 경우에는 제 76 단계로 진행하고, 출력탐침인 경우에는 제 80 단계로 진행한다. 제 80 단계에서는 서버용 컴퓨터 (20) 는 출력탐침이 필요한 시점에 프로토타이핑 시스템소프트웨어를 수행시켜 출력탐침 모드로 전환하고 RFPD내에 구현된 IOP-탐침용 부가회로를 이용하여 탐침클럭을 인가해서 출력탐침 과정을 수행하여 일정한 시간대에 1 이상의 출력탐침선에 나타나는 신호값들을 시스템인터페이스 포트 (26) 와 중계모듈 (30) 을 통하여 서버용 컴퓨터 (20) 로 전송시킨 후 프로토타이핑 시스템소프트웨어를 이용하여 출력탐침된 신호값들을 분석한다 (S80). 제 76 단계에서는 서버용 컴퓨터 (20) 는 입력탐침이 필요한 시점에 입력탐침용 데이터를 생성한다(S76). 이후, 제 78 단계에서는 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 입력탐침 모드로 전환하고 중계모듈 (30) 과 시스템인터페이스포트 (26) 를 통하여 입력탐침용 데이터를 입력탐침선에 탐침클럭과 맞추어 인가하여 입력탐침을 완료한다 (S78). 한편, 이상의 탐침 수행이 완료되었거나 (S78, S80), 탐침이 필요치 않다고 판단된 경우에는, 제 82 단계에서 서버용 컴퓨터 (20) 는 설계 검증이 완료됐는가를 조사하여 (S82), 완료되었으면 전체 과정을 종료하고 (S84), 완료되지 않았으며 상기 제 70 단계로 진행한다.In step 50, the server computer 20 inputs an ASIC vendor library name and a circuit designed by the designer using the ASIC vendor library, that is, a design verification target circuit (S50). If there are signal lines requiring the probe in step 52, the server computer 20 inputs the signal lines (S52). Subsequently, the server computer 20 executes the prototyping system software so that when the prototyping engine is composed of two or more RFPDs, the design verification target circuit is divided and assigned to the RFPD, and when the prototyping engine is composed of one RFPD, the design verification is performed. The entire target circuit is allocated to the RFPD (S54). Subsequently, the server computer 20 checks whether a signal line on the coveted bed exists (S58). Then, if it is determined in step 58 that the signal line on the probe is present, in step 60, the server computer 20 executes the prototyping system software to generate the IOP-probe supplementary circuit for each RFPD in the prototyping engine. The additional circuit for IOP probe is allocated to the corresponding RFPD in the prototyping engine (S60). In step 62, the server computer 20 executes the prototyping system software to perform the verification circuit and IOP- assigned to the RFPD for each RFPD. The probe additional circuits are combined together to generate an extended design verification target circuit (S62). However, if it is determined in step 58 that there is no signal line on the coveted bed, the process proceeds to step 64, and the server computer 20 executes a prototyping system software to perform the verification target circuit allocated to this RFPD for each RFPD. To generate (S64). Subsequently, in step 66, the server computer 20 executes a prototyping system software to generate a programming pattern for implementing the extended design verification target circuit for each RFPD in the prototyping engine (S66). The computer 20 executes the prototyping system software to download programming patterns to each RFPD through the relay module 30 and the system interface port 26 to be functionally equivalent to the design verification circuit on the prototyping engine. Implement the (S68). Thereafter, in operation 70, the rapid prototyping apparatus performs a circuit verification process on the circuit implemented on the prototyping engine in the normal mode (S70). Thereafter, it is determined whether the probe needs to be performed in step 72 (S72). If it is determined that the probe needs to be performed, the procedure proceeds to step 74, and if not necessary, the procedure proceeds to step 82. In the 74th step, it is checked whether the necessary probe is an input probe or an output probe (S74). If the input probe is an input probe, the process proceeds to a 76th step and, in the case of an output probe, a 80th step. In the 80th step, the server computer 20 executes the prototyping system software when the output probe is needed, switches to the output probe mode, and applies the probe clock using the IOP probe additional circuit implemented in the RFPD. After transmitting the signal values appearing at one or more output probes in a certain time period to the server computer 20 through the system interface port 26 and the relay module 30, the output probed signals using the prototyping system software. The values are analyzed (S80). In step 76, the server computer 20 generates input probe data at the point in time when the input probe is needed (S76). Thereafter, in step 78, the server computer 20 switches to the input probe mode by executing the prototyping system software and inputs the input probe data to the input probe through the relay module 30 and the system interface 26. In step S78, the input probe is applied accordingly. On the other hand, if the above-mentioned probe is completed (S78, S80), or it is determined that the probe is not necessary, in step 82, the server computer 20 checks whether the design verification is completed (S82), and if the completion of the whole process End (S84), not complete, and proceeds to step 70.
도 10 은 본 발명의 또 다른 일 실시예에 따른 신속 프로토타이핑 방법을 단계별로 설명하는 흐름도로서, 도 1 에 도시된 서버용 컴퓨터 (20) 에 의해 수행된다.10 is a flowchart for explaining a rapid prototyping method step by step according to another embodiment of the present invention, which is performed by the server computer 20 shown in FIG.
제 250 단계에서 서버용 컴퓨터 (20) 를 이용하여 RFPD 벤더 라이브러리명과와 설계검증 대상 HDL 코드를 입력한다 (S250). 제252 단계에서 탐침을 필요로 하는 시그널들이 있는 경우 서버용 컴퓨터 (20) 를 이용하여 이를 입력한다 (S252). 그후, 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 프로토타이핑 엔진이 2이상의 RFPD로 구성된 경우에는 설계검증 HDL 코드를 RFPD로 분할·할당하고 프로토타이핑 엔진이 1개의 RFPD로 구성된 경우에는 설계검증 대상회로 전체를 RFPD에 할당한다 (S254). 이어서, 서버용 컴퓨터 (20) 는 탐침대상 시그널이 존재하는 것으로 판단된 경우, 제 260 단계에서 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 프로토타이핑 엔진내의 RFPD 별로 IOP-탐침용 부가회로의 행위를 표현하는 HDL 코드를 생성 후에 이들 IOP-탐침용 HDL 부가 코드를 프로토타이핑 엔진내의 해당 RFPD에 할당하며 (S260), 제 262 단계에서 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 RFPD 별로 이 RFPD에 할당된 HDL 부분 코드와 IOP-탐침용 HDL 부가 코드를 함께 합하여 확장된 설계검증 대상 HDL 부분 코드를 생성한다 (S262). 그러나, 상기 제 258 단계에서 탐침대상 시그널이 존재하지 않는 것으로 판단된 경우, 제 264 단계로 진행하며, 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 RFPD 별로 이 RFPD에 할당된 검증대상 HDL 코드를 생성한다 (S264). 이후, 제 266 단계에서 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 프로토타이핑 엔진내의 RFPD 별로 해당 확장된 설계검증 대상 HDL 코드를 구현하기 위한 프로그래밍 패턴을 생성하며 (S266), 제 268 단계에서 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 중계모듈 (30) 과 시스템인터페이스 포트(26) 를 통하여 각 RFPD에 프로그래밍 패턴을 다운로드하여 프로토타이핑 엔진 상에 설계검증 대상 HDL 코드와 함수적으로 등가인 회로를 구현한다 (S268). 이후, 제 270 단계에서 신속 프로토타이핑 장치는 정상 모드에서 프로토타이핑 엔진상에 구현된 회로를 대상으로 회로 검증 과정을 수행한다 (S270). 이후, 제 272 단계에서 탐침 수행이 필요한가 여부를 판단하게 되며 (S272), 만약 탐침 수행이 필요한 것으로 판단된 경우에는 제 274 단계로 진행하고, 필요치 않는 경우에는 제 282 단계로 진행한다. 상기 제 274 단계에서는, 필요한 탐침이 입력탐침인가 출력탐침인가를 조사하여 (S274), 만약 입력탐침인 경우에는 제 276 단계로 진행하고, 출력탐침인 경우에는 제 280 단계로 진행한다. 제 280 단계에서는 서버용 컴퓨터(20) 는 출력탐침이 필요한 시점에 프로토타이핑 시스템소프트웨어를 수행시켜 출력탐침 모드로 전환하고 RFPD내에 구현된 IOP-탐침용 부가회로를 이용하여 탐침클럭을 인가해서 출력탐침 과정을 수행하여 일정한 시간대에 1 이상의 출력탐침선에 나타나는 신호값들을 시스템인터페이스 포트 (26) 와 중계모듈 (30) 을 통하여 서버용 컴퓨터 (20) 로 전송시킨 후 프로토타이핑 시스템소프트웨어를 이용하여 출력탐침된 신호값들을 분석한다 (S280). 제 276 단계에서는 서버용 컴퓨터 (20) 는 입력탐침이 필요한 시점에 입력탐침용 데이터를 생성한다 (S276). 이후, 제 278 단계에서는 서버용 컴퓨터 (20) 는 프로토타이핑 시스템소프트웨어를 수행시켜 입력탐침 모드로 전환하고 중계모듈 (30) 과 시스템인터페이스 포트 (26) 를 통하여 입력탐침용 데이터를 입력탐침선에 탐침클럭과 맞추어 인가해서 입력탐침을 완료한다 (S278). 한편, 이상의 탐침 수행이 완료되었거나 (S278, S280), 탐침이 필요치 않다고 판단된 경우에는, 제 282 단계에서 서버용 컴퓨터 (20) 는 설계 검증이 완료됐는가를 조사하여 (S282), 완료되었으면 전체 과정을 종료하고 (S284), 완료되지 않았으며 상기 제 270 단계로 진행한다.In step 250, the RFPD vendor library name and the design verification target HDL code are input using the server computer 20 (S250). If there are signals requiring a probe in operation 252, the input using the server computer 20 is input (S252). Subsequently, the server computer 20 executes the prototyping system software to divide and assign the design verification HDL code to the RFPD if the prototyping engine consists of two or more RFPDs, and the design verification if the prototyping engine consists of one RFPD. The entire target circuit is allocated to the RFPD (S254). Subsequently, when the server computer 20 determines that the signal on the coveter is present, the server computer 20 executes the prototyping system software in step 260 to perform the action of the IOP-probe supplementary circuit for each RFPD in the prototyping engine. After generating the HDL code representing the IOP-probe HDL supplementary code to the corresponding RFPD in the prototyping engine (S260), in step 262, the server computer 20 performs the prototyping system software for each RFPD. The HDL sub-code assigned to the RFPD and the HDL sub-code for the IOP-probe are combined together to generate the extended design verification target HDL sub-code (S262). However, if it is determined in step 258 that there is no signal on the coveted bed, the flow proceeds to step 264, in which the server computer 20 executes a prototyping system software to assign the verification target HDL code to each RFPD. To generate (S264). Subsequently, in step 266, the server computer 20 generates a programming pattern for implementing the extended design verification target HDL code for each RFPD in the prototyping engine by executing the prototyping system software (S266). The server computer 20 executes the prototyping system software, downloads a programming pattern to each RFPD through the relay module 30 and the system interface port 26, and functionally equivalents to the design verification target HDL code on the prototyping engine. To implement the circuit (S268). Thereafter, in step 270, the rapid prototyping apparatus performs a circuit verification process on the circuit implemented on the prototyping engine in the normal mode (S270). In step 272, it is determined whether the probe needs to be performed (S272). If it is determined that the probe needs to be performed, the process proceeds to step 274, and if not necessary, the process proceeds to step 282. In step 274, it is checked whether the required probe is an input probe or an output probe (S274). If the input probe is an input probe, the flow proceeds to step 276, and in the case of an output probe, the flow goes to step 280. In step 280, the server computer 20 executes the prototyping system software when the output probe is required, switches to the output probe mode, and applies the probe clock using the IOP probe additional circuit implemented in the RFPD. After transmitting the signal values appearing at one or more output probes in a certain time period to the server computer 20 through the system interface port 26 and the relay module 30, the output probed signals using the prototyping system software. The values are analyzed (S280). In operation 276, the server computer 20 generates input probe data at the point in time when the input probe is required (S276). Thereafter, in step 278, the server computer 20 switches to the input probe mode by executing the prototyping system software, and inputs the input probe data to the input probe through the relay module 30 and the system interface port 26. In step S278, the input probe is applied accordingly. On the other hand, if the above-described probe is completed (S278, S280), or if it is determined that the probe is not necessary, in step 282 the server computer 20 checks whether the design verification is completed (S282), if complete, the whole process End (S284), not complete and proceeds to step 270.
본 발명에서는 위에서 이미 언급된 입출력 탐침 기능을 가지는 신속 프로토타이핑 장치를 시뮬레이터와 통합한 혼합 검증 장치 및 이를 이용한 혼합 검증 방법도 언급한다. 기존의 로직에뮬레이션을 통한 설계검증 장치 및 방법이 설계검증 대상회로에 대하여 빠른 함수적 검증만이 가능한 것이었는데 반하여, 이와 같은 혼합 검증 장치 및 이를 이용한 혼합 검증 방법만의 장점은 검증 시간축 상에서 필요할 때마다 함수적 검증과 타이밍 검증을 번갈아 교대적으로 수행 할 수 있다는 것이다. 이로 인하여 설계자는 자신이 설계한 회로에 대한 검증 과정 도중에서 정확한 타이밍 검증이 필요한 시점까지는 고속의 함수적 검증을 수행하여 검증 시간을 단축할 수 있을 뿐만 아니라, 정확한 타이밍 검증이 필요한 시점에서는 이 또한 검증하는 것이 가능하다는 것이다. 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치와 시뮬레이터를 이용하면 이와 같은 고속의 함수적 검증과 정확한 타이밍 검증이 검증 과정 상에서 수 차례 번갈아 가며 이루어 질 수 있다. 즉, 예를 든다면 검증 처음부터 특정 시점 A까지는 설계검증 대상회로에 IOP-탐칭용 부가회로를 부가한 확장된 설계검증 대상회로를 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상에 구현하고 이를 이용하여 고속의 함수적 검증을 A 시점까지 수행하고 시점 A에서 출력탐침을 이용하여 프로토타이핑 엔진 상에 구현된 설계검증 대상회로의 현재 상태 정보(상태 정보란 회로의 모든 메모리 소자(플립플롭이나 래치)들의 논리값)를 서버 컴퓨터로 읽혀들인 다음 이 A 시점에서의 설계검증 대상회로의 현재 상태 정보를 시뮬레이션의 초기 상태벡터(initial state vector)로 하여 서버 컴퓨터에 있는 시뮬레이터를 이용한 시뮬레이션을 통하여 타이밍 검증을 A 시점에서부터 또 다른 특정 시점 B까지 진행한다. A 시점부터 B 시점까지 타이밍 검증을 수행한 후 B 시점에서의 설계검증 대상회로의 상태 정보는 시뮬레이터로부터 서버 컴퓨터의 프로토타이핑 소프트웨어로 전송되어지고 난 후 입력탐침을 통하여 프로토타이핑 엔진 상으로 전송되어져 프로토타이핑 엔진 상의 IOP-탐침용 부가회로가 부가되어 확장된 설계검증 대상회로의 상태 정보를 업데이트 시킬 수 있고 이때부터 또 다른 특정 시점 C까지 신속 프로토타이핑 장치를 이용한 고속의 함수적 검증이 다시 가능해 진다. 이와 같은 프로토타이핑 엔진을 이용한 고속의 함수적 검증과 로직시뮬레이터를 이용한 정확한 타이밍 검증 과정은 계속 반복적으로 수행되어 질 수 있는데, 이를 가능하게 하는 것이 본 발명의 입출력탐침이 가능한 신속 프로토타이핑 장치 및 이를 이용한 입출력 탐침방법이다. 이상과 같이 혼합 검증을 하기 위해서는 로직에뮬레이션과 시뮬레이션 간의 수행 전환이 이루어지는데 이와 같은 것을 수행모드 스위칭(excution mode switching)이라고 칭하며 이와 같은 수행모드 스위칭은 특정 조건이 만족되어질 때 (예를 든다면 회로내의 특정 레지스터에 특정 값이 두 번 쓰여지는 시점) 이루어질 수 있으며 이와 같은 조건을 수행모드 스위칭 조건이라 칭한다. 이와 같은 수행모드 스위칭 조건은 전체 검증 과정에서 시간적으로 전후 관계가 있는 2이상 될 수 있는데 이와 같은 경우에는 시간적으로 맨 처음에 설정된 조건에서부터 나중에 설정된 조건 순으로 나열된 상태에서 조건이 만족하는 시점에서 로직에뮬레이션에서 시뮬레이션으로 혹은 시뮬레이션에서 로직에뮬레이션으로의 수행모드 스위칭이 일어나게 된다. 이를 위해서는 수행모드 스위칭 조건들을 큐(queue)에 저장시켜 놓을 필요가 있는데 이를 수행모드 스위칭 조건 큐라고 칭한다.The present invention also refers to the mixed verification device incorporating the rapid prototyping device having the input / output probe function mentioned above and the simulator and the mixed verification method using the same. While the existing design verification device and method through logic emulation was only capable of fast functional verification of the design verification target circuit, the advantage of such a mixed verification device and the mixed verification method using the same is that whenever necessary on the verification time base It is possible to alternate between functional and timing verification. As a result, designers can perform fast functional verification during the verification process of the circuits they design to the point where accurate timing verification is required, and also reduce the verification time when accurate timing verification is required. It is possible to do that. Using a rapid prototyping device and a simulator capable of input and output probes of the present invention, such a high-speed functional verification and accurate timing verification can be performed several times in the verification process. That is, for example, from the beginning of verification to a specific time point A, the extended design verification target circuit in which the IOP-detection additional circuit is added to the design verification target circuit is placed on the prototyping engine of the rapid prototyping device capable of input / output probe of the present invention. The current state information of the design verification target circuit implemented on the prototyping engine using the output probe at the time point A and performing the fast functional verification by using the same. Simulation using a simulator on the server computer after reading the logical values of the flip-flops or latches) into the server computer and then using the current state information of the design verification target circuit at this point A as the initial state vector of the simulation. The timing verification proceeds from the time point A to another specific time point B. After timing verification is performed from time A to time B, the state information of the design verification target circuit at time B is transmitted from the simulator to the prototyping software of the server computer, and then transmitted to the prototyping engine through the input probe. An IOP-probe add-on circuit on the typing engine can be added to update the state information of the extended design-verification circuit, allowing fast functional verification with the rapid prototyping device from another point in time. The high speed functional verification using the prototyping engine and the accurate timing verification using the logic simulator can be repeatedly performed, which makes it possible to implement the rapid prototyping device and the input / output probe of the present invention. I / O probe method. In order to perform mixed verification as described above, performance switching between logic emulation and simulation is performed. Such operation is called execution mode switching. Such performance mode switching is performed when a specific condition is satisfied (for example, When a specific value is written twice in a specific register), such a condition is called a execution mode switching condition. The execution mode switching condition may be two or more times temporally related to the entire verification process. In such a case, logic emulation is performed at the point when the condition is satisfied in the order of the condition set first from the time set later. Run-to-simulation switching occurs from the simulation to the simulation or from the simulation to the logic emulation. To this end, it is necessary to store the execution mode switching conditions in a queue, which is called the execution mode switching condition queue.
도 11 은 RFPD 의 입출력단자에 접속된 1 이상의 출력탐침선과 1 이상의 입력탐침선이 있는 1 이상의 RFPD를 가지는 프로토타이핑 엔진과, 서버용 컴퓨터와, 프로토타이핑 시스템소프트웨어와, 중계모듈을 구비하여 입출력 탐침이 가능한 신속 프로토타이핑 장치와 시뮬레이터를 가지는 복합 검증 장치를 개략적으로 도시한 도면이다.11 is a prototyping engine having at least one output probe line connected to an input / output terminal of an RFPD and at least one RFPD having at least one input probe line, a server computer, a prototyping system software, and a relay module. A schematic illustration of a complex verification device with a rapid prototyping device and a simulator as possible.
도 12 는 본 발명의 일 실시예에 따른 타이밍 및 함수적 시간적 혼합 검증 방법을 단계별로 설명하는 흐름도로서, 도 11 에 도시된 서버용 컴퓨터 (20) 에 의해 수행된다.FIG. 12 is a flowchart for explaining step by step a method of timing and functional temporal mixing verification according to an embodiment of the present invention, which is performed by the server computer 20 shown in FIG.
제 100 단계에서 서버용 컴퓨터를 이용하여 설계검증 대상회로와 설계시 사용된 ASIC 벤더 라이브러리명을 입력한 후, 이를 이용하여 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상에 IOP-탐침용 부가회로가 부가된 확장된 설계검증 대상회로를 구현하기 위한 프로그래밍 패턴을 생성하여 이를 프로토타이핑 엔진 상의 RFPD에 다운로드하여 확장된 설계검증 대상회로가 프로토타이핑 엔진 상에 구현되게 함과 동시에, 서버용 컴퓨터에서 타이밍 시뮬레이터를 이용한 설계검증 대상회로의 타이핑 시뮬레이션의 수행을 준비한다 (S100). 제 102 단계에서 서버용 컴퓨터 (20)를 이용하여 타이밍 및 함수적 혼합 검증 대상이 되는 설계검증 대상회로에 대한 시초 상태 정보(state information: 회로내의 모든 메모리소자(플립플롭 또는 래치)들에 대한 값)를 입력하여 타이밍 시뮬레이터를 위한 타이밍 시뮬레이션용 회로와 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치를 위한 로직에뮬레이션용 회로의 현재 상태 정보를 시초 상태 정보와 같게 하고 검증 중간멈춤시점이나 멈춤조건을 결정하여 이를 현재의 검증 멈춤시점이나 멈춤조건으로 한다 (S102). 제 104 단계에서는 현재 상태 정보를 가지고 타이밍 검증을 수행할 것인지, 함수적 검증을 수행 할 것인지를 결정한다 (S104). 함수적 검증이 수행되는 경우에는 제 106 단계로 진행하여 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치를 이용하여 현재의 검증 멈춤시점이나 멈춤조건이 만족할때까지 함수적 검증을 진행한다 (S106). 제 108 단계에서 현재의 검증 멈춤시점이나 멈춤조건이 만족한 시점에서 검증의 수행을 중지하고 그 다음에 필요한 추가적인 검증이 필요한지를 조사한다. 추가적인 검증이 필요치 않으면 전체 검증 과정을 종료하고, 추가적인 검증이 필요한 경우에는 제 110 단계로 진행한다 (S108). 제 109 단계에서는 새로운 현재의 검증 멈춤시점이나 멈춤조건을 결정한다 (S109). 제 110 단계에서는 검증 방법의 전환이 필요한지를 조사한다 (S110). 검증 방법의 전환이 필요하지 않으면, 제 112 단계로 진행하여 현재의 검증 방법이 함수적 검증인지, 혹은 타이밍 검증인지를 조사한다 (S112). 현재의 검증 방법이 함수적 검증이면 제 106 단계로 진행하고, 타이밍 검증이면 제 120 단계로 진행한다. 제 104 단계에서 타이밍 검증이 수행되는 경우에는 제 120 단계로 진행하여 서버 컴퓨터 상의 타이밍 시뮬레이터를 이용하여 현재의 검증 멈춤시점이나 멈춤조건이 만족할때까지 타이밍 검증을 진행하고 제 108 단계로 진행한다 (S120). 제 110 단계에서 검증 방법의 전환이 필요하면 제 130 단계로 진행하여 검증 전환이 타이밍 검증에서 함수적 검증으로의 전환인지, 혹은 함수적 검증에서 타이밍 검증으로의 전환인지를 조사한다 (S130). 검증 전환이 타이밍 검증에서 함수적 검증으로의 전환이면, 제 132 단계로 진행하여 서버 컴퓨터 상에서 타이밍 시뮬레이션을 통하여 얻어진 현 검증 멈춤시점에서의 설계검증 대상회로의 현재 상태 정보를 프로토타이핑 엔진 상에 구현된 확장된 설계검증 대상회로가 똑 같이 가질 수 있도록 현재 본 발명의 입출력탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상의 RFPD들에 입력탐침을 수행하고 제 106 단계로 진행한다 (S132). 검증 전환이 함수적 검증에서 타이밍 검증으로의 전환이면, 제 134 단계로 진행하여 본 발명의 입출력 탐침이 가능한 신속프로토타이핑 장치의 프로토타이핑 엔진 상에 구현된 확장된 설계검증 대상회로에 대한 출력탐침을 통하여 얻어진 현 검증 멈춤시점에서의 설계검증 대상회로의 현재 상태 정보를 서버 컴퓨터 상의 타이밍 시뮬레이터에 의해 수행되고 있는 설계검증 대상회로가 똑 같이 가질 수 있도록 본 발명의 입출력탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상의 RFPD들에 출력탐침을 수행하고 제 120 단계로 진행한다 (S134). 도 13 은 본 발명의 또다른 일 실시예에 따른 시뮬레이션 및 에뮬레이션 혼합 검증 방법을 단계별로 설명하는 흐름도로서, 도 11 에 도시된 서버용 컴퓨터 (20) 에 의해 수행된다.In step 100, after inputting the design verification target circuit and the ASIC vendor library name used in the design using the server computer, the IOP probe is used on the prototyping engine of the rapid prototyping apparatus capable of input / output probe according to the present invention. A computer program for generating a programming pattern for implementing an extended design verification target circuit to which the additional design circuit is added and downloading it to the RFPD on the prototyping engine to implement the extended design verification target circuit on the prototyping engine. In step S100, a type simulation of a design verification target circuit using a timing simulator is prepared. Initial state information for a design verification target circuit which is a timing and functional mixed verification target using the server computer 20 in step 102 (values for all memory elements (flip-flops or latches) in the circuit) By inputting the current state information of the timing simulation circuit for the timing simulator and the logic emulation circuit for the rapid prototyping device capable of the I / O probe of the present invention as the initial state information and determining the verification stop time or stop condition This is the current verification stop time or stop condition (S102). In step 104, it is determined whether to perform timing verification or functional verification with the current state information (S104). When the functional verification is performed, the flow proceeds to step 106 and the functional verification is performed until the current verification stop time or the stop condition is satisfied using the rapid prototyping apparatus capable of the input / output probe of the present invention (S106). In step 108, the execution of the verification is stopped when the current verification stop time or the stop condition is satisfied, and then it is examined whether additional verification is required. If no additional verification is required, the entire verification process is ended, and if further verification is required, the flow proceeds to step 110 (S108). In step 109, a new current verification stop time or stop condition is determined (S109). In operation 110, it is examined whether switching of the verification method is necessary (S110). If it is not necessary to switch the verification method, the flow proceeds to step 112 and it is checked whether the current verification method is a functional verification or a timing verification (S112). If the current verification method is functional verification, the flow proceeds to step 106 and if the timing verification proceeds to step 120. When timing verification is performed in step 104, the flow proceeds to step 120, and the timing verification is performed until the current verification stop time or stop condition is satisfied using a timing simulator on the server computer (S120). ). If it is necessary to switch the verification method in operation 110, the process proceeds to operation 130 to determine whether the verification conversion is a transition from a timing verification to a functional verification or a transition from a functional verification to a timing verification (S130). If the verification transition is a transition from timing verification to functional verification, the flow proceeds to step 132 in which the current state information of the design verification target circuit at the current verification stop point obtained through timing simulation on the server computer is implemented on the prototyping engine. In step S132, the input probe is performed on the RFPDs on the prototyping engine of the rapid prototyping apparatus capable of the input / output probe of the present invention so that the extended design verification target circuit may have the same (S132). If the verification transition is a transition from functional verification to timing verification, the flow proceeds to step 134 where the output probe for the extended design verification target circuit implemented on the prototyping engine of the rapid prototyping apparatus capable of input / output probe of the present invention is obtained. The prototype of the rapid prototyping device capable of input / output probes according to the present invention so that the current state information of the design verification target circuit obtained by the current verification stop can be equally possessed by the design verification target circuit performed by the timing simulator on the server computer. The output probe is performed on the RFPDs on the typing engine and the process proceeds to step 120 (S134). FIG. 13 is a flowchart for explaining step by step a simulation and emulation mixing verification method according to another embodiment of the present invention, which is performed by the server computer 20 shown in FIG.
제 300 단계에서 서버용 컴퓨터를 이용하여 설계검증 대상 HDL 코드와 RFPD 벤더 라이브러리명을 입력한 후, 이를 이용하여 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상에 IOP-탐침용 부가회로의 행위를 표현하는 HDL 코드(이를 IOP-탐침용 HDL 부가 코드라 칭함)가 부가된 확장된 설계검증 대상 HDL 코드를 구현하기 위한 프로그래밍 패턴을 생성하여 이를 프로토타이핑 엔진 상의 RFPD에 다운로드하여 확장된 설계검증 대상 HDL 코드가 프로토타이핑 엔진 상에 구현되게 함과 동시에, 서버용 컴퓨터에서 시뮬레이터를 이용한 설계검증 대상 HDL 코드의 시뮬레이션의 수행을 준비한다 (S300). 제 302 단계에서 서버용 컴퓨터 (20)를 이용하여 시뮬레이션 및 에뮬레이션 혼합 검증 대상이 되는 설계검증 대상 HDL 코드에 대한 시초 상태 정보를 입력하여 시뮬레이터를 위한 시뮬레이션용 HDL 코드와 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치를 위한 로직에뮬레이션용 HDL 코드의 현재 상태 정보를 시초 상태 정보와 같게 하고 검증 중간멈춤시점이나 멈춤조건을 결정하여 이를 현재의 검증 멈춤시점이나 멈춤조건으로 한다 (S302). 제 304 단계에서는 현재 상태 정보를 가지고 시뮬레이션을 수행할 것인지, 에뮬레이션을 수행 할 것인지를 결정한다 (S304). 에뮬레이션이 수행되는 경우에는 제 306 단계로 진행하여 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치를 이용하여 현재의 검증 멈춤시점이나 멈춤조건이 만족할때까지 검증을 진행한다 (S306). 제 308 단계에서 현재의 검증 멈춤시점이나 멈춤조건이 만족한 시점에서 검증의 수행을 중지하고 그 다음에 필요한 추가적인 검증이 필요한지를 조사한다. 추가적인 검증이 필요치 않으면 전체 검증 과정을 종료하고, 추가적인 검증이 필요한 경우에는 제 310 단계로 진행한다 (S308). 제 309 단계에서는 새로운 현재의 검증 멈춤시점이나 멈춤조건을 결정한다 (S309). 제 310 단계에서는 검증 방법의 전환이 필요한지를 조사한다 (S310). 검증 방법의 전환이 필요하지 않으면, 제 312 단계로 진행하여 현재의 검증 방법이 에뮬레이션인지, 혹은 시뮬레이션인지를 조사한다 (S312). 현재의 검증 방법이 에뮬레이션이면 제 306 단계로 진행하고, 시뮬레이션이면 제 320 단계로 진행한다. 제 304 단계에서 시뮬레이션이 수행되는 경우에는 제 320 단계로 진행하여 서버 컴퓨터 상의 시뮬레이터를 이용하여 현재의 검증 멈춤시점이나 멈춤조건이 만족할때까지 검증을 진행하고 제 308 단계로 진행한다 (S320). 제 310 단계에서 검증 방법의 전환이 필요하면 제 330 단계로 진행하여 검증 전환이 시뮬레이션에서 에뮬레이션으로의 전환인지, 혹은 에뮬레이션에서 시뮬레이션으로의 전환인지를 조사한다 (S330). 검증 전환이 시뮬레이션에서 에뮬레이션으로의 전환이면, 제 332 단계로 진행하여 서버 컴퓨터 상에서 시뮬레이션을 통하여 얻어진 현 검증 멈춤시점에서의 설계검증 대상 HDL 코드의 현재 상태 정보를 프로토타이핑 엔진상에 구현된 확장된 설계검증 대상 HDL 코드가 똑 같이 가질 수 있도록 현재 본 발명의 입출력탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상의 RFPD들에 입력탐침을 수행하고 제 306 단계로 진행한다(S332). 검증 전환이 에뮬레이션에서 시뮬레이션으로의 전환이면, 제 334 단계로 진행하여 본 발명의 입출력 탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상에 구현된 확장된 설계검증 대상 HDL 코드에 대한 출력탐침을 통하여 얻어진 현 검증 멈춤시점에서의 설계검증 대상 HDL 코드의 현재 상태 정보를 서버 컴퓨터 상의 시뮬레이터에 의해 수행되고 있는 설계검증 대상 HDL 코드가 똑 같이 가질 수 있도록 본 발명의 입출력탐침이 가능한 신속 프로토타이핑 장치의 프로토타이핑 엔진 상의 RFPD들에 출력탐침을 수행하고 제 320 단계로 진행한다 (S334).After inputting the design verification target HDL code and RFPD vendor library name using the server computer in step 300, the IOP probe additional circuit on the prototyping engine of the rapid prototyping apparatus capable of input / output probe of the present invention using the same. An extended design by generating a programming pattern for implementing the extended design-verified HDL code with the added HDL code (called the HDL supplementary code for IOP-probe) representing the behavior of the code and downloading it to the RFPD on the prototyping engine. While the verification target HDL code is implemented on the prototyping engine, the server computer prepares to perform simulation of the design verification target HDL code using a simulator (S300). In step 302, using the server computer 20, input the initial state information of the design-verification target HDL code to be the simulation and emulation mixed verification target, the simulation HDL code for the simulator and the rapid prototyping of the input-output probe of the present invention The current state information of the HDL code for logic emulation for the typing device is made equal to the initial state information, and the verification intermediate stop time or stop condition is determined to be the current verification stop time or stop condition (S302). In step 304, it is determined whether to perform simulation or emulation with the current state information (S304). When the emulation is performed, the process proceeds to step 306 and the verification is performed until the current verification stop time or the stop condition is satisfied using the rapid prototyping apparatus capable of the input / output probe of the present invention (S306). In step 308, the execution of the verification is stopped when the current verification stop time or the stop condition is satisfied, and then it is examined whether additional verification is required. If no additional verification is required, the entire verification process is ended, and if further verification is required, the process proceeds to step 310 (S308). In step 309, a new current verification stop time or stop condition is determined (S309). In operation 310, it is examined whether switching of the verification method is necessary (S310). If it is not necessary to switch the verification method, the flow proceeds to step 312 to determine whether the current verification method is emulation or simulation (S312). If the current verification method is emulation, the method proceeds to step 306 and, if the simulation, proceeds to step 320. If the simulation is performed in step 304, the process proceeds to step 320, and the verification is performed until the current verification stop time or stop condition is satisfied using the simulator on the server computer (S320). If it is necessary to switch the verification method in operation 310, the flow proceeds to operation 330 to determine whether the verification conversion is a conversion from simulation to emulation or a conversion from emulation to simulation (S330). If the verification transition is a transition from simulation to emulation, the flow proceeds to step 332 in which the extended design implemented on the prototyping engine by presenting the current state information of the design target HDL code at the current verification stop point obtained through the simulation on the server computer. In order to have the same HDL code to be verified, input probes are performed on the RFPDs on the prototyping engine of the rapid prototyping apparatus capable of input / output probes of the present invention, and the flow proceeds to step 306 (S332). If the verification transition is a transition from emulation to simulation, the flow proceeds to step 334 and obtained through the output probe for the extended design verification target HDL code implemented on the prototyping engine of the rapid prototyping apparatus capable of input / output probe of the present invention. Prototyping of the rapid prototyping device capable of input / output probe of the present invention so that the current verification information of the design verification target HDL code at the time of the current verification stop has the same design verification target HDL code being performed by the simulator on the server computer. The output probe is performed on the RFPDs on the engine and the flow proceeds to step 320 (S334).
상술한 바와 같이, 본 발명에 따른 입출력 탐침이 가능한 신속 프로토타이핑 장치 및 그 탐침 방법에서는 설계된 디지털 회로의 효율적이며 신속한 설계 검증을 위하여 회로상의 모든 신호선들, 또는 HDL 코드상의 모든 시그널들을 대상으로 빠르게 입출력 탐침할 수 있는 신속 프로토타이핑 장치 및 이를 이용한 자동화된 검증방법을 제공하는 이점이 있다. 또한 이와 같은 입출력 탐침을 가능하게 하는 신속 프로토타이핑 장치를 시뮬레이터와 같이 사용하여 고속의 함수적 검증 및 정확한 타이밍 검증을 함께 가능하게 하는 타이밍 및 함수적 혼합 검증 장치 및 이를 이용한 자동화된 검증방법을 제공하는 이점이 있다.As described above, the rapid prototyping device and the probe method capable of input / output probes according to the present invention can quickly input / output all signal lines on a circuit or all signals on an HDL code for efficient and rapid design verification of a designed digital circuit. There is an advantage in providing a rapid prototyping device that can be probed and an automated verification method using the same. In addition, by using a rapid prototyping device that enables such an input / output probe as a simulator, it provides a timing and functional mixed verification device that enables high-speed functional verification and accurate timing verification together with an automated verification method using the same. There is an advantage.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정하여져야만 한다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the technical spirit of the present invention. Therefore, the technical scope of the present invention should not be limited to the contents described in the embodiments, but should be defined by the claims.
Claims (22)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000019740A KR20010006983A (en) | 1999-06-26 | 2000-04-11 | Rapid Prototyping Apparatus and Its Input/Output Probing Method, and Mixed Verification Method Using the Same |
KR1020010019104A KR20010098444A (en) | 2000-04-11 | 2001-04-02 | Input/Output Probing Method for Rapid Prototyping and Mixed Verification Method Using the Same |
KR1020010048417A KR100812938B1 (en) | 2000-04-11 | 2001-08-08 | Debugging Apparatus Using Both Very Large Scaled Digital System Realized in Hardware and Simulation, and Debugging Method For Verifying Ultra Large Design |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR19990026206 | 1999-06-26 | ||
KR1019990026206 | 1999-06-26 | ||
KR1020000019740A KR20010006983A (en) | 1999-06-26 | 2000-04-11 | Rapid Prototyping Apparatus and Its Input/Output Probing Method, and Mixed Verification Method Using the Same |
KR20010011587 | 2001-02-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20010006983A true KR20010006983A (en) | 2001-01-26 |
Family
ID=26637838
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000019740A KR20010006983A (en) | 1999-06-26 | 2000-04-11 | Rapid Prototyping Apparatus and Its Input/Output Probing Method, and Mixed Verification Method Using the Same |
KR1020010019104A KR20010098444A (en) | 2000-04-11 | 2001-04-02 | Input/Output Probing Method for Rapid Prototyping and Mixed Verification Method Using the Same |
KR1020010048417A KR100812938B1 (en) | 2000-04-11 | 2001-08-08 | Debugging Apparatus Using Both Very Large Scaled Digital System Realized in Hardware and Simulation, and Debugging Method For Verifying Ultra Large Design |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010019104A KR20010098444A (en) | 2000-04-11 | 2001-04-02 | Input/Output Probing Method for Rapid Prototyping and Mixed Verification Method Using the Same |
KR1020010048417A KR100812938B1 (en) | 2000-04-11 | 2001-08-08 | Debugging Apparatus Using Both Very Large Scaled Digital System Realized in Hardware and Simulation, and Debugging Method For Verifying Ultra Large Design |
Country Status (1)
Country | Link |
---|---|
KR (3) | KR20010006983A (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7222315B2 (en) | 2000-11-28 | 2007-05-22 | Synplicity, Inc. | Hardware-based HDL code coverage and design analysis |
US7213216B2 (en) | 2002-08-09 | 2007-05-01 | Synplicity, Inc. | Method and system for debugging using replicated logic and trigger logic |
US6904576B2 (en) | 2002-08-09 | 2005-06-07 | Synplicity, Inc. | Method and system for debugging using replicated logic |
KR100825811B1 (en) * | 2007-02-27 | 2008-04-29 | 삼성전자주식회사 | Semi-automatic inspection device for high speed inspection |
US7908574B2 (en) | 2007-05-09 | 2011-03-15 | Synopsys, Inc. | Techniques for use with automated circuit design and simulations |
US7984400B2 (en) | 2007-05-09 | 2011-07-19 | Synopsys, Inc. | Techniques for use with automated circuit design and simulations |
US7904859B2 (en) | 2007-05-09 | 2011-03-08 | Synopsys, Inc. | Method and apparatus for determining a phase relationship between asynchronous clock signals |
US8756557B2 (en) | 2007-05-09 | 2014-06-17 | Synopsys, Inc. | Techniques for use with automated circuit design and simulations |
JP5034955B2 (en) | 2008-01-08 | 2012-09-26 | 富士通株式会社 | Performance evaluation simulation apparatus, performance evaluation simulation method, and performance evaluation simulation program |
JP5200675B2 (en) * | 2008-06-11 | 2013-06-05 | 富士通株式会社 | SIMULATION DEVICE, SIMULATION METHOD, SIMULATION PROGRAM, AND COMPUTER-READABLE RECORDING MEDIUM CONTAINING THE PROGRAM |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841967A (en) * | 1996-10-17 | 1998-11-24 | Quickturn Design Systems, Inc. | Method and apparatus for design verification using emulation and simulation |
KR20000020291A (en) * | 1998-09-19 | 2000-04-15 | 양세양 | System prototyping apparatus and operation method thereof |
-
2000
- 2000-04-11 KR KR1020000019740A patent/KR20010006983A/en unknown
-
2001
- 2001-04-02 KR KR1020010019104A patent/KR20010098444A/en not_active Application Discontinuation
- 2001-08-08 KR KR1020010048417A patent/KR100812938B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20020069468A (en) | 2002-09-04 |
KR20010098444A (en) | 2001-11-08 |
KR100812938B1 (en) | 2008-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6701491B1 (en) | Input/output probing apparatus and input/output probing method using the same, and mixed emulation/simulation method based on it | |
US5581738A (en) | Method and apparatus for back-annotating timing constraints into simulation models of field programmable gate arrays | |
US5937179A (en) | Integrated circuit design system with shared hardware accelerator and processes of designing integrated circuits | |
US5801955A (en) | Method and apparatus for removing timing hazards in a circuit design | |
KR100483876B1 (en) | Semiconductor integrated circuit design and evaluation system | |
JPH06208602A (en) | Verification method of testable design rule | |
CN113255267B (en) | Reprogramming detection of timing violations in simulations using Field Programmable Gate Array (FPGA) | |
EP0508620A2 (en) | System for automatically determing the logical function of a circuit | |
KR100794916B1 (en) | Design Verification Device for Progressive Design Verification Using Emulation and Simulation and Design Verification Method Using the Same | |
KR20010006983A (en) | Rapid Prototyping Apparatus and Its Input/Output Probing Method, and Mixed Verification Method Using the Same | |
EP0410502B1 (en) | Method and apparatus for emulating interaction between application specific integrated circuit (asic) under development and target system | |
KR100710972B1 (en) | Mixed Verification Device capable of Mixed Emulation and Simulation and Mixed Verification Method Using the Same | |
US5802075A (en) | Distributed test pattern generation | |
KR100824503B1 (en) | Rapid input / output probe device, input / output probe method using the same, and mixed emulation / simulation method based on the same | |
Tomas et al. | SoC Scan-Chain verification utilizing FPGA-based emulation platform and SCE-MI interface | |
KR20010005459A (en) | Rapid Prototyping Apparatus Capable of Input/Output Probing and Its Probing Method, and Mixed Timing and Functional Verification Apparatus and Its Mixed Verification Method Using the Same | |
KR20010112017A (en) | Mixed Timing and Functional Verification Apparatus With Both Logic Simulator and Logic Emulator and Its Mixed Verification Method Using the Same | |
KR20010015053A (en) | Rapid Input/Output Probing Apparatus and Input/Output Probing Method Using the Same, and Mixed Emulation/Simulation Method Based on It | |
US11474844B1 (en) | Emulator synchronization subsystem with enhanced slave mode | |
WO2002001354A1 (en) | Rapid input/output probing apparatus and input/output probing method using the same, and mixed emulation/simulation method based on it | |
KR20000020291A (en) | System prototyping apparatus and operation method thereof | |
JP4347509B2 (en) | Emulation apparatus and control method thereof | |
Arribas Guerrero | Study and development of a real-time monitoring system for parametric experimental testbed | |
KR19990035745A (en) | Prototyping System and Control Method | |
JP3696302B2 (en) | Test vector generation method and generation apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20000411 |
|
PG1501 | Laying open of application | ||
PC1204 | Withdrawal of earlier application forming a basis of a priority claim |
Patent event date: 20000411 Comment text: Patent Application Patent event code: PC12041R01I |