KR20000050874A - Micom development system including emulator using a flash rom and firmware upgrade method - Google Patents

Micom development system including emulator using a flash rom and firmware upgrade method Download PDF

Info

Publication number
KR20000050874A
KR20000050874A KR1019990001006A KR19990001006A KR20000050874A KR 20000050874 A KR20000050874 A KR 20000050874A KR 1019990001006 A KR1019990001006 A KR 1019990001006A KR 19990001006 A KR19990001006 A KR 19990001006A KR 20000050874 A KR20000050874 A KR 20000050874A
Authority
KR
South Korea
Prior art keywords
firmware
flash rom
emulator
debugger
area
Prior art date
Application number
KR1019990001006A
Other languages
Korean (ko)
Other versions
KR100601164B1 (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 KR1019990001006A priority Critical patent/KR100601164B1/en
Publication of KR20000050874A publication Critical patent/KR20000050874A/en
Application granted granted Critical
Publication of KR100601164B1 publication Critical patent/KR100601164B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3656Software debugging using additional hardware using a specific debug interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PURPOSE: A microcomputer development system is provided to maintain and upgrade rapidly emulators distributed in the field by directly porting upgraded firmware data to a flash ROM. CONSTITUTION: A microcomputer development system comprises a PC debugger(100), a communication line(200) and an emulator(300). The emulator(300) includes a main controller(310), an address/data bus(320), a flash ROM(330), and a static RAM(340). The PC debugger(100) is connected to the emulator(33) via the communication line(200), and the main controller(310) is connected to the flash ROM(330) and the static RAM(340) via the address/data bus(320). The flash ROM(330) includes a boot firmware area(331) and a loaded firmware area(332). The static RAM(341) includes a loading firmware area(341). The boot firmware area(331) is allocated to low address of a memory, the loading firmware area(341) allocated to high address, and the loaded firmware area(332) allocated between the two firmware areas(331,341). The main controller(310) uses the static RAM93400 as a read/write data area while performing the firmware of the flash ROM(330).

Description

플래시 롬을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템 및 펌웨어 업그레이드 방법{MICOM DEVELOPMENT SYSTEM INCLUDING EMULATOR USING A FLASH ROM AND FIRMWARE UPGRADE METHOD}MICOM DEVELOPMENT SYSTEM INCLUDING EMULATOR USING A FLASH ROM AND FIRMWARE UPGRADE METHOD}

본 발명은 마이콤 개발 시스템에 관한 것으로, 특히 배포된 에뮬레이터(Emulator)에 대한 신속한 유지 보수 및 기능상의 신속한 업그레이드(Upgrade)를 위해 플래시 롬 타입을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템 및 펌웨어(Firmware)의 업그레이드 방법에 관한 것이다.TECHNICAL FIELD The present invention relates to a microcomputer development system. In particular, the microcomputer development system and firmware upgrade including a emulator using a flash ROM type for rapid maintenance and quick upgrade of a function of a distributed emulator. It is about a method.

에뮬레이터는 컴퓨터의 기계어 프로그램을 그대로 다른 컴퓨터에서도 연산 처리를 할 수 있도록 하는 하드웨어적인 기능으로서, 모방 시스템이 피모방 시스템과 똑같이 동일 데이터를 받아들여 동일한 컴퓨터 프로그램을 실행하고, 동일한 결과를 얻도록 특정 시스템을 모방하는 장치나 컴퓨터 프로그램이다.An emulator is a hardware function that allows a computer's machine language program to be processed on another computer as it is. The emulator system accepts the same data and executes the same computer program and obtains the same result as the copied system. It is a device or computer program that mimics.

즉, 컴퓨터 시스템을 변경할 경우 프로그램의 호환성의 유무가 문제로 되는데, 이것은 오랫동안 축적되어 온 방대한 양의 프로그램을 다시 만드는 것은 그렇게 쉽지만은 않기 때문이다. 그래서 이전의 프로그램은 그대로 두고 일정한 방법으로 주행을 가능하게 한 방법이 바로 에뮬레이터이다.In other words, if you change the computer system, the compatibility of the program is a problem, because it is not so easy to re-create the vast amount of programs that have been accumulated for a long time. So, the emulator is the way to make it possible to run in a certain way without leaving the previous program.

