디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
wire mem_rd = miss & ~i_cpu_write; 이 코드를 보면 miss (N+1 clk)이고 ~i_cpu_write은 (N clk)인데 ~i_cpu_write 신호는 1 클락을 기다리게 됩니다. 이거에 대해서 AI한테 물어보니 cpu가 pipeline 이면 엄청난 문제가 되고 Handshake / Stall 구조이면 문제가 되지 않는다고 답을 주었습니다. cpu는 pipeline으로 설계한다고 강의 커리큘럼에 나와 있는데 저희가 설계하는 cpu를 cache와 연결 하는 거면 이건 오류가 아닌가요?
디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
아녕하세요. 지금 디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 수업을 듣고 있습니다. 이 수업을 들으면서 RTL 코딩 실력을 높이고 싶습니다. 일단 수업에 들었던 칩에서 어떤 인풋신호가 필요하고 또 아웃풋 신호가 필요한지 적어본 다음에 제공해 주시는 코드를 나름데로 분석한다고 하면서 코드 한줄 한줄 보면서 이 신호는 어느 신호고 왜 쓰였는지 공부하면서 보고있습니다. 하지만 이렇게 보는게 시간도 많이 걸리고 너무 나무만 보고 숲은 보지 않는 느낌도 듭니다. 또한 제가 직접 RTL 코드를 작성하지 않다 보니까 제 실력이 느는 것 같지도 않습니다. 이 경우 제가 어떻게 학습을 하는게 가장 효율 적일까요? 이 강의를 들으면서 여기서 진행하는 CPU설계나 UART를 제 프로젝트로 해서 직접 설계해보고 돌려 보는게 저의 목표입니다 . 하지만 cache 같은 부분을 보면서 코드를 분석하는데 2주 정도의 시간이 걸리니 이렇게 공부하는게 맞는지 조바심을 느낌니다. 이렇게 공부하는게 맞는지 의문이 듭니다.
디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
제가 아무것도 없이 cache코드를 작성하기에는 실력이 부족해서 넘겨주신 자료를 보면서 한줄 한줄 해석하면서 공부를 하고 있는데 다른 수업을 하시는 강사님이 cache 코드를 보고 일단은 block으로 그려서 신호가 왜 그렇게 들어고 나가는지 왜 신호를 assign했는지 알고 언제 신호가 들어고 등을 그려보는게 공부하는데 도움이 될거라고 하는데 block으로 그리면 input output신호는 전부 코드를 보고 그리는 건데 그렇게 그리는게 정말 도움이 될까요? 아니면 회로도 그리는게 다른 방식이 있나요?
안녕하세요 🙂 [1. 질문 챕터] : 34장,35장 [2. 질문 내용] : 34장과 35장에서 설계한 IP는 디스플레이에 들어가는 DDI의 구조를 설계한 것일까요? [3. 시도했던 내용, 그렇게 생각하는 이유] : 지금 디스플레이 공학을 배우고 있는데 화면에 데이터를 전달하는 역할이 마치 DDI의 역할과 비슷하여 궁금해서 여쭈어 봅니다! 아니면 DDI랑은 아예 관련이 없는 IP일까요?
안녕하세요 🙂 [1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요. [2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂 [3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) 안녕하세요, 맛비님. 아래 시간대에 언급해주신 링크가 영상 하단에 안 보여서 문의 드립니다. 관련 링크를 첨부해주시면 공부에 많은 도움이 될 것 같습니다. 4:50 - RESP 관련 링크 23:20 - AXI VIP 관련 링크 문의 읽어주셔서 감사합니다!
안녕하세요 🙂 [1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요. [2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂 [3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) 안녕하세요, 맛비님. [HDL 22장] : Basic Module 설명 부분 (2:55) 관련하여 질문 드립니다. 해당 module에서는 data를 저장하는 F/F의 CE에 s_ready만 연결되어 있는데, s_ready & s_valid로 연결되어야 하는 것이 아닌지 궁금합니다. handshake는 valid, ready가 모두 1일 때 data transfer가 발생하는 것으로 이해했는데, s_ready만 CE에 연결된 경우, s_valid == 0이어도 s_ready == 1이 되어서 data가 전달되는 상황이 발생되는 것이라고 생각했습니다. 좋은 강의 제공해주셔서 감사합니다.
디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
안녕하세요 강의듣는 수강생입니다. 수업 내용을 pdf로 필기하면서 진행중이었는데 초반강의에서 제공해주신 디지털회로설계 교안에서 chapter 5부터는 강의내용에 해당하는 pdf파일이 없고 띄엄띄엄 있어서 문의드립니다. 개인적으로 pdf파일로 필기를 하면서 수업을 듣는게 좀더 효율적으로 생각이들어서 혹시 제공해주실수 있으신지 해서 문의드립니다.
22장 4m쯤 Module 부분입니다. s_ready를 보면 m_valid =0이거나 m_ready = 1이면 s_ready가 1이 되도록 되어있습니다. m_ready가 1일때만을 가지고 s_ready의 값을 결정할 수 있다고 생각했는데 m_ready = 0 & m_valid = 0 인 경우때문인건가요? 이 경우도 유효한 data 값을 가지고 있지 않지만 master가 준비가 되어있지 않기 때문에 s_ready 값을 1로 올리면 안되지않나요?
안녕하세요 🙂 설계독학맛비님이 작성하신 코드를 보니, output같은 경우에 module에서 선언하실 때는 output o_dout; 처럼 하시고 따로 reg dout; 을 선언하신 뒤에 (코드상에서 o_dout과 dout값이 같다고 가정) assign o_dout = dout; 으로 작성을 하셨더라구요 이는 가독성때문인지 혹은 그냥 맛비님의 스타일인 것인지, 아니면 다른 이유가 있어서 다음과 같이 작성하신건지 궁금합니다. 강의를 듣기 전에 제가 설계를 진행하였을 때는 처음부터 output reg d_out; 했어서 이런 질문을 드립니다. 또 module input, output을 작성할 때 어떤 output이 reg type인지 몰라서 그렇다면 이후에 reg로 선언할 때도 dout 이 아닌 원래 output인 o_dout 을 이용해서 reg o_dout; 처럼 작성해도 되지않나 싶어서요 ! 의미없는 질문인 것같지만 갑자기 궁금증이 생겨 이렇게 질문 남깁니다 ..ㅎㅎㅎ 감사합니다.
안녕하세요 🙂 verilog HDL 시즌2로 처음 설계독학맛비님의 수업을 듣게 된 학생입니다. 다름이 아니라 10분쯤에 파일을 열기 위해 사용하신 gvim을 따라 사용하니 맛비님과 다른 화면이 나와 질문글을 남깁니다. 첫번째론 gvim을 찾을 수 없다고 나와 이어서 나온 설명대로 3가지를 install한 후 다시 실행하자 화면이 다른 것을 알게 되었고 그제서야 보니 맛비님은 gvim, 저는 neovim으로 되어있는 것을 보았습니다. 큰 문제는 아니나, 제 화면에서는 코드 확인과 수정 정도만 가능하지만 맛비님의 화면에서는 file부터 edit, tools, window 등 다양한 버튼이 있어 가능하면 똑같은 GVIM을 사용하고 싶은데 어떻게 하면 되는지 알려주시면 감사하겠습니다. [1. 질문 챕터] : HDL 22장 10분쯤 [2. 질문 내용] : gvim 관련하여 [3. 시도했던 내용, 그렇게 생각하는 이유] 아래의 화면과 같이 sudo pat install neovim-qt , vim-gik3, vim-motif을 실행 ㄴ
디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
강의 도중에 간단히 NAND나 NOT에 대한 질문이 나올 수 있다고 하셨는데, 모든 논리회로의 기초가 되는 NAND정도는 그리겠지만 디코더나 카운터 같은 복잡한 회로도 논리기호로 바로 표현하거나 CMOS로 그릴 줄 아는 수준까지 외워야될까요? 그리고 약간 이상한 질문일 수도 있겠지만, 취업을 위해서 베릴로그 코딩 구현 능력이 얼마나 있어야 되는지도 궁금합니다. 구현 능력이라 함은 면접에서 종이 한장을 주고 여기서 당장 4비트 FA에 대한 코드를 적어봐라, 라고 시킬 수도 있을까요? 설계를 할 때 처럼 전체적인 스켈레톤 코드나 의사코드를 작성하고나서 세세한 것은 AI나 서치를 이용해서 한다면 쉽겠지만 이게 아예 백지상태에서 엄밀한 코드를 작성하는 것은 쉽지 않으니까요... 쉽게 말하자면 소프트웨어 분야에서 취업할때 코딩테스트 보는것마냥 면접을 진행하는지 궁금합니다.