[go: up one dir, main page]

KR100186445B1 - Program development device - Google Patents

Program development device Download PDF

Info

Publication number
KR100186445B1
KR100186445B1 KR1019960047644A KR19960047644A KR100186445B1 KR 100186445 B1 KR100186445 B1 KR 100186445B1 KR 1019960047644 A KR1019960047644 A KR 1019960047644A KR 19960047644 A KR19960047644 A KR 19960047644A KR 100186445 B1 KR100186445 B1 KR 100186445B1
Authority
KR
South Korea
Prior art keywords
data
gate
output signal
signal
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
KR1019960047644A
Other languages
Korean (ko)
Other versions
KR19980028542A (en
Inventor
심건
박병진
Original Assignee
구자홍
엘지전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구자홍, 엘지전자주식회사 filed Critical 구자홍
Priority to KR1019960047644A priority Critical patent/KR100186445B1/en
Publication of KR19980028542A publication Critical patent/KR19980028542A/en
Application granted granted Critical
Publication of KR100186445B1 publication Critical patent/KR100186445B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 프로그램 개발 장치에 관한 것으로 특히, 외부 기기의 역할을 수행 할 수 있는 기능을 내장함으로써 개발 장비와 타겟 보드없이 소프드웨어만으로 프로그램을 개발할 수 있도록 창안한 것이다. 이러한 본 발명은 레지스터 지정을 위한 신호를 출력하는 어드레스 복호 출력(201)과, 어드레스 복호 출력(201)의 출력 신호에 따라 해당 데이타를 저장하는 레지스터 블럭(202)과, 데이타의 값을 계수하는 데이타 계수 블럭(203)과, 상기 레지스터 블럭(202)의 출력 신호와 외부 데이타가 일치하는지 비교하는 데이타 비교 블럭(205)와, 이 데이타 비교 블럭(205) 및 상기 어드레스 복호 블럭(201)의 출력 신호를 입력으로 상기 데이타 계수 블럭(203)의 동작을 제어하고 인터럽트 요구를 하는 제어 블럭(204)과, 상기 제어 블럭(204)의 출력 비트를 상기 레지스터 블럭(202)의 출력 신호에 할당하여 비트 위치를 변환하는 데이타 복호 블럭(206)과, 이 데이타 복호 블럭(206)의 출력 신호를 외부 버스로 전송하는 데이타 출력부(207)와, 상기 레지스터 블럭(202), 데이타 계수 블럭(203) 및 제어 블럭(204)의 출력 신호를 내부 버스로 각기 전송하는 데이타 출력부(208∼210)로 구성한다.The present invention relates to a program development apparatus, and more particularly, it is possible to develop a program using only software without a development device and a target board by incorporating a function capable of performing a role of an external device. The present invention includes an address decoding output 201 for outputting a signal for designating a register, a register block 202 for storing the data in accordance with the output signal of the address decoding output 201, A data comparison block 205 for comparing whether the output signal of the register block 202 matches the external data or not and an output signal of the data comparison block 205 and the address decoding block 201, A control block 204 for controlling the operation of the data counting block 203 and requesting an interruption by inputting an output signal of the control block 204 to an output signal of the register block 202, A data output unit 207 for transferring an output signal of the data decoding block 206 to an external bus and a data output unit 207 for transferring the output signal of the data decoding block 206, And data output units 208 to 210 for transmitting the output signals of the control unit 203 and the control block 204 to the internal bus, respectively.

Description

프로그램 개발 장치Program development device

본 발명은 프로그램 개발에 관한 것으로 특히, 개발 장비와 타겟 보드없이 프로그램을 개발할 수 있도록 한 프로그램 개발 장치에 관한 것이다.The present invention relates to program development, and more particularly, to a program development apparatus capable of developing a program without development equipment and a target board.

종래에는 도1과 같은 개발 장비를 타켓 보드에 접속하여 실제로 보드를 동작시키면서 프로그램을 개발하였다.Conventionally, a development program as shown in FIG. 1 was connected to a target board and a program was actually developed while operating the board.

즉, 종래에는 개발 장비가 제공하는 소프트웨어에 의해 소프트웨어만으로도 확인할 수 있는 루틴에 대하여 시뮬레이션을 확인한 다음 타겟 보드를 접속하여 프로그램을 전체적으로 시뮬레이션한다.In other words, conventionally, a simulation is confirmed for a routine that can be confirmed by software only by software provided by a development device, and then the target board is connected to simulate the program as a whole.

이러한 과정에서 타겟 보드가 예상대로 동작하지 않으면 개발 장비가 제공하는소프트웨어를 이용하여 고장 위치를 찾아 고장 시점에서의 칩 내부의 제어 레지스터등의 값을 확인하면서 프로그램의 오류를 찾게 된다.If the target board does not operate as expected during this process, the software provided by the development equipment finds the fault location and checks the value of the control register in the chip at the time of failure to find the program error.

이 후, 모든 에러가 제거되고 타겟 보드가 제대로 동작하게 되면 타겟 보드에서 개발장비가 접속되었던 자리에 개발 장비 대신 실제 칩을 장착하면 된다.After all the errors have been removed and the target board is working properly, you can install the actual chip instead of the development equipment in the place where the development equipment is connected on the target board.

여기서, 실장된 칩의 프로그램은 개발 장비를 접속하여 개발한 프로그램이다.Here, the program of the mounted chip is a program developed by connecting the development equipment.

그러나, 종래 기술은 프로그램을 개발함에 있어서 프로세서에 대응하는 개발장비를 필요로 함과 아울러 실제 동작시키려는 타겟 보드를 모두 필요로 하는 단점이 있다.However, the conventional technology requires a development equipment corresponding to a processor in developing a program, and requires a target board to be actually operated.

즉, 프로세서의 측면에서 볼 때 타겟 보드는 프로세서가 구동하거나 프로세서를 구동하는 기기로서, 이 기기와 프로세서간의 동작은 어드레스와 데이타를 송수신하며 그 동기는 프로세서의 인터럽트 관련 회로를 통해 이루어진다.That is, from the viewpoint of the processor, the target board is a device that is driven by a processor or a processor. The operation between the device and the processor transmits and receives addresses and data, and the synchronization is performed through an interrupt related circuit of the processor.

그러므로, 실제 프로세서의 프로그램에서 타겟 보드를 위해 고려하는 것은 인터럽트를 통한 데이타의 교환이 잘 이루어질 수 있느냐 하는 것이다.Therefore, considering the target board in the program of the actual processor, it is possible to exchange the data through the interruption well.

여기서, 데이타의 의미 분석은 독립 루틴으로서 타겟 보드와 관계없이 개발될 수 있으므로 결국, 타겟 보드와의 연결 상태에서 프로그램을 개발한다는 것은 프로세서와 타겟 보드간의 통신이 잘 이루어지는가를 확인하는 것이다.Since the semantic analysis of data can be developed independently of the target board as an independent routine, developing a program in a state of being connected to the target board finally confirms whether communication between the processor and the target board is well performed.

따라서, 프로세서내에 외부기기와의 통신이 잘 이루어질 수 있는지를 확인할 수 있는 기능을 추가한다면 굳이 프로그램 개발 단계에서 종래의 방식대로 개발장비와 타겟 보드를 연결한 상태로 프로그램을 개발할 필요가 없다.Therefore, if a function for checking whether communication with an external device is well performed is added to the processor, it is not necessary to develop a program in a state of connecting the development device and the target board in a conventional manner at the program development stage.

단지, 에뮬레이션할 수 있는 소프트웨어만 제공되면 프로그램을 개발할 수 있고 개발을 위해 사용하였던 프로세서의 동작 모드만 실제 동작 모드로 바꾸어 실장하면 된다.If only emulation software is provided, the program can be developed, and only the operation mode of the processor used for development can be changed to the actual operation mode.

따라서, 본 발명은 종래의 단점을 개선하기 위하여 외부 기기의 역할을 수행할 수 있는 기능을 내장함으로써 개발 장비와 타켓 보드없이 소프트웨어만으로 프로그램을 개발할 수 있도록 창안한 프로그램 개발 장치를 제공함에 목적이 있다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a program development apparatus capable of developing a program using only software without development equipment and a target board by incorporating a function capable of performing a role of an external device in order to overcome the disadvantages of the related art.

즉, 본 발명은 타겟 보드를 제거하는 대신에 외부 기기 자체를 하나의 인터럽트 소스로 보고 기존 프로세서의 주변 블럭을 외부 기기처럼 액세스할 수 있도록 하는 기능을 추가하거나 전용으로 외부 기기를 대용할 수 있는 주변 블럭을 추가하여 설계하는 것이다.That is, instead of removing the target board, the present invention can be implemented by adding a function that allows the external device itself to be regarded as a single interrupt source and allowing the peripheral blocks of the existing processor to be accessed as external devices, It is designed by adding blocks.

도1은 통상적인 프로그램 개발 장비를 보인 예시도.1 is an exemplary diagram showing a typical program development equipment.

도2는 본 발명의 실시를 위한 개념도.2 is a conceptual diagram for carrying out the present invention;

도3은 본 발명의 실시예를 보인 블럭도.3 is a block diagram showing an embodiment of the present invention.

도4는 도3에서 어드레스 복호 블럭의 회로도.FIG. 4 is a circuit diagram of an address decoding block in FIG. 3; FIG.

도5는 도3에서 레지스터 블럭의 구성도.FIG. 5 is a block diagram of a register block in FIG. 3; FIG.

도6은 도4에서 레지스터의 상세 구성도.FIG. 6 is a detailed block diagram of a register in FIG. 4; FIG.

도7은 도3에서 데이타 계수 블럭의 구성도.FIG. 7 is a block diagram of a data coefficient block in FIG. 3; FIG.

도8은 도7에서 타이머의 상세 구성도.FIG. 8 is a detailed block diagram of the timer in FIG. 7; FIG.

도9는 도8에서 증분기의 상세 구성도.FIG. 9 is a detailed block diagram of the incremental branching in FIG. 8; FIG.

도10은 도3에서 데이타 비교 블럭의 구성도.FIG. 10 is a block diagram of a data comparison block in FIG. 3; FIG.

도11은 도3에서 데이타 복호 블럭의 구성도.FIG. 11 is a block diagram of a data decoding block in FIG. 3; FIG.

도12는 도3에서 제어 블럭의 구성도.FIG. 12 is a block diagram of a control block in FIG. 3; FIG.

도13은 본 발명에서 각 레지스터의 라이트를 보면 타이밍도.FIG. 13 is a timing chart showing the writing of each register in the present invention. FIG.

도14는 본 발명에서 각 레지스터의 리드를 보인 타이밍도.Fig. 14 is a timing chart showing leads of respective registers in the present invention. Fig.

도15는 본 발명에서 비트(CM1)가 '0'인 경우 계수 동작을 보인 파형도.15 is a waveform diagram showing a counting operation when the bit CM1 is '0' in the present invention.

도16은 본 발명에서 비트(CM1)가 '1'인 경우 동작 명령에 따른 파형도.16 is a waveform diagram according to an operation command when the bit CM1 is '1' in the present invention.

도17은 본 발명에서 비트(CM1)가 '1'인 경우 오버플로어에 따른 파형도.17 is a waveform diagram according to an overflow when the bit CM1 is '1' in the present invention.

도18은 본 발명에서 비트(CM1)가 '1'인 경우 클리어에 따른 파형도.18 is a waveform diagram according to the clearance when the bit CM1 is '1' in the present invention.

도19는 본 발명에서 비트(CM1)(CM0)가 '1'인 경우 계수 동작에 따른 파형도.FIG. 19 is a waveform diagram according to the counting operation when bit CM1 (CM0) is '1' in the present invention. FIG.

도20은 본 발명에서 비트(CM1)(CM0)가 '1'인 경우 오버플로어에 따른 파형도.FIG. 20 is a waveform diagram according to an overflow when bit CM1 (CM0) is '1' in the present invention.

도21은 본 발명에서 비트(CM1)(CM0)가 '1'인 경우 클리어에 따른 파형도.FIG. 21 is a waveform diagram according to clearance when bit CM1 (CM0) is '1' in the present invention. FIG.

* 도면의 주요부분에 대한 부호의 설명DESCRIPTION OF THE REFERENCE NUMERALS

201 : 어드레스 복호 블럭 202 : 레지스터 블럭201: address decoding block 202:

203 : 데이타 계수 블럭 204 : 제어 블럭203: Data coefficient block 204:

205 : 데이타 비교 블럭 206 : 데이타 복호 블럭205: Data comparison block 206: Data decryption block

207∼210 : 데이타 출력부 211 : 데이타 계수 제어부207 to 210: Data output unit 211: Data coefficient control unit

본 발명은 상기의 목적을 달성하기 위하여 내부 어드레스를 복호하여 레지스터 지정을 위한 신호(ex-mod, dev, clr, run, stop, id, tcnt, tcon)를 출력하는 어드레스 복호 블럭과, 이 어드레스 복호 블럭의 출력 신호(ex-mod, dev, clr, run, stop, id)중 해당 신호에 인에이블되어 라이트 신호에 따라 내부 데이타를 저장하여 출력하는 레지스터 블럭과, 상기 어드레스 복호 블럭의 출력 신호(tcnt)에 인에이블되어 라이트 신호에 따라 내부 데이타를 계수하여 계수값을 출력하며 오버 플로어 발생을 검출하는 데이타 계수 블럭과, 외부 데이타와 상기 레지스터 블럭의 출력 신호를 비교하여 그 비교 결과를 출력하는 데이타 비교 블럭과, 상기 어드레스 복호 블럭의 출력신호(tcon)에 인에이블되어 외부 데이타와 상기 데이타 비교 블럭의 출력 신호를 연산함에 의해 런-비트(run-bit) 및 인터럽트 요구 신호(int-rq)를 출력하는 제어 블럭과, 이 제어 블럭의 출력 신호(run-bit)와 클럭(ck)을 논리 조합하여 상기 데이타 계수 블럭에 클럭을 출력하는 데이타 계수 제어부와, 상기 레지스터 블럭의 출력 신호(bd)와 상기 제어 블럭의 출력 신호(tcon)를 논리 조합하여 복호하는 데이타 복호 블럭과, 상기 제어 블럭의 출력 신호(mod-emu)와 상기 데이타 비교 블럭의 출력 신호(dev-rd)가 하이인 경우 상기 데이타 복호 블럭의 출력 신호(tcon-e)를 외부 버스로 전송하는 제1데이타 출력부와, 리드 신호와 상기 어드레스 복호 블럭의 출력 신호(dev)가 하이인 경우 상기 제어 블럭의 출력 데이타 내부 버스로 전송하는 제4데이타 출력부와, 리드 신호와 상기 어드레스 복호 블럭의 출력 신호(ex-mdd, dev, clr, run, stop, id)중 해당 신호가 하이이면 상기 레지스터 블럭의 출력 데이타중 해당 데이타를 내부 버스로 전송하는 제2데이타 출력부와, 리드 신호와 상기 어드레스 복호 블럭의 출력신호(tcnt)가 하이이면 상기 데이타계수 블럭의 출력 데이타를 내부 버스로 전송하는 제3데이타 출력부로 구성한다.In order to achieve the above object, the present invention provides an address decoding circuit for decoding an internal address and outputting a signal (ex-mod, dev, clr, run, stop, id, tcnt, tcon) A register block which is enabled by the corresponding one of the output signals ex-mod, dev, clr, run, stop and id of the block and stores and outputs the internal data according to the write signal; ) For counting internal data according to a write signal to output a count value and detecting occurrence of an overflow, a data comparison block for comparing the output data of the external data and the register block and outputting the comparison result And a run-bi (run-bi) block, which is enabled by an output signal (tcon) of the address decoding block and which computes an output signal of the external data and the data comparison block, and outputs a clock to the data counting block by logically combining an output signal (run-bit) of the control block and a clock (ck) A data decode block for logically combining the output signal bd of the register block and the output signal tcon of the control block and for outputting the output signal mod-emu of the control block and the output (Tcon-e) of the data decoding block to the external bus when the signal (dev-rd) is high, and a second data output unit for transmitting the read signal (dev) A fourth data output unit for transmitting the output signal of the control block to the internal bus of the control block if the corresponding signal of the read signal and the output signals ex-mdd, dev, clr, run, The register block A second data output unit for transmitting corresponding data out of the output data to the internal bus; a third data transfer unit for transferring the output data of the data coefficient block to the internal bus when the read signal and the output signal tcnt of the address decoding block are high, And an output unit.

이하, 본 발명을 도면에 의거 상세히 설명하면 다음과 같다.Hereinafter, the present invention will be described in detail with reference to the drawings.

본 발명의 실시예는 동작, 정지, 클리어의 경우에 대하여 설명하기로 한다.Embodiments of the present invention will be described in the case of operation, stop, and clear.

