Re-working the VLSI Project

For my first task as the new Division B TA, I have been asked to rework the 3rd year VLSI design project. Since it is directly related to chip design stuff, I have decided to blog about it here. Although I have been a part of this project for the last 3 years, this time around, we are making a huge design change. Design tools being EOL-ed and a change in department teaching philosophy has necessitated a massive change in the project. So, my basic plan now is to:

  1. Ensure that the design tools are set up correctly on our new server.
  2. Identify the associated design kits and design libraries to be used for the new project.
  3. Bring a simple ring-oscillator design through the design flow to make sure all the critical steps work magically.
  4. Come up with a new design project that encourages group collaboration instead of just bringing a design through the flow.
  5. Work out the specific flow that will result in bringing this design from design entry through to final tape out.

As a start, I have contacted the computer officer in charge of setting up the new server and tools to find out their status. I’ve asked him to let me know (as soon as possible), which tools had been installed so that I can take them for a test drive. I’ve also been looking up the necessary design libraries for Mentor Graphics that we might use. At first glance, there are none being supplied by EUROPRACTICE that might be used. However, I will send EUROPRACTICE an email to ask them if they can recommend me the necessary toolchain and libraries to use.

Hopefully, there will be a suitable library that can be used. Otherwise, it’s going to be a long road to get things working.

Do we need Open Source Hardware?

A recent article at Linux.Com asks a question of whether we need an Open Source Hardware License (OSHL). It wonders if current Open Source Software (OSS) licenses might suffice. There is also an issue raised on whether we actually need Open Source Hardware (OSH) at all. Coming from that particular source, I find it weird that they would even think such things, much less voicing it like that.

There is no doubt that OSS licenses have proven good for software. However, hardware is quite another issue. The article says that most hardware designs are software anyway. VHDL and Verilog are examples of hardware design languages that are semantically similar to software programming languages. This though, points out a big difference between the software and hardware people. There is a slight lack of understanding of hardware by the software people.

Hardware can certainly be designed in VHDL and Verilog. However, that’s only one way of representing hardware. Hardware can also be designed in schematics. Now, you may wonder who still designs stuff in schematics. In this age of multi-million gate designs, how could anyone still design stuff in schematics. The answer is, the hardware people still do. This is done everyday by people working on analogue and mixed-signal designs. There is currently no way of describing analogue designs in a “language” such as VHDL or Verilog. Although both of these languages feature analogue extensions, these extensions are currently only suitable for simulation and not synthesis. Analogue design is still very much an art form. So, a lot of work is still done in drawings. So, such works could by extension, be conveyed under copyright law. That is rightly so, but the OSS licenses aren’t necessarily applicable to drawings.

Derivative works are another issue altogether. In OSS licenses, they usually mention terms for binary or compiled versions of the code. But for hardware, it isn’t exactly compiled into binary form. Some may argue that synthesis is akin to a compilation process. That is true, as synthesis does convert design descriptions into a hardware representation. However, it’s neither binaries nor compiled. It’s called “synthesis”. The OSS license leaves things like that ambiguous and arguable. If it mentions “synthesised” specifically, then there will be less questions on compiled versions of code. So, a OSHL is absolutely necessary if we wish to see better proliferation and uptake of hardware designs.

Then, the whole question on whether we actually need OSH at all, is just silly. Coming from a platform that advocates open source, I cannot imagine such a silly question being asked. They raise a question on whether or not people can hack hardware like they do software. Since not many people can afford to play with hardware (even with FPGA) and fewer still can afford tape-out runs, the article wonders who the license would actually benefit. The answer was given straight by one of the comments, everyone. If hardware was open sourced, there would be very little problem writing OSS drivers for it. There would no longer be a need for reverse engineering to write Linux drivers. The people can just look at the hardware source and write the drivers directly.

We haven’t even gone into the whole idea of community hardware development. Complex pieces of hardware like modern microprocessors have lots of bugs in them. Wouldn’t it be nice if there were many eye-balls looking at the design code to help fix it? I have always thought felt that greater transparency in everything is a good thing for everyone. Let’s stop all these secrets.

What will this be about?

I have been running a personal blog on blogger for quite a while now. However, I thought that it would be a good idea to start a new blog, that focuses on chip design. I will probably try to keep all my chip design related postings here. Actually, it might include more than just chip design stuff. I’ll probably pop in all sorts of things related to my work here. So, this would probably mean anything and everything technology related. Hopefully, somebody will find this blog useful.