[FPGA]/Zynq(MPSOC) (9) 썸네일형 리스트형 Zynq UltraScale+ MPSoC 보드 테스트 - EtherCAT 테스트 Zynq UltraScale+ MPSoC 보드 EtherCAT 테스트 Zynq UltraScale+ MPSoC 보드를 이용하여 EtherCAT 통신 테스트를 해보았다.기존에 제작 하였던 EtherCAT Slave 보드를 이용하여 간단히 데이터 전송하는 예제로 테스트 했고 간단히 확인을 위해 패킷캡쳐 프로그램으로 전송되는 데이터를 확인했다. Wireshark 에서 Zynq UltraScale+ MPSoC의 EtherCAT 전송 데이터를 확인 할 수 있다. Zynq MPSoC 에서 EtherCAT의 사용은 기본적인 테스트 결과 가능해 보인다. 물론 가장 기본 적인 테스트만 검토한 결과라 HOST쪽에서 좀더 많은 테스트가 필요할 것같다. 결론적으로 로봇쪽에서 Zynq MPSoC를 EtherCAT 제어용으로 사.. Zynq UltraScale+ MPSoC 보드 초기화 테스트 - Giga Etherent UDP 테스트 Zynq UltraScale+ MPSoC 보드 테스트 - Giga Etherent UDP 테스트 TCP예제가 문제 없이 동작하므로 Giga Ethernet 통신은 확인이 되었고 EtherCAT 동작을 테스트 하기 위해 UDP통신도 문제 없이 동작하는지 확인해 볼 필요가 있다. Zynq UltraScale+ MPSoC UDP 전송코드 static void udp_recv_perf_traffic(void *arg, struct udp_pcb *tpcb, struct pbuf *p, const ip_addr_t *addr, u16_t port) { int i; unsigned char tcp_buf_rx[2048]; pcb->remote_ip = *addr; pcb->remote_port = port; //수.. Zynq UltraScale+ MPSoC 보드 초기화 테스트 - Giga Etherent 전송 속도 테스트 Zynq UltraScale+ MPSoC 보드 테스트 - Giga Etherent TCP 전송 속도 테스트 Zynq UltraScale+ MPSoC 보드는 ZU2EG 가 적용되어 있고 Quad-core Cortex-A53 @1.5GHz CPU로 AP를 구동한다. Giga Ethernet을 이용한 EtherCAT 사용 검토가 필요해 Giga Ethernet 통신을 테스트 해보았다. 우선 TCP/IP 통신 테스트를 해보자. 기본 예제로 제공되는 lwIP 스택 TCP예제로 루프백 테스트를 해보면 좋을것 같다. 기본 제공 예제를 좀 수정해서 TCP루프백 테스트 해보니 96Mbps 정도가 나온다. 예전 EtherCAT 테스트용으로 제작했던 STM32F429 보드와 TCP속도 비교를 해보면 좋을것 같다. (너무 예.. Zynq UltraScale+ MPSoC 보드 초기화 테스트 - SDK테스트 Hello World Zynq UltraScale+ MPSoC 보드 초기화 테스트 - SDK테스트 Hello World 1) Launch SDK Zynq UltraScale+ MPSoC 기본 하드웨어 디자인 으로 생성한 프로젝트 파일에서 Launch SDK 로 프로젝트 파일을 생성할 수 있다. 2)Project 생성 Vivado에서 여러가지 다양한 예제를 제공하고 있는데 기본 예제 Hello World 프로젝트를 생성해 보자 3)코드 작성및 프로그램 실행 기본 코드 생성되고 간단히 테스트를 위해 Delay 함수도 추가 해서 실행 해 보았다. Zynq UltraScale+ MPSoC 보드의 UART에 연결해서 시리얼 포트로 출력되는 메시지를 확인하니 정상적으로 출력되는것으로 확인된다. Zynq UltraScale+ MPSoC 보드 초기화 테스트 - 기본 하드웨어 디자인 Zynq UltraScale+ MPSoC 보드 초기화 테스트 - 기본 하드웨어 디자인 보드가 나왔으니 테스트를 위해 새로운 프로젝트를 생성해 보자 Vivado 툴이 워낙 자주 업데이트 되고 복잡해서 테스트 과정을 정리할 필요가 있을것 같다. 1)프로젝트 생성 처음부터 새로운 MPSoC의 Board 파일을 생성할 수도 있지만 설정해 주어야 할것이 많기 때문에 기존 생성되어 있는 파일을 이용하고 변경 사항만 수정하는것이 좋을것 같다. 2)Create Block Design 3)IP 생성 Zynq UltraScale+ MPSoC IP를 추가 하자 4)PL 클럭 연결 PL클럭은 외부에서 연결 할 수도 있지만 내부클럭을 연결해 주면 간단히 테스트 해 볼 수 있다. 5)ZYNQ MPSoC 설정 - DDR4 메모리 .. Zynq UltraScale+ MPSoC 보드 제작 Zynq UltraScale+ MPSoC 보드 제작 영상 처리 용으로 다양한 어플리케이션에 적용할 Zynq UltraScale+ MPSoC XCZU2EG FPGA 보드를 제작 했다. 영상 처리가 주된 용도 이므로 메모리가 넉넉해야 해서 PC용 64bit DDR4를 적용하였다. 인터페이스 보드는 USB3.0, Giga Ethernet, 3channel Camera Interface 를 포함해서 제작 했다. Zynq UltraScale+ MPSoC 보드 주요 사양 Xilinx Zynq UltraScale+ MPSoC 784-pin package (ZU2EG) Quad-core or dual-core Cortex-A53 64-bit ARM v8 APU Dual Cortex-R5 32-bit ARM v7 rea.. #MPsoC Multi Channel Mipi Camera Interface Board 제작 MPsoC Multi Channel Mipi Camera Interface Board 제작 - PCB : 4층 임피던스 보드- 4Ch Mipi Camera- MPSoC Module Board 보드 SMT되서 나왔고 기본 전원 체크시 문제 없이 동작하는것 확인했다. ZCU102 보드에서 FMC커넥터의 MIPI 핀 할당 문제 ZCU102 보드에서 FMC커넥터의 MIPI 핀 할당 문제 멀티 채널 MIPI 카메라 제작중 MPSoC에서 MIPI 할당에서 문제가 발생 Bank64 - > DDR로 할당Bank65 -> HPC1 2채널 할당 가능Bank66 -> HPC0 1채널 할당 가능Bank67 -> HPC0 1채널 할당 가능 (HPC0, 1 조합 할경우 1채널 추가 가능) 결론 ZCU102에서 HPC0, 1 채널을 동시에 사용할 경우 4채널 가능 (기구적 테스틑 불가능)Tranz 보드를 사용할 경우 최대 64, 65, 66 Bank를 사용하면 5채널 까지 가능할 수도 있지만 확인 필요 따라서 ZCU102 보드에서는 테스트 할수 없음 이전 1 2 다음