2012. 1. 20. 15:16
키보드 컨트롤러의 구조와 기능 카테고리 없음2012. 1. 20. 15:16
IO 포트와 키보드 컨트롤러 레지스터의 관계
0x64 : 컨트롤레지스터
0x64 : 상태 레지스터
0x60 : 입력 버퍼
0x60 : 출력 버퍼
상태 레지스터의 구성과 버퍼
7 : PARE : parity error의 약자, 0이면 오류 안난거, 1이면 오류난거 parity가 뭐지?
6 : TIM : timer, 일정시간 동안 키보드나 마우스가 응답을 안함
5 : AUXB : 1이면 마우스, 0이면 키보드임을 나타냄
4 : KEYL : keyboard lock 1이면 잠김, 0이면 안잠김
3 : C/D : 마지막으로 송신된 데이터의 종류를 의미
2 : SYSF : self-test가 성공적으로 끝났는지 여부를 의미
1 : INPB : input buffer state, 프로세서가 쓴 데이터가 남아있는지 확인, 1이면 아직 데이터를 안가져감, 0으로 설정되면 컨트롤러가 데이터를 가져가서 키보드나 마우스로 전송하여 입력버퍼가 비었음을 나타냄
0 : OUTB : 키보드 컨트롤러가 보낸 데이터가 남아있는지를 여부를 확인
0x64 : 컨트롤레지스터
0x64 : 상태 레지스터
0x60 : 입력 버퍼
0x60 : 출력 버퍼
상태 레지스터의 구성과 버퍼
7 : PARE : parity error의 약자, 0이면 오류 안난거, 1이면 오류난거 parity가 뭐지?
6 : TIM : timer, 일정시간 동안 키보드나 마우스가 응답을 안함
5 : AUXB : 1이면 마우스, 0이면 키보드임을 나타냄
4 : KEYL : keyboard lock 1이면 잠김, 0이면 안잠김
3 : C/D : 마지막으로 송신된 데이터의 종류를 의미
2 : SYSF : self-test가 성공적으로 끝났는지 여부를 의미
1 : INPB : input buffer state, 프로세서가 쓴 데이터가 남아있는지 확인, 1이면 아직 데이터를 안가져감, 0으로 설정되면 컨트롤러가 데이터를 가져가서 키보드나 마우스로 전송하여 입력버퍼가 비었음을 나타냄
0 : OUTB : 키보드 컨트롤러가 보낸 데이터가 남아있는지를 여부를 확인