iperf (28) 썸네일형 리스트형 [RP2350_W6100] Pi Pico C/C++ SDK - W6100의 Iperf TCP Throughput 측정 테스트 [RP2350_W6100] 보드는 RP2350에 W6100을 포함하고 있는 테스트 보드이므로 Raspberry Pi Pico C/C++ SDK 개발환경 에서 W6100 개발환경을 설정하고 TCP 전송률 성능을 측정해 보자. 우선 Pi Pico SDK로 W6100 테스트 예제를 생성한다. 하드웨어 세팅에서 SPI, DMA 를 체크하자. 그리고 W6100관련 io6Library 라이브러리를 다운 받는다. W6100과 관련된 Ethernet 폴더를 생성한 프로젝트에 복사한다. 그리고 라이브러리를 Cmake 파일에 추가 등록 하면 된다.include_directories( Ethernet Ethernet/w6100 )# Add executable. Default name is the pr.. [RP2350_W6100] Arduino IDE에서 Iperf TCP Throughput 측정 테스트 (Ethernet_Generic 라이브러리 수정) W6100을 이용하여 제작한 보드의 네트웍 전송속도를 테스트 해보자[RP2040_W5500] 보드에서 테스트한 Iperf TCP Throughput 측정 테스트를 참고 하여 Arsuino의 기본 예제를 이용하여 전송률을 테스트 해보자.4Mbps 정도로 측정이 된다. 역시 W5500의 수준으로 느리다. 전송율을 높이려면 SPI전송 방식을 BUF 형태로 전송해야 한다.#define SPI_HAS_TRANSFER_BUF true 전송 부분에서 SPI 전송을 퍼버 형태로 보내게 된다.#ifdef SPI_HAS_TRANSFER_BUF pCUR_SPI->transfer((uint8_t*)buf, NULL, len);#else // TODO: copy 8 bytes at a time .. [W55RP20 SSM] iperf 를 이용한 W5500 TCP 전송률 테스트 W55RP20의 최대 장점은 Ethernet기능을 하는 W5500을 원칩으로 소형화 했기 때문에 당연히 Ethernet 성능이 중요 할것 같다. MCU의 성능은 RP2040 벤치마크 테스트에서 확인 했기 때문에 달라진 것은 없을것 같고 TCP Throughput 측정 테스트를 해 보자. W55RP20은 W5500이 PIO를 이용한 SPI를 생성해서 제어하기 때문에 SPI, PIO, DMA 기능이 필수적으로 들어가야 한다. 프로젝트 생성시 설정해주면 편리하다. RP2040 C++ SDK 환경에서 iperf 를 이용한 W5500 TCP 전송률 테스트 결과 14Mbps 정도로 측정 되는것을 확인했다. [RP2040_W5500] RP2040 C++ SDK 환경에서 iperf 를 이용한 W5500 TCP.. CH32X035 SSM - W5500 을 이용한 Iperf TCP Throughput 측정 테스트 CH32X035는 저렴(2$대)하고 작은크기(3mm x 3mm)의 RISC-V 코어로 소형의 TCP/IP 솔루션으로 사용하기 좋을것 같아 W5500을 이용하여 TCP/IP 전송률 테스트를 해 보았다. 우선 Wizet사에서 제공하는 ioLibrary Driver를 다운 받아 프로젝트 폴더에 복사 한다. SPI 초기화 함수를 작성한다. void SPI_FullDuplex_Init(void) { GPIO_InitTypeDef GPIO_InitStructure = {0}; SPI_InitTypeDef SPI_InitStructure = {0}; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_SPI1, ENABLE); GPIO_InitStructure.. CH32V003 SSM - Iperf로 W5500의 TCP Throughput 측정 테스트 100원대 MCU로 유명한 CH32V003에서 W5500 모듈보드를 이용하여 이더넷 전송률 테스를 해 보자.그러면 정말 저렴한 이더넷 솔루션이 되지 않을까? 아쉽게도 플래시 용량 문제로 Arduino 환경에서는 사용할 수 없다. CH32V003 SSM - 개발환경(MounRiver)을 이용하여 테스트 했다. 우선 프로젝트를 생성하고 ioLibrary Driver를 다운 받아 복사 한다. CH32V003 SPI 초기화 함수를 작성한다.void SPI_FullDuplex_Init(void){ GPIO_InitTypeDef GPIO_InitStructure = {0}; SPI_InitTypeDef SPI_InitStructure = {0}; RCC_APB2PeriphClockCmd(RCC.. CH32V307 SM - UDP 전송속도 테스트(Iperf UDP Throughput 측정 테스트) Ethernet PHY가 포함되어 있는 CH32V307의 UDP 이더넷 성능 테스트를 진행해 보자 UDP서버 예제를 이용해서 UDP 루프백 속도를 측정 해 볼 수 있다. https://github.com/openwch/ch32v307/tree/main/EVT/EXAM/ETH/UdpServer int cnt = 0; void WCHNET_UdpServerRecv(struct _SOCK_INF *socinf, u32 ipaddr, u16 port, u8 *buf, u32 len) { //u8 ip_addr[4], i; /* int i; // printf("Remote IP:"); for (i = 0; i < 4; i++) { ip_addr[i] = ipaddr & 0xff; printf("%d ", ip_a.. CH32V307 SM - TCP 전송속도 테스트(Iperf Throughput 측정 테스트) CH32V307의 최대 장점은 작은 페키지(LQFP64)에 Ethernet PHY가 포함되어 있는 것이다. 이더넷 성능 테스트를 진행해 보자 TCP서버 예제를 이용해서 TCP 루프백 속도를 측정해 보자 https://github.com/openwch/ch32v307/tree/main/EVT/EXAM/ETH/TcpServer void WCHNET_DataLoopback(u8 id) { #if 1 u8 i; u32 len; u32 endAddr = SocketInf[id].RecvStartPoint + SocketInf[id].RecvBufLen; //Receive buffer end address if ((SocketInf[id].RecvReadPoint + SocketInf[id].RecvRemLen) .. STM32H7 - iperf를 이용한 내장 이더넷 전송률 테스트(iperf Throughput) STM32H7을 이용한 이더넷 테스트에서 고속전송에서의 에러가 많이 발생 했는데 최근 ST에서 제공하는 라이브러리는 업데이트가 많이 된것 같다. STM32H7-RP 보드는 STM32H7의 내장 이더넷 컨트롤러를 테스트 할수 있는 PHY커넥터가 있어 간단히 이더넷 테스트를 해 볼 수 있다. ST에서 제공하는 STM32H7 STM32CubeMX based Ethernet examples 를 참고로해서 새로운 프로젝트를 생성하고 iperf로 TCP전송률 테스트를 진행해 보았다. 우선 STM32CubeIDE를 최신으로 업데이트 하고 프로젝트를 생성한다. ETH를 RMII 모드로 설정하고 나머지 필요한 페리를 추가 해 준다. STM32F7 에서 LwIP 추가했던 방식과 달리 디폴트로 활성화 되어 있지 않다. 활성.. 이전 1 2 3 4 다음 목록 더보기