What is your favourite microchip and why?

Off topic discussions that do not fit into any of the above can go here. Please keep it clean and respectful.
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

Love and Hate: The TI TMS320C31/C32/C33 single floatingpoint DSP

Back as a student, I was intrested to digitally manipulate Audio in real time with low latency. I had used the SoundBlaster 16, SB-AWE32 and AWE64 at home. The EMU chip on the card supported multi-channel, and it was possible to get 2 S/PDIF outputs on the card together with a modified driver for windows.
In the university they used C31 and C32 DSP cards that you placed in the ISA bus. Depending on your application you could fit different ADC/DAC modules on your card.
They used an graphical environment in Windows to program the DSPs, like a microsized Labview. One nice thing was that when you pressed the build&run button the program started running almost directly - so you could rewire the blocks in the program and test the result in just some seconds - without waiting a long time on the compiler.

I later bought a card with the C33 and a FPGA that could be programmed in LabView.

The solutions was great for "research" but expensive ones. And the next question came - what if I wanted to embedd a technical solution in a product? Then things became more tricky - at least if you needed a low development cost and a low production cost.


Probably not the most confused programmer anymore on the XCORE forum.
Heater
Respected Member
Posts: 296
Joined: Thu Dec 10, 2009 10:33 pm

Post by Heater »

Historically:
The Motorola 6809. An 8 bitter from the late 70's early 80s. When I started out we had no high level language compilers and often no assemblers and often no development system on which to run such things. So when you had to program up your latest widget creation in HEX the 6809 instruction set was a joy to use compared to the earlier 6800 or Intels 8085 or Zilogs Z80.

So first you create some I/O routines and blow them to EPROM using an EPROM programmer fed from paper tape. The you grow that into a simple debug monitor that can save entered programs to cassette tape. Then you get on with the your application. After three months of that your boss comes in, all smiles, waving an 8 inch floppy disk containing an assembler!

Currently:
The Propeller micro controller from Parallax Inc. This amazing little device has eight 32 bit processors 32K RAM on board, 32 bits of general purpose I/O. It follows the XMOS "Software Defined Silicon" approach by not having any hardware dedicated to special functions like SPI, I2C, USB etc etc. It can generate NTSC/PAL video or VGA with the help of a few resistors though. The processors are used to create those peripherals. All I/O pins are the same so no worries about which ones are what port or what functions they can be used for.

The Propeller has about the simplest instruction set I've ever seen. All instructions have the same 32 bit format and execute in the same number of clocks (almost all anyway). No stack. No special registers. No interrupts to worry about.

The catch is that each one of those 8 processors can only execute it's native assembler code from its own local memory which is limited to 496 instructions! For larger programs it is necessary to use some means of interpreting byte codes or such from the main memory. The chip comes with a built in interpreter for the "Spin" high level language which makes most non-realtime tasks a synch. Alternatively people have come up with C compilers that target a virtual machine running in a processor. I am currently working on one such virtual machine that will enable programming of the Propeller with GCC.

But actually that limitation makes for some fascinating programming as one tries to squeeze the most out of the the 496 instructions.

Also Currently:
XMOS. Well, I don't even have one of these devices in my hands yet. But I can see there is a whole world of possibilities in them. The tool chain has been simple to get going and XC with it's support for parallelism and channels etc fits the way I've been looking at designing embedded systems for a long time. Somewhat like a Propeller on steroids. I just wish I could get an XMOS chip in a 40 pin DIP package that I could be up and running on a bread board with nothing but a 3v supply, decoupling caps and a 10 dollar programming cable.
User avatar
BrianMiller
Active Member
Posts: 33
Joined: Wed Jan 13, 2010 7:50 am
Location: USA, NC, Raleigh
Contact:

Post by BrianMiller »

I have many favorites, to put one on a pedestal makes no sense to me but some stand out in my personal experience.

555 timer: first IC I ever laid my hands on and stuffed on a breadboard.

6502: First processor I ever wrote a single line of code on. The Vic-20.

68000: Still plodding around in basic at the time, the Amiga 1000 was the reason I decided I wanted to write software for a living. That machine was damn fun.

80386: The machine that introduced me to assembly language.

8051: My first foray into the world of micro controllers. Lots of projects.

pic micro controllers: 8051 most of the time is a pain in the ass and nothing beats a pic for simple things and it's hard to beat the convenience of a pic. I don't really like the pic, but dang, it's so convenient.

XMOS processor: It's becoming a favorite. Interrupt handling has always been problematic and a great source of software defects. This architecture facilitates simpler designs that are easier to test and validate.
User avatar
johanar
Active Member
Posts: 60
Joined: Tue Feb 16, 2010 8:21 am
Location: Sweden
Contact:

Post by johanar »

Definitely MOS Technology 6581 Sound Interface Device (SID). Hearing those sounds brings back so many old memories..
User avatar
shawn
XCore Addict
Posts: 238
Joined: Thu Dec 17, 2009 5:15 am

Post by shawn »

INMOS T414, it left a marker in history as well as completely influence the silicon industry.
A lot of ideas have been borrowed or stolen from that platform, truly truly it a major watermark.
England should have and should capitalize massive, into historical and current IP. After all She
bilt COLOSSUS, only to be complemented by ENIAC. When Watson of IBM found out he staked
the company in it at $5,000,000,000 then landed a contract for another $20,000,000,000 from USG.
So if any one in parlance can hear, thats the scale of investment at the ebb of WWII. I have know
idea what that equates to in today dollars, pounds. England, deserves to reward her posterity.
Post Reply