마이콤(Micom) 개발 시스템 툴(Tool)은 개발용 툴의 일종으로, 마이콤을 이용한 시스템 개발시 마이콤 에뮬레이션을 통해서 시스템 디버깅(Debugging)을 가능케 하는 개발 환경이다. 마이콤을 이용하여 펌웨어를 개발해야 하는 사용자에게는 개발 기간과 노력을 단축시킬 수 있는 툴이다. 따라서, 이런 툴을 개발하는 것은 마이콤 개발에 못지 않게 중요하다.Micom development system tool is a kind of development tool. It is a development environment that enables system debugging through micom emulation during system development using micom. It is a tool that can shorten development period and effort for users who need to develop firmware using micom. Therefore, developing these tools is no less important than developing microcomputers.

종래의 회로내 에뮬레이터에서는 새로운 기능의 추가나 수정시 에뮬레이터의 펌웨어 수정이 필요하고, 그때마다 배포된 에뮬레이터를 회수하여 ROM(Read Only Memory)을 교체하는 작업을 해야 한다. 이러한 작업은 상당한 시간과 경비가 소요되는데 배포된 에뮬레이터에 대한 신속한 유지 보수 측면에서는 매우 취약한 단점이 있다.In the conventional in-circuit emulator, the emulator's firmware needs to be modified when adding or modifying a new function, and each time, the distributed emulator has to be recovered to replace the ROM (Read Only Memory). This task can be quite time consuming and expensive, which is very vulnerable in terms of rapid maintenance of deployed emulators.

본 발명은 이러한 단점을 해결하기 위한 것으로서, 에뮬레이터의 새로운 기능의 추가나 수정시 배포된 에뮬레이터에 대한 신속한 유지 보수 및 기능상의 신속한 업그레이드를 위해 EPROM(Erasable Programmable Read Only Memory) 타입이 아닌 플래시 롬 타입을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템 및 펌웨어의 업그레이드 방법을 제공한다.The present invention is to solve this drawback, and to use the flash ROM type instead of EPROM (Erasable Programmable Read Only Memory) type for rapid maintenance and quick upgrade of the emulator deployed when adding or modifying the new function of the emulator It provides a method for upgrading the microcomputer development system and firmware including the emulator.

도1은 본 발명에서 제안한 플래시 롬을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템의 블록도이다.1 is a block diagram of a microcomputer development system including an emulator using a flash ROM proposed in the present invention.

도2는 본 발명에서 제안한 플래시 롬을 이용한 에뮬레이터 내의 메모리 영역도이다.2 is a memory area diagram of an emulator using a flash ROM proposed by the present invention.

도3은 본 발명에서 제안한 플래시 롬을 이용한 에뮬레이터 가동후 로우드된 펌웨어의 업그레이드 순서도이다.3 is an upgrade flowchart of the loaded firmware after the emulator is started using the flash ROM proposed in the present invention.

상기한 기술적 과제를 해결하기 위한 본 발명의 플래시 롬 타입을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템은 PC(Personal Computer) 디버거와 통신 선로와 메인 컨트롤러(Main Controller)와 어드레스/데이터 버스와 플래시 롬과 스태틱 램(Static Random Access Memory)으로 구성된다. 또한, 플래시 롬은 부트(Boot) 펌웨어 영역과 로우드된(Loaded) 펌웨어 영역으로 되어 있고, 스태틱 램은 로우딩(Loading) 펌웨어 영역으로 되어 있다.In order to solve the above technical problem, a microcomputer development system including an emulator using a flash ROM type of the present invention includes a personal computer (PC) debugger, a communication line, a main controller, an address / data bus, a flash ROM, and a static RAM. (Static Random Access Memory). In addition, the flash ROM has a boot firmware area and a loaded firmware area, and the static RAM is a loading firmware area.

마이콤 개발 시스템 개발 툴은 하드웨어와 소프트웨어로 구분되는데, PC에서 동작하는 디버거는 소프트웨어 환경이고, 에뮬레이터는 하드웨어 환경이다.The microcomputer development system development tools are divided into hardware and software. The debugger running on a PC is a software environment, and the emulator is a hardware environment.

