Jump to content

Serious proposal: accelerator and peripheral expansion system


Recommended Posts

No lol please argue with me. I want my effort to be best spent.

 

Some new factors are influencing my decision about it, and I think I oughta add compatibility with as many 68000 compacts as I can.

 

I realized about the SE/30, there's no point to do the schematic now, since the 68030 emulator won't be done until after the 68000 functionality is stable. 68000 emulation is also a lot easier than 68030. Therefore, maybe I oughta direct my effort I was gonna spend on an SE/30 board on making a single board compatible with many 68000 models. If the wider compatibility gets the project more attention, then someone might come along and do the SE/30, IIci, or NuBus board. At that point, I could add the 68030 opcodes and MMU stuff to the emulator.

 

Also, I forgot that SE and SE/30 PDS cards are different shapes and sizes. SE/30 cards stand up vertically and can be much more compact than SE cards, which must be almost as wide as the Macintosh's digital board in order to sit on some supports. So if the card must me that large, it would be better to support more models since it will have to be produced in larger quantities to achieve the same unit cost.

 

Though your card you posted was not so wide. It was seemingly supported in other locations. I would like a little more routing room than is provided on that card, though.

 

Plus and SE are the most popular compacts, right? How common are Classics (especially among buyers of a $150 accelerator)?

 

And tell me about this clip for the DIP chips. Can you buy one that fits the 68000? I couldn't find one online, but I didn't look too hard.

 

About the generations of Mac, I think the Plus is much more similar to the 128k than SE. There must be some modification to the RAM address decoding stuff to support memory expansion, but I think it's basically the same "Burrell logic" used in the original. The only difference may be a few new traces or slightly different programming of the PALs. See here: http://www.folklore.org/StoryView.py?project=Macintosh&story=Macintosh_Prototypes.txt&sortOrder=Sort+by+Date&topic=Hardware+Designand http://www.folklore.org/StoryView.py?project=Macintosh&story=Five_Different_Macs.txt&sortOrder=Sort+by+Date&topic=Hardware+Design

Also this one, "Diagnostic Port," is funny: http://www.folklore.org/StoryView.py?project=Macintosh&story=Diagnostic_Port.txt&sortOrder=Sort+by+Date&topic=Hardware+Design

 

The SE has the "Bob Bailey Unit," which replaces the Burrell logic. When feeding the video, it fetches two words in series from the RAM, so video accesses are half as frequent during the active portion of display refresh. The BBU also generates the PMCYC signal that informs the PDS card when a video access to memory is occurring and also allows the PDS card to synchronize itself to the Mac's memory cycle timing.

 

I dunno what the Classic has. It must be similar to the BBU, but withot the expansion card stuff.

Edited by ZaneKaminski
Link to post
Share on other sites
  • Replies 203
  • Created
  • Last Reply

Top Posters In This Topic

Screwing around with placement of components... the Mac SE PDS board shape specified in Designing Cards and Drivers for the Macintosh Family is huge.

post-6543-0-56243800-1480149550_thumb.png

 

It's gotta be wide to be held up by the screws on the left, and it's also gotta be tall to have its connectors in the right area.

 

Once I get the Intrinsyc 410 module, I can actually do the board. Right now I'm just playing.

 

I think I'm going to aim for compatibility with SE and Plus, provided I can get the DIP clip thing.

 

So huge though, ugh. Trash, how does your accelerator support itself when in the SE? What about when in the Plus? I'd like to copy or at least be inspired by the locations of its stands.

Edited by ZaneKaminski
Link to post
Share on other sites

The MicroMac board has no, and doesn't really need any supports. The Killy Klip provides plenty of support in the Plus and by extension, I assume the case would be the same in the Classic.

 

The Killy Klip is very rare beast in this day and age. I'll post a pic of the one in my DrexelMac. I think it's a good candidate for rapid prototype printing, assuming a jig could be made to hold the flexible pins or they could be inserted at some point during a break in the printing process.

 

