묻고 답해요
148만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
hamming code 과제 질문
해당 코드에서 보면 decoder_ham은 var5가 parity bit1인 것처럼 코딩이 되어 있습니다.실제로 Hamming Decoder 모듈에서는 var1이 p1인 것처럼 코딩이 되어 있구요. 근데, d1을 선언할 때는 갑자기 var1자리에 var5가 입력됩니다.이상하게도 결괏값은 잘 나오는 거 같구요..제가 이해 못하는 무언가 있는건가요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
MOR에 사용하는 FIFO에 대한 질문 드립니다.
맛비님. 안녕하세요.좋은 강의 항상 잘 보고 있습니다.MOR에 대해 질문이 있습니다. RDMA에서 FIFO의 data에 burst len을 입력하는 것으로 해석됩니다. 만약 이런 경우라면0x20000000번지에서 128 바이트를 읽는 중0x2000C000번지에 128 바이트를 읽는 식으로 동작이 되나요?제가 코드를 봤을 땐 위처럼 동작이 불가능해보여서요. 만약 제가 생각한게 맞고 위처럼 동작하도록 수정하려면 메모리 주소 FIFO와 burst len FIFO 두 개를 사용해야할까요? ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
DRAM ctrl 과제 질문
안녕하세요. 현재 DRAM ctrl 과제 진행 중테스트밴치를 통해 웨이브폼을 확인하는 중입니다.혹시 여기서 cnt값을 추가해서 확인하고 싶으면, 어떻게 해야 할까요? cnt는 DRAM cell 내부에서 조건에 따라 카운팅을 해줘tRCD,tWLC등의 조건을 만족하는지 확인하는 파라미터입니다. 그리고 추가적으로 웨이브폼 확인 중 의문이 생기는 부분을 확인하여 질문 드립니다.해당 부분은 첫 번째 WR신호를 마친후 o_ack가 high로 변하는 타이밍입니다.해당 타이밍에 저는 curr_row와 next_row의 addr값이 서로 다르다고 생각하였습니다.그래서 precharge로 넘어가야 할 것이라 예상했는데, 실제로는 같은 row로 인식하여 한번 더 쓰기를 진행했습니다. 다만 이번엔 dq핀에서 40이 아닌 50으로 출력값이 나왔습니다.... 혹시 왜 이렇게 동작했는지 알려주실 수 있을까요..감사합니다
-
해결됨회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
부품 심볼이 없습니다.
안녕하세요 강사님 영상을 보면서 똑같이 따라했는데 cmomn, cmosp가 나오질 않습니다. 파일에 넣은곳에서도 찾아봤는데도 없네요
-
해결됨회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
여기서 강사님이 보여주신 내용대로 안나옵니다/
설정 다하고 tsmc 다운까지 받았는데 여기서 같은 설정 선택이 안 나오네요 이전에 설정하는 것부터 알려주세요
-
해결됨설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
SystemVerilog 에 대하여..
안녕하세요.열심히 verilog와 systemverilog를 공부중인 수강생입니다.학부에서 디지털설계를 배울때나, 뭐 인터넷에서 자료를 찾을 때 코드를 보면sequential logic : always @ (posedge clk) 사용combinational logic : always @(*) (혹은 assign) 사용이 공식처럼 되어있는 것 같고,맛비님의 Verilog season1의 강의를 들으며 코드를 봐도 마찬가지인데.... 현재 Systemverilog를 공부하고 있는데, 이런 저런 강의를 찾고 공부를 하다보니 , 여러 강의에서 아래와 같이 이야기를 하더라구요. ①Sequential logic에는 always @(posedge clk)이 아니라 always_ff @(posedge clk)을 사용하는 것이 좋고 combinational logic에는 always @(*) 대신 always_comb 를 사용하는 것이 좋다!(이유는 always_comb시 실수로 래치가 만들어지지 않고, 사람이 직접 @(*)을 관리하지 않고 자동적으로 감지하기 때문..) ②마찬가지의 맥락으로 여러 편리함의 이유때문에 variable 선언 시 reg 대신 logic을 사용하는 것이 편리하다. 이에 대해 한 가지 질문을 드리려고 합니다. 맛비님의 코드도 보면 always_ff나 always_comb, logic를 사용하진 않은 것 같은데 뭔가 다른 특별한 이유가 있어서 인가요?(=혹시 맛비님은 현업에서 logic이나 always_comb, always_ff을 사용하는데 Vivado simulation에서는 sv가 지원하지 않아서 강의용으로 코드에 사용하시지 않는 것인지.. 아니면 정말 뭔가 이유가 있어서 사용하지 않는 것인지가 궁금합니다.)
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
과제4 hamming code 질문
hamming encoder의 input data는 [16:1]인데 output은 [21:1]이 아닌 [1:21]으로 한 이유가 있을까요?verilog에서 vector를 선언할 때에 [msb : lsb] , [lsb : msb] 두가지 방식을 혼용해서 쓰지 않는 것으로 알고 있었는데testbench에도 이를 위해서 reverse 시키는 부분이 존재하여 hamming code logic의 특징인지 궁금하여 문의드립니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
메모리 인터페이스 timing diagram
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 안녕하세요. 19장에 9분 정도에 timing diagram에 궁금한 점이 생겨서 질문 드립니다. 제가 이해하기로는 Dout 이 Read operation 중일 때 read하고자 하는 어떤 address의 data 값이 Dout에 출력되는 것으로 이해했는데, 영상의 timing diagram 상에는 WE=1, 즉 writing operation 중일 때도 Din의 write하고 싶은 data값이 Dout에 출력되는 것 처럼 보여서요. Dout 은 read operation일 때 read 하고자 하는 주소의 data값만 출력되는 포트 아닌가요?제가 잘못 이해한 것이라면, Dout은 read, write operation 상관 없이 그 당시 가리키는 주소에 해당하는 data값이 출력되는 것일까요..?? 감사합니다!
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
bank addr 질문
bank 그룹안에 8개의 bank가 있는데 왜 BA는 2비트로 표현하는 것일까요? 3비트가 있어야하지 않나요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
KV260으로 실습하는 방법
안녕하세요 🙂신규 보드로 zybo z7-20을 사는 것은 비효율적입니다.비슷한 가격으로 스팩이 5~10배 이상 좋은 kv260을 구매할 수 있습니다. 다만 자료가 부족하여 보드를 구매할 때 망설이는 부분이 있다고 생각이 듭니다.하지만 zybo z7에는 없는 ultra 램과 4GB의 ddr4램 10만개 이상의 LUT과 20만개 이상의 FF, 1280개의 DSP는 석사 레벨 혹은 박사 레벨의 프로젝트도 무리 없이 수행 가능하다고 생각합니다.저도 verilog season1 수강을 할 때도 kv260으로 고생하면서 들은 기억이 납니다. verilog season 2 dma를 실제로 올리고, 작동까지 확인하는 것을 보고 나서, 이제는 다른 수강생들에게 저의 경험을 공유해도 될 것이라고 생각해서 이 글을 올립니다.저의 vivado 환경은 ubuntu 24.04 vivado 2024.1을 사용하고 있습니다. 윈도우 환경에서는 vitis 빌드가 되지 않는 치명적인 버그가 있어서 vivado를 사용하는 분들이면 마음 편하게 SSD를 하나 더 사셔서 듀얼 부팅 환경을 만드시는 것을 추천합니다. UART 연결하기KV260의 UART는 zybo z7-20과 다르게 36, 37번 pin과 연결되어 있습니다. IO의 기본 voltage가 1.8V로 되어있으므로 이 부분은 수정하지 않아도 될 것 같습니다. 이 화면 그대로 따라하면 될 것 같습니다. jtag bootkv260의 기본 boot setting은 qspi boot입니다. 제가 생각하는 kv260의 치명적인 단점은 external boot selector switch가 없는 것입니다. jtag boot를 위해서 다음의 문서를 참조했습니다.https://xilinx.github.io/kria-apps-docs/creating_applications/2022.1/build/html/docs/bootmodes.html이 환경에서 따로 boot_jtag.tcl파일을 만드신 다음xsct console에서 connecttargetsource .. boot_jtag.tcl파일 위치boot_jtag를 순서대로 입력하면 jtag boot로 변합니다. 이 두가지만 해결하시면 kv260으로도 충분히 수강 가능하다고 생각합니다. 또 kv260에는 100mhz clock이 정확히 안돠고 99000001 이런식으로 클록이 나오는데 이는 에러 코드에 나오는 클록을 그대로 복사 붙여넣기 하시면 해결이 됩니다.DDR3 메모리가 점차 단종 수순을 밟으면서 zybo z7-20도 단종될 것 같습니다. KV260을 사고 싶었는데 자료가 없어서 망설이시는 분을 위한 좋은 길잡이가 되었으면 좋겠습니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
ready valid handshake 에서으 질문
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================22강 3분 42초 쯤에 해당되는 내용으로,실습코드인 power_of_8_hs.v 에서 볼 수 있듯assign s_ready = ~m_valid | m_ready;s_ready가 m_ready만 요구하지 않고~m_valid와 or 연산을 하고 있는데, 이런 case가 있을까요?곰곰이 생각을 해봐도 잘 이해가 되지 않아서 여쭤봅니다.
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
address bit수에 대해서 질문 드립니다.
Direct Mapped chache메모리 설계하기 스텝에서주어진 조건에 맞춰서 address 와 data bit수를 정하는 부분에서 막혔습니다.제가 이해한게 맞는지 확인 부탁드립니다.우선 메모리 사이즈란 DRAM의 사이즈로 이해했습니다.그래서 디램의 사이즈가 256B이므로 하나의 메모리가 4B로 처리된다면, 디램은 총 64개의 메모리를 저장할 수 있는 것으로 생각했습니다. ( Blocks = 64 ) cache size는 SRAM 즉, 캐시메모리의 사이즈로 이해했습니다. 그렇다면, 캐시메모리에서 저장가능한 갯수는 하나의 메모리가 4B를 담고 있으므로 총 4개 ( 4sets)가 됩니다. 데이터를 주고 받는 것에 필요한 라인을 설정해야 하는데, 데이터라인과 어드레스 라인은 서로 다른 것으로 이해했습니다.어드레스는 상위비트부터 순서대로 tag,index,byte offset으로 분류됩니다.tag란 DRAM의 어느 곳에서 온 메모리인지를 담고 있는 데이터 입니다. 캐시메모리는 총 4개의 데이터를 저장 가능하며, 하나의 cache line당 16개의 데이터를 맵핑할 수 있습니다.따라서 tag에는 총 4개의 비트가 필요합니다.index는 4개의 캐시라인에 대한 주소를 의미하므로, 2개의 비트가 필요합니다.마지막으로 byte offset은 블록 사이즈가 4바이트이므로, 2개의 비트를 사용해야 할 것으로 보입니다. 하여 어드레스에 해당하는 비트 수가 총 8개여야 할 것 같습니다. 근데 어드레스로 보이는 코드의 비트수가 6개여서 질문드립니다. 혹시 byte-offset은 고려하지 않은채로 설계가 된건가요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Vivado 설치
안녕하세요 <필수과정! Xilinx Vivado 2022.2 설치 (Windows 11 의 WSL 기반> 이 영상을 보고 현재 설치를 진행중에 있습니다. .15분 17초까지 문제없이 프로그램 설치를 잘 진행하였습니다. 다만 저의 경우 C드라이브의 용량이 부족해서 D드라이브로 설치를 진행하고자 했고, 15분17초 이후부터 강사님과 다르게 한 부분은 다음과 같습니다. 사용자부분? 에서 d드라이브로 들어가는 코드를 입력한다음 tools 파일을 mkdir 코드로 생성을 해주었습니다. 아래의 사진과 같습니다. 위에 나와있는 코드대로 이후에 destination을 /mnt/d/tools/를 복사하여 붙여넣고 수정을 해주었습니다. 이후 저는 설치를 진행하였습니다. ./Xilinx_Unified_2021.2_1021_0703_Lin64.bin -- -a XilinxEULA,3rdPartyEULA -b Install -c /root/.Xilinx/install_config.txt 올려주신 이 코드를 활용하여서 설치를 진행하였습니다. 에러가 이런식으로 발생을 하였고, 무엇이 문제일까 고민하다가 설치가 중단된것같아 다시 설치를 진행하는 코드를 입력하였습니다. 위와 같은 에러가 발생하였습니다. 제가 D드라이브의 용량을 확인해보니 이런식으로 무언가가 설치가 된것 같습니다. 이후에 어떻게 이 에러를 해결해나가면 될지 모르겠습니다..!
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
TPSRAM,DPSRAM TB코드 문법 질문
begin: tpsram_write @(posedge clk); for (int i=0;i<DEPTH;i++) begin we <= 1; wa <= i; wd <= 'h10+i; @(posedge clk);//필요한 이유 end we <= 0; @(posedge clk); end@(posedge clk); for문 마지막과 begin문 마지막에 필요한 이유가 뭔가요?주석 처리 후 시뮬레이션을 돌려보니 for문에 맞게 wa값과 wd값이 업데이트가 되지 않았습니다. 혹시 system verilog에서 for문과 begin문을 작성하면 @(posedge clk)을 해주는 것이 규칙인가요?
-
미해결디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
CPU모듈 Timing Analyze
안녕하세요. 강의 잘 듣고 있습니다.다름이 아니라 제공해 주신 CPU모듈의 타이밍 분석을 해보고 싶은데 알려주신 방법으로 타이밍 분석을 하면No paths to report 라고 뜨고 데이터가 나오지 않습니다. 어떻게 해결할 수 있을지 궁금합니다.
-
미해결회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
강의 질문드립니다.
아날로그 회로의 Trade-off, Compensation 기법 적용하기 강의에서 삼코치님 목소리가 배속으로 들리는데 오류인지 질문드립니다.
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
sdc파일 확인을 위한 timing delay코딩 과정에 관해 질문 드립니다.
create_clock -name root_clk -period 20 [get_ports {clk}]derive_pll_clocksderive_clock_uncertainty 챕터3의 마지막 tool시연 영상에서 해당 부분을 입력하고 run synthesis하는 과정에서 막혔습니다.저는 이미 비바도가 설치되어 있기에 해당 프로그램을 바탕으로 실습 진행중이었습니다.다만 비바도의 경우 xdc파일 형태로 런이 진행되고, derive_pll_clocksderive_clock_uncertainty위의 두 문장은 적용되지 않는 다는 것을 알게 되었습니다.이럴 경우 어떤 코드를 작성해야 해당 기능을 대체할 수 있을 까요? 양질의 강의 감사 드립니다.
-
미해결디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
과제 질문[Wrapper를 활용하여 FPGA vs. ASIC 각각의 모델 설계하기]
안녕하세요 첫 과제 진행에 있어 질문이 생겨 남깁니다. 제가 궁금한 점은 '왜 같은 SRAM 모델을 똑같이 인스턴스 시켜주냐' 입니다. 제가 이해한 바는 `define 한 줄로 시뮬레이션, FPGA, ASIC을 선택할 수 있게 만드는 것이 이번 과제라고 생각합니다. 근데 동일한 모듈은 그저 인스턴스 해준다는게 의미가 없다고 생각들어 질문드립니다. 상황에 맞게 다른 모듈을 정의해주어야하는게 아닌가요? 예를 들어 시뮬레이션에서는 시뮬레이션 전용 SRAM 모듈을 인스턴스 해줘야하고 FPGA에서는 FPGA 전용 모듈을 인스턴스 해줘야한다고 생각합니다.제 생각이 틀린 것일까요?
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
cache 테스트벤치 코드 관련하여 질문 드립니다.
제 화면에는 삼코치님의 화면대로 run all이 뜨지 않는데 해결할 수 있는 방법이 있을까요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
[HDL 0강] Hello world 실행시 not found 문제
강의대로 진행 시, 실행이 안됩니다 도와주세요