Custom board for running ML models



  • Hi all,

    I am planning to make a custom board for running ML algorithms. I decided to make this board besides having boards like Jetson Nano and Rpi4 is because they have many other peripherals that I don't need for my application. So, can someone please suggest me how to start off to make boards like these?? specifications I'm looking at are

    1. A processor that can be burnt with Linux (Like ubuntu)

    2. RAM - 4GB/8GB (depending upon the cost)

    3. ROM - 16GB (can be eMMC or also SD card slot is enough)



  • Hi Kowshik,

    While designing high speed digital circuits from scratch, you have to take care of numerous design rules and strategies which I don't want to elaborate.

    For these kind of applications, usually to avoid design complexity and getting better time to market, we use SoMs (System on Modules). SoMs comes with different configurations with different Processor-RAM-ROM-GPU combinations. It's just a card kind of board with a Processor, RAM, Flash and an optional GPU and commonly they come with a 200 pin SODIMM male connector.

    I always prefer Toradex for SoMs in my projects. You can have a look at their product lineup here - Browse Products - Toradex.

    Their boards supports Windows CE, Linux(Yocto), Torizon etc. They provide you with all the BSPs, Drivers, Configuration tools etc.

    They also provide carrier boards for prototyping in case you want to test your application while you design your custom board.



  • @kowshik1729 I agree with what @kksjunior mentioned above, you can utilize the SoM, SoP's for your design, listing some of them.

    1. Artemis Module - Low Power Machine Learning BLE Cortex-M4F
      If you are looking for SoC that can run ML, check the Artemis or nRF52840 .

    305e838f-1c41-4912-bf9f-2f70bfddea99-image.png

    more details: https://www.sparkfun.com/artemis

    1. OSD335x-SM System-in-Package, Smallest AM335x Module
      The OSD335x-SM is the smallest Texas Instruments AM335x module. It integrates the TI Sitara ARM Cortex-A8 AM335x processor, DDR3 memory, TPS65217C PMIC, TL5209 LDO, all the needed passives, and 4KB of EEPROM into a single BGA package. At 21mm X 21mm, it is 60% smaller than the discrete components and 40% smaller than the OSD335x.
      link : http://octavosystems.com/octavo_products/osd335x-sm/ , https://beagleboard.org/pocket

    aceeae2f-5e3b-4a77-802a-298315d0a2cc-image.png

    1. Microchip SAMA5D2 ARM® Cortex®-A5 Processor 500 MHz
      Link: http://ww1.microchip.com/downloads/en/devicedoc/ds60001476b.pdf , https://www.microchip.com/design-centers/32-bit-mpus/microprocessors/sama5


  • @kksjunior Thanks a lot for the reply. Yes, obviously there are a lot of rules, recommendations while making such kinds of boards. As you suggested, Is Toradex SoM optimized for running ML models specifically? because I've been looking for modules that can easily run the ML algos. And also, do I need to design a break out board for extending the pins of the SODIMM module?



  • @kowshik1729 Yes, a lot of different SoMs from Toradex are optimized for AI and ML based applications. They've developed their own Linux based "Torizon" OS for easy configuration and deployment. There are different SoMs available right from the one's having a normal NXP Vybrid SoC to the powerful ones like NXP i.Mx8 QuadMax and Nvidia Tegra K1. You also have options for embedded WiFi and BLE modules.

    These are pure industrial grade modules with IT grade certification(-40° to +85° C), so although they're easy to work upon, I won't recommend them for hobby usage. There are lot of alternatives like @salmanfaris mentioned above if you're aiming for learning/hobby usage.

    But if you're looking from a product perspective you can choose Toradex without hesitation.

    See the below Links for AI & ML related applications with Toradex SoMs.
    -> Webinar : Jumpstart cloud-connected computer vision and ML designs with Toradex.
    -> Apalis AI Vision Starter Kit for the i.MX 8 Applications Processor
    -> Rapid Creation and Deployment of ML Models at the Edge with Toradex AI Vision Starter Kit

    Regarding the question on breakout board.

    Yes you definitely have to design a "carrier board" which should hold the SODIMM module. There are a lot of readymade carrier boards for each family of SoMs directly available from Toradex which can be used for prototyping as well as for production. However as you've mentioned in your post about unwanted peripherals, it's always advised to design custom carrier boards for customized applications. Why do you need to pay for a couple of USB receptacles and ethernet connectors if you're not going to use them? Also a custom carrier board can always be designed according to the form factor and dimensions of your product design.



  • Posting something which I've forgot to mention in the first post.

    The Raspberry Pi Compute Module is also an alternative to Toradex SoMs, though you don't have any configurations to choose. There is only one standard model available in every generation of the module.

    Just like the Toradex SoM, even this guy comes with a DDR2 SODIMM connector.

    More Details here.

    82ec83f3-6275-4b84-a775-325276d597e5-image.png



  • @kksjunior Thanks a lot for a very detailed explanation. I shall surely look into the options you've shown and dig more on this.



  • @kowshik1729 Keep digging untill you find the gold. All the best! 😄



  • @kksjunior Just a small naughty thought😁 ....Is it possible to upgrade the RAM on those RPi modules? I mean if the modules has pin to pin compatibility then can I consider upgrading them? Or will I be having some limitations from the Broadcom SoC they have on board?



  • @kowshik1729 Haha, Nothing is impossible... Let's say if you get a pin compatible DRAM IC complying to BroadCom SoCs requirement without any limitations to the firmware running upon it you may be able to upgrade it. Provided that you didn't destroy the board while tinkering with it. 😄 The effort to result ratio will never match.
    That's the reason why we get a wide variety of options from manufacturers like Toradex. All the Toradex SoMs belonging to the same device family are pin compatible. You can always upgrade or downgrade your computational module without disturbing the rest of your design!


