묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
- 
      
        
    해결됨설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
17장 질문입니다.
안녕하세요.맛비님 강의를 듣고 많은 도움을 받고 있어, 정말 감사드립니다.17장 관련 질문을 드립니다.조건 i_run에 의해 num_cnt에 데이터가 들어가는 부분에서, 저는 'i_num_cnt의 1 clock뒤에 num_cnt 데이터가 들어 가겠구나' 생각하여 wave를 확인하니 assign문 처럼 데이터가 바로 들어가네요.그래서 제가 간단하게 확인하고자 i_run_d라는 delay를 주기 위해 i_run의 1 clock delay 주는 부분을 추가하여 wave를 확인하니, 이것 또한 assign문 처럼 delay없이 데이터가 바로 들어가는데, 혹시 제가 잘못 생각하고 있는 부분이나, i_run신호의 1 clock delay를 주기 위해서는 다르게 해야 하는 부분일까요?아래는 제가 생각했던 파형 입니다.답변 부탁 드립니다.
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
interconnect bus
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================SoC on-chip-interconnect bus는 시스템 전체 퍼포먼스에 큰 영향을 주며, 이를 설계/검증하는 것은 매우 어려운 일이라고 하셨습니다.AXI 인터페이스는 정해진 규약대로 설계됩니다. interconnect bus만 따로 설계하는 전문가가 있다면, 그들이 추가적으로 최적화하고 설계하는 부분은 어떤게 있는지 keyword를 알 수 있을까요?고민해본 바로는 SoC내엔 수많은 IP가 있고, 그것은 제품마다 다르기 때문에 각 상황에 어떤 IF를 사용하고, 파라미터들을 어떻게 설정하고, 각 IP들을 어떻게 배치할지 결정하는 것. 이런 것들이 있을 것 같습니다.감사합니다.
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Vivado 설치 후 예제 파일 Build error
안녕하세요. 수업 진행을 위하여 Vivado 설치가 완료된 것을 확인한 후에 올려주신 예제 파일 을 build를 하려고 하였으나 아래와 같은 Error가 발생하여 동작되지 않아 문의 올립니다. 빨리 문제 해결하여 강의를 듣고 싶은데 쉽지 않네요 ㅠㅠ 어떤 문제인 지 확인해 주실 수 있으실까요?
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
config 수정 후, vivado 설치 직전 과정
The value specified in the configuration file for EnableDiskUsageOptimization (null) is not valid.라고 계속 에러가 뜹니다. 어떻게 해야할까요?=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
 - 
      
        
    해결됨ARM Cortex-M 프로세서 프로그래밍
유저 mode, xSPR, 어셈블리어 활용, STM32 선정 이유 관련
안녕하세요.강의를 듣는 과정에서 궁금한 사항이 있어서 질문 드립니다.유저 모드 관련특권 모드와 유저 모드가 있는데, 대부분 특권모드에서 동작한다고 알려주셨습니다.인터럽트 핸들러도 특권모드에서 동작을 하고요.유저 모드에서는 특권모드로 이동도 못해서 제약이 상당히 많은 것 같은데,유저 모드는 어떠한 상황에서 사용되는지 궁금합니다.xSPR 관련AR, VR 등을 합쳐서 부르기 위해, XR이라고 부르는 것과 같이xSPR도 ASPR, ESPR 등을 통칭하기 위해 xSPR로 부르는 것인가요?아니면, xSPR은 ASPR, ESPR, ISPR을 모두 합친 프로세서 레지스터라고 봐야 할까요?어셈블리어 활용 관련요즘에는 어셈블리어로 코딩하는 일이 많지 않을 것 같은데,어셈블리어의 지식은 어떤 곳에 활용할 수 있을까요?프로그램에 문제가 생겼을 때 디버깅을 하면서 어셈블리어를 알면 문제 원인을 찾기가 쉬울 것 같은데,혹시 다른 용도로는 어떻게 활용할 수 있는지 궁금합니다.STM32 관련ARM Cortex-M4를 사용하는 MCU를 만드는 제조사는 ST Micronics 외에도 Nordic이나 Microchip등 여러 회사들이 있는 것을 알고 있습니다.그런데, 대부분의 강의를 보면 STM32 Series의 보드를 사용하시더라고요.STM32 Series 보드의 장점이 무엇이기에 대부분 이를 선택하시는지 궁금합니다.또한, STM Cube IDE와 유사하게 nRF Series에서도 segger IDE를 제공하는 것으로 알고있는데, Cube IDE처럼 segger로도 disassemble 등의 기능을 사용할 수 있는지도 궁금합니다.질문 사항이 좀 길어졌네요...강의는 잘 듣고 있습니다!감사합니다.
 - 
      
        
    해결됨[임베디드 입문용] 임베디드 개발은 실제로 이렇게 해요.
프로젝트 초기 생성시 펌웨어 업데이트 경고문
처음 프로젝트 생성을 했는데 펌웨어를 업데이트 하라는 문구가 발생합니다. 아직 stm과 컴퓨터 연결을 안 한 상태에서 프로젝트 생성을 했는데 그게 문제인건가요???
 - 
      
        
    해결됨설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
