EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Is it possible to get 4mbps from LPC1768 Ethernet module?

Started by brunodini August 4, 2010
This may help as well:
http://www.nxp.com/#/search/params=[q=AN10799,p=1,l=en]|filters=[]

An Engineer's Guide to the LPC2100 Series

--- In l..., "Donald H" wrote:
>
> This may help as well:
> http://www.nxp.com/#/search/params=[q=AN10799,p=1,l=en]|filters=[]
>

Thanks Donald! The link really help!

I will try to port it to LPC1768 now.

Thanks again.

--- In l..., "brunodini" wrote:
>
> --- In l..., "Donald H" wrote:
> >
> > This may help as well:
> > http://www.nxp.com/#/search/params=[q=AN10799,p=1,l=en]|filters=[]
> > Thanks Donald! The link really help!
>
> I will try to port it to LPC1768 now.
>
> Thanks again.
>
I hope you will be willing to share.

don

--- In l..., "Donald H" wrote:
>
> --- In l..., "brunodini" wrote:
> >
> >
> >
> > --- In l..., "Donald H" wrote:
> > >
> > > This may help as well:
> > > http://www.nxp.com/#/search/params=[q=AN10799,p=1,l=en]|filters=[]
> > >
> >
> > Thanks Donald! The link really help!
> >
> > I will try to port it to LPC1768 now.
> >
> > Thanks again.
> >
> I hope you will be willing to share.
>
> don
>

Of course i will share it!

I founded(based on your link) a "closer" AN(for LPC1700): http://www.nxp.com/documents/application_note/AN10845.pdf

I now need time to make the PCB with the uC, PHY and remaining things. Thinking that maybe i'll need to make a basic library for the LAN8720... :)

Bruno,

you have been told in this thread to use uIP instead as far as I could
see. I'm not sure if you get a really good throughput with this tiny
tcp/ip stack, I was talking about the lwIP (originally from the same
author).

We took the latest lwIP from the lwIP site (look for yourself where it's
located). The version in the lpc2000 group is a rather old lwIP
version, but you can use the file talking to the MAC from this version
(as we did). We've modified it a bit - transferring data to/from the MAC
is no longer done in a "for (i; ;)" loop but with memcpy() - this
increased the throughput by about 100%

When transferring the source code to the LPC17xx care must be taken
(depending on the compiler you use) to correctly set the alignment
macros (called "packed()" or similar), otherwise the code will not work
as expected.

Herbert

Am 05.08.2010 02:05, schrieb brunodini:
> Hi Herbert,
>
> I like the numbers you said.I will take a look at the lwIP library then. The code you mentionated is avaiable somewhere?
>
> Thanks a lot!
>
> --- In l..., groups@... wrote:
>> Bruno,
>>
>> we've implemented the lwIP TCP/IP stack on a LPC2478 (which is defnitely
>> slower than a LPC17xx) and we get a throughput or about 2.5 MByte / sec
>> without using interrupts.
>>
>> Herbert
>>
>> Am 04.08.2010 22:48, schrieb brunodini:
>>> --- In l..., "M. Manca" wrote:
>>>
>>>> Il 04/08/2010 20.48, brunodini ha scritto:
>>>> First of all... you would say what communication protocol over ethernet
>>>> you would use.
>>>>
>>> Based in what i've been reading, i would choose UDP protocol for now if the package lost percentage remains low.
>>>
>>>
>>>> Second, you would establish if you need some sort of data recovery or
>>>> data assurance.
>>>>
>>> I will send video RAW data. It's a live streamimg, well..almost.it will be 2 frames delayed.
>>>
>>>
>>>> Third you say that PC has to send data to the LPC1768, so you would
>>>> estimate also how many bytes you have to send because at 4mbps the PC
>>>> will send 4/8 mbps = 500KB per second to the LPC1768 that hasn't the
>>>> needed ram, so your data rate couldn't be 4mbps (also if it is the
>>>> arithmetic media of the speed), you could obtain burst of 100mbps data
>>>> trains with also 0mbps pause but with a low duty cicle for a medium
>>>> speed lower then expected 4mbps. Could be a speed problem but surely it
>>>> is a big ram problem (with no solution using only the LPC1768 internal ram).
>>>>
>>> Ok. Sorry for that missing detail. I would use 2x16(32kB)(double buffered) of RAM avaible to receive incoming data. The rest of the process shouldnt take a lot of time to process.
>>>
>>>
>>>> Just to be clear: with this type of microcontroller it is possible to
>>>> receive a limited number of packets in a second, generally their
>>>> application have to be designed to introduce a little overhead and with
>>>> not very frequently messages directed to them.
>>>> In this scenario 8KB of ram could accomodate a good number of ethernet
>>>> packets (depending on the size of the packets) but coud be filled in a
>>>> very short time in a scenario like yours (4mbps medium speed)
>>>> considering also the time needed by the management of the data contained
>>>> in the ethernet packets.
>>>> If 4mbps is a peak speed you would estimate the impact of these
>>>> parameters on the communication band i.e. in % of available througput.
>>>>
>>>>
>>> I could decide package size in PC software. I would try to use the largest size possible to increase speed.
>>>
>>> Thanxs!
>>>
>>>
>>>
>>>>>
>>>>> Hi there:
>>>>>
>>>>> Im new at this group, and quite new with ARM's too.
>>>>>
>>>>> I need to send data from a PC application(made by me) to the uC, so i
>>>>> thought about Ethernet communication.
>>>>> I think 4mbps will do the job, at least for now. I've been searching
>>>>> in the group messages and found some related
>>>>> information(http://tech.groups.yahoo.com/group/lpc2000/message/39756).
>>>>> Please, note that bi-directional communication isn't required.
>>>>> By now(and maybe forever) the only devices connected to the physical
>>>>> layer will be the ones mentionated before.
>>>>> My only experience currently is with Code Red IDE.
>>>>>
>>>>> What library would you recommend me to look at?
>>>>>
>>>>> Regards,
>>>>>
>>>>> Bruno.

The 2024 Embedded Online Conference