Mar 10

Digital electronics might be the engine behind today’s computers, but it hasn’t always been that way. As recently as the ’70s, analogue electronic circuitry also played an important role in some types of computation, in particular simulation. This might sound like a rather specialised application, but many of the world’s fastest computers are used for simulation exercises in areas as diverse as engineering, climate study and nuclear weapons research. Back in the heyday of analogue computing, this technology could provide a solution in minutes where digital techniques might have taken hours or days.

Analogue computers were programmed using patch leads, connecting different sockets and logic circuits together. (Picture credit: DVQ)

Simulation basics

Most real-world systems can be defined as a set of simultaneous differential equations. These equations define the rate of change of a so-called dependent variable with respect to an independent variable, which is commonly time. To the uninitiated this might sound like Gobbledygook, but the following example should clarify things. It relates to the fictional radioactive element Aberdeenium (A), which decays at the rate ka to produce Bristolium (B). This is also radioactive and decays at the rate kb to produce Cardiffium (C), which is stable. The following equations define this behaviour:

dA
dt = -kaA

dB
dt = kaA - kaB

dC
dt = kbB

The first equation says that the rate of change of the mass of Aberdeenium is equal to its mass multiplied by a constant that is related to its half-life. Note the minus sign: this indicates that the change will be negative and hence the substance is decaying. The second equation defines the rate of change of the mass of Bristolium. There are two terms – one represents the amount created by the decay of Aberdeenium, while the other shows the amount being lost by its own radioactive decay. The third equation defines the rate of change of Cardiffium. There is only a positive term since it is stable, and that term is the same as the one we’ve already seen for the decay of Bristolium. Solving differential equations like these involves the mathematical process of integration (so, for example, if you integrate dA/dt you get A), and this is the main strength of the analogue computer.

Building blocks

An analogue computer is programmed by connecting together electronic circuits that perform the various operations needed to solve differential equations. The most common functions are integration, addition, negation and multiplication. To start, we’ll look at how analogue electronics are able to perform some of these functions. We assume that you’d prefer not to burn your fingers with a soldering iron, though, so we’ll use a circuit simulation package called LTspice. Download it from http://linear.com/designtools/software/ltspice.jsp.

This circuit, simulated using LTSpice, integrates an analogue signal.

Start up LTspice and open the circuit called Integrator that we’ve included here. It is remarkably similar to the Integrator circuit. In fact, if you are creating these circuits yourself, the easiest way to create Summer is by modifying Integrator. To do that, change the capacitor C1 to a 100k resistor, add a second 100k resistor to the inverting input (the minus sign) of U1 and connect the other end of that resistor to the plus sign of a 4V voltage source. Finally, connect the minus sign of that new voltage source to the ground. When you’ve opened Summer or created your own circuit, simulate it as you did for Integrator. Unlike Integrator, the output of this circuit remains constant for a constant input (or more accurately, inputs plural). If you try changing the two voltage inputs you’ll find that this circuit does as its name suggests – its output is the sum of its two inputs, subject again to a negating and a limit of approximately plus or minus 11V. In fact, real-world summers often have more than two inputs, as do real-world integrators. This allows them to integrate the sum of their inputs.

The only other component we need in order to solve our radioactive decay problem is the potentiometer.. A potentiometer is like the volume control on an old-fashioned radio – it’s a component that multiplies the input voltage by a fixed value between 0 and 1 depending on its setting. Analogue computers also had multiplication circuits that permitted two variables to be multiplied but, for now, let’s stick with these basic building blocks.

Patching things up