begin end 사용법
안녕하세요 맛비님! 그렇게 중요하진 않아보이지만 항상 궁금했던 내용이라 질문드립니다. 예시로always @( posedge S_AXI_ACLK ) begin if ( S_AXI_ARESETN == 1'b0 ) begin axi_awaddr <= 0; end else begin if (~axi_awready && S_AXI_AWVALID && S_AXI_WVALID && aw_en) begin // Write Address latching axi_awaddr <= S_AXI_AWADDR; end end end 166번째 라인에 있는 코드인데 else if (~axi_awready && S_AXI_AWVALID && S_AXI_WVALID && aw_en) axi_awaddr <= S_AXI_AWADDR; end else if (~axi_awready && S_AXI_AWVALID && S_AXI_WVALID && aw_en) begin axi_awaddr <= S_AXI_AWADDR; end end else부분을 이렇게 더 간결하게 짜면 좋을꺼같은데굳이 begin end로 묶는 이유가있을까요?가독성이 더 좋아지기 때문일까요?
 - 
      
        
    미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
TX부분에 불빛은 들어오나 터미널 상에 문장출력이 되지 않습니다
안녕하세요 맛비님 :)제가 사용하고 있는 보드는 Z7-10입니다. HELLOWORLD 실습을 하던 중 처음에는 JTAG부분의 파랑색 블럭을 잘못 연결하여 cannot halt processor core, timeout 오류가 떴었고 JTAG로 제대로 꽂으니 HALT오류 문구 없이 모두 정상적으로 컴파일되었습니다.하지만 터미널을 통하여 숫자를 입력하여도 빨간색 동그라미 친 부분의 TX부분만 한번 깜빡이고 터미널에서 따로 출력되는 동작이 없습니다.이러한 경우 UART는 제대로 동작하는 것일까요? 다음 장의 LED BLINKING의 경우 잘 동작함을 확인하였는데 UART부분에만 문제가 있는 것일까요?다른 부분은 실습과 동일하게 진행하였습니다.*보드 초기에는 전원을 키고 FPGA에 로딩을 할 때에 특유의 LED반짝이는 동작이 나왔는데 지금은 나오지 않네요. 그것과도 관련있을까요?*hardware 빌드를 시도할 때 한번씩 다음과 같은 문구가 뜹니다
 - 
      
        
    해결됨[임베디드 입문용] 임베디드 개발은 실제로 이렇게 해요.
섹션4의 회로도는 어디서 받을 수 있나요?
섹션4의 회로도 및 기타 문서들은 어디서 받을 수 있을까요?
 - 
      
        
    미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
[lab8] flow에 대한 정리
안녕하세요 맛비님, 우선 정말 좋은 강의 만들어주셔서 감사합니다. 정말 재밌게 도움받으며 따라가고 있습니다. 다만, 전체적인 프로세스를 다음과 같이 정리하며 복습하던 중 헷갈리는 부분을 질문 드립니다.step[1]: VivadoAXI4_Lite IF & slave 생성 (Xilinx에서 제공하는 platform을 활용하여 자동으로 생성)Design모드에서 생성한 IP & Zynq IP 로드, ILA연결wrapper -> bitstream -> export -> step2step[2]: Vitis사실 이 부분이 잘 와닿지가 않습니다. 제가 뭘 하고 있는지 모르겠어요..ㅠㅠ step1은 실제로 불러들이는 IP가 눈으로 보이고, 제가 뭘 하고 있는지 명확히 아는 상태로 진행하며 도움이 많이 됐습니다. 근데 step2는 그냥 기계적으로 강의를 따라가는 느낌이 듭니다.이 부분에서 "PS영역에 대한 프로그래밍"을 하는 것인가요? fpga와 통신하게 되는데, 음 이것도 되게 추상적으로 느껴집니다. 무작정 따라가기 강의 이후에 각 과정을 설명해주신다고 하셨는데, 저는 사실 그 강의 이후로도 vitis 과정에 대한 이해도가 그 당시에 머물러있는 느낌입니다ㅠㅠ제가 감을 못 잡고 있는만큼 질문도 추상적이게, 길게 늘어놓은 것 같아 죄송합니다..다만 맛비님께서는 제가 어떤 부분을 헷갈려하는지 대충 감이 오시지 않을까 하는 생각도 듭니다..!!!! 도움을 부탁드립니다..ㅎㅎㅎ 감사합니다!
 - 
      
        
    해결됨자동차 SW - UDS 진단통신 정복하기
-
-
 - 
      
        
    미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
