Welcome, Guest. Please login or register.
Amiga Kit Amiga Store Iridium Banner AMIStore App Store A1200/A600 4xIDE Interface

AuthorTopic: Gold 2.7 release for the Vampire accelerators  (Read 14774 times)

0 Members and 1 Guest are viewing this topic.

Offline Chucky

Re: Gold 2.7 release for the Vampire accelerators
« Reply #75 on: March 07, 2018, 04:46:27 PM »
Quote from: grond;837044
You clearly have no clue. A CPU built from discrete gates IS a CPU and thus not an emulation. Hence, it is _implemented_ using gates, not emulated.


Still what do you call something that "implements" after documentation instead of a real 1:1 copy of the real thing?  it is not even improved from a 1:1 copy.  but an ESTIMATE of the real thing.. it is as its best an interpretion of how it was designed.

well   guess that's why I call it a Simulation.
 

Offline LoadWB

Re: Gold 2.7 release for the Vampire accelerators
« Reply #76 on: March 07, 2018, 04:47:03 PM »
Maybe in a new thread?
 

Offline grond

Re: Gold 2.7 release for the Vampire accelerators
« Reply #77 on: March 07, 2018, 04:50:40 PM »
Quote from: Chucky;837046
Still what do you call something that "implements" after documentation instead of a real 1:1 copy of the real thing?


I don't understand the question. "Implements after documentation"?
 

Offline Chucky

Re: Gold 2.7 release for the Vampire accelerators
« Reply #78 on: March 07, 2018, 05:03:54 PM »
yes.  as it is not done as an exact copy.  it relies on the documentation of the cpu.  and we all know that documentation and real stuff is not always really true.
 

Offline grond

Re: Gold 2.7 release for the Vampire accelerators
« Reply #79 on: March 07, 2018, 05:08:17 PM »
Quote from: Chucky;837052
yes.  as it is not done as an exact copy.  it relies on the documentation of the cpu.  and we all know that documentation and real stuff is not always really true.


Which is why we even tested stuff that is documented as "undefined" on 020, 030, 040 and 060. Turned out that the undefined stuff was different on 020, 030 on the one hand and 040, 060 on the other. In such cases it was done as on the 040. You seem to have a very naive idea of how the 080 is being developed...
 

Offline Chucky

Re: Gold 2.7 release for the Vampire accelerators
« Reply #80 on: March 07, 2018, 05:17:45 PM »
Quote from: grond;837053
Which is why we even tested stuff that is documented as "undefined" on 020, 030, 040 and 060. Turned out that the undefined stuff was different on 020, 030 on the one hand and 040, 060 on the other. In such cases it was done as on the 040. You seem to have a very naive idea of how the 080 is being developed...


no  I just want to point out that it is done as an interpretion how it works.  so as it is not a 1:1 replica that is improved.. I have a hard time to call it an "implementation"  more interpretion.

and ACTUALLY! I have a hard time why it is so bad that it is called "emulation" as it ISN'T a 1:1 copy..  most of us does accept emulated stuff anyway?
(I mean.  95% of all my development of DiagROM is done in an Emulator)
 

Offline grond

Re: Gold 2.7 release for the Vampire accelerators
« Reply #81 on: March 07, 2018, 05:30:09 PM »
Quote from: Chucky;837054
no  I just want to point out that it is done as an interpretion how it works.  so as it is not a 1:1 replica that is improved.. I have a hard time to call it an "implementation"  more interpretion.


The 080 is an implementation of the 68k ISA, not of the 68040 or 060 or whatever. Just like the 060 is an implementation of the 68k ISA.

Quote
ACTUALLY! I have a hard time why it is so bad that it is called "emulation" as it ISN'T a 1:1 copy..  most of us does accept emulated stuff anyway?


Why insist on using a technically incorrect term? You can call a "current source" a "voltage source" but it will be wrong. But on the positive side it shows everybody that is skilled in the art that you have no clue.
 

Offline Chucky

Re: Gold 2.7 release for the Vampire accelerators
« Reply #82 on: March 07, 2018, 05:44:35 PM »
Quote from: grond;837055
The 080 is an implementation of the 68k ISA, not of the 68040 or 060 or whatever. Just like the 060 is an implementation of the 68k ISA.


BUT Motorola had the original information to work from.  not a interpretion of the manuals available.  they had the real thing.



Quote

Why insist on using a technically incorrect term? You can call a "current source" a "voltage source" but it will be wrong. But on the positive side it shows everybody that is skilled in the art that you have no clue.


WHY insist that it is built on something when it is built on an interpretion how it work?  JUST like any emulator is.  it is done after "best effort" but for sure not after the real thing.  for the user there is zero difference.  just different type of layers.     fpga is not emulation. NO!  true.  but the endresult is exactly as if it was.  the only difference was IF motorola replaced their ASIC and went FPGA with a 1:1 copy of their design.  THEN I would accept "implementation"    as the 080.  not a single bit is a real copy of it.

so it is just word-picking..  nothing else
 

Offline grond

Re: Gold 2.7 release for the Vampire accelerators
« Reply #83 on: March 07, 2018, 06:22:35 PM »
Quote from: Chucky;837056
BUT Motorola had the original information to work from.  not a interpretion of the manuals available.  they had the real thing.

