Computer Technology & Electronics

Prototype 3-d CPU Matrix (5x3x2=30 CPUs) designed by Myles Dyson for Syknet (from sci-fi movie Terminator 2)  Thinking Machines CM-2 (this is real)

This entire sub-domain is a private effort of free information.
There are no cookies, no advertisements, and nothing is for sale.

Moved stuff

Current Items of Interest (most recent first; occasionally pruned)

  1. New Dark Age: Is Technology Making the World Harder to Understand?
    https://www.youtube.com/watch?v=tNMvYxJZgsU 28-minute video
  2. My Vector Processing info (which includes GPU, OpenCL, CUDA, etc.) was moved here
  3. The Memristor (fourth fundamental electrical device after the resistor, capacitor, and inductor) is discovered 37 years after it was first proposed in 1971
    • How We (HP Labs) Found the Missing Memristor
      http://spectrum.ieee.org/dec08/7024
      IEEE claims "this is the greatest electronics invention of the last 25 years"
    • Logic circuits that program themselves: memristors in action
      http://arstechnica.com/hardware/news/2009/01/logic-circuits-that-program-themselves-memristors-in-action.ars
    • University of Michigan electrical engineer builds chip composed of 1 kilobit nanoscale memristors
      http://www.physorg.com/news156526733.html
    • Computers speak a simple language known as binary. The lexicon is built from digital 0s and 1s, so the “C” letter at the start of this box would be represented as an elaborate code: “01000011”. The dominance of binary is partly due to computers being built from transistors, electrical switches that either allow current to flow or not, and nothing in between. These two well-defined states stand in neatly for 0 and 1. But there’s a newer electrical component on the scene called a memristor (see main story). These devices are becoming more and more useful in computers built to mimic the brain, and they are plenty more versatile than the transistor. Rather than being simply on or off, they can adopt several different states of resistance. Last year, researchers led by Vikas Rana at the Peter Grünberg Institute in Jülich, Germany, got a set of memristors successfully preforming calculations in a ternary language, which uses the digital equivalent of 0s, 1s and 2s. This means memristors could allow computers to compute much more efficiently. And it doesn’t have to stop at base 3; memristors can reliably adopt at least seven, and possibly more, resistive states. Continued here: New Scientist (2 August 2017)
    • Memristors act like neurons
      https://www.sciencetimes.com/articles/27550/20201002/scientific-breakthrough-memristors-act-neurons.htm
  4. Excerpt from NPR's "Science Friday" program 2007-11-16: I hate my cell phone. I have to admit it's not easy to use. I hate my cell phone carrier because it locks me into a system: It doesn't let me choose the cell phone I would like to use. It doesn't physically play nicely with my computer's calendar or its address book or my other tools that, ideally, would make my life easier. And if I want to change my situation, you know what that's like, if I want to move to another carrier I have to buy a new phone because that phone doesn't fit the next carrier. I have to get a new service with the limitations that are all there. It’s basically like having to start all over again in many cases. And it makes you wonder why can't they make a cell phone that lets me do what I want to do? Let me choose a provider I want to pick. The cell phone I want to pick. Wouldn't you like that too? Well we may be getting closer to that day because first Apple introduced the iPhone that basically puts a small computer in your pocket and that gives you a lot more flexibility. You're still locked into that one carrier so that's not so great. And you're still locked into the goodies that Apple wants to give you and lets you have on their [your] iPhone but last week Google, the search engine king, brought us a step closer dipping its toe into the cell phone world. And not with a full fledged gPhone as they've been calling it, but by helping to develop a set of software tools call Android that can run on many different hand sets with interchangeable parts. And that could allow more flexibility for consumers. Coles Notes Version: Back in 2005, Google wanted to put their Google Talk app on Apple's iPhone (via the iTunes store) but Steve Jobs refused because the app would allow people to make free long distance calls via the internet (Jobs was certain this app would cause problems with one of the iPhone's main financial backers, "Cingular Wireless", which was a division of AT&T.) In 2006, Google made an ultimatum to Apple: either allow Google Talk to be placed on the iPhone or we (Google) will produce a competing product called the gPhone. Apple refused which caused Google to purchase California Linux vendor Android Inc. Google then created the Open Handset Alliance where member companies would be given the Android OS Software for free provided the manufacturer preset customer modifiable preferences to do searching at Google (where Google makes most of their money).
  5. The Software Developer's Rule:

    Faster, Better, Cheaper. Pick any two but you can never have all three.

  6. Seven Mistakes Made All the Time by Most Software Development Organizations :: references Bell Sygma (official IS/IT provider for many large Canadian corporations in the 1990s which was acquired by CGI in 1998)
  7. HyperTransport is the biggest thing in computer technology since the invention of the FSB (Front Side Bus). Intel went their own way with Quick Path Interconnect (QPI). Both these technologies were derived from a technology named Common System Interface (CSI) which was developed by DEC engineers for the never-released Alpha 21464 (EV8).

Don Lancaster

David L Jones (EE Video Blog)

Chip Info & Embedded Development Tools

My Commercial Embedded Work:

Visit my (Neil Rieck) Computing Bio 
Visit my (Neil Rieck) Regular Bio 
Soup-to-nuts. I designed the electronics and wrote the firmware for three different "ground-source heat-pump applications" for two Canadian companies no longer in business (fortunately for my ego, the demise of these companies had nothing to do with me or my work). I selected almost of the components except the CPU chip (which was selected by committee) 

Computer Programmer vs. Computer Engineer (advice for nerds)

Since the introduction of minicomputers in the 1970s, we meet a new batch of freshly minted computer programmers every year. But every day now, I work with professional computer programmers who power-up their personal computers (micros), or boot up a Linux server (super micros), but have no detailed understanding about what just happened (some do their work in the cloud which is a further abstraction).

Working with micro-controllers will promote every computer programmer into a computer engineer because you need to learn the dirty details. For example: when a chips performs a hard reset after a power up, they usually load the address of your cold-start procedure from the vector location (usually memory address FE and FF). Next it is wise to perform a rudimentary memory test then initialize the Stack Pointer so that you can support device interrupts (once you enable them) and subroutines because the Program Counter needs to first save its return address on the stack. Speaking about interrupts, you will need to write your own device driver for any device you enable. You will be like a god in this little rinky-dink world but if anything goes wrong it will be your fault. If everything works as expected then you can stand back like a proud parent while your design acts-then-reacts with the real world.

(mostly) Software Links

(mostly) Hardware Links

Unix + C on 16-bit PDP and 32-bit VAX helped create the Internet

Internet Traffic Map for 1995
Internet Traffic - 1995
The Name Game

Technologies that helped promote 'Unix on PDP' (which led to the Internet)

 

Internet Diagrams

comment: take note of the dominance of DEC hardware; a company that hated UNIX, C, and TCP/IP
I often wonder if DEC would still be in business had they embraced these 3 technologies

Internet Block Diagram Notes
ARPANET Logical Map,
April 1971
  • ~ 50% PDP platforms
  • only PDP platforms at BBN
  • notice the TX-2 (predecessor of PDP) at Lincoln Labs (MIT)
  • only IBM at RAND (D.O.D.)
ARPANET Logical Map,
September 1973
  • ~ 50% PDP platforms
  • notice the TX-2 (predecessor of PDP) at Lincoln Labs (MIT)
  • only PDP platforms at ARPA
ARPANET Logical Map,
January 1975
  • ~ 50% PDP platforms
  • notice the TX-2 (predecessor of PDP) at Lincoln Labs (MIT)
  • many more universities and defense contractors
ARPANET Logical Map,
March 1977
  • PDP, DEC System 20
  • only PDP at the Pentagon
ARPANET Logical Map,
March 1979
  • PDP, DEC System 10, DEC System 20
rfc801 from 1981
  • mentions VAX
  • mentions LSI-11 (PDP-11 on a chip)
diagram from 1986
  • notice the solid blocks labeled LSI-11 (PDP-11 on a chip)

Other Links

How "UNIX on VAX" helped promote TCP/IP

Internet Stuff

RFCs + Ports

DNS registration

DNS Other

Museums + Emulators

Download a free Apollo Lunar Landing simulation
 

Windows Miscellaneous

BASIC Compilers and Interpreters (the language that never dies)

Mostly free, BASIC tools:

Other BASIC Links:

DLL Examples for novice Windows programmers

What is a DLL? Many Windows applications, and Windows itself, are built built as a collection of callable DLLs (Dynamically Linked Libraries) rather than static executable binaries. For examples of this, check out the size of MS-Internet Explorer (IEXPLORE.EXE) which is only 89K, or the size of MS-Outlook Express (MSIMN.EXE) which is only 56K, yet both programs call the same "HTML rendering engine" which is implemented in the system DLLs. When you've got Outlook Express running at the same time as three instances of IE, there is only one set of DLLs loaded which definitely saves memory.

DLL Examples Description Development Platform
dll demo 1: empty project two small C++ functions without DllMain() Visual C++ version 6.0
Visual C++ version 7.1 (a.k.a. ".NET 2003")
dll demo 2: simple project two small C++ functions with DllMain() Visual C++ version 6.0
dll demo 3: example application DiskFree.cpp Visual C++ version 6.0

Note: As most C++ programmers already know, C++ parameters are type-enforced by name mangling. While this causes no problems if C++ applications are calling C++ DLL routines, applications written in other languages will not be able to call a DLL written in C++. In order to get around this obstacle you must disable name mangling of exported names by surrounding the whole C++ source in a "C" wrapper like so:

extern "C" {
    [ ... whole c++ DLL source goes here ... ]
}
Alternatively, you could write your DLLs in "C" but this may not always be possible.

Apple-2 Forever

Apple-2 Links 

Miscellaneous Links

FFT, MPEG

Electricity and Electronics (back to basics)

Introduction

I first learned the principles of electricity-electronics in the 1960's but ever since y2k I have come to the conclusion that was only a working-knowledge, not anything grounded in physics. In fact, many of the electrical principles described by physicists seem (to me) to be lacking. So I have been looking for better explanations.

Odds 'n Ends

A few noteworthy articles for budding STEM students

A Few Thoughts

Light

Physicists were divided for more than a century as to whether light was a particle or a wave. Then Einstein said it was a particle (photon) and used it in his explanation for the photoelectric effect. Scientists and engineers say that all radio waves are are a form of EM (Electro-Magnetic) radiation, and this includes visible light. So my question was: at what point does an oscillating electrical signal in a transmitting antenna emit photons?

Provisional  Answer: Photons per se are not real. We use the label "photon" to describe EM waves where the wave-length is less-than the size of an atom.

Electricity

When I first learned about electricity, it was described like billiard balls moving from atom to atom. This must be true on some level because in nerves, an electro-chemical wave moves from one end to the other. Something similar happens in copper wires connected to a chemical battery (no chemical energy, no current). But something different must be happening with a DC-generator (magneto) or an AC-generator (alternator).

{ or perhaps we need a better general explanation }

Provisional  Answer: Each electron is surrounded by an electric field. Valence electrons are affected by the EM wave caused by moving electrical energy. In this case, the wire behaves like a wave-guide where all the individual electric fields move simultaneously together. This wave moves close to one-tenth the speed of light which drag the electrons behind it. These electrons will resist movement which generates heat.


Click Dilbert Zone for the latest "reality check" from our hero

Back to Home
Neil Rieck
Waterloo, Ontario, Canada.