Author Topic: Good project for a newbie?  (Read 4543 times)

0 Members and 1 Guest are viewing this topic.

Offline PotatoBoxTopic starter

  • Regular Contributor
  • *
  • Posts: 129
  • Country: ca
Good project for a newbie?
« on: November 15, 2016, 03:50:26 am »
I found this instructable on how to build a computer with TTL logic. It seems to be very well documented and covers very basic stuff (like what a resistor and capacitor are) to actually programming the computer. Would seem to be a cool project and I would learn a lot out of trying to build it.

Should I try it out or set it off to the side for later?

http://www.instructables.com/id/How-to-Build-an-8-Bit-Computer/?ALLSTEPS
 

Offline danadak

  • Super Contributor
  • ***
  • Posts: 1875
  • Country: us
  • Reactor Operator SSN-583, Retired EE
Re: Good project for a newbie?
« Reply #1 on: November 15, 2016, 12:28:57 pm »
Trying to build a gate level breadboard out of todays logic very challenging.
As you can see a rats nest of wiring. The noise and false triggering of logic
in that environment plain awful.

There are many ways you can tackle learning, and they vary from one year
to another, eg. no one would recommend you spend time building a filament
light bulb in this day and age.

The industry is robust with the confluence of software tools, programming,
and micros/FPGA. So by learning a gui tool combined with programmability
of todays micros/FPGA I think you can achieve a lot in your education.

Have you ever programmed ?

Recommendations, if only goal is to build a gate level micro then a low gate count
FPGA with debug capability would make sense.

If you wanted to explore both basic logic and analog then Cypress has PSOC,
a mixed signal part. It is routable like FPGA, logic can be done at schematic level
or even better Verilog (another simple language for asic/fpga design). They have
a ton on videos, a very good forum for help. In either case tools very low cost.

As an aside, it seems daunting when you first start a learning design. Try making
a post at one of the forums where you recommend doing a Teamviewer session with a
contributor, they can talk to you, manipulate your desktop and the tool of choice, and
walk you thru a start.

I highly recommend this for a person starting. But in preparation download a tool, like
PSOC creator, and go thru some of the videos on their site in preparation.

There are also on the web editors/runtime debuggers where you can write basic C
and check your programming. Or classes, KHAN, many free assets.


Regards, Dana.

« Last Edit: November 15, 2016, 12:51:52 pm by danadak »
Love Cypress PSOC, ATTiny, Bit Slice, OpAmps, Oscilloscopes, and Analog Gurus like Pease, Miller, Widlar, Dobkin, obsessed with being an engineer
 

Online tggzzz

  • Super Contributor
  • ***
  • Posts: 20413
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Good project for a newbie?
« Reply #2 on: November 15, 2016, 01:35:10 pm »
You need to work out what you want to learn.

If you use solderless breadboards, you will learn just as much about debugging solderless breadboards as you will about your circuit! Yes, I am prejudiced against them, particularly where modern logic is used (modern is anything after 1975).

For prototyping, consider dead bug and manhatten techniques; they work surprisingly well.

I basically agree with danadak, but I'll note that there is a steep learning curve associated with FPGAs: the tools are very complex.

If you want to learn about discrete logic, make a traffic lights controller. First make a simple red/amber/green sequence, then modify it to have two directions at a crossroads, then add a switch to allow pedestrians to request a crossing.

If you want to learn about microcontrollers, then get an arduino and repeat that exercise.

If you want to learn analogue electronics, then make a simple function generator, or something that converts music to flashing LEDs.
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline danadak

  • Super Contributor
  • ***
  • Posts: 1875
  • Country: us
  • Reactor Operator SSN-583, Retired EE
Re: Good project for a newbie?
« Reply #3 on: November 15, 2016, 05:38:52 pm »
tggzzz makes some good points. On the FPGA side design can now be done
with schematic capture of basic gates, F-F, etc.. But the tools are more involved,
although the FPGA vendors have simple design examples on video step by step
that "get by" the more complex parts of the tools to get a first run experience.

The Cypress PSOC, if you did it with a PSOC 4, has an arduino pinned out board,
that can use the advantages of various boards out in industry to add capability.
And their tool also uses schematic capture, basic gates and flipflops and counters,
to do a design. More specialized designs can use Verilog as in FPGA work.

The PSOC can do a simple function generator or music to flashing LEDs, it has
DACs, A/D, OpAmps.....It even has LUTs, allow you to use a boolean expression
and convert to a state machine. All in GUI.

