1

I have STM32F4 discovery boards. I have 30 such boards supporting maximum data of 128Mbps. The max data at any instance in complete system would be 300Mbps.I need to pick this data and send it to PC. All the boards are connected using daisy chain I am exploring the possibility of using USB3.0, Thunderbolt, Firewire and real time ethernet protocols.

Problems:

1: USB doesnt allow daisy chaining

2: Firewire- Unable to find many off the shelf components

3: Thunderbolt- very few devices can be connected.

4: Real time etherent protocols- Most protocols have data rate of 100mbps with ethercat claimimng to have touched 200mbps.

Can you suggest some protocol which can support such high data rate

adeelm
  • 13
  • 4
  • mbps (milli bits per second) or Mbps? What is "PC.ALl"? – Andy aka Feb 26 '15 at 10:19
  • 3
    How on earth are you going to get 300mbps out of an STM32F4? – pjc50 Feb 26 '15 at 10:24
  • 1
    Even if each board can manage 128mbps/Mbps/Mib/wtfs, aggregating a number of those up to a higher data rate link that daisy-chains means adding some device (mux) that can handle the _total maximum_ data rate, unless you're using WDM on fibre optic which I would assume you're not. Why no love for gigabit ethernet? – John U Feb 26 '15 at 11:53
  • 1
    ethernet is your best bet, if you already have these daisy chained then you either already have your solution or have already failed. you have not explained why using a topology to do something is required when the solution is not already known. serial may daisy chain well, and will go faster than you think but will not carry the aggregate as fast as you want, no external components required. ethernet will easily solve the problem but requires external components...usb as well but requires a hub or few, external components. – old_timer Feb 26 '15 at 14:53
  • @JohnU : Microcontrollers would be connected to some slave device based on protocol selected. Our requirement of daisy chain has arisen based on how in hardware various microcontrollers are available. Daisy chaining will reduce wiring alot.Ethernet or firewire protocols are the ones we are preferring based on daisy chaining. – adeelm Feb 27 '15 at 10:54
  • @dwelch: Microcontrollers would be connected to some slave device based on protocol selected. Our requirement of daisy chain has arisen based on how in hardware various microcontrollers are available. Daisy chaining will reduce wiring alot.Ethernet or firewire protocols are the ones we are preferring based on daisy chaining. – adeelm Feb 27 '15 at 10:54
  • How far apart are the 30 STM32F4 boards? – tcrosley Feb 27 '15 at 12:55
  • More detail STILL needed: This 128Mbps coming out of the STM32, is that raw data, framed packets or what? Even if you can clock raw data out of the STM32 pins at 128Mbps I'll be very surprised if you can encapsulate/packetise it, add flow control etc. at full rate, especially if an ethernet PHY is involved. – John U Feb 27 '15 at 13:52
  • ...also, is the timing of the data critical? Because Ethernet will knob that totally with buffering, collisions, etc. once the network gets above ~10% capacity, although ethernet can never guarantee timeliness or packet sequence or even reliable delivery. – John U Feb 27 '15 at 13:57
  • @JohnU: We are not fixing it to this specific microcontroller if it is not capable of transferring high data rate. What is important is data rate of max of 128Mbps from every microcontroller. Yes timing of data is critical but timestamping can be used for data which makes it less critical. The flaw could be requirement of higher data transfer. – adeelm Mar 02 '15 at 16:09
  • @tcrosley: All microcontrollers are 30 cm apart maximum and can easily form daisy chain which will reduce cable significantly – adeelm Mar 02 '15 at 16:11

1 Answers1

2

With Ethernet you have variants. Below some basic ones are shown.

  • no additional hardware, but 300 Mbps system overall performance is unreachable

    enter image description here

  • (n) units of 3-port 100BASE-TX/1000BASE-T unmanaged switches as additional hardware, your target system overall performance of 300 Mbps in reachable now

    enter image description here

  • simple ring topology, (n) units of switches supporting a ring management protocol, e.g. (Rapid) Spanning Tree Protocol, are needed as additional hardware, also this is a single link fail withstandable redundant architecture

    enter image description here

  • simple topology based on link aggregation, up to 200 Mbps of overall system performance is hypothetically reachable

    enter image description here

Also, if you are interested in real-time dependable industrial Ethernet technologies, make a look on HSR and after to other ones in its group standardized by the IEC 62439 publications series.

IMO, EtherCAT is out of the today's trend in networking based process automation. There are two main technologies for that now: PROFINET and IEC 61850. The first is with a need of special (over the IEEE 802.1D/802.1Q rules) switching hardware while the second is not.

What about other technologies you mentioned, use USB & FireWire & Thunderbird are compatible with each other and practically the same (as per wiki) therefore without enabling a star topology they are all useless in your case. Because a daisy chain could be considered as a sub-case of a master-driven ring topology, additionally you may search for a non-Ethernet-based networking technology (being still active today) supporting ring (open/closed) topologies, compatible with the MCU you use, maybe you'll find something i'm not familiar with. Good luck.

alex
  • 71
  • 3