Analogue computers are programmed by connecting together the various building blocks we’ve explored over the last few pages in such a way as to solve a set of simultaneous differential occasions. Since analogue computers are now few and far between, we’re going to do this using VisSim. This application is programmed in a similar way to an analogue computer, but with mouse clicks rather than patch leads. It’s a lot simpler because it has theoretically perfect summers and integrators. This means that we don’t have to take account of the fact that analogue summers and integrators work within a limited voltage range and negate the output. A real analogue computer requires careful scaling using potentiometers to ensure that each opamp remains within its voltage range, while the problem with negation is solved (if you genuinely need a non-negated result) by using an extra inverter, which is just a summer with only one input used. Using VisSim (grab it from http://bit.ly/65wXZ) bypasses these issues.

This beautiful transistor-based differential equation analyser emerged from Poland in 1959. (Picture credit: Warsaw Museum for Technology)

First, start VisSim and create the arrangement of building blocks shown in this screenshot. ‘1/S’ is an integration block, the circle with the sigma inside is a summer (use the ‘+’ button to add it), the pointed box with the number inside is a gain block that we’re using as a potentiometer, and the window labelled Plot is where the results are displayed. You should be able to recognise that this arrangement is what’s needed to solve our radioactive decay simulation. Buttons for all the building blocks you’ll need can be found at the top of the screen.

To put a block on-screen, click on its icon and then click anywhere on the main part of the screen. Blocks can subsequently be moved simply by clicking and dragging. To make a connection between a pair of blocks, move the cursor to the output of one block and, when it changes to an up arrow, click and drag from it to the input of the second block. When you release the mouse button, a line will have been drawn between the two blocks. To disconnect two blocks, move the cursor to the input end of the line and, when it changes to an up arrow, click, drag away from it and release. To flip a block so that its input is on the right, select it by dragging a box around it and then choose ‘Flip Horizontal’ from the Edit menu. And finally, to change the gain of a gain block, right-click on it and enter a new value for ‘Gain’ in the Gain Properties window that will be displayed. It’s much the same process to change the initial value of an integrator from 0. You’ll also need to ensure that the left-most integrator – the one that evaluates the mass of Aberdeenium – starts off with a positive value, say 10.

Now all you have to do to make VisSim solve the problem and display the graphs in the Plot window is choose ‘Go’ from the Simulate menu. In this case we’ve chosen values of the gain blocks such that most of the action takes place within 10 seconds, which is the default amount of time in which VisSim will simulate a system. If you find that you need a shorter or longer time period then you can change it in the Simulation Properties window, which is accessible from the Simulate window.

Hybrid computing

In their heyday, analogue computers were good at solving differential equations while digital computers were good at solving problems that involved logic and decision making. Hybrid machines combined elements of analogue and digital computers in order to gain the strengths of each. Typically the digital computer could read the outputs of the analogue building blocks such as summers and integrators, and it could also do things like adjust the settings of the potentiometers, set the initial condition of the integrators and start and stop the analogue computation.

This GPS Analog Computer is so complex that it resembles an early telephone exchange. (Picture credit: Dmitry Sumin)

A classic example is using a simulation of the trajectory of a projectile to determine the angle at which it should be fired to hit a target at a particular distance. The problem would be created on the analogue portion, and the digital program would then take over running the analogue simulation. Depending on the range achieved it would adjust the conditions by changing the settings of the potentiometers and then rerun. This would continue until the required range was achieved.

Solve second order equations

Our radioactive decay simulation involved first-order differential equations. Some simulations involve solving second-order differential equations, which include second-order differentials. An everyday example will clarify this. The first-order differential of distance with time, dx/dt – the rate at which distance varies with time – is velocity (speed). The second-order differential of distance with time, d2x/dt2, is the rate at which the first-order differential (speed) varies with time (in other words, acceleration). To solve a second-order differential equation you’ll need to use two integrators, one after the other. The first generates the first-order differential equation and the second generates the dependent variable.

d2Y    dY
___ +D ___ + Y = 0
dt2 .. dt

If you’d like to have a go, the example shown above defines the movement of a weight on a spring. D is the damping coefficient; it can take values from 0 (no damping) to 1. First, rewrite as a pair of first-order differential equations with a new variable (V, say) that is equal to dY/dt. Next, rewrite so that one equation has only dV/dt to the left of the equals sign and the other has only dY/dt. Finally, define a positive initial condition for the second integrator to represent the initial displacement of the spring.

The patch panel

The diagram on the right shows part of the patch panel of a typical analogue computer. Each block represents one amplifier which, in this case, could be configured as either a summer or an integrator. The top left socket provided a constant positive voltage, while alternate blocks had a +1 and a -1 socket. Using this in conjunction with a potentiometer allowed any constant to be generated. The six unmarked sockets on the left are connected internally but are not connected to anything else, so they can be used as a handy interconnecting strip. The blocks labelled P and Q provide connections to potentiometers – the actual potentiometer knobs would be elsewhere. The sockets labelled 1 and 10 are inputs to the amplifier. Those labelled 10 have a gain of 10 (through the use of smaller input resistors) and the ones labelled 1 have a gain of one. The four sockets labelled OP are all connected to the output of the amplifier, while the green block at the bottom defines the operation of the amplifier. If you wanted it to become a summer you would connect M to sigma, while if you wanted it to be an integrator you would connecting it to either of the other two sockets so that it had a gain of one or 10. We can ignore the other sockets.

Oct 12

Once you’re reading these words, Windows 7 should just about be a retail reality. Leaving aside the unspeakable awfulness of the operating system it replaces, I’m guessing that you’ve probably had your fill of Windows 7 proselytisations. It’s time to take it for a spin for yourself.

However, there is one Win7 feature that’s particularly close to my heart. I reckon I can get away with bringing it up because it’s not actually exclusive to Windows 7. I speak, of course, of DirectX 11. On the face of it, DX11 is just the latest in a long line of multimedia APIs. Great if you have a fetish for fragment shaders, moderately interesting if you’re a keen PC gamer, but otherwise a bit of a niche subject.

DirectX 11, however, is a bit different. There are several reasons to think it will not only be the biggest ever step forward in entertainment tech on the PC, but also properly shake up the way desktop computers process data.

Undoubtedly the biggest change is the introduction of Direct Compute, also known as the compute shader. The idea is to broaden the scope of DirectX – or perhaps more accurately the Direct3D pipeline subset – to general computing rather than just graphics rendering. The only caveat is that a given task must lend itself to parallel processing. In hardware terms, the target component here is the GPU. Despite the recent rise of multicore CPUs, it’s by far the most parallelised PC-compatible computer chip.

It’s also theoretically the most powerful – if only its resources were harnessed for general computing. If that sounds like a familiar refrain it’s because I’ve preached the virtues of using graphics for general processing, otherwise known as GPGPU, on several occasions. It’s a well established concept, complete with several ongoing initiatives, most obviously Nvidia’s CUDA platform.

So far, GPGPU has failed to live up to the hype. I’m convinced DX11 will finally change that. Crucially, it sets out common standards for both hardware and application developers. Unlike with CUDA, you won’t to need to worry about the make and model of your graphics card beyond ensuring it’s the real DX11 deal. Just as importantly, software developers can begin to get their teeth into the challenges posed by coding for GPGPU, safe in the knowledge that there will be a healthy installed base of fully compatible PCs a year or two from now.

Of course, Direct Compute isn’t just about guaranteeing cross-vendor compatibility. It’s also about laying out the minimum hardware requirements to ensure compliant graphics chips actually have the computational chops to handle general-purpose tasks. While previous graphics cards have packed immense theoretical processing power, they’ve also been hobbled by architectures optimised for graphics rendering. Up until the introduction of DX11, for instance, GPUs have only been required to make 256 bytes of internal memory available to each software thread. With Direct Compute in DirectX 11, that balloons to 32kB.

The net result of the combined efforts of Microsoft, Nvidia and AMD should see a huge increase in parallelised application performance. Graphics chips could turn out to be 30 times faster for highly parallised software such as media encoding.

For the record, the first fully DX11-compliant GPU is already on sale. It’s AMD’s new Radeon HD 5870 and it really is a piece of work. Thanks to no less than 2.15 billion transistors, it packs a ludicrous 1,600 stream processors and is claimed to be capable of nearly three teraflops of raw computational heft. To put the latter figure into context, that makes it faster than the world’s fastest supercomputer circa 1999. That was a machine that filled a 230m2 room. Not bad for a single chip.

Direct Compute aside, there are one or two further features that mark DX11 out from its predecessors. For starters, support for multicore PC processors has been much improved. The introduction of hardware geometry tessellation should also make a huge difference to the quality of PC graphics. The sheer number of triangles the new Radeon HD 5870 is capable of processing simply beggars belief. But most significantly, Microsoft has done a much better job with backward compatibility than it did with DX10. You can already upgrade Windows Vista to full DirectX 11 support with a couple of mouse clicks.

Naturally, I would recommend that everyone takes the opportunity presented by the arrival of Windows 7 to go all the way and dump Vista altogether. But I also realise the reality for many is that there are some rather off-putting cost and technical barriers to doing so. It’s nice to know that existing Vista licensees can get all the benefits of DX11 without upgrading to 7. Truly, it’s not often you get something for nothing from Microsoft.

 

Dec 01

Writen by Jestine Yong

If, for some reason, you can’t get an exact replacement for the transistor that you want to replace, you can refer to one of the transistor substitution guides or book, and try to identify a “near replacement”. Beware, however. A substitution guide will sometimes list a replacement for your part, even though the two parts are not very similar. The most commonly used transistor substitution guides is the Philips ECG semiconductors Master Replacement Guide. Selecting the right transistor parameters or specifications for the equipment you repair will avoid callbacks from customers. Callbacks or repeated repairs due to wrong transistor substitution will cost you extra money and a waste of time.

Some important transistor parameters are:

Maximum collector-to-base voltage (VCBO) – The replacement part should have a VCBO rating equal to or higher than the original.

Maximum collector-to-emitter voltage (VCEO) – The replacement part should have a VCEO rating equal to or higher than the original.

Maximum emitter-to-base voltage (VEBO) – The replacement part should have a VEBO rating equal to or greater than the original.

Maximum collector current (IC) – The replacement part should be able to handle as much (or more) collector current as the original.

Power dissipation (PD Watts) – The replacement part should be able to dissipate as much (or more) power as the original part.

Gain (hFE) – The replacement should have a gain equal to or better than the original and it should be as close to the original specification as possible.

Gain-bandwidth (fT) – the replacement should have a transition frequency equal to or faster than the original and it should be as close to the original specification as possible.

Below is a table of application requirement and important specification that you can use for guidelines when comes to transistor substitution.

Application Requirement and Important Specifications

1. General purpose low level amplifier and switching transistors. Spec- hFE, IC (max), fT, VCEO

2. Power switching applications. Spec- VCEO, VCBO, hFE, IC (max), PD (max)

3. Low level IF/RF amplification. Spec- IC (max), fT, VCEO

4. Audio amplification. Spec- IC (max), PD (max), hFE, VCEO

5. High voltage transistors. Spec- VCEO, VCBO, IC (max), fT

Remember, the replacement transistor should not run hot and if problem still persist, try another replacement number or get the original number if possible. Do not overlook that the surrounding components also may caused the transistor to run hot even if original number is used.

Jestine Yong is a electronic repairer and writer. For more information about electronic repair please visit his website at http://www.noahtec.com