One possibility - http://www.cypress.com/documentation/development-kitsboards/cy8ckit-044-psoc-4-m-series-pioneer-kit


Regards. Dana.
« Last Edit: November 15, 2016, 05:46:07 pm by danadak »
Love Cypress PSOC, ATTiny, Bit Slice, OpAmps, Oscilloscopes, and Analog Gurus like Pease, Miller, Widlar, Dobkin, obsessed with being an engineer
 

Offline PotatoBoxTopic starter

  • Regular Contributor
  • *
  • Posts: 129
  • Country: ca
Re: Good project for a newbie?
« Reply #4 on: November 15, 2016, 08:26:08 pm »
Honestly, I'm not that interested in learning about FPGA's and arduinos. I'm more of a hardware guy.
 

Offline imidis

  • Frequent Contributor
  • **
  • Posts: 426
  • Country: ca
Re: Good project for a newbie?
« Reply #5 on: November 15, 2016, 08:34:06 pm »
Hmm. What about building an arduino and then the circuitry around it. I mean yeah you will want to program it, but honestly I've found out interesting stuff. I got an ATMega 328p dip package, programmed the bootloader, stuck it on a breadboard, checked out the specs and also find the limitations, how to trigger a transistor with the arduino to turn on a circuit and finding out how a transistor works and the types. I've never been really partial to hardware or software with finding and fixing issues with both. But it's more component level than I'm used to in the field I work.  :)

Just to me that project looks a little overwhelming.
Gone for good
 

Online tggzzz

  • Super Contributor
  • ***
  • Posts: 20413
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Good project for a newbie?
« Reply #6 on: November 15, 2016, 09:19:22 pm »
Honestly, I'm not that interested in learning about FPGA's and arduinos. I'm more of a hardware guy.

I'm not sure why you think FPGAs aren't hardware!

Anyway, by "hardware" do you mean high current/voltage, RF, low-noise analogue, nanopower systens, digital signal processing, signal conditioning, .....
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline PotatoBoxTopic starter

  • Regular Contributor
  • *
  • Posts: 129
  • Country: ca
Re: Good project for a newbie?
« Reply #7 on: November 15, 2016, 09:45:01 pm »
Honestly, I'm not that interested in learning about FPGA's and arduinos. I'm more of a hardware guy.

I'm not sure why you think FPGAs aren't hardware!

Anyway, by "hardware" do you mean high current/voltage, RF, low-noise analogue, nanopower systens, digital signal processing, signal conditioning, .....

What I mean by hardware is that you wouldn't need software to tweak something that the device would do.
And yes, FPGA's are hardware, but they require you to use software to program them, which is not something I'm interested in all that much.

 

Online tggzzz

  • Super Contributor
  • ***
  • Posts: 20413
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Good project for a newbie?
« Reply #8 on: November 15, 2016, 11:10:36 pm »
And yes, FPGA's are hardware, but they require you to use software to program them,
Softies often think that, and usually come unstuck when they try to use FPGAs. Hardware description languages are closer to schematics than they are to procedural computer languages.
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline AndyC_772

  • Super Contributor
  • ***
  • Posts: 4277
  • Country: gb
  • Professional design engineer
    • Cawte Engineering | Reliable Electronics
Re: Good project for a newbie?
« Reply #9 on: November 15, 2016, 11:19:30 pm »
It sounds as though you prefer to design hardware that works the way hardware used to work many years ago.

These days we use programmable devices. The simplest, cheapest, quickest, smallest, most maintainable and most flexible way to solve many problems is with a microcontoller, CPLD or FPGA.

If you're building stuff for fun as a hobby, then go ahead and do what you like. For everything else, programmable logic is not optional.

You might be pleasantly surprised. Writing a description of how a device should work, using VHDL or Verilog, uses digital design skills and will confuse the heck out of a software engineer. It's quite amazing the extent to which writing code for an FPGA is not like programming a computer.

Offline PotatoBoxTopic starter

  • Regular Contributor
  • *
  • Posts: 129
  • Country: ca
Re: Good project for a newbie?
« Reply #10 on: November 16, 2016, 03:35:37 am »
Just wondering, but where in the industry are logic gates still being used? I mean, they're still producing many TTL IC's, so there must be demand somewhere.
 

