6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Tue May 07, 2024 3:07 am

All times are UTC




Post new topic Reply to topic  [ 55 posts ]  Go to page 1, 2, 3, 4  Next
Author Message
PostPosted: Sat Nov 20, 2021 9:10 pm 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
There are many projects out there of people building way more complex devices than a simple bus expander for the 65816. And I say simple because the schematics are out there and widely known.

So why is it that no one has build this?

Thanks.


Top
 Profile  
Reply with quote  
PostPosted: Sat Nov 20, 2021 9:32 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10799
Location: England
I'd guess it's because anyone who might have designed an expander has instead gone ahead and designed their own full system - which is to say, making a monolithic thing can be simpler than making modules which compose to make the same thing.

I was reminded today of the fact (IIRC) that the Transputer multiplexed the data and address busses, as have other systems in the path. As the address always needs to be in place earlier, and the data transfer always happens later, it seems like quite a good idea - if the aim is to use fewer pins, or a smaller backplane, or similar.

It's true, I think, that if you don't use RDY in your design, the multiplexed bus of the '816 is quite simple to deal with - it's just an octal latch. In which case, is a modular approach needed, I wonder...


Top
 Profile  
Reply with quote  
PostPosted: Sat Nov 20, 2021 9:49 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3353
Location: Ontario, Canada
tokafondo, Ed's '816 comments pertains to capturing the high address bits to expand the address bus.

But perhaps it's the data bus you want to expand... for example, in order to interface with peripheral ICs that have a 16-bit data bus.

It seems to me you need to be more specific with your question! :wink: And perhaps you could link us to some of the designs you consider unnecessarily complex. Cheers,

-- 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: Sat Nov 20, 2021 9:55 pm 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
This comes from the fact that when considering the '816 in a design, people usually gets to the conclusion that the address bus is not fully available, so they choose the 6502 instead.

It's a complain I usually read here. Of course that programmers always come to say that the '816 is faster, codewise and has optimizations over the 6502.

So I thought about a simple 40->48 PDIP adaptor, with a female connector on top, and the required components in the pcb, with the male pins below -- because DIYers usually goes the PDIP route, to be able to put the chip in a breadboard.

The W65C816SXB SBC schematics contains an implementation of this bus expander.


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 1:42 am 
Offline

Joined: Sun Jul 11, 2021 9:12 am
Posts: 137
The full 16M address bus is readily available though. You just have to latch it. The circuit for it is even in the W65C816 manual, and is pretty minimal.

So, I guess ‘no one has designed a bus expander’ because the manufacturer already designed it for you.


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 2:26 am 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3353
Location: Ontario, Canada
It's true the circuit is pretty minimal -- basically just a '573 latch and a '245 transceiver, in addition to the processor itself. But for breadboard enthusiasts, I can see how a 65(C)02 would be more approachable, putting the '816 at a comparative disadvantage.

I'm not someone who'd undertake the job, but it would be pretty cool if someone created a DIP-style PCB module that could (among other things) be used in a breadboard. Using surface-mount parts (including the CPU) it could maybe even have the usual .6" width between rows, although it'd probably be OK if it were wider.

Of course the other option is to just get a 65C802, which offers the '816 instruction set but lacks the extra address bits. 802's are hard to come by nowadays, but I seem to recall that someone (Daryl?) designed a DIP-style PCB module that allowed an '816 to masquerade as an '802.

-- 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: Sun Nov 21, 2021 3:30 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8432
Location: Southern California
Dr Jefyll wrote:
I seem to recall that someone (Daryl?) designed a DIP-style PCB module that allowed an '816 to masquerade as an '802.

http://sbc.rictor.org/support/conv.html

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 8:08 am 
Offline

Joined: Thu Mar 03, 2011 5:56 pm
Posts: 277
GARTHWILSON wrote:
Dr Jefyll wrote:
I seem to recall that someone (Daryl?) designed a DIP-style PCB module that allowed an '816 to masquerade as an '802.

http://sbc.rictor.org/support/conv.html


a2heaven sells an implementation of this: http://www.a2heaven.com/webshop/index.p ... uct_id=151


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 11:32 am 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
Dr Jefyll wrote:
(...) it would be pretty cool if someone created a DIP-style PCB module that could (among other things) be used in a breadboard. Using surface-mount parts (including the CPU) it could maybe even have the usual .6" width between rows, although it'd probably be OK if it were wider.