PC 디버거는 대상 프로그램을 한 명령마다 분할해서 실행시키고, 그 때의 중앙 처리 장치의 내부 상황을 나타내며, 프로그램의 오류를 찾아내고 고치는 작업을 수행한다.The PC debugger divides and executes the target program for each instruction, indicates the internal situation of the central processing unit at that time, and detects and corrects errors in the program.

에뮬레이터는 PC 디버거로부터 펌웨어를 다운로드받아 저장하고, 프로그램을 수행하며, PC 디버거와의 통신을 통해 디버깅 작업을 함으로써 펌웨어를 업그레이드시킨다.The emulator downloads and stores the firmware from the PC debugger, runs the program, and upgrades the firmware by communicating with the PC debugger for debugging.

통신 선로는 PC 디버거와 에뮬레이터간의 데이터의 송수신을 매개한다.The communication line mediates the transmission and reception of data between the PC debugger and the emulator.

메인 컨트롤러는 에뮬레이터가 PC 디버거로부터 다운로드받은 펌웨어를 적절한 순서로 수행하도록 에뮬레이터 전체를 제어한다.The main controller controls the entire emulator so that the emulator performs the firmware downloaded from the PC debugger in the proper order.

플래시 롬에는 실제 메인 컨트롤러용 프로그램이 저장되어 있고, 에뮬레이터가 파워 온(Power On)되면 플래시 롬의 프로그램이 수행되면서 에뮬레이터를 제어한다.The flash ROM stores the actual main controller program. When the emulator is powered on, the flash ROM program is executed to control the emulator.

한편, 실제로 프로그램하는 작업을 수행하는 코드(Code)는 플래시 롬이 아닌 스태틱 램에 복사하여 스태틱 램 상에서 플래시 롬을 프로그램한다.On the other hand, the code (Code) which actually executes the programming is copied to the static RAM, not the flash ROM to program the flash ROM on the static RAM.

어드레스/데이터 버스는 메인 컨트롤러와 플래시 롬 및 스태틱 램간의 어드레스와 데이터를 송수신한다.The address / data bus sends and receives addresses and data between the main controller and flash ROM and static RAM.

부트 펌웨어는 에뮬레이터 가동 직후 부팅되면서 에뮬레이터 환경을 초기화하고 로우드된 펌웨어를 업그레이드하거나 수행시키는 기능을 한다.The boot firmware is booted immediately after the emulator is started, which initializes the emulator environment and upgrades or executes the loaded firmware.

로우드된 펌웨어는 업그레이드되는 프로그램으로서, 부트 펌웨어에 불리어져서 실제 에뮬레이터를 제어하면서 디버거를 통해 에뮬레이터의 주기능을 수행한다.The loaded firmware is an upgraded program, called boot firmware, which performs the main functions of the emulator through a debugger while controlling the actual emulator.

로우딩 펌웨어는 업그레이드를 할 수 있도록 임시적으로 스태틱 램에 올려지는 프로그램으로서, 실제로 플래시 롬의 로우드된 펌웨어 영역에 새로운 로우드된 펌웨어를 프로그램하는 역할을 한다.The loading firmware is a program that is temporarily loaded into the static RAM for upgrade, and actually serves to program the new loaded firmware into the flashed firmware area of the flash ROM.

본 발명의 실시예를 첨부한 도1 및 도2를 참조하여 상세하게 설명하면 다음과 같다.When described in detail with reference to Figures 1 and 2 attached to the embodiment of the present invention.

도1은 본 발명에서 제안한 플래시 롬을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템의 블록도이다.1 is a block diagram of a microcomputer development system including an emulator using a flash ROM proposed in the present invention.

도2는 본 발명에서 제안한 플래시 롬을 이용한 에뮬레이터 내의 메모리 영역도이다.2 is a memory area diagram of an emulator using a flash ROM proposed by the present invention.