본 발명의 실시예는 도3에 도시한 바와 같이, 내부 어드레스(addr~in[7:0]))를 복호하여 레지스터 지정을 위한 신호(ex-mod, dev, clr, run, stop, id, tcnt, tcon)를 출력하는 어드레스 복호 블럭(201)과, 이 어드레스 복호 블럭(201)의 출력 신호(ex-mod, dev, clr, run, stop, id, tcnt, tcon)를 입력받아 해당 신호에 인에이블되어 라이트 신호(wr)에 따라 내부 데이타(in[7:0])를 저장하여 해당 데이타를 출력하는 레지스터 블럭(202)과, 상기 어드레스 복호 블럭(201)의 출력 신호(tcnt)에 인에이블되어 라이트 신호(wr)에 따라 내부 데이타(in[7:0])를 계수하고 오버 플로어 발생을 검출하는 데이타 계수 블럭(203)과, 외부 데이타(ex-data[7:0])와 상기 레지스터 블럭(202)의 출력 신호(dev, id, stop, clr, run)를 비교하여 그 비교 결과를 출력하는 데이타 비교 블럭(2O5)과, 상기 어드레스 복호 블럭(201)의 출력 신호(tcon)에 인에이블되어 외부 데이타(ex-data[7:0]))와 상기 데이타 비교 블럭(205)의 출력 신호를 연산함에 의해 런-비트(run-bit) 및 인터럽트 요구 신호(int-rq)를 출력하는 제어 블럭(204)과, 이 제어 블럭(204)의 출력 신호(run-bit)와 클럭(ck)을 논리곱하여 상기 데이타 계수 블럭(203)에 클럭(cck)을 출력하는 데이타 계수 제어부(211)과, 상기 레지스터 블럭(202)의 출력 신호(bd[7:0]))를 디멀티플렉싱하여 상기 제어 블럭(204)의 출력 신호(tcon[3:0])와 논리 조합하여 복호하는 데이타 복호 블럭(206)과, 상기 제어 블럭(204)의 출력 신호(mod-emu)와 상기 데이타 비교 블럭(205)의 출력 신호(dev-rd)가 하이일 때 상기 데이타 복호 블럭(206)의 출력 신호(tcon-e[7:0])를 외부 버스로 전송하는 데이타 출력부(207)과, 리드 신호(rd-in)과 상기 어드레스 복호 블럭(201)의 출력 신호(dev)가 하이인 경우 상기 제어 블럭(204)의 출력 신호(out[3:0])를 내부 버스로 전송하는 데이타 출력부(210)과. 리드 신호(rd-in)와 상기 어드레스 복호 블럭(201)의 출력 신호(ex-mod, dev, clr, run, stop, id)중 해당 신호가 하이이면 상기 레지스터 블럭(202)의 출력 신호중 해당 신호를 내부 버스로 전송하는 데이타 출력부(208)과, 리드 신호(rd-in)와 상기 어드레스 복호 블럭(201)의 출력 신호(tcnt)가 하이이면 상기 데이타 계수 블럭(203)의 출력 신호(out-bus[7:0]))를 내부 버스로 전송하는 데이타 출력부(209)로 구성한다.The embodiment of the present invention decodes the internal address (addr ~ in [7: 0]) and outputs signals (ex-mod, dev, clr, run, tcnt and tcon) of the address decoding block 201 and the output signals of the address decoding block 201 A register block 202 which is enabled and stores internal data in [7: 0] according to the write signal wr and outputs corresponding data; Data 7 [0: 0]), which is generated by counting the internal data in [7: 0] according to the write signal wr and detecting the overflow occurrence, A data comparison block 205 for comparing the output signals (dev, id, stop, clr, run) of the register block 202 and outputting the comparison result; (Run-bit) and an interrupt request signal int (int) by operating the output signal of the data comparison block 205 and the external data ex-data [7: 0] a control block 204 for outputting a clock signal ck to the data control block 203 by logically multiplying the output signal run-bit of the control block 204 and the clock ck (Tcon [3: 0]) of the control block 204 and a logical combination of the output signal bd [7: 0] of the register block 202 and the logical sum When the output signal mod-emu of the control block 204 and the output signal dev-rd of the data comparison block 205 are high, the data decoding block 206 A data output section 207 for transmitting the output signal tcon-e [7: 0] of the address decoder block 206 to the external bus; a data output section 207 for outputting the read signal rd- High in The right control block 204, the output signal of the (out [3: 0]) to the data output sent to the internal bus 210 and. When the corresponding one of the read signal rd-in and the output signals ex-mod, dev, clr, run, stop and id of the address decoding block 201 is high, And a data output unit 208 for outputting the output signal out of the data block 203 when the read signal rd-in and the output signal tcnt of the address decoding block 201 are high, -bus [7: 0])) to the internal bus.

상기 어드레스 복호 블럭(201)은 도4에 도시한 바와 같이, 내부 어드레스(addr[7])를 반전하는 인버터(220)과, 이 인버터(220)의 출력 신호와 내부 어드레스(addr[3:0]))를 논리합하는 오아 게이트(221)과, 내부 어드레스(addr[6:4])를 입력받아 복호하는 3*8 디코더(222)와, 상기 오아 게이트(221)의 출력 신호와 상기 3*8 디코더(222)의 출력 신호를 각기 노아링하여 레지스터 지정 신호(ex-mod, dev, clr, run, stop, id, tcnt, tcon)를 각기 출력하는 노아게이트(223∼230)로 구성한다.4, the address decoding block 201 includes an inverter 220 for inverting the internal address addr [7], and an output terminal for receiving the output signal of the inverter 220 and the internal address addr [3: 0 ]), A 3 * 8 decoder 222 for receiving and decoding the internal address addr [6: 4], and a 3 * 8 decoder 222 for decoding the output signal of the above- And the NOR gates 223 to 230 output the register designation signals ex-mod, dev, clr, run, stop, id, tcnt and tcon respectively.

상기 레지스터 블럭(202)은 도5에 도시한 바와 같이, 라이트 신호(wr)와 어드레스 복호 블럭(201)의 각각의 출력 신호(ex-mod, dev, clr, run, stop, id)를 각기 낸딩하는 낸드 게이트(231∼236)와, 이 낸드 게이트(231∼236)의 각각의 출력 신호를 클럭으로 내부 데이타(data-in[7:0]))를 각기 래치하는 레지스터(237∼242)로 구성한다.The register block 202 outputs the write signal wr and the output signals ex-mod, dev, clr, run, stop and id of the address decoding block 201, respectively, NAND gates 231 to 236 and the registers 237 to 242 for latching the internal data (data-in [7: 0]) of the output signals of the NAND gates 231 to 236 as clocks .

상기 레지스터(237∼242)는 도6에 도시한 바와 같이, 라이트 신호(wr)를 클럭으로 내부 데이타(data-in[7:0])의 각 비트를 각기 래치하는 디플립플롭(243∼250)으로 각기 구성한다.As shown in FIG. 6, the registers 237 to 242 are provided with D flip-flops 243 to 250 for latching respective bits of internal data (data: in [7: 0]) by using the write signal wr as a clock Respectively.

상기 데이타 계수 블럭(203)은 도7에 도시한 바와 같이, 어드레스 복호 블럭(201)의 출력 신호(tcnt)와 라이트 신호(wr)를 논리곱하는 앤드 게이트(251)과, 이 앤드 게이트(251)의 출력 신호에 인에이블되어 데이타 계수 제어부(211)의 출력 신호(cck)에 따라 내부 데이타(data-in[7:0])의 각 비트를 각기 계수하는 타이머(252∼259)와, 이 타이머(252∼259)의 출력 신호를 입력으로 하여 증분 연산을 수행함에 의해 그 결과값을 상기 타이머(252∼259)에 출력하는 증분기(incrementor)(260)과, 상기 타이머(252∼259)의 출력 신호를 낸딩하여 오버플로어 신호(t-ov)를 출력하는 낸드 게이트(279)로 구성한다.7, the data counting block 203 includes an AND gate 251 for ANDing the output signal tcnt of the address decoding block 201 and the write signal wr, Timers 252 to 259 which are enabled by the output signal of the data count control section 211 and count each bit of the internal data (data-in [7: 0]) according to the output signal cck of the data count control section 211, An incrementor 260 for performing an incremental operation on the output signals of the timers 252 to 259 and outputting the result to the timers 252 to 259, And a NAND gate 279 for outputting the overflow signal (t-ov) by nANDing the output signal.

상기 타이머(252∼259)는 도8에 도시한 바와 같이, 데이타 계수 제어부(211)의 출력 신호(cck)에 따라 증분기(260)의 출력 신호를 래치하는 디플립플롭(261)과,입력 비트(bit-in)과 라이트 신호(wr)를 낸딩하여 상기 디플립플롭(261)을 세트 시키는 낸드 게이트(262)과, 입력 비트(bit-in)를 반전하는 인버터(263)와, 이 인버터(263)의 출력 신호와 상기 라이트 신호(wr)를 낸딩하여 상기 디플립플롭(261)을 리셋시키는 낸드 게이트(264)로 구성한다.8, the timers 252 to 259 each include a D flip-flop 261 for latching the output signal of the increment 260 according to the output signal cck of the data coefficient control unit 211, A NAND gate 262 for setting the D flip-flop 261 by nipping a bit-in and a write signal wr, an inverter 263 for inverting an input bit (bit-in) And a NAND gate 264 for resetting the D flip-flop 261 by nANDing the output signal of the NAND gate 263 and the write signal wr.

