IC Design with Free Tools – Introduction

with one comment


As part of my curriculum I recently attended the Advanced Integrated Circuit Design Lab at my university. In lab we had to design a 3-bit resistor string DAC. We used Cadence Virtuoso, which seems to be the industry standard for analog IC design. It might be really powerful, but rather difficult to use and financially completely out of reach of students or hobbyists.

Being given access to a tool like Virtuoso as part of one’s studies is great, but what if you want to keep working on IC design after that? That’s the question I posed myself and started researching. To experiment with IC design you need two things: information on the topic (e.g. books) and software. Books you can buy used from places like Amazon and Abebooks for very little money. From what I’ve heard Hans Camenzind’s book Designing Analog Chips is a great resource and it can be downloaded for free from his website (server config seems broken, so delete the countdown.pl? part of the URL).

This brings us to software, which is the hard part. Tools from the likes of Cadence or Synopsys are out of reach so we have to find alternatives. One tool I kept stumbling upon is MAGIC. It looks like it’s a mature project and – best of all – there are even technology files available for it free of charge! It also supports parasitic extraction so you can cut your teeth at post-layout simulation.

Before you start a layout you might want to simulate your design to make sure it might work. Cadence has Spectre, Synopsys has HSPICE, so where does that leave us? Obviously SPICE (Simulation Program with Integrated Circuit Emphasis) is the way to go and there are several contenders. After some looking around I settled on LTspice. LTspice is free, but not open-source. It is however very powerful, easy to use and widely used. And according to its creator, Mike Engelhardt, LT’s engineers use it for IC design internally, so it should be good enough for hobbyists.

To sum it up, we now have a circuit simulator, an IC layout program and some resources on the topic. In the next installment of this small series I will built an opamp in LTspice and simulate it using MOSFET models for an existing technology.

Written by Ferdinand

August 24th, 2014 at 12:39

Reparatur MBO DIGIMED 2/30 Blutdruckmessgerät

without comments


Dieser Tage erreichte mich ein defektes Blutdruckmessgerät MBO DIGIMED 2/30. Das LC Display war gestört und zeigte nicht mehr alle Segmente an. Günstige Consumer Geräte setzen in der Regel maßgeschneiderte LCDs ein die dann von einem entsprechenden Treiberbaustein oder Mikrocontroller angesteuert werden. Ist der Kontakt zwischen dem Treiber und dem eigentlichen Display Glas gestört macht sich das durch fehlende Segmente bemerkbar.

Da das LCD in diesem Gerät nicht durch einen flexibel Kontaktstreifen (Zebrastrip) kontaktiert wird war es mit Kontakte reinigen und wieder zusammenbauen nicht getan. Trotzdem konnte ich die Funktion wieder herstellen.

Diese Anleitung dürfte sich auf ähnliche Geräte ohne Probleme übertragen lassen.

Benötigtes Werkzeug:

  • Schraubenzieher Philips Größe 0 (PH 0)
  • Pinzette
  • Bügeleisen

Schritt 1

Zunächst muss das Gerät geöffnet werden. Dazu zuerst die Batterien entnehmen und die Armmanschette entfernen. Die Manschette wird durch zwei Schrauben im Batteriefach gehalten.

mbo_digimed_schrauben_manschette-1 mbo_digimed_schrauben_manschette-2

Anschließend müssen die zwei Schrauben auf der Rückseite entfernt werden um diese abnehmen zu können. Die Rückseite wird zusätzlich durch mehrere Rastnasen gehalten, diese lösen sich durch leichten Druck.

mbo_digimed_schrauben_rueckseite mbo_digimed_rastnasen_rueckseite

Schritt 2

Nun muss die Elektronik aus dem Gehäuse entfernt werden. Diese besteht aus zwei gestapelten Platinen die durch einen Pfostenstecker verbunden werden. Zunächst sollte das weiße Luftauslassventil und die Batteriekontakte gelöst werden. Das Ventil wird durch zwei Haken gehalten. Die Batteriekontakte können mit der Pinzette vorsichtig aus der Halterung gezogen werden.


Anschließend die Platine gerade nach oben abziehen. Die untere Platine ist nun sichtbar. Sie wird durch 4 Schrauben gehalten. Diese lösen und die Platine vorsichtig entnehmen.

mbo_digimed_elektronik-2 mbo_digimed_elektronik-3

Schritt 3

Auf der Hauptplatine befindet sich eine Art Flachbandkabel. Dieses schwarz-weiß gestreifte Kabel verbindet das LCD Glas mit dem Mikrocontroller. Der Fehler bei meinem Gerät lag in den Kontakten vom Kabel zur Platine. Das Kabel scheint dem Aussehen nach eine kohlebasierte Leitschicht zu enthalten. Deren Kontakt zur Platine ist im Laufe der Zeit (durch Luftfeuchtigkeit?) immer schlechter geworden bis das Display dann ausfiel. Um den Kontakt wieder herzustellen kommt jetzt das Bügeleisen zum Einsatz. Ich habe das Bügeleisen dazu auf Stufe 1 gestellt und dann die Kontaktstelle auf der Platine mit leichtem Druck über die Kante der Bügelsohle gezogen. Anschließend das Gerät Testen (Platinen zusammenstecken, Batteriekontakte einsetzen und anschalten) und gegebenenfalls die Prozedur wiederholen.


Schritt 4

Nun muss das Gerät nur wieder zusammengebaut werden. Dazu die Schritte oben in umgekehrter Reihenfolge durchgehen. Mit etwas Glück und Geschick hat man danach wieder ein funktionierendes Blutdruckmessgerät.


Written by Ferdinand

August 22nd, 2014 at 18:37

What’s inside a cheap TOSLINK, S/PDIF to Cinch adapter

without comments


I wanted to connect my TV to my Hifi system but found it lacking an analog output. On Amazon.de I stumbled upon this cheap audio DAC, converting a TOSLINK input to line level stereo outputs. About 17 EUR shipped sounded reasonable to me, so I ordered it right away. However at that price (including a wall plug) I was curious what components are inside this thing. So you know how Dave Jones says, don’t turn it on, turn it apart!

20140308_222114-1600 20140308_222003-1600

The magic is obviously happening on the bottom side of the board. You can find a high resolution scan of it below. The main ICs are both Cirrus Logic parts: the CS8416 192 kHz digital audio receiver and the CS4344 24-bit, 192 kHz stereo DAC. As both parts support sample rates up to 192 kHz the device likely exceeds its spec of 96 kHz. The DAC features a dynamic range of 105 dB and -90 dB THD+N, which should be good enough for my purposes.
There also is an LDO and some passives. The soldering looks rather good, at least for the price. The board layout is also reasonable, analog and digital parts are somewhat separated, the digital lines going to the DAC have series resistors, the DAC’s outputs even got protection diodes.


I’ve used the device for more than a week now and I’m quite pleased with it’s performance. It’s compact size makes it easy to hide it behind the TV. In a next step I’ll build a USB-to-barrel-plug adapter to power it from one of the TV’s USB ports. That way it will be turned on and off together with the TV.

Written by Ferdinand

März 16th, 2014 at 14:56