Arduino Forum

General Category => General Discussion => Topic started by: Engr_Eddy on Aug 21, 2011, 05:35 pm

Title: Dual Core 168 Arduino
Post by: Engr_Eddy on Aug 21, 2011, 05:35 pm

http://www.modxhost.com/dCore-Final.pdf

http://www.modxhost.com/dCore-IOBrd-Final.pdf

These links are not working any more ,can any one provide me the schematic and a layout of this board design by John_Ryan

check the link :http://arduino.cc/forum/index.php/topic,7894.45.html
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 21, 2011, 11:53 pm
Looking for something like this?
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 22, 2011, 02:31 am
Interesting, not sure about sharing the crystal but if it works...

What do you need this for?

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 22, 2011, 02:42 am
In this pic from the original thread they seem to be sharing the oscillator.

http://www.modxhost.com/ass2.jpg

Maybe the solution is one is connected normally, and the other just get its input driven.
Paragraph 8.4 seems to suggest that would be viable:

"Full Swing Crystal Oscillator
Pins XTAL1 and XTAL2 are input and output, respectively, of an inverting amplifier which can be
configured for use as an On-chip Oscillator, as shown in Figure 8-2 on page 29. Either a quartz
crystal or a ceramic resonator may be used.
This Crystal Oscillator is a full swing oscillator, with rail-to-rail swing on the XTAL2 output. This is
useful for driving other clock inputs and in noisy environments. The current consumption is
higher than the "Low Power Crystal Oscillator" on page 28. Note that the Full Swing Crystal
Oscillator will only operate for VCC = 2.7 - 5.5 volts."
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 22, 2011, 02:54 am
Going thru the old thread, looks only Cr0sh is still around from the posters than.
The Dual design overcome by the Mega1280 apparently.

Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 22, 2011, 03:05 am
Quote
The Dual design overcome by the Mega1280 apparently.

Yeah, that's where I was heading, just use a larger processor.

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 22, 2011, 03:22 am
Maybe a dual 1284 would be better - 2 user replaceable DIPs, "dual thread" action, 4 UARTs, 256K total memory, 64 IO.
Cost for 2 /1284's  ($8.13) is less than a non-user replaceable 2560. ($17.97, both digikey & mouser pricing, newark $7.38/16.27).

Hmm, maybe a 1284 shield for an Arduino ...
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 22, 2011, 04:28 am
Yep you could easily make a shield to give "dual core" functionality, one problem IMO is that there's no really good mechanism for the two to talk. SPI is close but the crap implementation on AVRs limits that as well I think.

Anyone for dual-port RAM?

Still, as long as the tasks were not tightly coupled that wouldn't matter.

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 22, 2011, 06:45 am
How's this one look?
http://www.cypress.com/?docID=24398
Somewhat affordable, $7.45 each.
Need to set up a preloadable, autoadvancing, 10 bit address counter on each side to allow fast burst of parallel access reads & writes.
Or tie up 23 pins on each side.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 22, 2011, 07:13 am
Yeah Cypress make some really nice (and expensive) gear in this area, I'm always loved this sort of setup and used to work with a Z8000/bit-slice processor dual board, but the truth is I can see absolutely no reason to do this sort of thing these days at most levels when you can buy a 50MHz LPC 32-bit processor for $1.50. Lash out and spend $2.50 and you get 100MHz and every peripheral known to modern man :)

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 22, 2011, 07:23 am
Where's the design integration challenge in that? Now you're stuck learning some new programming language and dealing with terminating signals at RF frequencies. Might as well buy a netbook or ipad.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 22, 2011, 07:35 am
I admit there's no design integration challenge, but you still use C/C++ and the high speed stuff is all internal.

I've been studying the LPCs for a project, a huge amount of grunt for a chip that's just as easy (even easier in some respects) than the typical AVR we talk about here. Frankly as far as I can see it's just the Arduino/AVRfreaks communities that make it worth using 8-bit AVRs at all.

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 22, 2011, 07:43 am
The AVRs make it all about physical interfacing.  Writing some code is fine, but I don't want to get bogged down into a huge software project. Its bad enoough maintaining a website!
Title: Re: Dual Core 168 Arduino
Post by: Engr_Eddy on Aug 22, 2011, 10:00 am
Thanks CrossRoads ,could you also provide me the layout of this schematic.i wanna print it and make it at home  :)
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 23, 2011, 01:36 am
I didn't lay it out, was reading in the old thread about how the original developers gave up on the concept after the Mega's came out.

