Electronic – How to design the very own ARM based processors

Architecturearmphysical-design

I have several questions about how I would design my own ARM-based CPU?

  • How does one start with an ARM license and end up with a package ready to be soldered on to a board?
  • What do I get from ARM (I am sure they have multiple license options to dish out – Architecture License (Qualcomm Snapdragon style) and Core License (TI OMAP style))?
  • What tools do I need to proceed once I have 'that something' from ARM?
  • What do I send to the fab?
  • I believe only certain foundaries are licensed to etch an ARM core on to a silicon wafer. Am I right?
  • As a student, can I afford to do this on an FPGA? How do I get hands on experience for something like this?

Best Answer

Here is how companies do it:

  1. Raise about US$10 million.
  2. Negotiate with ARM to get a license. This will probably cost at least US$1 million.
  3. Get the design files from ARM. It will likely be in some form of VHDL, Verilog, or an "encrypted" netlist.
  4. Design your own chip using a mix of your own logic (for the peripherals) and what ARM gave you. This step will likely require some expensive CAD software and a small team of experts. Expect to spend at least US$5 million and several years.
  5. Get the masks made for the chip itself. If you use any modern semiconductor process then this will run around US$1 million.
  6. Get the chip itself made. Price varies, but should be less than US$0.5 million.
  7. Debug the chip you created, fix the bugs, then go back to Step 5 until you have something that you can sell.

Here is how YOU do it:

  1. Take a graduate level computer architecture course at your local university.
  2. Take more courses in digital logic and whatever else.
  3. Design a CPU from scratch in VHDL or Verilog.
  4. Design another CPU from scratch.
  5. Look at the ARM instruction set and design a compatible CPU.
  6. Make your ARM-Compatible CPU work in an FPGA.
  7. Don't distribute your VHDL/Verilog source code unless you want to be sued.
  8. Use your ARM experience to write a good dissertation for your PhD.
  9. Use your PhD to get a job at ARM, or TI, or whoever. Then repeat the process using the previous 7 steps on how a company does it.

Ok, so this list is a little tongue-in-cheek but it is basically correct. The point is, don't even bother dealing with ARM directly because odds are you don't have the money. And don't do anything that will get you sued by ARM either.