Welcome, Guest. Please login or register.

Author Topic: Sonnet PPC PCI Card  (Read 12774 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline mschulz

Re: Sonnet PPC PCI Card
« on: August 10, 2008, 10:18:43 PM »
First of all, my old blog entry:
cheap ppc alternative

Quote

da9000 wrote:
The first resource I as a programmer would need is the technical docs (registers, memory map layout, any other info on PCI transactions, etc.) of the Sonnet card. That will be absolutely necessary to get it up and running.


Ask them. Last time I spoke with the main engineer of Sonnet card he was very happy to answer my questions.

The Sonnet card based on the MPC106 CPU bridge, widely known in Amiga community due to the Troika project - their first approach was based on the Tundra Tsi106 northbridge - the very same as MPC106 (Tundra acquired the MPC106 and 107 from Freescale long time ago).

The Sonnet card is an awfully simple design. The MPC106 serves as the CPU to PCI and Memory to PCI bridge. All information you need is in Freescale/Tundra docs. Including the doorbell register which is used to trigger interrupt on the Sonnet card.

Quote

A possibility is also that Sonnet supplied a binary-only library that Mac programmers had to use to access the card.


That was only your speculation, wasn't it? Mac programmers did not need any library to use the sonnet card. The card took almost whole hardware over and the onboard CPU was not seen by software anymore. It was only used to bypass the interrupts up to the sonnet card (using the doorbell register)
 

Offline mschulz

Re: Sonnet PPC PCI Card
« Reply #1 on: August 11, 2008, 10:44:29 PM »
Quote

da9000 wrote:
@mschulz:

I will ignore the apparent attitude in your reply


Sorry for that, I was in a really bad mood.

Quote

(how did you get access to said engineer, if I may ask?)


I have sent an email addressed at their support team. Since the support person was not able to answer my questions, he was so kind to forward my email to the screcendo/7200 engineer.

Quote

I've never been involved in those failed projects so I didn't know. Glad to know though. Could you provide pointers to the Freescale/Tundra docs?


They are *almost* in a non existing state anymore. The Freescale website forwards to the tundra.com. But there are no manuals for Tsi106 there anymore. I have found the MPC106UM file on some archive: link

Quote

Furthermore, if said information is all that's needed, what are you speculations as to why nobody has jumped the gun already?


because it would be pointless? First of all, you need a special sequence to start the CPU on the crescendo card. At least You need to feed the card with startup code and issue a #RESET signal on the PCI bus. The second, crescendo will see only the PCI bus. There would be no way to access all the Amiga hardware directly. It means, no direct input from kbd and mouse, no direct access to the Gfx chipset, no direct access to harddrive and floppy on the motherboard... Only the PCI bus. Moreover, indirect access to this hardware would be quite complex, like eg.:

1. The software on crescendo prepares some kind of request to the main CPU in it's own memory
2. The software on crescendo issues the interrupt on PCI bus
3. The main CPU (eg. the old mc68020) receves an interrupt and checks the crescendo's memory for request
4. The main CPU performs request (it may be slow since the snail CPU)
5. Upon completion of the request CPU sends a report to crescendo's main memory and issues interrupt on it by means of the doorbell register
6. The crescendo CPU analyses the mc68020's response....
...
n. The whole story begins again.

In short: it would be pain in ass. As someone said in this thread already, you could build a complete PCI system with crescendo... On x86 architecture life would be easier to some degree since almost any peripherial there is a PCI-compilant device visible on the PCI bus.