Monthly Archives: October 2016

Guide for creating Design from Scratch with circuit tree

Here is a guide for a new user as well as provide details to a user about the design flow.

Let us start with a example wherein you select a design suggested in our post. The post contains a am3352 processor from texas instrument and is fairly popular among engineers. In the example we create create design schematic for a olimex board.

Evaluation of circuit tree with olimex am3352 board

To start with, login to the site Circuit tree tool and you will enter at the requirement editor section.

A clear design requirements editor will have only Board Entry Power block on the editor area similar to shown in the figure below

1

On the left side from the library menu look for the Texas instrument Processor AM3352 then drag and drop the block to the editor area. Once block will be placed a Board Entry Power menu will be popped out similar to one shown in the screenshot. Select the connector, input voltage range and type of the power and press Save changes button.

2           3

Once the processor is on editor area user can continue to place other peripheral devices according to their requirements, Click the expand icon of the TI AM3352 processor and design option windows will appear. Select the appropriate options and click save changes button to go back to the editor.

4   5

From the library menu look for the Ethernet library and place the block to the editor. Once the block is placed in editor area Ethernet Library menu will be opened. Select the library functions from the drop down list that includes all Ethernet supported modes. For the demonstration we are picking parts and modes similar to the Olimex AM3352 SOM board. Click the Get Parts button and wait for the application to choose best suited part. If the selected part is not you are looking for the click the expand button on ‘Select other Matching Parts’ section.

7   8

A window will be popped up with all other available parts of the family. Select the suitable part and click Save changes button. There are other device specific options available for user to choose from, click the button indicated by arrow on selected part and application will take you to the available design options.

Select the appropriate options and press Save changes button on both opened windows and this will take you back to the editor area with all selected options saved in engine’s database.

12   11

To copy the olimex SOM board design, repeat all previous steps to add another Ethernet PHY to the editor area. Once done adding Ethernet PHYs to the board look for the DDR3/L Memory Library from the library menu. Select the library function options and click Get Parts button to let the application select respective part then click Save changes button to go back to the editor area.

19  20

To add NAND memory to your board look for the Parallel Memory  Library and place the block to the editor area. In Library Functions drop down menu select the NAND option and click Get Parts button. If the selected part is right click save changes button or click button represented by arrow in Select other Matching Parts.

22     23

Look for the 8GB NAND memory and then click the radio button to select the part and then click save changes button on both windows to go back to the editor area.

24 25

To add SD card support to your design place the SD Library to your design and choose from the SDHC connector, Micro SD Connector and emmc memory. Click the Get Parts and once application finished loading part click save changes button to go back to the editor area.

27 28

For debugging, CT also support debug connectors to be placed on the board. Place the JTAG library on the editor and select ARM 2X10 Connector or other from the library function options. Click get parts button and then click save changes button to finish placing JTAG connector and to transfer the control to the main editor.

30 31

Circuit tree also includes CAN transceivers for industrial and automotive designs. Place the CAN library from the library menu and click the Get parts button on library menu. To change the selected part click the expand button on the Select Other Matching Parts section.

33 34

As our guide is based on the Olimex SOM board and to follow the same parts, look for the SN65HVD230D CAN transceiver check the radio button and click to save changes button to go back to the CAN library window. Click the expand button in selected part section to explore more device specific options. Once device specific options are selected click save changes button to complete the CAN part selection.

35 36

Next peripheral to add to the design is USB, application supports USB 2.0, USB 3.0 and ULPI transceivers. To add USB to the design look for the USB Library and place to the editor area, select the library functions and click Get Parts button to let the application select the suitable part. Once the part is selected click the save changes button to finish the wizard. Repeat the steps for OTG and HOST peripheral connectors.

40 41

Circuit tree also allow user to route connector to any interfaces to connector peripherals externally to the board. To add connector to the design, look for the connector block in components library. Once the connector is added to the editor a window will be popped out for connector options. Select the proper sizing of the connector and number convention and click save changes button. Note the connector designator that will be used in next step.

48

Next add UART block to the editor area, now here is a new thing instead of looking for parts click the expand icon under ‘Route Interface to Connector’ section and the connector configuration window will be popped up. Select rout the interface option and connector designator from the previous step. Once done click save changes button to finish routing connector to the interface.

50 51

Same can be done with SPI and I2C interfaces, to add connector to SPI interface place Serial Memory Library block from the library menu select SPI and rest of the process is same. For I2C interface, in Serial Memory Library select I2C from the library functions drop down menu and repeat the same process.

The menu’s are easy to use and the interface has been created for quick turnaround of the design.


 

Short Introduction to Circuit tree

Circuit tree is a circuit board design software application having intelligence of a hardware engineer to create embedded circuit board designs. It features more than 1000+ processors and controllers along with extended hardware peripheral library.

Here is a introduction video to circuit tree:

To start building your circuit board design now click on Access Tool.


 

How we check our designs?

For solving any problem you need wonderful teamwork to attempt and create a perfect circuit board design software application. We value the quality of circuit board designs produced as we want to be judged based on that and nothing else. The challenge here is that every design created by circuit tree is unique. It is manually next to impossible to even check all the drawings. We just cannot.

We had anticipated this problem early on and planned multi tier check. Here they are

  • During model creation. All our components are added in our hardware proprietary models. These models have number of fields which are scraped from the datasheets and other design information. These models are verified and reverified to ensure that the information presented matches the information available.
  • Scripts. We use a lot of scripts to test the models for correctness. These scripts are updated whenever we find issues in the models.
  • Model in action. The models are used with a tested processor to check different functional conditions along with its circuit board circuit options.
  • Generated design validation. We again use a lot of scripts to different possible conditions. The code has check to check various conditions. Like our circuit board design software application application the test infrastructure is also maturing.
  • Experienced Hardware designer application review. Here we have a senior engineer involved whose main work is run the application and report the issues. Other than the design he also looks for issues in BOM, exported designs. Most of the issues are web based which are passed back to the development team for rectification.

Thank you for your time.


 

Short Introduction to Circuit tree

Circuit tree is a circuit board design software application having intelligence of a hardware engineer to create embedded circuit board designs. It features more than 1000+ processors and controllers along with extended hardware peripheral library.

Here is a introduction video to circuit tree:

To start building your circuit board design now click on Access Tool.


 

Board Design with TMS320DM8148 processor

We start to create a board design similar to TMDXEVM8148 board which is distributed by Texas Instruments. Some of the feature set of the board are listed below:

  1. Dual 32bit DDR3 controller of TMS320DM8148 interfaced to a DDR3 Memory of 1GB
  2. 256MB NAND Flash Memory placed in 48 pin TSOP socket
  3. 256-Kb I2C Serial EEPROM to store the board ID information
  4. 32Mb SPI Flash provided on the EVM for optional booting
  5. On Board Audio Codec AIC31066 “Ultra low power microcontroller MSP430 used for power monitoring using the current shunt & power monitor devices INA220
  6. Expansion connectors supporting plug-in application boards
  7. Two USB-OTG ports with integrated 2.0 PHY
  8. Supports analog video output such as, Composite video and S-video
  9. 1080p HDMI Video Output with ESD Protection
  10. On board Audio Input (Line in and Mic) and Audio Output (Line Out and Headphone)
  11. 4-bit SD/MMC interface
  12. Two Gigabit Ethernet port with onboard Ethernet PHY’s using RGMII ports
  13. Dedicated UART port for Debug and MSP430
  14. IR Receiver interface
  15. JTAG for DM814x and MSP430
  16. PCIeX1 lane support on PCIe-x4 connector
  17. SATA 3Gbps direct Interface to HDD with on board HDD power connector
  18. DC supply 12V +/- 5%, 5A Max through Power adapter
  19. On Board Clocks for DM814x and for SATA/PCIe
  20. Reset and power on/off switches for controlling the DM814x EVM
  21. Boot switches for various boot configuration selection
  22. Expansion IO Boards
    1. 512 MBit NOR Flash memory
    2. 3 axis smart digital output accelerometer
    3. 256-Kb I2C CMOS Serial EEPROM to store the board ID information
    4. WLAN Daughter card provides IEEE802.11 b/g/n wireless LAN, Bluetooth v3, including Bluetooth low energy (BLE) connectivity
    5. SPDIF interface through TOSLINK & RCA jack Analog SD IN (S-Video & composite video) digitized using TVP5147M1 decoder
    6. Analog HD IN (RGB & VGA) using triple high-performance analog-to-digital (A/D) converter TVP7002
    7. Digital HD Video capture using DVI Receiver (SiI1161)
    8. LCD connector for interfacing LCD adapter board Serial camera interface through CSI
    9. 12- Bit parallel camera interface
    10. UART
    11. Dual DCAN Bus interface

Circuit tree has been able to take in these complex board requirements and has been able to generate a complete schematic. The generated eagle schematic is available on the link.

Thanks for reading the post.