Was thinking I'd replace the '328s with '644s. Altho looking at the parts & connecters there, not sure two 40 pins DIPs would fit.

Looks like the '328s would fit on a 80x100mm board, looks like I could replace the resistors with smaller parts, and changing the IO pins to dual-row parts instead of 2 single row parts will tighten things up too.

You serious about making this?  I normally design with 10 mil lines so I can snake 2 traces between holes if need and use 0.012" holes for vias. That gonna be a problem for home etching?
Title: Re: Dual Core 168 Arduino
Post by: buzzdavidson on Aug 23, 2011, 01:54 am
Not sure what the OP's needs are, but if they need multicore, the Parallax prop has some really nice multi-core ("multi-cog" in Propeller parlance) solutions available.  If you're looking for an AVR-based challenge, carry on :P

Would be interesting to hear what your needs are for this - there are probably better solutions available.  If your problem requires any kind of serious synchronization, shared memory, etc, FPGAs are probably a better bet (and will blow away anything you can do with the AVR, performance-wise...)
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 23, 2011, 08:18 am
All routed, a little cleanup needed, name placements cleaned up...
Title: Re: Dual Core 168 Arduino
Post by: Engr_Eddy on Aug 23, 2011, 11:20 am
Thanks man!
Title: Re: Dual Core 168 Arduino
Post by: Engr_Eddy on Aug 23, 2011, 11:29 am
The traces are thin,so its really a problem to etch at home.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 23, 2011, 03:19 pm
Jeez Bob, you've got way too much time on your hands :)

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 23, 2011, 05:42 pm
@engr_eddy,
I did ask:
"You serious about making this?  I normally design with 10 mil lines so I can snake 2 traces between holes if need and use 0.012" holes for vias. That gonna be a problem for home etching?"
What size can you do?

@Rob,
Actually, this went really quick.  If you're just connecting things by name and not drawing lines all over the page, the schematic goes quick.  Borrowing from the Bobuino design concept meant I had a good architecture in mind when I started.
Being careful with parts placement made most of the routing pretty straightforward. And not having to deal with arcane shield pinouts meant I could arrange the headers to suit the chip's pinout better.

In fact it went so well, I only 4 clearance errors to clean up, and those just needed a slight movement of a corner or a via.

You see the method I use of looping signals back over pins? Eagle's autorouter can't seem to do that, and that lets me get by without a lot of vias as well. Vias take up room, even using 0.012" drill size.

The other thing that helps is making it all thru-hole, lots more room to work with.
Am gonna try dual 644/1284 next.

And when fencing season starts in 2 weeks and I'm coaching several nights a week, I'll have less time.
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 04:52 am
@Engr_Eddy,
Had some time to kill offline waiting for something else, took my laptop.
I fattened up all the lines, beefed up the +5V going around the board, got rid if as many vias as I could for you.
Can you create top & bottom artwork yourself from eagle?
http://www.crossroadsfencing.com/DualATMega328.brd
right-click, save target as, rename to .brd.
Title: Re: Dual Core 168 Arduino
Post by: Coding Badly on Aug 24, 2011, 06:48 am

You've heard of Dueling Banjos?  Well, for one night only!  Right here!  The world famous Dueling Banduinos®!  Don't miss it folks!  It will be the event of a lifetime!
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 07:19 am
Especially  if you program both as Masters and they try to send commands to each other at the same time 8)
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 24, 2011, 07:22 am
And now, for the greatest race (condition) of the century and for your viewing pleasure...

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: retrolefty on Aug 24, 2011, 07:39 am
Note that not all States yet allow such a partnered processor arrangement.  ;)

It is however cool in CrossRoads home State.

Lefty
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 07:55 am
You think XTAL2 should be left open on one of the parts?

"Full Swing Crystal Oscillator:
Pins XTAL1 and XTAL2 are input and output, respectively, of an inverting amplifier which can be
configured for use as an On-chip Oscillator, as shown in Figure 8-2 on page 29. Either a quartz
crystal or a ceramic resonator may be used.
This Crystal Oscillator is a full swing oscillator, with rail-to-rail swing on the XTAL2 output. This is
useful for driving other clock inputs and in noisy environments. The current consumption is
higher than the "Low Power Crystal Oscillator" on page 28. Note that the Full Swing Crystal
Oscillator will only operate for VCC = 2.7 - 5.5 volts.

The operating mode is selected by the fuses CKSEL3..1 as shown in Table 8-5."

Frequency Range(1)   (MHz)   Recommended Range for          CKSEL3..1
                                                 Capacitors C1 and C2 (pF)