Log in to reply
 

Recent Posts

  • @Suhailjr But I think since it's not a plug and plug play system and it will laying on the PCB for the long term, it might be fine. for me, it's similar to the Intel Edison and the PICO-IMX7 System-on-Module

    dade502a-71f6-4da0-bd7d-0e9a0b602cb0-image.png

    a4b8898f-90d4-4a34-ba5d-81ab76fda904-image.png

    read more
  • @salmanfaris at last they update their design. T
    What you think on the updated connector. I felt like its more fragile and high chance for corottion issue due to humidity for long term use.

    read more
  • Built on the same 64-bit quad-core BCM2711 application processor as Raspberry Pi 4, Compute Module 4 delivers a step-change in performance over its predecessors: faster CPU cores, better multimedia, more interfacing capabilities, and, for the first time, a choice of RAM densities and a wireless connectivity option.

    3094f292-3301-4364-a444-d828f6e77ff8-image.png

    You can find detailed specs here,

    1.5GHz quad-core 64-bit ARM Cortex-A72 CPU VideoCore VI graphics, supporting OpenGL ES 3.x 4Kp60 hardware decode of H.265 (HEVC) video 1080p60 hardware decode, and 1080p30 hardware encode of H.264 (AVC) video Dual HDMI interfaces, at resolutions up to 4K Single-lane PCI Express 2.0 interface Dual MIPI DSI display, and dual MIPI CSI-2 camera interfaces 1GB, 2GB, 4GB or 8GB LPDDR4-3200 SDRAM Optional 8GB, 16GB or 32GB eMMC Flash storage Optional 2.4GHz and 5GHz IEEE 802.11b/g/n/ac wireless LAN and Bluetooth 5.0 Gigabit Ethernet PHY with IEEE 1588 support 28 GPIO pins, with up to 6 × UART, 6 × I2C and 5 × SPI

    31354fad-6332-40e8-b324-53e0aa5dbace-image.png

    Compute Module 4 IO Board
    89a3b68b-bb74-4002-9c2b-d32c2e1450b3-image.png

    The IO board provides:

    Two full-size HDMI ports Gigabit Ethernet jack Two USB 2.0 ports MicroSD card socket (only for use with Lite, no-eMMC Compute Module 4 variants) PCI Express Gen 2 x1 socket HAT footprint with 40-pin GPIO connector and PoE header 12V input via barrel jack (supports up to 26V if PCIe unused) Camera and display FPC connectors Real-time clock with battery backup

    More details:
    https://www.raspberrypi.org/products/compute-module-4/?variant=raspberry-pi-cm4001000, https://www.raspberrypi.org/blog/raspberry-pi-compute-module-4/

    read more
  • 28e1870e-33fe-4791-bc74-05c9d58098da-image.png

    Seeed is currently counting down for the 10 year anniversary of the debut of Grove 🎉. In the past 10 years, we have seen many wonderful projects created by Grove from our user and community. We want to invite you to join us to celebrate the 10 year anniversary of Grove 🤩.

    In the Grove 10 Years Celebration, we’d like to collect the stories of “Grove with You”, which we want to invite our users to share their stories they have with Grove products.

    => What project you’ve made out of Grove?
    => What is your favourite Grove?
    => which one was the first Grove you’ve purchased?

    Seeed encourages you to post and share photos, videos, stories of Grove in the Seeeed Forum, or any other platforms below that you’d like to use.

    The following ways to find us, and tag #grove10 to share the project with us!

    Twitter (@seeedstudio) Instagram (@seeedstudio) or simply email your project to grove10@seeed.cc

    Feel free to be creative in documenting your projects–we will be selecting top 10 most “Grovy” winning entries from the submissions, and the winners will receive a $100 Grove Surprise Pack 😋 as a special gift.

    Looking forward to seeing your projects! 🥳

    read more
  • @kowshik1729 I think that might not get since the platform is not opensource! but they provided everything you need to develop a system with that.

    read more