상기 증분기(incrementor)(260)는 도9에 도시한 바과 같이, 최하위 비트 데이타(data-in[0])를 반전하여 데이타(out[0])를 출력는 인버터(265)과, 비트 데이타(data-in[0][1])를 배타적 논리합하여 데이타(out[1])를 출력하는 배타적 오아 게이트(266)과, 비트 데이타(data-in[0][1])를 논리곱하는 앤드 게이트(267)과, 이 앤드 게이트(267)의 출력 신호과 비트 데이타(data-in[2])를 배타적 논리합하여 데이타(out[2])를 출력하는 배타적 오아 게이트(268)과, 비트 데이타(data-in[2])와 상기 앤드 게이트(267)의 출력 신호를 논리곱하는 앤드 게이트(269)과, 이 앤드 게이트(269)의 출력 신호와 비트 데이타(data-in[3])를 배타적 논리합하여 데이타(out[3]) 출력하는 배타적 오아 게이트(270)과, 비트 데이타(data-in[3])과 상기 앤드 게이트(269)의 출력 신호를 논리곱하는 앤드 게이트(271)과, 이 앤드 게이트(271)의 출력 신호와 비트 데이타(data-in[4])를 배타적 논리합하여 데이타(out[4])를 출력하는 배타적 오아 게이트(272)과, 비트 데이타(data-in[3])과 상기 앤드 게이트(271)의 출력 신호를 논리곱하는 앤드 게이트(273)과, 이 앤드 게이트(273)의 출력 신호와 비트 데이타(data-in[5])를 배타적 논리합하여 데이타(out[5])를 출력하는 배타적 오아 게이트(274)와, 비트 데이타(data-in[5])와 상기 앤드 게이트(273)의 출력 신호를 논리곱하는 앤드 게이트(275)와, 이 앤드 게이트(275)의 출력 신호와 비트 데이타(data-in[6])를 배타적 논리합하여 데이타(out[6])를 출력하는 배타적 오아 게이트(276)와, 비트 데이타(data-in[6])와 상기 앤드 게이트(275)의 출력 신호를 논리곱하는 앤드 게이트(277)와, 이 앤드 게이트(277)의 출력 신호와 비트 데이타(data-in[7])를 배타적 논리합하여 데이타(out[7])를 출력하는 배타적 오아 게이트(278)로 구성한다.The incrementer 260 includes an inverter 265 for inverting the least significant bit data (data-in [0]) and outputting data out [0] an exclusive OR gate 266 for exclusive-ORing data-in [0] [1] and outputting data out [1], and an AND gate 266 for logically multiplying bit data An exclusive OR gate 268 for exclusive-ORing the output signal of the AND gate 267 and the bit data (data-in [2]) to output the data out [2] an AND gate 269 for logically multiplying the output signal of the AND gate 267 by the AND gate 269 and an output signal of the AND gate 267 and an output signal of the AND gate 269 by performing an exclusive OR operation on the bit data (data-in [3] An AND gate 271 for logically multiplying the output signal of the AND gate 269 with the exclusive OR gate 270 outputting the data out [3], the bit data (data-in [3] (271) An exclusive OR gate 272 for exclusive-ORing the output signal of the AND gate 271 and the bit data (data-in [4]) to output the data out [4] An AND gate 273 that logically multiplies the output signal of the AND gate 271 and an output signal of out [5] by performing an exclusive OR operation on the output signal of the AND gate 273 and the bit data (data-in [5] An AND gate 275 which logically multiplies the output signal of the AND gate 273 with the exclusive OR gate 274 and the output data of the AND gate 275, an exclusive OR gate 276 for performing exclusive OR operation on the data-in [6] and outputting the data out [6] And outputs the data out [7] by performing an exclusive OR operation on the output signal of the AND gate 277 and the bit data (data-in [7]) RTI ID = 0.0 > 278 < / RTI >

상기 데이타 비교 블럭(205)은 도10에 도시한 바와 같이, 어드레스(addr[7:0])와 레지스터 블럭(202)의 출력 신호(dev[7:0])를 배타적 노아링하는 배타적 노아 게이트(280)와, 이 배타적 노아 게이트(280)의 출력 신호(dev-com[7:0])를 논리곱 하는 앤드 게이트(285)과, 라이트 신호(wr)와 상기 앤드 게이트(285)의 출력 신호를 논리곱하여 인에이블 신호(dev-en)를 출력하는 앤드 게이트(290)과, 리드 신호(rd)와 상기 앤드 게이트(285)의 출력 신호를 논리곱하여 신호(dev-rd)를 출력하는 앤드 게이트(291)과, 어드레스(addr[7:0])과 레지스터 블럭(202)의 출력 신호(id[7:0])를 배타적 노아링하는 배타적 노아 게이트(281)과, 이 배타적 노아 게이트(281)의 출력 신호(id-com[7:0])를 논리곱하는 앤드 게이트(286)과, 데이타(data-in[7:0])과 상기 레지스터 블럭(202)의 출력 신호(stop[7:0])를 배타적 노아링하는 배타적 노아 게이트(282)과, 이 배타적 노아 게이트(282)의 출력 신호(stop-com[7:0])를 논리곱하는 앤드 게이트(287)와, 데이타(data-in[7:0])과 상기 레지스터 블럭(202)의 출력 신호(run[7:0])를 배타적 노아링하는 배타적 노아 게이트(283)와, 이 배타적 노아 게이트(283)의 출력 신호(run-com[7:0])를 논리곱하는 앤드 게이트(288)와, 데이타(data-in[7:0])와 상기 레지스터 블럭(202)의 출력 신호(clr[7:0])를 배타적 노아링하는 배타적 노아 게이트(284)와, 이 배타적 노아 게이트(284)의 출력 신호(clr-com[7:0])를 논리곱하는 앤드 게이트(289)과, 라이트 신호(wr)와 상기 앤드 게이트(286)(287)의 출력 신호를 낸딩하여 신호(stop-ins)를 출력하는 낸드 게이트(292)와, 라이트 신호(wr)과 상기 앤드 게이트(286)(288)의 출력 신호를 낸딩하여 신호(run-ins)를 출력하는 낸드 게이트(293)와, 라이트 신호(wr)와 상기 앤드 게이트(286)(289)의 출력 신호를 낸딩하여 신호(clr-ins)를 출력하는 낸드 게이트(294)로 구성한다.The data comparison block 205 is an exclusive NOR gate that exclusively performs noirring on the address addr [7: 0] and the output signal dev [7: 0] of the register block 202, An AND gate 285 for logically multiplying the exclusive OR gate 280 and the output signal dev-com [7: 0] of the exclusive NOR gate 280, and an AND gate 285 for outputting the write signal wr and the output of the AND gate 285 An AND gate 290 for outputting an enable signal (dev-en) by logically multiplying the signal by the AND gate 285 and an AND gate 290 for outputting a signal (dev-rd) by logarithmically multiplying the output signal of the AND gate 285 with the read signal rd An exclusive NOR gate 281 for exclusive NORing the gate 291 and the output signals id [7: 0] of the address addr [7: 0] and the register block 202, An AND gate 286 for logically multiplying the output signal id-com [7: 0] of the register block 281 by the AND gate 286 and the output signal stop [7: 0] of the register block 202 : 0]) to the exclusive Noah Ling An AND gate 287 which logically multiplies the exclusive NOR gate 282 with the output signal (stop-com [7: 0]) of the exclusive NOR gate 282 and the AND gate 287 with data (data-in [ An exclusive NOR gate 283 for exclusive NORing the output signal run [7: 0] of the register block 202 and an exclusive NOR gate 283 for outputting the output signal run-com [7: 0] of this exclusive NOR gate 283. [ And an exclusive NOR gate 284 for exclusive-NORing the data (data-in [7: 0]) and the output signal clr [7: 0] of the register block 202, An AND gate 289 which logically multiplies the output signal clr-com [7: 0] of the exclusive NOR gate 284 and an AND gate 288 which outputs the output signal of the write signal wr and the AND gate 286 A NAND gate 292 for outputting a signal (run-ins) by nANDing an output signal of the write signal wr and the AND gate 286 (288) A gate 293, a write signal wr, And a NAND gate 294 for outputting the signal clr-ins by nANDing the output signal of the AND gates 286 and 289.

상기 제어 블럭(204)은 도12에 도시한 바와 같이, 라이트 신호(wr)와 어드레스 복호 블럭(201)의 출력 신호(tcon)을 낸딩하는 낸드 게이트(320)와, 레지스터 블럭(202)의 출력 신호(bd[2:0])에 따라 내부 데이타(data-in[7:0])중 하나를 선택하는 멀티플렉서(321)의, 이 멀티플렉서(321)의 출력 신호와 내부 데이타(data-in[0])중 하나를 선택하는 제1스위치(322)와, 데이타 비교 블럭(205)의 출력 신호(dev-en)를 반전하는 인버터(323)과, 이 인버터(323)의 출력 신호와 상기 낸드 게이트(320)의 출력 신호중 하나를 선택하는 제2스위치(324)와, 데이타 계수 블럭(203)의 출력신호(t-ov)를 클럭으로 하여 하이 신호(Vdd)를 래치하는 디플립플롭(325)과, 이 디플립플롭(325)의 반전 출력 신호를 반전하여 인터럽트 요구 신호(int-rq)를 출력하는 인버터(326)와, 상기 낸드 게이트(320)의 출력 신호를 클럭으로 하여 내부 데이타(data-in[2])를 래치하는 디플립플롭(327)과, 이 디플립플롭(327)의 반전 출력 신호를 반전하여 모드 신호(mod-emu)를 출력하는 인버터(328)과, 상기 낸드 게이트(320)의 출력 신호를 클럭으로하여 내부 데이타(data-in[1])를 래치하는 디플립플롭(329)과, 상기 스위치(324)의 출력 신호를 클럭으로 하여 상기 스위치(322)의 출력 신호를 래치하는 디플립플롭(330)과, 이 디플립플롭(330)의 반전 출력 신호를 반전하여 런-비트 신호(run-bit)로 출력하는 인버터(331)와, 상기 디플립플롭(329)의 반전 출력 신호를 반전하는 인버터(332)와, 이 인버터(332)의 출력 신호와 상기 디플립플롭(327)의 비반전 출력 신호(out[2])를 논리곱하여 상기 스의치(322)(324)에 절환 신호를 출력하는 앤드 게이트(333)과, 디플립플롭(327)의 출력 신호(out[2])와 디플립플롭(329)의 반전 출력 신호를 논리곱하는 앤드 게이트(343)과, 레지스터 블럭(202)의 출력 신호(bd[5:3])에 따라 내부 데이타(data-in[7:0])중 하나를 출력하는 멀티플렉서(334)와, 이 멀티플렉서(334)의 출력 신호와 내부 데이타(data-in[3])중 하나를 선택하는 스위치(335)의, 이 스위치(335)의 출력 신호를 반전하는 인버터(336)과, 이 인버터(336)의 출력 신호와 스위치(324)의 출력 신호를 노아링하는 노아 게이트(337)와, 리셋 신호(rst)와 상기 노아 게이트(337)의 출력 신호를 낸딩하는 낸드 게이트(338)과, 이 낸드 게이트(338)의 출력 신호와 상기 앤드 게이트(339)의 출력 신호를 논리합하여 디플립플롭(325)을 세트 시키는 오아 게이트(339)와, 상기 스위치(324)(335)의 출력 신호를 논리합하는 오아 게이트(340)와, 이 오아 게이트(340)의 출력 신호와 리셋 신호(rst)를 논리곱하는 앤드 게이트(341)와, 상기 앤드 게이트(343)의 출력 신호에 따라 상기 앤드 게이트(341)의 출력 신호와 데이타 비교 블럭(205)의 출력 신호(clr)중 하나를 선택하여 상기 디플립플롭(325)을 리셋시키는 스위치(342)와, 상기 데이타 비교 블럭(205)의 출력 신호(run)를 반전하는 인버터(334)와, 이 인버터(344)의 출력 신호, 리셋 신호(rst), 상기 디플립플롭(327)의 출력 신호(out[2]) 및 디플립플롭(329)의 반전 출력 신호를 낸딩하여 디플립플롭(330)을 세트시키는 낸드 게이트(345)와, 상기 데이타 비교 블럭(205)의 출력 신호(stop)를 반전하는 인버터(346)와, 이 인버터(346)의 출력 신호와 상기 디플립플롭(327)의 비반전 출력 신호 및 상기 디플립플롭(329)의 반전 출력 신호를 낸딩하는 낸드 게이트(347)와, 이 낸드 게이트(347)의 출력 신호와 리셋 신호(rst)를 논리곱하여 상기 디플립플롭(330)을 리셋시키는 앤드게이트(348)를 포함하여 구성한다.12, the control block 204 includes a NAND gate 320 for nailing the write signal wr and the output signal tcon of the address decoding block 201, and an output of the register block 202 Of the multiplexer 321 that selects one of the internal data (data-in [7: 0]) according to the signal bd [2: 0] 0]), an inverter 323 for inverting the output signal (dev-en) of the data comparison block 205, and a second switch 322 for selecting one of the output signal of the inverter 323 and the NAND A second switch 324 for selecting one of the output signals of the gate 320 and a D flip-flop 325 for latching the high signal Vdd by using the output signal t-ov of the data- An inverter 326 for inverting the inverted output signal of the D flip-flop 325 and outputting an interrupt request signal int-rq; Flop 327 for latching the internal data (data-in [2]) with the inverted output signal of the flip-flop 327 and an inverter 328 for inverting the inverted output signal of the flip- A D flip-flop 329 for latching internal data (data-in [1]) by using the output signal of the NAND gate 320 as a clock; An inverter 331 for inverting the inverted output signal of the D flip-flop 330 and outputting the inverted output signal as a run-bit signal (run-bit), a D flip-flop 330 for latching the output signal of the switch 322, An inverter 332 for inverting the inverted output signal of the D flip-flop 329 and a non-inverted output signal out [2] of the D flip flop 327 by logarithmically multiplying the output signal of the inverter 332 An AND gate 333 for outputting a switching signal to the swashes 322 and 324 and an AND gate 333 for outputting the inverted output signal of the D flip flop 329 and the output signal out [ A multiplexer 334 for outputting one of internal data (data-in [7: 0]) according to an AND gate 343 which is logically multiplied and an output signal bd [5: 3] of the register block 202, An inverter 336 for inverting the output signal of the switch 335 of the switch 335 for selecting one of the output signal of the multiplexer 334 and the internal data (data-in [3] A reset signal rst and a NAND gate 338 for outputting an output signal of the NOR gate 337 and a reset signal rst for resetting the output signal of the switch 324, An OR gate 339 which performs an OR operation between the output signal of the NAND gate 338 and the output signal of the AND gate 339 to set the D flip flop 325; An AND gate 341 for logically multiplying the output signal of the gate 340 and the reset signal rst, A switch 342 for selecting one of the output signal of the AND gate 341 and the output signal clr of the data comparison block 205 according to the output signal of the AND gate 343 and resetting the D flip flop 325, An inverter 334 for inverting the output signal run of the data comparison block 205 and an output signal rst of the inverter 344 and an output signal of the D flip- a NAND gate 345 for inverting the output signal of the D flip-flop 329 and outputting the inverted output signal of the D flip-flop 329 to set the D flip-flop 330; A NAND gate 347 for outputting an output signal of the inverter 346 and a non-inverted output signal of the D flip flop 327 and an inverted output signal of the D flip flop 329; An AND gate 348 for ANDing the output signal of the NAND gate 347 and the reset signal rst to reset the D flip-flop 330, And comprising.

상기 데이타 복호 블럭(206)은 도11에 도시한 바와 같이, 레지스터 블럭(202)의 출력 신호(bd[2:0], bd[5:3])를 각기 디코딩하는 디코더(301)(302)와, 제어블럭(204)의 출력 신호(tcon[3], tcon[0])를 각기 반전하는 인버터(303)(304)와, 이 인버터(303)(304)의 출력 신호와 상기 디코더(301)(302)의 출력 신호를 논리연산하여 신호(tcon-e[7:0])의 각 비트를 출력하는 논리 회로(305∼312)로 구성한다.The data decoding block 206 includes decoders 301 and 302 for decoding the output signals bd [2: 0] and bd [5: 3] of the register block 202, respectively, Inverters 303 and 304 for inverting the output signals tcon [3] and tcon [0] of the control block 204, respectively, and an inverter 303 for inverting the output signals of the inverters 303 and 304 and the decoders 301 And logic circuits 305 to 312 for logically operating the output signal of each of the transistors tcon-e [7: 0].

상기 논리 회로(305∼312)는 디코더(301)의 출력 신호와 인버터(303)의 출력 신호를 논리합하는 제1오아 게이트와, 디코더(302)의 출력 신호와 인버터(304)의출력 신호를 논리합하는 제2오아 게이트와, 상기 제1, 제2오아 게이트의 출력 신호를 낸딩하여 신호(tcon-e)를 출력하는 낸드게이트로 각기 구성한다.The logic circuits 305 to 312 include a first OR gate for performing an OR operation between the output signal of the decoder 301 and the output signal of the inverter 303, And a NAND gate for outputting the signal tcon-e by nANDing the output signals of the first and second gates.

상기 데이타 출력부(207)는 제어 블럭(204)의 출력 신호(mod-emu)와 데이타 비교블럭(205)의 출력 신호(dev-rd)를 논리곱하는 앤드 게이트(368)과, 이 앤드 게이트(368)의 출력 신호가 하이인 경우 데이타 디코딩 블럭(206)의 출력 신호(tcon-e[7:0])를 전송하는 버퍼(369)로 구성한다.The data output unit 207 includes an AND gate 368 for logically multiplying the output signal mod-emu of the control block 204 and an output signal dev-rd of the data comparison block 205, And a buffer 369 for transmitting the output signal tcon-e [7: 0] of the data decoding block 206 when the output signal of the data decoding block 368 is high.

상기 데이타 출력부(208)는 리드 신호(rd-in)과 어드레스 복호 블럭(201)의 출력 신호(clr, run, stop, id, ex-mod, dev)를 각기 논리곱하는 앤드 게이트(351∼356)와, 이 앤드 게이트(351∼356)의 각각의 출력 신호가 하이인 경우 레지스터 블럭(202)의 각각의 출력 신호를 전송하는 버퍼(359∼364)로 구성한다.The data output unit 208 includes AND gates 351 to 356 that logically multiply the read signal rd-in and the output signals clr, run, stop, id, ex-mod and dev of the address decoding block 201 And buffers 359 to 364 for transmitting the respective output signals of the register block 202 when the output signals of the AND gates 351 to 356 are high.

상기 데이타 출력부(209)는 리드 신호(rd-in)와 어드레스 복호 블럭(201)의 출력 신호(tcnt)를 논리곱하는 앤드 게이트(357)과, 이 앤드 게이트(357)의 출력 신호가 하이인 경우 데이타 계수 블럭(202)의 출력 신호(out[7:0])를 전송는 버퍼(365)로 구성한다.The data output unit 209 includes an AND gate 357 for logically multiplying the read signal rd-in and an output signal tcnt of the address decoding block 201, The transmission of the output signal out [7: 0] of the data counting block 202 is constituted by the buffer 365.

상기 데이타 출력부(210)는 리드 신호(rd-in)와 어드레스 복호 블럭(201)의 출력 신호(tcon)를 논리곱하는 앤드 게이트(358)과, 이 앤드 게이트(358)의 출력 신호가 하이인 경우 제어 블럭(204)의 출력 신호(out[3:0])를 내부 버스로 전송하는 버퍼(367)와, 상기 앤드 게이트(358)의 출력 신호가 하이인 경우 접지 신호를 출력 신호(out[7:0])로 하여 내부 버스에 전송하는 버퍼(366)로 구성한다.The data output unit 210 includes an AND gate 358 for logically multiplying the read signal rd-in and an output signal tcon of the address decoding block 201, A buffer 367 for transmitting the output signal out [3: 0] of the control block 204 to the internal bus; a buffer 367 for outputting the ground signal as the output signal out [3: 0] when the output signal of the AND gate 358 is high; 7: 0]) and transmits the buffer 366 to the internal bus.

상기 데이타 계수 제어부(211)는 클럭(ck)과 제어 블럭(204)의 출력 신호(run-bit)를 논리곱하여 데이타 계수 블럭(203)에 클럭(ck)를 출력하는 앤드 게이트로 구성한다.The data count control unit 211 comprises an AND gate for logically multiplying the clock signal ck by the output signal of the control block 204 and outputting the clock signal ck to the data count block 203.

이와같이 구성한 본 발명의 실시예에 대한 동작 및 작용 효과를 설명하면 다음과 같다.The operation and operation of the embodiment of the present invention will be described as follows.

통상적으로 프로세서가 기기를 제어하는 방법은 2가지가 있다.There are usually two ways in which a processor can control a device.

첫번째는 기기 자체내에 제어 레지스터를 갖고 있는 형태로서 제어 레지스터의 각 비트가 제어의 의미를 갖는 경우이고, 두번째는 제어 레지스터의 한 워드가 제어의 의미를 갖는 경우이다.The first is a form having a control register in the device itself, where each bit of the control register has the meaning of control, and the second is a case where one word of the control register has the meaning of control.

본 발명에서는 2가지의 경우를 모두 설명하기로 한다.In the present invention, both cases will be described.

도2는 본 발명의 실시예를 의한 개념적인 블럭도로서, MNSDP, MNSTOP, MNRUN, MNCLEAR는 상기의 두번째 경우를 구현하기 위한 레지스터이고, MSDP, MSBP는 첫번째 경우를 구현하기 위한 레지스터이다.2 is a conceptual block diagram according to an embodiment of the present invention, wherein MNSDP, MNSTOP, MNRUN, and MNCLEAR are registers for implementing the second case, and MSDP and MSBP are registers for implementing the first case.

그리고, MCMT는 8비트-카운터이며 MCON은 MCMT를 제어하는 레지스터이다.The MCMT is an 8-bit counter and the MCON is a register for controlling the MCMT.

상기의 레지스터 및 카운터는 모두 8비트 데이타의 리드/라이트가 가능하다.The above registers and counters can read / write 8-bit data.

여기서, 소정의 동작을 위한 카운터를 동작시키기 위하여 run, stop, clear 플래그만을 고려한다.Here, only the run, stop and clear flags are considered in order to operate the counter for a predetermined operation.

상기의 각 레지스터의 동작은 다음과 같다.The operation of each of the above registers is as follows.

MNSDP : 레지스터의 값은 기기의 어드레스를 의미한다.MNSDP: The value of the register means the address of the device.

MNSTOP : 레지스터의 값은 기기의 동작을 정지시키는 명령 데이타를 의미한다.MNSTOP: The value of the register means command data to stop the operation of the device.

MNRUN : 레지스터의 값은 기기를 동작시키는 명령 데이타를 의미한다.MNRUN: The value of register means command data to operate the device.

MNCLEAR : 레지스터의 값은 기기의 인터럽트 플래그를 클리어시키는 명령 데이타를 의미한다.MNCLEAR: The value of the register means the instruction data to clear the device's interrupt flag.

MSDP : 레지스터의 값은 기기의 어드레스를 의미한다.MSDP: The value of the register means the address of the device.

MSBP : 실제 시스템에 연결할 기기의 제어 레지스터와 본 발명에서의 제어 레지스터(MCON)의 비트 맵이 일치하도록 하는 역할을 한다.MSBP: It plays a role of making the bit map of the control register (MCON) of the present invention coincide with the control register of the device to be connected to the actual system.

즉, 첫번째 경우에서 실제 시스템에 연결할 기기의 제어 레지스터와 본 발명에서의 제어 레지스터(KCON)는 비트 맵이 서로 다를수 있으므로 이를 같도록 만들어 주는 역할을 MSBP 가 수행한다.That is, in the first case, the control register of the device to be connected to the actual system and the control register (KCON) of the present invention perform the role of making the bit map different from each other and thus making the same.

이러한 역할의 레지스터(MSBP)는 6번째 비트부터 4번째 비트(r2, r1,r0)는 런(run) 비트의 위치를 나타내고 3번째 비트부터 1번째 비트(f2, f1, f0)는 플래그 비트의 위치를 나타낸다.The register (MSBP) of this role indicates the position of the run bit from the 6th bit to the 4th bit (r2, r1, r0) and the 3rd bit to the 1st bit (f2, f1, f0) Position.

이러한 레지스터(MSBP)의 비트는 기기의 제어 레지스터의 비트에 의해 결정되며, 프로세서를 8비트로 가정하고 있으므로 제어 레지스터의 비트마다 이 레지스터(MSBP)는 3개의 비트를 필요로 하게 된다.Since the bits of this register (MSBP) are determined by the bits of the control register of the device and the processor is assumed to be 8 bits, this register (MSBP) requires three bits for each bit of the control register.

실시예에서 기기의 제어 레지스터가 런(run) 비트와 플래그 비트로만 구성되어 있다고 가정하고, 레지스터(MSBP)에 각각 3비트씩 6비트를 할당하면 6번째 비트부터 4번째 비트(r2, r1,r0)는 런(run) 비트의 위치를 나타내고 3번째 비트부터 1번째 비트(f2, f1, f0)는 플래그 비트의 위치를 나타낸다.Assuming that the control register of the device is constituted only by run bits and flag bits in the embodiment, if 6 bits are allocated to the registers MSBP by 3 bits each, 6th to 4th bits (r2, r1, r0 ) Indicates the position of the run bit, and the third bit to the first bit (f2, f1, f0) indicate the position of the flag bit.

이 레지스터(MSBP)의 비트6과 비트7은 아무런 의미가 없다.Bit 6 and bit 7 of this register (MSBP) have no meaning.

만일, 레지스터(MSBP)가 'f2, fl, f0, r2, r1, r0 = 101110'과 같이 세팅되어 있다면 레지스터(MSDP)의 값과 같은 어드레스를 액세스할 때 외부 데이타 버스에 실린 데이타의 비트6 은 제어 레지스터의 런(run) 비트를 의미하고 비트5 는 플래그 비트를 의미한다.If the register (MSBP) is set to 'f2, fl, f0, r2, r1, r0 = 101110', bit 6 of the data on the external data bus when accessing the same address as the value of register MSDP Means the run bit of the control register, and bit 5 means the flag bit.

MCMT : 8비트 카운터 레지스터로서, 클럭에 동기되어 제어 레지스터(MCON)의 값에 따라 계수 동작을 수행하거나 계수 동작을 중지한다.MCMT: An 8-bit counter register that performs counting operations in accordance with the value of the control register (MCON) in synchronization with the clock or stops the counting operation.

실시예에서 카운터(MCMT)는 업-카운트 동작을 수행하며 오버플로어가 발생하는 경우 플래그를 '1'로 세팅한다.In the embodiment, the counter MCMT performs an up-count operation and sets the flag to '1' when an overflow occurs.

MCON : 카운터(MCMT)를 제어하는 레지스터로서, 4번째 비트부터 1번째 비트에 CF, CM1, CM0, CR이 할당된다.MCON: A register for controlling the counter (MCMT). CF, CM1, CM0, CR are assigned to the first to first bits.

CR : '1'인 경우 카운터(MCMT)가 계수 동작을 수행한다.If CR: '1', the counter (MCMT) performs the counting operation.

CF : 카운터(MCMT)에서 오버플로어가 발생했을때 '1'이 된다.CF: Set to '1' when an overflow occurs in the counter (MCMT).

CM1 : '0'일 때 제어 레지스터(MCON)는 내부 엑세스만이 가능하다.When CM1: '0', only the internal access of the control register (MCON) is possible.

'1'일 때 제어 레지스터(MCON)는 내,외부 액세스가 모두 가능하다.When set to '1', the control register (MCON) can be accessed both internally and externally.

CMO : '0'일 때 기기의 두번째 제어 형태로서 레지스터(MCON)가 제어될 수 있다.CMO: When set to '0', the register (MCON) can be controlled as the second control type of the device.

'1'일 때 기기의 첫번째 제어 형태로서 레지스터(MCON)가 제어될 수 있다.'1', the register (MCON) can be controlled as the first control type of the device.

상기와 같은 기능을 갖는 레지스터로 이루어진 도2의 블럭에 대한 동작을 설명하면 다음과 같다.The operation of the block of FIG. 2 having the above-described functions will now be described.

제어 레지스터(MCON)의 비트(CM1)이 '0'일 때 그 제어 레지스터(MCON)는 내부 데이타 버스로만 액세스가 가능하게 된다. 즉, 외부 기기에서 본 발명의 장치를 사용할 수 없게 된다.When the bit (CM1) of the control register (MCON) is '0', its control register (MCON) becomes accessible only to the internal data bus. That is, the apparatus of the present invention can not be used in an external apparatus.

만일, 제어 레지스터(MCON)의 비트(CMl)이 '1'이고 비트(CMO)가 '1'인 첫번째 제어 형태라면 본 발명의 장치는 레지스터(MSDP)의 값을 어드레스로 하는 외부 기기처럼 동작한다.If the control CMON of the control register MCON is '1' and the bit CMO is of the first control type, the device of the present invention acts as an external device addressed to the value of the register MSDP .

즉, 외부 기기로 라이트하는 명령을 수행하면 외부 버스에 실려 있는 데이타는 레지스터(MSBP)의 세팅 여부에 따라 디코더(DEC)를 통해 제어 레지스터(MCON)에 라이트된다.That is, when an instruction to write data to an external device is performed, data loaded on the external bus is written to the control register MCON through the decoder DEC depending on whether the register MSBP is set or not.

이 후, 리드 명령에서는 제어 레지스터(MCON)의 데이타가 레지스터(MSBP)의 세팅에 따라 비트가 변환되어 외부 데이타 버스에 실리게 된다.After that, in the read command, the data of the control register (MCON) is converted into bits according to the setting of the register (MSBP) and put on the external data bus.

그리고, 제어 레지스터(MCON)의 비트(CM1)가 '1'이고 비트(CM0)가 '0'인 두번째 제어 형태라면 본 발명의 장치는 레지스터(MCON)의 값을 어드레스로 하는 외부기기처럼 동작한다.And, if the bit CM1 of the control register MCON is '1' and the bit CM0 is the second control type, the device of the present invention acts as an external device addressed by the value of the register MCON .

이때, 외부 기기에 동작(run) 명령을 데리고 싶으면 해당 어드레스에 대응하는레지스터(MNRUN)에 저장되어 있는 값과 같은 데이타를 외부 버스를 통해 라이트한다.At this time, if it is desired to take a run command to the external device, the same data as the value stored in the register (MNRUN) corresponding to the address is written through the external bus.

이에, 비교기(ACOMP1)를 통해 어드레스와 데이타가 비교되어 일치하면 제어 레지스터(MCON)의 비트(CR)는 '1'이 되어 카운터(MCMT)가 계수 동작을 시작한다.Accordingly, when the address and data are compared and compared through the comparator ACOMP1, the bit CR of the control register MCON becomes '1', and the counter MCMT starts the counting operation.

이후, 카운터(MCMT)의 계수 동작을 정지시키려는 경우 해당 어드레스에 대응하는 레지스터(MNSTOP)에 저장되어 있는 값과 같은 데이타를 라이트하면 제어 레지스터(MCON)의 비트(CR)는 '0'이 된다.When the counting operation of the counter MCMT is to be stopped, the bit CR of the control register MCON is set to '0' by writing data equal to the value stored in the register MNSTOP corresponding to the corresponding address.

또한, 레지스터(MNCLEAR)의 저장값과 같은 데이타를 라이트하면 제어 레지스터(MCON)의 비트(CF)는 '0'이 된다.In addition, when data such as the stored value of the register MNCLEAR is written, the bit CF of the control register MCON becomes '0'.

이 후, 제어 레지스터(MCON)의 비트(CF)가 인터럽트 요구 신호가 '1'이 되어 인터럽트를 요구한다.Thereafter, the bit CF of the control register MCON is set to '1' to request an interrupt.

상기와 같은 동작을 수행하는 블럭을 하드웨어로 구현한 실시예는 도3과 같으며, 이의 동작은 다음과 같다.An embodiment in which the block performing the above-described operation is implemented by hardware is shown in FIG. 3, and the operation thereof is as follows.

어드레스 복호 블럭(201)은 내부 어드레스(addr[7:0])를 복호하여 레지스터지정을 위한 신호(clr, run, stop, tcnt, id, tcon, ex-mod, dev)를 출력하는데, 상기 내부 어드레스(addr[7:0])의 값에 의해 하나의 신호만이 '1'로 인에이블된다.The address decoding block 201 decodes the internal address addr [7: 0] and outputs signals (clr, run, stop, tcnt, id, tcon, ex-mod, dev) for register designation. Only one signal is enabled to '1' by the value of the address addr [7: 0].

이때, 레지스터 블럭(202)은 라이트 신호(wr)가 하이로 인에이블되고 어드레스 복호 블럭(201)의 출력 신호(clr, run, stop, tcnt, id, tcon, ex-mod, dev)중 해당 신호가 인에이블되면 내부 데이타(data-in[7:0])를 입력받아 해당 데이타를 저장하게 된다.At this time, in the register block 202, the write signal wr is enabled to the high level and the corresponding one of the output signals clr, run, stop, tcnt, id, tcon, ex-mod, dev of the address decoding block 201 (7: 0]) is received, the corresponding data is stored.

예를 들어, 어드레스 복호 블럭(201)의 출력 신호(id)가 '1'인 경우 레지스터 블럭(202)은 내부 어드레스(data-in[7:0])를 입력받아 데이타(id[7:0])를 저장하게 된다.For example, when the output signal id of the address decoding block 201 is '1', the register block 202 receives the internal address data-in [7: 0] ]).