도 1에서와 같이, 본 발명의 플래시 롬을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템은 PC 디버거(100)와 통신 선로(200)와 에뮬레이터(300)로 되어 있고, 에뮬레이터(300)는 메인 컨트롤러(310)와 어드레스/데이터 버스(320)와 플래시 롬(330)과 스태틱 램(340)으로 구성된다.As shown in FIG. 1, the microcomputer development system including the emulator using the flash ROM of the present invention includes a PC debugger 100, a communication line 200, and an emulator 300, and the emulator 300 includes a main controller 310. And an address / data bus 320, a flash ROM 330, and a static RAM 340.

PC 디버거(100)는 통신 선로(200)를 통해 에뮬레이터(300)와 연결되고, 메인 컨트롤러(310)는 어드레스/데이터 버스(320)를 통해 플래시 롬(330) 및 스태틱 램(340)과 연결된다.The PC debugger 100 is connected to the emulator 300 through the communication line 200, and the main controller 310 is connected to the flash ROM 330 and the static RAM 340 through the address / data bus 320. .

또한, 도 2에서와 같이, 플래시 롬(330)은 부트 펌웨어 영역(331)과 로우드된 펌웨어 영역(332)으로 되어 있고, 스태틱 램(340)은 로우딩 펌웨어 영역(341)으로 되어 있다.In addition, as shown in FIG. 2, the flash ROM 330 includes a boot firmware region 331 and a loaded firmware region 332, and the static RAM 340 is a loading firmware region 341.

메모리의 로우(Low) 어드레스에 부트 펌웨어 영역(331)이 할당되어 있고, 하이(High) 어드레스에 로우딩 펌웨어 영역(341)이 할당되어 있으며, 부트 펌웨어 영역(331)과 로우딩 펌웨어 영역(341) 사이에 로우드된 펌웨어 영역(332)이 할당된다.The boot firmware region 331 is assigned to a low address of a memory, the loading firmware region 341 is assigned to a high address, the boot firmware region 331 and the loading firmware region 341. The loaded firmware area 332 is allocated between

메인 컨트롤러(310)는 플래시 롬(330)의 코드 즉 펌웨어를 수행하면서 읽고 쓸 수 있는 데이터 영역으로 스태틱 램(340)을 이용하고 있다. 이 메인 컨트롤러(310)는 코드와 데이터 어드레스 영역이 하나의 영역이다.The main controller 310 uses the static RAM 340 as a data area in which the code of the flash ROM 330 can be read and written while executing firmware. The main controller 310 has one code and data address area.

여기서 플래시 롬(330)은 프로그램 사이클 동안은 읽기 사이클이 와서는 안된다. 이 때문에 플래시 롬(330)을 프로그램하도록 수행되는 코드 영역과 프로그램할 영역이 동일한 플래시 롬(330) 상에 위치할 경우, 즉 플래시 롬(330) 내의 펌웨어가 실행되면서 동일 플래시 롬(330) 상에 프로그램을 하는 경우, 프로그램 사이클 중간에 플래시 롬(330)의 코드 패치 사이클(Code Fetch Cycle)이 오기 때문에 정상적인 프로그램이 이루어지지 않는다.Here, the flash ROM 330 should not have a read cycle during the program cycle. Therefore, when the code area to be programmed to program the flash ROM 330 and the area to be programmed are located on the same flash ROM 330, that is, the firmware in the flash ROM 330 is executed, on the same flash ROM 330. When programming, since the code fetch cycle of the flash ROM 330 comes in the middle of the program cycle, normal programming is not performed.

따라서, 실제로 프로그램한 작업을 수행하는 코드는 플래시 롬(330)이 아닌 스태틱 램(340)에 복사하여 스태틱 램(340) 상에서 플래시 롬(330)을 프로그램하는 방법을 선택한다.Therefore, the code that actually executes the programmed operation is copied to the static RAM 340 instead of the flash ROM 330 to select a method of programming the flash ROM 330 on the static RAM 340.

이를 위하여 제 2도에서와 같이 메모리 영역을 각 기능별로 펌웨어를 분리시킨다. 즉 플래시 롬(330) 상의 펌웨어는 두 가지로 분류된다. 하나는 에뮬레이터(300)가동 직후 부팅되면서 수행되는 부트 펌웨어(331)이고, 그리고 나머지 하나는 부트 펌웨어(331)에 의해 불리어져서 수행되는 로우드된 펌웨어(332)이다.To do this, as shown in FIG. 2, the memory area is separated for each function. That is, the firmware on the flash ROM 330 is classified into two types. One is boot firmware 331, which is performed by booting immediately after emulator 300 is started, and the other is loaded firmware 332, which is called and performed by boot firmware 331.

