KR20030053675A - 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵에뮬레이트 방법 - Google Patents

시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵에뮬레이트 방법 Download PDF

Info

Publication number
KR20030053675A
KR20030053675A KR1020010083623A KR20010083623A KR20030053675A KR 20030053675 A KR20030053675 A KR 20030053675A KR 1020010083623 A KR1020010083623 A KR 1020010083623A KR 20010083623 A KR20010083623 A KR 20010083623A KR 20030053675 A KR20030053675 A KR 20030053675A
Authority
KR
South Korea
Prior art keywords
system software
hardware
unit
data
virtual memory
Prior art date
Application number
KR1020010083623A
Other languages
English (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 KR1020010083623A priority Critical patent/KR20030053675A/ko
Publication of KR20030053675A publication Critical patent/KR20030053675A/ko

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 시스템 개발시 하드웨어가 지원되지 않는 시점에도 시험을 위한 시스템 소프트웨어의 수정없이 하드웨어와는 독립적으로 시스템 소프트웨어의 주요 기능들을 실제 하드웨어상에서 시험하는 것과 같은 환경을 제공하는 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법을 제공하기 위한 것으로, 사용자가 서버에 접속하여 설정된 에뮬레이트 관련 정보를 입력하는 단계와; 클라이언트 프로세스가 시스템 소프트웨어에 의해 액세스될 하드웨어 유니트들의 베이스 어드레스를 설정된 가상의 메모리 영역에 할당하는 단계와; 사용자에 의해 입력된 에뮬레이트 관련 정보를 서버 프로세스가 설정된 데이터 통신 프로토콜을 통해 클라이언트 프로세스에게 전송하는 단계와; 클라이언트 프로세스 전송된 에뮬레이트 관련 정보를 바탕으로 가상의 메모리 영역에 데이터를 기록하는 단계와; 가상의 메모리 영역에 기록된 데이터를 시스템 소프트웨어가 읽어가 처리한 후 처리 결과를 서버 프로세스로 전달하는 단계를 포함하여 이루어지며, 시스템의 개발 공정 중 하드웨어의 지원이 불가능한 시점에 시스템 소프트웨어를 수정없이도 하드웨어 인터페이스 모듈을 포함한 전체 시스템 소프트웨어에 대한 개별 테스트를 워크스테이션상에서 수행할 수 있다.

Description

시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법 {Hardware address map emulator for system software test}
본 발명은 하드웨어 어드레스 맵 에뮬레이터(Address MAP Emulator)에 관한 것으로, 보다 상세하게는 시스템 개발 과정에서 하드웨어가 제공되지 않은 시점에 하드웨어와는 독립적으로 시스템 소프트웨어를 시험할 수 있도록 에뮬레이터를 구현하기에 적당하도록 한 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법에 관한 것이다.
일반적으로 내장형 시스템(또는 임베디드 시스템)을 개발하는 과정에서 공정의 최종 단계는 모든 소프트웨어와 하드웨어를 통합하여 연동 상태를 파악하는 시스템 통합 시험이다. 시스템 통합 시험 이전에 각각의 소프트웨어와 하드웨어는 개별적으로 시험이 되어 그 고유의 기능과 동작이 충분히 검증되어야 하는데, 하드웨어와 직접 인터페이스를 해야 하는 시스템 소프트웨어의 개별 시험은 하드웨어의 지원없이는 수행되기 어렵다.
시스템 소프트웨어의 개발이 완료된 시점에 맞춰 하드웨어의 지원이 곧바로 이어진다면 문제가 없겠지만, 하드웨어의 개발이 늦어졌을 경우에는 하드웨어 개발 완료 시점까지 시스템 소프트웨어의 개별 시험이 어렵게 되고 이로 인해 개발 공정에도 차질이 발생된다. 따라서 하드웨어가 지원되지 않는 상태에서도 시스템 소프트웨어를 시험할 수 있도록 하기 위한 기술이 요구된다.
한편, 시스템 소프트웨어는 게이트 어레이(Gate Array)로 구현된 하드웨어 인터럽트 함수를 통해 하드웨어상의 절대주소를 가진 레지스터에 데이터를 쓰거나 읽음으로써 하드웨어와 이벤트를 주고 받는다.
예를 들어 유니트 1번의 베이스 어드레스(UNIT_ADDR[0])가 10000000h(HEX)이고 유니트내의 신호 손실 경보를 알려주는 플래그 레지스터(Flag Register)의 오프셋 어드레스(SIG_LOS_ADDR)가 100h라고 하면, 시스템 소프트웨어는 다음과 같은 하드웨어 인터페이스 함수(프로그래밍 언어 C 또는 C++로의 작성예)를 통하여 해당 유니트에 대한 신호 손실 정보를 감지하게 된다.
Check_Unit1_Sig_loss()
{
if(*(char*)(UNIT_ADDR[0]+SIG_LOS_ADDR))
return(LOSS)
else
return(CLEAR)
}
그런데 유니트 1번에 해당하는 베이스 어드레스 10000000h는 실제 타겟이 되는 하드웨어상에서 의미있는 절대주소이기 때문에 하드웨어 타겟이 아닌 워크스테이션상에서 시스템 소프트웨어를 시험하기 위해서는 하드웨어를 대신해서 시스템 소프트웨어에게 이벤트를 제공할 수 있어야 한다.
종래에는 시스템 소프트웨어의 일부인 위와 같은 하드웨어 인터페이스 함수를 완전히 배제하고 이를 대신하는 테스트 용구(Test Harness)를 시험용으로 만들어 추가하거나 시스템 소프트웨어에 수정을 가하여 명령 프롬프트 상에서 특정 이벤트를 입력하면 테스트 용구나 수정된 소프트웨어가 이벤트를 받아 적절한 동작을 수행하였다.
도1은 종래기술에 따른 시스템 소프트웨어 시험 방법의 적용 상태도이다.
도1에 따르면, 시스템 소프트웨어 시험을 위해 제1 및 제2 프로세스(110)(120)간의 통신이 이루어지고, 제2 프로세스(120)가 시스템 소프트웨어(130)에게 이벤트를 전달하는 역할을 한다. 프로세스1(110)은 이벤트 명령을 사용자로부터 입력받아 소켓을 통한 IPC(Inter Process Communication)를 이용하여 프로세스2(120)에게 전달하고, 프로세스2(120)는 프로세스1(110)로부터 받은 이벤트를 시스템 소프트웨어(130)에 전달하여 준다. 시스템 소프트웨어(130)는 프로세스2(120)로부터 이벤트를 전달받고 그에 적절한 동작을 수행한다.
예를 들어 명령 프롬프트상에서 '1번 유니트에 신호 손실'이라는 이벤트를 주면 해당 이벤트를 전달받은 시스템 소프트웨어(130)는 '1번 유니트에 신호 손실'이라는 이벤트에 상응하는 후속 조치를 취하게 된다.
그러나 이상 설명한 종래기술에 있어서, 시스템 소프트웨어의 일부인 하드웨어 인터페이스 모듈을 완전히 해제하고 이벤트를 곧바로 시스템 소프트웨어에게 전달하여 시스템 소프트웨어를 시험하기 때문에 하드웨어 인터페이스 모듈의 논리적 무결성에 대한 시험은 이루어지지 못하는 단점이 있다.
더불어 하드웨어 인터페이스 모듈 대신 이벤트를 전달받기 위하여 시스템 소프트웨어내에 추가적인 코드를 넣어주거나 수정을 해주어야 하는 번거로움이 있다.
본 발명은 상기와 같은 종래의 문제점을 해소하기 위해 창출된 것으로, 본 발명의 목적은 시스템 개발시 하드웨어가 지원되지 않는 시점에도 시험을 위한 시스템 소프트웨어의 수정없이 하드웨어와는 독립적으로 시스템 소프트웨어의 주요 기능들을 실제 하드웨어상에서 시험하는 것과 같은 환경을 제공하는 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법을 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명의 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법은, 사용자가 서버에 접속하여 설정된 에뮬레이트 관련 정보를 입력하는 단계와; 클라이언트 프로세스가 시스템 소프트웨어에 의해 액세스될 하드웨어 유니트들의 베이스 어드레스를 설정된 가상의 메모리 영역에 할당하는 단계와; 상기 사용자에 의해 입력된 에뮬레이트 관련 정보를 서버 프로세스가 설정된 데이터 통신 프로토콜을 통해 상기 클라이언트 프로세스에게 전송하는 단계와; 상기 클라이언트 프로세스 상기 전송된 에뮬레이트 관련 정보를 바탕으로 상기 가상의 메모리 영역에 데이터를 기록하는 단계와; 상기 가상의 메모리 영역에 기록된 데이터를 상기 시스템 소프트웨어가 읽어가 처리한 후 처리 결과를 상기 서버 프로세스로 전달하는 단계를 포함하는 것을 그 특징으로 한다.
도1은 종래기술에 따른 시스템 소프트웨어 시험 방법의 적용 상태도.
도2는 본 발명의 실시예에 따른 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법의 적용 상태도.
도3은 본 발명의 실시예에 따른 특정 레지스터 엑세스 상태도.
도4는 본 발명의 실시예에 따른 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법의 순서도.
* 도면의 주요 부분에 대한 부호의 설명 *
210 : 에뮬레이터 서버 프로세스
220 : 에뮬레이터 클라이언트 프로세스
230 : 시스템 소프트웨어
231 : 하드웨어 인터페이스 함수250 : 메모리부
251 : 유니트 어드레스 할당 맵 252 : 가상 메모리 동적할당 맵
이하, 첨부도면을 참조하여 본 발명에 따른 바람직한 실시예를 설명한다.
도2는 본 발명의 실시예에 따른 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법의 적용 상태도이고, 도3은 본 발명의 실시예에 따른 특정 레지스터 엑세스 상태도이며, 도4는 본 발명의 실시예에 따른 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법의 순서도이다.
본 실시예는 워크스테이션상에서 시스템 소프트웨어를 시험하는데 있어서 워크스테이션의 동적 메모리상에 실제 하드웨어 어드레스 맵을 에뮬레이션함으로써 가상의 하드웨어 타겟을 만들어 주는 것이다.
즉, 하드웨어 어드레스 맵을 동적할당 메모리에 에뮬레이트하여 하드웨어가 지원되지 않는 상태에서도 시스템 소프트웨어와 그 일부인 하드웨어 인터페이스 모듈을 시험할 수 있도록 한다. 이러한 에뮬레이터에서 동적할당 메모리는 워크스테이션의 가용한 메모리를 할당받아 사용하고, 하드웨어 인터페이스 모듈은 게이트 어레이내에 적재되는 하드웨어 인터페이스 함수들로 구현된다.
도2에 따르면, 본 실시예에서 시스템 소프트웨어 시험을 위한 구성은, 사용자가 워크스테이션을 통해 시험을 요구하고 에뮬레이트 관련 정보를 입력하도록 된 에뮬레이터 서버 프로세스(210), 에뮬레이터 서버 프로세스(210)와의 소켓 통신을 통해 에뮬레이터 서버 프로세스(210)로부터 에뮬레이터 관련 정보를 전달받아 설정된 가상의 하드웨어 맵에 쓰도록 된 에뮬레이터 클라이언트 프로세스(220), 하드웨어 유니트 어드레스 할당 맵(251)과 가상 메모리 동적할당 맵(252)을 포함하여 에뮬레이터 클라이언트 프로세스(220)가 에뮬레이터 관련 정보를 기록할 수 있도록 된 메모리부(250), 메모리부(250)의 가상 메모리 동적할당 맵(252)을 엑세스하여 에뮬레이터 관련 정보에 포함된 이벤트를 처리하고 그 처리 결과를 가상 메모리 동적할당 맵(252)에 기록하는 시스템 소프트웨어(230)를 포함하여 이루어진다.
이때 시스템 소프트웨어(230)는 하드웨어 인터페이스 모듈(231)을 통해 메모리(250)의 동적할당 맵(252) 영역을 엑세스하게 되며, 시스템 소프트웨어(230)가 이벤트를 처리한 결과는 다시 동적할당 맵(252)과 클라이언트 프로세스(220)를 거쳐 서버 프로세스(210)로 전달된 후 사용자가 이를 확인할 수 있도록 적절하게 표시된다.
서버 프로세스(210)는 입력 프롬프트를 통해 사용자로부터 데이터를 입력받아 클라이언트 프로세스(220)로 전달하며, 클라이언트 프로세스(220)는 서버 프로세스(210)로부터 받은 데이터를 가상의 하드웨어 맵인 동적할당 맵(252)에 써 준다.
한편, 에뮬레이터를 구동시키지 않고 실제 하드웨어 유니트를 액세스하고자 하는 경우에는 시스템 스프트웨어(230)가 인터페이스 모듈(231)을 통하여 하드웨어 어드레스 할당 맵(251)의 할당 영역을 액세스하게 된다. 이러한 동작은 본 발명과 무관하므로 상세한 설명은 생략한다.
도3에 도시된 바에 따르면, 하드웨어 인터페이스 모듈(231)의 각 함수들은 각 유니트(unit N)의 베이스 어드레스(UNIT_ADDR[N])를 기준으로 오프셋 만큼의 어드레스에 위치한 특정 레지스터를 액세스한다. 예를 들어, 1번 유니트(UNIT 1)의 신호 손실 경보를 알리는 플래그 레지스터의 오프셋(SIG_LOS_OFFSET)이 주어지면, 베이스 어드레스(UNIT_ADDR[0])로부터 해당 오프셋 만큼 이동된 위치에서 신호 손실 경보 플래그값(SIG_LOS_FLAG)을 엑세스하게 된다. 이는 DATA=*(UNIT_ADDR[0]+SIG_LOS_OFFSET)과 같이 표현될 수 있다.
하드웨어 유니트의 절대 베이스 어드레스는 전역변수로 저장되어 있는데, 맵 에뮬레이터는 이 전역변수에 유니트의 절대 베이스 어드레스 대신 워크스테이션상에서 동적으로 할당된 메모리 즉, 동적할당 메모리의 어드레스를 맵핑시켜 동적할당 맵(252)을 만들어 준다. 그러면 하드웨어 인터페이스 모듈(231)은 실제 하드웨어 유니트의 어드레스 맵(251)이 아닌 가상의 동적할당 맵(252)을 액세스 하게 된다.
이러한 어드레스 맵핑을 보다 구체적으로 설명하면, 실제 하드웨어상에서 유니트 1번의 절대 베이스 어드레스(UNIT_ADDR[0])가 10000000h라고 할 때, 시스템 소프트웨어(230)는 유니트 1번의 특정 레지스터를 액세스하기 위하여 하드웨어 인터페이스 모듈(231)내의 인터페이스 함수를 통해 10000000h 번지에 접근할 것이다
그런데 실제 하드웨어가 아닌 워크스테이션상에서 그 절대 번지(10000000h)에 접근하게 되면, 세그먼트 에러(Segmentation Error) 등의 예기치 않은 결과가 발생할 수 있다. 그래서 10000000h라는 하드웨어 절대주소 대신에 워크스테이션상에서 가용한 메모리 공간을 동적으로 할당받아 유니트 1번에 대한 베이스 어드레스로 사용되도록 하며, 이러한 방식으로 어드레스 맵핑이 이루어진다.
즉, 맵핑 전의 하드웨어 절대주소(워크스테이션상에서는 의미 없음)는
UNIT_ADDR[0]=0x10000000가 되고,
맵핑 후의 동적할당 메모리의 주소는
UNIT_ADDR[0]=malloc(size)와 같이 된다(여기서, malloc은 메모리 동적할당을 위한 함수이고, 그 인수 size는 할당될 메모리 영역의 크기를 지정하기 위한 것이다).
도4에 따르면, 서버 프로세스(210)는 입력 프롬프트를 통해 사용자로부터 유니트의 ID(UNIT ID), 레지스터의 오프셋(OFFSET), 레지스터에 쓸 값(16진수나 10진수)(DATA) 등의 에뮬레이트 관련 정보를 입력받아 클라이언트 프로세스(220)로 전달해 준다(S410~S420).
그리고 클라이언트 프로세스(220)는 각 유니트별 유니트 베이스 어드레스(UNIT_ADDR[])를 동적할당 맵(252)에 맵핑한다. 이러한 맵핑은 UNIT_ADDR[0]=malloc(size);, ..., UNIT_ADDR[N]=malloc(size);와 같이 코딩된다. 클라이언트 프로세스(220)는 유니트 베이스 어드레스 맵핑이 이루어지면 서버 프로세스(210)로부터 에뮬레이트 관련 정보가 수신되는지 여부를 확인하게 된다(S430~S440).
그래서 서버 프로세스(210)로부터 에뮬레이트 관련 정보(유니트 ID, 레지스터 오프셋, 레지스터에 쓸 데이터 등)가 수신되면, 클라이언트 프로세스(220)는 전달받은 에뮬레이트 관련 정보를 바탕으로 가상의 하드웨어 어드레스를 지시하는 동적할당 맵(252)의 해당 레지스터 어드레스(예를 들어, 유니트 01번의 경우라면 유니트 01 영역)에 데이터 값을 기록한다. 이는 *(UNIT_ADDR[N]+OFFSET)=DATA와 같이 코딩된다(S450).
하드웨어 인터페이스 모듈(231)이 동적할당 맵(252)을 액세스하여 유니트별 할당 영역에 기록된 이벤트를 읽어들여 시스템 소프트웨어(230)에 전달하게 한다(S460).
예를 들어 유니트 1번내에 신호 손실 경보 상태를 알려주는 레지스터(SIG_LOS_FLAG)의 오프셋(SIG_LOS_OFFSET)이 100h라 하고 그 레지스터 값이 '01'일 때 그 경보가 발령 상태임을 나타낸다고 하면, 경보의 발령 이벤트는 프롬프트상에 'prompt>1,100,01'과 같이 입력됨으로써 시스템 소프트웨어(230)에게 제공된다.
시스템 소프트웨어(230)는 해당 이벤트를 처리하여 그 결과를 생성한 후, 이러한 이벤트 처리 결과를 인터페이스 모듈(231)을 통해 다시 동적할당 맵(252)에 기록되도록 한다. 동적할당 맵(252)에 기록된 이벤트 처리 결과는 클라이언트 프로세스(220)에 의해 읽혀져 서버 프로세스(210)로 전달된 후 워크스테이션의 사용자 터미널에 표시된다(S470~S480).
이상 설명한 실시예는 본 발명의 다양한 변화, 변경 및 균등물의 범위에 속한다. 따라서 실시예에 대한 기재내용으로 본 발명이 한정되지 않는다.
본 발명의 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법에 따르면, 시스템의 개발 공정 중 하드웨어의 지원이 불가능한 시점에 하드웨어 인터페이스 모듈을 포함한 전체 시스템 소프트웨어에 대한 개별 테스트를 워크스테이션상에서 수행할 수 있도록 한다.
더불어 본 발명에 따른 시험환경은 시스템 소프트웨어의 일부인 하드웨어 인터페이스 모듈을 완전히 배제하고 시스템 소프트웨어를 시험하던 종래의 시험 환경과는 달리, 구현되어 있는 하드웨어 인터페이스 모듈을 그대로 포함하여 시험할 수 있어 하드웨어 인터페이스 모듈의 논리적 무결성에 대한 시험까지 가능하다.
또한, 본 발명의 적용하게 되면, 시험을 위해 시스템 소프트웨어를 수정해야 하는 번거로움이 없으며 하드웨어가 지원되면 시스템 소프트웨어를 별도의 가공없이 그대로 탑재할 수 있게 되는 장점이 있다.

Claims (5)

  1. 사용자가 서버에 접속하여 설정된 에뮬레이트 관련 정보를 입력하는 단계와;
    클라이언트 프로세스가 시스템 소프트웨어에 의해 액세스될 하드웨어 유니트들의 베이스 어드레스를 설정된 가상의 메모리 영역에 할당하는 단계와;
    상기 사용자에 의해 입력된 에뮬레이트 관련 정보를 서버 프로세스가 설정된 데이터 통신 프로토콜을 통해 상기 클라이언트 프로세스에게 전송하는 단계와;
    상기 클라이언트 프로세스 상기 전송된 에뮬레이트 관련 정보를 바탕으로 상기 가상의 메모리 영역에 데이터를 기록하는 단계와;
    상기 가상의 메모리 영역에 기록된 데이터를 상기 시스템 소프트웨어가 읽어가 처리한 후 처리 결과를 상기 서버 프로세스로 전달하는 단계를 포함하는 것을 특징으로 하는 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법.
  2. 제 1항에 있어서, 상기 사용자가 입력하는 에뮬레이트 관련 정보는,
    액세스될 유니트의 식별번호를 지시하는 유니트 ID, 상기 유니트 ID로 지정되는 하드웨어 유니트의 베이스 어드레스를 기준으로 한 액세스될 레지스터의 위치를 지시하기 위한 레지스터 오프셋, 및 상기 오프셋으로 지정되는 레지스터 영역에 기록될 데이터를 포함하여 이루어지는 것을 특징으로 하는 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법.
  3. 제 2항에 있어서, 상기 클라이언트 프로세스 상기 가상의 메모리 영역에 데이터를 기록하는 경우,
    상기 유니트 ID로 지시되는 유니트에 동적으로 할당된 유니트 베이스 어드레스를 기준으로 상기 레지스터 오프셋만큼 이동된 위치에 상기 데이터를 기록하며, 해당 메모리 영역에 이미 기록된 데이터가 있는 경우에는 상기 데이터로 갱신되도록 하는 것을 특징으로 하는 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법.
  4. 제 1항에 있어서, 상기 가상의 메모리 영역은,
    동적으로 할당되는 컴퓨터 가상 메모리 영역으로 상기 하드웨어 유니트들의 베이스 어드레스가 상기 할당되는 메모리 영역에 맵핑되도록 된 것을 특징으로 하는 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법.
  5. 제 1항에 있어서, 상기 가상의 메모리 영역에 기록된 데이터를 상기 시스템 소프트웨어가 읽어가는 경우,
    상기 시스템 소프트웨어내에 포함되어 실제 하드웨어 유니트들에 대한 인터페이스를 담당하는 하드웨어 인터페이스 모듈이 상기 가상의 메모리 영역을 액세스하도록 하고, 상기 하드웨어 인터페이스 모듈이 상기 가상의 메모리 영역을 액세스하여 읽어 들인 데이터를 상기 시스템 소프트웨어에서 처리하여 그 처리 결과를 생성하도록 하며, 상기 처리결과가 상기 하드웨어 인터페이스 모듈을 통해 상기 가상의 메모리 영역에 기록되도록 하는 것을 특징으로 하는 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵 에뮬레이트 방법.
KR1020010083623A 2001-12-22 2001-12-22 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵에뮬레이트 방법 KR20030053675A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010083623A KR20030053675A (ko) 2001-12-22 2001-12-22 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵에뮬레이트 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010083623A KR20030053675A (ko) 2001-12-22 2001-12-22 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵에뮬레이트 방법

Publications (1)

Publication Number Publication Date
KR20030053675A true KR20030053675A (ko) 2003-07-02

Family

ID=32212337

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010083623A KR20030053675A (ko) 2001-12-22 2001-12-22 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵에뮬레이트 방법

Country Status (1)

Country Link
KR (1) KR20030053675A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101019210B1 (ko) * 2007-04-25 2011-03-04 이화여자대학교 산학협력단 이뮬레이트를 활용한 임베디드 소프트웨어 테스트 장치 및그 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101019210B1 (ko) * 2007-04-25 2011-03-04 이화여자대학교 산학협력단 이뮬레이트를 활용한 임베디드 소프트웨어 테스트 장치 및그 방법
US8156475B2 (en) 2007-04-25 2012-04-10 Samsung Electronics Co., Ltd. Device and method for testing embedded software using emulator

Similar Documents

Publication Publication Date Title
US4792896A (en) Storage controller emulator providing transparent resource sharing in a computer system
US5729767A (en) System and method for accessing peripheral devices on a non-functional controller
CN100565472C (zh) 一种适用于多处理器核系统芯片的调试方法
US6298399B1 (en) System for managing input/output accesses at a bridge/memory controller having a status register for recording cause of interrupt
JPH11167544A (ja) Pcmciaカード及びそのプログラミング方法
WO1999066398A1 (en) Testing device driver reliability
US20040236564A1 (en) Simulation of a PCI device's memory-mapped I/O registers
US6412028B1 (en) Optimizing serial USB device transfers using virtual DMA techniques to emulate a direct memory access controller in software
US11237832B2 (en) Module with a serialization unit and improved compatibility with deserialization units of different series
CN114153779A (zh) 一种i2c通信方法、系统、设备、及存储介质
US6148384A (en) Decoupled serial memory access with passkey protected memory areas
CN110221867A (zh) 一种xp系统下脉冲i/o功能卡通信驱动系统及方法
US8250545B2 (en) Associated apparatus and method for supporting development of semiconductor device
CN110765060B (zh) Mdio总线到并行总线转换方法及装置、设备、介质
US5832246A (en) Virtualization of the ISA bus on PCI with the existence of a PCI to ISA bridge
CN108334453B (zh) 一种文件调试方法、装置、终端设备及存储介质
KR20030053675A (ko) 시스템 소프트웨어 시험을 위한 하드웨어 어드레스 맵에뮬레이트 방법
US20030225567A1 (en) System and method for emulating an embedded non-volatile memory
US6571356B1 (en) Interface system for in-circuit emulator
CN109783407B (zh) 一种基于fpga实现pc与显卡桥接的装置及方法
CN114328342A (zh) 一种用于PCIe异构加速卡的新型程控配置方法
US20030229727A1 (en) Method and apparatus of virtual COM port
US6560698B1 (en) Register change summary resource
CN116627496A (zh) 基于uvm的寄存器模型构建、验证方法、系统与电子设备
JPS6320545A (ja) エミユレ−タのレジスタ読出し装置

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination