19 December 2004

BUS Arbitration Simulator

[Computer Architecture]





1. Objects
  1. 컴퓨터 시스템의 전체 구조를 모델링하고 각 디바이스의 입출력 인터페이스가 어떻게 동작하는지에 대한 시뮬레이터를 구현한다.
  2. 여러 디바이스들이 I/O를 요청할 때, 버스 사용을 중재하는 시뮬레이션이다.
  3. 프로젝트를 완성함으로써 컴퓨터 시스템 입출력 버스의 구조와 동작 방식을 이해한다.
  4. 프로젝트를 완성해 가는 과정에서 프로그램 언어의 사용을 습득한다.
  5. 내부 로직과 외부 그래픽이 어떻게 상호 작용하며 수행 되는지 안다.
  6. 효과적인 프로젝트 관리를 배운다.

2. Detail
  1. 입력 방식: 이 프로그램은 원하는 동작을 입력 형식에 맞춰 텍스트로 작성 되어 있는 문서 파일을 입력 받는다.
  2. 중재 방식: 각 디바이스들이 데이지 체인 중재 방식, 중앙 집중식 중재 방식, 폴링 중재 방식에 따라 어떻게 버스 사용 권한을 얻게 되는지 알게 해 준다.
  3. 중재 동작과 결과: 버스 사용을 요구한 디바이스가 권한을 얻은 후 어떤 커맨드를 주고 받음으로써 다음 디바이스가 Input/Output을 수행할 수 있게 되는지, 그러한 Input/Output을 수행하는데 걸리는 시간은 얼마나 걸리는 지를 알려준다.
  4. 시각적인 표현: 컴퓨터 구조와 관련 하여 컴퓨터에서의 입출력 시 버스의 사용에 대하여 시각적으로 이해할 수 있게 한다. 데이지 체인 중재 방식, 중앙 집중식 중재 방식, 폴링 중재 방식 버스가 서로 어떻게 다른지를 비교 분석 하고자 하는 사람에게 유용하다.
  5. 사용자는 디바이스, 메모리에서 일어나는 요청에 대한 처리 과정과 결과, 시간 등 을 사용자가 시뮬레이터의 출력 화면을 통해서 이해 할 수 있게 되며 입력파일의 값을 변화 시키면서 상황에 따라 각 중재방식의 장단점을 유추할 수 있게 된다

Intel Pentium M
Microsoft Window XP
Visual C++ (MFC)
Microsoft Visual C++6.0