부트 펌웨어(331)는 에뮬레이터 환경을 초기화하고 로우드된 펌웨어(332)를 업그레이드하거나 수행시키는 기능을 한다.The boot firmware 331 functions to initialize the emulator environment and to upgrade or perform the loaded firmware 332.

로우드된 펌웨어(332)는 부트 펌웨어(331)에 의해 불리어져서 실제 에뮬레이터를 제어하면서 PC 디버거(100)를 통해서 디버깅 기능을 수행한다.The loaded firmware 332 is called by the boot firmware 331 to perform debugging functions through the PC debugger 100 while controlling the actual emulator.

스태틱 램(340) 상에 다운로드되는 로우딩 펌웨어(341)는 실제로 플래시 롬(330)의 로우드된 펌웨어(332) 영역에 새로운 로우드된 펌웨어(332)를 프로그램하는 역할을 한다.The loading firmware 341 downloaded on the static RAM 340 actually serves to program the new loaded firmware 332 in the area of the locked firmware 332 of the flash ROM 330.

이상과 같이 구성된 본 발명의 동작을 도 1 내지 도 3을 참조하여 설명하면 다음과 같다.Referring to Figures 1 to 3 the operation of the present invention configured as described above are as follows.

도3은 본 발명에서 제안한 플래시 롬을 이용한 에뮬레이터 가동후 로우드된 펌웨어의 업그레이드 순서도이다.3 is an upgrade flowchart of the loaded firmware after the emulator is started using the flash ROM proposed in the present invention.

에뮬레이터 가동후 로우드된 펌웨어의 업그레이드 순서는 다음과 같다.The upgrade sequence of the loaded firmware after the emulator is started is as follows.

에뮬레이터(300)가 가동되면(S100) 플래시 롬(330)의 부트 펌웨어(331)가 수행되고(S200) PC 디버거(100)와 통신 준비를 완료한다.(S300)When the emulator 300 is activated (S100), the boot firmware 331 of the flash ROM 330 is performed (S200) and the communication with the PC debugger 100 is completed. (S300)

다음, 에뮬레이터(300)가 펌웨어를 업그레이드할 것인지를 판별하여,(S400) 로우드된 펌웨어(332)를 업그레이드하기 위함이라면, 플래시 롬(330)을 프로그램할 수 있는 로우딩 펌웨어(341)를 스태틱 램(340) 영역에 다운로드(Down Load)한다.(S500)Next, if the emulator 300 determines whether to upgrade the firmware (S400), and the upgraded firmware 332 is to be upgraded, the loading firmware 341 that can program the flash ROM 330 is static. Down load to the RAM 340 area (S500).

스태틱 램(340) 영역에 다운로드가 끝나면 부트 펌웨어(331)는 로우딩 펌웨어(341)를 수행한다.(S600)After downloading to the static RAM 340 area, the boot firmware 331 performs the loading firmware 341 (S600).

로우딩 펌웨어(341)가 수행되면서 에뮬레이터(300)는 PC 디버거(100)와 통신을 한다.(S700)As the loading firmware 341 is performed, the emulator 300 communicates with the PC debugger 100 (S700).

PC 디버거(100)로부터 로우드된 펌웨어(332)는 플래시 롬(330)에 다운로드 되어(S800) 로우드된 펌웨어(332) 영역에 프로그램을 한다.(S900)The firmware 332 loaded from the PC debugger 100 is downloaded to the flash ROM 330 (S800) and programmed in the area of the loaded firmware 332. (S900)

로우드된 펌웨어(332) 영역의 프로그램이 종료되면 로우딩 펌웨어(341)는 로우드된 펌웨어(332)를 수행한다.(S910)When the program in the area of the loaded firmware 332 is terminated, the loading firmware 341 performs the loaded firmware 332 (S910).