Offline Rerouter

  • Super Contributor
  • ***
  • Posts: 4700
  • Country: au
  • Question Everything... Except This Statement
Re: Good project for a newbie?
« Reply #11 on: November 16, 2016, 09:25:01 am »
Bus drivers and I/O expansion are big uses i see in automotive,

Some of the cheap chinese buses use 1-2 TTL chips as stepper motor drivers for the odometer, 1 being the divider, the other being a weird little state machine that has been copied and pasted in so many flavours,

I even recall an and gate being used as a single quadrant gauge integrator, (It was a bodge in a sense), the gauge read backwards to the signal, so they had an and gate handling PWM based around it discharging its own input.

Most of this stuff is starting to disappear, but every now and then i see them pop up where i would not have expected it.
 

Online tggzzz

  • Super Contributor
  • ***
  • Posts: 20413
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Good project for a newbie?
« Reply #12 on: November 16, 2016, 09:34:56 am »
Bus drivers and I/O expansion are big uses i see in automotive,

Some of the cheap chinese buses use 1-2 TTL chips as stepper motor drivers for the odometer, 1 being the divider, the other being a weird little state machine that has been copied and pasted in so many flavours,

I even recall an and gate being used as a single quadrant gauge integrator, (It was a bodge in a sense), the gauge read backwards to the signal, so they had an and gate handling PWM based around it discharging its own input.

Most of this stuff is starting to disappear, but every now and then i see them pop up where i would not have expected it.

There's some new stuff arriving, often in 1-gate and 2-gate variants. I've used 74lvc1g* gates to make very nice 50ohm drivers :)
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline AndyC_772

  • Super Contributor
  • ***
  • Posts: 4277
  • Country: gb
  • Professional design engineer
    • Cawte Engineering | Reliable Electronics
Re: Good project for a newbie?
« Reply #13 on: November 16, 2016, 10:29:41 am »
I use small numbers of discrete logic gates if I need characteristics which are unusual at all. For example, perhaps a design requires an output with an unusually high drive current capability, in which case a 74xx1G125 might be a good solution. Logic level translation and analogue switching are other instances where I've recently used 74 series parts.

I don't think I've actually built a non-trivial device using discrete logic since my 'A' level Electronic Systems project, and that was getting on for 25 years ago. Even that used an off-the-shelf 6502 microprocessor.

Offline deephaven

  • Frequent Contributor
  • **
  • Posts: 796
  • Country: gb
  • Civilization is just one big bootstrap
    • Deephaven Ltd
Re: Good project for a newbie?
« Reply #14 on: November 16, 2016, 11:02:34 am »
I found this instructable on how to build a computer with TTL logic. It seems to be very well documented and covers very basic stuff (like what a resistor and capacitor are) to actually programming the computer. Would seem to be a cool project and I would learn a lot out of trying to build it.

Should I try it out or set it off to the side for later?

http://www.instructables.com/id/How-to-Build-an-8-Bit-Computer/?ALLSTEPS

That's quite a big project. How about making something a bit simpler such as a digital clock? You would get experience on how logic works and get a feel for what's involved in using discrete logic. After that, you would be in a good position to know where you want to go from there and possibly embark on more complex stuff.
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9930
  • Country: us
Re: Good project for a newbie?
« Reply #15 on: November 16, 2016, 04:51:56 pm »
Honestly, I'm not that interested in learning about FPGA's and arduinos. I'm more of a hardware guy.

FPGAs are hardware!  The difference is that instead of wire-wrap, you write lines of code that describe the hardware.  At every instance, you are thinking about how hardware works.  You will use gates and D-flops to build anything you want.

My personal view is that, with wire-wrap, I am limited to projects of 100 ICs or less.  No, that's not a hard number but at some point, wire-wrap becomes a PITA!

It's pretty easy, and fairly cheap, to get an FPGA board with a device of well over 1 MILLION gates.  And they run pretty fast depending on the circuit design.  50 MHz is easy, 100 MHz might take a little more thought (and pipelining).  Some devices are MUCH faster.