그리고, 데이타 비교 블럭(205)은 외부 어드레스(ex-addr[7:0])가 레지스터블럭(202)의 출력 신호(dev[7:0]),(id[7:0])과 각기 일치하는지 비교하고, 외부 데이타(ex-data[7:0])가 상기 레지스터 블럭(202)의 출력 신호(stop[7:0]), run[7:0], clr[7:0])와 각기 일치하는지 비교하게 된다.The data comparison block 205 compares the external address ex-addr [7: 0] with the output signals dev [7: 0] and id [7: 0] of the register block 202 7: 0], clr [7: 0]) of the register block 202 and the output signals (stop [7: 0] And compare them to each other.

이에 따라, 어드레스(ex-addr[7:0])와 레지스터 블럭(202)의 출력 신호(dev[7:0])가 일치하면 라이트 신호(rd)가 '1'인 경우 신호(dev-rd)를 제어 블럭(204)에 출력하고 리드 신호(wr)가 '1'인 경우 신호(dev-en)를 상기 제어 블럭(204)에 출력하게 된다.Thus, when the address signal ex-addr [7: 0] coincides with the output signal dev [7: 0] of the register block 202, the signal dev- To the control block 204 and outputs the signal dev-en to the control block 204 when the read signal wr is '1'.

그리고, 외부 어드레스(ex-addr[7:0])와 레지스터 블럭(202)의 출력 신호(id[7:0])가 일치할 때 외부 데이타(ex-data[7:0])와 상기 레지스터 블럭(202)의 출력 신호(stop[7:0], run[7:0], clr[7:0])가 각기 일치하는 경우 라이트 신호(wr)가 '1'이면 신호(stop-ins, run-ins, clr-ins)를 제어 블럭(204)에 출력하게 된다.When the external data ex-data [7: 0] and the output signal id [7: 0] of the register block 202 are identical to each other, If the output signals stop [7: 0], run [7: 0], clr [7: 0] of the block 202 match each other and the write signal wr is' run-ins, clr-ins) to the control block 204.

따라서, 제어 블럭(204)은 레지스터 블럭(202)의 출력 신호(bd[7:0])과 데이타 비교 블럭(205)의 출력 신호(dev-en, dev-rd, stop-ins, run-ins, clr-ins)를 입력으로 하여 데이타 계수 블럭(203)의 동작을 위한 런-비트(run-bit)를 출력하고 상기 데이타 계수 블럭(203)에서 오버플로어가 발생하면 인터럽트 요구 신호(int-rq)를 출력하게 된다.Therefore, the control block 204 outputs the output signals bd [7: 0] of the register block 202 and the output signals dev-en, dev-rd, stop- and outputs a run-bit for operation of the data counting block 203. When an overflow occurs in the data counting block 203, an interrupt request signal int-rq ).

또한, 제어 블럭(204)은 연산 동작을 통해 런-비트(CR), 플래그 비트(CF) 및 모드 비트(CM1)(CM0)를 출력하게 된다.Further, the control block 204 outputs a run-bit (CR), a flag bit (CF) and a mode bit (CM1) (CM0) through a calculation operation.

한편, 데이타 계수 블럭(203)은 어드레스 복호 블럭(201)의 출력 신호(tCMt)와 라이트 신호(wr)가 '1'이면 데이타 계수 제어부(211)가 클럭(ck)와 제어 블럭(204)의 출력 비트(run-bit)를 논리곱함에 의한 계수 클럭(cck)에 따라 내부 데이타(data-in[7:0])를 계수하며, 만일 오버플로어가 발생하면 오버플로어 검출 신호(t-ov)를 제어 블럭(204)에 전송하게 된다.On the other hand, when the output signal tCMt and the write signal wr of the address decoding block 201 are '1', the data coefficient control block 211 outputs the clock signal ck and the control block 204 Counts the internal data (data-in [7: 0]) according to the coefficient clock cck by ANDing the output bit and if the overflow occurs, the overflow detection signal t- To the control block 204.

그리고, 데이타 복호 블럭(206)은 레지스터 블럭(202)의 출력 신호(bd[7:0])와 제어 블럭(204)의 출력 신호(out[3:0])를 입력받아 플래그 비트(CF)와 런-비트(CR)인 상기 신호(out[3], out[0])를 상기 신호(bd[7:0])에 할당함에 의해 비트의 위치를 변환하게 된다.The data decode block 206 receives the output signal bd [7: 0] of the register block 202 and the output signal out [3: 0] of the control block 204, And assigns the signal (out [3], out [0]) which is a run-bit CR to the signal bd [7: 0].

따라서, 데이타 출력부(207)는 제어 블럭(204)의 출력 신호(mod-emu)와 데이타 비교 블럭(205)의 출력신호(dev-rd)가 '1'이 되면 앤드게이트(368)의 출력신호가 '1'이 되어 버퍼(369)가 동작하므로 데이타 복호 블럭(206)의 출력 신호(tcon-e[7:0)를 외부 버스로 전송하게 된다.Accordingly, when the output signal mod-emu of the control block 204 and the output signal dev-rd of the data comparison block 205 are '1', the data output unit 207 outputs the output of the AND gate 368 E [7: 0] of the data decoding block 206 is transmitted to the external bus because the signal is '1' and the buffer 369 operates.

그리고, 데이타 출력부(208)는 리드 신호(rd-in)과 어드레스 디코딩 블럭(201)의 출력 신호(clr, run, stop, id, ex-mod, dev)가 '1'이 되면 앤드 게이트(351∼356)의 출력 신호가 각기 '1'이 되어 버퍼(359∼364)가 각기 동작하므로 레지스터 블럭(202)의 출력 신호(bd[7:0], dev[7:0], clr[7:0], run[7:0], stop[7:0], id[7:0]이)를 각기 내부 버스로 전송하게 된다.When the read signal rd-in and the output signals clr, run, stop, id, ex-mod, and dev of the address decoding block 201 are '1', the data output unit 208 outputs an AND gate The output signals bd [7: 0], dev [7: 0], and clr [7: 0] of the register block 202 are set to "1" : 0], run [7: 0], stop [7: 0], id [7: 0].

또한, 데이타 출력부(209)는 리드 신호(rd-in)과 어드레스 복호 블럭(201)의 출력 신호(tcnt)가 '1'인 경우 앤드 게이트(357)의 출력 신호가 '1'이 되어 버퍼(365)가 데이타 계수 블럭(203)의 출력 신호(out[7:0])를 내부 버스로 전송하게 된다.When the read signal rd-in and the output signal tcnt of the address decoding block 201 are '1', the data output unit 209 outputs '1' to the output signal of the AND gate 357, (7 [0: 0]) of the data coefficient block 203 to the internal bus.

그리고, 데이타 출력부(210)는 리드 신호(rd-in)과 어드레스 복호 블럭(201)의 출력 신호(tcon)가 '1'이 되어 앤드 게이트(358)의 출력 신호가 '1'이 되면 버퍼(367)가 제어 블럭(204)의 출력 신호(out[3:0])를 내부 버스로 전송하고 버퍼(366)가 접지 신호를 출력 신호(out[7:4])로 하여 내부 버스에 전송하게 된다.When the read signal rd-in and the output signal tcon of the address decoding block 201 become '1' and the output signal of the AND gate 358 becomes' 1 ', the data output unit 210 outputs a' The buffer 366 transmits the output signal out [3: 0] of the control block 204 to the internal bus and the buffer 366 transfers the ground signal to the internal bus as the output signal out [7: 4] .

상기와 같은 동작을 수행하는 각 블럭의 동작을 도4 내지 도12를 참조하여 설명하면 다음과 같다.The operation of each block performing the above operation will be described with reference to FIG. 4 to FIG. 12.

도4과 같은 어드레스 복호 블럭(201)은 다음과 같은 동작을 수행한다.The address decoding block 201 shown in FIG. 4 performs the following operation.