Nonsense. They did the exact same thing: define the 68k ISA on paper and then build the chip. They didn't throw together a bunch of gates, looked what it did and then wrote the documentation...

And as already mentioned, we do have the "real thing": lots of Amigas with 68000, 020, 030, 040 and 060 to look at.

And btw, Motorola failed at implementing what they had written beforehand which is why there are the silicon errata documenting where they failed for which mask revision of the various 68k processors.

All operating systems, all compilers, all assemblers and all software are written abiding by the _documentation_ of the 68k ISA.


Quote
the only difference was IF motorola replaced their ASIC and went FPGA with a 1:1 copy of their design.

Since Motorola didn't implement any of their 68k using a synthesisable HDL, impossible. And if they did, they would just "interpret" their own ASIC, to use your shrewed terminology.


Quote
THEN I would accept "implementation"    as the 080.  not a single bit is a real copy of it.

Even if you refuse to accept that you are male, you won't be able to have babies. And nobody ever claimed the 080 was a "real copy" of anything. It is a real and very powerful implementation of the 68k ISA.
« Last Edit: March 07, 2018, 06:28:57 PM by grond »
 

guest11527

  • Guest
Re: Gold 2.7 release for the Vampire accelerators
« Reply #84 on: March 07, 2018, 06:49:37 PM »
Quote from: grond;837057
And nobody ever claimed the 080 was a "real copy" of anything. It is a real and very powerful implementation of the 68k ISA.

Does it really matter in the end? The point is: The FPGA does something pretty similar as the 68K (unfortunately, not always really the same and probably not yet good enough for my use case), and the concept avoids all the problems of software based emulators, namely inconsistent performance.

It's just a matter of naming, nothing else. If it walks like a duck, and talks like a duck... chance is, it is a duck.
 

Offline ShK

Re: Gold 2.7 release for the Vampire accelerators
« Reply #85 on: March 07, 2018, 07:18:06 PM »
Does CR-RW emulate CD-ROM? That's FPGA is, a CD-RW. And 080 is a 68k CPU.
 

Offline wawrzon

Re: Gold 2.7 release for the Vampire accelerators
« Reply #86 on: March 07, 2018, 08:21:18 PM »
Quote from: Chucky;837056
BUT..


but why do you come to every thread about apollo/vampire and raise completely insignificant issues, be it even insistance on your personally preferred naming convention, right or wrong?

the discussion about fpu precision, prior to your interruption is something essential and might actually have positive outcome for vampire customers, apparently it even already has. the question if fpga is implementation, emulation, simulation or whatever you fancy to call it, is completely hollow.
 

Offline Lord Aga

Re: Gold 2.7 release for the Vampire accelerators
« Reply #87 on: March 07, 2018, 09:09:42 PM »
Quote from: ShK;837060
Does CR-RW emulate CD-ROM? That's FPGA is, a CD-RW. And 080 is a 68k CPU.


And the 68020 is just a 68000 emulator because it copies the behavior of the 'original' (sometimes not very accurately). :lol:
Glory to the loud-mouthed Scotsman !
 

Offline wawrzon

Re: Gold 2.7 release for the Vampire accelerators
« Reply #88 on: March 07, 2018, 09:20:30 PM »
@thor and fpu experts

by the way allow me a quick question ot, as accidentaly a piece of code im working on touches the subject of precision. what do you think should i define or undefine DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS for m68k (with fpu assumably) in this respect?

Code: [Select]

// Double operations detection based on target architecture.
// Linux uses a 80bit wide floating point stack on x86. This induces double
// rounding, which in turn leads to wrong results.
// An easy way to test if the floating-point operations are correct is to
// evaluate: 89255.0/1e22. If the floating-point stack is 64 bits wide then
// the result is equal to 89255e-22.
// The best way to test this, is to create a division-function and to compare
// the output of the division with the expected result. (Inlining must be
// disabled.)
// On Linux,x86 89255e-22 != Div_double(89255.0/1e22)
#if defined(_M_X64) || defined(__x86_64__) || \
defined(__ARMEL__) || \
defined(_MIPS_ARCH_MIPS32R2)
#define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA)
#define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
#elif defined(_M_IX86) || defined(__i386__)
#if defined(_WIN32)
// Windows uses a 64bit wide floating point stack.
#define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
#else
#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
#endif  // _WIN32
#else
#error Target architecture was not detected as supported by Double-Conversion.
#endif
 

Offline ALB42

Re: Gold 2.7 release for the Vampire accelerators
« Reply #89 on: March 07, 2018, 09:24:54 PM »
Quote from: wawrzon;837066
@thor and fpu experts

by the way allow me a quick question ot, as accidentaly a piece of code im working on touches the subject of precision. what do you think should i define or undefine DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS for m68k (with fpu assumably) in this respect?

Code: [Select]
// Double operations detection based on target architecture.
// Linux uses a 80bit wide floating point stack on x86. This induces double
// rounding, which in turn leads to wrong results.

because 68881/68882 68040/68060 will also do so (use 80 bit like x86/x87) I would say for m68k this define should not be set, did you check what kind of code is switched with that define?