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.

I need a PROM CPU

Status
Not open for further replies.

Athosworld

Member
I am making a game console that outputs an AV signal to the TV, I need a one time programmable (in this case, in factory) PROM that I can put into an epoxy blob (COB) to serve as the CPU, NOR flash reader and AV processor of the console.

Requirements:
1.Work with a crystal oscillator.
2.Only the bare die.
3.Must have 40 GPIO.
4.Must be PROM.
5.Must have PWM.
 
PROM that I can put into an epoxy blob (COB) to serve as the CPU, NOR flash reader and AV processor

PROM is just memory. It does not serve as anything except memory?

An "AV Processor" is an extremely complex device and you need provide a lot more info on what you expect it to do!

And clarify what you mean by a "NOR flash reader" ???

Also note that you cannot output current 3D game video quality without both a very powerful CPU and a dedicated GPU.

You don't get things like that, that you can fit in a COB resin blob!


You could get all-in-one simple game ICs at one time, though those were not CPU based but totally custom logic - like integrating a TTL logic "Pong" game and variations in to a single IC.
eg. AY-3-5-8500 / 86xx / 87xx

(The 8700 Tanks one was rather good, for around 1980!)


You may be able to do something like retro game stuff with such as a PIC32MZ-DA, though it's still large and complex setup.


That has a built in video controller with 2D graphics acceleration and 2K flash. It would need additional external program memory for most applications, plus it external needs DDR RAM unless you use the version with the piggyback RAM.

The CPU is a BGA packaged device.

However, as with many MCUs and other components, there is a massive order backlog due to shutdowns from COVID-19... Mouser are predicting availability of the MCU ICs around next October...



The development kits are easier to get - a couple of months for this one, or some suppliers may have one:

And you can get this one direct from Microchip or Mouser etc.
 
PROM is just memory. It does not serve as anything except memory?

An "AV Processor" is an extremely complex device and you need provide a lot more info on what you expect it to do!

And clarify what you mean by a "NOR flash reader" ???

Also note that you cannot output current 3D game video quality without both a very powerful CPU and a dedicated GPU.

You don't get things like that, that you can fit in a COB resin blob!


You could get all-in-one simple game ICs at one time, though those were not CPU based but totally custom logic - like integrating a TTL logic "Pong" game and variations in to a single IC.
eg. AY-3-5-8500 / 86xx / 87xx

(The 8700 Tanks one was rather good, for around 1980!)


You may be able to do something like retro game stuff with such as a PIC32MZ-DA, though it's still large and complex setup.


That has a built in video controller with 2D graphics acceleration and 2K flash. It would need additional external program memory for most applications, plus it external needs DDR RAM unless you use the version with the piggyback RAM.

The CPU is a BGA packaged device.

However, as with many MCUs and other components, there is a massive order backlog due to shutdowns from COVID-19... Mouser are predicting availability of the MCU ICs around next October...



The development kits are easier to get - a couple of months for this one, or some suppliers may have one:

And you can get this one direct from Microchip or Mouser etc.
The AV processor will just be an interfeace from the generated content to something that can be displayed on a TV.
I need the “CPU” to read the contents of a NOR flash (Matronix), run them and execute them on boot.
I don’t plan using 3D graphics, the console will have Famicom-like processing power.
I need something similar to a NOAC.
 
the console will have Famicom-like processing power.
The famicom had a 1MHz 6502 variant. Now, most 8 bit micros have more power than that.

I wrote many games for the famicom (NES outside Japan) and the limit was 2K RAM and normally 32k ROM.

With a slow processor like that all coding will need to be ASM.

Mike.
 
Last edited:
The AV processor will just be an interfeace from the generated content
What is supposed to be "Generating the content" ??

If it's part of the same device and you intend to use memory-only cartridges or cards (as opposed to video-producing modules), then you need a full VGA-style graphics display system, even if only a 2D pixel array, for the image data to be store in and rasterised for each frame.

I'd strongly suggest you build a prototype using actual components and ignoring final size limits, to get a practical understanding of what is involved, before going any further, as I don't think you understand the complexity of what you are asking for.

In reality, I think the simplest and cheapest option would be one of the Raspberry Pi style CPU ICs that has a GPU and I/O etc. built in.

It's still a multi-chip system overall though.

It may be possible to create such a system in one of the high end FPGA type devices, but the cost for one device with that capability is likely $50+ unless you are buying them in tens of thousands.
(And the ICs are still waaay bigger than COB style blobs are appropriate for).
 
What is supposed to be "Generating the content" ??

If it's part of the same device and you intend to use memory-only cartridges or cards (as opposed to video-producing modules), then you need a full VGA-style graphics display system, even if only a 2D pixel array, for the image data to be store in and rasterised for each frame.

I'd strongly suggest you build a prototype using actual components and ignoring final size limits, to get a practical understanding of what is involved, before going any further, as I don't think you understand the complexity of what you are asking for.

In reality, I think the simplest and cheapest option would be one of the Raspberry Pi style CPU ICs that has a GPU and I/O etc. built in.

It's still a multi-chip system overall though.

It may be possible to create such a system in one of the high end FPGA type devices, but the cost for one device with that capability is likely $50+ unless you are buying them in tens of thousands.
(And the ICs are still waaay bigger than COB style blobs are appropriate for).
The generated content is the data that will be sent to the TV for processing.

The Raspberry Pi is not an option, because I want a coding and prototyping challenge, so I better try an FPGA or an ATMEL AVR ATmega328p in die.
 
The generated content is the data that will be sent to the TV for processing.
You don't appear to have considered the most basic requirements.

You send composite video or HDMI signals to a TV. That has to be done continuously at a fixed rate.

