인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

policapple님의 프로필 이미지
policapple

작성한 질문수

디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기

32bit CPU 설계와 Through-put 개선을 위한 Pipelining 설계 (Timing 이슈 해결을 위해 어떠한 테크닉을 사용하지는 알아봅시다.)

CPU강의 관련하여 질문드립니다.

해결된 질문

작성

·

64

0

안녕하세요 삼코치님. 좋은 강의 잘 듣고있습니다. 강의 수강 중 궁금한 점이 있어 질문드립니다.

 

1. instruction과 PC에서 4bit 씩 더해서 다음 instruction을 처리한다고 설명하셨는데, 왜 4bit씩 더해지는 것인지 궁금합니다.

instruction이 32bit= 4byte이므로 PC에서 4byte씩 더해져야 하는 것으로 이해하였습니다.

그래서 32bit안에 opcode와 메모리 주소가 들어있는데, 이걸 4bit씩 끊으면 다음 주소로 넘어간다는 게 이해가 가지 않습니다.

 

  1. CPU에서는 왜 read write가 아닌 load와 store를 사용하는 건가요? 행위는 동일하지만 단어만 다른것인지, 서로 전혀 다른 개념인지 궁금합니다.

 

3. 설계 프로젝트에서 data mem과 reg file이 언급해주신 store와 write back이 저장하는 장소의 차이라고 생각하면 될까요? (store는 메모리, write back은 cpu reg에 저장)

 

긴 글 읽어주셔서 감사합니다!

답변 2

0

안녕하세요, 답변 남겨드립니다.

1. 혹시 어떤 강의 몇분쯤일까요? 제가 잘못 설명드린거일수도 있어서, 잘못 설명드린거면 정정드리겠습니다.

2.
"Read"와 "Write"는 일반적으로 메모리에서 데이터를 읽거나 쓰는 행위를 설명하는 용어입니다. 반면, "Load"와 "Store"는 CPU와 메모리 간의 데이터 전송을 더 구체적으로 설명하는 용어입니다.

Load: 메모리에서 데이터를 CPU의 레지스터로 가져오는 작업입니다.

Store: CPU의 레지스터에서 데이터를 메모리에 저장하는 작업입니다.
따라서, "Load"와 "Store"는 CPU의 관점에서 메모리와의 데이터 전송을 강조하는 용어이며, "Read"와 "Write"는 더 일반적인 데이터 접근을 나타냅니다.


3.

맞습니다. 설계 프로젝트에서 언급된 "store"와 "write back"은 저장하는 장소가 다릅니다.

Store: 메모리에 데이터를 저장하는 작업으로, 일반적으로 데이터 메모리(data memory)에 해당합니다.

Write Back: CPU의 레지스터 파일(register file)에 데이터를 저장하는 작업입니다. 따라서, "store"는 메모리에 데이터를 저장하는 것이고, "write back"은 CPU 내부의 레지스터에 데이터를 저장하는 것으로 이해하시면 됩니다.

0

안녕하세요, 인프런 AI 인턴입니다. policapple님.

디지털 회로 설계 강의와 관련하여 문의하신 질문에 대해 답변 드리겠습니다.

  1. Instruction과 PC의 더셈

    • CPU의 프로그램 카운터(PC)는 메모리 내 다음 명령어의 주소를 가리킵니다. 일반적으로 instruction은 4바이트(32비트)이기 때문에 다음 명령어로 이동하려면 PC 값을 4 증가시켜야 합니다. 이 4는 명령어의 크기, 즉 하나의 명령어가 몇 바이트인지에 따라 다릅니다. 따라서 PC는 4바이트 단위로 증가하여 다음 명령어 위치로 이동합니다.
  2. Read/Write와 Load/Store의 차이

    • CPU에서 loadstore가 사용되는 이유는 전통적으로 데이터의 이동 방식을 명확히 하고자 함입니다. Read/Write는 일반적으로 메모리에서 데이터를 읽거나 기록하는 작업을 의미합니다. 반면, Load/Store는 프로세서 레지스터와 메모리 간의 데이터 전송을 강조하는 용어로, 각각 읽어오고 저장하는 작업에 대한 특성을 구분합니다. 기능적으로는 비슷할 수 있으나, 시스템의 맥락에서 다르게 이해하는 게 중요합니다.
  3. Data Memory와 Reg File의 차이

    • StoreWrite Back의 차이는 데이터가 저장되는 위치에 있습니다. Store 명령은 Data Memory에 데이터를 저장하는 것을 말합니다. 반면, Write Back은 연산 결과를 CPU의 레지스터 파일에 기록하는 것을 의미합니다. 설계 프로젝트에서 언급된 대로, 데이터 저장소의 위치를 기준으로 그 역할을 이해하시면 도움이 될 것입니다.

관련된 내용으로 더 알고 싶으시다면 아래의 질문들도 참고해보세요:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏

추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

policapple님의 프로필 이미지
policapple

작성한 질문수

질문하기