Stack and Compiler Versions | ||||||||||||||
TCP/IP Stack v5.36 | ||||||||||||||
MPLAB C Compiler for PIC18 MCUs (C18) v3.38 | ||||||||||||||
MPLAB C Compiler for PIC24 MCUs and dsPIC DSCs (C30) v3.25 | ||||||||||||||
MPLAB C Compiler for PIC32 MCUs (C32) v1.12 | ||||||||||||||
Microcontroller | MIPS | Network Controller |
Interface | LAN Transmit Throughput (Kbytes/sec) | Internet Transmit Throughput at 100ms ping
(estimated Kbytes/sec)(1) |
Compiler | Optimization | Test Boards | ||||||
TCP with 200 byte TX FIFO | TCP with 2000 byte TX FIFO | TCP with 8000 byte TX FIFO | UDP | TCP with 200 byte TX FIFO |
TCP with 2000 byte TX FIFO |
TCP with 8000 byte TX FIFO |
UDP | |||||||
PIC18F97J60 | 10.4 | Internal 10BaseT | - | 34 | 76 | N/A | 113 | 2 | 20 | N/A | 113 | C18 | Debug | PICDEM.net 2 |
PIC18F8722 | 10 | ENC28J60 | SPI, 10 MHz | 20 | 45 | N/A | 63 | 2 | 20 | N/A | 63 | C18 | Debug | PIC18 Explorer, Ethernet PICtail |
PIC24FJ128GA010 | 16 | ENC28J60 | SPI, 8 MHz | 55 | 136 | N/A | 201 | 2 | 20 | N/A | 201 | C30 | s (min size) | Explorer 16, Ethernet PICtail Plus |
dsPIC33FJ256GP710(2) | 40 | ENC28J60 | SPI, 8 MHz | 60 | 170 | N/A | 254 | 2 | 20 | N/A | 254 | C30 | s (min size) | Explorer 16, Ethernet PICtail Plus |
PIC32MX360F512L | 80 | ENC28J60 | SPI, 20 MHz | 92 | 275 | N/A | 433 | 2 | 20 | N/A | 433 | C32 | s (min size) | Explorer 16, Ethernet PICtail Plus |
PIC32MX795F512L | 80 | ENC28J60 | SPI, 20 MHz | 95 | 286 | N/A | 440 | 2 | 20 | N/A | 440 | C32 | s (min size) | Explorer 16, Ethernet PICtail Plus |
PIC18F8722 | 10 | ENC624J600(3) | SPI, 10 MHz | 28 | 74 | 80 | 114 | 2 | 20 | 80 | 114 | C18 | Debug | PIC18 Explorer, Fast 100Mbps Ethernet PICtail Plus |
PIC24FJ128GA010 | 16 | ENC624J600(3) | SPI, 8 MHz | 57 | 159 | 176 | 283 | 2 | 20 | 80 | 283 | C30 | s (min size) | Explorer 16, Fast 100Mbps Ethernet PICtail Plus |
dsPIC33FJ256GP710(2) | 40 | ENC624J600(3) | SPI, 8 MHz | 85 | 260 | 310 | 560 | 2 | 20 | 80 | 560 | C30 | s (min size) | Explorer 16, Fast 100Mbps Ethernet PICtail Plus |
PIC32MX360F512L | 80 | ENC624J600(3) | SPI, 13.33 MHz | 102 | 340 | 420 | 704 | 2 | 20 | 80 | 704 | C32 | s (min size) | Explorer 16, Fast 100Mbps Ethernet PICtail Plus |
PIC32MX795F512L | 80 | ENC624J600(3) | SPI, 13.33 MHz | 100 | 350 | 460 | 807 | 2 | 20 | 80 | 807 | C32 | s (min size) | Explorer 16, Fast 100Mbps Ethernet PICtail Plus |
PIC24FJ128GA010 | 16 | ENC624J600(3) | PSP Mode 5, PMP | 94 | 287 | 328 | 568 | 2 | 20 | 80 | 568 | C30 | s (min size) | Explorer 16, Fast 100Mbps Ethernet PICtail Plus |
dsPIC33FJ256GP710(2) | 40 | ENC624J600(3) | PSP Mode 5, Bitbang | 140 | 620 | 840 | 2032 | 2 | 20 | 80 | 2032 | C30 | s (min size) | Explorer 16, Fast 100Mbps Ethernet PICtail Plus |
PIC32MX360F512L | 80 | ENC624J600(3) | PSP Mode 5, PMP | 150 | 670 | 990 | 2048 | 2 | 20 | 80 | 2048 | C32 | s (min size) | Explorer 16, Fast 100Mbps Ethernet PICtail Plus |
PIC32MX795F512L(3) | 80 | Internal 100BaseTX | - | 195 | 1100 | 2300 | 8738 | 2 | 20 | 80 | 8738 | C32 | s (min size) | PIC32 Ethernet Starter Kit |
PIC18F97J60 | 10.4 | MRF24WB0M | SPI, 10.4 MHz | 6 | 25 | 31 | 40 | 2 | 20 | 31 | 40 | C18 | Debug | PICDEM.net 2, MRF24WB0MA Wi-Fi PICtail Plus |
PIC24FJ256GB110 | 16 | MRF24WB0M | SPI, 8 MHz | 8 | 48 | 68 | 70 | 2 | 20 | 68 | 70 | C30 | s (min size) | Explorer 16, MRF24WB0MA Wi-Fi PICtail Plus |
dsPIC33FJ256GP710(2) | 40 | MRF24WB0M | SPI, 8 MHz | 11 | 75 | 124 | 70 | 2 | 20 | 80 | 70 | C30 | s (min size) | Explorer 16, MRF24WB0MA Wi-Fi PICtail Plus |
PIC32MX360F512L | 80 | MRF24WB0M | SPI, 20 MHz | 11 | 75 | 120 | 70 | 2 | 20 | 80 | 70 | C32 | s (min size) | Explorer 16, MRF24WB0MA Wi-Fi PICtail Plus |
PIC32MX795F512L | 80 | MRF24WB0M | SPI, 20 MHz | 11 | 76 | 121 | 70 | 2 | 20 | 80 | 70 | C32 | s (min size) | Explorer 16, MRF24WB0MA Wi-Fi PICtail Plus |
1. Internet throughput with acknowledged protocols, such as TCP, are capped by the formula (Buffer Size)/(Ping Time). Assuming round trip acknowledgement latency cannot be controlled, bigger buffers must be used to increase throughput. Internet performance is derived from LAN throughput and is not measured. | ||||||||||||||
2. Stack performance with a dsPIC33F is identical to a PIC24H device at the same processor clock. No DSP features are used by the TCP/IP stack. | ||||||||||||||
3. ENC624J600 and PIC32MX7XX/6XX Internal 100BaseTX Ethernet measurements are done in 100Mbps, full duplex mode. |