For a basic analog system such as old-style video games with composite or component video out, to run as just 640x480 pixels graphics and 25/30 frames per second, you need to move around 13 million pixels data per second, with anything from one to three bytes per pixel if you want colour.

A 640x480 display needs 307,200 pixels.

At just one bit per pixel (monochrome, no grey scale) you can just do in in some very! fast MCUs, using almost 40K Bytes RAM.

If you want colour packed in to 8 bits, that jumps to 307 KBytes; for 24 bit colour, multiply by three, so roughly a megabyte.

For any HDMI video out you need dedicated HDMI capable hardware.


The ATMega has only 2K ram and an 8 bit CPU with not a fraction of the speed required.


This design is outputting a character-only display using a single IC MCU - the most minimal design I've ever seen; it uses a 32 bit CPU capable of running at 50MHz has 32K RAM built in, costing under 10-
It uses the serial hardware to output a one-bit video stream.



ps. I never suggested using a Raspberry Pi board - I said use the CPU.

Even the one used in the Pi Nano can be set up to produce a basic analog colour video signal - at 82 pence or roughly $1 each..

Info on using that:

The more powerful Pi CPUs with full GPU included as used on the more powerful Pi's are more expensive, but vastly more powerful and can produce HDMI video.


And note that old consoles like the Famicom / NES & early home computers with graphics, that had 8 bit CPUs, always had a dedicated video IC, often custom designed, to output video.

Ones with anything above ASCII graphics used hardware sprite generators that allowed tiny bitmaps to be positioned at any start pixel, without needing massive RAM to do it; they did not have true any-pixel-any-colour capability, as that needs more RAM than was practical back then.
 
Last edited:
And note that old consoles like the Famicom / NES & early home computers with graphics, that had 8 bit CPUs, always had a dedicated video IC, often custom designed, to output video.
And were only 256 pixels wide (can't remember the height). The 2K RAM was seperate from the video memory and on one game I wrote I used black attributes on part of the screen so I could store extra variables in the screen memory.

The only "computer" I know of that used the processor (Z80) to generate the video was the sinclair ZX80 and that was black and white.

Mike.
 
And were only 256 pixels wide (can't remember the height). The 2K RAM was seperate from the video memory and on one game I wrote I used black attributes on part of the screen so I could store extra variables in the screen memory.

The only "computer" I know of that used the processor (Z80) to generate the video was the sinclair ZX80 and that was black and white.

Mike.
That was all a long time ago :D

Using a PIC32 you can now do the entire process in the PIC, including video generation, for very little cost, and vastly faster than the old 8 bit machines.

 
That was all a long time ago :D
Indeed it was. I recently wrote an app on Android and was amazed because efficiency didn't matter. I was scaling sprites, using floating point variables, cos and sin to move bullets and it still ran at 60 FPS. Things have changed a lot.

I feel like I'm always saying, "in my day......."

Mike.
 
Indeed it was. I recently wrote an app on Android and was amazed because efficiency didn't matter. I was scaling sprites, using floating point variables, cos and sin to move bullets and it still ran at 60 FPS. Things have changed a lot.

I feel like I'm always saying, "in my day......."

Mike.
Very much so - if you look back at the Commodore Amiga and the amazing games that were available, it was because the games were written efficiently in machine code even though the computer only had 512K of memory, and ran about 8MHz. Now with multi-gigabyte memory and multi-gigahertz processors programmers are dead lazy, producing highly inefficient and slow running games.
 
The only "computer" I know of that used the processor (Z80) to generate the video was the sinclair ZX80 and that was black and white.
Not strictly true, as that used some very sneaky & ingenious hardware design like using the Z80 built-in DRAM refresh counter for display addressing, plus an external character generator and pixel serialisation etc.

Also the CPU could not execute normal program code during an active display line - only during the blanking intervals.

The ZX81 worked the same but using a custom logic IC that did the same as the TTL logic in the Z80.

Genius design, for an ultra low cost machine!
 
Nice! Same guy as the PIC32MX video terminal.

That does use a 480MHz ARM CPU though, not a PIC32 as in the video terminal.
The colour one does, the original B&W one still uses a PIC32 - all the source code for the BASIC interpreter is available as well.

I've still got an original B&W Maximite which I was sent free from Dontronics in Australia.
 
PROM is just memory. It does not serve as anything except memory?

An "AV Processor" is an extremely complex device and you need provide a lot more info on what you expect it to do!

And clarify what you mean by a "NOR flash reader" ???

Also note that you cannot output current 3D game video quality without both a very powerful CPU and a dedicated GPU.

You don't get things like that, that you can fit in a COB resin blob!


You could get all-in-one simple game ICs at one time, though those were not CPU based but totally custom logic - like integrating a TTL logic "Pong" game and variations in to a single IC.
eg. AY-3-5-8500 / 86xx / 87xx

(The 8700 Tanks one was rather good, for around 1980!)


You may be able to do something like retro game stuff with such as a PIC32MZ-DA, though it's still large and complex setup.


That has a built in video controller with 2D graphics acceleration and 2K flash. It would need additional external program memory for most applications, plus it external needs DDR RAM unless you use the version with the piggyback RAM.

The CPU is a BGA packaged device.

However, as with many MCUs and other components, there is a massive order backlog due to shutdowns from COVID-19... Mouser are predicting availability of the MCU ICs around next October...



The development kits are easier to get - a couple of months for this one, or some suppliers may have one:

And you can get this one direct from Microchip or Mouser etc.
There must be one that I can fit in a COB, remember those cheap TV games that only have a COB and a nor flash
 
There are many small LCD displays that talk Micro-computer. The low resolution helps save memory and CPU speed. Talking monitor and TV is a little hard.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top