묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
SRAM 코드 Delay 관련
SRAM 코드의 경우 posedge에서 memory에 값을 넣는 동시에 ad, din 값을 하나씩 커지게 동작 시키면 기능 합성에는 문제가 되지 않지만, Delay가 적용되면 값이 흐트러 질 수 있는거 아닌가요?(예를 들면 negedge에 값을 넣어준다던가 해야하는게 아닌가요?)
-
해결됨독하게 시작하는 C 프로그래밍
함수 이름의 메모리 주소
안녕하세요~ 강의 열심히 따라가다가 그동안 배워온 것들 복습을 진행중입니다. 그러다가 함수 관련해서 질문이 있는데요! 강의 속에서 함수를 정의하면 해당 함수의 이름에는 배열처럼 메모리 주소가 할당된다고 하셨는데요! 좀 더 자세히 살펴볼려고 디버그 모드로 정의된 함수 이름에 어떤 메모리 주소가 들어가 있는지 살펴보고 있었습니다. Q1. 그런데 특이하게 디버그 모드를 최초로 실행할 때부터 함수 이름에 메모리 주소가 일종의 쓰레기값..(사진 속에서는 16진수로 ff 값이 적혀있네요)으로 정의되어 있고 이후 코드 실행 step 을 계속 실행시켜도 별다른 값으로 업데이트가 되지 않더라구요. 그렇다는 것은 런타임에 들어가기 전부터 빌드 타임에 함수 이름에는 메모리 주소가 최초로 1번만 할당되고 런타임 때는 할당되지 않는 것으로 이해하면 될까요?(마치 size of 연산자처럼 컴파일 연산자 처럼요..비교가 좀 다를 수 있긴 합니다만..) Q2. 함수의 메모리 주소도 포인터를 이용해서 막 여기 저기 활용하는 사례도 많나요??(마치 문자열이나 다른 배열을 포인터로 활용하는 것처럼..) Q3. 그리고 어쨌건 최초로 변수를 선언하고 정의할 때 메모리가 할당되는 시점은 무조건 빌드 타임에 할당되는 것이죠? 그러면 런타임에 메모리가 할당되는 시점도 있나요..? 자꾸 헷갈리네요! 혹시 질문이 이해가 안가신다면 답글 달아주세요! 감사합니다 :)
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
test bench 작성 후 RTL 시뮬레이션
강의에서 소개되는 FA_4bit를 RTL 시뮬레이션 해보려고 하였으나 위와 같은 오류창이 계속 뜹니다. tb명은 FA4bit으로 하였습니다. 해결할 방법이 있을까요?
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
DRAM Flow 관련 질문
Precharge 상태가 왜 VDD와 동일한지 궁금합니다. 제 생각에는 0.5Vcc를 유지해야 하는게 아닌가 싶어서 질문을 드립니다.20:04초 그림을 보게되면 Precharge 상태에서 BL이 VDD와 동일하게 차 있는 것을 볼 수 있는데 이렇게 되면 Charge Sharing이 일어나게 되면 캐패시터에 Write되지 않은 상태(0.5Vcc)에서 무조건 전압이 높아지고, 센스 앰플에 의해 1의 신호가 전달되면 캐패시터의 값이 Write가 일어나지 않았는데도 1의 값을 저장하게 되는게 아닌가 싶어 질문 남깁니다.
-
해결됨독하게 시작하는 C 프로그래밍
쉬프트연산에서 궁금한점이 있습니다.
곱셈, 나눗셈 할 때 CPU가 비트를 왼쪽, 오른쪽으로 쉬프트연산을 하는건 이해가 됩니다.그런데 유효 비트자리수를 넘어가면 절삭이 되잖아요.절삭이 되면 사실상 데이터를 잃어버리게 되는것인데절삭이 될지 안될지 어떻게 미리 알고 곱셈, 나눗셈을 연산하나요?
-
해결됨독하게 시작하는 C 프로그래밍
unsigned short가 64KB 라는게 이해가 안됩니다.
"정수형" 강의의 5:45 쯤에 나오는 내용입니다.unsigned short는 표현범위가 0~65535인데용량으로 환산하면 64KB 라고 말씀하신 내용이이해가 안됩니다.65535는 (2의 16승 - 1) 이라서 16비트 용량인것 같은데 64KB용량이라고 하시니 헷갈립니다.만약 65535를 단순히 K단위로 환산하면 65K가 나오는데 이를 또 65K가 아닌 64KB라고 하시니... 제가 어느부분을 놓치고 잇는 건가요?
-
해결됨독하게 시작하는 C 프로그래밍
질문은 아니지만, VS가아닌 VScode를 통하여 메모리 보는법 공유해봅니다
강사님께서는 VS를 통하여 영상을 올리셨습니다만,많은 분들께서는 저처럼 VScode를 사용하고 있을거라 생각합니다 제가 서칭하여 얻은 결과가 도움이 될까하여 공유해봅니다혹시 문제가 된다면 글 내리겠습니다! @@ 아래 과정은 영상의 코드를 그대로 사용합니다-- 수정 --VScode Extension에서 MemoryView를 검색하여 다운영상의 예제코드, F5 클릭으로 디버깅 수행그러면 하단 터미널 레이아웃 목록에서, MEMORY 목록이 뜰겁니다 클릭해당 레이아웃 상단의 + 버튼을 클릭합니다영상에서처럼 변수 이름을 입력합니다 ( &test )( 변수일 경우 &변수이름 , 배열일 경우 배열이름 입력 )이어서 디버깅 수행하시면 메모리 값을 볼 수 있습니다저는 성공적으로 메모리값을 보고 있지만 혹시나 안되시는분들은 MemoryView Extension 관련해서 직접 찾아보길 바랍니다 :)
-
해결됨독하게 시작하는 C 프로그래밍
파일 플러싱에 관한 질문입니다!
파일 플러싱 => Output에만 적용=> 메모리에 담긴 파일이 어딘가로 흘러 내보내진다는 의미ex) Console 입/출력 => 장치 추상화 파일 CON의 구성요소 stdin, stdout는 각각 Buffer를 가지고 있음=> Process가 출력을 하면 Output Buffer에 출력할 내용이 쌓임 => Buffer가 비워지면서 Console에 출력 => 이 일련의 과정을 OS가 처리이 과정에서 OS가 할 일이 많아지면 Buffer에 쌓이는 속도가 느려질 수 있음(Buffering)이 때 빠르게 Buffer를 비워서 콘솔에 출력을 하고 싶을 때 fflush() 함수를 사용이렇게 정리 해봤는데 맞게 이해한 걸까요?
-
해결됨독하게 시작하는 C 프로그래밍
주소 지정연산자(&)와 간접지정 연산자(*) 간의 관계
안녕하세요! 강의 속에서 아래 코드를 설명해주시면서 ..printf("%s\n", &szBuffer[4]);printf("%s\n", &*(szBuffer + 4));주소 지정 연산자와 간접 지정 연산자가 서로 반대이기 때문에 두 개가 만나면 없어진(?)다 라고 하셨는데요!여기서 '서로 반대' 라는게 막 피부에 와닿게 잘 이해가 되지는 않네요.. 일단 그냥 암기해야 할까요..? 이 '서로 반대이다' 라는 뜻을 완벽히 이해한 것은 아닌데 다음 진도를 나가는 게 맞는 건가 싶어서요!
-
해결됨독하게 시작하는 C 프로그래밍
fgets, fputs 관련 질문입니다
지금까지 입력을 받을 때는 getchar()나 gets_s()를 사용하고 출력 할때는 putchar()나 puts()를 사용했는데 파일 입출력 예제에서는 반대로 입력할때 fputs()를 쓰고 출력할때 fgets()를 쓰는건지 궁금합니다!
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
복습하는 방법
안녕하세요. 제가 강의를 들으면서 잘 기억할 수 있게 복습하는 법을 여쭤보려고 합니다. 현재, 강의를 들으면서 해당 강의 중에 필기같은 것도 하면서 책에 확인문제를 푸는것으로 마무리 합니다. 여기서 더 보강하거나 추천해주실 만한 방법이 있을까요?
-
해결됨독하게 시작하는 C 프로그래밍
I/O Buffer에 관한 질문입니다!
키보드 입력 → 키보드의 디바이스 드라이버 → OS의 어떤 요소 → 키보드를 추상화한 인터페이스→ Input Buffer메모리에 한 글자 단위로 저장(Read)Output Buffer 메모리에 한 글자 단위로 복사(Write) → 콘솔을 추상화한 인터페이스→ OS의 어떤 요소 → 콘솔의 디바이스 드라이버 → 콘솔 출력이렇게 정리 해보았는데 맞을까요?
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
섹션4 cache 메모리 강의 관련 질문
섹션4 cache memory강의 24:05에서 Line 0,1이 DRAMP에서 같은 memory를 받아온다면 Line의 개수가 2배로 늘거나 mapping 비율이 2배가 늘어나는 건가요?
-
해결됨독하게 시작하는 C 프로그래밍
R-Shift에 대해서 질문드립니다
L-Shift에서는 빈 부분 Zero Padding / 원래 있던 비트는 Overflow로 절사라고 하셨는데그렇다면 R-Shift는 Underflow라고 이해하면 될까요?
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
섹션 4 강의 순서 문의
섹션4에서 대시보드에 있는 강의 순서랑 강의자료에 나와있는 순서랑 다른데, 어느 기준으로 진도를 따라가면 될까요?
-
해결됨독하게 시작하는 C 프로그래밍
이후 강좌에 대한 질문
강사님 안녕하세요! 이제 방학이라1.독하게 되새기는 C프로그래밍/ 자료구조2C++3.시스템 프로그래밍4. 네트워크 강의들순서대로 공부할 예정이고 강의를 통해 어느정도 배경지식이 쌓이면, 추천해주신 제프리 윈도우 책 등을 보며 학습하려고 합니다. 저는 게임서버쪽을 희망하고 있습니다.혹시 제가 잘 몰라서 질문 드리는건데, 저렇게 수강을 하게 되면 로드맵 할인쿠폰 적용이 안되더라구요 가능하다면 저 강좌들을 구매할 쿠폰을 받을 수 있을까요?ㅜㅜ해결유튜브 멤버십 가입 후 쿠폰 받아서 구매 완료하였습니다! 열공하겠습니다~!
-
해결됨독하게 시작하는 C 프로그래밍
조건 (3항) 연산자 질문과 필수 연습문제(1)
안녕하세요~ 질 좋은 강의에 감사인사 부터 드립니다! (__)조건 (3항) 연산자 강의에서 아래의 소스코드로 설명해주셨는데요!int main(void) { int nInput = 0, nSelect = 0; scanf_s("%d", &nInput); nSelect = nInput <= 10 ? 10 : 20; printf("%d\n", nSelect); return 0; }보면 nSelect 변수에다가 조건 연산자를 넣어서 특정 변수가 할당되도록 하셨는데요! 합격/불합격 문자열을 출력하는 필수 연습문제(1)에서 문자열을 출력할 때도 저 소스코드 처럼 활용해보려고 문자열 배열 변수를 초기화해놓고 출력해보려 아래 처럼 시도를 해보았는데, 에러가 발생하더라구요int main(void) { unsigned int score = 0; char result[32] = { 0 }; scanf_s("%d"m &score); result = (score >= 80) ? ("합격") : ("불합격"); printf("결과: %s\n", result); return 0; }그래서 강의에서 알려주신 것처럼 printf 함수에 저 조건 연산자 식을 넣어서 맞추긴 했는데.. 위 코드는 왜 안되는건지 궁금합니다!
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
맥북에서 실습
맥북에서 실습 안내는 따로 없나요?가상 머신 띄워서 돌려야만 할까요?
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
하드웨어적 스레드에 관하여 ( 17:05 그림 참고)
강사님 안녕하세요 책 씹어먹을 각오로 보고 있는 개발자 지망생 수강생입니다..ㅎㅎ위 그림과 같이 2코어 4스레드 CPU 에서하나의 코어가 2개의 스레드(하드웨어적 스레드) 를 가지고 있잖아요? 하나의 코어 안에 레지스터 세트가 2개 있어서 2개의 명령어를 동시에 저장할수 있겠죠.근데 ALU , 제어장치는 하나밖에 없기 때문에, 각 레지스터세트는 ALU, 제어장치를 공유하기 때문에, 결국에는 한 번에 하나의 명령어 밖에 처리 못하는거 아닌가요?관련해서 GPTo 에게 물어봤는데, 하이퍼스레딩 기술을 통해 스레드 간의 전환을 빠르게 하여 마치 동시에 여러 명령어를 실행하는 것 같은 효과를 낸다고 하는데,GPTo 답변이 맞다면, 1코어 2스레드가 하나의 코어에서 두 개의 명령어가 동시에 실행된다고 표현하신 부분이, 동시에 실행한다고 표현할 만큼 빠르게 스레드간 전환이 되기 때문에 그렇게 표현하신걸까요?질문을 잘 한건지 모르겠네요 ㅠㅠ
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
cadence 툴 사용
안녕하세요좋은 수업 잘 듣고 있습니다. 제가 지금 cadence virtuoso를 자유롭게 다룰 기회를 얻게 되었는데, 이 툴을 활용하여 본 강의를 더 발전적으로 들을 수 있는 방향이 있을까요?또 수업노트도 공유 가능한지 여쭙고 싶습니다 질문이 너무 추상적이라 죄송합니다