6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sat Nov 23, 2024 6:38 pm

All times are UTC




Post new topic Reply to topic  [ 5 posts ] 
Author Message
PostPosted: Mon Feb 29, 2016 10:05 am 
Offline

Joined: Mon Nov 09, 2015 10:02 pm
Posts: 13
Could I foreseeably use a DS1077z-100 (5v compatable part) as my clock source for my CPU?

I was figuring on using an Arduino to allow switching the EconOscillator between 1mhz and 2mhz clock-output speeds

DIV1 divider set to 50, and P1 Prescaler set to /1 : (100mhz * 1/50 * 1/1)
DIV1 divider set to 50, and P1 Prescaler set to /2 : (100mhz * 1/50 * 1/2)

Also I would use the Arduino as a sort of.. way to add fancier features (of the Arduino) to the 6502, like analog I/O and I2C/SPI... but i'd mainly/firstly start out with a software debounced reset switch, and a reset-on-change-of-cpu-speed (for now).

Does this sound reasonable? or is it overly rube-Goldberg-ish?


Top
 Profile  
Reply with quote  
PostPosted: Mon Feb 29, 2016 4:20 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3367
Location: Ontario, Canada
Hi, dracosilv. I'm attaching the datasheet for that part since more people are likely to respond if the information is made readily available. I like the device's flexibility, BTW.
Attachment:
DS1077.pdf [309.4 KiB]
Downloaded 135 times

I have only glanced over the datasheet but it seems the part might be appropriate for your purpose. Of course in order to configure the device you'll be obliged to establish the two-wire serial interface and determine the commands necessary, but that will be kind of fun probably, and maybe educational. :)

Using the Arduino as a software debounced reset switch for the CPU does not strike me as Goldberg-ish, but it depends on one's point of view, I suppose. Yes it's a lot of computing power devoted to a trivial task. But if you already have an Arduino on hand then it's a convenient and effective means to an end.

Quote:
way to add fancier features (of the Arduino) to the 6502, like analog I/O and I2C/SPI
This implies two-way communication between your CPU and the Arduino, and establishing that is a task a novice may find challenging -- but, again, educational and kinda fun.

Good luck, and keep us posted. Which CPU do you plan to use, BTW?

-- Jeff

_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html


Top
 Profile  
Reply with quote  
PostPosted: Mon Feb 29, 2016 9:02 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8510
Location: Midwestern USA
dracosilv wrote:
Could I foreseeably use a DS1077z-100 (5v compatable part) as my clock source for my CPU?

I was figuring on using an Arduino to allow switching the EconOscillator between 1mhz and 2mhz clock-output speeds

As Jeff noted, you should be able to use the DS1077 for that purpose, although I question the value of switching clock speeds on the fly. You might want to consider whether the 65C02 will continue to hum along when the speed changes or crash due to the resulting sudden change in timing.

Quote:
Also I would use the Arduino as a sort of.. way to add fancier features (of the Arduino) to the 6502, like analog I/O and I2C/SPI... but i'd mainly/firstly start out with a software debounced reset switch, and a reset-on-change-of-cpu-speed (for now).

Using the Arduino as a reset controller does seem overly complicated. The Maxim DS-1813 reset controller is a lot simpler, requires no programming, is aware of the rise and fall of Vcc in your circuit, and takes up only the space of a TO-92 device.

While we always encourage experimentation and finding new ways to use various hardware pieces, we also suggest that a first-time effort not have too much complexity. More complexity increases the likelihood of a DOA unit, although troubleshooting and resolving the DOA cause in itself is educational.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Tue Mar 01, 2016 1:39 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3367
Location: Ontario, Canada
BigDumbDinosaur wrote:
You might want to consider whether the 65C02 will continue to hum along when the speed changes or crash due to the resulting sudden change in timing.
The bulleted list of features at the top of page 1 of the DS1077 datasheet mentions "Frequency changes on-the-fly" and "Synchronous output gating." Did you overlook this, BDD? I know you're still recovering from eye surgery. :| The 'C02 isn't bothered by speed changes, sudden or otherwise, provided that the PHI2 spec's for minimum tPWH and tPWL are met.

ETA: Hmm, apologies to our novice readers -- a better explanation is in order. With a WDC 'C02 you can flip the clock input , PHI2, high and low as quickly or slowly as you choose, and as regularly or irregularly as you choose, as long as you obey the following simple rule: Having flipped PHI2 high-to-low, or low-to-high, you must wait 35 ns or more (the WDC part has no upper limit) before you flip PHI2 again. IOW if PHI2 is high it must stay high for at least the minimum tPWH. If it's low it must remain low for at least the minimum tPWL. (Both figures are 35 ns, assuming 5 volt operation.) A runt pulse -- one that's too short -- can cause the CPU to crash or otherwise malfunction.

Runt pulses can arise when switching between clock sources. But the DS1077 is evidently designed in a way that avoids the threat.

_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 02, 2016 3:08 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3367
Location: Ontario, Canada
dracosilv wrote:
Could I foreseeably use a DS1077z-100 (5v compatable part) as my clock source for my CPU?

dracosilv, I just noticed the output high voltage produced by this part is only 2.4 volts. That is acceptable only for driving TTL inputs and also CMOS chips whose inputs use the TTL spec. The Rockwell 'C02 is a CMOS chip that uses the TTL spec, but the WDC 'C02 is a CMOS chip that requires its PHI2 input to be driven almost "rail to rail" (ie, within .4 volt of 0 or +5).

You haven't mentioned which CPU you plan to use. There are simple remedies that will allow the WDC part to work. The Rockwell part can accept the DS1077 output directly.

_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 8 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: