I guess if I want to succeed in building this supercomputer, it would be better to keep my mouth shut and research the part datasheets in great detail.
Life is about many things. You can best succeed by doing your own research while utilizing your keen insights with the information you gain from the Parallax Forums. Many of these guys are deeply insightful professionals and way beyond the scope of most people's technical understanding. So you're likely to gain extremely good advice, and widely varied technical gains. The interpretations and incentives are left up to you.
Guess no one seems to be interested anymore, so I probably will shelve this project. (There seems to be no encouragement and guides anymore, so I guess I can say - I am about to give up.)
What's with all this giving up idea already?
Presumably you are doing this for your own satisfaction.
If so it matters not who is interested out here. Perhaps without "encouragement and guides" things will move more slowly, so what?
If not, well drop it if it's no fun by itself.
What is the worst that could happen? It's hard, you could fail to get anything working. Even worse we could all laugh at you for failing (mind you I don't see that happening around here much). Even as a failed project, and we have all had many even if we don't like to admit it, it can be seen as a success for you will have learned a great deal on the way.
Now, super computer or not, I like to see external RAM solutions for the Prop. Zog needs them:) I certainly don't have the hardware savy and the time to build them myself.
I have decided not to shelve my project - instead, I am still on it. I have read the patent which proved what jazzed was talking about.
I have been having a bad week, sorry. -____-; (I feel stupid, but at least I decided to stay on it,
no matter what.)
I am still collecting the parts, one at a time ('til I moves, then I may have better budget which then I would be able to hopefully afford to burn the hole in my pockets - the parts are expensive. But hey, it ain't stopping me from pursing my hobby!)
Apparently, my thread here have been in coma for a short time (also understandable - not very many are interesting in DIY supercomputer. There is also another one: Messin' with your Playstation 3 and/or HD video cards. I have both Cell BE addin card and AMD Radeon HD 4670 - all are personal supercomputer-on-chip.)
Cell BE is very hard to use: Wrong branch pointer, and the CPU will be loopin' and loopin' forever or crashes. It's not of PPE's fault but of SPEs' - they don't have a branch predictor (a very bad move on CPU design - bit STI [Sony, Toshiba and IBM alliance] in their behind.).
And Heater, I agree: Givin' the Propeller a big RAM would allow it to tackle the gnarly problems. Maybe Zog will get even more smarter! (I sure hope Zog don't plan on world domination...Just kiddin' ^___^ )
Also, about the failed project: I can always retry, as the hardware will still likely to be 100% good - we all make mistake on software, usually. And, I would have to tie the WP up high on Vdd as Propeller boots up to prevent the stupid mistake from overwriting the OS on the ROM (MRAM / FRAM / flash).
BTW, I have been a bit cautious about the Piezoelectric properties in the FRAM (which it takes advantage of) as I do not agree with few manufacturer: They claimed that FRAM can withstand X-ray. My question is: How much Gy/W (X-ray brightness) can this thing stand? I would doubt it, because of Auger electron pair stripping process X-ray (and of course, up to UV-B and sometimes UV-A) has on the material being irradiated - it can be erased. And, other - which I will try not to - it can also be erased if banged on the table hard - not all bits will be erased, some will just magically disappear enough to return "Bad CRC checksum".
I deal with X-ray very infrequent - but yes, I have erased couple of bit-locked EEPROMs, flash and OTP in the chip which is otherwise destined to be in landfills (the only destructive way to wipe ALL bits clean without destroying the circuitry or the whole die).
Here, I won't worry way too much about X-rays, because I knew about FRAMs way too well that I don't want it whirling down the toilets.
I am onto the simple hardware for now - it's in prototyping stage as of now (still have to collect the parts and the datasheet PDF) then I order the PCB - that's it. Afterward, I will do the same with Propeller II chips: start with just one or two then do up to 8. If they works, I am happy.
I am thinking if the Cyclone III will do nice job as the IO switcher (after all, this FPGA's cheap.) in the Propeller II array card - in the final hardware design...
And, I am thinking about using the LGA contacting method for the board, saving the boards from excessive wearing - Mill-max 855-22-008-30-001101 - this is the header I am going to test then buy more after I am truly satisfied with it - it's to allow me to stack the Propeller boards on the programmer board, from ground up. All I will need is set of screws and springs or spacers to hold them in - it's to kinda make it easier to try stack them or remove them as necessary. I just don't want to use some kind of header - the thin plastics have the habit of snapping apart (I have worked with CD drives, compact hardwares, and a XM radio - they all use funny SMD headers with very thin walls). I had to be quite careful as I pry them apart (so it can slide out slowly without bending the pins inside the headers)... After all, it's all about the trade-offs...
I have decided to go LGA on the PCB bottom so I can remove the Propeller boards off the programmer board quickly, to test the infrastructures.
Eventually... It hits me - why not use the 4U server case (two if applicable) for the Propeller II hardwares and a 2U chassis for the seed computer? That way I can keep the messy wires and the boards concealed within.
Although I felt that I can just use only one 4U case because I can make a self-sustainable supercomputer (after all, I can purchase a PowerPC microcontroller straight from Freescale cheaper that would work with the SATA hard drive and DVD drive I may be going to use in this system - to feed the data into Propeller II hardware and retrieve that processed data and store it onto the hard drive afterward) - both seed computer and Propeller II boards in the same case.
Also, I am thinking about using U-boot for the homebuilt custom motherboard (the board that Freescale MPC8377 is soldered on), so that it will not be a shot too much in the dark - then I may port the uCLinux (I will have to modify it to support the MMU that way the laptop DDR-II [cheaper] can be accessed by both Propeller II array controllers and even the CPU itself).
And, a side note: Why PCI-express? I am going to need the video so I will know what's going on in there. AMD Radeon HD 4350 video card's dirt cheap too (and the only processor known to get along with most PowerPC processors without too much malady - except for recent AMD processors potentionally based on PowerPC core [with up to six x86 decoders each cores], they won't care what kind of video card - after all, AMD paid attentions to tiny details!)
Also - I will thank RossH for recommending the Code:Block - this cross-compiler's neat and extremely useful! It has many favors of the compilers, including the PowerPC GCC compiler! (Mind you, I have been looking for the decent PowerPC compilers for a long time!)
Okay, here's some specification on the seed computer (and some FAQs).
I haven't started on it yet, as I have to mess with Propeller 1 chips for now.
And, anyone recommend cheap JTAG to USB chip? FTDI is fine, just tell me what worked great with whatever microcontroller you used, because I am going to be "on my own" with the PowerPC processor and they requires JTAG port to be used to write the boot firmware onto the FRAM / MRAM.
Okay, now that I got everything in eyesight - gettin' what I need. Then build the first board (with LGA spring-loaded probe headers), and do few more. And, finally do some FFT and / or mandebrol graphics calculation (Mandebrol is an advanced version of FFT, really. You can see when you zoom down that deep - no ends in there, it just keep going on. Awesome!)
Then when the Propeller II comes out, I will obtain the BGA version as it gives me a better insight of where electrical connection is where. And, it's nice to have smaller test board that doesn't take up too much space.
Also, I will be learning how to peek and poke in the FPGA because I am going to need them on Hypercube array. The topology is somewhat of a cross between Common Bus and Hypercube (because there are few more processors and RAMs - it's mostly to be able to deliver the data into the Propeller II chips and to prevent the PowerPC main processor's RAM from getting trashed - which the whole system would crash. x__x )
Why SRAM-based FPGA? It's totally configurable without the issue of wearing it down (flash-based FPGA is sadly only good for 500 cycles and then it's finished). After all, SRAM is plastic (in strict term, it's totally rewritable and nonviolative without life issues) - which offers me the best option for when I need to update the FPGA configuration / boot firmware RAM (such as when I find the suspicious electrical rule violation).
Yeah, sorry about it. I was under pressure last week. Anyways, what's not understood while it was about computer - it's a moving target. I have decided to freeze some of concepts so no more hopping around on what's best and what's worst, I will just go with what WILL work.
PowerPC is load-store RISC, same infrastructure as the Propeller II. They're different, but I was certain they will get along with each other fine (with some minor programming details). Linux would surely take care of some other details, though.
BTW, if you still don't understand, please ask question, and I will know what you mean and will try my best to answer your question.
I have been thinking if it should be done away with two Propeller II chips together for working on 80-bit IEEE-754-1994 floating points - or just speeded-up version of 64-bit CORDIC floating point. Would it be best to use two chips or can get away with just one? I am not sure, not at least with few GIPS to trade in for few hundred MFLOPS.
The Propeller II chips can have the floating point vectors on the SDRAM if it just need to hold onto it, then deal with other things, and then jump back. (It would be nice if it's possible to have the COGs execute out-of-order, so two threads, up to 4, both integer and psuedo-floating point can be done at the same times. I will have to eventually find out if it's possible to do that, then test the 3D graphic test to confirm that.)
Although, the Propeller II is superscalar in nature, which I have been observing a bit and read all of the fine prints on the soon-to-be-outdated Propeller II datasheet - up to 6 GIPS at 180 - 200MHz for 8 Integer Units (COGs could have two integer units already to assist with SPIN) sounds reasonable for that superscalar designs. If it's not capable of doing dynamic execution within the COG itself, then I guess I will just settle on the Pentium-like pipelines (which is already powerful enough to tackle the toughest SPIN codes - within the Propeller II)
So, I don't know if it's doable to be using two chips or more for that crazy speed boost in floating-point calculation - AI would already profit from the designs of COGs - it's all integer.
(Heard with some design, it wouldn't work - some processors would move the chunk of data, but the execution units would reject that packets. Could be the ECC that was programmed wrong.)
The Mill-max header arrived. I took a good look at it. Perfect for the task.
However, the Mill-max 855-XX-XXX-30-001101 header (mine's 855-22-008-30-001101 - 8 pins) should be derated very carefully - the pins are good for 3 Amps, but I would do half of what it's designed to handle, so I may possibly use all 8 pins for the power to prevent the browning on PCB from happening (as tiny point on the header can easily hit several hundred degrees to 1,000 degree in worst case scenario. Not what you want happening to your already-overloaded PCBs). Or I could feed the floppy disk power cables to it, or just any thick headers to deliver all of that brutal currents. (Even at 3.3 Volts, it can and could do impressive damages to the PCB - all traces can blow like fuses.) - 8 Propeller P8X32A chips will want to see 2.5 Amps Max. (actually 4 Amps as the RAM and its '573 latches are also involved).
So far so good, I will buy more of them for the IO, even though it's expensive. Better than using the other SMD headers which have the habits of snapping apart when you look at it funny.
Here's the outline for my planned software and some explanations - it also contain some hardware explanations to just cover what I was talking about in the OS development.
I am waiting to get the first look at Propeller II Tool so I could get the feeling of using this new compiler before whipping up the new software for that newer processors.
I may have to also put in two kind of interpreter into the PowerPC firmware as well - for two generation of Propeller (first being able to interpret older Propeller I machine codes into the Propeller II-compatible machine codes and the second being able to report the pin usage to prevent Propeller II from blowing themselves up) - along with the x86 interpreter for the x86-only Linux software I may have to use later on. I know of few problems, though - SPIN's a proprietary work of Chip Gracey's so I can't just start flying around with the run-time interpreter - without his permission.
I will order some more parts within few days providing thing goes well. (will go with FedEx to avoid surprise charges)
I will be getting the '573 latch and the 8-bit SDRAM and few other important parts. I will still stick with the BGA for the SDRAM and QFN for the several other parts as it's desirable to have some space left for the test header (to probe the data with oscilloscope or the storage DMM - Radio Shack sells that kind of meter, a bit pricey though.)
I am going to be putting it on a temporary hold. Not permanet... But, it would be til I get all of the stuff together, then start using Propeller II once it gets sold, and I may move it to a new thread.
Been wondering if I can hold it off for a while (I know some of you hate the delay - I have to postpone for a while... -_____-; )
I have been having some sleeplessness as the earthquake occured in Japan, I was worried about several friends there...
And, the whole month was not great at all, but definitely trying to hold myself together...
Yeah, I know. Just I have to also hold it off, though. But, I still am thinking up the best idea, as some people think that few encoding protocols I have been proposing is no good, but still - I definitely need to find a way to stuff the data rapidly through the traces. I may also develop the PDA based on Propeller II and it will need to have faster IO too, for the IDE or SATA 1.8 inch hard drive (containing the operating system that is easier to update via the USB SSD jump drive) and USB 2.0 ports via the Cyclone III FPGA.
The 50-bit encoding protocol was the first one off my mind so I would be able to transfer the data without getting corrupted by the strongly induced interference - like from the Realistic CB I have (rated for 3 Watts - strong enough to mess some digital IO up), so that way it's easier to recover the missing data, and if not successfully, that packet can be re-requested. Sometimes, the calculator's my best friend.
Still need to buy more part, although GreenDot's giving me some trouble... Ugh. T_____T
This is the first I have read this thread. The concept of a massively parallel system has always intrigued me, this is in part what got me interested in the Prop. Every day I dream of the day when I can afford enough Propellers and supporting HW to set up a 2 dimensional array where in each prop directly communicates with its 4 closest neighbors, and those on the outer edge provide system IO. With well written algorithms I feel that the time in processing would greatly out way the communication time, and only 1 cog per prop should have to be tied up by communication. In theory this kind of setup would work very well for any square array that has a power of two Props. Done well you should be able to average about 5 to 8MIPS, of usable crunching, per cog times 7 cogs per prop * 1024, 4096, 16384, or even 65536 Props, And if done with the Prop II then we should be able to get 80 to 90 MIPS per cog.
Yep. However, the communication bottleneck also comes from the software such as the electrical communication protocol to be handled by software - like MFM (Modified Frequency Modulation - like from ancient hard drives in early 80s - I have touched one, a BIG, heavy and noisy stuff), Spread-Spectrum Signaling and several other IO modulation favors. Also, the Propeller I / II may still have to sacrifice few COGs in the progress - if the Operating System (mostly the firmware's kernel) is written and done right, it's possible to just use one COG - at least in theory.
Also, my Propeller II cell set up would have up to 64MB SDRAM for each Propeller II itself so that way the FPGA controller's off-loaded - no need to touch the FPGA's RAMs unless the FPGA downloads onto the particular Propeller II's SDRAM so it's simpler that way (at least it won't be too much work writing the OS and to lighten the IO controller).
I have calculated if I go for 32 Propeller II chips, I can get several tens of GIPS (Giga-instructions per seconds) - however less with the emulated floating points (you still can have the other co-processors to do it if you want to).
When I got it dealt with - Whoosh, done! Then, I will start a new thread for Dendou Oni supercomputer. And, once I get it working, I would like to have few peoples to give me some SPIN software to punish it to see how well the whole thing holds up (after debugging all of the PowerPC host processor's and Propeller II array's firmware ROMs) without slowing down or crashing.
Since I have been thinking about Propeller PDA (Couldn't resist having that thing in my hand... That would be a bit more powerful than existing PDAs, although there are better ARM Cortex A9 versions on their ways.), I decided to maybe do this one first to learn the BASIC foundation in Propeller II's pin layout and some sophisticated COG programming (there may be two Propeller II chips if the desired DSP for the GPU usage is considered too expensive) before doing Dendou Oni.
And, in the end, I would be happy havng the better PDA than the one being sold nowaday as I may need the USB port and internal 1.8 inch spindle hard drive (I don't hate SSD, but there are few things that irks me - like rewriting cycle limits - up ro 300,000 rewriting before some NAND flash chips in the SSD fails completely so I decided to continue using noisy hard drive as it's much more reliable than flash chips in term of rewriting cycles - Magnetic RAM SSD, while it doesn't exist yet, may be much better - I would personally prefer to use this one). Having USB port will help completely as I wouldn't have to tote the laptop around - just write the SPIN software, and then plug the USB to RS232 converter into the PDA and have it burn the ROM image onto the Propeller I / II chip's EEPROM / MRAM / FeRAM.
However, by the look of the Parallax staffs, I may consider abandon my supercomputer project, unless you guys want me on it - I only want the opinions as I don't want them or you guys look bad. I just have to think about it for a while, as I was put on ignore list.
To Ken Gracey, I apologize if I did upset you in a way.
Maybe Ken wasn't upset, but I don't know... \ -___- /
Anyways, I decided not to axe this project, but I am being cautious now, though...
For now, I am going to re-learn the basic of FPGA programming, for that I am working on a VLIW processor, in several favors: From simple, four-lane In-order processor to advanced 512-bit VLIW Out-of-Order 64-bit processor. I am going with simple one as doing a real sophisticated and very powerful version will cost me lot of money (a Altera Cyclone 4 FPGA that's full-blown and in lidded FC-BGA package will go for $1,200 a pop).
As this project will require rapidly-acting packet switchers, for this reason, I am going back on FPGA basics so I gotta see what I am going to find out with what I am going to relearn. Hopefully...
My apologize if I did lash out... -____-; (I am autistic so I get discouraged way too easily...)
I still got unsoldered parts here;
Maxim I2C bridge
Propeller P8X32A QFN-44
Cypress 4MB SRAM (I decided to replace ISSI SDRAM with this, as this expensive RAM got 8x data bus... And I do have it.)
SiTime SiT8003 5MHz MEMS oscillator
FTDI USB to RS232 converter
FTDI Vinculum II (so I can access to USB hard drive to access data to test out any theory or even use USB keyboard)
3.3V LDO voltage regulator
Nichicon 2,200 uF SMD Low-ESR electrolyte polymer capacitor
(I would still buy Japanese components as they're already tested safe for radiation - I also prefer to use it, since they all have proven track record for having the longest life expectancy, even when tortured. I heard P8X32A used to be fabbed in Japan until Parallax Semiconductors started taking over the fabrication of P8X32A wafers...)
Still, I need to buy:
Low-ESR bypass ceramic capacitors
1A resettable fuse
USB receptacles (Type A and Mini-B)
RGB LED for activity indication
smaller FPGA for IO switchover
Yet, I may probably rummage over in my part box for some LED and USB to IDE controller as I already have old WD Caviar 40GB IDE hard drive I would use with Dendou Oni prototype hardware to save result on there. One teensy problem (maybe big one), is that there's no way to easily read NTFS - FAT32 tend to be a problem on 40GB hard drive (I had trouble recovering the data off larger hard drive with FAT32 so no more FAT32...) - I can live with EXT2FS, but I would like to hear some experience with using EXT2FS with Propeller, both good and bad, before I attempt that.
I would still buy Japanese components as they're already tested safe for radiation
Is that some kind of sick joke ?
I would imagine NTFS is out of the question. It has taken years for even Linux to get NTFS support. A huge project. Might be easier to port Linux to the Prop and then use NTFS from that. Clearly impossible.
Likewise ext file systems. I'm pretty sure no one has attempted such a thing.
Forget the politics and get back on this worthwhile project immediately!!! and use any autism to your advantage - you know what I'm talking about! You would be wise to follow Heater's advice too.
I have used Japanese components for a while - no failures yet, not even in a long time. I care about reliability... (I have repaired so many equipment so I am not alone in being aware of which failure rates is which.) Anyways, good point. NTFS seemed kinda like a bloatware, so it's dead in the water. I got EXT2FS source code, and I will take a look at the skeleton codes (basic structure files which main.c usually links to) to see if it's worth it squeezing every bits and bytes to the size that would fit the FRAM (64KB - this software should occupy 8KB or 16KB depending on routines Propeller would work with) after shearing the unnecessary data and instruction.
CD-ROM is too easy for Propeller to read for any data from, besides UFS is a simple file system that even older CD players can understand and find the binary WAV to read from the audio CD.
I may have to try and being patient with slow computer for now, until I can get my DIY computer out, designing the layout for Propeller test board.
I have thought of using two P8X32A QFN chips on one main board, that way I can just start out with two CPUs - I may also include two separate RS232 headers on that board to make firmware update on two processors simple. Alas, I am going to design it as a stackable system (two favors, spring-loaded header or pin headers - you choose, as I may make Gerber files available for you tweakers) - I am going to try and find the correct stencil for few layouts like QFN-44 as KiCAD don't have it (I had to make one, but I am not 100% sure if it's the right size for the P8X32A chip).
I am also thinking of using monster SDRAM from Micron Technologies, Inc. configured as x8 for two processors - The price for 32MB ones at Digikey is especially nice - about 8 to ten bucks, unfortunately, as I have heard, the website sometimes pin up "non-stocked" when they actually do, so it's hard to know. But I may eventually get them for this hardware, then button that stuff up and start playing with it.
BTW, "Country of Origin" shouldn't matter anymore - you decide, as it's actually your money to start out with.
BTW, "Country of Origin" shouldn't matter anymore - you decide, as it's actually your money to start out with.
Just think.. It matters on the passport. I expect big brains with borrowed super computing technology, inside autonomous humanoids doing traveling on a plane seat with check through (in the near future) will require it. At robotics conferences, robots arrived that had flown in their own plane seat.
Very true, although the components that arrives at the robot manufacturer's lines may matter, or not - it's entirely up to the hardware assembler (humans who build the prototype hardware and operate the Gerber analysis software that also control the PnP soldering machines building the motherboards, auxiliary robotic exoskeleton controller boards and so many boards that come along) - it would all boil down to the politics that will occur in the future: think The Matrix or better yet, The Akira. Think about it, as there is export embargo laws (even in Japan and USA, the export laws are the same, so is for the encrypted codes, software or documents). Eventually robots will have to get the passport: They will undeniably have both unexportable components and encrypted operating systems (even Linux will have to be encrypted so they don't go Bonnie and Clyde at the publics like Ghost in the Shell 2 - Innocence movie). So, it's actually fair for the droids to have passport like us, so that way it's easy for us to track down why is that particular robot missing - makes cops' works easier, like with us.
And, I decided to redo the PCB so you guys can reap the benefits of having the headers. I am halfway done with the first rev. of master processor board, as you will see in the floorplan note, there will be few more flavors. And when I am DONE with the PCB, I will give out the pin layout (for SDRAM : P8X32A CPU) with Gerber files for anyone who want to mess around with Jazzed's fabulous SDRAM driver so you guys can test it after soldering everything.
P. S. If you guys couldn't find the SDRAM but want that certain brand and size - try going to its manufacturer. Some, like Micron Technologies, Inc. will sell it directly to ya. I have decided to probably buy directly to avoid the mishap or disappointment, from MTI. I saved the part catalog on MTI website to do through for BGA-54 x8 SDRAM for my prototyping hardware. They seems to have zillions of flavors, so please search carefully so you guys can avoid the same mistake I made few months ago (and I am still saving that x32 SDRAM).
Comments
What's with all this giving up idea already?
Presumably you are doing this for your own satisfaction.
If so it matters not who is interested out here. Perhaps without "encouragement and guides" things will move more slowly, so what?
If not, well drop it if it's no fun by itself.
What is the worst that could happen? It's hard, you could fail to get anything working. Even worse we could all laugh at you for failing (mind you I don't see that happening around here much). Even as a failed project, and we have all had many even if we don't like to admit it, it can be seen as a success for you will have learned a great deal on the way.
Now, super computer or not, I like to see external RAM solutions for the Prop. Zog needs them:) I certainly don't have the hardware savy and the time to build them myself.
I have been having a bad week, sorry. -____-; (I feel stupid, but at least I decided to stay on it,
no matter what.)
I am still collecting the parts, one at a time ('til I moves, then I may have better budget which then I would be able to hopefully afford to burn the hole in my pockets - the parts are expensive. But hey, it ain't stopping me from pursing my hobby!)
Apparently, my thread here have been in coma for a short time (also understandable - not very many are interesting in DIY supercomputer. There is also another one: Messin' with your Playstation 3 and/or HD video cards. I have both Cell BE addin card and AMD Radeon HD 4670 - all are personal supercomputer-on-chip.)
Cell BE is very hard to use: Wrong branch pointer, and the CPU will be loopin' and loopin' forever or crashes. It's not of PPE's fault but of SPEs' - they don't have a branch predictor (a very bad move on CPU design - bit STI [Sony, Toshiba and IBM alliance] in their behind.).
And Heater, I agree: Givin' the Propeller a big RAM would allow it to tackle the gnarly problems. Maybe Zog will get even more smarter! (I sure hope Zog don't plan on world domination...Just kiddin' ^___^ )
Also, about the failed project: I can always retry, as the hardware will still likely to be 100% good - we all make mistake on software, usually. And, I would have to tie the WP up high on Vdd as Propeller boots up to prevent the stupid mistake from overwriting the OS on the ROM (MRAM / FRAM / flash).
BTW, I have been a bit cautious about the Piezoelectric properties in the FRAM (which it takes advantage of) as I do not agree with few manufacturer: They claimed that FRAM can withstand X-ray. My question is: How much Gy/W (X-ray brightness) can this thing stand? I would doubt it, because of Auger electron pair stripping process X-ray (and of course, up to UV-B and sometimes UV-A) has on the material being irradiated - it can be erased. And, other - which I will try not to - it can also be erased if banged on the table hard - not all bits will be erased, some will just magically disappear enough to return "Bad CRC checksum".
I deal with X-ray very infrequent - but yes, I have erased couple of bit-locked EEPROMs, flash and OTP in the chip which is otherwise destined to be in landfills (the only destructive way to wipe ALL bits clean without destroying the circuitry or the whole die).
Here, I won't worry way too much about X-rays, because I knew about FRAMs way too well that I don't want it whirling down the toilets.
I am thinking if the Cyclone III will do nice job as the IO switcher (after all, this FPGA's cheap.) in the Propeller II array card - in the final hardware design...
And, I am thinking about using the LGA contacting method for the board, saving the boards from excessive wearing - Mill-max 855-22-008-30-001101 - this is the header I am going to test then buy more after I am truly satisfied with it - it's to allow me to stack the Propeller boards on the programmer board, from ground up. All I will need is set of screws and springs or spacers to hold them in - it's to kinda make it easier to try stack them or remove them as necessary. I just don't want to use some kind of header - the thin plastics have the habit of snapping apart (I have worked with CD drives, compact hardwares, and a XM radio - they all use funny SMD headers with very thin walls). I had to be quite careful as I pry them apart (so it can slide out slowly without bending the pins inside the headers)... After all, it's all about the trade-offs...
I have decided to go LGA on the PCB bottom so I can remove the Propeller boards off the programmer board quickly, to test the infrastructures.
Eventually... It hits me - why not use the 4U server case (two if applicable) for the Propeller II hardwares and a 2U chassis for the seed computer? That way I can keep the messy wires and the boards concealed within.
Although I felt that I can just use only one 4U case because I can make a self-sustainable supercomputer (after all, I can purchase a PowerPC microcontroller straight from Freescale cheaper that would work with the SATA hard drive and DVD drive I may be going to use in this system - to feed the data into Propeller II hardware and retrieve that processed data and store it onto the hard drive afterward) - both seed computer and Propeller II boards in the same case.
And, a side note: Why PCI-express? I am going to need the video so I will know what's going on in there. AMD Radeon HD 4350 video card's dirt cheap too (and the only processor known to get along with most PowerPC processors without too much malady - except for recent AMD processors potentionally based on PowerPC core [with up to six x86 decoders each cores], they won't care what kind of video card - after all, AMD paid attentions to tiny details!)
Also - I will thank RossH for recommending the Code:Block - this cross-compiler's neat and extremely useful! It has many favors of the compilers, including the PowerPC GCC compiler! (Mind you, I have been looking for the decent PowerPC compilers for a long time!)
I haven't started on it yet, as I have to mess with Propeller 1 chips for now.
And, anyone recommend cheap JTAG to USB chip? FTDI is fine, just tell me what worked great with whatever microcontroller you used, because I am going to be "on my own" with the PowerPC processor and they requires JTAG port to be used to write the boot firmware onto the FRAM / MRAM.
Then when the Propeller II comes out, I will obtain the BGA version as it gives me a better insight of where electrical connection is where. And, it's nice to have smaller test board that doesn't take up too much space.
Also, I will be learning how to peek and poke in the FPGA because I am going to need them on Hypercube array. The topology is somewhat of a cross between Common Bus and Hypercube (because there are few more processors and RAMs - it's mostly to be able to deliver the data into the Propeller II chips and to prevent the PowerPC main processor's RAM from getting trashed - which the whole system would crash. x__x )
Why SRAM-based FPGA? It's totally configurable without the issue of wearing it down (flash-based FPGA is sadly only good for 500 cycles and then it's finished). After all, SRAM is plastic (in strict term, it's totally rewritable and nonviolative without life issues) - which offers me the best option for when I need to update the FPGA configuration / boot firmware RAM (such as when I find the suspicious electrical rule violation).
PowerPC is load-store RISC, same infrastructure as the Propeller II. They're different, but I was certain they will get along with each other fine (with some minor programming details). Linux would surely take care of some other details, though.
BTW, if you still don't understand, please ask question, and I will know what you mean and will try my best to answer your question.
I have been thinking if it should be done away with two Propeller II chips together for working on 80-bit IEEE-754-1994 floating points - or just speeded-up version of 64-bit CORDIC floating point. Would it be best to use two chips or can get away with just one? I am not sure, not at least with few GIPS to trade in for few hundred MFLOPS.
The Propeller II chips can have the floating point vectors on the SDRAM if it just need to hold onto it, then deal with other things, and then jump back. (It would be nice if it's possible to have the COGs execute out-of-order, so two threads, up to 4, both integer and psuedo-floating point can be done at the same times. I will have to eventually find out if it's possible to do that, then test the 3D graphic test to confirm that.)
Although, the Propeller II is superscalar in nature, which I have been observing a bit and read all of the fine prints on the soon-to-be-outdated Propeller II datasheet - up to 6 GIPS at 180 - 200MHz for 8 Integer Units (COGs could have two integer units already to assist with SPIN) sounds reasonable for that superscalar designs. If it's not capable of doing dynamic execution within the COG itself, then I guess I will just settle on the Pentium-like pipelines (which is already powerful enough to tackle the toughest SPIN codes - within the Propeller II)
So, I don't know if it's doable to be using two chips or more for that crazy speed boost in floating-point calculation - AI would already profit from the designs of COGs - it's all integer.
(Heard with some design, it wouldn't work - some processors would move the chunk of data, but the execution units would reject that packets. Could be the ECC that was programmed wrong.)
And you can drop in the hints.
However, the Mill-max 855-XX-XXX-30-001101 header (mine's 855-22-008-30-001101 - 8 pins) should be derated very carefully - the pins are good for 3 Amps, but I would do half of what it's designed to handle, so I may possibly use all 8 pins for the power to prevent the browning on PCB from happening (as tiny point on the header can easily hit several hundred degrees to 1,000 degree in worst case scenario. Not what you want happening to your already-overloaded PCBs). Or I could feed the floppy disk power cables to it, or just any thick headers to deliver all of that brutal currents. (Even at 3.3 Volts, it can and could do impressive damages to the PCB - all traces can blow like fuses.) - 8 Propeller P8X32A chips will want to see 2.5 Amps Max. (actually 4 Amps as the RAM and its '573 latches are also involved).
So far so good, I will buy more of them for the IO, even though it's expensive. Better than using the other SMD headers which have the habits of snapping apart when you look at it funny.
I am waiting to get the first look at Propeller II Tool so I could get the feeling of using this new compiler before whipping up the new software for that newer processors.
I may have to also put in two kind of interpreter into the PowerPC firmware as well - for two generation of Propeller (first being able to interpret older Propeller I machine codes into the Propeller II-compatible machine codes and the second being able to report the pin usage to prevent Propeller II from blowing themselves up) - along with the x86 interpreter for the x86-only Linux software I may have to use later on. I know of few problems, though - SPIN's a proprietary work of Chip Gracey's so I can't just start flying around with the run-time interpreter - without his permission.
Or would I just keep at it? I am not going to ditch the hardware, just the software. That's it. (Software are easily interchangeable.)
Keep in mind, you guys have plentiful of time as I am still on prototype P8X32A board to mimic the actual Propeller II hardware.
I will be getting the '573 latch and the 8-bit SDRAM and few other important parts. I will still stick with the BGA for the SDRAM and QFN for the several other parts as it's desirable to have some space left for the test header (to probe the data with oscilloscope or the storage DMM - Radio Shack sells that kind of meter, a bit pricey though.)
I have been having some sleeplessness as the earthquake occured in Japan, I was worried about several friends there...
And, the whole month was not great at all, but definitely trying to hold myself together...
The 50-bit encoding protocol was the first one off my mind so I would be able to transfer the data without getting corrupted by the strongly induced interference - like from the Realistic CB I have (rated for 3 Watts - strong enough to mess some digital IO up), so that way it's easier to recover the missing data, and if not successfully, that packet can be re-requested. Sometimes, the calculator's my best friend.
Still need to buy more part, although GreenDot's giving me some trouble... Ugh. T_____T
Also, my Propeller II cell set up would have up to 64MB SDRAM for each Propeller II itself so that way the FPGA controller's off-loaded - no need to touch the FPGA's RAMs unless the FPGA downloads onto the particular Propeller II's SDRAM so it's simpler that way (at least it won't be too much work writing the OS and to lighten the IO controller).
I have calculated if I go for 32 Propeller II chips, I can get several tens of GIPS (Giga-instructions per seconds) - however less with the emulated floating points (you still can have the other co-processors to do it if you want to).
When I got it dealt with - Whoosh, done! Then, I will start a new thread for Dendou Oni supercomputer. And, once I get it working, I would like to have few peoples to give me some SPIN software to punish it to see how well the whole thing holds up (after debugging all of the PowerPC host processor's and Propeller II array's firmware ROMs) without slowing down or crashing.
And, in the end, I would be happy havng the better PDA than the one being sold nowaday as I may need the USB port and internal 1.8 inch spindle hard drive (I don't hate SSD, but there are few things that irks me - like rewriting cycle limits - up ro 300,000 rewriting before some NAND flash chips in the SSD fails completely so I decided to continue using noisy hard drive as it's much more reliable than flash chips in term of rewriting cycles - Magnetic RAM SSD, while it doesn't exist yet, may be much better - I would personally prefer to use this one). Having USB port will help completely as I wouldn't have to tote the laptop around - just write the SPIN software, and then plug the USB to RS232 converter into the PDA and have it burn the ROM image onto the Propeller I / II chip's EEPROM / MRAM / FeRAM.
However, by the look of the Parallax staffs, I may consider abandon my supercomputer project, unless you guys want me on it - I only want the opinions as I don't want them or you guys look bad. I just have to think about it for a while, as I was put on ignore list.
To Ken Gracey, I apologize if I did upset you in a way.
Anyways, I decided not to axe this project, but I am being cautious now, though...
For now, I am going to re-learn the basic of FPGA programming, for that I am working on a VLIW processor, in several favors: From simple, four-lane In-order processor to advanced 512-bit VLIW Out-of-Order 64-bit processor. I am going with simple one as doing a real sophisticated and very powerful version will cost me lot of money (a Altera Cyclone 4 FPGA that's full-blown and in lidded FC-BGA package will go for $1,200 a pop).
As this project will require rapidly-acting packet switchers, for this reason, I am going back on FPGA basics so I gotta see what I am going to find out with what I am going to relearn. Hopefully...
I still got unsoldered parts here;
Maxim I2C bridge
Propeller P8X32A QFN-44
Cypress 4MB SRAM (I decided to replace ISSI SDRAM with this, as this expensive RAM got 8x data bus... And I do have it.)
SiTime SiT8003 5MHz MEMS oscillator
FTDI USB to RS232 converter
FTDI Vinculum II (so I can access to USB hard drive to access data to test out any theory or even use USB keyboard)
3.3V LDO voltage regulator
Nichicon 2,200 uF SMD Low-ESR electrolyte polymer capacitor
(I would still buy Japanese components as they're already tested safe for radiation - I also prefer to use it, since they all have proven track record for having the longest life expectancy, even when tortured. I heard P8X32A used to be fabbed in Japan until Parallax Semiconductors started taking over the fabrication of P8X32A wafers...)
Still, I need to buy:
Low-ESR bypass ceramic capacitors
1A resettable fuse
USB receptacles (Type A and Mini-B)
RGB LED for activity indication
smaller FPGA for IO switchover
Yet, I may probably rummage over in my part box for some LED and USB to IDE controller as I already have old WD Caviar 40GB IDE hard drive I would use with Dendou Oni prototype hardware to save result on there. One teensy problem (maybe big one), is that there's no way to easily read NTFS - FAT32 tend to be a problem on 40GB hard drive (I had trouble recovering the data off larger hard drive with FAT32 so no more FAT32...) - I can live with EXT2FS, but I would like to hear some experience with using EXT2FS with Propeller, both good and bad, before I attempt that.
Is that some kind of sick joke ?
I would imagine NTFS is out of the question. It has taken years for even Linux to get NTFS support. A huge project. Might be easier to port Linux to the Prop and then use NTFS from that. Clearly impossible.
Likewise ext file systems. I'm pretty sure no one has attempted such a thing.
CD-ROM is too easy for Propeller to read for any data from, besides UFS is a simple file system that even older CD players can understand and find the binary WAV to read from the audio CD.
I may have to try and being patient with slow computer for now, until I can get my DIY computer out, designing the layout for Propeller test board.
I am also thinking of using monster SDRAM from Micron Technologies, Inc. configured as x8 for two processors - The price for 32MB ones at Digikey is especially nice - about 8 to ten bucks, unfortunately, as I have heard, the website sometimes pin up "non-stocked" when they actually do, so it's hard to know. But I may eventually get them for this hardware, then button that stuff up and start playing with it.
BTW, "Country of Origin" shouldn't matter anymore - you decide, as it's actually your money to start out with.
And, I decided to redo the PCB so you guys can reap the benefits of having the headers. I am halfway done with the first rev. of master processor board, as you will see in the floorplan note, there will be few more flavors. And when I am DONE with the PCB, I will give out the pin layout (for SDRAM : P8X32A CPU) with Gerber files for anyone who want to mess around with Jazzed's fabulous SDRAM driver so you guys can test it after soldering everything.