인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

서재왕님의 프로필 이미지
서재왕

작성한 질문수

설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)

[HDL 9장] Signed / Unsigned 를 이해하고 연산 실수를 피해보기 (내가 원한 결과 값이 안나와..ㅠㅠ)

비트 연산 및 오버플로우

작성

·

437

1

1. $signed({1'b0, a}) + b;

위의 문법은 인터넷에서 쳐봐서 a 앞에 비트를 추가하고, MSB가 부호가 되는 건 알겠는데... 그래서 직접 눈으로 결과가 어떻게 나오는지 알고 싶어요..ㅠㅠ

2. correct와 wrong의 연산결과가 각각 다른데 제가 직접 손으로 계산하는데..ㅠㅠ 어떻게 하는지 모르겠습니다.. 2의 보수로 변환 해서 막해봤는데.. 알려 주실 수 있으신가요..?!

 

답변 1

0

설계독학맛비님의 프로필 이미지
설계독학맛비
지식공유자

안녕하세요 :)

시작전에, 야박하게? 들리실 수 있지만, 궁금하신 문법은 직접! 돌려보시는 것을 권장드립니다. (돌릴 수 있는 환경은 충분히 드렸다고 생각해요.)

 

1. $signed({1'b0, a}) + b;

위의 문법은 인터넷에서 쳐봐서 a 앞에 비트를 추가하고, MSB가 부호가 되는 건 알겠는데... 그래서 직접 눈으로 결과가 어떻게 나오는지 알고 싶어요..ㅠㅠ

simulation 환경을 드렸고, 직접 눈으로 보실 수 있다 생각해요.

 

2. correct와 wrong의 연산결과가 각각 다른데 제가 직접 손으로 계산하는데..ㅠㅠ 어떻게 하는지 모르겠습니다.. 2의 보수로 변환 해서 막해봤는데.. 알려 주실 수 있으신가요..?!

2의 보수 연산을 이해하시면 가능하실 것 같아요. 잘 정리된 링크를 공유드립니다. (제 영상 에서 추가적으로 설명드릴 내용이... 이거보다.. 제가 더 잘 설명드릴 자신이 없네요 ㅠ 글이 좀 길긴하네요;; 처음부터 읽다보시면 감이 오실꺼에요.)

https://st-lab.tistory.com/189

 

signed / unsigned 의 추가 설명은 다음 링크 참고 부탁드립니다. 

https://blog.naver.com/chacagea/222090531944

 

 

즐공하세요 :)

서재왕님의 프로필 이미지
서재왕
질문자

이해 되었습니다. 감사합니다 :)

 

설계독학맛비님의 프로필 이미지
설계독학맛비
지식공유자

넵! 즐공입니다 :)

서재왕님의 프로필 이미지
서재왕

작성한 질문수

질문하기