Some 68000 packages were incompatible with the Killy Klip as was the case with the CPU on the 128k board I picked up from the long defunct Shreve Systems for my CatMac/Hackintosh. The alternate method of mounting the NewLife board (or any other accelerator/expansion card) was to use a 68000 socket as a jig for the process of soldering rows of header pins directly to the legs of the 68000 to mate with the 68000 socket on the bottom of Compact Mac expansion cards.

 

Such modification was no big deal back when expansion was an absolute necessity in meeting Desktop Publishing requirements in the early days of the Mac. Today, folks seem to prefer reversible means of expansion. Personally, I consider the header modification of Compact boards to be more historically correct. The Killy Klip was invented later on as an easier/alternate method for less technically oriented users to execute expansion via the "original 68000 PDS" expansion slot.

 

This ingenious "PDS" hack of the 68000 sitting right out there in the open on the 128k board lends much humor regarding the irony in Folklore's revelation of the "Diagnostic Port" caper. :D

 

A for support for the SE implementation (possibly an unimplemented 68000 version of my MicroMac card) would likely have been nylon standoffs mounted in the convenient holes in the PCB. That was the standard method of support for cards designed outsized for Apples' specifications for the LC PDS  .  .  .

 

to be continued  .  .  .

Edited by Trash80toHP_Mini
Link to post
Share on other sites

I'm liking the idea of designing the DIP-64 Killy Klip. Designing the body and having it 3D printed is the easy part. The hard part is finding the right contacts. They've gotta be fat and kind of rolled or V-shaped where they touch the 68000's legs, but long, straight, and thick enough on the other side to be soldered into the board.

 

I've got a bit of experience with solid modeling. Like I said, mech. eng. is not my field but I'm sure I can come up with something good. Once I find a contact that suits me, I'll do up a model and have it printed.

 

I think the contacts can be friction-fitted in the plastic body of the Killy Klip, as long as the straight side of the contact (which is to be soldered to the accelerator) is strong enough to be forced through an opening slightly too small. Soldering the pin to the accelerator board above would secure it permanently.

Edited by ZaneKaminski
Link to post
Share on other sites

You're right about the contacts, at a glance through the plastic they look like longer versions of an IDC jumper cable's contacts in the pic below. On top of that the contact looks like it has several bends to adjust placement and an installation flange.

 

nNIkeZ.jpg

 

p6pdIu.jpg

 

DwhaHm.jpg

 

xvt2mJ.jpg

 

I wonder if the patent has expired by now?

 

 

 

edit: That said, let's not put the cart before the horse. The old school soldered header method will work just dandy for development.

Edited by Trash80toHP_Mini
Link to post
Share on other sites

Here's the patent: http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&d=PALL&p=1&u=%2Fnetahtml%2FPTO%2Fsrchnum.htm&r=1&f=G&l=50&s1=4907976.PN.&OS=PN/4907976&RS=PN/4907976

 

Peter Killcommons is the inventor, hence the Killy Clip name. I'm sure it has expired by now. The filing date is March 1, 1988, granted March 13, 1990.

 

 

About doing the Killy Klip first, it should be quick once I find the right contact. I may go through several iterations of the accelerator board, and it would be better to not have to desolder and resolder the thing on multiple times. Plus, I'm stuck waiting a few days until I receive the Snapdragon module and can see the pinout.

 

Maybe I'll contact Kilcommons himself, if he's still alive...

Link to post
Share on other sites

You only solder the headers to a 68000's legs once, it makes a permanently installed version of the Killy Klip. After that you press the 68000 socket underneath an expansion board onto the header pins as you would to a Killy Klips' to install and pull the board off them to remove any expansion card at will.

Link to post
Share on other sites

Peter Killcommons is the inventor, hence the Killy Clip name. I'm sure it has expired by now. The filing date is March 1, 1988, granted March 13, 1990.

 

 

About doing the Killy Klip first, it should be quick once I find the right contact. I may go through several iterations of the accelerator board, and it would be better to not have to desolder and resolder the thing on multiple times. Plus, I'm stuck waiting a few days until I receive the Snapdragon module and can see the pinout.

 

Cart/Horse per post above.

 

Kilcommons filed two years after the Plus release and a year after the SE was released. I'd wager that expansion card installations up to that point had pretty much been done via the old school process I've described.

 

