Monday, July 13, 2009

Alright, so I did some thinking about how I will go about finding the parameters for my simplified transistor models. 

To find the oxide capacitance, simply drive a known width, known length transistor with a current source. Tie the drain and source voltages to be appropriate to not have a body effect, and let the gate voltage have the appropriate starting condition.

The NMOS case is shown below:


The calculation for the ocide capacitance follows:



Then to find the other parameters, tie the drain, source, and gate voltages to bunches of different values and measure the drain source currents. 




We then find the best fit values for the x's based on our data points for a particular Vd. After that, the rest can be quite simple....



Thursday, July 09, 2009

Now that I have Electric installed, I need to go through the various tutorials. 

Once that is done, the first order of business is to empirically find out a few values of great importance.
     
  1. Critical Field Strength
  2. Oxide Capacitance
  3. Saturation Velocity
  4. Effective mobility
  5. Nominal Threshold Voltage


I will need to find these for both NMOS and PMOS.
I've decided I don't want to loose my circuit design skills, if my new job is software related. 

So I have conceived of the following project:

  1. Design a super fast chip with multiple processors (perhaps with PDP-8 like instructions), with super fast, L1 and L2 caches made with 6-T SRAM, with many ports and queues. This will really test out my abilities. A lot of trade offs to consider for optimum circuit speed.
  2. Have a PCI-E interface on chip, and have a really dumb driver that allows for direct access to the caches and code-streams for the processors. Cache coherency and instruction sequencing will be the responsibility of the programmer. 
  3. Of course, I will then have to put it on a card, and that will refresh my PCB skills from a long time ago. 
  4. Do a MOSIS run to create the chips, and I will need to get a cheap motherboard that supports PCI, with a cheap processor. I can then code programs to run massively parallel calculations like Black-Scholes, LU Factorization, Fast Fourier Transforms, SVD computations, and a whole school of such things on my PCI-E card. 
  5. I will likely run Ubuntu on the system, meaning I will need to learn how to write Ubuntu drivers. 
  6. Another nice challenge will be to see if I can convert some Apache Licence software to use my card to improve performance. I think the database, especially, can benefit from my MP-PCI card. 
  7. Also, it will be fun to so some architectural modeling to see the trade offs between number of processors vs. cache etc. In addition, the circuit trade offs between power and speed, latch based design vs. domino vs CML vs. other logic families will be intense.
This is going to be very fun...but really expensive. Maybe I can take a class at Sac. State that puts runs through MOSIS.

I already downloaded Electric, MVSIS, and Dragon. I need to evaluate free simulators. I may just use the student version of Modelsim, but that would ruin any chance of me selling these cards. Making money isn't the point though.