먼저, 내부 어드레스(addr-in[7:0])가 입력되면 3*8 디코더(222)가 어드레스(addr-in[6:4])를 복호하여 각각의 비트를 노아 게이트(223∼230)에 출력하고, 오아게이트(221)가 어드레스(addr-in[7])가 입력된 인버터(220)의 출력 신호와 어드레스(addr-in[3:0)를 논리합하여 상기 노아게이트(223∼230)에 출력하게 된다.First, when the internal address addr-in [7: 0] is input, the 3 * 8 decoder 222 decodes the address addr-in [6: 4] and outputs each bit to the NOR gate 223-230. And the OR gate 221 performs a logical AND operation on the output signal of the inverter 220 to which the address addr-in [7] is inputted and the address addr-in [3: 0) .

이에 따라, 노아 게이트(223∼230)에서 레지스터 지정을 위한 신호(ex-mod, dev, clr, run, stop, id, tcnt, tcon)가 각기 출력되어진다.Thus, signals (ex-mod, dev, clr, run, stop, id, tcnt, and tcon) for register designation are output from the NOR gates 223 to 230, respectively.

상기에서 3*8 디코더(222)의 출력 신호는 어드레스(addr-in[6:4)에 따라 8개의 비트중 하나의 비트만이 '1'로 출력된다.In the above, the output signal of the 3 * 8 decoder 222 is outputted as '1' only one bit of 8 bits according to the address addr-in [6: 4].

예를 들어, 어드레스(addr-in[7:0])가 '80h'이면 MCON을 지정하기 위한 오아 게이트(230)의 출력 신호(tcon)가 '1'이 되고, '90h'이면 MCNT를 지정하기 위한 오아게이트(229)의 출력 신호(tcnt)가 '1'이 되며, 'aOh'이면 MNSDP를 지정하기 위한 오아 게이트(228)의 출력 신호(id)가 '1'이 된다.For example, if the address (addr-in [7: 0]) is '80h', the output signal tcon of the OR gate 230 for designating MCON becomes '1' The output signal id of the OR gate 228 for designating the MNSDP becomes '1' if the output signal tcnt of the OR gate 229 is '1'.

또한, 'b0h'이면 MNSTOP 지정을 위한 오아 게이트(227)의 출력 신호(stop)가 '1'이 되고, 'c0h'이면 MNRUN 지정을 위한 오아 게이트(226)의 출력 신호(run)가 '1'이 되며, 'd0h'이면 MNCLEAR 지정을 위한 오아게이트(225)의 출력신호(clr)가 '1'이 되고, 'eOh'이면 MSDP 지정을 위한 오아게이트(224)의 출력 신호(dev)가 '1'이 되며, 'f0h'이면 MSBP 지정을 위한 오아게이트(223)의 출력 신호(ex-mod)가 '1'이 된다.If 'b0h', the output signal stop of the OR gate 227 for designating MNSTOP becomes '1', and if the output signal run of the OR gate 226 for MNRUN designation is '1' The output signal cl of the OR gate 225 for designating the MNCLEAR is '1' and the output signal dev of the OR gate 224 for specifying the MSDP is 'eOh' And the output signal ex-mod of the OR gate 223 for MSBP designation becomes '1' if it is 'f0h'.

도5 와 같은 레지스터 블럭(202)은 아래와 같은 동작을 수행한다.The register block 202 shown in FIG. 5 performs the following operations.

어드레스 복호 블럭(201)의 출력 신호(clr, run, stop, id, dev, bd)가 '1'로 입력되면 라이트 신호(wr)가 '1'이 되는 경우 낸드 게이트(231∼236)에서 출력되는 라이트신호(wr~ck)가 '0'이 된다.When the write signal wr becomes '1' when the output signals clr, run, stop, id, dev and bd of the address decoding block 201 are inputted as '1', the NAND gates 231 to 236 output The write signals wr to ck become " 0 ".

이에 따라, 레지스터(237∼242)는 라이트 클럭(wr-ck)에 따라 내부 데이타(data-in[7:0])를 입력받아 자신의 데이타를 저장하게 된다.Accordingly, the registers 237 to 242 receive the internal data (data-in [7: 0]) according to the write clock wr-ck and store their own data.

상기 레지스터(237∼242)는 도6과 같이 각기 구성되며, 라이트 클럭(wr-ck)에 따라 디플립플롭(243~250)가 내부 데이타(data-in[7:0])의 각 비트를 래치하여해당 데이타를 저장하게 된다.The registers 237 to 242 are configured as shown in FIG. 6, and the D flip-flops 243 to 250 output the respective bits of the internal data (data-in [7: 0]) according to the write clock wr- And the corresponding data is stored.

상기에서 라이트 동작은 어드레스 복호 블럭(201)의 출력 신호에 따라 순차적으로 이루어진다.The write operation is performed sequentially in accordance with the output signal of the address decoding block 201. [

도7과 같은 데이타 계수 블럭(203)은 다음과 같은 동작을 수행한다.The data coefficient block 203 shown in FIG. 7 performs the following operations.

먼저, 어드레스 복호 블럭(201)의 출력 신호(tcnt)가 '1'이 되면 앤드 게이트(251)가 라이트 신호(wr)를 '1'로 하여 타이머(252∼259)에 인가하게 된다.First, when the output signal tcnt of the address decoding block 201 becomes '1', the AND gate 251 applies the write signal wr to the timers 252 to 259 as '1'.

상기 타이머(252∼259)는 각기 도8과 같이 구성되어, 라이트 신호(wr)과 내부 데이타의 비트를 입력으로 하는 낸드 게이트(262)의 출력 단자가 디플립플롭(261)의 세트 단자에 접속되고, 내부 데이타의 비트가 입력으로 하는 인버터(263)의 출력 신호를 입력으로 함과 아울러 라이트 신호(wr)를 입력으로 하는 낸드 게이트(264)의 출력 단자가 상기 디플립플롭(261)의 리셋 단자에 접속되는데, 상기 디플립플롭(261)은 라이트 신호(wr)가 'O'이면 이전 신호를 그대로 유치하고 '1'이 되면 입력 비트의 값을 출력하게 된다.The timers 252 to 259 are each configured as shown in FIG. 8 so that the output terminal of the NAND gate 262, which receives the write signal wr and bits of the internal data, is connected to the set terminal of the D flip- The output terminal of the NAND gate 264, which receives the output signal of the inverter 263 to which the bits of the internal data are input and which receives the write signal wr as an input, is reset by the reset of the D flip- Flop 261. When the write signal wr is '0', the D flip-flop 261 holds the previous signal as it is, and when the write signal wr becomes '1', it outputs the value of the input bit.

이때, 타이머(252∼259)의 출력 신호(out-bus[7:0])는 데이타 출력부(209),증분기(260) 및 낸드 게이트(279)에 출력되어진다.At this time, the output signals (out-bus [7: 0]) of the timers 252 to 259 are output to the data output section 209, the enhancement branch 260 and the NAND gate 279.

상기 증분기(260)는 도9 와 같이 구성되어, 타이머(252∼259)의 출력 신호(out-bus[7:0])가 입력되면 인버터(265)가 입력 신호(out-bus[0])를 반전하여 그 반전 신호(out[0])를 상기 타이머(252)에 출력하고, 배타적 오아 게이트(266)가 입력 신호(out-bus[1],[0])를 배타적 논리합하여 그 신호(out[1])를 상기 타이머(253)에 출력하며, 배타적 오아 게이트(268)가 입력 신호(out-bus[1],[0])를 논리곱하는 앤드 게이트(267)의 출력 신호와 입력 신호(out-bus[2])를 배타적 논리합하여 그 신호(out[2])를 상기 타이머(254)에 출력하고, 배타적 오아 게이트(270)가 입력 신호(out-bus[2])과 상기 앤드 게이트(267)의 출력 신호를 논리곱 하는 앤드 게이트(269)의 출력 신호와 입력 신호(out-bus[3])를 배타적 논리합하여 그 신호(out[3])를 상기 타이머(255)에 출력하며, 배타적 오아 게이트(272)가 입력 신호(out-bus[3])과 상기 앤드 게이트(269)의 출력 신호를 논리곱하는 앤드 게이트(271)의 출력 신호와 입력 신호(out-bus[4])를 배타적 논리합하여 그 신호(out[4])를 상기 타이머(256)에 출력하며, 배타적 오아 게이트(274)가 입력 신호(out-bus[4])와 상기 앤드게이트(271)의 출력신호를 논리곱하는 앤드 게이트(273)의 출력 신호와 입력 신호(out-bus[5])를 배타적 논리합하여 그 신호(out[5])를 상기 타이머(257)에 출력하며, 배타적 오아 게이트(276)가 입력 신호(out-bus[5])와 상기 앤드 게이트(273)의 출력 신호를 논리곱하는 앤드 게이트(275)의 출력 신호과 입력 신호(out-bus[6])를 배타적 논리합하여 그 신호(out[6])를 상기 타이머(258)에 출력하며, 배타적 오아 게이트(278)가 입력 신호(out-bus[6])과 상기 앤드 게이트(275)의 출력 신호를 논리곱하는 앤드 게이트(277)의 출력 신호과 입력 신호(out-bus[7])를 배타적 논리함하여 그 신호(out[7]를 상기 타이머(259)에 출력하는데, 이는 입력 신호(out-bus[7:0])를 1 증가시키는 동작이다.9, when the inverter 265 receives the output signal out-bus [7: 0] of the timers 252 to 259, And outputs the inverted signal out [0] to the timer 252. The exclusive OR gate 266 performs exclusive OR operation on the input signals out-bus [1], [0] to the timer 253 and outputs an output signal of the AND gate 267 whose exclusive OR gate 268 logically multiplies the input signals out-bus [1], [0] And outputs the signal out [2] to the timer 254. The exclusive OR gate 270 receives the input signal out-bus [2] And outputs the signal out [3] to the timer 255 by performing an exclusive OR operation on the output signal of the AND gate 269 which ANDs the output signal of the AND gate 267 with the input signal out-bus [3] And the exclusive OR gate 272 outputs the input signal out-bus [3] And outputs the signal out [4] to the timer 256 by performing an exclusive OR operation on the output signal of the AND gate 271 which logically multiplies the output signal of the AND gate 269 and the input signal out-bus [4] And the exclusive OR gate 274 outputs the output signal of the AND gate 273 which logically multiplies the input signal out-bus [4] and the output signal of the AND gate 271 and the output signal of the out-bus [ ] And outputs the signal out [5] to the timer 257. The exclusive OR gate 276 outputs the signal out [5] and the output of the AND gate 273 And outputs the signal out [6] to the timer 258 by exclusive-ORing the output signal of the AND gate 275 and the input signal out-bus [6] The output signal of the AND gate 277 which logically multiplies the input signal out-bus [6] and the output signal of the AND gate 275 and the input signal out-bus [7] Logic also and to output the signal (out [7] the timer 259, which is the input signal (out-bus [7: 0] is the operation of increasing the first).

이에 따라, 타이머(252∼259)는 디플립플롭(261)이 데이타 계수 제어부(211)의 출력 클럭(cck)에 따라 증분기(260)의 출력 신호(out[7:0])의 각 비트를 래치하여 계수 동작을 수행함에 의해 그 계수 신호(out-bus[7:0])를 출력하게 된다.Accordingly, the timers 252 to 259 latch the respective bits of the output signal out [7: 0] of the enhancement branch 260 in accordance with the output clock (cck) of the data coefficient control unit 211, And outputs the count signal out-bus [7: 0] by latching and performing the count operation.

이러한 동작은 반복적으로 수행되어진다.This operation is repeatedly performed.

만일, 타이머(252∼259)의 출력 신호(out-bus[7:0])가 모두 '1'이 되면 오버플로어 발생을 검출하는 신호(t-ov)가 '0'이 되고 이 '0'인 신호(t-ov)를 입력받은 제어 블럭(204)은 플래그 비트(cf)를 '1'로 세팅하게 된다.If all of the output signals (out-bus [7: 0]) of the timers 252 to 259 are '1', the signal t-ov for detecting the occurrence of overflow becomes '0' The control block 204 receiving the in-signal t-ov sets the flag bit cf to '1'.

도10 과 같은 데이타 비교 블럭(205)은 크게 어드레스 비교기와 데이타 비교기로 구성되며, 이의 동작은 다음과 같다.The data comparison block 205 shown in FIG. 10 is largely composed of an address comparator and a data comparator, and its operation is as follows.

먼저, 어드레스 비교기는 배타적 노아 게이트(280)에서 외부 어드레스(ex-data[7:0])과 래지스터 블럭(202)의 출력 신호(dev[7:0])가 일치하는지를 비교하고, 배타적 노아 게이트(281)에서 외부 어드레스(ex-data[7:0])과 상기 레지스터 블럭(202)의 출력 신호(id[7:0])가 일치하는지를 비교하게 된다.First, the address comparator compares the external address (ex-data [7: 0]) and the output signal (dev [7: 0]) of the register block 202 with each other in the exclusive NOR gate 280, The gate 281 compares whether the external address ex-data [7: 0] matches the output signal id [7: 0] of the register block 202 or not.

이때, 배타적 오아 게이트(280)의 출력 신호(dev-com[7:0])가 모두 '1'이면 앤드 게이트(285)의 출력 신호가 '1'이 된다.At this time, if the output signals dev-com [7: 0] of the exclusive OR gate 280 are all '1', the output signal of the AND gate 285 becomes '1'.

이에따라, 라이트 신호(wr)가 '1'인 경우 앤드 게이트(290)에서 '1'인 신호(dev-en)를 출력하게 되며, 리드 신호가 '1'인 경우 앤드 게이트(291)에서 '1'인 신호(dev-rd)를 출력하게 된다.When the write signal wr is '1', the AND gate 290 outputs a signal 'dev-en'. When the read signal is '1', the AND gate 291 outputs '1' (Dev-rd).

상기 신호(dev-en)는 제어 블럭(204)의 라이트 신호로 사용되며, 신호(dev-rd)는 비트(CM1)가 '1'일 때 상기 제어 블럭(204)의 리드 신호로 사용되어진다.The signal dev-en is used as a write signal of the control block 204 and the signal dev-rd is used as a read signal of the control block 204 when the bit CM1 is '1' .

그리고, 배타적 오아 게이트(281)의 출력 신호(id-com[7:0])가 모두 '1'이면 앤드 게이트(286)의 출력 신호가 '1'이 되어 데이타 비교기에 출력되어진다.When all the output signals id-com [7: 0] of the exclusive OR gate 281 are '1', the output signal of the AND gate 286 becomes '1' and is output to the data comparator.

또한, 데이타 비교기는 배타적 노아 게이트(282)에서 외부 데이타(ex-data[7:0])과 레지스터 블럭(202)의 출력 신호(stop[7:0])가 일치하는지를 비교하고, 배타적 노아 게이트(283)에서 외부 데이타(ex-data[7:0])과 상기 레지스터 블럭(202)의 출력 신호(run[7:0])가 일치하는지를 비교하며, 배타적 노아 게이트(284)에서 외부 데이타(ex-data[7:0])과 상기 레지스터 블럭(202)의 출력 신호(clr[7:0])가 일치하는지를 비교하게 된다.The data comparator also compares the external data (ex-data [7: 0]) with the output signal (stop [7: 0]) of the register block 202 in the exclusive NOR gate 282, The comparator 283 compares the external data ex-data [7: 0] with the output signal run [7: 0] of the register block 202, (7: 0) of the register block 202 and the output signal clr [7: 0] of the register block 202 are identical.

이때, 배타적 노아 게이트(282)의 출력 신호(stop-com[7:0])가 모두 '1'이면 앤드 게이트(287)의 출력 신호가 '1'이 되고, 배타적 노아 게이트(283)의 출력 신호(run-com[7:0])가 모두 '1'이면 앤드 게이트(288)의 출력 신호가 '1'이 되며, 배타적 노아 게이트(284)의 출력 신호(cir-com[7:0])가 모두 '1'이면 앤드 게이트(289)의 출력 신호가 '1'이 된다.At this time, if the output signals stop-com [7: 0] of the exclusive N0 gate 282 are all '1', the output signal of the AND gate 287 becomes '1', and the output of the exclusive N0 gate 283 The output signal of the AND gate 288 becomes '1' and the output signal cir-com [7: 0] of the exclusive NOR gate 284 becomes '1' Is '1', the output signal of the AND gate 289 becomes '1'.

이에 따라, 라이트 신호(wr)가 '1'이고 어드레스 비교기의 앤드 게이트(286)의 출력신호가 '1'이라면 앤드 게이트(287)의 출력 신호가 '1'인 경우 낸드 게이트(292)는 '0'인 신호(stop-ins)를 출력하고, 앤드 게이트(288)의 출력 신호가 '1'인 경우 낸드 게이트(293)는 '0'인 신호(run-ins)를 출력하며, 앤드 게이트(289)의 출력 신호가 '1'인 경우 낸드 게이트(294)는 '0'인 신호(cir-ins)를 출력하게 된다.Accordingly, when the write signal wr is' 1 'and the output signal of the AND gate 286 of the address comparator is' 1', when the output signal of the AND gate 287 is' 1 ', the NAND gate 292' The NAND gate 293 outputs a signal (run-ins) of '0' when the output signal of the AND gate 288 is '1', and a signal (run-ins) 289 are '1', the NAND gate 294 outputs a signal 'cir-ins' of '0'.

상기에서 낸드 게이트(292)의 출력 신호(stop-ins)는 제어 블럭(204)의 비트(CR)를 :0으로 만드는 신호이고, 낸드 게이트(293)의 출력 신호(run-ins)는 상기 비트(CR)를 '1'로 만드는 신호이며, 낸드 게이트(294)의 출력 신호(clr-ins)는 상기 제어 블럭(204)의 비트(CF)를 '0'으로 만드는 신호이다.The output signal stop-ins of the NAND gate 292 is a signal that sets the bit CR of the control block 204 to 0 and the output signal run-ins of the NAND gate 293 is the bit And the output signal clr-ins of the NAND gate 294 is a signal that sets the bit CF of the control block 204 to zero.

상기 동작 신호(run-ins) 및 클리어 신호(clr-ins)는 경치 신호(stop-ins)가 '1'인 조건에서 생성되는 신호이다.The operation signal run-ins and the clear signal clr-ins are signals generated under the condition that the stop signal ins is '1'.

도12 과 같은 제어 블럭(204)은 다음과 같은 동작을 수행한다.The control block 204 as shown in FIG. 12 performs the following operations.

먼저, 리셋 신호(rst)가 '0'인 경우 디플립플롭(327)(329)의 출력 신호(CM1) (CM0)는 '0'이 되고 앤드 게이트(348)의 출력 신호가 '0'이 되어 디플립플롭(330)은 비반전 출력 단자의 비트(CR)를 '0'으로 출력된다.First, when the reset signal rst is '0', the output signal CM1 (CM0) of the D flip-flops 327 and 329 becomes '0' and the output signal of the AND gate 348 becomes '0' And the D flip-flop 330 outputs the bit CR of the non-inverted output terminal as '0'.

그리고, 디플립플롭(327)의 '0'인 출력 신호(CM1)가 인가된 앤드 게이트(343)의 출력 신호가 '0'가 되어 스위치(342)가 리셋 신호(rst)가 인가원 앤드 게이트(341)의 출력 신호를 디플립플롭(325)의 리셋 단자에 인가하므로 상기 디플립플롭(325)의 출력 신호(CF)는 '0'이 된다.The output signal of the AND gate 343 to which the output signal CM1 of '0' of the D flip-flop 327 is applied becomes '0', so that the switch 342 outputs the reset signal rst, The output signal of the D flip-flop 325 is '0' because the output signal of the D flip-flop 325 is applied to the reset terminal of the D flip-flop 325.

이 후, 리셋 신호(rst)가 '1'이 되면 멀티플렉서(321)는 레지스터 블럭(202)의 출력 신호(bd[2:0])에 따라 외부 데이타(ex-data[7:0])중 해당 비트를 선택하여 출력하며, 멀티플렉서(334)는 상기 레지스터 블럭(202)의 출력 신호(bd[5:3])에 따라 외부 데이타(ex-data[7:0])중 해당 비트를 선택하여 출력하게 된다.When the reset signal rst becomes '1', the multiplexer 321 selects one of the external data ex-data [7: 0] according to the output signal bd [2: 0] of the register block 202 The multiplexer 334 selects the corresponding bit of the external data ex-data [7: 0] according to the output signal bd [5: 3] of the register block 202 .

이때, 낸드 게이트(320)는 라이트 신호(wr)과 어드레스 복호 블럭(201)의 출력 신호(tcon)를 낸딩하여 디플립플롭(327)(329)의 클럭 단자와 스위치(324)의 입력단자(IO)에 출력하게 되며, 앤드 게이트(333)는 상기 디플립플롭(329)의 출력 신호를 입력으로 한는 인버터(332)의 출력 신호와 상기 디플립플롭(327)의 출력 신호를 논리곱하여 스위치(332)(324)(335)를 절환시키게 된다.At this time, the NAND gate 320 nets the write signal wr and the output signal tcon of the address decoding block 201 to input the clock terminal of the D flip-flops 327 and 329 and the input terminal The AND gate 333 ANDs the output signal of the inverter 332 and the output signal of the D flip-flop 327 by taking the output signal of the D flip-flop 329 as an input, 332) 324 and 335, respectively.

이에 따라, 외부 데이타(ex-data[2],[1])를 입력으로 하는 디플립플롭(327)(329)의 출력 신호(CM1)(CM0)가 '1'인 경우 스위치(324)가 레지스터 블럭(202)의 출력 신호(dev-en)을 입력으로 하는 인버터(323)의 출력 신호를 선택하여 디플립플롭(330)의 클럭 단자에 출력하고, 스위치(322)가 멀티플렉서(321)의 출력 신호를 선택하여 상기 디플립플롭(330)의 입력 단자에 출력하게 되므로 상기 디플립플롭(330)은 비트(CR)를 출력하는데, 상기 비트(CR)의 값은 레지스터 블럭(202)의 출력 신호(bd[2:0])에 의해 결정된다.Thus, when the output signal CM1 (CM0) of the D flip-flops 327 and 329 that receive the external data (ex-data [2], [1]) is '1', the switch 324 The switch 322 selects the output signal of the inverter 323 which receives the output signal dev-en of the register block 202 and outputs it to the clock terminal of the flip-flop 330. The switch 322 selects the output signal of the multiplexer 321 The D flip-flop 330 outputs a bit CR because the output signal of the D flip-flop 330 is output to the input terminal of the D flip-flop 330, Is determined by the signal bd [2: 0].

또한, 디플립플롭(325)은 스위치(335)가 멀티플렉서(334)의 출력 신호를 선택하면 인버터(336), 노아 게이트(337), 낸드 게이트(338) 및 오아 게이트(339)를 통해 세트 상태가 결정되고 오아 게이트(340), 앤드 게이트(341) 및 스위치(342)를 통해 리셋 상태가 결정되는데, 데이타계수블럭(203)에서 오버플로어를 검출하여 출력 신호(t-ov)를 '1'로 하면 그 상승 에지에서 상기 디플립플롭(325)은 전압(Vdd)을 래치하여 플래그 비트(CF)가 '1'이 되도록 한다.The D flip flop 325 also receives the output signal of the multiplexer 334 through the inverter 336, the NOR gate 337, the NAND gate 338 and the OR gate 339 when the switch 335 selects the output signal of the multiplexer 334, Is determined and the reset state is determined via the gate 340, the end gate 341 and the switch 342. The output signal t-ov is set to '1' by detecting the overflow in the data counting block 203, The D flip-flop 325 latches the voltage Vdd so that the flag bit CF is '1'.

그리고, 리셋 신호(rst)가 '1'인 상태에서 디플립플롭(327)의 출력 신호(CM1)가 '1'이고 디플립플롭(329)의 출력 신호(CMD)가 '0'인 경우 어드레스 복호 클럭(201)의 출력 신호(stop)가 '0'이면 인버터(346)의 출력 신호가 '1'이 되어 낸드 게이트(347)의 출력 신호가 '0'이므로 앤드 게이트(348)의 출력이 '0'이 되어 디플립플롭(330)의 출력 신호(CR)가 '0'이 되고 상기 어드레스 복호 블럭(201)의 출력 신호(run)가 '0'이면 인버터(344)의 출력 신호가 '1'이 되어 낸드 게이트(345)의 출력 신호가 '0'이 되므로 상기 디플립플롭(330)의 출력 신호(CR)가 '1'이 된다.When the output signal CM1 of the D flip-flop 327 is '1' and the output signal CMD of the D flip-flop 329 is '0' in the state that the reset signal rst is '1' If the output signal stop of the decoded clock 201 is '0', the output signal of the inverter 346 becomes '1' and the output signal of the NAND gate 347 is '0' The output signal of the inverter 344 becomes '0' and the output signal CR of the flip-flop 330 becomes '0' and the output signal run of the address decoding block 201 is '0' The output signal of the NAND gate 345 becomes '0' and the output signal CR of the D flip-flop 330 becomes '1'.

만일, 동작 신호(run)과 정지 신호(stop)가 '1'이라면 디플립플롭(330)은 클럭단자의 신호에 따라 스위치(322)를 통해 입력되는 외부 데이타(ex-data[0])를 래치하게 된다.If the operation signal run and the stop signal stop are '1', the D flip-flop 330 outputs the external data ex-data [0] input through the switch 322 in accordance with the signal of the clock terminal Latch.

또한, 디플립플롭(325)은 어드레스 복호 블럭(201)의 클리어 신호(clr)가 '0'가 될 때 스의치(342)가 상기 신호(clr)를 선택하므로 플래그 신호(CF)를 '0'으로 출력하게 된다.Since the flip-flop 325 selects the signal clr when the clear signal clr of the address decoding block 201 becomes '0', the flag signal CF is set to '0' '.

한편, 리셋 신호(rst)가 '1'인 상태에서 디플립플롭(327)의 출력 신호(CM1)가 '0'인 경우 비트(CM1)는 '1', 비트(CM0)는 '0'인 경우과 동일한 동작을 수행한다.When the output signal CM1 of the D flip-flop 327 is '0' in the state that the reset signal rst is '1', the bit CM1 is '1' and the bit CM0 is '0' And performs the same operation as the case.

도11 과 같은 데이타 복호 블럭(206)은 다음과 같은 동작을 수행한다.The data decoding block 206 shown in FIG. 11 performs the following operations.

먼저, 레지스터 블럭(202)의 출력 신호(bd[7:0])와 제어 블럭(204)의 출력 신호(out[3:0])가 입력되면 3*8 디코더(301)가 상기 신호(bd[5:0])에 따라 복호 동작을 수행하고, 3*8 디코더(302)가 상기 신호(bd[2:0])에 따라 복호 동작을 수행하며, 인버터(303)가 플래그 비트(CF)인 상기 출력 신호(out[3])를 반전하고, 인버터(304)가 런-비트(CR)인 상기 출력 신호(out[0])를 반전하게 된다.First, when the output signal bd [7: 0] of the register block 202 and the output signal out [3: 0] of the control block 204 are inputted, the 3 * 8 decoder 301 outputs the signal bd (3: 8) decoder 302 performs decoding operation in accordance with the signal bd [2: 0], and when the inverter 303 receives the flag bit CF, And inverts the output signal out [0], which is the run-bit CR, by inverting the output signal out [3].

이때, 3*8 디코더(301)(302)의 출력 신호는 '0'인 신호가 각기 하나씩 존재한다.At this time, the output signals of the 3 * 8 decoders 301 and 302 are '0', respectively.

따라서, 제1,제2 오아 게이트와 낸드 게이트로 이루어진 논리 회로(305∼312)가 제1 오아 게이트에서 멀티플렉서(301)의 출력 비트와 인버터(303)의 출력 신호를 논리합하고 제2 오아 게이트에서 멀티플렉서(302)의 출력 비트과 인버터(304)의 출력 신호를 논리합하면 낸드 게이트가 상기 제1,제2 오아 게이트의 출력 신호를 낸딩함에 의해 데이타복호 블럭(206)은 데이타(tcon-e[7:0])를 출력하게 된다.Therefore, the logic circuits 305 to 312 composed of the first and second OAgas and NAND gates logically combine the output bit of the multiplexer 301 and the output signal of the inverter 303 in the first gate, When the output bit of the multiplexer 302 is ORed with the output signal of the inverter 304, the NAND gate nanders the output signals of the first and second OR gates and the data decoding block 206 outputs the data tcon-e [7: 0]).

상기에서 신호(bd[2:0])는 런-비트(CR)를 출력 신호(tcon-e[7:0])의 몇번째 비트에 할당할지를 결정하고, 신호(bd[5:0])는 플래그 비트(CF)를 출력 신호(tcon-e[7:0])의 몇번째 비트에 할당할지를 결정하기 위한 것으로, 상기 출력 신호(tcon-e[7:0])의 2비트를 제외한 비트는 '0'으로 출력한다.The signal bd [5: 0] determines whether to allocate the run-bit CR to the bits of the output signal tcon-e [7: 0] E [7: 0]) of the output signal tcon-e [7: 0] except for the two bits of the output signal tcon-e [7: 0] Quot; 0 ".

만일, 신호(bd[2:0], bd[5:3])가 동일한 값이면 출력 신호(tcon-e[7:0])의 선택 비트에는 런-비트(CR)과 플래그 비트(CF)의 논리합된 값이 할당된다.If the signals bd [2: 0] and bd [5: 3] are the same value, the run-bit CR and the flag bit CF are added to the select bits of the output signal tcon- Quot; is assigned.

상기와 같이 각 블럭이 동작함에 있어 타이밍은 도13 내지 도21의 파형과 같다.The timings of the operation of each block as described above are the same as the waveforms of FIGS.

도13 의 파형은 레지스터 블럭(202)에 해당 레지스터 데이타를 라이트하기 이한 것으로, 제어 블럭(204)의 비트(CM1)이 '0'인 상태를 보인 것이다.The waveform of FIG. 13 shows the state in which the bit CM1 of the control block 204 is '0' by writing the corresponding register data in the register block 202. FIG.

도14 의 파형은 레지스터 블럭(202)에 저장된 데이타를 내부 버스에 리드하기 위한 것으로, 제어 블럭(204)의 비트(CM1)이 '1'인 상태를 보인 것이다.The waveform of FIG. 14 is for reading the data stored in the register block 202 on the internal bus, and the bit CM1 of the control block 204 is '1'.

도15의 파형은 제어-블럭(204)의 비트(CM1)이 '0'인 상태에시 런-비트(CR)가 '1'이 되어 데이타 계수 블럭(203)에서 계수 동작을 수행하기 위안 것으로, 이 상태는 본 발명의 장치가 일반적인 주변 기기 예로, 타이머로 동작하는 모드이다.The waveform of FIG. 15 shows a state in which the bit CM1 of the control-block 204 is '0' and the state bit CR is '1' to perform the counting operation in the data counting block 203 , This state is a mode in which the apparatus of the present invention operates as a timer, which is an example of a general peripheral device.

(t1) 시점에서 데이타 계수 블럭(203)은 오버플로어가 발섕하여 제어 블럭(204)은 플래그비트(CF)를 '1'로 출력하고 인터렵트 요구 신호(int-rp)를 '1'로 출력하게 된다.the data block 203 outputs an overflow and the control block 204 outputs the flag bit CF as '1' and the intercept request signal int-rp as '1' .

(t2) 시점에서 제어 블럭(204)은 데이타가 라이트되어 플래그 비트(CF)가 '0'으로 출력하게 된다.At the time t2, the control block 204 writes the data and outputs the flag bit CF as '0'.

이 후, (t3) 시점에서 제어 블럭(204)은 런-비트(CR)를 '0'으로 출력하게 된다.Thereafter, at time t3, the control block 204 outputs a run-bit CR as '0'.

상기에서 플래그 비트(CF)과 런-비트(CR)를 동시에 클리어하치 않는 것은 상기 플래그 비트(CF)는 라이트 신호(wr)의 상승 에지에 동기되어 데이타를 받아 들이고, 상기 런-비트(CR)는 라이트 신호(wr)의 하강 에지에 동기되어 데이타를 받아 들이게 된다.The flag bit CF does not clear the flag bit CF and the run bit CR at the same time because the flag bit CF receives the data in synchronization with the rising edge of the write signal wr, Is received in synchronization with the falling edge of the write signal wr.

도16 은 제어 블럭(204)의 비트(CM1)이 '1'인 상태에서 런-비트(CR)를 '1'로 세팅하기 위한 파형이다.16 is a waveform for setting the run-bit CR to '1' in a state where the bit CM1 of the control block 204 is '1'.

여기서, 비트(CM1)이 '1'이므로 런-비트(CR)를 '1'로 세팅하기 위해서는 레지스터 블럭(202)에서 출력되는 신호(id[7:0])를 어드레스로 하여 신호(run[7:0])의 값을 라이트하여야 하며, 시점(t1)에서 런-비트(CR)는 '1'로 세팅되어진다.In order to set the run-bit CR to '1', since the bit CM1 is '1', the signal [id [7: 0] 7: 0]), and the run-bit CR is set to '1' at the time t1.

도17 은 비트(CM1)이 '1'인 경우 오버플로어 발생과 정지 명령(stop)을 보인파형도이다.FIG. 17 is a waveform diagram showing an overflow occurrence and a stop instruction (stop) when bit CM1 is '1'.

여기서, 제어 블럭(204)의 비트(CM1)가 '1'인 경우 데이타 계수 블럭(203)에서 오버플로어가 발생하여 시점(t1)에서 상기 제어 블럭(204)의 플래그 비트(CF)가 '1'로 세트된다.Here, when the bit CM1 of the control block 204 is '1', an overflow occurs in the data counting block 203 and the flag bit CF of the control block 204 is set to '1' '.

이때, 어드레스 복호 블럭(201)에서 정지 명령(stop)이 입력되면 제어 블럭(204)의 런-비트(CR)는 '0'이 된다.At this time, when the stop instruction (stop) is inputted from the address decoding block 201, the run-bit CR of the control block 204 becomes '0'.

도18 은 제어 블럭(204)의 비트(CM1)가 '1'일 때 (t1) 시점에서의 플래그 비트(CF)의 클리어 명령을 위한 파형도이다.18 is a waveform diagram for a clear instruction of the flag bit CF at the time t1 when the bit CM1 of the control block 204 is '1'.

도19는 제어블럭(204)의 비트(CM1)(CM0)가 모두 '1'인 상태에서의 계수 동작을 보인 파형도이다.19 is a waveform diagram showing a counting operation in a state where bits CM1 and CM0 of the control block 204 are all '1'.

(t1) 시점에서 제어 블럭(204)의 비트(CM1)(CM0)를 모두 '1'로 세팅한다.the bit CM1 (CM0) of the control block 204 is set to '1' at the time t1.

(t2) 시점에서 제어 블럭(204)의 비트(CR)를 '1'로 세팅한다.the bit CR of the control block 204 is set to '1' at time t2.

이때, 비트(CR)를 세트시키기 위해서는 어드레스 복호 블럭(201)의 출력 신호(dev)의 값을 어드레스로 하고 모드 신호(ex-mod)의 값이 나타내는 비트 맵에 따라 데이타를 라이트하여야 한다.At this time, in order to set the bit CR, the value of the output signal (dev) of the address decoding block 201 should be set as the address and the data should be written according to the bit map indicated by the value of the mode signal (ex-mod).

예를들어, 모드신호(ex-mod)의 값이 '37h'이므로 런-비트(CR)는 비트7로 결정되고 플래그 비트(CF)는 비트 6 으로 결정된다. 이에 따라, 8비트 데이타중 비트 7 의 값이 런-비트(CR)에 할당된다.For example, since the value of the mode signal ex-mod is '37h', the run-bit CR is determined to be bit 7 and the flag bit CF is determined to be bit 6. Accordingly, the value of bit 7 of the 8-bit data is assigned to the run-bit CR.

도20은 비트(CM1)(CM0)가 모두 '1'인 상태에서 오버플로어 발생을 보인 파형도이다.FIG. 20 is a waveform diagram showing an overflow occurrence in a state where bits CM1 and CM0 are all '1'.

제어 블럭(204)의 비트(CM1)(CM0)가 모두 '1'인 상태일 때 데이타 계수 블럭(203)에서 오버플로어가 발생하여 상기 제어 블럭(204)의 플레그 비트(CF)가 '1'이 되고 인터럽트 요구 신호(int-rq)가 '1'이 된다(t1 시점).An overflow occurs in the data counting block 203 when the bits CM1 and CM0 of the control block 204 are both '1' and the flags bit CF of the control block 204 is '1' And the interrupt request signal int-rq becomes '1' (time t1).

(t2) 시점에서 데이타의 리드 동작이 수행된다.the data read operation is performed at the time t2.

예를 들어, 레지스터 블럭(202)의 출력 신호(bd[7:0])의 값이 '37h'이므로 제어 블럭(204)의 비트(CR)는 비트7, 비트(CF)는 비트6에 연결되어 외부버스로 전송되는 데이타 값본 'c0h'가 된다.For example, since the value of the output signal bd [7: 0] of the register block 202 is '37h', the bit CR of the control block 204 is bit 7 and the bit (CF) And becomes a data value 'c0h' transmitted to the external bus.

도21은 제어 블럭(204)의 비트(CM1)(CM0)가 모두 '1'인 상태일 때 런-비트(CR), 플래그 비트(CF)의 클리어를 의한 파형도이다.FIG. 21 is a waveform diagram of clearing the run-bit CR and the flag bit CF when the bits CM1 and CM0 of the control block 204 are both '1'.

(t1) 시점에서 린-비트(CR)가 클리어되고 이 후 (t3) 시점에서 플래그 비트(CF)가 클리어된다.the linewidth CR is cleared at the time t1 and the flag bit CF is cleared at the time t3.

여기서, (t2),(t4) 시점에서 데이타의 리드 동작이 수행된다.Here, a data read operation is performed at time points (t2) and (t4).

상기과 같은 동작을 수행하는 본 발명의 실시에는 독립된 블럭을 추가하는 형태이다.The embodiment of the present invention for performing the above-described operation is a mode in which independent blocks are added.

만일, 기존의 주변 블럭을 이용하는 경우 제어 레지스터(MCON)의 각 비트 처리방법대로 각 주변 제어 레지스터를 수정하면 되고, 제어 방식에 따라 레지스터(MSDP)를 이용하는 형태나 레지스터(MNSDP)를 이용하는 형태대로 레지스터를 부가하면 될 것이다.If an existing peripheral block is used, each peripheral control register may be modified in accordance with each bit processing method of the control register (MCON). In accordance with the control method, a register (MSDP) type or a register (MNSDP) .

또한, 기기 제어 범위를 확장하다면 레지스터(MNSDP)를 이용하는 형태에서는 확장되는 비트를 제어하는 레지스터들을 추가하면 되고, 레지스터(MSDP)를 이용하는 형태에서는 레지스러(MSBP)의 비트수를 한 비트 확장에 대하여 3비트색 추가하도록하면 본 발명의 취지대로 프로세서의 개발이 가능할 것이다.In the case of using the register (MSDP), the number of bits of the register (MSBP) may be increased by one bit extension By adding 3 bits of color, it is possible to develop a processor according to the purpose of the present invention.

상기에서 상세히 설명한 바와 갈이 본 발명은 프로그램을 개발하기 위한 장비를 접속함이 없이 자체적으로 외부 기기의 역할을 수행하는 기능을 내장시킴으로써 프로그램 개발 기간 및 비용을 줄일 수 있는 효과가 있다.As described in detail above, the present invention has the effect of reducing program development time and cost by incorporating a function of performing an external device function itself without connecting equipment for developing a program.

Claims (22)

내부 어드레스(addr-in[7:0])를 복호하여 레지스터 지정을 위한 신호를 출력하는 어드레스 복호 블럭과, 이 어드레스 복호 블럭의 출력 신호에 인에이블되어 내부 데이타(in[7:0])를 해당 레지스터에 저장하는 레지스터 블럭과, 런-비트(run-bit)과 클럭(ck)을 논리 조합하여 계수 클럭(cck)을 출력하는 데이타 계수 제어부과, 상기 어드레스 복호 블럭의 출력 신호(tcnt)에 인에이블되어 상기 데이타 계수 제어부의 출력 신호(cck)에 따라 내부 데이타(in[7:0])를 계수하는 데이타 계수 블럭과, 상기 레지스터 블럭의 각 출력 신호가 외부 데이타(ex-data[7:0]) 모는 어드레스(ex-addr[7:0])과 일치하는지 비교하는 데이타 비교블럭과, 상기 어드레스 복호 블럭의 출력 신호(tcon)에 인에이블되어 외부 데이타(ex-data[7:0])과 상기 데이타 비교 블럭의 출력 신호를 연산함에 의해 런-비트(run-bit) 및 인터럽트 요구 신호(int-rq)를 출력하는 제어 블럭과, 상기 레지스터 블럭(202)의 출력 신호(bd[7:0])에 상기 제어 블럭(204)의 출릭 신호(tcon[3:0])를 할당하여 비트 위치를 변환하는 데이타 복호 블럭과, 상기 제어 블럭의 출력 신호(mod-emu)과 상기 데이타 비교 블럭의 출력 신호(dev-rd)가 '1'일 때 상기 데이타 복호 블럭의 출력 신호(tcon-e[7:0])를 외부 버스로 전송하는 제1 데이타 출력부과, 리드 신호(rd-in)과 상기 어드레스 복호 블럭의 각각의 출력 신호가 '1'일 때 상기 레지스터 블럭의 각각의 출력 신호를 내부 버스로 전송하는 제2 테이타 출력부와, 리드 신호(rd-in)와 상기 어드레스 복호 블럭의 출력 신호(tcnt)가 '1'이면 상기 데이타 계수 블럭의 출력 신호(out-bus[7:0])를 내부 버스로 전송하는 제3 데이타 출력부와, 리드 신호(rd-in)와 상기 어드레스 복호 블럭의 출력 신호(dev)가 '1'이면 상기 제어 블럭의 출력 신호(out[3:0])를 내부 버스로 전송하는 데이타 출력부로 구성함을 특징으로 하는 프로그램 개발장치.An address decoding block for decoding an internal address (addr-in [7: 0]) and outputting a signal for designating a register, and an internal decoder for decoding the internal data in [7: 0] A data coefficient control unit for logically combining a register block to be stored in the register with a run-bit and a clock ck and outputting a count clock signal cck; (7: 0) according to an output signal (cck) of the data count control unit; and a data counting block for counting internal data in [7: 0] (7: 0)] which is enabled by the output signal (tcon) of the address decoding block and a data comparison block which compares the external address (ex-data [0: 0] ) And an output signal of the data comparison block, (tcon) of the control block 204 to the output signal bd [7: 0] of the register block 202, and a control block for outputting the run-bit and the interrupt request signal int- (1), when the output signal (mod-emu) of the control block and the output signal (dev-rd) of the data comparison block are '1' A first data output unit for transmitting the output signal tcon-e [7: 0] of the data decoding block to the external bus; A second data output unit for transmitting each output signal of the register block to the internal bus when the read signal rd-in and the output signal tcnt of the address decoding block are '1' A third data output unit for transmitting an output signal out-bus [7: 0] to the internal bus, a third data output unit for transmitting the read signal rd- When the output signal (dev) of the Luck "1" output signal from the control block: a program development apparatus characterized in that it composed of a data output for transmitting (out [3 0]) to the internal bus. 청구항 1에 있어서, 어드레스 복호 블럭은 내부 어드레스(addr[7])를 반전하는 인버터(220)과, 이 인버터(220)의 출력 신호와 내부 어드레스(addr[3:0])를 논리합하는 오아 게이트(221)과, 내부 어드레스(addr[6:4])를 입력받아 복호하는 3*8 디코더(222)와, 상기 오아 게이트(221)의 출력 신호과 상기 3*8 디코더(222)의 출력 신호를 각기 노아링하여 레지스터 지정 신호(ex-mod, dev, clr, nln, stop, id, tcnt, tcon)를 각기 출력하는 노아 게이트(223∼230)로 구성함을 특징으로 하는 프로그램 개발 장치.The address decoding block according to claim 1, wherein the address decoding block comprises an inverter for inverting an internal address addr [7], and an OR gate for performing an OR operation on an output signal of the inverter and an internal address addr [3: 0] A 3 * 8 decoder 222 for receiving and decoding an internal address addr [6: 4] and an output signal of the 3 * 8 decoder 222; And outputs a register designation signal (ex-mod, dev, clr, nln, stop, id, tcnt, tcon) to each of the NOR gates (223 to 230). 청구항 1에 있어서, 래치스터 블럭은 라이트 신호(wr)과 어드레스 복호 블럭의 각각의 출력 신호(ex-mod, dev, clr, run, stop, id)를 각기 낸딩하는 낸드 게이트(231∼236)과, 이 낸드 게이트(231∼236)의 각각의 출력 신호를 클럭으로 내부 데이타(data-in[7:0])를 각기 래치하는 레지스터(237∼242)로 구성함을 특징으로 하는 프로그램 개발 장치.The latch stub block according to claim 1, wherein the latch stub block includes NAND gates (231 to 236) for nanning the write signal (wr) and the output signals (ex-mod, dev, clr, run, stop and id) And registers 237 to 242 for latching internal data (data-in [7: 0]) in response to the output signals of the NAND gates 231 to 236 as clocks. 청구항 3에 있어서, 레지스터(237∼242)는 라이트 신호(wr)를 클럭으로 내부 데이타(data-in[7:0])의 각 비트를 각기 래치하는 디플립플롭(243∼250)으로 각기 구성함을 특징으로 하는 프로그램 개발 강치.The registers 237 to 242 are D flip-flops 243 to 250 for latching respective bits of internal data (data-in [7: 0]) with the write signal wr as a clock, A program development lacquer characterized by the. 청구항 1에 있어서, 데이타 계수 블럭은 어드레스 복호 블럭의 출력 신호(tcnt)과 라이트 신호(wr)를 논리곱하는 앤드 게이트(251)와, 이 앤드 게이트(251)의 출력 신호에 인에이블되어 데이타 계수 제어부의 출력 신호(cck)에 따라 내부 데이타(data-in[7:0])의 각 비트를 각기 계수하는 타이머(252∼259)와, 이 타이머(252∼259)의 출력 신호를 입력으로 하여 증분 연산을 수행함에 의해 그 결과값을 상기 타이머(252∼259)에 출력하는 증분기(incrementor)(260)와, 상기 타이머(252∼259)의 출력 신호를 낸딩하여 오버플로어 신호(t-ov)를 출력하는 낸드 게이트(279)로 구성함을 특징으로 하는 프로그램 개발 장치.The data coefficient block according to claim 1, wherein the data coefficient block includes an AND gate 251 for ANDing the output signal tcnt of the address decoding block and the write signal wr, Timers 252 to 259 for counting the respective bits of the internal data (data-in [7: 0]) according to the output signal cck of the timers 252 to 259, An incrementor 260 for outputting the result to the timer 252 to 259 by performing an operation on the overflow signal t-ov, And a NAND gate (279) for outputting the program. 청구항 5에 있어서, 타이머(252∼259)는 데이타 계수 제어부의 출력 신호(cck)에 따라 증분기(260)의 출력 신호를 래치하는 디플립플롭(261)과, 입력 비트(bit-in)과 라이트신호(wr)를 낸딩하여 상기 디플립플롭(261)을 세트시키는 낸드 게이트(262)와, 입력 비트(bit-in)를 반전하는 인버터(263)과, 이 인버터(263)의 출력 신호와 상기 라이트 신호(wr)를 낸딩하여 상기 디플립플롭(261)을 리셋시키는 낸드 게이트(264)로 구성함을 특징으로 하는 프로그램 개발 장치.The timers 252 to 259 each include a D flip-flop 261 for latching the output signal of the increment 260 according to the output signal cck of the data coefficient control unit, A NAND gate 262 for nANDing the write signal wr to set the D flip flop 261, an inverter 263 for inverting an input bit (bit-in), an output signal of the inverter 263 And a NAND gate (264) for resetting the D flip-flop (261) by nANDing the write signal (wr). 청구항 5에 있어서, 증분기(incrementor)(260)는 최하위 비트 데이타(data-in[0])를 반전하여 데이타(out[0])를 출력하는 인버터(265)과, 비트 데이타(data-in[0][1])를 배타적 논리합하여 데이타(out[0])를 출력하는 배타적 오아 게이트(266)과, 비트 데이타(data-in[0][1])를 논리곱하는 앤드 게이트(267)과, 이 앤드 게이트(267)의 출력 신호와 비트 데이타(dat-in[0])를 배타적 논리합하여 데이타(out[2])를 출력하는 배타적 오아 게이트(268)와, 비트 데이타(data-in[3])과 상기 앤드 게이트(267)의 출력 신호를 논리곱하는 앤드 게이트(269)과, 이 앤드 게이트(269)의 출력 신호와 비트 데이타(data-in[3])를 배타적 논리합하여 데이타(out[3])를 출력하는 배타적 오아 게이트(270)과, 비트 데이타(data-in[0])과 상기 앤드 게이트(269)의 출력 신호를 논리곱하는 앤드 게이트(271)과, 이 앤드 게이트(271)의 출력 신호와 비트 데이타(data-in[3])를 배타적 논리합하여 데이타(out[4])를 출력하는 배타적 오아 게이트(272)과, 비트 데이타(data-in[3])와 상기 앤드 게이트(271)의 출력 신호를 논리곱하는 앤드 게이트(273)과, 이 앤드 게이트(273)의 출력 신호과 비트 데이타(data-in[5)를 배타적 논리합하여 데이타(out[5)를 출력하는 배타적 오아 게이트(274)와, 비트 데이타(data-in[5)와 상기 앤드 게이트(273)의 출력 신호를 논리곱하는 앤드 게이트(275)과, 이 앤드 게이트(275)의 출력 신호와 비트 데이타(data-in[5])를 배타적 논리합하여 데이타(out[6)를 출력하는 배타적 오아 게이트(276)과, 비트 데이타(data-in[6)과 상기 앤드 게이트(275)의 출력 신호를 논리곱하는 앤드 게이트(277)과, 이 앤드 게이트(277)의 출력 신호와 비트 데이타(data-in[7)를 배타적 논리합하여 데이타(out[7)를 출력하는 배타적 오아 게이트(278)로 구성함을 특징으로 하는 프로그램 개발 장치.The method of claim 5, wherein the incrementor 260 comprises an inverter 265 for inverting the least significant bit data (in [0]) and outputting data out [0] [0] [1]) and outputs an exclusive OR gate 266 for outputting the data out [0] and an AND gate 267 for logically multiplying the bit data (data-in [0] An exclusive OR gate 268 for exclusive-ORing the output signal of the AND gate 267 with the bit data (dat-in [0]) and outputting the data out [2] An AND gate 269 for logically multiplying the output signal of the AND gate 269 by the AND gate 269 and an output signal of the AND gate 267 and an AND gate 269 for exclusive ORing the output signal of the AND gate 269 and the bit data data- an AND gate 271 which logically multiplies the output data of the AND gate 269 with the bit data (data-in [0]) and an exclusive OR gate 270 which outputs the AND gate 271) An exclusive OR gate 272 for exclusive-ORing the signal and the bit data (data-in [3]) to output the data out [4], and an exclusive OR gate 272 for outputting the bit data (data- And an exclusive OR gate 274 for outputting the data out [5] by performing an exclusive OR operation on the output signal of the AND gate 273 and the bit data (data-in [5] An AND gate 275 which logically multiplies the output data of the AND gate 273 with the bit data DATA-IN [5], and an output signal of the AND gate 275 and data-in [5 ] And outputs an exclusive OR gate 276 for outputting the data out [6] and an AND gate 277 for logically multiplying the output data of the data-in [6] and the AND gate 275, And an exclusive-OR circuit 276 for exclusive-ORing the output signal of the AND gate 277 and the bit data (data-in [7]) and outputting the data out [ Program development apparatus characterized in that it consists of ah gate 278. 청구항 l 에 있어서, 데이타 비교 블럭은 어드레스(addr[7:0])와 레지스러 블럭의 출력 신호(dev[7:0], id[7:0])가 각기 일치하는지 비교하는 어드레스 비교기와, 데이타(data[7:0])와 상기 레지스터 블럭의 출력 신호(stop[7:0], run[7:0], clr[7:0]가 각기 일치하는지 비교하는 데이타 비교기로 구성함을 특징으로 하는 프로그램 개발 장치.The data comparison block of claim 1, wherein the data comparison block includes an address comparator that compares the addresses addr [7: 0] with the output signals dev [7: 0] and id [7: 0] And a data comparator for comparing the data (data [7: 0]) with the output signals (stop [7: 0], run [7: 0], clr [7: 0] . 청구항 8에 있어서, 어드레스 비교기는 어드레스(addr[7:0])와 레지스터 블럭의 출력 신호(dev[7:0])를 배타적 노아링하는 배타적 노아 게이트(280)와, 이 배타적 노아 게이트(280)의 출력 신호(dev-com[7:0])를 논리곱하는 앤드 게이트(285)와, 라이트 신호(wr)과 상기 앤드 게이트(285)의 출력 신호를 논리곱하여 인에이블 신호(dev-en)를 출력하는 앤드 게이트(290)와, 리드 신호(rd)와 상기 앤드 게이트(285)의 출력 신호를 논리곱하여 신호(dev-nd)를 출력하는 앤드 게이드(291)와, 어드레스(addr[7:0])와 레지스터 블럭(202)의 출력 신호(id[7:0])를 배타적 노아링하는 배타적 노아 게이트(281)과, 이 배타적 노아 게이트(281)의 출력 신호(id-com[7:0])를 논리곱하는 앤드 게이트(286)로 구성함을 특징으로 하는 프로그램 개발 장치.An address comparator as claimed in claim 8 wherein the address comparator comprises an exclusive NOR gate 280 for exclusive NORing the address addr [7: 0] and the output signal of the register block dev [7: 0] An AND gate 285 which logically multiplies the output signal (dev-com [7: 0]) of the write signal wr and the AND gate 285, An AND gate 290 which outputs a signal (dev-nd) by logarithmically multiplying the output signal of the AND gate 285 by a read signal rd and an AND gate 290 which outputs an address addr [7: The exclusive NOR gate 281 for exclusive NORing the output signal id [7: 0] of the register block 202 and the output signal id [7: 0] of the register block 202, 0]) and an AND gate (286) for logically multiplying the output of the AND gate (286). 청구항8 에 있어서, 데이타 비교기는 데이타(data-in[7:0])과 상기 레지스터 블럭(202)의 출력 신호(stop[7:0])를 배타적 노아링하는 배타적 노아 게이트(282)과, 이 배타적 노아 게이트(282)의 출릭 신호(stop-com[7:0])를 논리곱하는 앤드 게이트(287)와, 데이타(data-in[7:0])과 상기 레지스터 블럭(202)의 출력 신호(run[7:0])를 배타적 노아링하는 배타적 노아 게이트(283)과, 이 배타적 노아 게이트(283)의 출력 신호(run-com[7:0])를 논리곱하는 앤드 게이트(288)과, 데이타(data-in[7:0])와 상기 레지스터 블럭(202)의 출력 신호(clr[7:0])를 배타적 노아링하는 배타적 노아 게이트(284)와, 이 배타적 노아 게이트(284)의 출력 신호(clr-com[7:0])를 논리곱하는 앤드 게이트(289)와, 라이트 신호(wr)와 상기 앤드 게이트(286)(287)의 출력 신호를 낸딩하여 신호(stop-ins)를 출력하는 낸드 게이트(292)과, 라이트 신호(wr)과 상기 앤드 게이트(286)(288)의 출력 신호를 낸딩하여 신호(run-ins)를 출력하는 낸드 게이트(293)과, 라이트 신호(wr)과 상기 앤드 게이트(286)(289)의 출력 신호를 낸딩하여 신호(clr-ins)를 출력하는 낸드 게이트(294)로 구성함을 특징으로 하는 프로그램 개발장치.The data comparator of claim 8, wherein the data comparator comprises an exclusive NOR gate (282) for exclusive-noising the data (data: in [7: 0]) and the output signal of the register block (stop [7: 0] An AND gate 287 for logically multiplying the exclusive-OR gate 282 output signal (stop-com [7: 0]) of the exclusive NOR gate 282, Gate 288 which logically multiplies the output signal (run-com [7: 0]) of this exclusive N0 gate 283 with an exclusive N0 gate 283 which exclusively performs Noo ring on the signal run [7: 0] An exclusive N0 gate 284 for exclusive N'ing the data (data-in [7: 0]) and the output signal clr [7: 0] of the register block 202 and an exclusive N0 gate 284 An AND gate 289 which logically multiplies the output signal clr-com [7: 0] of the write signal wr and the AND gate 286 A NAND gate 292 for outputting a signal A NAND gate 293 for outputting a signal run-ins by nANDing the output signal of the AND gates 286 and 288 and a NAND gate 293 for outputting a write signal wr and the AND gate 286 And a NAND gate 294 for outputting a signal clr-ins. 청구항 1에 있어시, 제어 블럭은 플래그 비트(CF) 및 인터럽트 요구 신호 (int-rq)를 출력하는 플래그 신호 출력부와, 모드 신호(CM1)(CM0)를 출력하는 모드신호 출력부와, 런-비트(CR)를 출력하는 런-비트 출력부와, 라이트 신호(wr)와 어드레스 복호 블럭의 출력 신호(tcon)를 낸딩하여 상기 모드 신호 출력부와 런-비트 출력부에 클럭으로 입력시키는 낸드 게이트(320)과, 상기 모드 신호 출력부의 출력 신호(CM1)(CM0)를 논리 조합하여 상기 플래그 신호 출력부 및 런-비트 출력부에 절환 신호를 출력하는 스위칭부로 구성함을 특징으로 하는 프로그램 개발 장치.The control block includes a flag signal output unit for outputting a flag bit CF and an interrupt request signal int-rq, a mode signal output unit for outputting a mode signal CM1 (CM0) A run-bit output section for outputting a bit CR and a NAND circuit for ninthly outputting a write signal wr and an output signal tcon of an address decoding block and inputting the output signal tcon as a clock to the mode signal output section and the run- And a switching unit for outputting a switching signal to the flag signal output unit and the run-bit output unit by logically combining the gate signal (320) and the output signal (CM1) (CM0) of the mode signal output unit Device. 청구항 11에 있어서, 플래그 신호 출력부는 데이타 계수 블럭의 출력 신호(t-ov)를 클럭으로 하여 하이 신호(Vdd)를 래치하는 디플립플롭(325)과, 이 디플립플롭(325)의 반전 출력 신호를 반전하여 인터럽트 요구 신호(int-rq)를 출력하는 인버터(326)와, 모드 신호 출력부의 출력 신호(CM1)(CM0)를 논리곱하는 앤드 게이드(343)와, 래지스터 블럭(202)의 출력 신호(bd[5:0])에 따라 내부 데이타(data-in[7:0])중 하나를 출력하는 멀티플렉서(334)와, 이 멀티플렉서(334)의 출력 신호과 내부 데이타(data-in[3])중 하나를 선택하는 스위치(335)와, 이 스위치(335)의 출력 신호를 반전하는 인버터(336)와, 이 인버터(336)의 출력 신호과 스위치(324)의 출릭 신호를 노아링하는 노아 게이트(337)과, 리셋 신호(rst)과 상기 노아 게이트(337)의 출력 신호를 낸딩하는 낸드 게이트(338)와, 이 낸드 게이트(338)의 출력 신호와 상기 앤드 게이트(339)의 출력 신호를 논리합하여 상기 디플립플롭(325)을 세트시키는 오아 게이트(339)와, 상기 스위치(324)(335)의 출력 신호를 논리합하는 오아 게이트(340)와, 이 오아 게이트(340)의 출력 신호와 리셋 신호(rst)를 논리곱하는 앤드 게이트(341)과, 상기 앤드 게이트(341)의 출력 신호에 따라 상기 앤드 게이트(341)의 출력 신호과 데이타 비교 블럭의 출력 신호(clr)중 하나를 선택하여 상기 디플립플롭(325)을 리셋시키는 스위치(342)로 구성함을 특징으로 하는 프로그램 개발 장치.The flip-flop circuit according to claim 11, wherein the flag signal output unit comprises: a D flip-flop (325) for latching the high signal (Vdd) with the output signal (t-ov) An inverter 326 for inverting the signal and outputting the interrupt request signal int-rq and an AND gate 343 for logically multiplying the output signal CM1 (CM0) of the mode signal output section, A multiplexer 334 for outputting one of the internal data (data-in [7: 0]) according to the output signal bd [5: 0], an output signal of the multiplexer 334 and data- 3), an inverter 336 for inverting the output signal of the switch 335, and an output signal of the inverter 336 and an output signal of the switch 324 A NAND gate 337 for outputting a reset signal rst and a NAND gate 338 for outputting an output signal of the NOR gate 337, An OR gate 339 which performs an OR operation on the output signal of the AND gate 339 and the output signal of the AND gate 339 to set the D flip flop 325; An AND gate 341 for logically multiplying the output signal of the AND gate 341 by a reset signal rst and an AND gate 343 for inverting the output of the AND gate 341 according to an output signal of the AND gate 341. [ And a switch (342) for selecting one of the output signal (clr) of the signal / data comparison block and resetting the D flip flop (325). 청구항 11에 있어서, 모드 신호 출력부는 낸드 게이트(320)의 출력 신호를 클럭으로 하여 내부 데이타(data-in[2])를 래치하여 모드 신호(CM1)를 출력하는 디플립플롭(327)과, 이 디플립플롭(327)의 반전 출력 신호를 반전하여 모드 신호(mod-emu)를 출력하는 인버터(328)과, 상기 낸드 게이트(320)의 출력 신호를 클럭으로 하여 내부 데이타(data-in[1])를 래치하여 모드 신호(CM0)를 출력하는 디플립플룝(329)로 구성함을 특징으로 하는 프로그램 개발 장치.The mode signal output unit may include a D flip-flop 327 for latching the internal data (data-in [2]) and outputting the mode signal CM1 with the output signal of the NAND gate 320 as a clock, An inverter 328 for inverting the inverted output signal of the D flip flop 327 and outputting a mode signal mod-emu; 1]) and outputting the mode signal (CM0). 청구항 11에 있어서, 런-비트 출력부는 라이트 신호(wr)와 어드레스 복호 블럭(201)의 출력 신호(tcon)을 낸딩하는 낸드 게이트(320)와, 레지스터 블럭(202)의 출력 신호(M[2:0])에 따라 내부 데이타(data-in[7:0])중 하나를 선택하는 멀티플렉서(321)와, 이 멀티플렉서(321)의 출력 신호과 내부 데이타(data-in[0])중 하나를 선택하는 제1 스위치(322)와, 데이타 비교 블럭(205)의 출력 신호(dev-en)를 반전하는 인버터(323)와, 이 인버터(323)의 출력 신호와 상기 낸드 게이트(320)의 출력 신호중 하나를 선택하는 제2 스위치(324)과, 상기 스위치(324)의 출력 신호를 클럭으로 하여 상기 스위치(322)의 출력 신호를 래치하는 디플립플롭(330)과, 이 디플립플롭(3330)의 반전 출력 신호를 반전하여 런-비트 신호(run-bit)로 출력하는 인버터(331)와, 데이타 비교 블럭의 출력 신호(run)를 반전하는 인버터(344)와, 이 인버터(344)의 출력 신호, 리셋 신호(rst), 모드 신호 출력부의 출력 신호(CM1)(/CM0)를 낸딩하여 상기 디플립플롭(330)을 세트시키는 낸드 게이트(345)와, 상기 데이타 비교 블럭의 출력 신호(stop)를 반전하는 인버터(346)와, 이 인버터(346)의 출력 신호와 상기 모드 신호 출력부의 출력 신호(CM1)(CM0)를 낸딩하는 낸드 게이트(347)와, 이 낸드 게이트(347)의 출력 신호와 리셋 신호(rst)를 논리곱하여 상기 디플립플롭(330)을 리셋시키는 앤드 게이트(348)로 구성함을 특징으로 하는 프로그램 개발 장치.The run-bit output section includes a NAND gate 320 for nailing the write signal wr and the output signal tcon of the address decoding block 201, and an output signal M [2] of the register block 202 : One of the output data of the multiplexer 321 and the internal data (data-in [0]) is selected by the multiplexer 321 for selecting one of the internal data (data-in [ An inverter 323 for inverting the output signal (dev-en) of the data comparison block 205 and a second switch 322 for selecting the output of the NAND gate 320 A D flip-flop 330 for latching the output signal of the switch 322 with the output signal of the switch 324 as a clock, and a D flip-flop 3330 for latching the output signal of the D flip- Inverting the output signal of the data comparison block and outputting the inverted output signal as a run-bit signal (run-bit) And a NAND gate 343 for setting the D flip-flop 330 by nANDing the output signal of the inverter 344, the reset signal rst, and the output signal CM1 (/ CM0) 345) for inverting an output signal (stop) of the data comparison block and an inverter 346 for inverting an output signal (CM1) (CM0) of the output signal of the inverter 346 and a NAND gate And an AND gate 348 for inverting the output signal of the NAND gate 347 and the reset signal rst to reset the D flip-flop 330. 청구항 11에 있어서, 스위칭부는 상기 디플립플롭(329)의 반전 출력 신호를 반전하는 인버터(332)와, 이 인버터(332)의 출력 신호와 상기 디플립플롭(327)의 비반전 출력 신호(out[2])를 논리곱하여 상기 스의치(322)(324)에 절환 신호를 출력하는 앤드 게이트(333)로 구성함을 특징으로 하는 프로그램 개발 장치.The switching unit includes an inverter 332 for inverting the inverted output signal of the D flip-flop 329 and a noninverting output signal out of the D flip-flop 327, And an AND gate (333) for logically multiplying the squared value ([2]) and outputting a switching signal to the squint (322) and (324). 청구항 1에 있어서, 데이타 복호 블럭은 레지스터 블럭의 출력 신호(bd[2:0],2. The data decoding circuit as claimed in claim 1, wherein the data decoding block outputs the output signal bd [2: 0] bd[5:3])를 각기 디코딩하는 디코더(301)(302)와, 제어 블럭의 출력 신호(tcon[3], tcon[0])를 각기 반전하는 인버터(303)(304)와, 이 인버터(303)(304)의 출력 신호와 상기 디코더(301)(302)의 출력 신호를 논리 연산하여 신호(tcon-e[7:0])의 각 비트를 출력하는 논리 회로(305∼312)로 구성함을 특징으로 하는 프로그램 개발 장치.(303) 304 for inverting the output signals tcon [3] and tcon [0] of the control block, respectively, and inverters 303 and 304 for inverting the output signals tcon [ Logic circuits 305 to 312 for logically operating the output signals of the inverters 303 and 304 and the output signals of the decoders 301 and 302 and outputting the respective bits of the signals tcon-e [7: 0] And a second program code. 청구항 16에 있어서, 논리 회로(305∼312)는 디코더(301)의 출력 신호와 인버터(303)의 출력 신호를 논리합하는 제1 오아 게이트와, 디코더(302)의 출력 신호와 인버터(304)의 출력 신호를 논리합하는 제2 오아 게이트와, 상기 제1,제2 오아 게이트의 출력 신호를 낸딩하여 신호(tcon-e)를 출력하는 낸드 게이트로 각기 구성함을 특징으로 하는 프로그램 개발 장치.The logic circuit 305 to 312 includes a first OR gate for performing an OR operation between the output signal of the decoder 301 and the output signal of the inverter 303, And a NAND gate for outputting a signal (tcon-e) by nANDing an output signal of the first and second gates, respectively. 청구항 1에 었어서, 제1 데이타 출력부는 제어 블럭의 출력 신호(mod-emu)와 데이타 비교 블럭의 출력 신호(dev-rd)를 논리곱하는 앤드 게이트(368)와, 이 앤드 게이트(368)의 출력 신호가 하이인 경우 데이타 디코딩 블럭(206)의 출력 신호(tcon-e[7:0])를 전송하는 버퍼(369)로 구성함을 특징으로 하는 프로그램 개발 장치.The first data output unit includes an AND gate 368 for logically multiplying the output signal (mod-emu) of the control block and an output signal (dev-rd) of the data comparison block, And a buffer 369 for transmitting the output signal tcon-e [7: 0] of the data decoding block 206 when the output signal is high. 청구항 1에 있어서, 제2 데이타 출력부는 리드 신호(rd-in)와 어드레스 복호 블럭의 출력 신호(clr, run, stop, id, ex-mod, dev)를 각기 논리곱하는 앤드 게이트(351∼356)과, 이 앤드 게이트(351∼356)의 각각의 출력 신호가 하이인 경우 레지스터 블럭(202)의 각각의 출력 신호를 전송하는 버퍼(359∼364)로 구성함을 특징으로 하는 프로그램 개발 장치.The second data output unit includes AND gates 351 to 356 for logically multiplying the read signal rd-in and the output signals clr, run, stop, id, ex-mod and dev of the address decoding block, And buffers (359 to 364) for transmitting the respective output signals of the register block (202) when the output signals of the AND gates (351 to 356) are high. 청구항 1에 있어서, 제3 데이타 출력부는 리드 신호(rd-in)와 어드레스 복호 블럭의 출력 신호(tcnt)를 논리곱하는 앤드 게이트(357)와, 이 앤드 게이트(357)의 출력 신호가 하이인 경우 데이타 계수 블럭(202)의 출력신호(out[7:0])를 전송하는 버퍼(365)로 구성함을 특징으로 하는 프로그램 개발 장치.The third data output unit includes an AND gate 357 for logically multiplying the read signal rd-in and an output signal tcnt of the address decoding block, and an AND gate 357 for outputting the output signal of the address decoding block when the output signal of the AND gate 357 is high And a buffer (365) for transmitting the output signal out [7: 0] of the data coefficient block (202). 청구항 1에 있어서, 제4 데이타 출력부는 리드 신호(rd-in)와 어드레스 복호 블럭의 출력 신호(tcon)를 논리곱하는 앤드 게이트(358)와, 이 앤드 게이트(358)의 출력 신호가 하이인 경우 제어 블럭의 출력 신호(out[3:0])를 내부 버스로 전송하는 버퍼(367)와, 상기 앤드 게이트(358)의 출력 신호가 하이인 경우 접지 신호를 출력 신호(out[7:4])로 하여 내부 버스에 전송하는 버퍼(366)로 구성함을 특징으로 하는 프로그램 개발 장치.The fourth data output unit includes an AND gate 358 for logically multiplying the read signal rd-in and an output signal tcon of the address decoding block, A buffer 367 for transmitting the output signal out [3: 0] of the control block to the internal bus; a buffer 367 for outputting the output signal out [7: 4] when the output signal of the AND gate 358 is high; And a buffer 366 for transferring the program to the internal bus. 청구항 1에 있어서, 데이타 계수 제어부는 클럭(ck)과 제어 블럭의 출력 신호(run-bit)를 논리곱하여 데이타 계수 블럭에 클럭(cok)을 출력하는 앤드 게이트로 구성함을 특징으로 하는 프로그램 개발 장치.2. The program development apparatus as claimed in claim 1, wherein the data coefficient control unit comprises an AND gate for performing a logical multiplication of a clock (ck) and an output signal (run-bit) of the control block to output a clock (cok) .
KR1019960047644A 1996-10-23 1996-10-23 Program development device Expired - Fee Related KR100186445B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960047644A KR100186445B1 (en) 1996-10-23 1996-10-23 Program development device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960047644A KR100186445B1 (en) 1996-10-23 1996-10-23 Program development device

Publications (2)

Publication Number Publication Date
KR19980028542A KR19980028542A (en) 1998-07-15
KR100186445B1 true KR100186445B1 (en) 1999-05-15

Family

ID=19478535

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960047644A Expired - Fee Related KR100186445B1 (en) 1996-10-23 1996-10-23 Program development device

Country Status (1)

Country Link
KR (1) KR100186445B1 (en)

Also Published As

Publication number Publication date
KR19980028542A (en) 1998-07-15

Similar Documents

Publication Publication Date Title
US4841436A (en) Tag Data processing apparatus for a data flow computer
US5542055A (en) System for counting the number of peripheral buses in each hierarch connected to primary bus for creating map of peripheral buses to locate peripheral devices
US5175819A (en) Cascadable parallel to serial converter using tap shift registers and data shift registers while receiving input data from FIFO buffer
EP0437276A2 (en) A microcomputer and a method for controlling its bus cycle
AU623457B2 (en) Increasing options in locating rom in computer memory space
GB1274830A (en) Data processing system
US5214767A (en) Full address and odd boundary direct memory access controller which determines address size by counting the input address bytes
US5210847A (en) Noncacheable address random access memory
US6336158B1 (en) Memory based I/O decode arrangement, and system and method using the same
US5515530A (en) Method and apparatus for asynchronous, bi-directional communication between first and second logic elements having a fixed priority arbitrator
US5717909A (en) Code breakpoint decoder
EP0110227A2 (en) Control memory organization
US5535349A (en) Data processing system and method for providing chip selects to peripheral devices
KR100186445B1 (en) Program development device
US4802089A (en) Status flag handling in a digital data processing system
US5481728A (en) Data processor having circuitry for high speed clearing of an interrupt vector register corresponding to a selected interrupt request
EP0256134B1 (en) Central processing unit
US5826059A (en) Microcomputer for emulation
GB2060943A (en) Electronic control for timing hammers in impact printers
EP0136699B1 (en) Programmable controller
US6175518B1 (en) Remote register hierarchy accessible using a serial data line
US5678030A (en) Modification of timing in an emulator circuit and method
CN1004945B (en) address control device
KR100460761B1 (en) Device supporting microcontroller development system
SU1151961A1 (en) Microprogram control device

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

FPAY Annual fee payment

Payment date: 20060911

Year of fee payment: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20071230

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20071230

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000