arty 2switch 4led 조언
강의에서 사용된 zybo는 스위치:led=1:1이라서one-hot state로 구현한 것이라고 생각이됩니다.즉 sw[n] -> led[n]맛비님도 가지고 계셔서 아시겠지만 arty z710는 2개의 스위치와 4개의 led를 가지고 있습니다. 이 경우에는 verilog코드를 어떻게 짜야 2개 스위치로 4개 led를 제어할 수 있을까요? 그냥 verilog만 생각하면 쉽게 짤 거 같은데, 아직 FPGA와 연결되는 그 flow를 생각하는게 헷갈리다보니, 조언을 부탁드리고 싶어서 질문을 남겨봅니다. *우선 sw은 2비트로 선언하고 진행하고 있습니다.다만 당연하게도 LED0, LED1만 테스트되는 상황이네요
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
플립플롭의 1 cycle delay?
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================20장 강의를 듣다 마지막 o_read 신호를 플립플롭에 넣어서 1cycle delay하신다고 설명하셨습니다.그것은 이해했는데 reset_n신호가 들어오면 1cycle delay 없이 바로 r_valid가 0으로 초기화되는 이유는 무엇인가요?? 여기서도 105번줄에서 i_run신호가 들어오면 num_cnt가 1 cycel delay 없이 바로 100이 되는 반면,107번 줄에서는 o_done 신호가 들어오면 1cycle delay후에 num_cnt가 0으로 초기화되는 것을 확인했습니다.왜 그런 것인지 알수 있을까요 선생님??
 - 
      
        
    미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
WSL에서 build 실패
안녕하세요 맛비님 :)우분투로 build하려고하니 다음과 같은 에러메세지가 뜨는데 해결방안이 있을까요? 다른 분의 질문글을 참고하여 chmod +x build 명령어를 실행하여도 여전히 build가 되지 않네요 :(*verilog season1 파일로 되돌아가서 빌드를 시도하여도 같은 에러메세지가 뜹니다!
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Timing Simulation 관련 질문입니다.
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================안녕하세요 맛비님, counter 설계 강의를 듣다가 문득 궁금한 점이 들어 질문 드립니다. 강의에서 ./build를 통해 돌려서 나온 Simulation은 gate들의 delay가 반영되지 않고 오직 기능만을 확인할 수 있는 Functional Simulation이라고 알고 있습니다. 그렇다면 제가 gate들의 delay가 반영된 Timing Simulation을 보고 싶으면 합성을 진행한 후에 post synthesis simulation을 누르면 되나요?FPGA보드가 없어도 제가 예를 들어 counter에 대한 verilog코드를 짜서 합성만 진행한다면 post synthesis simulation을 눌러서 counter내부의 gate들의 delay가 반영된 Timing Simulation을 확인할 수 있는지 궁금합니다!
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
protocol instance 설정하는법.
안녕하세요 맛비님.다른 프로젝트에서 gui모드로 protocol instance를 웨이브폼에 추가 해보려고하는데. protocol instance를 못찾는 것 같아요. 빌드파일에는 따로 옵션을 넣어주셨던데.. gui에서는 따로 설정하는 법이 있나요?
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
ubuntu 에서 새로운 verilog 타이핑을 세팅하는 법
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================해당 강의 5:57초 와 같은 화면을 생성하려면 어떻게 해야하나요? 예를 들어 cd chapter_1 을 하고나면 vi로 열 수 있는 파일이 tb_clock_generator인데, 이 것을 열면 이미 모든 정답 코드가 작성되어있어서요.전 직접 작성해보고싶은데, 5:57과 같이 기본적인 Verilog 포맷(////와 함께 timescale이 입력되어있는 상황)을 시작하는 방법이 뭔가요?또한 꼭 verilog포맷이 아니더라도 그냥 아무때나 빨리 새로운 메모장을 열고싶을 때의 단축키도 궁금합니다 감사합니다.
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
HDL5장 output, reg질문드립니다
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 질문드리는 강의부분은 HDL5장 DFF, Reset실습입니다d_ff_test 코드에서 module port선언 중에 output 0_value_blahblah 등을 선언합니다.module port선언 이후에 reg를 선언합니다.로직 상으로는 조건에 따라 특정 reg에 값을 저장하고, 최종적으로 마지막에 assign통해 reg 저장 값을 output value로 만들겠다. 이렇게 되어있는데요. 어떤 코드들은 그냥 module port 선언할 때output reg ~~~ 이런 식으로 작성하는 경우도 많이 보았습니다. 두 경우는 코드 직관성의 차이인가요?아니면 기능상으로, functional하게 다른점이 있을까요?
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
[프로젝트-1] 참고, Address Map, DDRI Features
zynq DDR 컨트롤러 특성상 burst length 는 16개, burst size 는 8바이트가 최대네요. BASE_ADDR 는 최소 1MB 이후가 안전해 보이네요. (0x100000 ~ 0x3fffffff) zynq User Guide 에서 캡쳐한 것입니다.
 - 
      
        
    미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Vivado, Linux위해 재설치 필요할까요
데스크탑에 Vivado 2020.2가 깔려있고, 그 동안 계속 사용해왔습니다.첫 동영상처럼 2~3시간 과정을 거쳐 재설치를 해야할까요?그래야한다면 그럴만한 이유가 무엇인지 궁금합니다. 물론 시간이많으면 군말없이 해보겠지만 제가 시간이 여유치 않은 상황이라서요..! 시간적 여유가 없다면 기존 사용환경에서 진행해도 해당 강좌 수강하는 데에 차질 없을지 궁금합니다.감사합니다.