Performance (and other newbie ?'s)
DogP
Posts: 168
Hey,
I'm new to Propeller, but I'm familiar with microcontrollers, programming, etc. What I'm looking for is a good way to get TV and/or VGA output from a framebuffer stored in RAM (would be external to the Propeller). I've looked at a bunch of products to do this, and for the most part nothing has been powerful or cost effective enough to do this. I'm just a hobbiest looking to learn something new and create a video output that I've been wanting to make for years [noparse]:)[/noparse] . Looking at the screenshot of the racing game on the Hydra, it appears that this may be able to do what I want.
Anyway, I've looked through some documents and searched the forum, but I haven't really seen anything about the performance of these chips. Ideally, I'd like 50 frames/second, but I realize that there's a lot of data to be passed, but 25fps is really the minimum that would be useable. The buffer is about 20kbytes (384x224x2bpp). How fast is reading data from the I/O pins to internal memory? The data is transmitted sporadically at 20MHz, I assume I couldn't read the data directly into Propeller's memory at those rates, correct? I'm planning on using some simple logic chips to write it to SRAM, which can then be read and output to a display at the microcontroller's pace. Spin doesn't look too difficult to learn, and I assume I'd probably need some routines in ASM, I'm just wondering if this is even remotely possible.
I'm familiar with wiring circuits and everything... what's the recommended kit to get started? I'd prefer to get the DIP package and wire everything myself, since the demo board w/ the audio and everything is a waste of important I/O pins for me, and I'd like to be able to easily replace the chip if I fry it (like I've read happen to a few people). Is the education kit the way to go, or the DIP plus? Or should I just buy the bare chip and order the rest of the parts w/ my next parts order from Mouser? If I get the kit without the USB connection, how do I interface with it? Do I just need to rig up a serial cable, or is the USB adapter required?
Thanks,
Pat
I'm new to Propeller, but I'm familiar with microcontrollers, programming, etc. What I'm looking for is a good way to get TV and/or VGA output from a framebuffer stored in RAM (would be external to the Propeller). I've looked at a bunch of products to do this, and for the most part nothing has been powerful or cost effective enough to do this. I'm just a hobbiest looking to learn something new and create a video output that I've been wanting to make for years [noparse]:)[/noparse] . Looking at the screenshot of the racing game on the Hydra, it appears that this may be able to do what I want.
Anyway, I've looked through some documents and searched the forum, but I haven't really seen anything about the performance of these chips. Ideally, I'd like 50 frames/second, but I realize that there's a lot of data to be passed, but 25fps is really the minimum that would be useable. The buffer is about 20kbytes (384x224x2bpp). How fast is reading data from the I/O pins to internal memory? The data is transmitted sporadically at 20MHz, I assume I couldn't read the data directly into Propeller's memory at those rates, correct? I'm planning on using some simple logic chips to write it to SRAM, which can then be read and output to a display at the microcontroller's pace. Spin doesn't look too difficult to learn, and I assume I'd probably need some routines in ASM, I'm just wondering if this is even remotely possible.
I'm familiar with wiring circuits and everything... what's the recommended kit to get started? I'd prefer to get the DIP package and wire everything myself, since the demo board w/ the audio and everything is a waste of important I/O pins for me, and I'd like to be able to easily replace the chip if I fry it (like I've read happen to a few people). Is the education kit the way to go, or the DIP plus? Or should I just buy the bare chip and order the rest of the parts w/ my next parts order from Mouser? If I get the kit without the USB connection, how do I interface with it? Do I just need to rig up a serial cable, or is the USB adapter required?
Thanks,
Pat
Comments
You could have one COG read commands and data from the In/out Pins and write it to HUB RAM. While another COG could output the video.
Something that isn't all that hard to do.
I was reading another thread and FIFO memory was suggested... I didn't think about that before, but that probably would be most suitable for my purpose too. It'd save having to use a counter to increment the address, and it's dual ported so I can read it as it's being output, and it would simplify the timing between the output and the Propeller.
But does anyone know the speed that these can transfer data? I've got about 20KB that would need to be transferred in 10ms, and all of that data is output in 5ms (and then there's a 5ms wait before the next cycle)... would the Propeller be able to keep up with the output (so I'd only need a small amount of FIFO memory), or would I need all 10ms (needing about 10KB of FIFO memory)... or wouldn't it be able to handle these rates?
And for video output, is just one Cog typically needed, or would I need to use several? I'm just trying to figure out the most efficient way to do this.
Oh, and I found the answer for the USB/serial cable.
Thanks again,
Pat
For video, it depends on what kind of video and what resolution. TV takes one cog. Low resolution VGA takes one cog. High resolution VGA (1024 x 768) takes two cogs and also looks better (see Chip's tiled VGA driver).
Thanks,
Pat