묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨디지털 회로설계 실무 : 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 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
BRAM의 실제 구조가 어떤지 모르겠어요
안녕하세요 🙂[1. 질문 챕터] : FPGA 12장 AXI-4 Lite BRAM [2. 질문 내용] : BRAM이라는 것이 HDL상에서memory type을 Block이라고 넣으면 메모리 공간이 할당되는 것 같은데, address랑 data라는 개념은 설계자가 간단하게 사용할 수 있도록 interface처럼 사용하는건가요?address가 따로 원래 정해져 있는 것이아니라 단순히 배열처럼 사용자가 지정해서 사용하는 것 이라고 느껴져서 질문드립니다. 결론적으로는BRAM을 활성화하면, Memory 공간이 할당되어, 사용자가 임의로 주소랑 data로 이루어진 structure를 인터페이스처럼 만들어서 사용하는 것인지 궁금합니다.[3. 시도했던 내용, 그렇게 생각하는 이유] : AXI4-Lite의 register 에 메모리 할당하는 경우는, 주소가 자동으로 할당되어서 Vitis와 같이 소프트웨어 언어에서 기술할 때, 헤더파일에 주소가 들어가 있는데, BRAM같은 경우는 그런 것이아니라 사용자가 직접 할당해서 쓰는 것 같아서 이런 생각이 들었습니다.
-
미해결설계독학맛비'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드라이브의 용량을 확인해보니 이런식으로 무언가가 설치가 된것 같습니다. 이후에 어떻게 이 에러를 해결해나가면 될지 모르겠습니다..!
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
wire 변수 형은 초기값을 설정할 수 없다고 알고 있습니다. 그런데 초기값 설정 코드가 있어 질문드립니다.
안녕하세요 🙂 다음의 코드 wire [31:0] w_i_cnt_th_25M = 32'd25; 또는wire [31:0] w_i_cnt_th_25M = 32'd25000000; 는 wire 변수를 선언하면서 초기값을 할당하는 코드 같습니다. verilog 에서 wire 변수는 초기값 할당이 불가능하다고 나와있습니다. 위코드가 에러없이 수행되는 이유를 설명해주세요 ? FPGA 보드에서 위와 같은 코드를 사용할 수 있나요 ? 감사합니다.
-
해결됨디지털 회로설계 실무 : 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 문제
강의대로 진행 시, 실행이 안됩니다 도와주세요
-
해결됨설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
step2 vivado 설치 중 오류
모든 전 과정을 마무리하고 step.2 마지막 vivado install에서 오류가 발생했습니다. 도와주세요
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
ubuntu와 리눅스 연결문제 도와주세요
지금 다 지우고 새로 깔고 진행중인데 문제는 ubuntu 20.04 터미널을 닫은 후 새로 설치하였는데 mobaxterm에서 인식을 못하는 건 어떻게 해결해야할까요?(현재 1강 ~6:00분 경까진 진행하여 ubuntu 사용자 계정 생성과 wsl 최신 업데이트는 완료했습니다.)제발 도와주세요....
-
해결됨설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
1강 리눅스 환경 구축 중 문제가 생겼습니다.
1강 리눅스 환경 구축 중 ubuntu 22.04.5 LTS 클릭할 시, 이름/비번 창이 아닌 이런 화면이 뜹니다. 어떻게 해결해야 할까요...?
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
vivado
안녕하세요. tool 관련 질문드립니다.vivado로 진행해도 상관이 없을까요?또한 zynq z7-20 보드가 있어 직접 설계한 부분을 hw에서 구현출력값을 확인하고 싶어 질문드립니다. 앞으로 프로젝트 진행과정에서 직접 hw구현 시 어떠한 방식으로 확인 가능할까요?예를 들어 serial 통신이나 ila같은 방식으로 확인하는게 좋을까요?