Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

PIC Project advice - doubling frequency

Status
Not open for further replies.

coze

New Member
Hello everyone,

I'm new here. I set myself building a scandoubler for some of my computers which will double the horizontal frequency of their output signal. I did some research and now I have an idea about the whole project, but I need some advice to select the PIC and I hope you can give me some valuable advice.

Let me tell you more about the project. Well, actually the computer in question is an Amiga, which some of you may be familiar with. It outputs an analog RGB signal at 15.625 (for PAL versions) or 15.75 (NTSC) KHz. The RGB signal is generated by a video decoder from a 12 bit signal (4 bits for each color). I have examined some amiga schematics, and found out how to access the raw digital signals. The signal will compose of at most 720 pixels, coming as 12 bits of serial data, followed by a HSYNC signal at the end of the scanline. So what (I think) I have to do is,

listen to incoming scanline, copying every single pixel to RAM.
when a HSYNC pulse comes, Send the signal in the RAM to a DAC, at double (31 KHz) frequency, two times. At the same time listening to the next incoming scanline.

A scanline consists of 720 pixels at most, so I'll have to read 12 bits of data 720 times in a 15~KHz window, and I think I have to operate at something ~22MHz (I may have done the math wrong here). I also need a RAM that's capable of operating double this frequency (since sending will be at double speed).

I need 3 four bit DACs for the output, which is least of my concerns at the moment, but if it can be handled inside the Pic it would be great.

So far I have dealt with only 16F84A's, to build some homebrew keyboard, **broken link removed** interface converters for the Amiga. But I think this project exceeds the capabilities of the 16F84. I probably need a pic that can operate > 50 MHz.

another question is, is there a pic which could hold 720*2*12bit s of data in its own RAM ? or should a use an external Ram ? (and what could that be ?) If I need to use external Ram, maybe I can divide the receiving signal and sending signal processes between two pics.

Since the RGB signal is 12 bits, I'ld like a Pic with 24 I/O pins. Hmm 26 when I think about the HSYNC. Actually, it's also probably possible to use a MUX and share I/O's with amiga output and RGB input, but that's still require some pins to drive the MUX, so 14 I/O minimum I guess. Usage of external ram will probably increase this number though.

I'm open to all suggessions, many thanks for your time.
 
I'm an old Amiga user, and still have an A500 and A600 connected up, but I'm totally confused by your post?.

It's difficult to imagine what you're trying to do?, I can only imagine you're wanting to connect a VGA monitor to an Amiga?. But it's a stupid idea, and using a PIC is totally incorrect - it doesn't have anywhere near enough memory, and isn't fast enough.

The simple answer is to use a correct monitor!.
 
Hello,

thank you for the answer. Yes, I'm trying to connect it to a VGA monitor. My motivation is the fact that the old monitors which can scan down to 15KHz are dead/dying fast, and proper scandoublers for the Amiga cost > 100$ so I thought I could make my own cheaper as a hobby project. I heard it's possible to overclock Pics, so maybe it could be possible, or I'll go FPGA route instead.
 
You can certainly overclock PIC's, but it would still be no where near fast enough for the job, nor does it have anywhere near enough memory.

It's probably easier now to get a 'monitor' than it ever was, most modern TV's will accept RGB inputs and work fine as a monitor for an Amiga.
 
**broken link removed**

This only has a 3 bit/color DAC, but I'm sure you can just wedge another resistor in there to get another bit.

However, you'll have to add in a month or two of learning VHDL/verilog... Doable, but massive overkill, and I'd only suggest it if you seriously want to wander into the FPGA hobbyist camp...
 
I'm probably out of my depth here, not being a 'video signal guru' at all, but couldn't you just use CMOS logic? A PLL, some counters, and something for a xtal oscillator and you *theoretically* should be good to go.

I mean, sure an FPGA would do just fine, but sometimes its just easier to use pure logic. Google for things like 'logic frame capture'. I know its not what you want but it will provide most of the circuit you need, just needs a PLL.

I *think* that will work anyway, as I said, probably out of my depth.

Blueteeth
 
Hmm, that's pretty cheap. A big difference is that it doesn't have the included ram, but then again, that SDRAM on the Xess board isn't the easiest thing to be using either - thankfully they've written some VHDL to drive the thing.

The Spartan 3 chips have internal memory blocks, the XC3S100E has 4 of them, the XC3S200 has 12. They can be configured as 16x1K blocks of memory, so either would be enough to store 2 scanlines. The SDRAM on the Xess board could theoretically store an entire frame (or 160), but getting that beast to work would be tricky.
 
Last edited:
May I suggest "nonsense" instead of "stupid idea"?

I am affraid I had lots of those "stupid" ideas along the time but by myself or with the helpof somebody else, I survived and learnt a lot along the way.

/Edit> question mark added /End edit>
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top