묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨ARM Cortex-M 프로세서 프로그래밍
Memory fault, Bus fault 관련 질문드립니다.
강사님. 강의 잘 보고 있습니다.수업을 듣다보니 Bus fault, Memory fault에 대해 궁금해져서 질문 드립니다.구글링해도 명확한 답을 못 찾아서 그런데, 둘은 어떤 오류가 감지될 때 실행되는 익셉션인지 설명해주실 수 있을까요?
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
ILA 생성 관련 문의
단순한 LED/SWITCH 입력 예제를 작성해서 ILA를 추가해 보고자 했습니다. 그런데, Bitstream 생성 후 Program Device를 하고 ILA 활성화가 되지 않네요.아래와 같은 경고메시지가 나오며, Resolution: 1. Make sure the clock connected to the debug hub (dbg_hub) core is a free running clock and is active. 2. Make sure the BSCAN_SWITCH_USER_MASK device property in Vivado Hardware Manager reflects the user scan chain setting in the design and refresh the device. To determine the user scan chain setting in the design, open the implemented design and use 'get_property C_USER_SCAN_CHAIN [get_debug_cores dbg_hub]'. For more details on setting the scan chain property, consult the Vivado Debug and Programming User Guide (UG908). Program Device 창에는 There are no debug cores 와 같은 상태 메시지가 표시됩니다.구글링 결과https://support.xilinx.com/s/article/64764?language=en_US와 같은 내용이 나오는데, 혹시나 어떻게 조치를 해야 할까요?VIVADO 2021.2 사용중입니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
다른 보드 및 강의자료
나중에 2편도 살 예정인데 현재 보드는 basys3로 하고있습니다. 제가 초보자이고 학생이라 다른 보드는 구입하는게 무리입니다. 이 보드로 쭉 진행해도 괜찮을까요 ? 또한 강의자료 ppt는 따로 못구하나요 ?
-
해결됨FreeRTOS 프로그래밍
taskr간 context switching 관련하여 질문이 있습니다.
안녕하세요 강사님. 컨텍트 스위칭 관련하여 궁금한점이 있어 질문드립니다.아래와 같은 상황에서 우선 순위사 제일 높은 task를 컨텍트 스위칭 전에 cpu 자원을 사용하게 하고 싶습니다.task1 : 우선 순위 5 (suspend 상태)task2 : 우선 순위 4task3 : 우선 선위 4우선 task2가 실행하던 도중 task1을 resume 하고 바로 portyield를 실행하게 되면 우선 순위가 동일한 task3번이 cpu를 점유하여 일을 처리하다가 컨텍트 스위칭이 발생하게 되면 task1이 cpu를 점유가게 될텐데 제가 궁금한건 task2에서 task1을 resume 한 후 컨택트 스위칭이 발생하기 전에 cpu를 task1이 점유하게 하는 방법이 없는지 궁금합니다. 감사합니다.
-
해결됨ARM Cortex-M 프로세서 프로그래밍
Fault 관련 질문 드립니다.
강사님. 강의 잘 보고 있습니다. 감사합니다.질문이 있는데요.Hardfault 같은 경우 다양한 원인으로 익셉션이 발생할 수 있는 것으로 알고있습니다.그만큼 디버깅이 어려운데설명을 들어보니까 SCB:SHCSR에서 USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 enable하지 않으면 위와 같은 문제가 발생할 경우 전부 Hardfault 익셉션으로 처리가 되는 것 같은데요.만약 USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 전부 1로 설정하고 각각 익셉션을 정의하면 적어도 어떤 문제로 fault가 발생했는지 더 알기 쉬울 것 같은데 왜 이 값을 default로 설정한 것인지 또 실무에서 자주 사용이 되는지 궁금합니다. 정리하자면 USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 1로 설정하지 않은(default) 상태에서 Hardfault 가 발생한다면 원인 찾기가 어려울 것 같지만, USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 1로 설정하면 디버깅에 좀 더 도움이 되지 않는가?그런데 왜 default로 설정되어 있는지실무에서는 많이 사용 안하는지가 되겠네요.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
build 파일이 실행이 안돼요...
우선 맛비실습압축파일을 제 사용자 파일에다 복사하고 unzip실행을 했는데 안되더라구요;그래서 아예 explorer.exe 명령어 실행해서 어거지로 클릭해가면서 파일 압축 풀었고,그런다음에 ./build 파일 실행시키니까 permission denied 되었다고 해서 chmod +x 명령어 해서 실행파일로 설정 한 다음에 다시 또 ./build 하니까 이런 상황이 벌어졌습니다...^0ㅜ.... gcc 는 root 계정에서도 그리고 사용자 계정에서도 sudo apt install gcc 해가면서 설치만 5번 한거 같아요... 어떡해야 좋을까요? (눈물...
-
해결됨FreeRTOS 프로그래밍
portYIELD() 사용법에 대해 질문드립니다.
안녕하세요. portYIELD() 사용법에 대해 궁금한게 있어 질문드립니다. portYIELD()를 실행하게 되면 task가 점유하고 있던 CPU를 반납하는 명령으로 알고 있습니다. 그런데 아래의 그림과 같이 실행을 하게 되면 TaskMain은 실행 되지 않아야 하지 않는지요? #define TASK_MAIN_PRIO 5 #define TASK_TASK1_PRIO 4 #define TASK_TASK2_PRIO 3 #define TASK_TASK3_PRIO 2 TaskHandle_t xHandleMain, xTask1Handle, xTask2Handle; void userThread(void) { xTaskCreate((TaskFunction_t)TaskMain, "TaskMain", 128, NULL, TASK_MAIN_PRIO, &xHandleMain); xTaskCreate((TaskFunction_t)vTask1, "vTask1", 128, NULL, TASK_TASK1_PRIO, &xTask1Handle); } void TaskMain(void const *pvParameters) { while(1) { for(uint8_t i=0; i<5; i++) { HAL_GPIO_TogglePin(GPIO5_BEAD_GPIO_Port, GPIO5_BEAD_Pin); HAL_Delay(1); } vTaskSuspend(xHandleMain); } } void vTask1(void const *pvParameters) { while(1) { for(uint8_t i=0; i<5; i++) { HAL_GPIO_TogglePin(GPIO4_BEAD_GPIO_Port, GPIO4_BEAD_Pin); HAL_Delay(1); } portYIELD(); vTaskResume(xHandleMain); //portYIELD(); } } 위 소스를 보게 되면최초 MainTask가 실행을 하다가 5번 GPIO를 5번 토굴하고 block 상태로 전환Task1번에서 gpio를 5번 토굴하고 vTaskResume을 실행하기 전에 portYIELD()를 만나기 때문에vTaskResume(xHandleMain) 실행이 안되어야 하지 않는지요?실행 결과 TaskMain이 실행되어 이렇게 문의드립니다. 감사합니다.
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
질문사항
맛비님 안녕하세요 ! 궁금사항이 생겨 글 남기게 되었습니다. NVIDIA의 GPU 같은 경우 '쿠다'라는 소프트웨어 플랫폼을 제가 이용해봤습니다. 수업시간에 설명해주신 inference를 위한 NPU 소프트웨어 플랫폼도 학생이 무료로 이용할 수 있는게 있을까요 ?MNIST 모델에 대해 설명해주실때 0~9까지 표현하기 위해 one-hot label을 10bit를 사용하셨는데, 4 bit를 사용해도 0~9가지 다 표현 가능하지 않나요 ?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
build가 되지 않습니다!!
실습 중 ./build를 실행하면 아래와 같이 뜨면서 실행이 되지 않습니다..vi로 script를 수정하는것은 문제없이 진행이 되는데 build는 이런 식으로 뜨는데 혹시 뭐가 잘못된걸까요?
-
해결됨FreeRTOS 프로그래밍
정적/동적 Task 생성의 메모리 할당 영역
안녕하세요. 수업을 듣던 중 정적/동적 Task 생성 시 할당되는 메모리 영역과 관련해 질문 사항이 생겨 글 남깁니다.태스크와 메모리 파트 강의를 듣고 Task Stack 메모리는 동적/정적 할당이 가능하고, RTOS의 동적 할당은 RTOS 커널에서 지원하는 동적 메모리 할당자 함수를 쓰기 때문에 heap영역이 아닌 bss 영역에서 할당된다. 라고 이해하였습니다.즉, xTaskCreate() 함수를 사용하면 동적 할당이지만 데이터가 bss 영역에 할당되는 특성이 있다고 생각했었는데, '태스크 스택의 크기를 결정하기' 부분의 강의 끝부분에서 xTaskCreate() 는 heap 영역에 xTaskCreateStatic() 은 bss 영역에서 Task Stack을 쓴다고 말씀하여 기존에 제가 이해했던 부분과 일치하지 않았습니다.이와 관련해 인터넷에 검색해 보니, freertos.org 사이트에서는 xTaskCreate()를 사용하여 작업을 생성하면 필요한 RAM이 FreeRTOS 힙에 자동으로 할당된다. 라고 적혀있더군요.xTaskCreate() 함수는 bss 영역에 자동 할당되기도 하고, heap 영역에 자동 할당되기도 한다는 의미인가요?
-
미해결자동 손소독제 디스펜서 만들기
3D 프린팅 도안
3D 프린팅 도안 공유받을 수 있다고 봤는데 3D 프린팅 도안 어떻게 받을 수 있을까요?
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
10강 진행중 어드레스 관련 에러
안녕하세요 맛비님!10강 진행 중 마지막 run as 시 아래와 같은 에러가 발생하여 진행이 불가능합니다 ㅠㅠ 어드레스 관련 문제인거같은데 어드레스와 range 같은 값들이 이전 강의까지는 강의 속 맛비님과 동일하게 생성되다가 10강 진행할때는 상이한 값이 나오네요 개인적으로 이것과 연관이 있지않을까 예상을 해보는데 혹시 어떻게 진행해야하는지 질문 드립니다 ㅠㅠ
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
타 PC에서 mobaxterm 계정 로그인하는 법
안녕하세요 맛비님! 이번에 리눅스 환경을 처음 써보는 수강자입니다.다름이 아니라, 맛비님께서 season 1에서 알려주신대로 ubuntu와 mobaxterm, 그리고 xilinx for lunux를 설치하여 실습을 따라갔었습니다.다만 그때는 데스크톱에 설치를 하였었는데 이번에는 노트북에도 같은 환경을 구축하고자 위 세가지를 동일하게 설치하였습니다. 혹시 이때, 데스크톱에 설치하고 작업했던 리눅스 계정을 노트북에서도 똑같이 사용할 수 있도록 로그인을 하는 방법이 있을까요? 구글링을 해보았는데 잘 이해를 하지 못해 질문 드립니다!
-
해결됨설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
Zybo z7 보드 관련하여 질문있습니다
안녕하세요 맛비님 이번에 Fpga/Hw가속기 강의, AI HW설계 강의 수강 하면서 Zybo z7-10 보드를 구매하였습니다.(20은 가격이 감당이 안되고 10으로 사용해도 된다 하셔서요)그런데 제가 구매한게 보드만 있는 제품인데, 두 강의 진행하면서 보드 외에 필요한 케이블이나 필요한 것들이 뭐가 있는지 궁금합니다.Zybo Z7-20 with SDSoC Voucher를 사용할 보드라고 하셔서 SDSoC Voucher Kit라는 제품하고 비교를 해보니Pmod SSD x 22x6-pin to Dual 6-pin Pmod Splitter Cable x 2Pmod TMP2Pmod ALSPmod USBUARTPmod VGAPcam 5CUSB Micro Cable x 2CAT.6 UTP 플랫케이블Project Box8GB microSD Card위 항목들이 차이가 나는데, FPGA강의 및 AI HW 설계 강의 실습과정에서 어떤 것들이 필요한지 잘 모르겠어서 질문드립니다. 혹시 저 위에 있는 것들을 다 구매해야할까요?섹션1까지 확인해보면 USB Micro Cable만 사용하시는데 앞으로 실습 진행하면서 더 필요한게 있나 싶어서요..
-
해결됨FreeRTOS 프로그래밍
task를 생성 할 때에 stackDepth 설정 관련하여 궁금한게 있습니다.
강의를 보던 도중에 메모리 할당에 관련하여 몇가지 궁금한점이 있어 질문드립니다. 아래그림과 같이 stack 사이즈를 128로 지정하는 경우 task에 사용되는 메모리는 bss 영역에 할당되는게 맞는지요? 아래 그림과 같이 stack 사이즈를 변경하게되면 메모리에 할당이 되어 Memory Regions 창에 변화량이 보여야 하는데 반영되지 않는거 같아 질문드립니다. 테스크를 생성 할 때에 stack 사이즈는 어떤 메모리에서 할당되는건지요?감사합니다.
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
Hybrid Processor가 Co processor 보다 좋은 이유
안녕하세요 맛비님. 좋은 강의 해주셔서 감사합니다. 다름이 아니라, AMD와 Xilinx가 2020년에 인수합병으로 CPU 안에 FPGA 요소를 포함시킨 새로운 Architecture인 Co-processor를 특허로 낸 반면에, 삼성의 엑시노스는 ARM의 CPU IP, AMD와 협업한 GPU, 자체 NPU등 각각의 IP를 한 Chip에 배치시킨 Co processor 가 아닌 Hybrid processor라고 볼 수 있을 것 같습니다. 여기서 의문은 왜 Co processor가 Hybrid processor 보다 좋은지 잘 모르겠습니다. 이에 대한 생각이 어떠신지 궁금합니다! 감사합니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
xilinx 설치
현재 툴설치하는 단계인데 꼭 우분투환경에 설치해야하는 이유가 있나요?window버전으로 사용하면 안되는지 궁금합니다!
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
안녕하십니까 cnn_acc_ci.v 파일에서 궁금한 점이 있습니다.
안녕하십니까 cnn_acc_ci.v 파일에서 약 90번 째 줄에 ot_ci_acc에 각 kernel의 값을 더해주고 w_ot_ci_acc에 wire로 연결하고 r_ot_ci_acc로 전달합니다. 여기서 w_ot_ci_acc를 통해서 r_ot_ci_acc로 전달하는 이유가 궁금합니다. =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
해결됨ARM Cortex-M 프로세서 프로그래밍
메모리 구조 질문 드립니다.
강사님 안녕하세요. 강의 잘 보고 있습니다.질문 있습니다.강의에서 메모리 구조 ROM, RAM mixed structure와 RAM only를 보았는데요.ROM, RAM mixed structure같은 경우는 NOR flash와 RAM을 사용하는 경우RAM only는 NAND flash와 RAM을 사용하는 경우라고 이해해도 되나요?NOR flash같은 경우 랜덤 액세스가 가능해서 플래시메모리에서 실행 가능하지만 NAND flash는 랜덤 액세스가 불가능하여 자체적으로 실행은 못하고, RAM으로 복사해야한다고 알고 있거든요.추가적으로 만약 그게 아니라면 RAM only는 어떤 경우에 가능한 것인지 궁금합니다.
-
미해결FreeRTOS 프로그래밍
포팅 부탁드립니다.
안녕하세요. 강의 듣고 있는데 포팅 부탁드립니다.- 사용하고 싶은 ST 보드명: NUCLEO_G070RB- 사용하시는 컴파일러(stm32cubeide) 버젼: 1.12.0감사합니다.