A request directed at any CPLD Programmers out there - DONE
RossH
Posts: 5,512
All,
I have a request to ask of any CPLD programmers out there - especially those who have a Hydra Xtreme card ...
As you may know, I have written the Catalina C compiler for the Propeller - this compiler can use the Hydra Xtreme card as additional program storage. Currently I can compile and run programs that use 96K bytes of RAM - 32K internally on the propeller and 64K on the Xtreme card.
The Xtreme is byte addressible, but only allows for only the first 64K of SRAM to be randomly accessed. But the Catalina C Compiler uses the Xtreme mainly for storing program code, and on the Propeller all code consists of 4-byte longs, not individual bytes. If the Xtreme had a mode that would support long addressing instead of byte addressing, Catalina would be able to use 256K of the SRAM instead of just 64K. I can easily change the compiler to use long addresses for code instead of byte addresses (it would still use byte addresses for data). All I need is someone who can reprogram the CPLD on the Xtreme to intepret addesses sent to it as long addresses instead of byte addresses. Essentially, an address sent to the Xtreme is internally multipled by 4 before use. Catalina will still read longs back as 4 individual byte reads, using the autoincrement mode of the Xtreme.
This mode may also be useful for other applications - If the byte you want happens not to be long aligned, simply send it the long address and then clock the Xtreme up to three times to get to the byte you need. This only needs to be done to access the first byte - after that the autoincrement mode of the Xtreme makes access as fast as it is now. I believe this would greatly enhance the use of the Xtreme - especially if the long or byte addressing mode were selectable at initialization time.
Any volunteers? Or comments?
Ross.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Catalina - a FREE C compiler for the Propeller - see Catalina
Post Edited (RossH) : 6/11/2009 7:31:11 AM GMT
I have a request to ask of any CPLD programmers out there - especially those who have a Hydra Xtreme card ...
As you may know, I have written the Catalina C compiler for the Propeller - this compiler can use the Hydra Xtreme card as additional program storage. Currently I can compile and run programs that use 96K bytes of RAM - 32K internally on the propeller and 64K on the Xtreme card.
The Xtreme is byte addressible, but only allows for only the first 64K of SRAM to be randomly accessed. But the Catalina C Compiler uses the Xtreme mainly for storing program code, and on the Propeller all code consists of 4-byte longs, not individual bytes. If the Xtreme had a mode that would support long addressing instead of byte addressing, Catalina would be able to use 256K of the SRAM instead of just 64K. I can easily change the compiler to use long addresses for code instead of byte addresses (it would still use byte addresses for data). All I need is someone who can reprogram the CPLD on the Xtreme to intepret addesses sent to it as long addresses instead of byte addresses. Essentially, an address sent to the Xtreme is internally multipled by 4 before use. Catalina will still read longs back as 4 individual byte reads, using the autoincrement mode of the Xtreme.
This mode may also be useful for other applications - If the byte you want happens not to be long aligned, simply send it the long address and then clock the Xtreme up to three times to get to the byte you need. This only needs to be done to access the first byte - after that the autoincrement mode of the Xtreme makes access as fast as it is now. I believe this would greatly enhance the use of the Xtreme - especially if the long or byte addressing mode were selectable at initialization time.
Any volunteers? Or comments?
Ross.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Catalina - a FREE C compiler for the Propeller - see Catalina
Post Edited (RossH) : 6/11/2009 7:31:11 AM GMT
Comments
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Suzuki SV1000S motorcycle
Thanks for responding. Andr
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Suzuki SV1000S motorcycle
I remembered a post from a wile ago about alternative firmware for HX512 card, see here:-
http://forums.parallax.com/showthread.php?p=796775
I'm not sure it's what you want but the OP may be able to tweak it for you.
Coley
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
PropGFX - The home of the Hybrid Development System and PropGFX Lite
Thanks - I'll enquire of the OP.
Ross.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Catalina - a FREE C compiler for the Propeller - see Catalina
I would assume that Andre' could do that.
You might want to send him a Private Message to ask him.
Bean.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There is a fine line between arrogance and confidence. Make sure you don't cross it...
·
It was Andr
Could be cool to learn Lattice tools.
Maybe I could be of some help with the hardware driver...
PS : I never reprogrammed the Xtreme CPLD·and·I did not make a cable to do it, so it could get me some time to be able to do it!
I have attached Andr
I've now built my CPLD programming cable - and found a couple of minor issues with the design as posted above - I've put my comments in a new topic here.
Ross.
P.S. I'm currently testing out epmoyer's clever mod for the HX512 - this looks like a much better solution than the one I proposed, since it maintains a high degree of compatibility with existing HX512 software.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Catalina - a FREE C compiler for the Propeller - see Catalina
Just to close this thread off - I have found that epmoyer's modified firmware does everything I need. See this thread
Thanks,
Ross.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Catalina - a FREE C compiler for the Propeller - see Catalina