That is exactly what I was thinking about. Something you could use with breadboards for experiments. Plug and play.


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 12:21 pm 
Offline

Joined: Mon Sep 14, 2015 8:50 pm
Posts: 110
Location: Virginia USA
The ‘816SXB chip selects don’t select for extended memory; you’d have to decode the bank bits.
For example, a 2x4 decoder for bits 22-23 would allow for addressing one of Garth Wilson’s 4Mx8 memory modules
and a 3x8 decoder would allow to address each of the 512Kx8 chips on each module.

The ‘265SXB already decodes the expanded memory (CS5B-CS7B).

The A2heaven module is like a 65802 mostly; there’s no decoding of the bank bits.

Cheers,
Andy


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 6:55 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8175
Location: Midwestern USA
tokafondo wrote:
This comes from the fact that when considering the '816 in a design, people usually gets to the conclusion that the address bus is not fully available...

I'm not aware of anyone who is familiar with the 65C816 that has come to such a conclusion. I think you are manufacturing a controversy by saying such a thing.

Quote:
It's a complain I usually read here.

Can you highlight a specific example?

Quote:
Of course that programmers always come to say that the '816 is faster, codewise and has optimizations over the 6502.

The 816 is no faster than the 65C02 on an individual instruction basis—with a few exceptions, instruction timings for both MPUs are the same. Where the 816 gains its edge in performance is in enabling the programmer to write significantly more succinct code, especially in the realm of fetching, processing and storing 16-bit quantities.

Quote:
So I thought about a simple 40->48 PDIP adaptor, with a female connector on top, and the required components in the pcb, with the male pins below -- because DIYers usually goes the PDIP route, to be able to put the chip in a breadboard.

Sounds to me like a solution in search of a problem. Might was well put the A16-A23 latch on the main board, along with the 816, and save on board costs.

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


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 6:58 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8175
Location: Midwestern USA
Dr Jefyll wrote:
Of course the other option is to just get a 65C802, which offers the '816 instruction set but lacks the extra address bits.

However, the OP is lamenting about the extended addressing and apparently how difficult it is to use. :D

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


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 7:00 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8175
Location: Midwestern USA
tokafondo wrote:
Dr Jefyll wrote:
(...) it would be pretty cool if someone created a DIP-style PCB module that could (among other things) be used in a breadboard. Using surface-mount parts (including the CPU) it could maybe even have the usual .6" width between rows, although it'd probably be OK if it were wider.


That is exactly what I was thinking about. Something you could use with breadboards for experiments. Plug and play.

However, you could just use the 816 without paying attention to the bank bits. Again, you are positing a solution in search of a problem.

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


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 7:04 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10799
Location: England
On a slightly different note, I wonder if tokafondo would have got a different sort of thread by asking
    Has anyone designed an address bus expander for the 816?
or perhaps
    Any breadboard-friendly address-expanded 816 module?

I now feel my own response wasn't, as it turns out, addressing the real question behind the apparent question... I offer this as food for thought, to anyone starting a new thread and needing to come up with a title.

(Sometimes, I even think it might be worthwhile to abandon a thread which has gone awry and start a new thread with a suitably reframed title and first post.)


Top
 Profile  
Reply with quote  
PostPosted: Sun Nov 21, 2021 8:03 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8432
Location: Southern California
The topic title and head post can of course be edited.

tokafondo wrote:
This comes from the fact that when considering the '816 in a design, people usually gets to the conclusion that the address bus is not fully available, so they choose the 6502 instead.

There may be some misunderstanding here. The low 16 bits are just as available as they are on the '02. No difference. If a 64K memory map is enough, you don't have to latch, decode, or use the high address byte, A16-A23. If you do want to go further, the '816 is much easier to do banking on, and far more graceful and efficient at it, than the '02.

Quote:
It's a complaint I usually read here. Of course that programmers always come to say that the '816 is faster, codewise and has optimizations over the 6502.

I give an example of the reason at viewtopic.php?p=9705#p9705 . I should probably expand it.

I have an article on the common '816 misunderstandings at http://wilsonminesco.com/816myths/ .

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 55 posts ]  Go to page 1, 2, 3, 4  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 4 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: