It looks nice!
Are you selling as a kit?
The chip is supported by Turbo Pascal, so that should be interesting to try out.
Maybe it is possible to water-cool the chip ;)
And so, it seems like now is the right time to have an Am9511A APU Module. The design needed to take care of a few issues.
- The Am9511A runs at less than 3MHz, so to work directly of the RC2014 clock a 1/3 division circuit was required.
- Also, since it needs a 12V supply, a tiny Pololu 12V boost converter was used. Faster and cheaper than building my own.
For a while I've been promising myself to make an Am9511A APU Module for the RC2014.
And so, it seems like now is the right time to have an Am9511A APU Module. The design needed to take care of a few issues.
- The Am9511A runs at less than 3MHz, so to work directly of the RC2014 clock a 1/3 division circuit was required.
- Also, since it needs a 12V supply, a tiny Pololu 12V U3V12F12 boost regulator was used. Faster and cheaper than building my own.
I'll share the Module Eagle files shortly (once I've done some tidying).
Why did you use the nor gate to qualify mreq, rather than to eliminate the diode logic?
Mark
Why did you use the nor gate to qualify mreq, rather than to eliminate the diode logic?
--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/1f18fada-4659-4042-894e-5257214096a7o%40googlegroups.com.
I checked on the OSH Park link, and it's describing the board as a 4-layer board, which costs $77. Was the board uploaded with incorrect information?
Just to note that it is 3x for $77. Still expensive, if you’re not sharing.
P.
--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/d76f26aa-2557-484e-97f5-50808494e041o%40googlegroups.com.
Bulk is usually less expensive. So, if several (enough) of us pre-ordered and you had the boards made…
A bare board wouldn’t cost that much to mail, though it’d probably take a week to get here in the US.
Us state-siders can get the parts directly given a good parts list.
So, that is an idea other than several of us trying to replicate what you’ve done.
Also, I was wondering if anyone has done any work with the 8087?
Are there any patches for CP/M or Basic to make use of the APC?
I saw a video that showed that with the 8087 a system actually slowed slightly, except for math. 😊
Mike Sr.
--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/15cd6429-011c-4d3d-8138-b9b979d62fddn%40googlegroups.com.
Yeah, I am aware it is for 3 boards.
Was there a specific reason you went with 4-layer? The schematic is pretty simple and the board doesn't seem like it would have RF issues.
I think the board is fantastic, and it's nice to see your 9511 work come together this way.
Bulk is usually less expensive. So, if several (enough) of us pre-ordered and you had the boards made…
A bare board wouldn’t cost that much to mail, though it’d probably take a week to get here in the US.
Us state-siders can get the parts directly given a good parts list.
So, that is an idea other than several of us trying to replicate what you’ve done.
Also, I was wondering if anyone has done any work with the 8087?
Are there any patches for CP/M
zcc +rc2014 -subtype=cpm -v --list -m -SO3 --am9511 --max-allocs-per-node200000 @ftest.lst -o ftest -create-app
or Basic to make use of the APC?
*ALL*
How many, contingent upon final bare board costs, would be interested in being part of a bulk order.
We’d need some one to coordinate the payment process because I don’t have any way to do that.
Also, risk or no risk, I’d say pay before the boards are ordered to reduce Phillips risk, he can provide shipping information for a heavy First Class letter to N.Y.
Also, some “tip” to Phillip for his efforts and time involved.
As for the political situation, that could go “south” on either side of the “big pond” in a heartbeat, so anything we do has to be done accepting the risk without recrimination to Phillip if something goes wrong.
Right now 1 US Dollar is worth 1.4 Aussie Dollars (If I remember where Phillip is from correctly) My drop dead value is $25.00 US
So, we give it a week and see who responds, and whether we are in WW3 or not.
Phillip, I know this was a labor of love, but my Bible tells me that a Laborer is worthy of their hire. You need to be “meditating” on what compensation (“tip”) you feel is adequate for your efforts.
0509 and typing without my glasses. 😊
Mike Sr.
From: rc201...@googlegroups.com <rc201...@googlegroups.com> On Behalf Of Phillip Stevens
Sent: Wednesday, August 12, 2020 4:58 AM
To: RC2014-Z80 <rc201...@googlegroups.com>
Subject: Re: [rc2014-z80] Re: Am9511A APU Module for RC2014
mike_sr wrote:
--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/472af97f-03ce-4b9f-a35d-042d89d24fb4o%40googlegroups.com.
*ALL*
How many, contingent upon final bare board costs, would be interested in being part of a bulk order.
My drop dead value is $25.00 US.
So, we give it a week and see who responds, and whether we are in WW3 or not.
0509 and typing without my glasses. 😊
For a while I've been promising myself to make an Am9511A APU Module for the RC2014.And so, it seems like now is the right time to have an Am9511A APU Module.
So here's an OSH Park link for the Am9511A APU Module.
From the schematics I see that you use some logic to clock down the APU.
Is this required?
could the board be designed with its own clock signal?
The plastic 74 series probably disqualify it as mil std 883 board, although you can always argue that ceramic 54 series parts can be used instead.
Mil 883 parts must be hermetically sealed, so epoxy encapsulated 74xxx are not acceptable; it involves 168 hours of burn-in and lots of paperwork. Chain of custody must be enforced so eBay is obviously unacceptable. It s so expensive, even military has waived the requirements. You can buy ceramic parts from grey market for the mil883 look, but it is not mil883 without traceable chain of custody.
Bill
--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/cee22687-ff94-4874-b864-0508c0971bb4o%40googlegroups.com.
All parts are 100% tested. Commercial and Mil. Maybe I don't understand what you mean by "...production is 100%"
Phillip Stevens wrote:I found it interesting when researching the Am9511, that the MIL-STD-883 appeared all over the datasheet. I think it just means that the production is 100% tested, rather than being sample tested. Right?
Testing “on die” might be an inconsequential cost towards 100%. Microscopy being possible.
But, once the die is sliced, mounted and encapsulated we have the additional issue of grabbing each and every individual part, orienting it properly, inserting into a ZIF socket, running a test routine and then removing from the socket. Some of this happens anyway, but I am not sure how much slow down would occur even if they went wildly parallel in testing.
As for Mil-883, at this point with the obsolescence issues I’m not sure it really matters. Unless someone is planning on using the design in a military, aerospace or nuclear product? 😊
From my Cal Lab days I do know that repairing them can be a real challenge as some of the conformal coating can be hard to probe through and then getting it off to unsolder the part is fun, too.
And, after it’s tested good you have to restore the conformal coating. Yech.
Mike sr.
From: rc201...@googlegroups.com <rc201...@googlegroups.com> On Behalf Of Phillip Stevens
Sent: Friday, August 14, 2020 8:36 AM
To: RC2014-Z80 <rc201...@googlegroups.com>
--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/88adbbd9-e32b-4fd0-8659-d4631e93d237o%40googlegroups.com.
Phillip Stevens wrote:Been playing with my new shiny toy, and running a few benchmarks.It is difficult to get precise timing, because the z88dk-ticks emulator doesn't (yet) emulate the Am9511.But, given the nature of the results, it doesn't really matter for hand timing even plus or minus a second on any result.
TLDR, Generally using the APU results in between 4x speedup over math48, and a 3x speedup over math32 (eg Whetstone & n-body) and at the least about a 2x speedup over math48 (eg fasta).
TLDR, Generally using the APU results in between 4x speedup over math48, and a 3x speedup over math32 (eg Whetstone & n-body) and at the least about a 2x speedup over math48 (eg fasta).
Added support for APU long and integer types today.
So that, when using the sdcc compiler, long and integer multiplies, divides and modulus calculations are done by the APU.
Ran spectral-norm benchmark (yawn)... with the integer & long support added.
Only the integer multiply is additionally activated by the new code (along with the floating point code of course).
Using sdcc/newlib - RC2014 Z80 @ 7.3728Mhz
math32
28 minutes 57 seconds
am9511
6 min 35 seconds
For a while I've been promising myself to make an Am9511A APU Module for the RC2014.
To recap, the Am9511 was the first Arithmetic Processing Unit ever manufactured, from 1977, and the Am9511A came in 1979 (I think). It was licenced from AMD by Intel while they were getting their act together on floating point, and preceded their 8087 by a few years.It is a 16 bit processor, with internal 16 bit data paths. It has an external 8 bit data bus. It was designed to work effectively with 8080 processors, but with a little bit of glue could work with any CPU from that era.
I'll share the Module Eagle files shortly (once I've done some tidying).
And, I also committed as a stretch goal to integrate support for MS Basic 4.7.What was I thinking?
HLOAD
ok
? USR(0)
Hello World
0
The APU Module Eagle files and a set of Gerbers were attached, but are too big for Groups. Email me to Github @feilipu email for a copy, pleaseIf you only want one board, perhaps hold fire because there may be a way to get a partial kit from a UK source shortly.And, I also committed as a stretch goal to integrate support for MS Basic 4.7.What was I thinking?Well the stretch goal to have the APU working in MS Basic is now 90% done. All the standard maths calculations are now complete and working (+), (-), (*), (/), and (^ power).
Now, back to the final 10% of fixing transcendental functions...
For a while I've been promising myself to make an Am9511A APU Module for the RC2014.
To recap, the AMD Am9511 was the first Arithmetic Processing Unit ever commercially produced, from 1977, and the Am9511A came in 1979 (I think). It was licensed by Intel as the 8231A while they were getting their act together on floating point, and preceded their 8087 by a few years. It is a 16 bit processor, with internal 16 bit data paths, with an external 8 bit data bus. It was designed to work effectively with 8080 processors, but with a little bit of glue could work with any CPU from that era.
--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/604b6992-ec4d-4ded-8052-e7a6c58ca3b0o%40googlegroups.com.
If you've been following along with this thread, but haven't read the RC2014 Newsletter yet, you'll be pleased to know that the AM9511A APU is now available on Tindie; https://www.tindie.com/products/semachthemonkey/rc2014-am9511a-apu-arithmetic-processor/
;;;;;;; double calc
ld hl,z_0 ; Extend 16 bit z_0 to 32 bit
inc hl
ld a,(hl)
add a,a ; Put sign bit into carry
sbc a,a ; A = 0 if carry == 0, $FF otherwise
inc hl
ld (hl),a
inc hl
ld (hl),a
ld hl,z_1 ; Extend 16 bit z_1 to 32 bit
inc hl
ld a,(hl)
add a,a ; Put sign bit into carry
sbc a,a ; A = 0 if carry == 0, $FF otherwise
inc hl
ld (hl),a
inc hl
ld (hl),a
; z_2 = (z_0 * z_0 - z_1 * z_1) / scale;
; z_0 = z_2 + x;
; z_3 = 2 * z_0 * z_1 / scale;
; z_1 = z_3 + y;
ld hl,z_0
call asm_am9511_0_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_PTOD ; COMMAND for PTOD (push double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld a,__IO_APU_OP_DMUL ; COMMAND for DMUL (multiply lower)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld hl,z_0
call asm_am9511_1_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_PTOD ; COMMAND for PTOD (push double)
out (__IO_APU1_CONTROL),a ; ENTER a COMMAND
ld a,__IO_APU_OP_DADD ; COMMAND for DADD (add double)
out (__IO_APU1_CONTROL),a ; ENTER a COMMAND
ld hl,z_1
call asm_am9511_1_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_DMUL ; COMMAND for DMUL (multiply lower)
out (__IO_APU1_CONTROL),a ; ENTER a COMMAND
ld a,__IO_APU_OP_PTOD ; COMMAND for PTOD (push double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld hl,z_0_square
call asm_am9511_0_popl_hl ; POINTER TO RESULT IN HL
ld hl,z_1
call asm_am9511_0_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_PTOD ; COMMAND for PTOD (push double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld a,__IO_APU_OP_DMUL ; COMMAND for DMUL (multiply lower)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld hl,scale
call asm_am9511_1_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_DDIV ; COMMAND for DDIV (divide double)
out (__IO_APU1_CONTROL),a ; ENTER a COMMAND
ld a,__IO_APU_OP_PTOD ; COMMAND for PTOD (push double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld hl,z_1_square
call asm_am9511_0_popl_hl ; POINTER TO RESULT IN HL
ld a,__IO_APU_OP_DSUB ; COMMAND for DSUB (subtract double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld hl,scale
call asm_am9511_0_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_DDIV ; COMMAND for DDIV (divide double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld a,__IO_APU_OP_POPS ; COMMAND for POPS (pop single)
out (__IO_APU1_CONTROL),a ; ENTER a COMMAND
ld hl,y
call asm_am9511_1_pushi_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_SADD ; COMMAND for SADD (add single)
out (__IO_APU1_CONTROL),a ; ENTER a COMMAND
call asm_am9511_1_popi ; RESULT IN HL
ld (z_1),hl
ld a,__IO_APU_OP_POPS ; COMMAND for POPS (pop single)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld hl,x
call asm_am9511_0_pushi_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_SADD ; COMMAND for SADD (add single)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
call asm_am9511_0_popi ; RESULT IN HL
ld (z_0),hl
; if (z_0 * z_0 / scale + z_1 * z_1 / scale > 4 * scale)
ld hl,z_0_square
call asm_am9511_0_pushl_hl ; POINTER TO OPERAND IN HL
ld hl,z_1_square
call asm_am9511_0_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_DADD ; COMMAND for DADD (add double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld hl,scale
call asm_am9511_0_pushl_hl ; POINTER TO OPERAND IN HL
ld a,__IO_APU_OP_DDIV ; COMMAND for DDIV (divide double)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
ld a,__IO_APU_OP_POPS ; COMMAND for POPS (pop single)
out (__IO_APU0_CONTROL),a ; ENTER a COMMAND
call asm_am9511_0_popi ; RESULT IN HL
If you've been following along with this thread, but haven't read the RC2014 Newsletter yet, you'll be pleased to know that the AM9511A APU is now available on Tindie; https://www.tindie.com/products/semachthemonkey/rc2014-am9511a-apu-arithmetic-processor/A big thank you to Phillip for all the work he has put in designing this module and for the help in bringing it to market.Spencer
On Sat, 12 Sep 2020,, Phillip Stevens wrote:I've written some documentation for the Am9511A APU Module.Phillip Stevens wrote:For a while I've been promising myself to make an Am9511A APU Module for the RC2014.To recap, the AMD Am9511 was the first Arithmetic Processing Unit ever commercially produced, from 1977, and the Am9511A came in 1979 (I think). It was licensed by Intel as the 8231A while they were getting their act together on floating point, and preceded their 8087 by a few years. It is a 16 bit processor, with internal 16 bit data paths, with an external 8 bit data bus. It was designed to work effectively with 8080 processors, but with a little bit of glue could work with any CPU from that era.Enjoy, Phillip