로우드된 펌웨어(332)는 PC 디버거(100)와의 통신을 통해 디버깅 기능을 수행한다.(S920)The loaded firmware 332 performs a debugging function through communication with the PC debugger 100 (S920).

만일, 에뮬레이터 가동후 펌웨어 업그레이드 없이 바로 디버깅을 수행하기 위한 순서는 다음과 같다.If the debugger runs immediately after the emulator starts without firmware upgrade, the following is the procedure.

에뮬레이터(300)가 가동되면(S100) 플래시 롬(330)의 부트 펌웨어(331)가 수행되고(S200) PC 디버거(100)와 통신 준비를 완료한다.(S300)When the emulator 300 is activated (S100), the boot firmware 331 of the flash ROM 330 is performed (S200) and the communication with the PC debugger 100 is completed. (S300)

다음, 에뮬레이터(300)가 펌웨어를 업그레이드할 것인지를 판별하여,(S400) 로우드된 펌웨어(332)를 업그레이드하지 않고 로우드된 펌웨어(332)를 바로 수행한다.(S910)Next, the emulator 300 determines whether to upgrade the firmware (S400), and immediately performs the loaded firmware 332 without upgrading the loaded firmware 332. (S910)

로우드된 펌웨어(332)는 PC 디버거(100)와 통신을 통해 디버깅 기능을 수행한다.(S920)The loaded firmware 332 performs a debugging function through communication with the PC debugger 100. (S920)

본 발명은 에뮬레이터의 새로운 기능의 추가나 수정시 배포된 에뮬레이터에 대한 신속한 유지 보수 및 기능상의 신속한 업그레이드를 위해 EPROM 타입이 아닌 플래시 롬 타입을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템 및 펌웨어의 업그레이드 방법으로, 플래시 롬 타입은 소프트웨어적으로 읽고 쓰기가 가능하기 때문에 바로 플래시 롬에 새로운 펌웨어 데이터를 직접 프로그램할 수 있다. 따라서 업그레이드된 새로운 데이터를 유저(User)가 직접 선택하기만 하면 플래시 롬 상의 펌웨어가 업그레이드된다.The present invention is a method for upgrading a microcom development system and firmware including an emulator using an emulator using a flash ROM type rather than an EPROM type for rapid maintenance and quick upgrade of an emulator distributed when adding or modifying a new function of the emulator. The type can be read and written in software, allowing new firmware data to be programmed directly into the flash ROM. Therefore, the user simply selects the upgraded new data and the firmware on the flash ROM is upgraded.

Claims (5)