0.4 - 20                                     12 - 22                                          011

Is that what we use?
Title: Re: Dual Core 168 Arduino
Post by: Coding Badly on Aug 24, 2011, 08:26 am
Quote
You think XTAL2 should be left open on one of the parts?


I was wondering that as well.  I know a 1 MHz square wave applied to XTAL1 with the default fuse settings brings a processor to life.

Quote
Is that what we use?


Yup.
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 08:32 am
How can  I find that solder bridge/pad thing in Eagle? No idea what it is called.
Can add that as an open, be able to close it if needed.
Or add to both chips, then either can be selected as the clock generator.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 24, 2011, 08:35 am
Just make one. I'm no fan of Eagle but it can't take long to make a solder bridge.

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: cmiyc on Aug 24, 2011, 05:06 pm
Quote
How can  I find that solder bridge/pad thing in Eagle? No idea what it is called.


Look at "SJ" in the "jumper" library.
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 07:17 pm
@Rob,
I could use the pads from a small surface mount part I suppose. I am a rookie when it comes to creating eagle symbols. Just haven't done enough with them. And freaking Vista keeps stuffing things in some virtual users folder so I can't find them when I want to re-use them!

@James,
Thanks, will check that out tonight.
Title: Re: Dual Core 168 Arduino
Post by: buzzdavidson on Aug 24, 2011, 09:17 pm

And freaking Vista keeps stuffing things in some virtual users folder so I can't find them when I want to re-use them!


Shudder.  Ya know, if you have an .edu account you can get an upgrade to Windows 7 pro for $27.  Then take Vista out back and shoot it.  Win7 sucks much, much less.

Just Sayin'...

-- buzzdavidson: proud anti-windows curmudgeon since 1990. 
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 09:21 pm
Thanks, will look into that via my college alumnus account. Where do I go for the upgrade?
Title: Re: Dual Core 168 Arduino
Post by: buzzdavidson on Aug 24, 2011, 09:35 pm
Sorry, it's $29.99, not $27.   Still a whole lot cheaper than retail.  You need an active .edu email for verification.

http://www.microsoftstore.com/store/msstore/pd/productID.216644200 (http://www.microsoftstore.com/store/msstore/pd/productID.216644200)

Be forewarned - the license allows upgrading from ANY previous version of windows, but the Windows activation procedure will fail without any useful information if you attempt to install on a clean hard drive.  Nothing a call to M$ won't fix, but still an aggravation.  I'd recommend backing up all of your data and doing a "clean upgrade" from the win7 installer rather than attempting the automated upgrade, especially from Vista.
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 10:13 pm
Oh, that's gonna suck. I've got tons of programs installed.  Just re-loading Office 2007 takes forever.
Title: Re: Dual Core 168 Arduino
Post by: buzzdavidson on Aug 24, 2011, 10:51 pm
You could try an in-place upgrade, but keep an eye out for general flakiness.  Back when I was actually doing production Windows development I would routinely do a fresh install once every 6 months, kept the machine running smoothly.  Windows systems still seem subject to inevitable bit rot that causes performance and stability issues after a few months.  If you haven't done a clean install in a while, I'd highly recommend it - it's like having a new machine.

Waiting for the M$ fanboys to jump to the platform's defense... it's inevitable. :P 
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 24, 2011, 10:57 pm
The machine works fine otherwise, continually updates itself. Its just that annoying process of burying everything in isolated user folders that I hate. Yesterday I hunted around to find all the eagle libraries and moved them up to the c:/program files/Eagle 5.11/lbr folder so they all show up now.   Did the same with Arduino, moved it to c:/arduino-0022 instead of some buried virtual folder.  And it's still not recognized as an installed program so .pde's won't open with a double click.
Things like that are annoying, and having to confirm everything all the time.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 25, 2011, 01:37 am
I refuse to allow any program to use the stupid "My xxx" folders or anything like them. Everything goes under a single "work" folder on D drive and is therefore easy to both find and backup.

Of course some programs don't give you a choice, like the stupid IDE, why they force us to look in an obscure temp folder I don't know but I suppose it's something to do with hiding the details from non-programmers. If that's the case it should be an option that can be selected by those who do want to control things.

I doubt swapping to 7 will change anything, I've thought about doing so but it would be just too painful. What I have done is disable nearly all the clever graphics etc on Vista. It now looks like XP and runs a lot faster.

Quote
having to confirm everything all the time

