월 49,500원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
wsl을 이용하여 비바도를 실행하는게 일반적인가요?
질문이 있습니다.윈도우용 비바도를 이용해도 충분히 설계가 가능할듯 한데,wsl을 이용하여 리눅스 버전으로 하는 이유는 무엇인지요?실제 수업을 하실때, wsl을 이용하는것에 대해서 속도 등의 단점을 언급하셔서요.물론 리눅스 버전이 커맨드 명령어 처리로 간편하게 할수 있는 장점등이 많이 있지만,실제 현업에서 윈도우버전보다는 리눅스 버전을 많이 사용하는가요?
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Vivado 설치 용량 관련 질문 드립니다
지금 Setup단계에서 Vivado를 설치하는 단계인데, 노트북 용량이 부족하면 ssd외장하드에 다운 받아도 상관 없을까요?? 아 그리구 강의에서는 60기가정도 필요하다고 뜨던데 왜 저는 147기가가 필요하다고 뜨는지 궁금합니다.. 혹시 ssd외장하드에 다운 받는다면 경로 설정은 어떻게 해야하나요??!
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
build파일 생성 + 디버깅 관련 질문
수고많으십니다!강의 정주행을 모두 마쳤는데, 여전히 혼자서 뭘 만드는 능력이 턱없이 부족해서...다시 정주행 하고 있습니다.강의를 단순히 따라하는게 아니라, 처음부터 끝까지 직접 만든다고 생각하고 임하고 있는데 리눅스는 도저히 익숙해지질 않네요 ㅠㅠ강의에서 컴파일 및 실행할 때 ./build를 사용하는데, 이건 이전에 다른 학생분께서 맛비님께 질문한 내용을 보고 build파일을 작성했지만...문제가 있어서 질문드립니다.build파일은 확장자 없이 vi (이름) 으로 작성 후 안에 작성하였고, 원본 build와 비교하여 이상 없는것을 확인하였습니다. 실행할 수 없는 파일이길래 chmod +x를 사용해 build를 초록색 실행파일로 만들었지만/bin/bash: ./build: Permission denied 라는 오류가 나타나는데...어떻게 해야할까요?강의를 보고 따라하면 컴파일 에러가 없으니 문제가 안되었는데, 직접 코드를 짜면 실수하기도 하죠. 코드에 문제가 있을 경우 이를 디버깅 하는 작업을 해보려 하는데, 컴파일 오류메시지도 기존에 사용하던 modelsim과 너무 다르고 시뮬레이션 할때도 매번 vivado를 재실행해야하는 번거로움이 있습니다. 어떻게 해결하면 좋을까요?답변해주시면 감사하겠습니다!!
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
설치파일 실행시 오류
강의시간 14:49로 넘어가는 과정에서 문제가 생겼는데 어떻게 해결해야할지 모르겠습니다에러 내용은 다음과 같습니다ERROR: Installer could not be started. Could not initialize class java.awt.Graph icsEnvironment$LocalGEjava.lang.NoClassDefFoundError: Could not initialize class java.awt.GraphicsEnvi ronment$LocalGE
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
FSM은 밀리머신인가 무어머신인가
안녕하세요 맛비님.다음과 같은 코드를 보면always문 안에는 *(asterisk) 로 combination circuit 즉, clock에 의존하지 않습니다.제가 알기로 무어(MOORE) 머신은 output이 현재 state 에만 의존한다. 클럭 엣지에 의해서만 output이 바뀐다.로 이해하였고,밀리(MEALY) 머신은 output이 현재 state와 input에 의존한다. 클럭의 한 사이클을 기다리지 않고 같은 사이클에서 입력을 바로 출력에 반영한다. 라고 알고 있습니다.그럼 위 코드는 clock에 의존하지않고,1. 현재 상태 = S_IDLE 일 때 현재 입력이 i_run=1이면 clock에 관계없이 바로 output, 즉 다음 상태가 S_RUN으로 되고,2.현재 상태 = S_RUN 일 때 현재 입력이 is_done=1이면 clock에 관계없이 바로 output, 즉 다음 상태가 S_DONE으로 되고,3.현재 상태 = S_DONE일 때 현재 입력에 상관없지만 clock에 관계없이 바로 output, 즉 다음 상태가 S_IDLE로 됩니다.c_state는 clock에 의존하여 변하지만,"밀리(MEALY) 머신은 output이 현재 state와 input에 의존한다. 클럭의 한 사이클을 기다리지 않고 같은 사이클에서 입력을 바로 출력에 반영한다. 라고 알고 있습니다." 에서n_state는 같은 사이클에서 입력을 바로 출력에 반영한다. 라고 보이므로, MEALY 머신이 아닌가요?인터넷에서는 FSM이 MOORE 머신이라고 나와서 질문드립니다!
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
bram 주소 접근
안녕하세요올려주신 bram 가이드를 보고 generate address interface with 32bits를 체크하고 single port ram을 ip로 생성해서 사용해봤어요 사용해보니 주소가 0~3, 4~7 이렇게는 같은 주소로 덮어 씌워지더라고요 그래서 주소를 4씩 늘려줘서 데이터를 쓰고 읽어봣더니 정상 동작 하더라고요 주소가 왜 4씩 늘려줘서 데이터를 써줘야하는지에 대해서 찾아보는데 잘 안찾아져서요 그 이유에 대해서 설명을 좀 듣고 싶어요 아니면 또 관련된 가이드가 있을까요
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
맛비님 질문이 있습니다.
안녕하세요. 공부를 하다가 한가지 궁금한 점이 있어서 여쭤봅니다!!asic 레벨로 합성시에 합성이 불가한 문법이 있다고 들었는데 synopsys Design Compiler로 verilog file을 돌릴 때 integer와 같은 구문도 이상없이 돌아가는지가너무 궁금합니다.개인적인 질문일 수도 있지만 정보를 찾기가 힘들어서 여쭤봅니다. 죄송합니다 ㅠㅠ
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Clock 시뮬레이션 결과 관련 문의
안녕하세요 맛비님 강의 잘 듣고 있습니다. Clock 신호 생성을 테스트해보고 있는데 #100 finish 구문을 넣었음에도 waveform 이 100ns 에 끝나지 않고 계속 생성되네요. 무엇이 문제일까요? <코드><Waveform>감사합니다.
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
fsm 모듈에서 case문 문법 관련 질문드립니다.
안녕하세요 맛비님. 강의 열심히 듣고 있는 수강생입니다. ㅎㅎfsm 실습편과 응용실습편을 다 보고 난 뒤 맛비님이 응용실습편에서 코드 수정하신 부분을 보고 궁금증이 생겨 질문드립니다.응용실습편에서, 위 사진의 코드에서 c_state =S_RUN일 때 is_done=0인 경우를 고려해 else n_state = S_RUN; 코드를 추가한 것으로 이해했습니다.그렇다면 같은 이유로, c_state = S_IDLE 일 때 else n_state = S_IDLE; 코드를 추가해 주어야 하지 않을까요??
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
드라이브 설정 관련 질문
안녕하세요 맛비님. 질문이 있어 글 남깁니다. C드라이브가 용량이 없어서D 드라이브에 설치를 했는데요,(설치 중 Path의 부분은 mnt/d/tools/Xilinx로 설정했습니다.)아래와 같은 오류가 뜨면서 설치가 중간에 멈춥니다 ㅠ(D 드라이브 용량은 700G 남아있습니다.)혹시 어느 부분이 문제인지 확인 좀 부탁드리겠습니다~!!
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
RTL 연습문제, 예제?
안녕하세요 강의 잘 듣고 있습니다.verilog는 c, 파이썬 처럼 막 연습문제 같은것들이 아무래도 인터넷 상에 잘 알려져 있지 가 않아서 어려움이 있습니다.논리회로설계 수업 때 mips architecture alu를 약식으로 만들었었는데 이런 RTL 연습문제? 예제? 프로젝트? 같은것들을 풀어보고 설계해보고 싶은데 어디서 찾을 수 있는지 혹시 알려주시면 감사하겠습니다
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
mobaxterm
안녕하세요 맛비님.mobaxterm은 저희가 맛비님 강의에서 쓰여야만 할 이유라도 있을까요?ubuntu만 설치하고 사용하면 안될 이유라도 있을까요?문득 궁금해져서 찾아봐도 잘 모르겠어서 질문드립니다!감사합니다.
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
감사합니다
이건 진짜 유용한 사이트네요.. 감사합니다.근데 저는 모듈 블럭같은 동작이나 signal 연결 할때 구글 draw.io 을 이용해서 그리는데 맛비님은 보통 어떤걸 사용하나요??
- 해결됨설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
build파일
안녕하세요!강의 잘 보고 있습니다.다름이 아니라 제가 처음부터 리눅스환경을 통해 .v (베릴로그파일) 생성 및 build를 하고 싶은데어떤 방식으로 진행하면 될까요?특히 build파일은 어떻게 만드는건가요..?
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
설치과정에서 bash permission denied 오류
이런식으로 chmod -x 부분부터 퍼미션 디나이드 오류가 뜹니다 뭐가 문제일까요... 4번째 재설치 중입니다 ㅎㅎ
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
16bit Data Width 사용하기
안녕하십니까?열심히 강의를 보고 있습니다.현재 BRAM을 활용해서 DPRAM 구현을 해야 합니다. 외부에 연결되는 MCU와 16bit Data Width로 진행하고자 합니다. 설명 or 자료를 보면 최소 32bit인 것처럼 소개를 하고 있습니다.이런 경우, 어떻게 접근해야 하나요?편법(?)으로 상위 16bit를 내부적으로 'L'로 고정을 시켜버리고, 외부로는 하위 16bit만 핀 할당하는 방식으로 하면 될까요?이 경우, 순차적인 메모리 접근(주소 증가/감소)을 다르게 해야 할 듯 한데...BRAM을 할당할 때, 16bit로 해도 되는지요?
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
case문 우선순위
안녕하세요다른 분께 남겨주신 if-else문과 case문의 차이에 대한 답변을 봤는데, case문은 우선순위가 없다는 말에 대해 혼란이 생겨 질문 남깁니다.기존에 verilog를 학습했을때, verilog의 case문은 C의 switch case문과는 다르게 각각의 조건에 break가 있는 것과 같다. 그래서 맨 위 조건부터 우선순위가 있다고 알고있었는데요.예를 들어 아래의 모듈의 시뮬레이션 결과로 sel=4'b0011인 경우에 out=a가 나옵니다. 따라서, case문에서 맨 위 조건부터 우선순위가 있다고 생각했습니다.module priorityencoder( input [2:0] a, input [2:0] b, input [2:0] c, input [2:0] d, input [3:0] sel, output reg [2:0] out ); always@(*) begin case(1'b1) sel[0] : out = a; sel[1] : out = b; sel[2] : out = c; sel[3] : out = d; default : out = 3'b0; endcase end endcase end endmodule그런데, 남겨주신 답변에 case문에는 우선순위가 없다고 하셔서 조금 혼란이 생겼는데..말씀하신 'case문에 우선순위가 없다'는 말은, 코드상의(=function상의 ) 우선순위를 말하는 것이 아닌합성에서 생기는 우선순위(?)가 없다는 말로 생각하면 될까요?(위의 예시 모듈을 합성하면 아래 그림처럼, if-else로 적으면 mux chain형태로 합성되고 case로 적으면 하나의 mux로 합성됨을 확인하긴했습니다..)그러면 이렇게 case문이 합성된 회로(위 그림의 아래의 회로)는 그럼.. function적으로는 우선순위가 있는데 형태는 우선순위가 없는(??)것.. 인건가요?
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
ubuntu 설치 버전 질문
안녕하세요 본격적 강의 수강 전 비바도 설치를 진행하다 질문드려요window store에 wsl을 검색하면 가이드북에 나와있는 우분투 버전에 만족하는 것이 18.04.5밖에 없어서 설치하였더니 다음과 같이 18.04.6버전으로 설치가 되네요.이대로 설치를 진행해도 될까요? 아니면 버전에 맞는 우분투를 설치하기 위해서는 어떻게 해야 하나요?
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
vivado에서 vcd 보기
안녕하세요? 좋은 강의 감사합니다. 이제 강의를 시작해서, 혹시 뒷편 강의에 해결 방법이 있는지 모르지만문의 드립니다. vivado에서 batch로 simulatoin을 돌리고 dump한 vcd를 필요할 때만 보고 싶습니다.즉, 필요시 dump해 놓은 waveform만 볼 수 있는 방법을 알고 싶습니다.고맙습니다.
- 미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
질문입니다
안녕하세요 맛비님의 코드 습관?을 보면 매번 reg 데이터를 assign으로 할당하여 wire로 데이터를 내보내는데요(즉, output) 저는 공부할 때 데이터를 내보낼땐 reg 데이터로 내보내는 것이 좋다고 알고 있습니다. 물론 reg 데이터를 바로 assign문에 할달이 되서 로직이 생긴다거나 그러진 않을 것 같지만 (제 눈엔 assign으로 코에서에 o_cnt로 내보내나 cnt로 내보내나 차이가 없다고 보입니다) 어떤 코드 스타일에 습관을 들이는게 좋을지 궁금하여 질문드립니다.(저의 경우는 cnt를 바로 내보내는 스타일입니다) 좀 질문이 횡설수설한거 같아 질문이 이해가 안된다면 제가 다시 질문하겠습니다. 감사합니다