View Single Post
Old 12 August 2021, 17:15   #57
pandy71
Registered User
 
Join Date: Jun 2010
Location: PL?
Posts: 2,771
Quote:
Originally Posted by Promilus View Post
@pandy - I wouldn't go that far. I mean:

That just isn't true. All this chip has over regular Cortex M is PIO itself. It's amiga-style fixed function program controlled unit. So like blitter and copper it has very limited instruction set but do things fast. And now... with CPLD you can easily make logic which handles all 23/24 address lines necessary for Amiga and 16/32 data lines and host of additional signals either 68k generated like VPA, AS, R/W etc. or chipset generated like IRQ which also has to be synced on either level, falling or rising edge and response should be in specific timeframe. You can't do that on Cortex-M microcontrollers, even such as RPI2040 with PIO. PIO is great to handle things many chips has to bitbang (like addressable RGB led protocols) or specific fast actions across few pins. It isn't well suited to handle parallel bus spanning over few dozens of signals. Also - it still would need decoding - what bus signal means and how to handle it, where inside ARM memory data should go etc. etc. With TI Sitara line you have GPMC which is capable of handling 16bit A500/600/2000 bus without much of a problem. And it can map all amiga space to ARM space so all you need is apply fixed offset to communicate with Amiga HW. Therefore it makes perfect sense to use such SoC if indeed parallel memory interface is required (and that's kind of architecture Amiga chipset has). RPi2040 just isn't suited for this. It's way better than STM32, yes, but still has a long way to go.
Depends - PIO is capable to shift IN or shift OUT up to 32 bits over single pin automatically (embedded programmable primitive SERDES) as such using shift register you can connect parallel bus to RP2040 and considering speed of the Amiga bus (280ns cycle) you can do a lot as RP2040 basic cycle is 7.5ns - and there is nothing wrong to sample Amiga clock and synchronize RP2040 to this clock so everything will be correct from timing perspective. Additionally shift register will do voltage translation (not sure about such hype around voltage translation - this is normal, easy to solve design task).
If you need lower latency then you can use multiple shift register (like 4x8bit to deal with 32 bits), you can use multiplexers (even analog one so bidirectional).

Instead single TI AM3358/AM5729 you can use 1$ RP2040 for single task (such as CIA emulation).
I agree about AM3358/AM5729 capabilities but they cost more so RP2040 is IMHO nice alternative to CPLD/FPGA at least on some functions. 133MHz is speed higher than offered by most of 5V CPLD's.
That's why i used this comparison.

Quote:
Originally Posted by Promilus View Post
All engineers takes a problem, analyze it, search for best tools for solving that problem and then apply solution. This thread is for something different. Author got himself a tool and now seeks a problem in Amiga hw which can be solved with it. And while there are some which might it doesn't make it perfect fit. It doesn't even make it reasonable. And FYI there's already pretty old solution from Cypress (PSoC4,5,6) which really has programmable IO matrix (CPLD like) and it didn't find its way into amiga before. Why the hell you think RPi should? All it has over solutions already on the market is community. You say about price... ppl spent money on hundred dolar chips (fpga like Cyclone V) and even more expensive boards to get performance way below level of 10$ ARM SoC (like H5 from Allwinner). Price alone doesn't make RPi "right" solution. And neither does PIO. And unless you show me how RP2040 handles emulation of e.g. Fat Agnus inside real amiga you shouldn't make such statements.
Fair except one thing - you talking about mass production, factory approach where it work like this - for hobbyist like most of us cleverly used cheap HW may be more attractive.
And to be honest i don't need to prove anything to you or anyone else - if RP2040 is capable to produce valid DVI video using PIO and software then it may be also capable to do things which are less time critical.
And if thread is read carefully then i'm quite skeptical about Agnus emulation due first, some internal logic is still not sufficiently documented secondly, relatively big number of I/O required to deal with RAM and CPU+RGA. Hope it is clear.
Beagle bone better than RP2040 - yes, no doubts on this but also it is more expensive especially if you think on single IC's emulation.
Agnus in RP2040 perhaps yes, perhaps no, no one tries for sure so why assume upfront that this is impossible.

Btw forgot to add - Cypress was expensive and as such not highly popular... And some wiling to spent hundreds of $ some others not... luckily there is still some shopping freedom - hope RP2040 based solutions will be affordable for anyone.
My internal RP2040 Amiga priorities are CIA's, Paula and Denise.

Last edited by pandy71; 12 August 2021 at 17:38.
pandy71 is offline  
 
Page generated in 0.09394 seconds with 11 queries