Disable UAC.

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 25, 2011, 03:59 am
Ok, found the SJ, added them to in the XTAL2 lines, with one connected and 1 not.
Title: Re: Dual Core 168 Arduino
Post by: buzzdavidson on Aug 25, 2011, 09:07 am

I doubt swapping to 7 will change anything, I've thought about doing so but it would be just too painful. What I have done is disable nearly all the clever graphics etc on Vista. It now looks like XP and runs a lot faster.


You're absolutely correct, especially in regards to Crossroads' original complaint.  Upgrading won't change a thing - you're still running Windows <g>...  M$ did a lot of work in Win7 to streamline things though, and a clean install can provide some staggering performance improvements.  Vista is a pig, even with all of the graphics crap turned off.  Win7 removes a lot of that bloat.

Keep in mind that you could try out a new clean install without changing a thing - just buy a new hard drive, install win7, install a few programs and mess around with it.  If you still decide it's too painful, swap the original drive back in and you're no worse off than you were to begin with.

BTW, if upgrading would be incredibly painful, you may want to look really closely at your backup strategy...  Just sayin'.  Hard drives DO fail.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 25, 2011, 09:30 am
Quote
you may want to look really closely at your backup strategy

I've got a reasonable system in place, including off-site storage. But I only backup work files, not programs.

Your right though, reloading the OS on a clean disk is the best way to clear the accumulate crap from a machine.

_____
Rob
Title: Re: Dual Core 168 Arduino
Post by: CrossRoads on Aug 26, 2011, 12:13 am
Well, backups do no good if you have to reinstall the applications. Sure, you've got your data, but nothing to run them.
Title: Re: Dual Core 168 Arduino
Post by: Coding Badly on Aug 26, 2011, 12:33 am
Quote
Hard drives DO fail.


As well as software... If the software used to make backups has restore bugs then you're just ... well ... you know.  Which is why I will never again trust Microsoft or Roxio for backups.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 26, 2011, 01:56 am
Quote
backups do no good if you have to reinstall the applications

Yep, but reinstalling apps is an inconvenience, not a disaster. As with other things in life I only insure against disasters, everything else I deal with myself.

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: buzzdavidson on Aug 26, 2011, 02:27 am
You may also ask yourself whether you actually need all of that software that you have installed.  Try a fresh OS install and work with it for a month, only installing applications as you actually need them.  You might be surprised.  I certainly was when I took this approach...

Also think about utilizing cloud based services.  Let someone else deal with backups if its possible.

Another potential idea: if you have never tried a linux distribution, or haven't tried one in the last year or so, give it a shot.  Ubuntu, for example, is fast, lightweight, and free.  Arduino, avr-gcc, avrdude, fritzing, etc all work just fine in this environment.

I abandoned Windows altogether in 2006 and haven't missed it; only recently put windows 7 in a virtual machine to play with AVR studio.

I'm an old unix guy, so it was an easy change for me.  I also spent a good chunk of my career developing windows applications, and have held MCSE, MCPS, and other M$ certifications.  I know the platform quite well, just don't particularly like it.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 26, 2011, 02:47 am
Quote
You may also ask yourself whether you actually need all of that software that you have installed.

I know I don't use half the apps I have loaded, but I leave them there just in case :) It would be better to do as you state.

As for moving to Unix, not a chance, I'm doomed to a lifetime of Windows because I would bet that most of the programs I use don't have Unix versions, and even if they did I'd have to buy new licenses.

______
Rob
Title: Re: Dual Core 168 Arduino
Post by: buzzdavidson on Aug 26, 2011, 03:06 am

I'm doomed to a lifetime of Windows


This is the saddest thing I've read all day.  Sniff.

Seriously though, you might be surprised.  There is an amazing variety of free software available on the Linux platform, much of it equal to or surpassing the quality of commercial solutions.  The Arduino IDE is but one example.
Title: Re: Dual Core 168 Arduino
Post by: graynomad on Aug 26, 2011, 07:28 am
Quote
This is the saddest thing I've read all day

Must be very early in your part of the world eh? :)

Quote
The Arduino IDE is but one example.

Maybe but not a good one, it's pretty ordinary and I never use it unless it's to see if a code example compiles before I post it here.

Probably not much of the stuff I use (Altium, CorelDRAW, PTgui, Photoshop, AVR Studio being the major ones) is available on Unix. I know there are often equivalents (eg Photoshop => Gimp) but I don't want to relearn all that crap. And there's still the new license issue. And then I have my own VB apps I've written over the years.

I looked at Open Office a while back but I don't think it had an email client.

I'll look back into it, it's been a couple of years and these things change a lot.

______
Rob