Interestingly enough, I had Pennie & Edmonds do a patent search for me in that same time frame!

Link to post
Share on other sites

Alright, I get it now. I was confused about how traditional accelerator boards were structured, thinking they replace the 68000, not understanding the installation method, etc.

You're right, it's all electrically the same as the PDS (duh, the PDS is in parallel with the processor). The only differences relate to the lack of the PMCYC synchronization signal, the different video access timings between SE and Plus, and the lack of the C16M signal.

So I think the board compatible with at least Plus and SE should be easy, as you have said. I'll add the 68000 DIP-64 footprint in parallel with the PDS. To compensate for the different video access stuff, I'll just make sure the bus glue acts as much like a 68000 as possible, in terms of how it conducts a bus cycle. If I need a higher-frequency clock synchronous to C8M, I'll use the system controller's PLL to multiply C8M by 2 or maybe 4, rather than using C16M.

Edited by ZaneKaminski
Link to post
Share on other sites

Can a PLCC device go in the socket upside-down? What does the socket on the bottom for the Classic look like?

 

There is a bit of a problem. I have to have a lot more circuitry on my board than on the MicroMac board, which has some severe space constraints. I can only expand it to the left.

post-6543-0-43791700-1480200382_thumb.png

 

If I drop Classic compatibility, I can fill in the Classic PRAM battery, floppy connector, and main connector holes, widen the gap between the PDS-96 and DIP-64, and expand the board to the left. But it still may be difficult. 

Link to post
Share on other sites

Somebody just scored a Total Systems Gemini Accelerator for the Plus. That board is just about as big a footprint as an SE/Plus board can get. I'll see if I can find the thread and ask for some detailed pictures. I've never seen one other than in the ads and magazine reviews of Accelerators.

 

Go larger with your board and don't worry about the Classic, it's a turd that doesn't really warrant any polishing. :p

Link to post
Share on other sites

May wonders ever cease? I finally found Daystar's PowerCache adapter tree graphic!

 

 

 

 

ViBPwx.jpg

Diagram pre-dates the LCIII, the adapter for which is not shown.

 

This would be why you would design your 68030 board to interface with the IIci Cache Slot. Anyone with a PowerCache Card and wishing their further upgrade to their SE/30 or other supported Mac already has such an adapter.

 

Cloning the SE/30 and IIsi adapters would be a pet project of mine. If only I could get one into my grubby little paws!  }:)

 

Link to post
Share on other sites

Larger board = more $$$$.

 

More $$$ = less people purchasing. 

 

True, if a just a tad simplistic, there are serious trade offs to be considered:

 

What percentage of completed unit cost does the PCB actually represent?

Adding a bit of size for the dual connector implementation doubles +- the potential user base?

 

Don't know how the numbers might work out, but I'd hazard a guess that building two different designs for Plus and SE might be costlier in many ways.

 

 

 

techknight, was it you that once specified the function of the FPGA(?) implementation on the SE/30 and IIsi PowerCache adapters? Might that have been bbraun? In any case, I'd love to hear that explanation again. ;D

Link to post
Share on other sites

Rather than the IIci slot, why not NuBus? A NuBus card might have a bit less bandwidth than a PDS card but would be compatible with a dozen models. The cards could programmed to speak either NuBus or 68030 bus, selectable by a jumper. The pin layout of the Euro-DIN 96 would be for NuBus, but there would exist an SE/30 and a IIci adapter that would rearrange the signals so the cars could speak 68030 bus.

 

Edit: wait no, the NuBus cards don't have enough pins to speak 68030. It could probably be done with just one or two ICs on the adapter card

Edited by ZaneKaminski
Link to post
Share on other sites

I don't think I'm going to be able to do a card that works on both Plus and SE PDS, though. It just isn't cost-effective. There's not enough room for a bunch of level shifters and 3 TQFP-100 chips in between the paralleled PDS and 68000 DIP-64. I could do it in 6 layers, I think, but then that defeats the low-cost part. More layers also doesn't solve the problem of where to place the (numerous) connectors so they're accessible in the Plus and SE, and then the MIPI-DSI and USB 2.0 HS signals have pretty strict routing requirements, which are hard to achieve when space is constrained. So mechanically, I question whether the feature level I'm aiming for is possible for a card compatible with Plus and SE.

 