대상 프로그램을 한 명령마다 분할해서 실행시키고, 그 때의 중앙 처리 장치의 내부 상황을 나타내며, 프로그램의 오류를 찾아내고 고치는 작업을 수행하는 PC 디버거와;A PC debugger which divides and executes the target program for each instruction, indicates the internal situation of the central processing unit at that time, and finds and corrects errors in the program; 상기 PC 디버거로부터 펌웨어를 다운로드받아 저장하고, 프로그램을 수행하며, 상기 PC 디버거와의 통신을 통해 디버깅 작업을 함으로써 펌웨어를 업그레이드시키는 에뮬레이터와;An emulator that downloads and stores firmware from the PC debugger, executes a program, and upgrades the firmware by performing a debugging operation through communication with the PC debugger; 상기 PC 디버거와 상기 에뮬레이터간의 데이터의 송수신을 매개하는 통신 선로를 포함하는And a communication line for mediating transmission and reception of data between the PC debugger and the emulator. 플래시 롬을 이용한 마이콤 개발 시스템.Microcomputer development system using flash ROM. 제1항에서,In claim 1, 상기 에뮬레이터는The emulator is 상기 PC 디버거로부터 다운로드받은 펌웨어를 적절한 순서로 수행하도록 상기 에뮬레이터 전체를 제어하는 메인 컨트롤러와;A main controller which controls the entire emulator to execute the firmware downloaded from the PC debugger in a proper order; 파워 온되면 상기 에뮬레이터를 제어하는 프로그램을 수행하는 플래시 롬과;A flash ROM for executing a program for controlling the emulator when powered on; 상기 플래시 롬으로부터 실제로 프로그램하는 작업을 수행하는 코드를 복사하여 상기 플래시 롬을 프로그램하는 스태틱 램과;A static RAM for copying the code to actually program the flash ROM and programming the flash ROM; 상기 메인 컨트롤러와 상기 플래시 롬 및 상기 스태틱 램을 연결하며, 어드레스와 데이터를 송수신하는 어드레스/데이터 버스를 포함하는An address / data bus connecting the main controller to the flash ROM and the static RAM and transmitting and receiving an address and data; 플래시 롬을 이용한 마이콤 개발 시스템.Microcomputer development system using flash ROM. 제2항에서,In claim 2, 상기 플래시 롬은The flash ROM is 상기 에뮬레이터 가동 직후 부팅되면서 에뮬레이터 환경을 초기화하는 부트 펌웨어 영역과;A boot firmware region which is booted immediately after the emulator is started and initializes an emulator environment; 상기 부트 펌웨어 영역에 불리어져서 상기 에뮬레이터의 주기능을 수행하는 로우드된 펌웨어 영역을 포함하는A booted firmware area, called the boot firmware area, that performs the main functions of the emulator; 플래시 롬을 이용한 마이콤 개발 시스템.Microcomputer development system using flash ROM. 제2항에서,In claim 2, 상기 스태틱 램은The static ram 실제로 상기 플래시 롬의 로우드된 펌웨어 영역에 새로운 로우드된 펌웨어를 프로그램하는 로우딩 펌웨어로 되어 있는Is actually the loading firmware that programs the new loaded firmware into the locked firmware area of the flash ROM. 플래시 롬을 이용한 마이콤 개발 시스템.Microcomputer development system using flash ROM. 상기 에뮬레이터 가동시 상기 플래시 롬의 부트 펌웨어가 수행되고 상기 PC 디버거와 통신 준비를 하는 단계와;Booting firmware of the flash ROM when the emulator is running and preparing to communicate with the PC debugger; 펌웨어를 업그레이드할 것인지를 판별하고, 상기 플래시 롬을 프로그램할 수 있는 로우딩 펌웨어를 상기 스태틱 램 영역에 다운로드하고, 상기 부트 펌웨어에 불리어져 상기 PC 디버거와 통신을 하는 로우딩 펌웨어를 수행하는 단계와;Determining whether to upgrade the firmware, downloading the loading firmware to program the flash ROM into the static RAM area, and performing the loading firmware called the boot firmware to communicate with the PC debugger; ; 상기 PC 디버거로부터 로우드된 펌웨어를 다운로드 받아서 상기 플래시 롬의 로우드된 펌웨어 영역에 프로그램을 하고, 상기 로우딩 펌웨어를 통해 로우드된 펌웨어를 수행하는 단계와;Downloading the loaded firmware from the PC debugger, programming the loaded firmware area of the flash ROM, and performing the loaded firmware through the loading firmware; 상기 로우드된 펌웨어가 상기 PC 디버거와의 통신을 통해 디버깅 기능을 수행하는 단계를 포함하는 플래시 롬을 이용한 마이콤 개발 시스템의 펌웨어 업그레이드 방법.And performing the debugging function by the loaded firmware through communication with the PC debugger.
KR1019990001006A 1999-01-15 1999-01-15 Emulator using a flash rom and firmware upgrade method KR100601164B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990001006A KR100601164B1 (en) 1999-01-15 1999-01-15 Emulator using a flash rom and firmware upgrade method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990001006A KR100601164B1 (en) 1999-01-15 1999-01-15 Emulator using a flash rom and firmware upgrade method

Publications (2)

Publication Number Publication Date
KR20000050874A true KR20000050874A (en) 2000-08-05
KR100601164B1 KR100601164B1 (en) 2006-07-13

Family

ID=19571405

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990001006A KR100601164B1 (en) 1999-01-15 1999-01-15 Emulator using a flash rom and firmware upgrade method

Country Status (1)

