6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Nov 10, 2024 8:40 pm

All times are UTC




Post new topic Reply to topic  [ 23 posts ]  Go to page Previous  1, 2
Author Message
 Post subject:
PostPosted: Wed Feb 25, 2009 8:42 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8539
Location: Southern California
Quote:
For starters, there's no less than four times as many traces to place and route. That means increased board-related expenses, and really, THAT ultimately is what determines product price.

As one who has laid out many very complex boards (up to 12 layers and 1500 holes for component leads), I can tell you that what affects the cost is generally size, the number of layers, width of trace and space (down to .006" is standard cost, and cost goes up as you get into narrower ones), board quantity, and whether or not you have:
    soldermask (and what kind)
    legend (and whether it's on one side or both)
    controlled impedances
    burried capacitance
    blind and/or burried vias
    secondary operations (like milling a slot, or drilling a hole after the others are thru-plated)
    gold plating on contacts
    bare-board testing at the board house
(the majority of these not being necessary for our kind of work).

The number of traces does not affect the cost directly. If you need more layers to get it all in, or use super-narrow trace and space (like .002"!), then the price increases, but OTOH, these may result in decreased board size for a given complexity too.

Quote:
4. You don't need to reload all 32-bits of an address bus. What are the odds that you will even use half of that address space?

IOW, 31 bits instead of 32? Even if I never use more than 24 bits (16M addresses), having all 32 bits may make the address decoding easier and faster.

Quote:
Remember, the original 68000 was limited to 16MB, and the 68008 to 1MB. Lots of useful systems were built with both, each with significantly less than their complete memory capacity installed.

I don't think I want to be limited to 16MB (or 16megawords) since I might want to do digital recording (and not necessarily just audio). I won't generate 16MB of tight code in my lifetime, but recording at possibly hundreds of thousands of samples per second fills up 16MB pretty quickly. I want to implement a couple of MB of look-up tables for very fast, accurate math too, in addition to program and data space.

Quote:
since you have the load the buggers each time.

I haven't paid much attention, but aren't they mostly self-loading from an external 8-pin serial EEPROM? It's quick and cheap.

Quote:
By all accounts, WDC has only one significant customer, Winbond. And, by significant, I mean, if Winbond stopped using the 65xx lineup tomorrow, WDC would find themselves desperately seeking new clientele to keep cash flow, or risk burning cash reserves.

It could make things interesting. On one hand, it could be a threat to the business (which would be bad for us), and OTOH, it could make them do something wonderful, like start putting a real effort into selling their own hardware, or license Microchip to put out a line of PICs with 6502's at the core instead of their decrepit PIC RISC processor.

Quote:
Overall, if you're looking for anything resembling performance, you'll want either a discrete component CPU (using actual TTL parts) or an FPGA solution.

I wish I could put the time into it. One thing I was trying to avoid however was a large number of parts, unless I could lay out a very small board that would serve as a building block and get quite a few of them made and plug them into each other as we talked about briefly on the other recent topic.

Quote:
However, you might want to consider building a stack-architecture CPU if you go this route. I think you'll find Phil Koopman's text on the subject, "Stack Computers: The New Wave" (http://www.ece.cmu.edu/~koopman/stack_c ... index.html) most interesting.

That's another book I've been interested in but wasn't going to get until I could put the time into it. There again though, I might be into making my own stack processor, if I want stability. Ones I was interested in before, like the Harris RTX-2000, were not on the market for long.

(Edited 6/25/12 to add link to math tables web pages)

_________________
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  
 Post subject:
PostPosted: Wed Feb 25, 2009 9:53 pm 
Offline

Joined: Sat Jan 04, 2003 10:03 pm
Posts: 1706
GARTHWILSON wrote:
IOW, 31 bits instead of 32?


Not necessarily. Maybe you have A31..A28 and A12..A0 exposed. That's a grand total of 16 address lines. Or, you can pre-decode in software the peripheral addressed, replacing A31..A28 with dedicated _CS output lines.

Quote:
I haven't paid much attention, but aren't they mostly self-loading from an external 8-pin serial EEPROM? It's quick and cheap.


FPGAs still take 2 to 4 seconds to load from those EEPROMs though. You get superior loading performance from those chips that support loading from parallel ROMs though.

Quote:
hardware, or license Microchip to put out a line of PICs with 6502's at the core instead of their decrepit PIC RISC processor.


We can dream... ;)


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 26, 2009 3:50 am 
Offline

Joined: Sat Sep 22, 2007 1:31 am
Posts: 24
kc5tja wrote:
Overall, if you're looking for anything resembling performance, you'll want either a discrete component CPU (using actual TTL parts)


That's on my list to do one day :D That would be a ton of fun. Nothing serious mind you, just a hobby project.


Quote:
I was digging around in a binder the other day, and I found my old 65832 docs from March 1990. It's a straightforward 32-bit extension of the 65816, and has an E16 bit (behind the V bit) for 65816 emulation.

I'm rather glad it wasn't built, because it wasn't well-suited for compiler code generation.

Toshi


Any mention of the data bus? Was the emulation only '816?


Regarding licensing the IP, Rockwell added some instructions to the 'C02 core for its 'C02S versions. The original 65816's lack these even though (IIRC) these instructions were already in existence. I could have sworn the '816s in the MCU line now contain some of these instructions. BBRx/BBSx/RMB/SMB, if I recall correctly, are some of the added missing instructions. Or am I thinking of the WDC 65C02S MCU? Either way, it ended up in one of WDC newer cores. Does this mean these were probably originally created by WDC or they just adopted another companies improvements/instructions?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 26, 2009 5:23 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8539
Location: Southern California
Quote:
Or am I thinking of the WDC 65C02S MCU?

Yes the W65C02 microprocessor. Columns X7 and XF are the instructions you're referring to. The 816's op code table is full, even though it does not have these. If a 32-bit version with 32-bit address and data buses is made though, with no obligation to be backward compatible, a lot of the op codes become unnecessary, because ZP, ABS, and LONG are all the same thing; so room is left in the op code table for other things we didn't have before. Of course if you always fetch 32 bits at once anyway, an op code wouldn't have to be limited to 8 bits. Some things, like the barrel shift, can say how far in which direction to shift or rotate, and branches could also have how far in which direction all in the same fetch so a relative branch distance would be limited to 8 million address units in one direction or the other, instead of -127 to +128.

Quote:
FPGAs still take 2 to 4 seconds to load from those EEPROMs though.

Not a problem.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 26, 2009 9:41 am 
Offline
User avatar

Joined: Tue Mar 02, 2004 8:55 am
Posts: 996
Location: Berkshire, UK
tomaitheous wrote:
Quote:
I was digging around in a binder the other day, and I found my old 65832 docs from March 1990. It's a straightforward 32-bit extension of the 65816, and has an E16 bit (behind the V bit) for 65816 emulation.

I'm rather glad it wasn't built, because it wasn't well-suited for compiler code generation.

Toshi


Any mention of the data bus? Was the emulation only '816?

I posted a link to a PDF of the 65832 data sheet a few days ago. You all seem to have missed it. The chip is pretty much a drop in replacement for a 65816 with same address and data bus arrangement.

The data sheet suggests there is a new instruction XFE to copy the overflow flag to the E16 register but its not in the opcode matrix and I can't see any free locations where it might be squeezed in. (A replacement for the WDM instruction maybe?) It still has the E8 register so it can be switch into 65C02 emulation as well.

As only the A,X and Y registers are increased to 32 bits the instruction set and timings are pretty much the same as the 65816. Instructions with immediate arguments get longer and all memory accessing instructions gain extra cycles as the additional data bytes are transferred.

It looks like WDC was going to start making use of COP instruction to add new functions (I guess multiply, divide and floating point for starters) but there is little detail.

For fun I added 65832 support to my Java based assembler/linker. The resulting output looks interesting. Here are a couple of snipits from the test file.
Code:
                                    .65832
                           
                            ; 16-Bit emulation mode

                                    .DPAGE $11
                                    .LONGA OFF
                                    .LONGI ON
                                                   
0009B7' A911              :         LDA #$11
0009B9' A511              :         LDA <$11
0009BB' B511              :         LDA <$11,X
0009BD' AD2211            :         LDA $1122
0009C0' BD2211            :         LDA $1122,X
0009C3' B92211            :         LDA $1122,Y
0009C6' A111              :         LDA ($11,X)
0009C8' B111              :         LDA ($11),Y
0009CA' B211              :         LDA ($11)
0009CC' AF332211          :         LDA >$112233
0009D0' BF332211          :         LDA >$112233,X
0009D4' A711              :         LDA [$11]
0009D6' B711              :         LDA [$11],Y
0009D8' A304              :         LDA 4,S
0009DA' B304              :         LDA (4,S),Y
0009DC' A21100            :         LDX #$11
0009DF' A611              :         LDX <$11
0009E1' B611              :         LDX <$11,Y
0009E3' AE2211            :         LDX $1122
0009E6' BE2211            :         LDX $1122,Y
0009E9' A01100            :         LDY #$11
0009EC' A411              :         LDY <$11
0009EE' B411              :         LDY <$11,X
0009F0' AC2211            :         LDY $1122
0009F3' BC2211            :         LDY $1122,X

                            ; 32-Bit native mode
                           
                                    .WIDEA ON
                                    .WIDEI OFF
                           
000BF8' A911000000        :         LDA #$11
000BFD' A511              :         LDA <$11
000BFF' B511              :         LDA <$11,X
000C01' AD2211            :         LDA $1122
000C04' BD2211            :         LDA $1122,X
000C07' B92211            :         LDA $1122,Y
000C0A' A111              :         LDA ($11,X)
000C0C' B111              :         LDA ($11),Y
000C0E' B211              :         LDA ($11)
000C10' AF332211          :         LDA >$112233
000C14' BF332211          :         LDA >$112233,X
000C18' A711              :         LDA [$11]
000C1A' B711              :         LDA [$11],Y
000C1C' A304              :         LDA 4,S
000C1E' B304              :         LDA (4,S),Y
000C20' A211              :         LDX #$11
000C22' A611              :         LDX <$11
000C24' B611              :         LDX <$11,Y
000C26' AE2211            :         LDX $1122
000C29' BE2211            :         LDX $1122,Y
000C2C' A011              :         LDY #$11
000C2E' A411              :         LDY <$11
000C30' B411              :         LDY <$11,X
000C32' AC2211            :         LDY $1122
000C35' BC2211            :         LDY $1122,X

Lack of hardware multiply and divide it would affect its performance compared to other 32-bit chips in computational code.

_________________
Andrew Jacobs
6502 & PIC Stuff - http://www.obelisk.me.uk/
Cross-Platform 6502/65C02/65816 Macro Assembler - http://www.obelisk.me.uk/dev65/
Open Source Projects - https://github.com/andrew-jacobs


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 26, 2009 7:01 pm 
Offline

Joined: Sun Sep 15, 2002 10:42 pm
Posts: 214
kc5tja wrote:
Neither is a PIC or Atmel microcontroller instruction set (especially the PIC; the Atmel makes token efforts to be easier to compile for though). That hasn't stopped anybody from writing C compilers for them though.


Didn't say it couldn't be done. Said it wasn't well-suited for compiler code generation.

Toshi


Top
 Profile  
Reply with quote  
 Post subject: Re: 6516, 65832, 65032
PostPosted: Sat Sep 26, 2009 10:58 am 
Offline

Joined: Wed May 21, 2003 1:08 pm
Posts: 27
Location: Germany
tomaitheous wrote:
Came across this during some random search - http://homepage.mac.com/jorgechamorro/a ... /65xxx.txt

I've never heard of the 6516 mentioned before (as a development pursuit or otherwise). The 6516 sounds pretty impressive from what's mentioned in that article.


the original article the link above mentions about the 6516 is now available on http://www.atariage.com/forums/topic/15 ... r-a400800/


Top
 Profile  
Reply with quote  
 Post subject: Re: 6516, 65832, 65032
PostPosted: Sat Mar 08, 2014 2:26 pm 
Offline
User avatar

Joined: Mon Apr 23, 2012 12:28 am
Posts: 760
Location: Huntsville, AL
Cleaning up some of my datasheet/research directories and came across the datasheet/manual for the W65C832: http://apple2.org.za/gswv/a2zine/Docs/CPU_65832. The link points to a bunch of GIFs. The following is the license for those files:
Quote:
Original location and files: http://apple2.org.za/gswv/a2zine/Docs/CPU_65832

The 65C832 CPU Manual in GIF Graphic format
Copyright © 1999 by Constantine Garland

This folder contains a series of 8 bit 256 color GIF graphic files that are the copyrighted
material of Constantine Garland.

TOC1.GIF through TOC5.GIF consist of the manual information, specification and data
sheet signed by Woz and the table of contents. M1.GIF through M51.GIF contains the
entire context of the 65C832 CPU Preliminary Manual, information, specification and
diagrams and data sheets.

They may be used without any restrictions for historical information, educational,
research and graphic art needs by anybody, provided no fees or money are charged for
such use.

Apple IIgs Forever!

Constantine

The owner of an original version of the W65C832 manual has also scanned the document and released it onto the net. I've attached a copy of that PDF file to this post. An email describing the process by which he came into possession of the manual is included below:
Quote:
Subject: Re: 65832 CPU??? Apple //f???
Date: 11 Apr 2002 04:56:36 GMT
From: cturley2@aol.com (Cturley2)
Newsgroups: comp.sys.apple2

Rubywand wrote asking:

<< That's a pretty rare manual. How did you obtain it?>>

;-) Legally -- by snail mail from a guy in Oklahoma that offered to send it to me for free.
He told me he was a student in high school years ago and decided he wanted info on the
then rumored NEW 65832 CPU for the IIgs.

He contacted WDC with his request convinced them he was a big time chip manufacture
interested in buying it for commercial production and they sent him one.

I got wind of him from an offer he posted to this NG back in 1995 -- asking if anybody
was interested in it for free. I emailed him first on it and he mailed it on to me promptly.
I showed it to Woz at a rock concert back in 1996 -- he was astounded when reviewing it
and signed the cover page for me. That's why it has that Woz sig. on it. As such -- yes, it
is pretty rare -- and -- with mine and the autograph from Woz on it's cover page --- it's a
priceless and VERY rare one-of-a-kind.

WDC told me on several occasions in our many telcons: "We have no such manual our
self now -- only made a dozen or so and mailed all of them out to clients many years
ago." I've never found anybody else that has one either.

Mine may well be the only one left in existence now (???). That's why I digitized it
*cover to cover* and put it online to share the info with the world.

Cheers,
Tom

Attachment:
W65C832 CPU Datasheet v2.0.pdf [9.92 MiB]
Downloaded 148 times

_________________
Michael A.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 23 posts ]  Go to page Previous  1, 2

All times are UTC


Who is online

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