Short Introduction to Circuit tree

Circuit tree is a online EDA application having intelligence of a hardware engineer to create embedded hardware designs. It features more than 1000+ processors and controllers along with extended hardware peripheral library.

Short introduction to Circuit Tree:

Continue reading

Evaluation of circuit tree with a stm32f407 microcontroller board

Here is another capability test we wanted to conduct with the latest set of features. These tests help us check the limits to which we can test our engine check in addition to check the usability of the application.

We choose a stm32f407 reference design from STMicroelectronics for comparison as it is a complex board and our guess is that it has taken several week to design the board.

We quickly pulled in the design which we have created in our example library and selected components such as usb3317 from the usb library as our ulpi transceiver. We let circuit tree design remaining combinations for us. This is the what our design looked like in requirement editor.

STM32f407_Board_Requirement

Circuit tree quickly generated the design for us by doing all the complex tasks behind the scenes.

Let us compare the results. The table below shows what circuit tree could achieve in comparison with the board and what it could not.

Comparison chart

Comparison chart of features supported by the two boards

I am glad to report following findings:
1. Circuit tree did not connect two peripherals in parallel. For instance MicroSD connector and RS232 connectors. It also did not do create connections where audio port is shares pin with MicroSd port ON ST boards. Here are the list of pins allocated by the circuit tree versus the application board.
2. Some of the features we don’t support at the moment but we have capability to do so and extending our capability every day.
3. Finding processor pins for the peripherals, component selection for peripherals, power clock reset, optimisation, decision circuit configuration , schematic generation and check is all done in a shortest span of time. We like to keep things simple and easily understandable for our users which is reflected in our final output.
4. The application schematic generated can still be downloaded in a popular PCB design tool and used for further customisation.
5. The best part is that I can quickly go back to the requirement editor and change
a). The ethernet transceiver to Microchip lan8710 and
b). The CAN transceiver to TI SN65HVD230D and
c). Change zigbee module to Zigbee Internation XB24C module.
d). change input voltage to 9V.

The design file [containing Eagle and Altium] Schematic and the bill of material  is ready by the time i write this. You can check it out through the link below:

stm32f407_design_database

TIP: You could also go back to the board requirement menu ,delete the processor and add any other processor and still generate the design.


 

Short Introduction to Circuit tree

Circuit tree is a online EDA application having intelligence of a hardware engineer to create embedded hardware designs. It features more than 1000+ processors and controllers along with extended hardware peripheral library.

Here is a introduction video to circuit tree:

Automated Part selection

I was reading one of the silab blogs and came across a article which highlights some of the first hurdle electronics engineers comes across from a design to design. Here is a snippet


Every electronic circuit need is different, however, and your solution to your problem will need specific circuits to solve that problem most efficiently and cost effectively.

So you have an idea for an electronic gadget…great! The trickiest step in the whole process is figuring out which electronic components, or parts, are needed to make up your circuits. This is not a step to be taken lightly. There are a billion ways to solve any problem and seemingly a billion parts out there to help you do it. First off, you have to find the components that make your solution possible, and then you will likely need to refine the design such that it is economically viable and power efficient. There are so many parts out there that it is hard for anyone to know all of the possible options. It takes a lot of research.

Often, electronics designers stick to what they know and have experience working on from past projects. This is with good reason; part specifications can be long, confusing, and sometimes inaccurate documents. Designing with something that you already know can vastly improve the chances of the prototypes working in short order. However, technology is always moving forward, and new parts can combine functions of other parts or improve cost and performance over past technologies. ”

Credit

Well these are problems which are easily solved with circuit tree.

Let us consider a case where you need to start a new processor design. You will have to start by going through a lot of documentation, errata’s, reference design , check-lists to go through the design and then understand how to start designing a new hardware. Imagine the effort it takes to create this design/idea into a product. With circuit tree it is simple , pick the processor you want to choose, select from variety of peripherals and components, choose power requirements and the intelligent engine creates a design which you can download to use or further customise.

Circuit tree now supports close to 1000 processors and number of peripherals components. Generate instant schematic design and much awaited pcb placement in few minutes to bring your product closer to completion using the application.

Login to our server to checkout the online EDA application. .


 

Short Introduction to Circuit tree

Circuit tree is a circuit board design software application having intelligence of a hardware engineer to create embedded circuit board designs. It features more than 1000+ processors and controllers along with extended hardware peripheral library.

Here is a introduction video to circuit tree:[su_youtube url=”https://www.youtube.com/watch?v=_7DL1kXAl5c&t=5s” width=”500″ height=”400″ responsive=”no”][su_youtube url=”https://www.youtube.com/watch?v=_7DL1kXAl5c&t=5s”][/su_youtube]

Reference design vs. Circuit Tree based design

Embedded system design today is at an interesting kairos. The microcontroller based designs have enormously benefited by arrival of system on chips (SoC) devices. On the one hand, the whole system, which earlier took several components and used up significant board real-estate, are now squeezed in tiny packages. On the other hand, time to market and product life cycle times has exponentially reduced. Product managers now need different strategy and face different set of challenges with SoCs. Software development cycle now need boards to be available right at the start of the project. Embedded system designers have almost no time to ramp-up on upcoming devices, which are very compelling to use due to lower cost, smaller size and/or lower energy offerings.

This transition to faster design cycle work flow has legacy of using vendor recommended reference design boards. Reference board enables software development to start right away. Meanwhile, hardware developers are working to make board prototype design with all product features needed as per target product specification. This challenge puts lots of pressure on hardware designers, as there is no scope for any design iteration. More-over bread-boarding is almost impossible for complex interface/components that are being used to de-risk design errors.

Extra time and effort is needed to setup stopgap arrangement using reference design board to aid early start of software development. This involves parallel effort of designing temporary daughter board with actual peripheral devices that will be used in final product (in most of the cases). Hardware/Board simulation needs extra stopgap arrangement too; one for the reference design and its models, and other one with final design that needs it own simulation setup. In most cases, the next design will use a different SoC, the knowledge base and good understanding that engineers acquired goes redundant. This takes away the fun and ease designing boards. Engineers always wish for easy design flow that does not have these intermediate steps or if one could reuse of design platform/tools for next project.

Semiconductor vendors have been putting huge resource in developing reference designs. These reference design board covers typical use cases only.  In many cases they also end up offering multiple reference design to suit different end customer product development needs. Semiconductor vendors many case also provides system builder tools to help speed up software and system development. These tools in most case have to support earlier family of SoC and current part offerings. Supporting multiple reference designs and different family of devices in many case, break the tool design. This also adds complexity and testing effort while vendors ensure timely release of updated tool along with reference design boards.

Meanwhile, fortunately there has been advancement in design tools as well. Artificial intelligence and expert systems practitioners have developed new efficient algorithms and simplified flow to abstract complex design. This has been a good leverage to ease up SoC based embedded systems design effort and time. Circuit Tree is one such new and innovative tool.

Circuit Tree tool provides a unified platform to design SoC based embedded system design in very short time. Hardware designers can now complete schematic design in very short time of freezing board specification. In three simple steps engineers can now generate board schematic.

Circuit tree tool provides options to interconnect various peripherals and the SoC, choose required form factors to create a highly customized board design that meets product specification. Circuit tree also provides all collaterals to take these complex schematic to layout, these includes layout and routing guidelines and BOM (with popular component source). Designs generated from circuit tree are also free of design mistakes that may crop due to manual and time consuming schematic entry. Circuit tree flow can potentially eliminate step/s of using reference design, because the schematic design is almost instantaneous and reliable.

In three easy steps Circuit Tree can help engineers with schematic design. Circuit Tree provides a convenient web based User Interface (UI) with a drag and drop canvas that supports very wide range components to choose from. In the first step, user needs to choose SoC device central to their design – from over 12 popular ARM based SoC families currently supported by the tool. Circuit Tree supports SoCs from popular vendors including Atmel, Intel, NXP, TI, ST Micro and SI Labs. Circuit Tree will soon support SoC from Nvida, Qualcom and Mediatek. After this, users can choose components that define interfaces that are required for their products. Circuit Tree supports all interfaces supported by the selected SoC, be it USB, PCIe, SPI, SD, CAN, UART, Display drivers, Memory (DDR/Flash), standard PHY or Transceiver (MII/GMII/CAN/ULPI), JTAG/SWD, etc. Next, the user configures the power management details, like IO voltage selection, power up sequences, etc.

Users can then modify/update reset and clock configuration as per their design requirements. After adding other requirements like custom IO, sensors, GPIOs, linear analog components like ADC/DAC, level translators, RF modules  and connectors as needed by the design into the canvas. Users then define the board form-factor and interconnects. Circuit Tree supports most industry standard form-factors including PCIe, XMC, PMC, ATX or any custom form-factor that user needs. Finally users defines interconnects between all the components on the canvas to compete the schematic definition.

In step two, Circuit Tree tool runs its AI engine to optimizes the SoC pin mux options, creates clock and reset tree abstraction as configured. Circuit Tree engine uses this comprehensive abstraction and along with its internal detailed knowledge base that covers diligently all properties described as per vendor data sheet, brews the final schematic. This schematic is visible to users in muti-page UI for review (and iterate between different configurations if needed) and freeze. Once the schematic design is finalized users can export the schematic to take into any of the popular CAD tools.

In the final Step, Circuit Tree provides all necessary output collaterals needed to take schematic to layout tool. Circuit Tree generates Bill of materials (BOM) that supports from choice of components vendors like Digikey, Moser, etc. Circuit Tree also generates netlist, layout guidelines that include placement and routing requirements that is optimized for form factor that user has defined. Users can directly take the output from Circuit Tree to standard PCB Layout CAD tool. Currently Circuit Tree supports export to Cadence Allegro, Mentor Pads, Altim or Eagle.

Engineers can then use standard PCB layout design flow to compete PC board design for exact form factors required by the product specification. This reduces difficulties in design cycle where one ends up buying expensive reference design boards/platforms that semiconductor vendor recommend, which is built to contain all generic interfaces.

Since Circuit tree support SoC design from all major/popular vendors, it enables product teams to ease up migration of design from one SoC to another quickly, if such a need arise.

Currently, Circuit Tree in beta release phase and free trials are still open. Please explore this new automated schematic design flow that will enable you to quickly turn around your product design in ways that you would have not seen so far. Circuit Tree has excellent support team to help you through the evaluation process.


 

Short Introduction to Circuit tree

Circuit tree is a online EDA application having intelligence of a hardware engineer to create embedded hardware designs. It features more than 1000+ processors and controllers along with extended hardware peripheral library.

Here is a introduction video to circuit tree:

To start building designs now . Click Access Tool.

Evaluation of circuit tree generated schematic design with a AM3352 SOM EVB Board

We would be running a capability test with a circuit tree processor library part am3352 processors and a olimex based design which is a open source hardware boards listed at

Olimex SOM EVB

and

Olimex Am3352 SOM

The purpose of the test is to check the following

  1. Components selected by circuit tree and its comparison with the various peripherals selected by olimex Board.
  2. Pin Mux connections from the circuit tree versus the board.
  3.  Power, clocks and reset component selection and strategies by circuit tree engine to generate the design.

The processor lies on a system on module which connects with a base board where other peripherals are listed out. Our first goal is to create a board with similar peripherals connected by the olimex design.

We entered the requirements in the requirements editor as shown below in the picture and then generated the design. For more details of how to enter a requirements you can refer our post Guide for creating a fresh design

Am3352 board requirement

Am3352 board requirement

For more detailed overview of the requirements addition process we have covered it in our next blog.

The design generated by the circuit tree matches the am3352 design in terms of peripheral connectivity. There were differences in some parts which can be seen in the table below.

olimex

Circuit tree engine is able to generate a complex board design/schematic in a minute’s time after all the requirements are entered. We understand the pain of generating a embedded design and allowed the tool to simplify the complete design generation.

The generated design along with the bill of material cost can be downloaded through the link for the comparison.

Am3352_olimex_design

Circuit tree now supports close to 1000 processors and number of peripherals components. Generate instant schematic design and much awaited pcb placement in few minutes to bring your product closer to completion using the application.

Login to our server to checkout the online EDA application. .

Thanks

Team Circuit tree


 

Short Introduction to Circuit tree

Circuit tree is a online EDA application having intelligence of a hardware engineer to create embedded hardware designs. It features more than 1000+ processors and controllers along with extended hardware peripheral library.

Here is a introduction video to circuit tree:

New Design Capability

Over several months we have added plenty of new features in the Online EDA tool circuit tree design to provide greater flexibility and customization.

Here are the prominent ones

  1. New library Components
  2. Part selection through requirement menu
  3. New peripherals
  4. Connectors, ADC,s DAC GPIO, LEDs, switches
  5. Ability to route any peripheral connection to a connector.
  6. Option to change processor in the requirement editor without affecting the existing peripheral requirement.
  7. Auto generated Fractured symbols with placement which avoids overlap.
  8. Altium and Eagle export options
  9. New power, clock and reset components added to support variety of designs.
  10. Updated validation engine

With the new design features the application can still create new schematic designs in 60 seconds on the fly.

For the latest feature set check out the circuit tree design capability on www.circuit-tree.com

Team Circuit Tree