2017-01-24 16 views
0

좋아요, I/O 및 메모리 전송에 다른 제어 라인을 사용하여 "Isolated I/O"에서 전송을 차별화하는 방법을 알 수 있습니다. 그러나 메모리 매핑 I/O에서 전송을 구별 할 수있는 방법은 동일한 제어 라인을 공유하는 것입니다. 또한 현대 시스템이 어떤 유형의 버스 아키텍처를 사용하는지 (예 : 코어 i3 또는 프로세서와 같은) ???메모리 매핑 I/O는 메모리와 I/O 전송을 어떻게 구별합니까?

감사

답변

1

당신은 당신의 땅 회선 전화에 다른 번호를 호출 할 수 있습니다, 아직 "컨트롤 라인은"모든 숫자에 대해 동일합니다.

NIC를 통해 다른 컴퓨터로 패킷을 보낼 수 있지만 "제어 라인"은 모든 패킷에 대해 동일합니다.

집에서 다른 목적지까지 운전할 수 있지만 "제어 라인"은 모든 목적지에서 동일합니다.

단어 : 라우팅.

MMIO가 같기 때문에 주소는 쓰기에 필요한 경로를 지정합니다.
최신 x86 CPU in this other answer of mine에서 사용 된 일반적인 연결이 나열되어 있습니다.

+0

괜찮아요 8086 마이크로 프로세서에서 이런 일이 생깁니다 : 16 비트 명령의 왼쪽 4 비트가 (주소 버스에있는) 2 진 시퀀스 "1 1 1 1"과 같고 그 I/O 명령 이는 데이터 버스의 데이터가 I/O를위한 것임을 의미하며 이진 시퀀스 0 1 0 1 (1 또는 0 및 임의의 3 비트가 1 1 1 미만)과 같으면 메모리 명령 (데이터 버스의 데이터를 의미 함 기억을위한 것이다) ??? –

+0

@Ahti MMIO와 격리 IO는 다른 것입니다. 그 이외에, 나는 당신의 후속 질문을 정말로 이해할 수 없습니다. "Intel Manual 2"용 Google의 경우 기계 코드를 포함한 모든 지침에 대한 참조를 찾을 수 있습니다. 원래 8086 명령어가 IO/mem 명령어를위한 쉬운 디코딩 스키마를 가지고 있는지보기가 힘들었습니다. opcode 공간은 8 진수로 의미가 있으며,이 방법을 시도해 볼 수 있습니다. –