Trash, you've definitely convinced me to do a Plus board, though, so I will get on that. I'll try and make each as small as possible in order to reduce the cost.

Edited by ZaneKaminski
Link to post
Share on other sites

You don't necessarily need to design a Plus specific board if you take a page out of DayStar's book. Design a simple, "L" shaped (fat "T" shaped?) adapter PCB for the traces from 68000 socket thruholes to the PDS thruholes. You can use directly soldered header pin strips as a low profile board interconnect on the SE PDS side after installing the 68000 socket under the adapter and putting electrical tape over the protruding socket pins.

 

It's late, I hope that's clear enough.  |) 

Link to post
Share on other sites

Rather than the IIci slot, why not NuBus?

 

NuBus Accelerators like Radius' Rocket require on board memory to get around the multiplexed 10MHz signaling limitations. The PDS spec has full access to system memory at full bandwidth.

 

Having no provision for breakout from the case and less power budget than Apple's PDS spec/definition, the IIci Cache Slot remains as close as it gets to a standardized PDS. Very few of Apple's '030 (or any other) PDS implementations are the same, but all that I know of can be hoodwinked into thinking they're a IIci Cache Slot

Link to post
Share on other sites

As long as a NuBus card can access video memory/VRAM, read the ROM, and access the peripherals (chipset and NuBus), I think it's doable. I dunno anything about NuBus though, other than that it's 32-bit, A/D multiplexed, and multi-master. The emulator is designed to use mostly its own RAM anyway, only writing-through for video accesses and waiting for I/O accesses to be completed over the 68000 bus.

 

The difficult problem to solve with an adapter is that the adapter must ensure that the peripheral connectors are accessible through the chassis. I'll see if it's possible.

Link to post
Share on other sites

The Radius Rocket is the only NuBus based Accelerator that comes to mind. There were scads of PDS based Accelerators  .  .  .

 

.  .  .  do the math! ;)

Well this is new hardware development. Back in the day, logic cost more and they didn't have the luxury of accelerating the Macintosh with a custom-programmed 68000 emulator. There are some restrictions when you're running a real 680x0 that don't have to exist when you program a modern CPU or design your own core to do the task of executing 68000 instructions.

 

Months ago, for example, thetechknight was talking about the difficulties in performing synchronous peripheral accesses with a faster 68000. He said that most accelerators for the 68000 compacts emulate the peripherals that must be accessed synchronously according to the ECLK. That problem just doesn't exist when emulating the CPU. Certain timing restrictions like that can be eased.

 

So I think doing a NuBus accelerator is as doable as any other bus interface. The only tricky part will be dual-mode operation for the IIci and SE/30, where the card can pass through something easily convertible to the 68030 bus. But that's in the future.

 

My progress tonight on the level-shifter area layout for Mac SE:

post-6543-0-96940000-1480302397_thumb.png

 

I dunno what the rest of the board will look like, but I'm pretty sure the level shifters will need to be right next to the PDS lol.

Link to post
Share on other sites

By the way, in case anyone is wondering, these address and data lines I've routed in the image aren't fast enough to need length-matching. The entire length of the PDS is like 10 cm, and the signals will propagate at 60 picoseconds per cm or so, so the entire length of the PDS is traversed in 600 picoseconds. For the Mac Plus and SE, at 7.83 MHz, a cycle takes ~128 nanoseconds, so 600 picoseconds like 1.7 degrees (out of 360) in the cycle. So uhh, that seems good. The level shifters impose a larger delay anyway.

 

IIci is the fastest Mac (in terms of bus speed) I plan could ever be supported. At 24 MHz, a cycle takes up 40 nanoseconds meaning that the same 600 picosecond figure is 5.4 degrees of a cycle. Hmm. Maybe boards for the IIci will have to put a tighter constraint on the skew between different lines and the signal propagation delay in general.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...