8. Bytes 와 관련 내용 모두

Alpha 아키텍쳐가 소개될때, 이것은 8-bit 와 16-bit 로드와 저장을 피하는 유일한 RISC 아키텍쳐였다. 이것은 32-bit와 64-bit 로드와 저장(Digital사의 명칭으로 lognword와 quadword)을 지원한다. co-architect(Dick Sites, Rich Witek) 는 다음 장점을 열거하여 이 디자인을 정당화 했다:

  1. 캐시와 메모리 sub-system의 Byte 지원은 32-bit와 64-bit를 위한 access를 늦추는 경향이 있다.

  2. Byte 지원은 cache/memory sub-syste내 고속 에러검출 회로를 만들기 어렵게 한다.

Alpha는 64-bit 레지스터내 바이트와 바이트 그룹을 조작하기 위한 강력한 명령어들을 제공하여 보충한다. 스트링 작동(e.g., Byte 벤치마크중 일부)을 위한 표준 벤치마크는 byte 조작에서 매우 잘 수행된다는 것을 보여준다.

byte 로드와 저장의 부재는 몇몇 소프트웨어 세마포어와 충돌하며 I/O 서브 시스템의 디자인과 충돌한다. I/O 문제에 대한 Digital 분해는 I/O 전달 동안 데이터 크기를 지정하기 위해 몇몇 하위 주소 라인을 사용하며 byte가 가능하기 때문에 이것들을 디코딩한다. 이것은 주소 공간을 낭비하는 Sparse Addressing이라 불리며 I/O 공간은 non-contiguous(내가 그것에 대해 쓸때 Sparse Addressing은 더 복잡해 졌다.)하게 된다. 이 문맥에서, I/O 공간은 PCI에 존재하는 모든 시스템 자원을 가리키며 PCI 메모리 공간과 PCI I/O 공간을 포함한다.

21164A 소개시, Alpha 아키텍쳐는 byte addressing을 포함하기 위해 ECO였다. 초기 CPU에서 이들 새 명령어 실행은 PECDEC PALcode 예외를 야기했다. 그래서 PALcode는 액세스를 처리한다. 이것은 성능 감소를 가진다. 이로 인한 결과는 이들 새 명령어(IMO)의 사용은 어플리케이션 코드보다는 디바이스 드라이버로 제한되어야 한다는 것이다.

이들 새 byte 로드와 저장은 앞으로의 지원 칩셋은 연속적인 I/O 공간을 지원할수 있다는것을 의미한다.