Country Link
KR (1) KR100601164B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020036717A (en) * 2000-11-10 2002-05-16 다카노 야스아키 Microcomputer and method for controlling the same
KR100410557B1 (en) * 2001-11-19 2003-12-18 주식회사 하이닉스반도체 Microcontroller with program patching capability and method for operating the same
KR100459729B1 (en) * 2002-11-20 2004-12-03 삼성전자주식회사 Method for download firmware
KR100922102B1 (en) * 2002-12-17 2009-10-16 엘지전자 주식회사 Method for upgrade and backup in mobile terminal
KR101054180B1 (en) * 2005-06-15 2011-08-03 현대아이티주식회사 Program upgrade device and method of MICOM for controlling electronic products
US8775779B2 (en) 2006-10-10 2014-07-08 Google Inc. Controlling access to a power supply memory
US9032250B1 (en) 2012-11-05 2015-05-12 Google Inc. Online testing of secondary power unit

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0644064A (en) * 1992-07-22 1994-02-18 Nec Corp Firmware reloading system
KR970006024B1 (en) * 1992-08-06 1997-04-23 삼성전자 주식회사 Apparatus for debug
JPH0727472A (en) * 1993-07-13 1995-01-27 Matsushita Refrig Co Ltd Refrigerator
KR100196526B1 (en) * 1996-10-31 1999-06-15 김영환 Realtime control system for emulation
KR100199020B1 (en) * 1996-12-06 1999-06-15 정선종 A boot emulation method for spax
JPH10214201A (en) * 1997-01-29 1998-08-11 Mitsubishi Electric Corp Microcomputer

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020036717A (en) * 2000-11-10 2002-05-16 다카노 야스아키 Microcomputer and method for controlling the same
KR100410557B1 (en) * 2001-11-19 2003-12-18 주식회사 하이닉스반도체 Microcontroller with program patching capability and method for operating the same
KR100459729B1 (en) * 2002-11-20 2004-12-03 삼성전자주식회사 Method for download firmware
KR100922102B1 (en) * 2002-12-17 2009-10-16 엘지전자 주식회사 Method for upgrade and backup in mobile terminal
KR101054180B1 (en) * 2005-06-15 2011-08-03 현대아이티주식회사 Program upgrade device and method of MICOM for controlling electronic products
US8775779B2 (en) 2006-10-10 2014-07-08 Google Inc. Controlling access to a power supply memory
US9032250B1 (en) 2012-11-05 2015-05-12 Google Inc. Online testing of secondary power unit

Also Published As

Publication number Publication date
KR100601164B1 (en) 2006-07-13

Similar Documents

Publication Publication Date Title
US5864698A (en) Disk based bios
US5812848A (en) Subclassing system for computer that operates with portable-executable (PE) modules
US5561800A (en) Method and apparatus for incrementally linking modified routines into software
US5652869A (en) System for executing and debugging multiple codes in a multi-architecture environment using jacketing means for jacketing the cross-domain calls
US5966540A (en) Hosted machine code installation
US5613098A (en) Testing and debugging new Y architecture code on existing X architecture system by using an environment manager to switch between direct X code execution and simulated Y code execution
JP4006337B2 (en) How to fix executable execution using shared libraries
US20080178143A1 (en) System, Method and Computer Program Product for Developing, Configuring, Installing and Testing Software
KR100311582B1 (en) Soft read-only stroage(ros)
US7331046B2 (en) Program and information processing method
US7032108B2 (en) System and method for virtualizing basic input/output system (BIOS) including BIOS run time services
US20190129733A1 (en) Android dynamic framework and a method thereof
KR20040102735A (en) Method for implementing embedded system for mobile communication
KR20050028157A (en) Booting and boot code update method and system thereof
KR20070039841A (en) Digital tv and upgrade method of bootloader for the same
US20070101115A1 (en) Information processing device, bios processing method and program
JPH04233057A (en) Option board prom
JP2009252194A (en) Data processor, hardware access method, and hardware access program
KR100601164B1 (en) Emulator using a flash rom and firmware upgrade method
CN111679839A (en) On-line programming method of MCU FLASH
RU2352972C2 (en) Method and device for adaptation of functions of working processes control
US5613125A (en) Method and system for selectively defining hardware parameters in an executable operating system program
KR100303307B1 (en) Downloading device and method for debugging operation in real time operating system
CN113157329A (en) Method, system, server and storage medium for starting application
JP3308920B2 (en) Information processing device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090615

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee