36일차, Cache 연습문제
오늘은 오전 수업이 있어서 졸립다. 저녁에 약속이 있어서 다시 나가야 하는데 너무 졸려서 고민이다.
내가 패스트캠퍼스 환급챌린지로 수강 중인 강의는 반도체 설계를 위한 언어인 Verilog에 대한 강의다. 나는 전자전기공학부 3학년을 마쳤고, 시스템반도체설계 분야의 진로를 희망하는데 학부 수업에서 베릴로그를 배울 기회가 없었기 때문에 따로 강의를 구매하여 듣고 있다. 지금 듣고 있는 부분은 Computer Architecture를 배우는 단원이고, 그 중에서도 CPU에 관해 배우고 있다. 나는 이미 전공 과목으로 컴퓨터구조를 수강한 상황이라 이론 부분은 어렵지 않게 배우고 있다. 연습문제가 있는데, 베릴로그 실습은 무료 웹사이트인 https://www.edaplayground.com에서 진행한다.
오늘은 Cache 챕터의 마지막 2개 강의를 들었다. 연습문제와 Cache 종류에 관한 Advanced된 이론 설명이었다.
연습문제는 Direct mapped cache를 구현하는 것이었다. 구현하면서 내가 생각하지 못한 것들이 좀 있다는 걸 알게 되었다. 우선 지금까지 교과서에서 본 그림처럼 Dirty, Valid, Tag, Data를 한 줄로 만들어서 저장해야 할 거라고 생각했었는데 꼭 그렇지 않아도 된다는 걸 배웠다. 코드 상에서 Valid 배열 따로, Tag 배열 따로 만들더라도 각 배열의 같은 index끼리 내용만 맞으면 되는 거였다. 그리고 CPU가 쓰거나, Memory를 읽거나 할 때에는 다른 module과 통신하기 때문에 req와 ack를 주고받아야 한다는 걸 알게 되었다. clock을 고려하면서 handshake도 함께 고려하려니 어려웠다.
Victim Cache라는 걸 처음 들어봤는데, 특정 set가 다른 set보다 더 많이 접근될 때 효율이 좋다고 한다. 구체적으로 어떤 상황에서 사용하면 유용할지는 잘 모르겠다.
내일은 DRAM 챕터로 넘어간다. 컴퓨터구조를 열심히 배웠더니 Cache보다 DRAM에 대해서 더 모르는 것 같기도 하다.
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
패스트캠퍼스 [직장인 실무교육]
프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.
fastcampus.co.kr
#패스트캠퍼스 #직장인자기계발 #직장인공부 #환급챌린지 #패스트캠퍼스후기 #오공완
'패스트캠퍼스 챌린지' 카테고리의 다른 글
패스트캠퍼스 챌린지 35일차, 반도체 설계 기본 Verilog&FPGA (0) | 2024.03.06 |
---|---|
패스트캠퍼스 챌린지 34일차, 반도체 설계 기본 Verilog&FPGA (0) | 2024.03.05 |
패스트캠퍼스 챌린지 33일차, 반도체 설계 기본 Verilog&FPGA (0) | 2024.03.04 |
패스트캠퍼스 챌린지 32일차, 반도체 설계 기본 Verilog&FPGA (0) | 2024.03.03 |
패스트캠퍼스 챌린지 31일차, 반도체 설계 기본 Verilog&FPGA (0) | 2024.03.02 |
댓글