My own interests lie in analog computing and FPGAs.  I have designed and built a functional equivalent of a 1960s minicomputer that runs the factory software unchanged.  It took quite a while to learn how to write VHDL (and arguably I still don't know) but it was fun bringing the machine to life.  A computer that took up a large desk is now reduced to the size of a postage stamp.  With room left over...

Robotics is fun!  There's a lot going on with the added computing power of boards like the Raspberry PI.  We are finally getting to the point where we can do computer vision and WiFi allows the robot to offload some processing onto bigger, but stationary, computers.

CNC machines are still being built from parts and pieces.  It's pretty handy to have a CNC mill for making front panels and such.

Op amps are fun!  I tend to play with analog integrators since my interest is in analog computing but there are dozens of other applications.  In college, we waved our hands at the equations defining damped harmonic motion.  With an analog computer it is possible to visualize the interaction between mass, spring rate and damping coefficient.  I truly wish I had had an analog computer while I was in college.  This was pre-<just about everything> so, at best, we had HP-35 calculators and a slide rule.  Today, Matlab does a pretty slick job of emulating an analog control system.  I wasn't one of the students with the HP-35.  Bummer...

Audio is a large segment of the hobby community.  It isn't something I care about but I will toss it out as a possibility.

Then there is amateur radio.  Another area where I don't have any interest but there are thousand and thousands who do.  I'm not sure how many of today's amateurs are building there equipment.  When I dabbled with the stuff in the late '50s and early '60s, almost everything was home-built.

Microcontrollers!  Beyond the Arduino, there are some interesting projects being built with the modern ARM processors.  It's not all code because, sooner or later, the uC has to talk to the world.

So, there's a partial shopping list.  Good luck!

 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9930
  • Country: us
Re: Good project for a newbie?
« Reply #16 on: November 16, 2016, 05:12:02 pm »
Perhaps the military is using discrete logic.  There may be aspects of the FPGA concept that they don't care for.  For very small logic systems, discrete may still show up but I can't recall seeing any in the last dozen years or more.  It just isn't done!

When I can create a 16 bit accumulator or even an array of registers with a single line of code, the lazy in me comes out.  Suppose you wanted 16 general purpose registers, how much wire-wrapping is required?  Hint:  Lots!

In digital design, the effort is in describing the states and state transitions of the Finite State Machine.  That doesn't change!  We just don't tend to spend much time trying to eliminate states to reduce the flop count.  Heck, we use one flop per state just because it is faster.  We let the software minimize space and maximize speed although we can provide guidance if we think we're smarter than the software writers.  I don't...
 

Online tggzzz

  • Super Contributor
  • ***
  • Posts: 20413
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Good project for a newbie?
« Reply #17 on: November 16, 2016, 05:59:37 pm »
A computer that took up a large desk is now reduced to the size of a postage stamp.  With room left over...

A Cray in an FPGA: http://www.chrisfenton.com/homebrew-cray-1a/
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9930
  • Country: us
Re: Good project for a newbie?
« Reply #18 on: November 16, 2016, 07:34:12 pm »
A computer that took up a large desk is now reduced to the size of a postage stamp.  With room left over...

A Cray in an FPGA: http://www.chrisfenton.com/homebrew-cray-1a/

Great article!  The author hits on the primary problem:  No software!  I have been lusting over a CDC 6400 or 6600 for a very long time.  But what would I do with it if I couldn't find the software?  It's not like I can write a complete OS for the machine.  So, before building a CPU, make sure the software exists.  Or, build something that will run V6 Unix because the OS source is available.  I put together a PDP11 'like' system that runs V6 but I didn't have the code for the compiler or assembler.  Sure, I could build code outside the platform but that's no fun!  There are several of these PDP11 projects on the Internet.

One of the cool projects out there is an incantation of a Z80 running PacMan.  Of all the projects I have built, this is the one I like the most.  One day I'm going to build the bar table version just because I can.
 

Offline PotatoBoxTopic starter

  • Regular Contributor
  • *
  • Posts: 129
  • Country: ca
Re: Good project for a newbie?
« Reply #19 on: November 16, 2016, 09:30:46 pm »
I found this instructable on how to build a computer with TTL logic. It seems to be very well documented and covers very basic stuff (like what a resistor and capacitor are) to actually programming the computer. Would seem to be a cool project and I would learn a lot out of trying to build it.

Should I try it out or set it off to the side for later?

http://www.instructables.com/id/How-to-Build-an-8-Bit-Computer/?ALLSTEPS

That's quite a big project. How about making something a bit simpler such as a digital clock? You would get experience on how logic works and get a feel for what's involved in using discrete logic. After that, you would be in a good position to know where you want to go from there and possibly embark on more complex stuff.

I think this would be a good project... just get a few 4026's and a 1Hz clock signal and youre all ready to go.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf