반응형

대학원/대회 준비 관련 14

최종 CUSTOM ip 연결 + 대회 후기

대회준비 나름 한다고 열심히는 했는데, 예선에서 광탈해버렸다. 우리보다 실력이 뛰어난 사람이 이렇게 많구나를 다시금 느낄 수 있었다. 그래도 대회 준비를 하면서 반년 전에 비해 실력이 꽤 올랐다는 것은 체감하고 있으니.. 우선은 이걸로 만족하고 남은 취준과 석사 학기를 잘 마무리 해 볼 계획이다 우선 전체적으로 구성했던 프로그램부터 설명하자면,다음 그림과 같이 구성을 했다.PS, 즉 ARM-Core 영역에서 건들일 부분은 CDMA와 Ethernet을 이용해 데이터를 넘겨주는 부분이었다. 이 두 과정은 앞선 포스팅들에 어느정도 정리를 해둔 방식을 토대로 진행했고, 최종적으로 Custom ip를 연결할 때 약간씩 수정을 하여 VITIS 코드를 완성했다. 아래부터 적을 내용은 Custom ip에서 사용될 RA..

[Vitis] Build 오류, Xilinx Vitis arm-xilinx-eabi-cc.exe: error: *.c: Invalid argument

https://blog.csdn.net/yihuajack/article/details/120881411 Xilinx Vitis arm-xilinx-eabi-gcc.exe: error: *.c: Invalid argument-CSDN博客This problem may be a bug of version 2021.1 only. Unfortunately, I'm just currently using this version. After Build Project: Find where this Makefile is through "make: Leaving directory" information. For me, it is located at  Zynq_CPU_wrapper_hw_platforblog.csdn.net ..

plt.pcolormesh 함수 확인하기

minx, miny = np.min(coords, axis=0)maxx, maxy = np.max(coords, axis=0)coords 내의 [x,y] 값의 최대 & 최소 위치를 파악하는 것collection.sticky_edges.x[:] = [minx, maxx]collection.sticky_edges.y[:] = [miny, maxy]최소 & 최대에 대한 경계를 설정해줌그럼 주파수는 어떻게 결정되는거지?최대 값이 결정되어 있나?*args = frequencies, times, np.rot90(abs_X)이렇게 해당됨→ x,y,c 데이터 처리 및 shading 옵션에 따른 데이터 처리여기에 들어간 args를 통해서 X,Y(좌표값), C(데이터)를 구분해줌.shading 옵션flat각 셀에 대해 단..

DMA vs CDMA

DMA (Direct Memory Access)AXI DMAStream 형식으로 데이터를 보냄→ Streaming응용 프로그램과 드라이버 간에 버퍼에 대한 포인터만 교환되고 데이터 자체는 복사되지 않는 방식데이터가 연속적인 흐름으로 처리되며, 주로 Audio, Video Streaming과 같이 지속적으로 데이터가 전송되어야 하는 상황에서 사용된다. • 주요 AXI4 데이터 폭 지원: 32, 64, 128, 256, 512, 1,024 비트• 주요 AXI4-Stream 데이터 폭 지원: 8, 16, 32, 64, 128, 256, 512, 1,024 비트• 선택적인 스트림 데이터 폭 최대 512비트에 대한 데이터 재정렬 엔진  기본 메모리 맵 및 스트림 데이터 경로에서 바이트(8비트) 단위로 데이터 재정..

[ZCU-104]DMA + echo

Echo와 DMA를 하나의 프로그램으로 연결하기 위한 과정.처음에는 갈피를 잡지 못 하여 DMA라는 것에 대한 기초적인 동작 방식을 이해하기 시작함.DMADMA를 사용하기 위해서는 AXI DMA에 대한 개념 이해가 약간은 필요했음.우선 DMA라는 것은 Simple mode와 Scatter Gather mode가 존재함.(이에 대한 내용은 SG의 경우 앞서 했으니 pass)처음에는 SG를 사용하다가 이해가 가지 않아 Simple mode로 다시 수행함.이는 AXI DMA의 address offset을 조절하며 각 상태를 설정함. 그에 대한 내용은 위에 적힌 코드와 같다.각 register에 대한 offset에 맞게 데이터를 설정해줌.[자세한 설명은 pg021_axi_dma를 통해서 확인]아마 이러한 방식을..

[ZCU-104]DMA + DDR 공부 내용

https://medium.com/@kavinduvsomadasa/axi-dma-in-scatter-gather-mode-e8c088e334e6 AXI DMA in Scatter Gather ModeXilinx SoC based FPGAmedium.com  SG모드의 데이터 전송 방식데이터 전송을 위해 가장 중요한 요소데이터데이터가 저장된 주소이로써, 해당 주소로부터 데이터를 가져올 수 있는 장치는 저장 장치와 통신 가능하고 데이터를 얻을 수 있다.SG 모드에서 프로세서는 직접적으로 DRAM에 해당 데이터가 저장된 주소를 제공하지 않는다. 이 주소는 다른 저장 장치인 Buffer Descriptors(BD)에서 제공된다. 각 BD에는 AXI DMA가 DRAM으로부터 데이터를 수신하거나 전송해야 할 데이터..

[ZCU-104] DMA 기본적인 배경

[공부하면서 Notion에 적은 내용 그대로 복붙한 내용이라 미흡할 수 있습니다.] Getting started with ZYNQ Ethernet using the Zybo board - Igor Freire Getting started with ZYNQ Ethernet using the Zybo board - Igor Freire This post shows how to make the ZYNQ Ethernet interface functional using a Zybo board and introduces basic Ethernet concepts that are involved. igorfreire.com.br Understanding the Gigabit Ethernet Controller's D..

[ZCU-104]이미지 파일 전송해서 BRAM에 저장

본 내용은 공부를 하면서 Notion에 작성했던 기록들을 나열한 것 임을 감안하고 봐주면 감사하겠습니다. " 51x51x3 channel 이미지 기준 0.007초 정도 (송신(저장) + 다시 읽기) 소모됨" 현재 대략적으로 구상중인 구조는 이러하다. 이후 Bram에 해당 데이터를 저장 후 PS영역으로 넘겨주어 데이터가 제대로 저장되었는지 확인할 것이다. 입력으로 넣을 이미지이며 size 는 51 x 51이다. (이상하게 BRAM 크기가 부족하다는 오류 발생으로 임의적으로 크기를 줄임) 오류 발생1 모든 indx에 동일한 데이터가 들어가고, BRAM에는 데이터가 저장되지 않고있음. 일단은 index별로 제대로 데이터가 들어가도록 수정이 필요함. https://support.xilinx.com/s/quest..

[ZCU-104] Ethernet Echo 통신을 이용한 원하는 데이터 수신

우선 내가 이번 글에서 사용한 Block diagram이다. 내가 이 동작을 하는데 있어서 모르고 있던 부분은 AXI를 이용하는 방법이었다. 그래서 AXI에 대해서 먼저 알아봐야 했다 AXI란? 두 장치간의 데이터 송수신을 위해서 둘 사이의 handshaking이 필요하다. https://wikidocs.net/135556 02) AXI Architecture [TOC] ## Handshake Process 기본적으로 Source에서 Destination으로 데이터를 잘 전송하려면 둘 간의 핸드쉐이킹이 필요합니다. Destinati… wikidocs.net 다음 사진을 예로 보면, Souce에서 Destination으로 데이터를 보낼때는 VALID & INFORMATION을 주고 반대의 경우 READY ..

728x90
반응형